在读取从linux中的可执行文件中转出的信息时遇到问题。 信息如下:
804a0ea: 04 08 add $0x8, %al
...
804a0f4: a6 cmpsb %es:(%edi),%ds:(%esi)
我有两个问题:
提前致谢。
有关此部分代码的更多信息:
Disassembly of section .got.plt:
0804a0e8 <_GLOBAL_OFFSET_TABLE_>:
804a0e8: 14 a0 adc $0xa0,%al
804a0ea: 04 08 add $0x8,%al
...
804a0f4: a6 cmpsb %es:(%edi),%ds:(%esi)
804a0f5: 87 04 08 xchg %eax,(%eax,%ecx,1)
804a0f8: b6 87 mov $0x87,%dh
804a0fa: 04 08 add $0x8,%al
804a0fc: c6 87 04 08 d6 87 04 movb $0x4,-0x7829f7fc(%edi)
804a103: 08 e6 or %ah,%dh
804a105: 87 04 08 xchg %eax,(%eax,%ecx,1)
804a108: f6 87 04 08 06 88 04 testb $0x4,-0x77f9f7fc(%edi)
804a10f: 08 16 or %dl,(%esi)
804a111: 88 04 08 mov %al,(%eax,%ecx,1)
804a114: 26 88 04 08 mov %al,%es:(%eax,%ecx,1)
804a118: 36 88 04 08 mov %al,%ss:(%eax,%ecx,1)
804a11c: 46 inc %esi
希望有人能帮助我。: - )
答案 0 :(得分:2)
答案 1 :(得分:1)
global offset table没有指向代码,它指向数据(实际上是hrm ...偏移)。所以试图反汇编它不会给出非常有意义的代码。 (你可以通过查看代码值来实际找到哪些偏移量.0804a014,... 080487a6)。
...通常意味着流中有一堆0。