miasm
Reverse engineering framework
arch.py File Reference

Classes

class  miasm.arch.aarch64.arch.additional_info
 
class  miasm.arch.aarch64.arch.aarch64_arg
 
class  miasm.arch.aarch64.arch.instruction_aarch64
 
class  miasm.arch.aarch64.arch.mn_aarch64
 
class  miasm.arch.aarch64.arch.aarch64_gpreg_noarg
 
class  miasm.arch.aarch64.arch.aarch64_simdreg
 
class  miasm.arch.aarch64.arch.aarch64_simdreg_h
 
class  miasm.arch.aarch64.arch.aarch64_simdreg_32_64
 
class  miasm.arch.aarch64.arch.aarch64_simdreg_32_64_zero
 
class  miasm.arch.aarch64.arch.aarch64_gpreg_isf
 
class  miasm.arch.aarch64.arch.aarch64_gpreg
 
class  miasm.arch.aarch64.arch.aarch64_gpreg_n1
 
class  miasm.arch.aarch64.arch.aarch64_gpregz
 
class  miasm.arch.aarch64.arch.aarch64_gpreg0
 
class  miasm.arch.aarch64.arch.aarch64_crreg
 
class  miasm.arch.aarch64.arch.aarch64_gpreg32_nodec
 
class  miasm.arch.aarch64.arch.aarch64_gpreg64_nodec
 
class  miasm.arch.aarch64.arch.aarch64_gpreg32_noarg
 
class  miasm.arch.aarch64.arch.aarch64_gpreg32
 
class  miasm.arch.aarch64.arch.aarch64_gpreg64_noarg
 
class  miasm.arch.aarch64.arch.aarch64_gpreg64
 
class  miasm.arch.aarch64.arch.aarch64_gpregz32_noarg
 
class  miasm.arch.aarch64.arch.aarch64_gpregz32
 
class  miasm.arch.aarch64.arch.aarch64_gpregz64_noarg
 
class  miasm.arch.aarch64.arch.aarch64_gpregz64
 
class  miasm.arch.aarch64.arch.aarch64_simd08_noarg
 
class  miasm.arch.aarch64.arch.aarch64_simd08
 
class  miasm.arch.aarch64.arch.aarch64_simd16_noarg
 
class  miasm.arch.aarch64.arch.aarch64_simd16
 
class  miasm.arch.aarch64.arch.aarch64_simd32_noarg
 
class  miasm.arch.aarch64.arch.aarch64_simd32
 
class  miasm.arch.aarch64.arch.aarch64_simd64_noarg
 
class  miasm.arch.aarch64.arch.aarch64_simd64
 
class  miasm.arch.aarch64.arch.aarch64_simd128_noarg
 
class  miasm.arch.aarch64.arch.aarch64_simd128
 
class  miasm.arch.aarch64.arch.aarch64_imm_32
 
class  miasm.arch.aarch64.arch.aarch64_imm_64
 
class  miasm.arch.aarch64.arch.aarch64_int64_noarg
 
class  miasm.arch.aarch64.arch.aarch64_uint64_noarg
 
class  miasm.arch.aarch64.arch.aarch64_uint64
 
class  miasm.arch.aarch64.arch.aarch64_imm_sf
 
class  miasm.arch.aarch64.arch.aarch64_imm_sft
 
class  miasm.arch.aarch64.arch.aarch64_gpreg_ext
 
class  miasm.arch.aarch64.arch.aarch64_gpreg_ext2
 
class  miasm.arch.aarch64.arch.aarch64_gpreg_ext2_128
 
class  miasm.arch.aarch64.arch.aarch64_gpreg_sftimm
 
class  miasm.arch.aarch64.arch.ReservedValue
 
class  miasm.arch.aarch64.arch.NotEncodable
 
class  miasm.arch.aarch64.arch.bits
 
class  miasm.arch.aarch64.arch.aarch64_imm_nsr
 
class  miasm.arch.aarch64.arch.aarch64_pcoff
 
class  miasm.arch.aarch64.arch.aarch64_immhip_page
 
class  miasm.arch.aarch64.arch.aarch64_immhi_page
 
