From d8c9941f6bf79f3300aaf30fbd06ecb17da07659 Mon Sep 17 00:00:00 2001 From: Moritz Raabe Date: Thu, 12 May 2022 16:39:36 +0200 Subject: [PATCH] fix: filter address --- scripts/show-features.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/scripts/show-features.py b/scripts/show-features.py index 7834d346..7a5bbff4 100644 --- a/scripts/show-features.py +++ b/scripts/show-features.py @@ -137,9 +137,11 @@ def main(argv=None): # TODO fix function_handles = tuple(filter(lambda fh: fh.address == args.function, function_handles)) else: - function_handles = tuple(filter(lambda fh: fh.address == args.function, function_handles)) + function_handles = tuple( + filter(lambda fh: capa.render.verbose.format_address(fh.address) == args.function, function_handles) + ) - if args.function not in [str(f) for f in function_handles]: + if args.function not in [capa.render.verbose.format_address(fh.address) for fh in function_handles]: print("%s not a function" % args.function) return -1 @@ -167,16 +169,16 @@ def ida_main(): print("file: %s: %s" % (capa.render.verbose.format_address(addr), feature)) return - functions = extractor.get_functions() + function_handles = extractor.get_functions() if function: - functions = tuple(filter(lambda f: f.start_ea == function, functions)) + function_handles = tuple(filter(lambda fh: fh.inner.start_ea == function, function_handles)) - if len(functions) == 0: + if len(function_handles) == 0: print("0x%X not a function" % function) return -1 - print_features(functions, extractor) + print_features(function_handles, extractor) return 0