2017-03-30 16:56:49 +02:00
|
|
|
|
#!/usr/bin/env python
|
|
|
|
|
# -*- coding: utf-8 -*-
|
|
|
|
|
|
|
|
|
|
# Description
|
|
|
|
|
# -----------
|
|
|
|
|
# Dump abstract informations in a JSON format
|
|
|
|
|
# see: abstract_reader.py
|
|
|
|
|
|
|
|
|
|
import argparse
|
|
|
|
|
import sys
|
|
|
|
|
import lief
|
|
|
|
|
import json
|
|
|
|
|
|
|
|
|
|
def main():
|
|
|
|
|
parser = argparse.ArgumentParser()
|
|
|
|
|
parser.add_argument('binary', help = 'A binary')
|
|
|
|
|
args = parser.parse_args()
|
|
|
|
|
|
|
|
|
|
binary = lief.parse(args.binary)
|
2018-03-13 16:49:02 +01:00
|
|
|
|
json_data = json.loads(lief.to_json_from_abstract(binary))
|
2017-03-30 16:56:49 +02:00
|
|
|
|
print(json.dumps(json_data, sort_keys = True, indent = 4))
|
|
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
|
sys.exit(main())
|
|
|
|
|
|