Public Member Functions | Static Public Member Functions

com.google.security.zynamics.binnavi.API.reil.ReilInstruction Class Reference

Inherits com::google::security::zynamics::binnavi::APIHelpers::ApiObject< com.google.security.zynamics.reil.ReilInstruction >.

List of all members.

Public Member Functions

Address getAddress ()
ReilOperand getFirstOperand ()
Map< String, String > getMetaData ()
String getMnemonic ()
ReilOperand getSecondOperand ()
ReilOperand getThirdOperand ()
 ReilInstruction (final Address address, final String mnemonic, final ReilOperand firstOperand, final ReilOperand secondOperand, final ReilOperand thirdOperand)
void setMetaData (final String key, final String value)
String toString ()

Static Public Member Functions

static ReilInstruction createAdd (final Address address, final ReilOperand firstOperand, final ReilOperand secondOperand, final ReilOperand thirdOperand)
static ReilInstruction createAnd (final Address address, final ReilOperand firstOperand, final ReilOperand secondOperand, final ReilOperand thirdOperand)
static ReilInstruction createBisz (final Address address, final ReilOperand inputValue, final ReilOperand outputValue)
static ReilInstruction createBsh (final Address address, final ReilOperand firstOperand, final ReilOperand secondOperand, final ReilOperand thirdOperand)
static ReilInstruction createDiv (final Address address, final ReilOperand firstOperand, final ReilOperand secondOperand, final ReilOperand thirdOperand)
static ReilInstruction createJcc (final Address address, final ReilOperand jumpCondition, final ReilOperand jumpTarget)
static ReilInstruction createLdm (final Address address, final ReilOperand loadSource, final ReilOperand loadTarget)
static ReilInstruction createMod (final Address address, final ReilOperand firstOperand, final ReilOperand secondOperand, final ReilOperand thirdOperand)
static ReilInstruction createMul (final Address address, final ReilOperand firstOperand, final ReilOperand secondOperand, final ReilOperand thirdOperand)
static ReilInstruction createNop (final Address address)
static ReilInstruction createOr (final Address address, final ReilOperand firstOperand, final ReilOperand secondOperand, final ReilOperand thirdOperand)
static ReilInstruction createStm (final Address address, final ReilOperand storeValue, final ReilOperand storeTarget)
static ReilInstruction createStr (final Address address, final ReilOperand storeValue, final ReilOperand storeTarget)
static ReilInstruction createSub (final Address address, final ReilOperand firstOperand, final ReilOperand secondOperand, final ReilOperand thirdOperand)
static ReilInstruction createUndef (final Address address)
static ReilInstruction createUnknown (final Address address)
static ReilInstruction createXor (final Address address, final ReilOperand firstOperand, final ReilOperand secondOperand, final ReilOperand thirdOperand)

Detailed Description

Represents a single REIL instruction.


Constructor & Destructor Documentation

com.google.security.zynamics.binnavi.API.reil.ReilInstruction.ReilInstruction ( final Address  address,
final String  mnemonic,
final ReilOperand  firstOperand,
final ReilOperand  secondOperand,
final ReilOperand  thirdOperand 
)

Creates a new REIL instruction.

Parameters:
address Address of the new REIL instruction.
mnemonic Mnemonic of the new REIL instruction. In most cases this is one of the constants found in ReilMnemonics.
firstOperand First operand of the new REIL instruction.
secondOperand Second operand of the new REIL instruction.
thirdOperand Third operand of the new REIL instruction.

Member Function Documentation

static ReilInstruction com.google.security.zynamics.binnavi.API.reil.ReilInstruction.createAdd ( final Address  address,
final ReilOperand  firstOperand,
final ReilOperand  secondOperand,
final ReilOperand  thirdOperand 
) [static]

Creates a new ADD instruction.

Parameters:
address Address of the ADD instruction.
firstOperand First operand of the ADD instruction.
secondOperand Second operand of the ADD instruction.
thirdOperand Third operand of the ADD instruction.
Returns:
The created ADD instruction.
static ReilInstruction com.google.security.zynamics.binnavi.API.reil.ReilInstruction.createAnd ( final Address  address,
final ReilOperand  firstOperand,
final ReilOperand  secondOperand,
final ReilOperand  thirdOperand 
) [static]

