From 26e252437953d076c02232abf0d4303f6e93e0a7 Mon Sep 17 00:00:00 2001 From: _xeroxz Date: Sat, 4 Sep 2021 21:30:46 +0000 Subject: [PATCH] Update README.md --- README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.md b/README.md index 4ac14e6..82bc69c 100644 --- a/README.md +++ b/README.md @@ -26,3 +26,11 @@ Open a console inside of `vmdevirt` folder and execute the following CMake comma `cmake -B build` WARNING: DO NOT USE ANY OTHER CMAKE COMMAND SUCH AS `-G` FLAG! + +# Usage - Generating Native + +In order to use this project you must first generate a `vmp2` file using `VMEmu`. This file contains the IL form of every single virtual instruction of every single virtual code block of every single virtualized routine that you generate from. + +In order for VMEmu to work, all virtual instructions in the given virtual routine(s) must be defined. Please refer to the doxygen of `vmprofiler` to learn how to declare a vmprofile. + +Once a `vmp2` file is generated you can then provide it to `vmdevirt` along with the virtualized binary. `vmdevirt` will lift all of the IL and compile it back to native, then append it to the virtualized binary and patch all jmp's into the virtualized routines to go into the devirtualized code.