diff --git a/src/analyzer/analysis.cpp b/src/analyzer/analysis.cpp index 634c0881..cbe05f3d 100644 --- a/src/analyzer/analysis.cpp +++ b/src/analyzer/analysis.cpp @@ -280,6 +280,7 @@ namespace const auto is_interesting_call = is_previous_main_exe // || is_main_exe // + || !previous_binary // || is_in_interesting_module(); if (!c.has_reached_main && c.settings->concise_logging && !c.settings->silent && is_main_exe) diff --git a/src/analyzer/main.cpp b/src/analyzer/main.cpp index aac0d2af..f293a565 100644 --- a/src/analyzer/main.cpp +++ b/src/analyzer/main.cpp @@ -129,7 +129,7 @@ namespace const auto rip = state->win_emu_.emu().read_instruction_pointer(); const auto* mod = state->win_emu_.mod_manager.find_by_address(rip); const auto is_main_access = - mod && (mod == state->win_emu_.mod_manager.executable || state->modules_.contains(mod->name)); + !mod || (mod == state->win_emu_.mod_manager.executable || state->modules_.contains(mod->name)); if (!is_main_access && !state->verbose_) { diff --git a/src/analyzer/object_watching.hpp b/src/analyzer/object_watching.hpp index fa0d3f32..93791244 100644 --- a/src/analyzer/object_watching.hpp +++ b/src/analyzer/object_watching.hpp @@ -15,7 +15,7 @@ emulator_hook* watch_object(windows_emulator& emu, const std::setname)); + const auto is_main_access = !mod || (mod == emu.mod_manager.executable || modules.contains(mod->name)); if (!verbose && !is_main_access) {