Tags: crypto 

Rating: 1.0

```python
from pwn import *

p = remote("chal1.swampctf.com", 1450)
jadi = ''
# p = process('./dungeon1.py')

print "Process STAGE 1 ..."
lol = "A"*15
lol2 = "A"*31
stok=''
for i in range(16):
for j in range(0x7e,0x20,-1):
payload = lol + stok + chr(j)+ lol2
p.sendline(payload)
data = p.recvline()[:-1]
if data[:32] == data[32:64]:
stok+=chr(j)
jadi+=chr(j)
print jadi
lol=lol[:-1]
lol2=lol2[:-1]
break

print "Process STAGE 2 ..."
pos=''
b = "A"*15
aa = "A"*15
for i in range(16):
for j in range(0x7e,0x20,-1):
payload = aa + pos + chr(j) + b
p.sendline(payload)
data = p.recvline()[:-1]
if data[32:64] == data[64:96]:
aa=aa[:-1]
b =b[:-1]
pos+=chr(j)
jadi+=chr(j)
print jadi
break

print "Process STAGE 3 ..."
kol = "A"*15
wow=''
for i in range(10):
for j in range(0x7e,0x20,-1):
p.sendline(kol)
data1 = p.recvline()[:-1]
payload = wow+ chr(j) + kol
p.sendline(payload)
data2 = p.recvline()[:-1]
if data1 == data2:
wow+=chr(j)
jadi+=chr(j)
print jadi
kol=kol[:-1]
break

print "FLAG : " + jadi + "}"
```