Devirt is an automated binary devirtualization service for authorized analysis, built for seven kinds of teams: reverse engineering consultancies, malware analysts, software owners, interoperability teams, vulnerability researchers, supply-chain security teams and trust and safety teams. Each one sends a protected binary it is authorized to analyze and gets back readable output, such as an IDA database or annotated pseudocode, with a coverage ledger that places every in-scope unit in one of four proof states.
Devirtualization here means recovering code that a protector such as VMProtect or Themida has turned into bytecode for its own virtual machine. It is not the C++ compiler optimization of the same name.
Reverse engineering consultancies
Outsourced devirtualization
VM-protected functions stall a client engagement, and recovering them by hand would cost more hours than the engagement can carry.
You receive: Recovered functions as an IDA database, pseudocode, LLVM IR or JSON, with a coverage ledger your report can cite.
Every Devirt result carries the same coverage ledger, whichever team orders it. The ledger declares what was counted, the exact build and the assumptions, and places every in-scope unit in one of four states: proven, runtime-dependent, unresolved or permanently bounded.
Every in-scope function in a Devirt result ends in exactly one of four states, and the four states always add up to the functions counted. Illustration, not a measured result.
A proof holds within its declared model and scope, and a solver counterexample or timeout is recorded, never counted as proof. How the checks work explains the three kinds of check behind every result.
Authorized analysis only
Devirt accepts only files you own or are authorized to analyze. At signup and at every upload you attest to your authority to submit the binary, and Devirt can decline a job or ask you to clarify its scope or authorization.
Devirt does not remove DRM, bypass license checks or crack software. The acceptable use policy lists the uses Devirt accepts and the ones it prohibits.