-
Notifications
You must be signed in to change notification settings - Fork 7
Building Brovan
Building Brovan is pretty straight-forward, but there's some things to keep in mind, this is why i decided to make this wiki.
- .NET 8 SDK or up.
- x64 runtime environment
-
unicorn.dll/libunicorn.soavailable underResources/
As some might know, Unicorn as of now doesn't support Control Flow Guard and that is because of how the TCG JIT works. The reason i'm mentioning this at all is because the .NET compiler doesn't support controlling the linker directly, so CFG cannot be disabled during compilation unless we use some post-build tricks, for now the project config uses editbin.exe if you have it to disable CFG, it also checks if it is enabled at runtime and restarts the process with that mitigation in a disabled state, so even if you don't have editbin.exe you are still good.
As of now, Brovan uses Iced library for disassembling, it should be downloaded once you open the project as VS prompts you. if you want to use your own unicorn libraries you can put them inside the Resources folder, as the post-build copies the library from there to the build path.