def __process_names(self): names = list() for i in range(0, ida_name.get_nlist_size()): ea = ida_name.get_nlist_ea(i) if ida_funcs.get_func(ea) is not None: continue name = { 'rva': ea - self._base, 'name': ida_name.get_nlist_name(i), 'name_demangled': ida_name.get_demangled_name(ea, 0xFFFF, 0, 0), 'is_public': ida_name.is_public_name(ea), 'is_func': ida_funcs.get_func(ea) is not None } # PE32/PE32+ only support binaries up to 2GB if name['rva'] >= 2**32: print('RVA out of range for name: ' + name['name'], file=sys.stderr) names.append(name) return names
def Names(): """ Returns a list of names @return: List of tuples (ea, name) """ for i in xrange(ida_name.get_nlist_size()): ea = ida_name.get_nlist_ea(i) name = ida_name.get_nlist_name(i) yield (ea, name)
def processNames(): names = list() for i in xrange(ida_name.get_nlist_size()): ea = ida_name.get_nlist_ea(i) name = { 'ea': ea, 'name': ida_name.get_nlist_name(i), 'is_public': ida_name.is_public_name(ea), 'is_func': ida_funcs.get_func(ea) is not None } names.append(name) return names