I need help with figuring out my two integers to defuse phase_5. Running gdb returns "%d %d" which is how I know it’s scanning for two ints. I try to follow the compare and jump statements but get lost soon after
I know that
- It reads TWO numbers (the format string "%d %d")
- The second number is ANDed with 0xf (keeping last 4 bits)
Then it enters a loop where it: - Uses that value to index into array at 0x4022a0
- Adds the value to a sum in %ecx
- Counts iterations in %edx
- Continues until it finds 0xf (15)
The success conditions are:
Must make exactly 11 iterations (%edx must be 0xb)
The first input number must match the final sum in %ecx
Disas and Array of phase_5
You need to sign in to view this answers