class  miasm.arch.aarch64.arch.aarch64_imm_hw
 
class  miasm.arch.aarch64.arch.aarch64_imm_hw_sc
 
class  miasm.arch.aarch64.arch.aarch64_offs
 
class  miasm.arch.aarch64.arch.aarch64_offs_pc
 
class  miasm.arch.aarch64.arch.aarch64_deref
 
class  miasm.arch.aarch64.arch.aarch64_deref_size
 
class  miasm.arch.aarch64.arch.aarch64_deref_nooff
 
class  miasm.arch.aarch64.arch.aarch64_sf_scale
 
class  miasm.arch.aarch64.arch.aarch64_sd_scale
 
class  miasm.arch.aarch64.arch.aarch64_eq
 
class  miasm.arch.aarch64.arch.aarch64_cond_arg
 
class  miasm.arch.aarch64.arch.aarch64_cond_inv_arg
 
class  miasm.arch.aarch64.arch.aarch64_b40
 
class  miasm.arch.aarch64.arch.op0_value
 

Namespaces

 miasm.arch.aarch64.arch
 

Functions

def miasm.arch.aarch64.arch.cb_shift (tokens)
 
def miasm.arch.aarch64.arch.cb_extreg (tokens)
 
def miasm.arch.aarch64.arch.cb_shiftreg (tokens)
 
def miasm.arch.aarch64.arch.cb_shift_sc (tokens)
 
def miasm.arch.aarch64.arch.cb_extend (tokens)
 
def miasm.arch.aarch64.arch.cb_deref_pc_off (tokens)
 
def miasm.arch.aarch64.arch.cb_deref_pc_nooff (tokens)
 
def miasm.arch.aarch64.arch.cb_deref_nooff (t)
 
def miasm.arch.aarch64.arch.cb_deref_post (t)
 
def miasm.arch.aarch64.arch.cb_deref_pre (t)
 
def miasm.arch.aarch64.arch.cb_deref_pre_wb (t)
 
def miasm.arch.aarch64.arch.cb_deref_ext2op (t)
 
def miasm.arch.aarch64.arch.aarch64op (name, fields, args=None, alias=False)
 
def miasm.arch.aarch64.arch.set_imm_to_size (size, expr)
 
def miasm.arch.aarch64.arch.test_set_sf (parent, size)
 
def miasm.arch.aarch64.arch.ror (value, amount, size)
 
def miasm.arch.aarch64.arch.rol (value, amount, size)
 
def miasm.arch.aarch64.arch.HighestSetBit (x)
 
def miasm.arch.aarch64.arch.Ones (N)
 
def miasm.arch.aarch64.arch.ROR (x, shift)
 
def miasm.arch.aarch64.arch.Replicate (x, N)
 
def miasm.arch.aarch64.arch.UInt (x)
 
def miasm.arch.aarch64.arch.ZeroExtend (x, N)
 
def miasm.arch.aarch64.arch.DecodeBitMasks (M, immN, imms, immr, immediate)
 
def miasm.arch.aarch64.arch.EncodeBitMasks (wmask)
 
def miasm.arch.aarch64.arch.set_mem_off (parent, imm)
 
def miasm.arch.aarch64.arch.get_size (parent)
 

Variables

 miasm.arch.aarch64.arch.log = logging.getLogger("aarch64dis")
 
 miasm.arch.aarch64.arch.console_handler = logging.StreamHandler()
 
dictionary miasm.arch.aarch64.arch.replace_regs
 
dictionary miasm.arch.aarch64.arch.shift2expr_dct = {'LSL': '<<', 'LSR': '>>', 'ASR': 'a>>', 'ROR': '>>>'}
 
list miasm.arch.aarch64.arch.shift_str = ["LSL", "LSR", "ASR", "ROR"]
 
list miasm.arch.aarch64.arch.shift_expr = ["<<", ">>", "a>>", '>>>']
 
 miasm.arch.aarch64.arch.all_binaryop_lsl_t = literal_list(shift_str).setParseAction(cb_shift)
 
 miasm.arch.aarch64.arch.all_binaryop_shiftleft_t = literal_list(["LSL"]).setParseAction(cb_shift)
 
