diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2015-04-25 09:21:32 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2015-04-25 09:21:32 (GMT) |
commit | 62ea3df536faae7e1706bbbc2c19cf43c4dae213 (patch) | |
tree | 953ad2ef97bcb5cc8e9a431ee81602fb86bd60cb /src/analysis | |
parent | 5042737fef27c821535883dadfb0ad9ac81ad294 (diff) |
Included a new plugin to mark calls to exit() functions as return points.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@517 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/analysis')
-rw-r--r-- | src/analysis/disass/disassembler.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/analysis/disass/disassembler.c b/src/analysis/disass/disassembler.c index 1227e84..7b6c63e 100644 --- a/src/analysis/disass/disassembler.c +++ b/src/analysis/disass/disassembler.c @@ -227,6 +227,11 @@ static void g_delayed_disassembly_process(GDelayedDisassembly *disass, GtkExtSta g_arch_processor_set_disassembled_instructions(proc, *disass->instrs); + // plugins ////////////////////////// + process_disassembly_event(PGA_DISASSEMBLY_RAW, disass->binary); + + + /* *disass->instrs = disassemble_binary_parts(disass->binary, disass->parts, disass->count, statusbar, id); @@ -262,6 +267,10 @@ static void g_delayed_disassembly_process(GDelayedDisassembly *disass, GtkExtSta + // plugins ////////////////////////// + process_disassembly_event(PGA_DISASSEMBLY_HOOKED_LINK, disass->binary); + + //gtk_extended_status_bar_remove(statusbar, id); @@ -296,6 +305,10 @@ static void g_delayed_disassembly_process(GDelayedDisassembly *disass, GtkExtSta + // plugins ////////////////////////// + process_disassembly_event(PGA_DISASSEMBLY_HOOKED_POST, disass->binary); + + /** * TODO : établir les couvertures de fonctions, @@ -323,6 +336,12 @@ static void g_delayed_disassembly_process(GDelayedDisassembly *disass, GtkExtSta + // plugins ////////////////////////// + process_disassembly_event(PGA_DISASSEMBLY_LIMITED, disass->binary); + + + + /* Troisième étape */ id = gtk_extended_status_bar_push(statusbar, _("Detecting loops..."), true); @@ -333,6 +352,10 @@ static void g_delayed_disassembly_process(GDelayedDisassembly *disass, GtkExtSta /// + // plugins ////////////////////////// + process_disassembly_event(PGA_DISASSEMBLY_LOOPS, disass->binary); + + /* Quatrième étape */ @@ -358,6 +381,11 @@ G_BIN_FORMAT(g_loaded_binary_get_format(disass->binary) + // plugins ////////////////////////// + process_disassembly_event(PGA_DISASSEMBLY_LINKED, disass->binary); + + + @@ -376,6 +404,9 @@ G_BIN_FORMAT(g_loaded_binary_get_format(disass->binary) //run_plugins_on_binary(disass->binary, PGA_BINARY_GROUPED, true); + process_disassembly_event(PGA_DISASSEMBLY_GROUPED, disass->binary); + + @@ -392,6 +423,8 @@ G_BIN_FORMAT(g_loaded_binary_get_format(disass->binary) //run_plugins_on_binary(disass->binary, PGA_BINARY_GROUPED, true); + process_disassembly_event(PGA_DISASSEMBLY_RANKED, disass->binary); + /* Septième étape */ |