What problem does it solve?
Code Obfuscation & Deobfuscation helps you quickly recover real program logic from binaries that hide behavior using junk code, opaque predicates, self-modifying code, control flow flattening, movfuscators, VM protectors, encrypted strings, import hiding, and anti-disassembly tricks.
Core Features & Use Cases
- Deobfuscation playbook for common protection layers: Identify the obfuscation family by observable patterns in IDA/Ghidra, then apply the most effective static or dynamic recovery strategy.
- Targeted techniques by obfuscation type: Remove dead junk code, prove/neutralize opaque predicates (including Z3-based proof), unpack SMC via breakpoints/emulation, and reverse control flow flattening with symbolic or trace-based deflattening.
- VM protector and string/import recovery: Extract VM handler logic for VMProtect/Themida/Code Virtualizer-style protectors, decrypt strings by hooking/emulating decode routines, and resolve hidden imports via hash-based export lookups.
- Anti-disassembly countermeasures: Correct misaligned/overlapping instructions and exception-based flow so the disassembler becomes trustworthy again.
Quick Start
Ask the skill to guide you through deobfuscating your specific binary by identifying the obfuscation type in IDA/Ghidra and proposing the shortest static-then-dynamic workflow to recover decrypted code and meaningful control flow.