list miasm.arch.aarch64.arch.extend_lst = ['UXTB', 'UXTH', 'UXTW', 'UXTX', 'SXTB', 'SXTH', 'SXTW', 'SXTX']
 
list miasm.arch.aarch64.arch.extend2_lst = ['UXTW', 'LSL', 'SXTW', 'SXTX']
 
 miasm.arch.aarch64.arch.all_extend_t = literal_list(extend_lst).setParseAction(cb_extreg)
 
 miasm.arch.aarch64.arch.all_extend2_t = literal_list(extend2_lst).setParseAction(cb_extreg)
 
tuple miasm.arch.aarch64.arch.gpregz32_extend = (gpregsz32_info.parser + Optional(all_extend_t + base_expr)).setParseAction(cb_extend)
 
tuple miasm.arch.aarch64.arch.gpregz64_extend = (gpregsz64_info.parser + Optional(all_extend_t + base_expr)).setParseAction(cb_extend)
 
tuple miasm.arch.aarch64.arch.shift32_off = (gpregsz32_info.parser + Optional(all_binaryop_lsl_t + base_expr)).setParseAction(cb_shiftreg)
 
tuple miasm.arch.aarch64.arch.shift64_off = (gpregsz64_info.parser + Optional(all_binaryop_lsl_t + base_expr)).setParseAction(cb_shiftreg)
 
tuple miasm.arch.aarch64.arch.shiftimm_imm_sc = (base_expr + all_binaryop_shiftleft_t + base_expr).setParseAction(cb_shift_sc)
 
tuple miasm.arch.aarch64.arch.shiftimm_off_sc = shiftimm_imm_sc | base_expr
 
tuple miasm.arch.aarch64.arch.shift_off = (shift32_off | shift64_off)
 
tuple miasm.arch.aarch64.arch.reg_ext_off = (gpregz32_extend | gpregz64_extend)
 
tuple miasm.arch.aarch64.arch.gpregs_32_64 = (gpregs32_info.parser | gpregs64_info.parser)
 
tuple miasm.arch.aarch64.arch.gpregsz_32_64 = (gpregsz32_info.parser | gpregsz64_info.parser | base_expr)
 
tuple miasm.arch.aarch64.arch.simdregs = (simd08_info.parser | simd16_info.parser | simd32_info.parser | simd64_info.parser)
 
tuple miasm.arch.aarch64.arch.simdregs_h = (simd32_info.parser | simd64_info.parser | simd128_info.parser)
 
tuple miasm.arch.aarch64.arch.simdregs_h_zero = (simd32_info.parser | simd64_info.parser | simd128_info.parser | base_expr)
 
dictionary miasm.arch.aarch64.arch.gpregs_info
 
dictionary miasm.arch.aarch64.arch.gpregsz_info
 
dictionary miasm.arch.aarch64.arch.simds_info
 
 miasm.arch.aarch64.arch.LBRACK = Suppress("[")
 
 miasm.arch.aarch64.arch.RBRACK = Suppress("]")
 
 miasm.arch.aarch64.arch.COMMA = Suppress(",")
 
 miasm.arch.aarch64.arch.POSTINC = Suppress("!")
 
tuple miasm.arch.aarch64.arch.deref_nooff = (LBRACK + gpregs64_info.parser + RBRACK).setParseAction(cb_deref_nooff)
 
tuple miasm.arch.aarch64.arch.deref_off_post = (LBRACK + gpregs64_info.parser + RBRACK + COMMA + base_expr).setParseAction(cb_deref_post)
 
tuple miasm.arch.aarch64.arch.deref_off_pre = (LBRACK + gpregs64_info.parser + COMMA + base_expr + RBRACK).setParseAction(cb_deref_pre)
 
tuple miasm.arch.aarch64.arch.deref_off_pre_wb = (LBRACK + gpregs64_info.parser + COMMA + base_expr + RBRACK + POSTINC).setParseAction(cb_deref_pre_wb)
 
tuple miasm.arch.aarch64.arch.deref = (deref_off_post | deref_off_pre_wb | deref_off_pre | deref_nooff)
 
