diff options
Diffstat (limited to 'miasm2/arch/aarch64/disasm.py')
| -rw-r--r-- | miasm2/arch/aarch64/disasm.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/miasm2/arch/aarch64/disasm.py b/miasm2/arch/aarch64/disasm.py new file mode 100644 index 00000000..1fc19d07 --- /dev/null +++ b/miasm2/arch/aarch64/disasm.py @@ -0,0 +1,27 @@ +from miasm2.core.asmbloc import asm_constraint, disasmEngine +from miasm2.arch.aarch64.arch import mn_aarch64 + +cb_aarch64_funcs = [] + + +def cb_aarch64_disasm(mn, attrib, pool_bin, cur_bloc, offsets_to_dis, symbol_pool): + for func in cb_aarch64_funcs: + func(mn, attrib, pool_bin, cur_bloc, offsets_to_dis, symbol_pool) + + +class dis_aarch64b(disasmEngine): + attrib = "b" + def __init__(self, bs=None, **kwargs): + super(dis_aarch64b, self).__init__( + mn_aarch64, self.attrib, bs, + dis_bloc_callback = cb_aarch64_disasm, + **kwargs) + + +class dis_aarch64l(disasmEngine): + attrib = "l" + def __init__(self, bs=None, **kwargs): + super(dis_aarch64l, self).__init__( + mn_aarch64, self.attrib, bs, + dis_bloc_callback = cb_aarch64_disasm, + **kwargs) |