miasm
Reverse engineering framework
miasm.arch.arm.arch.mn_arm Class Reference
Inheritance diagram for miasm.arch.arm.arch.mn_arm:
Collaboration diagram for miasm.arch.arm.arch.mn_arm:

Public Member Functions

def getpc (cls, attrib=None)
 
def getsp (cls, attrib=None)
 
def additional_info (self)
 
def getbits (cls, bs, attrib, start, n)
 
def endian_offset (cls, attrib, offset)
 
def check_mnemo (cls, fields)
 
def getmn (cls, name)
 
def mod_fields (cls, fields)
 
def gen_modes (cls, subcls, name, bases, dct, fields)
 
def value (self, mode)
 
def get_symbol_size (self, symbol, loc_db, mode)
 
- Public Member Functions inherited from miasm.core.cpu.cls_mn
def guess_mnemo (cls, bs, attrib, pre_dis_info, offset)
 
def reset_class (self)
 
def init_class (self)
 
def add_pre_dis_info (self, prefix=None)
 
def getbytes (cls, bs, offset, l)
 
def pre_dis (cls, v_o, attrib, offset)
 
def post_dis (self)
 
def dis (cls, bs_o, mode_o=None, offset=0)
 
def fromstring (cls, text, loc_db, mode=None)
 
def dup_info (self, infos)
 
def get_cls_instance (cls, cc, mode, infos=None)
 
def asm (cls, instr, loc_db=None)
 
def filter_asm_candidates (cls, instr, candidates)
 
def encodefields (self, decoded)
 
def decoded2bytes (self, result)
 
def gen_args (self, args)
 
def args2str (self)
 
def __str__ (self)
 
def parse_prefix (self, v)
 
def set_dst_symbol (self, loc_db)
 
def getdstflow (self, loc_db)
 
- Public Member Functions inherited from miasm.core.cpu.metamn
def __new__ (mcs, name, bases, dct)
 

Static Public Attributes

int delayslot = 0
 
string name = "arm"
 
 regs = regs_module
 
dictionary bintree = {}
 
int num = 0
 
list all_mn = []
 
 all_mn_mode = defaultdict(list)
 
 all_mn_name = defaultdict(list)
 
 all_mn_inst = defaultdict(list)
 
dictionary pc = {'l':PC, 'b':PC}
 
dictionary sp = {'l':SP, 'b':SP}
 
 instruction = instruction_arm
 
int max_instruction_len = 4
 
int alignment = 4
 
- Static Public Attributes inherited from miasm.core.cpu.cls_mn
list args_symb = []
 
 instruction = instruction
 
int alignment = 1
 

Additional Inherited Members

- Public Attributes inherited from miasm.core.cpu.cls_mn
 args
 
 fields_order
 
 to_decode
 
 args_symb
 

Member Function Documentation

◆ additional_info()

def miasm.arch.arm.arch.mn_arm.additional_info (   self)

◆ check_mnemo()

def miasm.arch.arm.arch.mn_arm.check_mnemo (   cls,
  fields 
)

Reimplemented from miasm.core.cpu.cls_mn.

◆ endian_offset()

def miasm.arch.arm.arch.mn_arm.endian_offset (   cls,
  attrib,
  offset 
)
Here is the caller graph for this function:

◆ gen_modes()

def miasm.arch.arm.arch.mn_arm.gen_modes (   cls,
  subcls,
  name,
  bases,
  dct,
  fields 
)

◆ get_symbol_size()

def miasm.arch.arm.arch.mn_arm.get_symbol_size (   self,
  symbol,
  loc_db,
  mode 
)
Here is the caller graph for this function:

◆ getbits()

def miasm.arch.arm.arch.mn_arm.getbits (   cls,
  bs,
  attrib,
  start,
  n 
)

Reimplemented from miasm.core.cpu.cls_mn.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getmn()

def miasm.arch.arm.arch.mn_arm.getmn (   cls,
  name 
)

◆ getpc()

def miasm.arch.arm.arch.mn_arm.getpc (   cls,
  attrib = None 
)

◆ getsp()

def miasm.arch.arm.arch.mn_arm.getsp (   cls,
  attrib = None 
)

◆ mod_fields()

def miasm.arch.arm.arch.mn_arm.mod_fields (   cls,
  fields 
)

Reimplemented from miasm.core.cpu.cls_mn.

◆ value()

def miasm.arch.arm.arch.mn_arm.value (   self,
  mode 
)

Reimplemented from miasm.core.cpu.cls_mn.

Here is the caller graph for this function:

Member Data Documentation

◆ alignment

int miasm.arch.arm.arch.mn_arm.alignment = 4
static

◆ all_mn

list miasm.arch.arm.arch.mn_arm.all_mn = []
static

◆ all_mn_inst

miasm.arch.arm.arch.mn_arm.all_mn_inst = defaultdict(list)
static

◆ all_mn_mode

miasm.arch.arm.arch.mn_arm.all_mn_mode = defaultdict(list)
static

◆ all_mn_name

miasm.arch.arm.arch.mn_arm.all_mn_name = defaultdict(list)
static

◆ bintree

dictionary miasm.arch.arm.arch.mn_arm.bintree = {}
static

◆ delayslot

int miasm.arch.arm.arch.mn_arm.delayslot = 0
static

◆ instruction

miasm.arch.arm.arch.mn_arm.instruction = instruction_arm
static

◆ max_instruction_len

int miasm.arch.arm.arch.mn_arm.max_instruction_len = 4
static

◆ name

string miasm.arch.arm.arch.mn_arm.name = "arm"
static

◆ num

int miasm.arch.arm.arch.mn_arm.num = 0
static

◆ pc

dictionary miasm.arch.arm.arch.mn_arm.pc = {'l':PC, 'b':PC}
static

◆ regs

miasm.arch.arm.arch.mn_arm.regs = regs_module
static

◆ sp

dictionary miasm.arch.arm.arch.mn_arm.sp = {'l':SP, 'b':SP}
static

The documentation for this class was generated from the following file: