def print_symbols(self, print_sections, sym_filter=None): if sym_filter is not None: sym_filter = sym_filter.lower() if sym_filter[0] == "-": invert_match = True sym_filter = sym_filter[1:] else: invert_match = False total = 0 # TODO: race condition with the analyzer ? for sy in list(self.binary.symbols): ad = self.binary.symbols[sy] if sym_filter is None or \ (invert_match and sym_filter not in sy.lower()) or \ (not invert_match and sym_filter in sy.lower()): if sy: section = self.binary.get_section(ad) print_no_end(color_addr(ad) + " " + sy) if print_sections and section is not None: print_no_end(" (" + color_section(section.name) + ")") print() total += 1 print("Total:", total)
def print_symbols(self, print_sections, sym_filter=None): if sym_filter is not None: sym_filter = sym_filter.lower() if sym_filter[0] == "-": invert_match = True sym_filter = sym_filter[1:] else: invert_match = False total = 0 # TODO: race condition with the analyzer ? for sy in list(self.binary.symbols): ad = self.binary.symbols[sy] if sym_filter is None or \ (invert_match and sym_filter not in sy.lower()) or \ (not invert_match and sym_filter in sy.lower()): if sy: section = self.binary.get_section(ad) print_no_end(color_addr(ad) + " " + sy) if print_sections and section is not None: print_no_end(" (" + color_section(section.name) + ")") print() total += 1 print("Total:", total)
def print_header(self): print_no_end(color_section(self.name.ljust(20))) print_no_end(" [ ") print_no_end(hex(self.start)) print_no_end(" - ") print_no_end(hex(self.end)) print_no_end(" - %d - %d" % (self.virt_size, self.real_size)) print(" ]")
def print_header(self): print_no_end(color_section(self.name.ljust(20))) print_no_end(" [ ") print_no_end(hex(self.start)) print_no_end(" - ") print_no_end(hex(self.end)) print_no_end(" - %d - %d" % (self.virt_size, self.real_size)) print(" ]")
def print_symbols(self, print_sections, sym_filter=None): if sym_filter is not None: sym_filter = sym_filter.lower() if sym_filter[0] == "-": invert_match = True sym_filter = sym_filter[1:] else: invert_match = False total = 0 # TODO: race condition with the analyzer ? for sy in list(self.db.symbols): ad = self.db.symbols[sy] if ad in self.db.reverse_demangled: dem = self.db.reverse_demangled[ad] else: dem = None print_sym = True if sym_filter is None or \ (invert_match and sym_filter not in sy.lower()) or \ (not invert_match and sym_filter in sy.lower()) or \ (dem is not None and ((invert_match and sym_filter not in dem.lower()) or \ (not invert_match and sym_filter in dem.lower()))): if sy: print_no_end(color_addr(ad)) if dem is not None: print_no_end(" %s (%s) " % (dem, color_comment(sy))) else: print_no_end(" " + sy) section = self.binary.get_section(ad) if print_sections and section is not None: print_no_end(" (" + color_section(section.name) + ")") print() total += 1 print("Total:", total)
def print_symbols(self, print_sections, sym_filter=None): if sym_filter is not None: sym_filter = sym_filter.lower() if sym_filter[0] == "-": invert_match = True sym_filter = sym_filter[1:] else: invert_match = False total = 0 # TODO: race condition with the analyzer ? for sy in list(self.db.symbols): ad = self.db.symbols[sy] if ad in self.db.reverse_demangled: dem = self.db.reverse_demangled[ad] else: dem = None print_sym = True if sym_filter is None or \ (invert_match and sym_filter not in sy.lower()) or \ (not invert_match and sym_filter in sy.lower()) or \ (dem is not None and ((invert_match and sym_filter not in dem.lower()) or \ (not invert_match and sym_filter in dem.lower()))): if sy: print_no_end(color_addr(ad)) if dem is not None: print_no_end(" %s (%s) " % (dem, color_comment(sy))) else: print_no_end(" " + sy) section = self.binary.get_section(ad) if print_sections and section is not None: print_no_end(" (" + color_section(section.name) + ")") print() total += 1 print("Total:", total)
def dump_data(self, ctx, lines, size_word): ad = ctx.entry s = self.binary.get_section(ad) s.print_header() for w in self.read_array(ad, lines, size_word, s): if self.is_label(ad): print(color_symbol(self.get_symbol(ad))) print_no_end(color_addr(ad)) print_no_end("0x%.2x" % w) section = self.binary.get_section(w) if section is not None: print_no_end(" (") print_no_end(color_section(section.name)) print_no_end(")") if size_word >= 4 and self.is_label(w): print_no_end(" ") print_no_end(color_symbol(self.get_symbol(w))) ad += size_word print()
def dump_data(self, ctx, lines, size_word): ad = ctx.entry s = self.binary.get_section(ad) s.print_header() for w in self.read_array(ad, lines, size_word, s): if self.is_label(ad): print(color_symbol(self.get_symbol(ad))) print_no_end(color_addr(ad)) print_no_end("0x%.2x" % w) section = self.binary.get_section(w) if section is not None: print_no_end(" (") print_no_end(color_section(section.name)) print_no_end(")") if size_word >= 4 and self.is_label(w): print_no_end(" ") print_no_end(color_symbol(self.get_symbol(w))) ad += size_word print()