#define IMAGE_SIZEOF_SHORT_NAME 8
typedef struct _IMAGE_SECTION_HEADER {
BYTE Name[IMAGE_SIZEOF_SHORT_NAME];
union {
DWORD PhysicalAddress;
DWORD VirtualSize;
} Misc;
DWORD VirtualAddress;
DWORD SizeOfRawData;
DWORD PointerToRawData;
DWORD PointerToRelocations;
DWORD PointerToLinenumbers;
WORD NumberOfRelocations;
WORD NumberOfLinenumbers;
DWORD Characteristics;
} IMAGE_SECTION_HEADER, *PIMAGE_SECTION_HEADER;
新增节
- 判断是否有足够的空间可以添加一个节表。
- 在节表中新增一个成员。
- 修改PE头中节的数量。
- 修改 SizeOfImage 的大小。
- 在原有数据的最后,新增一个节的数据(内存对齐的整数倍)。
- 修正新增节表的属性。