miasm
Reverse engineering framework
|
Functions | |
def | get_node_name (label, i, n) |
def | intra_block_flow_symb (ir_arch, _, flow_graph, irblock, in_nodes, out_nodes) |
def | node2str (node) |
def | gen_block_data_flow_graph (ir_arch, ircfg, ad, block_flow_cb) |
Variables | |
parser = ArgumentParser("Simple expression use for generating dataflow graph") | |
help | |
action | |
args = parser.parse_args() | |
ad = int(args.addr, 16) | |
loc_db = LocationDB() | |
cont = Container.from_stream(open(args.filename, 'rb'), loc_db) | |
machine = Machine("x86_32") | |
mdis = machine.dis_engine(cont.bin_stream, loc_db=loc_db) | |
follow_call | |
asmcfg = mdis.dis_multiblock(ad) | |
ir_arch_analysis = machine.ira(loc_db) | |
ircfg = ir_arch_analysis.new_ircfg_from_asmcfg(asmcfg) | |
deadrm = DeadRemoval(ir_arch_analysis) | |
def | block_flow_cb = intra_block_flow_symb |
def graph_dataflow.gen_block_data_flow_graph | ( | ir_arch, | |
ircfg, | |||
ad, | |||
block_flow_cb | |||
) |
def graph_dataflow.get_node_name | ( | label, | |
i, | |||
n | |||
) |
def graph_dataflow.intra_block_flow_symb | ( | ir_arch, | |
_, | |||
flow_graph, | |||
irblock, | |||
in_nodes, | |||
out_nodes | |||
) |
def graph_dataflow.node2str | ( | node | ) |
graph_dataflow.action |
graph_dataflow.ad = int(args.addr, 16) |
graph_dataflow.args = parser.parse_args() |
graph_dataflow.asmcfg = mdis.dis_multiblock(ad) |
graph_dataflow.block_flow_cb = intra_block_flow_symb |
graph_dataflow.cont = Container.from_stream(open(args.filename, 'rb'), loc_db) |
graph_dataflow.deadrm = DeadRemoval(ir_arch_analysis) |
graph_dataflow.follow_call |
graph_dataflow.help |
graph_dataflow.ir_arch_analysis = machine.ira(loc_db) |
graph_dataflow.ircfg = ir_arch_analysis.new_ircfg_from_asmcfg(asmcfg) |
graph_dataflow.loc_db = LocationDB() |
graph_dataflow.machine = Machine("x86_32") |
graph_dataflow.parser = ArgumentParser("Simple expression use for generating dataflow graph") |