Package IDAscope :: Package idascope :: Package core :: Package structures :: Module AritlogBasicBlock :: Class AritlogBasicBlock
[hide private]
[frames] | no frames]

Class AritlogBasicBlock

source code

This class is an information container for the arithmetic / logic heuristic of the crypto identifier

Instance Methods [hide private]
 
__init__(self, start_ea, end_ea) source code
 
get_aritlog_rating(self, is_nonzeroing_rating=False)
Calculates and returns the rating for this basic block
source code
 
update_instruction_count(self, instruction, has_identical_operands)
Update the instruction count for this basic block.
source code
 
__str__(self)
Convenience function.
source code
 
__lt__(self, other)
Convenience function for ordering.
source code
Method Details [hide private]

get_aritlog_rating(self, is_nonzeroing_rating=False)

source code 

Calculates and returns the rating for this basic block

Parameters:
  • is_nonzeroing_rating - determines whether zeroing instructions like xor eax, eax shall be taken into account or not.
Returns:
the rating for this basic block

update_instruction_count(self, instruction, has_identical_operands)

source code 

Update the instruction count for this basic block.

Parameters:
  • instruction - The mnemonic for a instruction of this block, as returned by IDA's GetMnem()'
  • has_identical_operands - determines if this instruction has two identical operands. Important for deciding whether the instruction zeroes a register or not

__str__(self)
(Informal representation operator)

source code 

Convenience function.

Returns:
a nice string representation for this object

__lt__(self, other)
(Less-than operator)

source code 

Convenience function for ordering.

Parameters:
  • other (AritLogBasicBlock) - another AritLogBasicBlock
Returns:
less if rating is less than of the other