feat: Organizing all Ryujin code
- Improving the code organization to make Ryujin more EASY to port, in the future.
This commit is contained in:
13
RyujinConsole/RyujinConsole/Ryujin/Models/RyujinProcedure.hh
Normal file
13
RyujinConsole/RyujinConsole/Ryujin/Models/RyujinProcedure.hh
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "RyujinBasicBlock.hh"
|
||||||
|
|
||||||
|
class RyujinProcedure {
|
||||||
|
|
||||||
|
public:
|
||||||
|
std::string name;
|
||||||
|
uintptr_t imagebase;
|
||||||
|
uintptr_t address;
|
||||||
|
uintptr_t size;
|
||||||
|
std::vector<RyujinBasicBlock> basic_blocks;
|
||||||
|
|
||||||
|
};
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <dbghelp.h>
|
#include <dbghelp.h>
|
||||||
#pragma comment(lib, "DbgHelp.lib")
|
#pragma comment(lib, "DbgHelp.lib")
|
||||||
#include "RyujinProcedure.hh"
|
#include "../Models/RyujinProcedure.hh"
|
||||||
|
|
||||||
#define SymTagFunction 5
|
#define SymTagFunction 5
|
||||||
|
|
||||||
@@ -4,9 +4,9 @@
|
|||||||
#include <iostream>
|
#include <iostream>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include "RyujinPdbParsing.hh"
|
#include "PDB/RyujinPdbParsing.hh"
|
||||||
#include "RyujinUtils.hh"
|
#include "Utils/RyujinUtils.hh"
|
||||||
#include "RyujinObfuscatorConfig.hh"
|
#include "Models/RyujinObfuscatorConfig.hh"
|
||||||
|
|
||||||
class Ryujin {
|
class Ryujin {
|
||||||
|
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
#include <iostream>
|
#include <iostream>
|
||||||
#include "Ryujin.hh"
|
#include "Ryujin/Ryujin.hh"
|
||||||
|
|
||||||
auto main() -> int {
|
auto main() -> int {
|
||||||
|
|
||||||
|
|||||||
@@ -131,18 +131,18 @@
|
|||||||
</Link>
|
</Link>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="Ryujin.cc" />
|
|
||||||
<ClCompile Include="RyujinConsole.cc" />
|
<ClCompile Include="RyujinConsole.cc" />
|
||||||
<ClCompile Include="RyujinUtils.cc" />
|
<ClCompile Include="Ryujin\Ryujin.cc" />
|
||||||
|
<ClCompile Include="Ryujin\Utils\RyujinUtils.cc" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClInclude Include="Ryujin.hh" />
|
<ClInclude Include="Ryujin\Models\RyujinBasicBlock.hh" />
|
||||||
<ClInclude Include="RyujinBasicBlock.hh" />
|
<ClInclude Include="Ryujin\Models\RyujinInstruction.hh" />
|
||||||
<ClInclude Include="RyujinInstruction.hh" />
|
<ClInclude Include="Ryujin\Models\RyujinObfuscatorConfig.hh" />
|
||||||
<ClInclude Include="RyujinObfuscatorConfig.hh" />
|
<ClInclude Include="Ryujin\Models\RyujinProcedure.hh" />
|
||||||
<ClInclude Include="RyujinPdbParsing.hh" />
|
<ClInclude Include="Ryujin\PDB\RyujinPdbParsing.hh" />
|
||||||
<ClInclude Include="RyujinProcedure.hh" />
|
<ClInclude Include="Ryujin\Ryujin.hh" />
|
||||||
<ClInclude Include="RyujinUtils.hh" />
|
<ClInclude Include="Ryujin\Utils\RyujinUtils.hh" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
<ImportGroup Label="ExtensionTargets">
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
|||||||
@@ -27,37 +27,37 @@
|
|||||||
</Filter>
|
</Filter>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="Ryujin.cc">
|
<ClCompile Include="Ryujin\Utils\RyujinUtils.cc">
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="RyujinUtils.cc">
|
|
||||||
<Filter>Ryujin\Utils</Filter>
|
<Filter>Ryujin\Utils</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="RyujinConsole.cc">
|
<ClCompile Include="Ryujin\Ryujin.cc">
|
||||||
<Filter>Ryujin</Filter>
|
<Filter>Ryujin</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="RyujinConsole.cc">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClInclude Include="RyujinUtils.hh">
|
<ClInclude Include="Ryujin\Models\RyujinBasicBlock.hh">
|
||||||
<Filter>Ryujin\Utils</Filter>
|
<Filter>Ryujin\Models</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="RyujinPdbParsing.hh">
|
<ClInclude Include="Ryujin\Models\RyujinInstruction.hh">
|
||||||
|
<Filter>Ryujin\Models</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="Ryujin\Models\RyujinObfuscatorConfig.hh">
|
||||||
|
<Filter>Ryujin\Models</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="Ryujin\Models\RyujinProcedure.hh">
|
||||||
|
<Filter>Ryujin\Models</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="Ryujin\PDB\RyujinPdbParsing.hh">
|
||||||
<Filter>Ryujin\PDB</Filter>
|
<Filter>Ryujin\PDB</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="Ryujin.hh">
|
<ClInclude Include="Ryujin\Utils\RyujinUtils.hh">
|
||||||
|
<Filter>Ryujin\Utils</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="Ryujin\Ryujin.hh">
|
||||||
<Filter>Ryujin</Filter>
|
<Filter>Ryujin</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="RyujinProcedure.hh">
|
|
||||||
<Filter>Ryujin\Models</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="RyujinBasicBlock.hh">
|
|
||||||
<Filter>Ryujin\Models</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="RyujinInstruction.hh">
|
|
||||||
<Filter>Ryujin\Models</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="RyujinObfuscatorConfig.hh">
|
|
||||||
<Filter>Ryujin\Models</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include "RyujinBasicBlock.hh"
|
#include "Ryujin/Models/RyujinBasicBlock.hh"
|
||||||
|
|
||||||
class RyujinProcedure {
|
class RyujinProcedure {
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user