tuple miasm.arch.aarch64.arch.deref_pc_off = (LBRACK + Literal("PC") + COMMA + base_expr + RBRACK).setParseAction(cb_deref_pc_off)
 
tuple miasm.arch.aarch64.arch.deref_pc_nooff = (LBRACK + Literal("PC") + RBRACK).setParseAction(cb_deref_pc_nooff)
 
tuple miasm.arch.aarch64.arch.deref_pc = (deref_pc_off | deref_pc_nooff)
 
tuple miasm.arch.aarch64.arch.deref_ext2 = (LBRACK + gpregs_32_64 + COMMA + gpregs_32_64 + Optional(all_extend2_t + base_expr) + RBRACK).setParseAction(cb_deref_ext2op)
 
list miasm.arch.aarch64.arch.CONDS
 
list miasm.arch.aarch64.arch.CONDS_INV
 
list miasm.arch.aarch64.arch.BRCOND = ['B.' + cond for cond in CONDS] + ['CBZ', 'CBNZ', 'TBZ', 'TBNZ']
 
 miasm.arch.aarch64.arch.conds_expr
 
 miasm.arch.aarch64.arch.conds_info
 
 miasm.arch.aarch64.arch.conds_inv_expr
 
 miasm.arch.aarch64.arch.conds_inv_info
 
list miasm.arch.aarch64.arch.OPTION2SIZE
 
