C# Class Mono.Debugger.Architectures.X86_Instruction

Inheritance: Instruction
Show file Open project: baulig/debugger Class Usage Examples

Public Properties

Property Type Description
CallTarget TargetAddress
DereferenceAddress bool
Displacement int
IndexRegister int
ModRM X86_ModRM
Prefix X86_Prefix
Register int
RexPrefix X86_REX_Prefix
SIB X86_SIB

Protected Properties

Property Type Description
Opcodes X86_Opcodes

Public Methods

Method Description
CheckTrampoline ( TargetMemoryAccess memory, TargetAddress &trampoline ) : TrampolineType
DecodeInstruction ( X86_Opcodes opcodes, TargetMemoryAccess memory, TargetAddress address ) : X86_Instruction
GetEffectiveAddress ( TargetMemoryAccess memory ) : TargetAddress
ToString ( ) : string

Protected Methods

Method Description
DecodeGroup5 ( TargetReader reader ) : void
DecodeModRM ( TargetReader reader ) : void
DecodeRegister ( int register ) : int
DoDecodeInstruction ( TargetMemoryAccess memory, TargetAddress address ) : void
GetMonoTrampoline ( TargetMemoryAccess memory, TargetAddress call_target, TargetAddress &trampoline ) : bool
OneByteOpcode ( TargetReader reader, byte opcode ) : void
TwoByteOpcode ( TargetReader reader ) : void
X86_Instruction ( X86_Opcodes opcodes, TargetAddress address ) : System
format_2_bits ( int value ) : string
format_4_bits ( int value ) : string

Private Methods

Method Description
CheckPrefix ( TargetReader reader ) : bool

Method Details

CheckTrampoline() public method

public CheckTrampoline ( TargetMemoryAccess memory, TargetAddress &trampoline ) : TrampolineType
memory TargetMemoryAccess
trampoline TargetAddress
return TrampolineType

DecodeGroup5() protected method

protected DecodeGroup5 ( TargetReader reader ) : void
reader Mono.Debugger.Backend.TargetReader
return void

DecodeInstruction() public static method

public static DecodeInstruction ( X86_Opcodes opcodes, TargetMemoryAccess memory, TargetAddress address ) : X86_Instruction
opcodes X86_Opcodes
memory TargetMemoryAccess
address TargetAddress
return X86_Instruction

DecodeModRM() protected method

protected DecodeModRM ( TargetReader reader ) : void
reader Mono.Debugger.Backend.TargetReader
return void

DecodeRegister() protected abstract method

protected abstract DecodeRegister ( int register ) : int
register int
return int

DoDecodeInstruction() protected method

protected DoDecodeInstruction ( TargetMemoryAccess memory, TargetAddress address ) : void
memory TargetMemoryAccess
address TargetAddress
return void

GetEffectiveAddress() public method

public GetEffectiveAddress ( TargetMemoryAccess memory ) : TargetAddress
memory TargetMemoryAccess
return TargetAddress

GetMonoTrampoline() protected abstract method

protected abstract GetMonoTrampoline ( TargetMemoryAccess memory, TargetAddress call_target, TargetAddress &trampoline ) : bool
memory TargetMemoryAccess
call_target TargetAddress
trampoline TargetAddress
return bool

OneByteOpcode() protected method

protected OneByteOpcode ( TargetReader reader, byte opcode ) : void
reader Mono.Debugger.Backend.TargetReader
opcode byte
return void

ToString() public method

public ToString ( ) : string
return string

TwoByteOpcode() protected method

protected TwoByteOpcode ( TargetReader reader ) : void
reader Mono.Debugger.Backend.TargetReader
return void

X86_Instruction() protected method

protected X86_Instruction ( X86_Opcodes opcodes, TargetAddress address ) : System
opcodes X86_Opcodes
address TargetAddress
return System

format_2_bits() protected static method

protected static format_2_bits ( int value ) : string
value int
return string

format_4_bits() protected static method

protected static format_4_bits ( int value ) : string
value int
return string

Property Details

CallTarget public property

public TargetAddress CallTarget
return TargetAddress

DereferenceAddress public property

public bool DereferenceAddress
return bool

Displacement public property

public int Displacement
return int

IndexRegister public property

public int IndexRegister
return int

ModRM public property

public X86_ModRM ModRM
return X86_ModRM

Opcodes protected property

protected X86_Opcodes,Mono.Debugger.Architectures Opcodes
return X86_Opcodes

Prefix public property

public X86_Prefix Prefix
return X86_Prefix

Register public property

public int Register
return int

RexPrefix public property

public X86_REX_Prefix RexPrefix
return X86_REX_Prefix

SIB public property

public X86_SIB SIB
return X86_SIB