Обезвреживание бинарной бомбы, фаза 5 - PullRequest
0 голосов
/ 09 октября 2019

Я застрял в печально известной лаборатории бомб. Не просить никого дать мне прямой ответ, но если бы кто-то мог указать мне правильное направление, это было бы здорово. Честно говоря, я действительно потерян из-за того, что я даже пытаюсь сделать здесь, но я знаю, что мне нужна таблица поиска и как-то создать шестизначную строку, которая эквивалентна 0x30.

Код разборки

 0x0000000000401007 <+0>:     push   %rbx
 0x0000000000401008 <+1>:     mov    %rdi,%rbx
 0x000000000040100b <+4>:     callq  0x401241 <string_length>
 0x0000000000401010 <+9>:     cmp    $0x6,%eax
 0x0000000000401013 <+12>:    je     0x40101a <phase_5+19>
 0x0000000000401015 <+14>:    callq  0x4014c4 <explode_bomb>
 0x000000000040101a <+19>:    mov    $0x0,%eax
 0x000000000040101f <+24>:    mov    $0x0,%edx
 0x0000000000401024 <+29>:    movzbl (%rbx,%rax,1),%ecx
 0x0000000000401028 <+33>:    and    $0xf,%ecx
 0x000000000040102b <+36>:    add    0x4024a0(,%rcx,4),%edx
 0x0000000000401032 <+43>:    add    $0x1,%rax
 0x0000000000401036 <+47>:    cmp    $0x6,%rax
 0x000000000040103a <+51>:    jne    0x401024 <phase_5+29>
 0x000000000040103c <+53>:    cmp    $0x30,%edx
 0x000000000040103f <+56>:    je     0x401046 <phase_5+63>
 0x0000000000401041 <+58>:    callq  0x4014c4 <explode_bomb>
 0x0000000000401046 <+63>:    pop    %rbx
 0x0000000000401047 <+64>:    retq

(gdb) x/16xd 0x4024a0
0x4024a0 <array.3155>:          2       10      6       1
0x4024b0 <array.3155+16>:       12      16      9       3
0x4024c0 <array.3155+32>:       4       7       14      5
0x4024d0 <array.3155+48>:       11      8       15      13
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...