class Metasm::BinDiffWindow

Public Instance Methods

build_menu() click to toggle source
# File samples/bindiff.rb, line 448
def build_menu
        menu = new_menu
        addsubmenu(menu, 'load file 1') { openfile('file 1') { |f| loadfile1(f) } }
        addsubmenu(menu, 'load file 2') { openfile('file 2') { |f| loadfile2(f) } }
        addsubmenu(menu)
        addsubmenu(menu, '_disassemble from there', '^C') { widget.disassemble(:disassemble_fast_deep) }
        addsubmenu(menu, 'co_mpare current functions', 'm') { widget.match_one_func(widget.curfunc1, widget.curfunc2) }
        addsubmenu(menu, 'compare all funct_ions', 'M') { widget.show_match_funcs }
        addsubmenu(menu, '_goto', 'g') { widget.keypress ?g }
        addsubmenu(menu)
        addsubmenu(menu, 'sync win 2', '2') { widget.sync2 }
        addsubmenu(menu, 'sync win 1', '1') { widget.sync1 }
        addsubmenu(menu)
        addsubmenu(menu, '_quit', 'Q') { Gui.main_quit }

        addsubmenu(@menu, '_File', menu)
end
initialize_window(d1=nil, d2=nil) click to toggle source
# File samples/bindiff.rb, line 444
def initialize_window(d1=nil, d2=nil)
        self.widget = BinDiffWidget.new(d1, d2)
end
loadfile1(f) click to toggle source
# File samples/bindiff.rb, line 466
def loadfile1(f)
        exe = AutoExe.orshellcode { Ia32.new }.decode_file(f)
        d = exe.init_disassembler
        Gui::DasmWindow.new("bindiff - 1 - #{f}").display(d)
        widget.dasm1 = d
end
loadfile2(f) click to toggle source
# File samples/bindiff.rb, line 473
def loadfile2(f)
        exe = AutoExe.orshellcode { Ia32.new }.decode_file(f)
        d = exe.init_disassembler
        Gui::DasmWindow.new("bindiff - 2 - #{f}").display(d)
        widget.dasm2 = d
end