Creates a new AND instruction.

Parameters:
address Address of the AND instruction.
firstOperand First operand of the AND instruction.
secondOperand Second operand of the AND instruction.
thirdOperand Third operand of the AND instruction.
Returns:
The created AND instruction.
static ReilInstruction com.google.security.zynamics.binnavi.API.reil.ReilInstruction.createBisz ( final Address  address,
final ReilOperand  inputValue,
final ReilOperand  outputValue 
) [static]

Creates a new BISZ instruction.

Parameters:
address Address of the BISZ instruction.
inputValue The input value of the BISZ instruction.
outputValue The output value of the BISZ instruction.
Returns:
The created BISZ instruction.
static ReilInstruction com.google.security.zynamics.binnavi.API.reil.ReilInstruction.createBsh ( final Address  address,
final ReilOperand  firstOperand,
final ReilOperand  secondOperand,
final ReilOperand  thirdOperand 
) [static]

Creates a new BSH instruction.

Parameters:
address Address of the BSH instruction.
firstOperand First operand of the BSH instruction.
secondOperand Second operand of the BSH instruction.
thirdOperand Third operand of the BSH instruction.
Returns:
The created BSH instruction.
static ReilInstruction com.google.security.zynamics.binnavi.API.reil.ReilInstruction.createDiv ( final Address  address,
final ReilOperand  firstOperand,
final ReilOperand  secondOperand,
final ReilOperand  thirdOperand 
) [static]

Creates a new DIV instruction.

Parameters:
address Address of the DIV instruction.
firstOperand First operand of the DIV instruction.
secondOperand Second operand of the DIV instruction.
thirdOperand Third operand of the DIV instruction.
Returns:
The created DIV instruction.
static ReilInstruction com.google.security.zynamics.binnavi.API.reil.ReilInstruction.createJcc ( final Address  address,
final ReilOperand  jumpCondition,
final ReilOperand  jumpTarget 
) [static]

Creates a new JCC instruction.

Parameters:
address Address of the JCC instruction.
jumpCondition Describes the jump condition of the JCC instruction.
jumpTarget Describes the jump target of the JCC instruction.
Returns:
The created JCC instruction.
static ReilInstruction com.google.security.zynamics.binnavi.API.reil.ReilInstruction.createLdm ( final Address  address,
final ReilOperand  loadSource,
final ReilOperand  loadTarget 
) [static]

Creates a new LDM instruction.

Parameters:
address Address of the LDM instruction.
loadSource Describes the memory address from which the LDM instruction reads.
loadTarget Describes the target register where the loaded value is stored.
Returns:
The created LDM instruction.
static ReilInstruction com.google.security.zynamics.binnavi.API.reil.ReilInstruction.createMod ( final Address  address,
final ReilOperand  firstOperand,
final ReilOperand  secondOperand,
final ReilOperand  thirdOperand 
) [static]

Creates a new MOD instruction.

Parameters:
address Address of the MOD instruction.
firstOperand First operand of the MOD instruction.
secondOperand Second operand of the MOD instruction.
thirdOperand Third operand of the MOD instruction.
Returns:
The created MOD instruction.
static ReilInstruction com.google.security.zynamics.binnavi.API.reil.ReilInstruction.createMul ( final Address  address,
final ReilOperand  firstOperand,
final ReilOperand  secondOperand,
final ReilOperand  thirdOperand 
) [static]

Creates a new MUL instruction.

Parameters:
address Address of the MUL instruction.
firstOperand First operand of the MUL instruction.
secondOperand Second operand of the MUL instruction.
thirdOperand Third operand of the MUL instruction.
Returns:
The created MUL instruction.
static ReilInstruction com.google.security.zynamics.binnavi.API.reil.ReilInstruction.createNop ( final Address  address  )  [static]

Creates a new NOP instruction.

Parameters:
address Address of the NOP instruction.
Returns:
The created NOP instruction.
static ReilInstruction com.google.security.zynamics.binnavi.API.reil.ReilInstruction.createOr ( final Address  address,
final ReilOperand  firstOperand,
final ReilOperand  secondOperand,
final ReilOperand  thirdOperand 
) [static]

Creates a new OR instruction.