dictionary miasm.arch.aarch64.arch.EXT2_OP
 
 miasm.arch.aarch64.arch.EXT2_OP_INV = dict((value, key) for key, value in viewitems(EXT2_OP))
 
 miasm.arch.aarch64.arch.modf = bs_mod_name(l=1, fname='modf', mn_mod=['', 'S'])
 
 miasm.arch.aarch64.arch.sf = bs(l=1, fname='sf', order=-1)
 
 miasm.arch.aarch64.arch.shift = bs(l=2, fname='shift')
 
 miasm.arch.aarch64.arch.shiftb = bs(l=1, fname='shift', order=-1)
 
 miasm.arch.aarch64.arch.rn64_v = bs(l=5, cls=(aarch64_gpreg64_nodec,), fname='rn', order=-1)
 
 miasm.arch.aarch64.arch.rn = bs(l=5, cls=(aarch64_gpreg,), fname="rn")
 
 miasm.arch.aarch64.arch.rs = bs(l=5, cls=(aarch64_gpreg,), fname="rs")
 
 miasm.arch.aarch64.arch.rm = bs(l=5, cls=(aarch64_gpreg,), fname="rm")
 
 miasm.arch.aarch64.arch.rd = bs(l=5, cls=(aarch64_gpreg,), fname="rd")
 
 miasm.arch.aarch64.arch.ra = bs(l=5, cls=(aarch64_gpregz,), fname="ra")
 
 miasm.arch.aarch64.arch.rt = bs(l=5, cls=(aarch64_gpregz,), fname="rt")
 
 miasm.arch.aarch64.arch.rt2 = bs(l=5, cls=(aarch64_gpregz,), fname="rt2")
 
 miasm.arch.aarch64.arch.rn0 = bs(l=5, cls=(aarch64_gpreg0,), fname="rn")
 
 miasm.arch.aarch64.arch.rmz = bs(l=5, cls=(aarch64_gpregz,), fname="rm")
 
 miasm.arch.aarch64.arch.rnz = bs(l=5, cls=(aarch64_gpregz,), fname="rn")
 
 miasm.arch.aarch64.arch.rdz = bs(l=5, cls=(aarch64_gpregz,), fname="rd")
 
 miasm.arch.aarch64.arch.rn_n1 = bs(l=5, cls=(aarch64_gpreg_n1,), fname="rn")
 
 miasm.arch.aarch64.arch.rm_n1 = bs(l=5, cls=(aarch64_gpreg_n1,), fname="rm")
 
 miasm.arch.aarch64.arch.rn_na = bs(l=5, cls=(aarch64_gpreg_noarg,), fname="rn", order=-1)
 
 miasm.arch.aarch64.arch.rn32_na = bs(l=5, cls=(aarch64_gpreg32_noarg,), fname="rn", order=-1)
 
 miasm.arch.aarch64.arch.rn64_na = bs(l=5, cls=(aarch64_gpreg64_noarg,), fname="rn", order=-1)
 
 miasm.arch.aarch64.arch.sd1 = bs(l=5, cls=(aarch64_simdreg_h,), fname="rt")
 
 miasm.arch.aarch64.arch.sd2 = bs(l=5, cls=(aarch64_simdreg_h,), fname="rt2")
 
 miasm.arch.aarch64.arch.sdn_32_64 = bs(l=5, cls=(aarch64_simdreg_32_64,), fname="rn")
 
 miasm.arch.aarch64.arch.sdd_32_64 = bs(l=5, cls=(aarch64_simdreg_32_64,), fname="rd")
 
 miasm.arch.aarch64.arch.sdm_32_64 = bs(l=5, cls=(aarch64_simdreg_32_64,), fname="rm")
 
 miasm.arch.aarch64.arch.sda_32_64 = bs(l=5, cls=(aarch64_simdreg_32_64,), fname="ra")
 
 miasm.arch.aarch64.arch.sdm_32_64_zero = bs(l=5, cls=(aarch64_simdreg_32_64_zero,), fname="rm")
 
 miasm.arch.aarch64.arch.crn = bs(l=4, cls=(aarch64_crreg,), fname="crn")
 
 miasm.arch.aarch64.arch.crm = bs(l=4, cls=(aarch64_crreg,), fname="crm")
 
 miasm.arch.aarch64.arch.rn64 = bs(l=5, cls=(aarch64_gpreg64,), fname="rn")
 
 miasm.arch.aarch64.arch.rs64 = bs(l=5, cls=(aarch64_gpreg64,), fname="rs")
 
 miasm.arch.aarch64.arch.rm64 = bs(l=5, cls=(aarch64_gpreg64,), fname="rm")
 
 miasm.arch.aarch64.arch.rd64 = bs(l=5, cls=(aarch64_gpreg64,), fname="rd")
 
 miasm.arch.aarch64.arch.rt64 = bs(l=5, cls=(aarch64_gpregz64,), fname="rt")
 
 miasm.arch.aarch64.arch.ra64 = bs(l=5, cls=(aarch64_gpregz64,), fname="ra")
 
 miasm.arch.aarch64.arch.rn32 = bs(l=5, cls=(aarch64_gpreg32,), fname="rn")
 
 miasm.arch.aarch64.arch.rm32 = bs(l=5, cls=(aarch64_gpreg32,), fname="rm")
 
 miasm.arch.aarch64.arch.rd32 = bs(l=5, cls=(aarch64_gpreg32,), fname="rd")
 
 miasm.arch.aarch64.arch.rs32 = bs(l=5, cls=(aarch64_gpreg32,), fname="rs")
 
 miasm.arch.aarch64.arch.sd08 = bs(l=5, cls=(aarch64_simd08,), fname="rd")
 
 miasm.arch.aarch64.arch.sd16 = bs(l=5, cls=(aarch64_simd16,), fname="rd")
 
 miasm.arch.aarch64.arch.sd32 = bs(l=5, cls=(aarch64_simd32,), fname="rd")
 
 miasm.arch.aarch64.arch.sd64 = bs(l=5, cls=(aarch64_simd64,), fname="rd")
 
 miasm.arch.aarch64.arch.sd128 = bs(l=5, cls=(aarch64_simd128,), fname="rd")
 
 miasm.arch.aarch64.arch.sn08 = bs(l=5, cls=(aarch64_simd08,), fname="rn")
 
 miasm.arch.aarch64.arch.sn16 = bs(l=5, cls=(aarch64_simd16,), fname="rn")
 
 miasm.arch.aarch64.arch.sn32 = bs(l=5, cls=(aarch64_simd32,), fname="rn")
 
 miasm.arch.aarch64.arch.sn64 = bs(l=5, cls=(aarch64_simd64,), fname="rn")
 
 miasm.arch.aarch64.arch.sn128 = bs(l=5, cls=(aarch64_simd128,), fname="rn")
 
 miasm.arch.aarch64.arch.rt32 = bs(l=5, cls=(aarch64_gpregz32,), fname="rt")
 
 miasm.arch.aarch64.arch.rt_isf = bs(l=5, cls=(aarch64_gpreg_isf,), fname="rt")
 
 miasm.arch.aarch64.arch.rn64_deref = bs(l=5, cls=(aarch64_deref,), fname="rn")
 
 miasm.arch.aarch64.arch.rn64_deref_sz = bs(l=5, cls=(aarch64_deref_size,), fname="rn")
 
 miasm.arch.aarch64.arch.rn64_deref_sf = bs(l=5, cls=(aarch64_sf_scale,), fname="rn")
 
 miasm.arch.aarch64.arch.rn64_deref_sd = bs(l=5, cls=(aarch64_sd_scale,), fname="rn")
 
 miasm.arch.aarch64.arch.rn64_deref_nooff = bs(l=5, cls=(aarch64_deref_nooff,), fname="rn")
 
 miasm.arch.aarch64.arch.imm_sft_12 = bs(l=12, cls=(aarch64_imm_sft,))
 
 miasm.arch.aarch64.arch.imm32_3 = bs(l=3, fname="imm")
 
 miasm.arch.aarch64.arch.imm6 = bs(l=6, fname="imm", order=-1)
 
 miasm.arch.aarch64.arch.imm3 = bs(l=3, fname="imm", order=-1)
 
 miasm.arch.aarch64.arch.simm6 = bs(l=6, cls=(aarch64_int64_noarg, aarch64_arg), fname="imm", order=-1)
 
 miasm.arch.aarch64.arch.simm9 = bs(l=9, cls=(aarch64_int64_noarg,), fname="imm", order=-1)
 
 miasm.arch.aarch64.arch.simm7 = bs(l=7, cls=(aarch64_int64_noarg,), fname="imm", order=-1)
 
 miasm.arch.aarch64.arch.nzcv = bs(l=4, cls=(aarch64_uint64_noarg, aarch64_arg), fname="nzcv", order=-1)
 
 miasm.arch.aarch64.arch.uimm5 = bs(l=5, cls=(aarch64_uint64_noarg, aarch64_arg), fname="imm", order=-1)
 
 miasm.arch.aarch64.arch.uimm12 = bs(l=12, cls=(aarch64_uint64_noarg,), fname="imm", order=-1)
 
 miasm.arch.aarch64.arch.uimm16 = bs(l=16, cls=(aarch64_uint64_noarg, aarch64_arg), fname="imm", order=-1)
 
 miasm.arch.aarch64.arch.uimm7 = bs(l=7, cls=(aarch64_uint64_noarg,), fname="imm", order=-1)
 
 miasm.arch.aarch64.arch.uimm8 = bs(l=8, cls=(aarch64_uint64,), fname="imm", order=-1)
 
 miasm.arch.aarch64.arch.op0 = bs(l=1, cls=(op0_value, aarch64_arg), fname="op0")
 
 miasm.arch.aarch64.arch.op1 = bs(l=3, cls=(aarch64_uint64, aarch64_arg), fname="op1")
 
 miasm.arch.aarch64.arch.op2 = bs(l=3, cls=(aarch64_uint64, aarch64_arg), fname="op2")
 
 miasm.arch.aarch64.arch.imm16 = bs(l=16, fname="imm", order=-1)
 
 miasm.arch.aarch64.arch.immlo = bs(l=2, fname='immlo')
 
 miasm.arch.aarch64.arch.immhip = bs(l=19, cls=(aarch64_immhip_page,))
 
 miasm.arch.aarch64.arch.immhi = bs(l=19, cls=(aarch64_immhi_page,))
 
 miasm.arch.aarch64.arch.option = bs(l=3, fname='option', order=-1)
 
 miasm.arch.aarch64.arch.rm_ext = bs(l=5, cls=(aarch64_gpreg_ext,), fname="rm")
 
 miasm.arch.aarch64.arch.rm_sft = bs(l=5, cls=(aarch64_gpreg_sftimm,), fname="rm")
 
 miasm.arch.aarch64.arch.rm_ext2 = bs(l=5, cls=(aarch64_gpreg_ext2,), fname="rm")
 
 miasm.arch.aarch64.arch.rm_ext2_128 = bs(l=5, cls=(aarch64_gpreg_ext2_128,), fname="rm")
 
 miasm.arch.aarch64.arch.imms = bs(l=6, cls=(aarch64_imm_nsr,), fname='imms')
 
 miasm.arch.aarch64.arch.immr = bs(l=6, fname='immr')
 
 miasm.arch.aarch64.arch.immn = bs(l=1, fname='immn')
 
 miasm.arch.aarch64.arch.imm16_hw = bs(l=16, cls=(aarch64_imm_hw,), fname='imm')
 
 miasm.arch.aarch64.arch.imm16_hw_sc = bs(l=16, cls=(aarch64_imm_hw_sc,), fname='imm')
 
 miasm.arch.aarch64.arch.hw = bs(l=2, fname='hw')
 
 miasm.arch.aarch64.arch.a_imms = bs(l=6, cls=(aarch64_imm_sf, aarch64_arg), fname="imm1", order=-1)
 
 miasm.arch.aarch64.arch.a_immr = bs(l=6, cls=(aarch64_imm_sf, aarch64_arg), fname="imm1", order=-1)
 
