PE结构
头部文件 | DOS头 | DOS MZ头 | IMAGE_DOS_HEADER | 64个字节 | 第一个为5A4D即MZ,最后一个为IMAGE_NT_HEADERS的偏移。 | |
DOS stub | 不固定 | IMAGE_DOS_HEADER尾部,到PE文件头开始,之间部分。PE中没有与之对应的结构 | ||||
pe头 IMAGE_NT_HEADER |
pe头标识 | 4个字节 | MZ头最后的偏移开始4个字节,00004550即PE00。 | |||
标准pe头 | IMAGE_FILE_HEADER | 20个字节 | COFF头,第二个word为文件中存在的节数。 | |||
扩展pe头 | IMAGE_OPTIONAL_HEADER | 224个字节 | 32位224字节。64位 | |||
IMAGE_DATA_DIRECTORY | 16*8个字节 | 数据目录项,扩展头的最后一个字段是 | ||||
节表 | 节表项 | IMAGE_SECTION_HEADER | n*40个字节 | IMAGE_FILE_HEADER中,第二个word为n。 | ||
pe文件body | 节内容 | 不定 | 但以某大小对齐 | |||
…… | ||||||
…… | ||||||
…… | ||||||
调试信息 | COFF行号 | |||||
COFF符号 | ||||||
code view调试信息 | ||||||
文件尾 |