angr.analyses.disassembly

class angr.analyses.disassembly.DisassemblyPiece

Bases: object

addr = None
ident = nan
render(formatting=None)
Return type:

list[str]

getpiece(formatting, column)
width(formatting)
height(formatting)
static color(string, coloring, formatting)
highlight(string, formatting=None)
class angr.analyses.disassembly.FunctionStart

Bases: DisassemblyPiece

__init__(func)

Constructor.

Parameters:

func (angr.knowledge.Function) – The function instance.

height(formatting)
class angr.analyses.disassembly.Label

Bases: DisassemblyPiece

__init__(addr, name)
class angr.analyses.disassembly.IROp

Bases: DisassemblyPiece

__init__(addr, seq, obj, irsb)
Parameters:
addr: int
seq: int
obj: IRStmt | PcodeOp
irsb: IRSB | IRSB
class angr.analyses.disassembly.BlockStart

Bases: DisassemblyPiece

__init__(block, parentfunc, project)
class angr.analyses.disassembly.Hook

Bases: DisassemblyPiece

__init__(block)
class angr.analyses.disassembly.Instruction

Bases: DisassemblyPiece

__init__(insn, parentblock, project=None)
opcode: Opcode
property mnemonic
reload_format()
dissect_instruction()
dissect_instruction_for_arm()
static split_arm_op_string(op_str)
Parameters:

op_str (str)

dissect_instruction_by_default()
static split_op_string(insn_str)
class angr.analyses.disassembly.SootExpression

Bases: DisassemblyPiece

__init__(expr)
class angr.analyses.disassembly.SootExpressionTarget

Bases: SootExpression

__init__(target_stmt_idx)
class angr.analyses.disassembly.SootExpressionStaticFieldRef

Bases: SootExpression

__init__(field)
class angr.analyses.disassembly.SootExpressionInvoke

Bases: SootExpression

Virtual = 'virtual'
Static = 'static'
Special = 'special'
__init__(invoke_type, expr)
class angr.analyses.disassembly.SootStatement

Bases: DisassemblyPiece

__init__(block_addr, raw_stmt)
property stmt_idx
class angr.analyses.disassembly.Opcode

Bases: DisassemblyPiece

__init__(parentinsn)
class angr.analyses.disassembly.Operand

Bases: DisassemblyPiece

__init__(op_num, children, parentinsn)
children: list
property cs_operand
static build(operand_type, op_num, children, parentinsn)
class angr.analyses.disassembly.ConstantOperand

Bases: Operand

class angr.analyses.disassembly.RegisterOperand

Bases: Operand

property register
class angr.analyses.disassembly.MemoryOperand

Bases: Operand

__init__(op_num, children, parentinsn)
values: list[str | DisassemblyPiece]
class angr.analyses.disassembly.OperandPiece

Bases: DisassemblyPiece

addr = None
parentop = None
ident = None
class angr.analyses.disassembly.Register

Bases: OperandPiece

__init__(reg, prefix='')
class angr.analyses.disassembly.Value

Bases: OperandPiece

__init__(val, render_with_sign, render_with_pound_sign=False)
Parameters:

render_with_pound_sign (bool)

property project
class angr.analyses.disassembly.Comment

Bases: DisassemblyPiece

__init__(addr, text)
height(formatting)
class angr.analyses.disassembly.FuncComment

Bases: DisassemblyPiece

__init__(func)
class angr.analyses.disassembly.Disassembly

Bases: Analysis

Produce formatted machine code disassembly.

__init__(function=None, ranges=None, thumb=False, include_ir=False, block_bytes=None)
Parameters:
func_lookup(block)
parse_block(block)

Parse instructions for a given block node

Return type:

None

Parameters:

block (BlockNode)

render(formatting=None, show_edges=True, show_addresses=True, show_bytes=False, ascii_only=None, color=True, min_edge_depth=0)

Render the disassembly to a string, with optional edges and addresses.

Color will be added by default, if enabled. To disable color pass an empty formatting dict.

Return type:

str

Parameters:
  • show_edges (bool)

  • show_addresses (bool)

  • show_bytes (bool)

  • ascii_only (bool | None)

  • color (bool)

  • min_edge_depth (int)