I'm developing a python script for Angr that has to find all the basic blocks present in each function in a binary. I have noticed that Angr splits the basic blocks when he finds a REP
instruction, I'm wondering if I can tell Angr to not split basic blocks when encounters REP
instructions with the API or if I have to do it manually.
This is a snippet of my code:
p = angr.Project(sys.argv[1], auto_load_libs=False, main_opts={'base_addr': 0} )
cfg = p.analyses.CFGFast()
cfg.normalize()
for func_node in cfg.functions.values():
for block in func_node.blocks:
c = block.capstone
for i in c.insns:
* operations *
This is an example of a basic block that ends with a REP
instruction:
Thank you in advance.