#!/usr/bin/env python3 from argparse import ArgumentParser def decode_binary(input_file, output_file): for line in input_file: addr, data, *_ = line.split(' ') if data == '*\n': continue addr = int(addr[:-1], 16) data = bytes.fromhex(''.join(data.split(' '))) output_file.seek(addr) output_file.write(data) if __name__ == '__main__': parser = ArgumentParser() parser.add_argument('input_file') parser.add_argument('output_file') args = parser.parse_args() with open(args.input_file, 'r') as f: with open(args.output_file, 'wb') as o: decoded_binary = decode_binary(f, o)