| 470 | } |
| 471 | |
| 472 | DWORD PeParser::getSectionHeaderBasedSizeOfImage() |
| 473 | { |
| 474 | DWORD lastVirtualOffset = 0, lastVirtualSize = 0; |
| 475 | |
| 476 | //this is needed if the sections aren't sorted by their RawOffset (e.g. Petite) |
| 477 | for (WORD i = 0; i < getNumberOfSections(); i++) |
| 478 | { |
| 479 | if ((listPeSection[i].sectionHeader.VirtualAddress + listPeSection[i].sectionHeader.Misc.VirtualSize) > (lastVirtualOffset + lastVirtualSize)) |
| 480 | { |
| 481 | lastVirtualOffset = listPeSection[i].sectionHeader.VirtualAddress; |
| 482 | lastVirtualSize = listPeSection[i].sectionHeader.Misc.VirtualSize; |
| 483 | } |
| 484 | } |
| 485 | |
| 486 | return (lastVirtualSize + lastVirtualOffset); |
| 487 | } |
| 488 | |
| 489 | bool PeParser::openFileHandle() |
| 490 | { |
nothing calls this directly
no outgoing calls
no test coverage detected