Parameters:
address Address of the OR instruction.
firstOperand First operand of the OR instruction.
secondOperand Second operand of the OR instruction.
thirdOperand Third operand of the OR instruction.
Returns:
The created OR instruction.
static ReilInstruction com.google.security.zynamics.binnavi.API.reil.ReilInstruction.createStm ( final Address  address,
final ReilOperand  storeValue,
final ReilOperand  storeTarget 
) [static]

Creates a new STM instruction.

Parameters:
address Address of the STM instruction.
storeValue Describes the value that is stored by the STM instruction.
storeTarget Describes the memory address where the value is stored.
Returns:
The created STM instruction.
static ReilInstruction com.google.security.zynamics.binnavi.API.reil.ReilInstruction.createStr ( final Address  address,
final ReilOperand  storeValue,
final ReilOperand  storeTarget 
) [static]

Creates a new STR instruction.

Parameters:
address Address of the STR instruction.
storeValue Describes the value that is stored by the STR instruction.
storeTarget Describes the register where the value is stored.
Returns:
The created STR instruction.
static ReilInstruction com.google.security.zynamics.binnavi.API.reil.ReilInstruction.createSub ( final Address  address,
final ReilOperand  firstOperand,
final ReilOperand  secondOperand,
final ReilOperand  thirdOperand 
) [static]

Creates a new SUB instruction.

Parameters:
address Address of the SUB instruction.
firstOperand First operand of the SUB instruction.
secondOperand Second operand of the SUB instruction.
thirdOperand Third operand of the SUB instruction.
Returns:
The created SUB instruction.
static ReilInstruction com.google.security.zynamics.binnavi.API.reil.ReilInstruction.createUndef ( final Address  address  )  [static]

Creates a new UNDEF instruction.

Parameters:
address Address of the UNDEF instruction.
Returns:
The created UNDEF instruction.
static ReilInstruction com.google.security.zynamics.binnavi.API.reil.ReilInstruction.createUnknown ( final Address  address  )  [static]

Creates a new UNKNOWN instruction.

Parameters:
address Address of the UNKNOWN instruction.
Returns:
The created UNKNOWN instruction.
static ReilInstruction com.google.security.zynamics.binnavi.API.reil.ReilInstruction.createXor ( final Address  address,
final ReilOperand  firstOperand,
final ReilOperand  secondOperand,
final ReilOperand  thirdOperand 
) [static]

Creates a new XOR instruction.

Parameters:
address Address of the XOR instruction.
firstOperand First operand of the XOR instruction.
secondOperand Second operand of the XOR instruction.
thirdOperand Third operand of the XOR instruction.
Returns:
The created XOR instruction.
Address com.google.security.zynamics.binnavi.API.reil.ReilInstruction.getAddress (  ) 

Returns the address of the REIL instruction.

Returns:
The address of the REIL instruction.
ReilOperand com.google.security.zynamics.binnavi.API.reil.ReilInstruction.getFirstOperand (  ) 

Returns the first operand of the REIL instruction.

Returns:
The first operand of the REIL instruction.
Map<String, String> com.google.security.zynamics.binnavi.API.reil.ReilInstruction.getMetaData (  ) 

Returns a map that contains all meta-information associated with the instruction.

Returns:
The meta-data map.
String com.google.security.zynamics.binnavi.API.reil.ReilInstruction.getMnemonic (  ) 

Returns the mnemonic of the REIL instruction.

Returns:
The mnemonic of the REIL instruction.
ReilOperand com.google.security.zynamics.binnavi.API.reil.ReilInstruction.getSecondOperand (  ) 

Returns the second operand of the REIL instruction.

Returns:
The second operand of the REIL instruction.
ReilOperand com.google.security.zynamics.binnavi.API.reil.ReilInstruction.getThirdOperand (  ) 

Returns the third operand of the REIL instruction.

Returns:
The third operand of the REIL instruction.
void com.google.security.zynamics.binnavi.API.reil.ReilInstruction.setMetaData ( final String  key,
final String  value 
)

Sets meta-data information of the REIL instruction.

Parameters:
key They key of the piece of meta-data to set.
value The value of the piece of meta-data. If this value is null, the key is removed from the meta-data set.
String com.google.security.zynamics.binnavi.API.reil.ReilInstruction.toString (  ) 

Returns the string representation of the REIL instruction.

Returns:
The string representation of the REIL instruction.