dictionary miasm.arch.aarch64.arch.adsu_name = {'ADD': 0, 'SUB': 1}
 
 miasm.arch.aarch64.arch.bs_adsu_name = bs_name(l=1, name=adsu_name)
 
 miasm.arch.aarch64.arch.offs19 = bs(l=19, cls=(aarch64_offs,), fname='off')
 
 miasm.arch.aarch64.arch.offs19pc = bs(l=19, cls=(aarch64_offs_pc,), fname='off')
 
 miasm.arch.aarch64.arch.offs26 = bs(l=26, cls=(aarch64_offs,), fname='off')
 
 miasm.arch.aarch64.arch.offs14 = bs(l=14, cls=(aarch64_offs,), fname='off')
 
 miasm.arch.aarch64.arch.b40 = bs(l=5, cls=(aarch64_b40,), fname='b40', order=1)
 
 miasm.arch.aarch64.arch.sdsize1 = bs(l=1, fname="size")
 
 miasm.arch.aarch64.arch.sdsize = bs(l=2, fname="size")
 
 miasm.arch.aarch64.arch.opsize = bs(l=2, fname="size")
 
 miasm.arch.aarch64.arch.sd = bs(l=5, cls=(aarch64_simdreg,), fname='sd')
 
 miasm.arch.aarch64.arch.opc = bs(l=1, fname='opc', order=-1)
 
 miasm.arch.aarch64.arch.alias
 
