| 7413 | |
| 7414 | |
| 7415 | def main(): |
| 7416 | import sys |
| 7417 | |
| 7418 | usage = """\ |
| 7419 | pefile.py <filename> |
| 7420 | pefile.py exports <filename>""" |
| 7421 | |
| 7422 | if not sys.argv[1:]: |
| 7423 | print(usage) |
| 7424 | elif sys.argv[1] == "exports": |
| 7425 | if not sys.argv[2:]: |
| 7426 | sys.exit("error: <filename> required") |
| 7427 | pe = PE(sys.argv[2]) |
| 7428 | for exp in pe.DIRECTORY_ENTRY_EXPORT.symbols: |
| 7429 | print( |
| 7430 | hex(pe.OPTIONAL_HEADER.ImageBase + exp.address), exp.name, exp.ordinal |
| 7431 | ) |
| 7432 | else: |
| 7433 | print(PE(sys.argv[1]).dump_info()) |
| 7434 | |
| 7435 | |
| 7436 | if __name__ == "__main__": |