| 388 | } |
| 389 | |
| 390 | ULONG PEParser::GetEAT() const { |
| 391 | ULONG offset = 0; |
| 392 | if (!HasExports()) |
| 393 | return 0; |
| 394 | |
| 395 | auto dir = GetDataDirectory(IMAGE_DIRECTORY_ENTRY_EXPORT); |
| 396 | if (dir == nullptr || dir->Size == 0) |
| 397 | return 0; |
| 398 | |
| 399 | auto data = static_cast<IMAGE_EXPORT_DIRECTORY*>(GetMemAddress(dir->VirtualAddress)); |
| 400 | ULONG eat = data->AddressOfFunctions; |
| 401 | return eat; |
| 402 | } |