dictionary miasm.arch.aarch64.arch.logic_name = {'AND': 0, 'ORR': 1, 'EOR': 2}
 
 miasm.arch.aarch64.arch.bs_logic_name = bs_name(l=2, name=logic_name)
 
dictionary miasm.arch.aarch64.arch.logicbf_name = {'SBFM': 0b00, 'BFM': 0b01, 'UBFM': 0b10}
 
 miasm.arch.aarch64.arch.bs_logicbf_name = bs_name(l=2, name=logicbf_name)
 
 miasm.arch.aarch64.arch.bcond
 
 miasm.arch.aarch64.arch.cond_arg = bs(l=4, cls=(aarch64_cond_arg,), fname="cond")
 
 miasm.arch.aarch64.arch.cond_inv_arg = bs(l=4, cls=(aarch64_cond_inv_arg,), fname="cond")
 
 miasm.arch.aarch64.arch.post_pre = bs(l=1, order=-1, fname='postpre')
 
dictionary miasm.arch.aarch64.arch.ccmp_name = {'CCMN': 0, 'CCMP': 1}
 
 miasm.arch.aarch64.arch.bs_ccmp_name = bs_name(l=1, name=ccmp_name)
 
dictionary miasm.arch.aarch64.arch.ldst_b_name = {'STRB': 0, 'LDRB': 1}
 
 miasm.arch.aarch64.arch.bs_ldst_b_name = bs_name(l=1, name=ldst_b_name)
 
dictionary miasm.arch.aarch64.arch.ldst_name = {'STR': 0, 'LDR': 1}
 
 miasm.arch.aarch64.arch.bs_ldst_name = bs_name(l=1, name=ldst_name)
 
