Note that there are some explanatory texts on larger screens.

plurals
  1. POBinary Bomb Phase 5
    primarykey
    data
    text
    <p>I have been working on a Binary Bomb for school, and I am absolutely lost in Phase 5. The object of the assignment is to dissemble the code and find a string, which I have found to be "flyers" and reverse engineer it to have the same numerical value as "flyers" does. However, I have spent the last 3-4 hours trying to find out how to do this? You don't have to give answers, but PLEASE help me understand what I need to do. Here is the disassembled code using gdb:</p> <pre><code>Dump of assembler code for function phase_5: 0x08048d88 &lt;+0&gt;: push %ebx 0x08048d89 &lt;+1&gt;: sub $0x28,%esp 0x08048d8c &lt;+4&gt;: mov 0x30(%esp),%ebx 0x08048d90 &lt;+8&gt;: mov %gs:0x14,%eax 0x08048d96 &lt;+14&gt;: mov %eax,0x1c(%esp) 0x08048d9a &lt;+18&gt;: xor %eax,%eax 0x08048d9c &lt;+20&gt;: mov %ebx,(%esp) 0x08048d9f &lt;+23&gt;: call 0x804902b &lt;string_length&gt; 0x08048da4 &lt;+28&gt;: cmp $0x6,%eax 0x08048da7 &lt;+31&gt;: je 0x8048dae &lt;phase_5+38&gt; 0x08048da9 &lt;+33&gt;: call 0x804934c &lt;explode_bomb&gt; 0x08048dae &lt;+38&gt;: mov $0x0,%eax 0x08048db3 &lt;+43&gt;: movsbl (%ebx,%eax,1),%edx 0x08048db7 &lt;+47&gt;: and $0xf,%edx 0x08048dba &lt;+50&gt;: movzbl 0x804a4b8(%edx),%edx 0x08048dc1 &lt;+57&gt;: mov %dl,0x15(%esp,%eax,1) 0x08048dc5 &lt;+61&gt;: add $0x1,%eax 0x08048dc8 &lt;+64&gt;: cmp $0x6,%eax 0x08048dcb &lt;+67&gt;: jne 0x8048db3 &lt;phase_5+43&gt; 0x08048dcd &lt;+69&gt;: movb $0x0,0x1b(%esp) 0x08048dd2 &lt;+74&gt;: movl $0x804a48e,0x4(%esp) 0x08048dda &lt;+82&gt;: lea 0x15(%esp),%eax 0x08048dde &lt;+86&gt;: mov %eax,(%esp) 0x08048de1 &lt;+89&gt;: call 0x8049044 &lt;strings_not_equal&gt; 0x08048de6 &lt;+94&gt;: test %eax,%eax 0x08048de8 &lt;+96&gt;: je 0x8048def &lt;phase_5+103&gt; 0x08048dea &lt;+98&gt;: call 0x804934c &lt;explode_bomb&gt; 0x08048def &lt;+103&gt;: mov 0x1c(%esp),%eax 0x08048df3 &lt;+107&gt;: xor %gs:0x14,%eax 0x08048dfa &lt;+114&gt;: je 0x8048e05 &lt;phase_5+125&gt; 0x08048dfc &lt;+116&gt;: lea 0x0(%esi,%eiz,1),%esi 0x08048e00 &lt;+120&gt;: call 0x8048810 &lt;__stack_chk_fail@plt&gt; 0x08048e05 &lt;+125&gt;: add $0x28,%esp 0x08048e08 &lt;+128&gt;: pop %ebx 0x08048e09 &lt;+129&gt;: ret End of assembler dump. </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload