MCPcopy Create free account
hub / github.com/SaadAhla/FilelessPELoader / GetPEDirectory

Function GetPEDirectory

FilelessPELoader/FilelessPELoader.cpp:371–387  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

369}
370
371IMAGE_DATA_DIRECTORY* GetPEDirectory(PVOID pe_buffer, size_t dir_id)
372{
373 if (dir_id >= IMAGE_NUMBEROF_DIRECTORY_ENTRIES) return NULL;
374
375 char* nt_headers = GetNTHeaders((char*)pe_buffer);
376 if (nt_headers == NULL) return NULL;
377
378 IMAGE_DATA_DIRECTORY* peDir = NULL;
379
380 IMAGE_NT_HEADERS* nt_header = (IMAGE_NT_HEADERS*)nt_headers;
381 peDir = &(nt_header->OptionalHeader.DataDirectory[dir_id]);
382
383 if (peDir->VirtualAddress == NULL) {
384 return NULL;
385 }
386 return peDir;
387}
388
389bool RepairIAT(PVOID modulePtr)
390{

Callers 2

RepairIATFunction · 0.85
PELoaderFunction · 0.85

Calls 1

GetNTHeadersFunction · 0.85

Tested by

no test coverage detected