From 17552f09b91acd44dbc03cce1d8d2f94c20af3d9 Mon Sep 17 00:00:00 2001 From: Camille Mougey Date: Sun, 23 Apr 2023 11:56:36 +0200 Subject: Example: add support for symbol name in `address` --- example/symbol_exec/symbol_exec.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'example') diff --git a/example/symbol_exec/symbol_exec.py b/example/symbol_exec/symbol_exec.py index 84418da5..1d3f4576 100644 --- a/example/symbol_exec/symbol_exec.py +++ b/example/symbol_exec/symbol_exec.py @@ -26,7 +26,16 @@ machine = Machine(cont.arch) mdis = machine.dis_engine(cont.bin_stream, loc_db=cont.loc_db) -addr = cont.entry_point if options.address is None else int(options.address, 0) +# no address -> entry point +# 0xXXXXXX -> use this address +# symbol -> resolve then use +if options.address is None: + addr = cont.entry_point +else: + try: + addr = int(options.address, 0) + except ValueError: + addr = loc_db.get_name_offset(options.address) asmcfg = mdis.dis_multiblock(addr) lifter = machine.lifter_model_call(mdis.loc_db) -- cgit 1.4.1