2,640
社区成员
发帖
与我相关
我的任务
分享
void printDll(IN LPVOID pDllBuffer)
{
PIMAGE_DOS_HEADER pDosHeader = NULL;
PIMAGE_NT_HEADERS pNTHeader = NULL;
PIMAGE_FILE_HEADER pFileHeader = NULL;
PIMAGE_OPTIONAL_HEADER64 pOptionHeader = NULL;
PIMAGE_SECTION_HEADER pSectionHeader = NULL;
pDosHeader = (PIMAGE_DOS_HEADER)pDllBuffer;
pNTHeader = (PIMAGE_NT_HEADERS)((DWORD)pDosHeader + pDosHeader->e_lfanew);
pFileHeader = (PIMAGE_FILE_HEADER)((DWORD)pNTHeader + 4);
pOptionHeader = (PIMAGE_OPTIONAL_HEADER64)((DWORD)pFileHeader +
IMAGE_SIZEOF_FILE_HEADER);
pSectionHeader = (PIMAGE_SECTION_HEADER)((DWORD)pOptionHeader +
pFileHeader->SizeOfOptionalHeader);
PIMAGE_EXPORT_DIRECTORY pImageExport = (PIMAGE_EXPORT_DIRECTORY)RVATOFOA(
pNTHeader, pOptionHeader->DataDirectory[0].VirtualAddress);
printf("pExport:%x\n", pImageExport);
printf("NumberOfFunctions:%x\n", pImageExport->NumberOfFunctions);//这块出现005