【发布时间】:2016-01-06 22:00:02
【问题描述】:
add 0x4025c0(,%rcx,4),%edx
所以我正在尝试将这段汇编代码转换为实际的 C 表达式,有人可以帮我吗?谢谢!
更新: 代码实际上是这个汇编程序的一部分:
0x00000000004010fe <+0>: push %rbx
0x00000000004010ff <+1>: mov %rdi,%rbx
0x0000000000401102 <+4>: callq 0x401341 <string_length>
0x0000000000401107 <+9>: cmp $0x6,%eax
0x000000000040110a <+12>: je 0x401111 <phase_5+19>
0x000000000040110c <+14>: callq 0x4015bf <explode_bomb>
0x0000000000401111 <+19>: mov $0x0,%eax
0x0000000000401116 <+24>: mov $0x0,%edx
0x000000000040111b <+29>: movzbl (%rbx,%rax,1),%ecx
0x000000000040111f <+33>: and $0xf,%ecx
0x0000000000401122 <+36>: add 0x4025c0(,%rcx,4),%edx
0x0000000000401129 <+43>: add $0x1,%rax
0x000000000040112d <+47>: cmp $0x6,%rax
0x0000000000401131 <+51>: jne 0x40111b <phase_5+29>
0x0000000000401133 <+53>: cmp $0x33,%edx
0x0000000000401136 <+56>: je 0x40113d <phase_5+63>
0x0000000000401138 <+58>: callq 0x4015bf <explode_bomb>
0x000000000040113d <+63>: pop %rbx
0x000000000040113e <+64>: xchg %ax,%ax
0x0000000000401140 <+66>: retq
【问题讨论】:
-
英特尔语法
add edx, [rcx*4+0x4025c0]阅读更容易
标签: c assembly reverse-engineering