dictionary miasm.arch.aarch64.arch.ldst_h_name = {'STRH': 0, 'LDRH': 1}
 
 miasm.arch.aarch64.arch.bs_ldst_h_name = bs_name(l=1, name=ldst_h_name)
 
dictionary miasm.arch.aarch64.arch.ldst_tb_name = {'STTRB': 0, 'LDTRB': 1}
 
 miasm.arch.aarch64.arch.bs_ldst_tb_name = bs_name(l=1, name=ldst_tb_name)
 
dictionary miasm.arch.aarch64.arch.ldst_th_name = {'STTRH': 0, 'LDTRH': 1}
 
 miasm.arch.aarch64.arch.bs_ldst_th_name = bs_name(l=1, name=ldst_th_name)
 
dictionary miasm.arch.aarch64.arch.ldst_ub_name = {'STURB': 0, 'LDURB': 1}
 
 miasm.arch.aarch64.arch.bs_ldst_ub_name = bs_name(l=1, name=ldst_ub_name)
 
dictionary miasm.arch.aarch64.arch.ldst_u_name = {'STUR': 0, 'LDUR': 1}
 
 miasm.arch.aarch64.arch.bs_ldst_u_name = bs_name(l=1, name=ldst_u_name)
 
dictionary miasm.arch.aarch64.arch.ldst_t_name = {'STTR': 0, 'LDTR': 1}
 
 miasm.arch.aarch64.arch.bs_ldst_st_name = bs_name(l=1, name=ldst_t_name)
 
dictionary miasm.arch.aarch64.arch.ldst_1u_name = {'STUR': 0b0, 'LDUR': 0b1}
 
 miasm.arch.aarch64.arch.bs_ldst_1u_name = bs_name(l=1, name=ldst_1u_name)
 
dictionary miasm.arch.aarch64.arch.ldst_uh_name = {'STURH': 0, 'LDURH': 1}
 
 miasm.arch.aarch64.arch.bs_ldst_uh_name = bs_name(l=1, name=ldst_uh_name)
 
dictionary miasm.arch.aarch64.arch.ldst_sw_name = {'STRSW': 0, 'LDRSW': 1}
 
 miasm.arch.aarch64.arch.bs_ldst_sw_name = bs_name(l=1, name=ldst_sw_name)
 
dictionary miasm.arch.aarch64.arch.movwide_name = {'MOVN': 0b00, 'MOVZ': 0b10}
 
 miasm.arch.aarch64.arch.bs_movwide_name = bs_name(l=2, name=movwide_name)
 
dictionary miasm.arch.aarch64.arch.ldstp_name = {'STP': 0b0, 'LDP': 0b1}
 
 miasm.arch.aarch64.arch.bs_ldstp_name = bs_name(l=1, name=ldstp_name)
 
dictionary miasm.arch.aarch64.arch.datap0_name
 
 miasm.arch.aarch64.arch.bs_datap0_name = bs_name(l=6, name=datap0_name)
 
dictionary miasm.arch.aarch64.arch.datap1_name
 
 miasm.arch.aarch64.arch.bs_datap1_name = bs_name(l=6, name=datap1_name)
 
 miasm.arch.aarch64.arch.swapargs = bs_swapargs(l=1, fname="swap", mn_mod=list(range(1 << 1)))
 
dictionary miasm.arch.aarch64.arch.shiftr_name = {'LSL': 0b00, 'LSR': 0b01, 'ASR': 0b10, 'ROR': 0b11}
 
 miasm.arch.aarch64.arch.bs_shiftr_name = bs_name(l=2, name=shiftr_name)
 
dictionary miasm.arch.aarch64.arch.msr_name = {'MSR': 0b0, 'MRS': 0b1}
 
 miasm.arch.aarch64.arch.bs_msr_name = bs_name(l=1, name=msr_name)
 
 miasm.arch.aarch64.arch.stacctype = bs_mod_name(l=1, fname='order', mn_mod=['', 'L'])
 
 miasm.arch.aarch64.arch.ltacctype = bs_mod_name(l=1, fname='order', mn_mod=['', 'A'])