Skip to content

Latest commit

 

History

History
23 lines (20 loc) · 535 Bytes

writeup.md

File metadata and controls

23 lines (20 loc) · 535 Bytes

The problem description give us asm2(0x9,0x1e) and the asm source code. Read through the code end up in a loop, once the loop breaks we got the return value, which is the flag.

	<+20>:	add    DWORD PTR [ebp-0x4],0x1
	<+24>:	add    DWORD PTR [ebp-0x8],0xa9
	<+31>:	cmp    DWORD PTR [ebp-0x8],0x47a6
	<+38>:	jle    0x501 <asm2+20>

Rewrite the function in Python

def asm2(a, b):
  while a <= 0x47a6:
    b += 1
    a += 0xa9
  return b

Invoke asm2 with given parameters to get the result.

print(asm2(0x9,0x1e))