IDAPython 9.0
|
High level functions that deal with the generation of the disassembled text lines. This file also contains definitions for the syntax highlighting. Finally there are functions that deal with anterior/posterior user-defined lines.
Classes | |
class | user_defined_prefix_t |
Variables | |
COLOR_ON = _ida_lines.COLOR_ON | |
COLOR_OFF = _ida_lines.COLOR_OFF | |
COLOR_ESC = _ida_lines.COLOR_ESC | |
COLOR_INV = _ida_lines.COLOR_INV | |
SCOLOR_ON = _ida_lines.SCOLOR_ON | |
SCOLOR_OFF = _ida_lines.SCOLOR_OFF | |
SCOLOR_ESC = _ida_lines.SCOLOR_ESC | |
SCOLOR_INV = _ida_lines.SCOLOR_INV | |
SCOLOR_DEFAULT = _ida_lines.SCOLOR_DEFAULT | |
SCOLOR_REGCMT = _ida_lines.SCOLOR_REGCMT | |
SCOLOR_RPTCMT = _ida_lines.SCOLOR_RPTCMT | |
SCOLOR_AUTOCMT = _ida_lines.SCOLOR_AUTOCMT | |
SCOLOR_INSN = _ida_lines.SCOLOR_INSN | |
SCOLOR_DATNAME = _ida_lines.SCOLOR_DATNAME | |
SCOLOR_DNAME = _ida_lines.SCOLOR_DNAME | |
SCOLOR_DEMNAME = _ida_lines.SCOLOR_DEMNAME | |
SCOLOR_SYMBOL = _ida_lines.SCOLOR_SYMBOL | |
SCOLOR_CHAR = _ida_lines.SCOLOR_CHAR | |
SCOLOR_STRING = _ida_lines.SCOLOR_STRING | |
SCOLOR_NUMBER = _ida_lines.SCOLOR_NUMBER | |
SCOLOR_VOIDOP = _ida_lines.SCOLOR_VOIDOP | |
SCOLOR_CREF = _ida_lines.SCOLOR_CREF | |
SCOLOR_DREF = _ida_lines.SCOLOR_DREF | |
SCOLOR_CREFTAIL = _ida_lines.SCOLOR_CREFTAIL | |
SCOLOR_DREFTAIL = _ida_lines.SCOLOR_DREFTAIL | |
SCOLOR_ERROR = _ida_lines.SCOLOR_ERROR | |
SCOLOR_PREFIX = _ida_lines.SCOLOR_PREFIX | |
SCOLOR_BINPREF = _ida_lines.SCOLOR_BINPREF | |
SCOLOR_EXTRA = _ida_lines.SCOLOR_EXTRA | |
SCOLOR_ALTOP = _ida_lines.SCOLOR_ALTOP | |
SCOLOR_HIDNAME = _ida_lines.SCOLOR_HIDNAME | |
SCOLOR_LIBNAME = _ida_lines.SCOLOR_LIBNAME | |
SCOLOR_LOCNAME = _ida_lines.SCOLOR_LOCNAME | |
SCOLOR_CODNAME = _ida_lines.SCOLOR_CODNAME | |
SCOLOR_ASMDIR = _ida_lines.SCOLOR_ASMDIR | |
SCOLOR_MACRO = _ida_lines.SCOLOR_MACRO | |
SCOLOR_DSTR = _ida_lines.SCOLOR_DSTR | |
SCOLOR_DCHAR = _ida_lines.SCOLOR_DCHAR | |
SCOLOR_DNUM = _ida_lines.SCOLOR_DNUM | |
SCOLOR_KEYWORD = _ida_lines.SCOLOR_KEYWORD | |
SCOLOR_REG = _ida_lines.SCOLOR_REG | |
SCOLOR_IMPNAME = _ida_lines.SCOLOR_IMPNAME | |
SCOLOR_SEGNAME = _ida_lines.SCOLOR_SEGNAME | |
SCOLOR_UNKNAME = _ida_lines.SCOLOR_UNKNAME | |
SCOLOR_CNAME = _ida_lines.SCOLOR_CNAME | |
SCOLOR_UNAME = _ida_lines.SCOLOR_UNAME | |
SCOLOR_COLLAPSED = _ida_lines.SCOLOR_COLLAPSED | |
SCOLOR_ADDR = _ida_lines.SCOLOR_ADDR | |
COLOR_SELECTED = _ida_lines.COLOR_SELECTED | |
COLOR_LIBFUNC = _ida_lines.COLOR_LIBFUNC | |
COLOR_REGFUNC = _ida_lines.COLOR_REGFUNC | |
COLOR_CODE = _ida_lines.COLOR_CODE | |
COLOR_DATA = _ida_lines.COLOR_DATA | |
COLOR_UNKNOWN = _ida_lines.COLOR_UNKNOWN | |
COLOR_EXTERN = _ida_lines.COLOR_EXTERN | |
COLOR_CURITEM = _ida_lines.COLOR_CURITEM | |
COLOR_CURLINE = _ida_lines.COLOR_CURLINE | |
COLOR_HIDLINE = _ida_lines.COLOR_HIDLINE | |
COLOR_LUMFUNC = _ida_lines.COLOR_LUMFUNC | |
COLOR_BG_MAX = _ida_lines.COLOR_BG_MAX | |
cvar = _ida_lines.cvar | |
COLOR_DEFAULT = cvar.COLOR_DEFAULT | |
COLOR_REGCMT = cvar.COLOR_REGCMT | |
COLOR_RPTCMT = cvar.COLOR_RPTCMT | |
COLOR_AUTOCMT = cvar.COLOR_AUTOCMT | |
COLOR_INSN = cvar.COLOR_INSN | |
COLOR_DATNAME = cvar.COLOR_DATNAME | |
COLOR_DNAME = cvar.COLOR_DNAME | |
COLOR_DEMNAME = cvar.COLOR_DEMNAME | |
COLOR_SYMBOL = cvar.COLOR_SYMBOL | |
COLOR_CHAR = cvar.COLOR_CHAR | |
COLOR_STRING = cvar.COLOR_STRING | |
COLOR_NUMBER = cvar.COLOR_NUMBER | |
COLOR_VOIDOP = cvar.COLOR_VOIDOP | |
COLOR_CREF = cvar.COLOR_CREF | |
COLOR_DREF = cvar.COLOR_DREF | |
COLOR_CREFTAIL = cvar.COLOR_CREFTAIL | |
COLOR_DREFTAIL = cvar.COLOR_DREFTAIL | |
COLOR_ERROR = cvar.COLOR_ERROR | |
COLOR_PREFIX = cvar.COLOR_PREFIX | |
COLOR_BINPREF = cvar.COLOR_BINPREF | |
COLOR_EXTRA = cvar.COLOR_EXTRA | |
COLOR_ALTOP = cvar.COLOR_ALTOP | |
COLOR_HIDNAME = cvar.COLOR_HIDNAME | |
COLOR_LIBNAME = cvar.COLOR_LIBNAME | |
COLOR_LOCNAME = cvar.COLOR_LOCNAME | |
COLOR_CODNAME = cvar.COLOR_CODNAME | |
COLOR_ASMDIR = cvar.COLOR_ASMDIR | |
COLOR_MACRO = cvar.COLOR_MACRO | |
COLOR_DSTR = cvar.COLOR_DSTR | |
COLOR_DCHAR = cvar.COLOR_DCHAR | |
COLOR_DNUM = cvar.COLOR_DNUM | |
COLOR_KEYWORD = cvar.COLOR_KEYWORD | |
COLOR_REG = cvar.COLOR_REG | |
COLOR_IMPNAME = cvar.COLOR_IMPNAME | |
COLOR_SEGNAME = cvar.COLOR_SEGNAME | |
COLOR_UNKNAME = cvar.COLOR_UNKNAME | |
COLOR_CNAME = cvar.COLOR_CNAME | |
COLOR_UNAME = cvar.COLOR_UNAME | |
COLOR_COLLAPSED = cvar.COLOR_COLLAPSED | |
COLOR_FG_MAX = cvar.COLOR_FG_MAX | |
COLOR_ADDR = cvar.COLOR_ADDR | |
COLOR_OPND1 = cvar.COLOR_OPND1 | |
COLOR_OPND2 = cvar.COLOR_OPND2 | |
COLOR_OPND3 = cvar.COLOR_OPND3 | |
COLOR_OPND4 = cvar.COLOR_OPND4 | |
COLOR_OPND5 = cvar.COLOR_OPND5 | |
COLOR_OPND6 = cvar.COLOR_OPND6 | |
COLOR_OPND7 = cvar.COLOR_OPND7 | |
COLOR_OPND8 = cvar.COLOR_OPND8 | |
COLOR_RESERVED1 = cvar.COLOR_RESERVED1 | |
COLOR_LUMINA = cvar.COLOR_LUMINA | |
VEL_POST = _ida_lines.VEL_POST | |
VEL_CMT = _ida_lines.VEL_CMT | |
GDISMF_AS_STACK = _ida_lines.GDISMF_AS_STACK | |
GDISMF_ADDR_TAG = _ida_lines.GDISMF_ADDR_TAG | |
GENDSM_FORCE_CODE = _ida_lines.GENDSM_FORCE_CODE | |
GENDSM_MULTI_LINE = _ida_lines.GENDSM_MULTI_LINE | |
GENDSM_REMOVE_TAGS = _ida_lines.GENDSM_REMOVE_TAGS | |
int | COLOR_ADDR_SIZE = 18446744073709551615 else 8 |
str | SCOLOR_FG_MAX = '(' |
SCOLOR_OPND1 = chr(cvar.COLOR_ADDR + 1) | |
SCOLOR_OPND2 = chr(cvar.COLOR_ADDR + 2) | |
SCOLOR_OPND3 = chr(cvar.COLOR_ADDR + 3) | |
SCOLOR_OPND4 = chr(cvar.COLOR_ADDR + 4) | |
SCOLOR_OPND5 = chr(cvar.COLOR_ADDR + 5) | |
SCOLOR_OPND6 = chr(cvar.COLOR_ADDR + 6) | |
SCOLOR_UTF8 = chr(cvar.COLOR_ADDR + 10) | |
PALETTE_SIZE = cvar.COLOR_FG_MAX + _ida_lines.COLOR_BG_MAX | |
E_PREV = cvar.E_PREV | |
E_NEXT = cvar.E_NEXT | |
bool add_extra_cmt | ( | * | args | ) |
bool add_extra_line | ( | * | args | ) |
bool add_pgm_cmt | ( | * | args | ) |
bool add_sourcefile | ( | ida_idaapi.ea_t | ea1, |
ida_idaapi.ea_t | ea2, | ||
str | filename ) |
'bgcolor_t' calc_bg_color | ( | ida_idaapi.ea_t | ea | ) |
Get background color for line at 'ea' @returns RGB color
'color_t' calc_prefix_color | ( | ida_idaapi.ea_t | ea | ) |
Get prefix color for line at 'ea' @returns Line prefix colors
COLSTR | ( | str, | |
tag ) |
Utility function to create a colored line @param str: The string @param tag: Color tag constant. One of SCOLOR_XXXX
'encoder_t *' create_encoding_helper | ( | * | args | ) |
bool del_extra_cmt | ( | ida_idaapi.ea_t | ea, |
int | what ) |
bool del_sourcefile | ( | ida_idaapi.ea_t | ea | ) |
None delete_extra_cmts | ( | ida_idaapi.ea_t | ea, |
int | what ) |
str generate_disasm_line | ( | ida_idaapi.ea_t | ea, |
int | flags = 0 ) |
generate_disassembly | ( | ea, | |
max_lines, | |||
as_stack, | |||
notags ) |
Generate disassembly lines (many lines) and put them into a buffer @param ea: address to generate disassembly for @param max_lines: how many lines max to generate @param as_stack: Display undefined items as 2/4/8 bytes @return: - None on failure - tuple(most_important_line_number, list(lines)) : Returns a tuple containing the most important line number and a list of generated lines
int get_extra_cmt | ( | ida_idaapi.ea_t | ea, |
int | what ) |
int get_first_free_extra_cmtidx | ( | ida_idaapi.ea_t | ea, |
int | start ) |
str get_sourcefile | ( | ida_idaapi.ea_t | ea, |
'range_t' | bounds = None ) |
bool install_user_defined_prefix | ( | * | args | ) |
requires_color_esc | ( | c | ) |
Is the given char a color escape character?
str tag_addr | ( | ida_idaapi.ea_t | ea | ) |
Insert an address mark into a string. @param ea: address to include
int tag_advance | ( | str | line, |
int | cnt ) |
Move pointer to a 'line' to 'cnt' positions right. Take into account escape sequences. @param line: pointer to string @param cnt: number of positions to move right @returns moved pointer
str tag_remove | ( | str | nonnul_instr | ) |
Remove color escape sequences from a string. @returns length of resulting string, -1 if error
int tag_skipcode | ( | str | line | ) |
Skip one color code. This function should be used if you are interested in color codes and want to analyze all of them. Otherwise tag_skipcodes() function is better since it will skip all colors at once. This function will skip the current color code if there is one. If the current symbol is not a color code, it will return the input. @returns moved pointer
int tag_skipcodes | ( | str | line | ) |
Move the pointer past all color codes. @param line: can't be nullptr @returns moved pointer, can't be nullptr
'ssize_t' tag_strlen | ( | str | line | ) |
Calculate length of a colored string This function computes the length in unicode codepoints of a line @returns the number of codepoints in the line, or -1 on error
bool update_extra_cmt | ( | ida_idaapi.ea_t | ea, |
int | what, | ||
str | str ) |
COLOR_ADDR = cvar.COLOR_ADDR |
int COLOR_ADDR_SIZE = 18446744073709551615 else 8 |
COLOR_ALTOP = cvar.COLOR_ALTOP |
COLOR_ASMDIR = cvar.COLOR_ASMDIR |
COLOR_AUTOCMT = cvar.COLOR_AUTOCMT |
COLOR_BG_MAX = _ida_lines.COLOR_BG_MAX |
COLOR_BINPREF = cvar.COLOR_BINPREF |
COLOR_CHAR = cvar.COLOR_CHAR |
COLOR_CNAME = cvar.COLOR_CNAME |
COLOR_CODE = _ida_lines.COLOR_CODE |
COLOR_CODNAME = cvar.COLOR_CODNAME |
COLOR_COLLAPSED = cvar.COLOR_COLLAPSED |
COLOR_CREF = cvar.COLOR_CREF |
COLOR_CREFTAIL = cvar.COLOR_CREFTAIL |
COLOR_CURITEM = _ida_lines.COLOR_CURITEM |
COLOR_CURLINE = _ida_lines.COLOR_CURLINE |
COLOR_DATA = _ida_lines.COLOR_DATA |
COLOR_DATNAME = cvar.COLOR_DATNAME |
COLOR_DCHAR = cvar.COLOR_DCHAR |
COLOR_DEFAULT = cvar.COLOR_DEFAULT |
COLOR_DEMNAME = cvar.COLOR_DEMNAME |
COLOR_DNAME = cvar.COLOR_DNAME |
COLOR_DNUM = cvar.COLOR_DNUM |
COLOR_DREF = cvar.COLOR_DREF |
COLOR_DREFTAIL = cvar.COLOR_DREFTAIL |
COLOR_DSTR = cvar.COLOR_DSTR |
COLOR_ERROR = cvar.COLOR_ERROR |
COLOR_ESC = _ida_lines.COLOR_ESC |
COLOR_EXTERN = _ida_lines.COLOR_EXTERN |
COLOR_EXTRA = cvar.COLOR_EXTRA |
COLOR_FG_MAX = cvar.COLOR_FG_MAX |
COLOR_HIDLINE = _ida_lines.COLOR_HIDLINE |
COLOR_HIDNAME = cvar.COLOR_HIDNAME |
COLOR_IMPNAME = cvar.COLOR_IMPNAME |
COLOR_INSN = cvar.COLOR_INSN |
COLOR_INV = _ida_lines.COLOR_INV |
COLOR_KEYWORD = cvar.COLOR_KEYWORD |
COLOR_LIBFUNC = _ida_lines.COLOR_LIBFUNC |
COLOR_LIBNAME = cvar.COLOR_LIBNAME |
COLOR_LOCNAME = cvar.COLOR_LOCNAME |
COLOR_LUMFUNC = _ida_lines.COLOR_LUMFUNC |
COLOR_LUMINA = cvar.COLOR_LUMINA |
COLOR_MACRO = cvar.COLOR_MACRO |
COLOR_NUMBER = cvar.COLOR_NUMBER |
COLOR_OFF = _ida_lines.COLOR_OFF |
COLOR_ON = _ida_lines.COLOR_ON |
COLOR_OPND1 = cvar.COLOR_OPND1 |
COLOR_OPND2 = cvar.COLOR_OPND2 |
COLOR_OPND3 = cvar.COLOR_OPND3 |
COLOR_OPND4 = cvar.COLOR_OPND4 |
COLOR_OPND5 = cvar.COLOR_OPND5 |
COLOR_OPND6 = cvar.COLOR_OPND6 |
COLOR_OPND7 = cvar.COLOR_OPND7 |
COLOR_OPND8 = cvar.COLOR_OPND8 |
COLOR_PREFIX = cvar.COLOR_PREFIX |
COLOR_REG = cvar.COLOR_REG |
COLOR_REGCMT = cvar.COLOR_REGCMT |
COLOR_REGFUNC = _ida_lines.COLOR_REGFUNC |
COLOR_RESERVED1 = cvar.COLOR_RESERVED1 |
COLOR_RPTCMT = cvar.COLOR_RPTCMT |
COLOR_SEGNAME = cvar.COLOR_SEGNAME |
COLOR_SELECTED = _ida_lines.COLOR_SELECTED |
COLOR_STRING = cvar.COLOR_STRING |
COLOR_SYMBOL = cvar.COLOR_SYMBOL |
COLOR_UNAME = cvar.COLOR_UNAME |
COLOR_UNKNAME = cvar.COLOR_UNKNAME |
COLOR_UNKNOWN = _ida_lines.COLOR_UNKNOWN |
COLOR_VOIDOP = cvar.COLOR_VOIDOP |
cvar = _ida_lines.cvar |
E_NEXT = cvar.E_NEXT |
E_PREV = cvar.E_PREV |
GDISMF_ADDR_TAG = _ida_lines.GDISMF_ADDR_TAG |
GDISMF_AS_STACK = _ida_lines.GDISMF_AS_STACK |
GENDSM_FORCE_CODE = _ida_lines.GENDSM_FORCE_CODE |
GENDSM_MULTI_LINE = _ida_lines.GENDSM_MULTI_LINE |
GENDSM_REMOVE_TAGS = _ida_lines.GENDSM_REMOVE_TAGS |
PALETTE_SIZE = cvar.COLOR_FG_MAX + _ida_lines.COLOR_BG_MAX |
SCOLOR_ADDR = _ida_lines.SCOLOR_ADDR |
SCOLOR_ALTOP = _ida_lines.SCOLOR_ALTOP |
SCOLOR_ASMDIR = _ida_lines.SCOLOR_ASMDIR |
SCOLOR_AUTOCMT = _ida_lines.SCOLOR_AUTOCMT |
SCOLOR_BINPREF = _ida_lines.SCOLOR_BINPREF |
SCOLOR_CHAR = _ida_lines.SCOLOR_CHAR |
SCOLOR_CNAME = _ida_lines.SCOLOR_CNAME |
SCOLOR_CODNAME = _ida_lines.SCOLOR_CODNAME |
SCOLOR_COLLAPSED = _ida_lines.SCOLOR_COLLAPSED |
SCOLOR_CREF = _ida_lines.SCOLOR_CREF |
SCOLOR_CREFTAIL = _ida_lines.SCOLOR_CREFTAIL |
SCOLOR_DATNAME = _ida_lines.SCOLOR_DATNAME |
SCOLOR_DCHAR = _ida_lines.SCOLOR_DCHAR |
SCOLOR_DEFAULT = _ida_lines.SCOLOR_DEFAULT |
SCOLOR_DEMNAME = _ida_lines.SCOLOR_DEMNAME |
SCOLOR_DNAME = _ida_lines.SCOLOR_DNAME |
SCOLOR_DNUM = _ida_lines.SCOLOR_DNUM |
SCOLOR_DREF = _ida_lines.SCOLOR_DREF |
SCOLOR_DREFTAIL = _ida_lines.SCOLOR_DREFTAIL |
SCOLOR_DSTR = _ida_lines.SCOLOR_DSTR |
SCOLOR_ERROR = _ida_lines.SCOLOR_ERROR |
SCOLOR_ESC = _ida_lines.SCOLOR_ESC |
SCOLOR_EXTRA = _ida_lines.SCOLOR_EXTRA |
str SCOLOR_FG_MAX = '(' |
SCOLOR_HIDNAME = _ida_lines.SCOLOR_HIDNAME |
SCOLOR_IMPNAME = _ida_lines.SCOLOR_IMPNAME |
SCOLOR_INSN = _ida_lines.SCOLOR_INSN |
SCOLOR_INV = _ida_lines.SCOLOR_INV |
SCOLOR_KEYWORD = _ida_lines.SCOLOR_KEYWORD |
SCOLOR_LIBNAME = _ida_lines.SCOLOR_LIBNAME |
SCOLOR_LOCNAME = _ida_lines.SCOLOR_LOCNAME |
SCOLOR_MACRO = _ida_lines.SCOLOR_MACRO |
SCOLOR_NUMBER = _ida_lines.SCOLOR_NUMBER |
SCOLOR_OFF = _ida_lines.SCOLOR_OFF |
SCOLOR_ON = _ida_lines.SCOLOR_ON |
SCOLOR_OPND1 = chr(cvar.COLOR_ADDR + 1) |
SCOLOR_OPND2 = chr(cvar.COLOR_ADDR + 2) |
SCOLOR_OPND3 = chr(cvar.COLOR_ADDR + 3) |
SCOLOR_OPND4 = chr(cvar.COLOR_ADDR + 4) |
SCOLOR_OPND5 = chr(cvar.COLOR_ADDR + 5) |
SCOLOR_OPND6 = chr(cvar.COLOR_ADDR + 6) |
SCOLOR_PREFIX = _ida_lines.SCOLOR_PREFIX |
SCOLOR_REG = _ida_lines.SCOLOR_REG |
SCOLOR_REGCMT = _ida_lines.SCOLOR_REGCMT |
SCOLOR_RPTCMT = _ida_lines.SCOLOR_RPTCMT |
SCOLOR_SEGNAME = _ida_lines.SCOLOR_SEGNAME |
SCOLOR_STRING = _ida_lines.SCOLOR_STRING |
SCOLOR_SYMBOL = _ida_lines.SCOLOR_SYMBOL |
SCOLOR_UNAME = _ida_lines.SCOLOR_UNAME |
SCOLOR_UNKNAME = _ida_lines.SCOLOR_UNKNAME |
SCOLOR_UTF8 = chr(cvar.COLOR_ADDR + 10) |
SCOLOR_VOIDOP = _ida_lines.SCOLOR_VOIDOP |
VEL_CMT = _ida_lines.VEL_CMT |
VEL_POST = _ida_lines.VEL_POST |