ReGenny is a reverse engineering tool to interactively reconstruct structures and generate usable C++ header files. Header file generation is done by the sister project SdkGenny.
ReGenny is still early in development but is usable. Things may change unexpectedly. Existing projects may break and need to be updated. Many more features are planned. There will be bugs.
ReGenny is under active development. Any published builds (or lack thereof) may be out of date. It is advised that if you want to use ReGenny in its current form that you build ReGenny yourself. However, you may be able to grab the latest artifact from AppVeyor here.
From the command line:
mkdir build cd build cmake .. -G "Visual Studio 16 2019" -A "x64" -DCMAKE_BUILD_TYPE="Release" -DCMAKE_TOOLCHAIN_FILE="<path to vcpkg>\scripts\buildsystems\vcpkg.cmake" -DVCPKG_TARGET_TRIPLET="x64-windows-static" cmake --build . --config "Release"
Alternatively, if vcpkg is integrated with Visual Studio and you have the Visual Studio CMake integration, you can just open the ReGenny folder.
- ReGenny uses plaintext project files instead of binary ones (
.json). Plaintext formats are much better for inclusion in git repositories and makes collaborating with others on ReGenny projects easier since you can diff/merge project files.
- Tree based display (like ReClass.NET) but you build the tree using
- ReGenny uses SdkGenny for output. One of SdkGenny's primary goals is to generate good output and ReGenny reaps all the benefits from that. Instead of a single monolithic header file, ReGenny uses SdkGenny to generate a proper header file hierarchy for inclusion into your project. If your project is already using SdkGenny then you don't even need to generate header files since you can just use the
- Since ReGenny uses SdkGenny, it supports everything
- Function prototypes
- Static function prototypes
- Multi-dimensional arrays
- Namespaces can be nested within each other
- Structs, enums and classes can be nested within other structs/classes
- Bring your own external types
.gennyformat is flexible enough to parse simple C/C++ structures directly with zero (or minimal) modification making importing existing structures into ReGenny easy.