IDAPython 9.0
|
Public Member Functions | |
__init__ (self) | |
None | clear (self) |
bool | empty (self) |
None | swap (self, 'reg_value_info_t' r) |
bool | is_dead_end (self) |
bool | aborted (self) |
bool | is_special (self) |
bool | is_badinsn (self) |
bool | is_unkinsn (self) |
bool | is_unkfunc (self) |
bool | is_unkloop (self) |
bool | is_unkmult (self) |
bool | is_unkxref (self) |
bool | is_unkvals (self) |
bool | is_unknown (self) |
bool | is_num (self) |
bool | is_spd (self) |
bool | is_known (self) |
bool | get_num (self) |
bool | get_spd (self) |
ida_idaapi.ea_t | get_def_ea (self) |
'uint16' | get_def_itype (self) |
bool | is_value_unique (self) |
bool | have_all_vals_flag (self, 'uint16' val_flags) |
bool | has_any_vals_flag (self, 'uint16' val_flags) |
bool | is_all_vals_pc_based (self) |
bool | is_any_vals_pc_based (self) |
bool | is_all_vals_like_got (self) |
bool | is_any_vals_like_got (self) |
None | set_all_vals_flag (self, 'uint16' val_flags) |
None | set_all_vals_pc_based (self) |
None | set_all_vals_got_based (self) |
None | set_dead_end (self, ida_idaapi.ea_t dead_end_ea) |
None | set_badinsn (self, ida_idaapi.ea_t insn_ea) |
None | set_unkinsn (self, 'insn_t const &' insn) |
None | set_unkfunc (self, ida_idaapi.ea_t func_ea) |
None | set_unkloop (self, ida_idaapi.ea_t bblk_ea) |
None | set_unkmult (self, ida_idaapi.ea_t bblk_ea) |
None | set_unkxref (self, ida_idaapi.ea_t bblk_ea) |
None | set_unkvals (self, ida_idaapi.ea_t bblk_ea) |
None | set_aborted (self, ida_idaapi.ea_t bblk_ea) |
None | set_num (self, *args) |
'reg_value_info_t::set_compare_res_t' | vals_union (self, 'reg_value_info_t' r) |
None | extend (self, 'procmod_t' pm, int width, bool is_signed) |
None | trunc_uval (self, 'procmod_t' pm) |
None | add (self, 'reg_value_info_t' r, 'insn_t const &' insn) |
None | sub (self, 'reg_value_info_t' r, 'insn_t const &' insn) |
None | bor (self, 'reg_value_info_t' r, 'insn_t const &' insn) |
None | band (self, 'reg_value_info_t' r, 'insn_t const &' insn) |
None | bxor (self, 'reg_value_info_t' r, 'insn_t const &' insn) |
None | bandnot (self, 'reg_value_info_t' r, 'insn_t const &' insn) |
None | sll (self, 'reg_value_info_t' r, 'insn_t const &' insn) |
None | slr (self, 'reg_value_info_t' r, 'insn_t const &' insn) |
None | movt (self, 'reg_value_info_t' r, 'insn_t const &' insn) |
None | neg (self, 'insn_t const &' insn) |
None | bnot (self, 'insn_t const &' insn) |
None | add_num (self, *args) |
None | shift_left (self, int r) |
None | shift_right (self, int r) |
str | __str__ (self) |
'size_t' | __len__ (self) |
'reg_value_def_t const &' | __getitem__ (self, 'size_t' i) |
Static Public Member Functions | |
'reg_value_info_t' | make_dead_end (ida_idaapi.ea_t dead_end_ea) |
'reg_value_info_t' | make_aborted (ida_idaapi.ea_t bblk_ea) |
'reg_value_info_t' | make_badinsn (ida_idaapi.ea_t insn_ea) |
'reg_value_info_t' | make_unkinsn ('insn_t const &' insn) |
'reg_value_info_t' | make_unkfunc (ida_idaapi.ea_t func_ea) |
'reg_value_info_t' | make_unkloop (ida_idaapi.ea_t bblk_ea) |
'reg_value_info_t' | make_unkmult (ida_idaapi.ea_t bblk_ea) |
'reg_value_info_t' | make_unkxref (ida_idaapi.ea_t bblk_ea) |
'reg_value_info_t' | make_unkvals (ida_idaapi.ea_t bblk_ea) |
'reg_value_info_t' | make_num (*args) |
'reg_value_info_t' | make_initial_sp (ida_idaapi.ea_t func_ea) |
Static Public Attributes | |
EQUAL = _ida_regfinder.reg_value_info_t_EQUAL | |
CONTAINS = _ida_regfinder.reg_value_info_t_CONTAINS | |
CONTAINED = _ida_regfinder.reg_value_info_t_CONTAINED | |
NOT_COMPARABLE = _ida_regfinder.reg_value_info_t_NOT_COMPARABLE | |
ADD = _ida_regfinder.reg_value_info_t_ADD | |
SUB = _ida_regfinder.reg_value_info_t_SUB | |
OR = _ida_regfinder.reg_value_info_t_OR | |
AND = _ida_regfinder.reg_value_info_t_AND | |
XOR = _ida_regfinder.reg_value_info_t_XOR | |
AND_NOT = _ida_regfinder.reg_value_info_t_AND_NOT | |
SLL = _ida_regfinder.reg_value_info_t_SLL | |
SLR = _ida_regfinder.reg_value_info_t_SLR | |
MOVT = _ida_regfinder.reg_value_info_t_MOVT | |
NEG = _ida_regfinder.reg_value_info_t_NEG | |
NOT = _ida_regfinder.reg_value_info_t_NOT | |
Properties | |
thisown | |
__init__ | ( | self | ) |
'reg_value_def_t const &' __getitem__ | ( | self, | |
'size_t' | i ) |
'size_t' __len__ | ( | self | ) |
str __str__ | ( | self | ) |
bool aborted | ( | self | ) |
Return 'true' if the tracking process was aborted.
None add | ( | self, | |
'reg_value_info_t' | r, | ||
'insn_t const &' | insn ) |
Add R to the value, save INSN as a defining instruction.
None add_num | ( | self, | |
* | args ) |
This function has the following signatures: 0. add_num(r: int, insn: const insn_t &) -> None 1. add_num(r: int) -> None # 0: add_num(r: int, insn: const insn_t &) -> None Add R to the value, save INSN as a defining instruction. # 1: add_num(r: int) -> None Add R to the value, do not change the defining instructions.
None band | ( | self, | |
'reg_value_info_t' | r, | ||
'insn_t const &' | insn ) |
Make bitwise AND of R to the value, save INSN as a defining instruction.
None bandnot | ( | self, | |
'reg_value_info_t' | r, | ||
'insn_t const &' | insn ) |
Make bitwise AND of the inverse of R to the value, save INSN as a defining instruction.
None bnot | ( | self, | |
'insn_t const &' | insn ) |
Make bitwise inverse of the value, save INSN as a defining instruction.
None bor | ( | self, | |
'reg_value_info_t' | r, | ||
'insn_t const &' | insn ) |
Make bitwise OR of R to the value, save INSN as a defining instruction.
None bxor | ( | self, | |
'reg_value_info_t' | r, | ||
'insn_t const &' | insn ) |
Make bitwise eXclusive OR of R to the value, save INSN as a defining instruction.
None clear | ( | self | ) |
Undefine the value.
bool empty | ( | self | ) |
Return 'true' if we know nothing about a value.
None extend | ( | self, | |
'procmod_t' | pm, | ||
int | width, | ||
bool | is_signed ) |
Sign-, or zero-extend the number or SP delta value to full size. The initial value is considered to be of size WIDTH.
ida_idaapi.ea_t get_def_ea | ( | self | ) |
Return the defining address.
'uint16' get_def_itype | ( | self | ) |
Return the defining instruction code (processor specific).
bool get_num | ( | self | ) |
Return the number if the value is a constant.
bool get_spd | ( | self | ) |
Return the SP delta if the value depends on the stack pointer.
bool has_any_vals_flag | ( | self, | |
'uint16' | val_flags ) |
bool have_all_vals_flag | ( | self, | |
'uint16' | val_flags ) |
Check the given flag for each value.
bool is_all_vals_like_got | ( | self | ) |
bool is_all_vals_pc_based | ( | self | ) |
bool is_any_vals_like_got | ( | self | ) |
bool is_any_vals_pc_based | ( | self | ) |
bool is_badinsn | ( | self | ) |
Return 'true' if the value is unknown because of a bad insn.
bool is_dead_end | ( | self | ) |
Return 'true' if the value is undefined because of a dead end.
bool is_known | ( | self | ) |
Return 'true' if the value is known (i.e. it is a number or SP delta).
bool is_num | ( | self | ) |
Return 'true' if the value is a constant.
bool is_spd | ( | self | ) |
Return 'true' if the value depends on the stack pointer.
bool is_special | ( | self | ) |
Return 'true' if the value requires special handling.
bool is_unkfunc | ( | self | ) |
Return 'true' if the value is unknown from the function start.
bool is_unkinsn | ( | self | ) |
Return 'true' if the value is unknown after executing the insn.
bool is_unkloop | ( | self | ) |
Return 'true' if the value is unknown because it changes in a loop.
bool is_unkmult | ( | self | ) |
Return 'true' if the value is unknown because the register has incompatible values (a number and SP delta).
bool is_unknown | ( | self | ) |
Return 'true' if the value is unknown.
bool is_unkvals | ( | self | ) |
Return 'true' if the value is unknown because the register has too many values.
bool is_unkxref | ( | self | ) |
Return 'true' if the value is unknown because there are too many xrefs.
bool is_value_unique | ( | self | ) |
Check that the value is unique.
|
static |
Return the value after aborting.
|
static |
Return the unknown value after a bad insn.
|
static |
Return the undefined value because of a dead end.
|
static |
Return the value that is the initial stack pointer.
|
static |
This function has the following signatures: 0. make_num(rval: int, insn: const insn_t &, val_flags: uint16=0) -> reg_value_info_t 1. make_num(rval: int, val_ea: ida_idaapi.ea_t, val_flags: uint16=0) -> reg_value_info_t # 0: make_num(rval: int, insn: const insn_t &, val_flags: uint16=0) -> reg_value_info_t Return the value that is the RVAL number. # 1: make_num(rval: int, val_ea: ida_idaapi.ea_t, val_flags: uint16=0) -> reg_value_info_t Return the value that is the RVAL number.
|
static |
Return the unknown value from the function start.
|
static |
Return the unknown value after executing the insn.
|
static |
Return the unknown value if it changes in a loop.
|
static |
Return the unknown value if the register has incompatible values.
|
static |
Return the unknown value if the register has too many values.
|
static |
Return the unknown value if there are too many xrefs.
None movt | ( | self, | |
'reg_value_info_t' | r, | ||
'insn_t const &' | insn ) |
Replace the top 16 bits with bottom 16 bits of R, leaving the bottom 16 bits untouched, save INSN as a defining instruction.
None neg | ( | self, | |
'insn_t const &' | insn ) |
Negate the value, save INSN as a defining instruction.
None set_aborted | ( | self, | |
ida_idaapi.ea_t | bblk_ea ) |
Set the value after aborting.
None set_all_vals_flag | ( | self, | |
'uint16' | val_flags ) |
Set the given flag for each value.
None set_all_vals_got_based | ( | self | ) |
None set_all_vals_pc_based | ( | self | ) |
None set_badinsn | ( | self, | |
ida_idaapi.ea_t | insn_ea ) |
Set the value to be unknown after a bad insn.
None set_dead_end | ( | self, | |
ida_idaapi.ea_t | dead_end_ea ) |
Set the value to be undefined because of a dead end.
None set_num | ( | self, | |
* | args ) |
This function has the following signatures: 0. set_num(rval: int, insn: const insn_t &, val_flags: uint16=0) -> None 1. set_num(rvals: uvalvec_t *, insn: const insn_t &) -> None 2. set_num(rval: int, val_ea: ida_idaapi.ea_t, val_flags: uint16=0) -> None # 0: set_num(rval: int, insn: const insn_t &, val_flags: uint16=0) -> None Set the value to be a number after executing an insn. # 1: set_num(rvals: uvalvec_t *, insn: const insn_t &) -> None Set the value to be numbers after executing an insn. # 2: set_num(rval: int, val_ea: ida_idaapi.ea_t, val_flags: uint16=0) -> None Set the value to be a number before an address.
None set_unkfunc | ( | self, | |
ida_idaapi.ea_t | func_ea ) |
Set the value to be unknown from the function start.
None set_unkinsn | ( | self, | |
'insn_t const &' | insn ) |
Set the value to be unknown after executing the insn.
None set_unkloop | ( | self, | |
ida_idaapi.ea_t | bblk_ea ) |
Set the value to be unknown because it changes in a loop.
None set_unkmult | ( | self, | |
ida_idaapi.ea_t | bblk_ea ) |
Set the value to be unknown because the register has incompatible values.
None set_unkvals | ( | self, | |
ida_idaapi.ea_t | bblk_ea ) |
Set the value to be unknown because the register has too many values.
None set_unkxref | ( | self, | |
ida_idaapi.ea_t | bblk_ea ) |
Set the value to be unknown because there are too many xrefs.
None shift_left | ( | self, | |
int | r ) |
Shift the value left by R, do not change the defining instructions.
None shift_right | ( | self, | |
int | r ) |
Shift the value right by R, do not change the defining instructions.
None sll | ( | self, | |
'reg_value_info_t' | r, | ||
'insn_t const &' | insn ) |
Shift the value left by R, save INSN as a defining instruction.
None slr | ( | self, | |
'reg_value_info_t' | r, | ||
'insn_t const &' | insn ) |
Shift the value right by R, save INSN as a defining instruction.
None sub | ( | self, | |
'reg_value_info_t' | r, | ||
'insn_t const &' | insn ) |
Subtract R from the value, save INSN as a defining instruction.
None swap | ( | self, | |
'reg_value_info_t' | r ) |
None trunc_uval | ( | self, | |
'procmod_t' | pm ) |
Truncate the number to the application bitness.
'reg_value_info_t.set_compare_res_t' vals_union | ( | self, | |
'reg_value_info_t' | r ) |
Add values from R into THIS ignoring duplicates. @retval EQUAL: THIS is not changed @retval CONTAINS: THIS is not changed @retval CONTAINED: THIS is a copy of R @retval NOT_COMPARABLE: values from R are added to THIS
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |