feat: Start implementing the base for the "AntiDump" feature

- Begin work on the foundational structure for the "AntiDump" feature
- Introduced a new capability in Ryujin called "RyujinRunOncePass", which runs only on the first obfuscated function — ideal for volatile features
- Updated "RyujinCoreConfiguration" structures
 - Updated "RyujinGUI" to include the "AntiDump" option
- Updated "RyujinConsole" to display the "AntiDump" feature
- Updated "README.md" accordingly
This commit is contained in:
keowu
2025-07-12 21:26:12 -03:00
parent a96d97b9b0
commit a9bdbb1bdd
10 changed files with 66 additions and 8 deletions

View File

@@ -199,6 +199,13 @@ bool RyujinApp::OnInit() {
);
m_isAntiDump = DrawnStyledCheckbox(
panel,
"AntiDump"
);
optionsSizer->Add(
m_virtualize
@@ -238,6 +245,11 @@ bool RyujinApp::OnInit() {
m_isAntiDebugNormal
);
optionsSizer->Add(
m_isAntiDump
);
optionsBox->Add(
@@ -684,6 +696,7 @@ auto RyujinApp::BindRunEvent(wxFrame* frame) -> void {
core.m_isJunkCode = m_junk->IsChecked();
core.m_isRandomSection = m_randomSection->IsChecked();
core.m_isVirtualized = m_virtualize->IsChecked();
core.m_isAntiDump = m_isAntiDump->IsChecked();
if (m_isAntiDebugWithTroll->IsChecked()) {

View File

@@ -22,6 +22,7 @@ private:
wxCheckBox* m_ignoreOriginalCodeRemove = nullptr;
wxCheckBox* m_isAntiDebugWithTroll = nullptr;
wxCheckBox* m_isAntiDebugNormal = nullptr;
wxCheckBox* m_isAntiDump = nullptr;
wxListBox* m_procList = nullptr;
wxGauge* m_progress = nullptr;

View File

@@ -22,6 +22,7 @@ public:
bool m_isEncryptObfuscatedCode; // The user wants to encrypt all obfuscated code to avoid detection
bool m_isAntiDebug; // The user wants to avoid debuggers use while running a binary protected by Ryujin
bool m_isTrollRerversers; // The user wants to trick and use a special feature to troll reversers when their debugs be detected making they loose all the progress
bool m_isAntiDump; // Enable Anti Dump technic for Ryujin protected binary
RyujinObfuscatorProcs m_strProceduresToObfuscate; // Names of the procedures to obfuscate - FFI
std::vector<std::string> m_strdProceduresToObfuscate; // Names of the procedures to obfuscate