Guest User

GetPeFileSize.py

a guest
Oct 12th, 2017
3,003
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.46 KB | None | 0 0
  1. import pefile
  2.  
  3.  
  4. def BuildHeaderBuffer(address):
  5. buffer = ''
  6.  
  7. if Word(address) != 0x5a4d:
  8. raise ValueError("invalid PE header")
  9.  
  10. for i in range(1024):
  11. buffer += chr(Byte(address+i))
  12.  
  13. return buffer
  14.  
  15.  
  16. def GetPeFileSize(address):
  17. size = 0
  18.  
  19. headers = BuildHeaderBuffer(address)
  20.  
  21. pe = pefile.PE(data=headers)
  22.  
  23. size += pe.OPTIONAL_HEADER.SizeOfHeaders
  24.  
  25. for section in pe.sections:
  26. size += section.SizeOfRawData
  27.  
  28. return hex(size)
Advertisement
Add Comment
Please, Sign In to add comment