helloworld.exe
我用简单的一行用 C写了一个基本的printf("helloworld!\n");
然后我使用 UltraEdit 查看 EXE 文件的字节,并使用 PE Explorer 查看标头值。当涉及到入口点地址时,PE Explorer 显示0x004012c0
。
魔术 010Bh PE32 链接器版本 1902h 2.25 代码大小 00008000h 初始化数据的大小 0000B000h 未初始化数据的大小 00000C00h 入口点地址 004012C0h 代码基数 00001000h 数据基础 00009000h 图像库 00400000h
但是在 UltraEdit 中,我0x000012c0
在 magic 数完 16 个字节后看到了0x010B
。
3F 02 00 00 E0 00 07 03 0B 01 02 19 00 80 00 00 00 B0 00 00 00 0C 00 00 C0 12 00 00 00 10 00 00 00 90 00 00 00 00 40 00 00 10 00 00 00 02 00 00 04 00 00 00 01 00 00 00 04 00 00 00 00 00 00 00 00 10 01 00 00 04 00 00 91 F6 00 00 03 00 00 00 00 00 20 00 00 10 00 00 00 00 10 00 00 10 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 E0 00 00 C0 06 00 00 00 00 00 00 00 00 00 00
哪一个是正确的?