can1357/NoVmp — reverse-engineered prompt

Reverse engineered prompt

Build me a command line tool called NoVmp that can statically devirtualize VMProtect x64 3.0 to 3.5 protected code from unpacked binaries. It should read a target binary, find VM entries automatically, lift the virtualized routines into VTIL, optimize the result, and optionally try recompiling back to normal x64 code, even if that part is clearly marked experimental. I want the main switches from the README, so support setting the original image base, choosing specific VM entry RVAs, manually adding section names when auto discovery misses them, turning optimization off, and enabling the constant obfuscation cleanup pass.

Please make it buildable with CMake and include a simple README with example commands and expected usage. Add notes about current limits too, especially that packed inputs are not supported, binaries with stripped relocations are shaky, and there may be jump table related issues coming from VTIL. If something is missing or outdated, look up the current VTIL docs online and make reasonable choices.

Want more depth? Deep Reverse