//匯入表 (結構體陣列,以乙個全零元素為結尾,每乙個陣列元素,代表乙個pe檔案匯入資訊)
//匯入表儲存的是從其它pe檔案匯入過來的函式名、序號,載入到記憶體之後,還儲存這些函式的位址
typedef struct
_image_import_descriptor dummyunionname;
dword timedatestamp;
//時間戳
dword forwarderchain; //
鍊錶的前乙個結構
dword name; //
(有用)指向鍊錶庫名字的指標(rva)
dword firstthunk; //
(重要)指向乙個結構體陣列的相對虛擬位址(rva),即iat
} image_import_descriptor;
//int與iat所指的資料型別(結構體陣列 以全零為結尾)
//在磁碟檔案中他們儲存的資料是相同的,在載入到記憶體後,載入器把相應pe檔案的函式位址覆蓋到這裡
//在磁碟檔案中,起作用的只有後面兩個成員
//這個結構佔據四個位元組,假如最高位為1,那麼序號匯入起作用,假如最高位為0,那麼是最後乙個成員起作用
//判斷最高位是否為1使用系統提供的巨集image_snap_by_ordinal(),引數就是這個結構體
typedef struct
_image_thunk_data32 u1;
} image_thunk_data32;
//上面結構體addressofdata 指向的結構體
typedef struct
_image_import_by_name image_import_by_name, *pimage_import_by_name;
WinPE基礎知識之匯出表
匯出的東西包括函式 變數 類 位址,序號,函式 變數 類 名 typedef struct image export directory image export directory,pimage export directory a 匯出表應該被安排在.edata中,不過這個段一般都會合併到.rd...
WinPE基礎知識之重定位表
typedef struct image base relocation image base relocation typedef image base relocation unaligned pimage base relocation 1 當重定位發生的時候,只需知道現在pe檔案的載入基址,...
WinPE基礎知識之頭部
1 dos頭 dos mz頭,大小為64個位元組 typedef struct image dos header image dos header,pimage dos header dos mz頭下面是dos stub,整個dos stub是乙個位元組快,其內容隨著鏈結時使用的鏈結器不同而不同,而...