VTILVTIL

Recursive Descent Lifter

vtil::lifter::recursive_descent<input_type, arch> performs CFG discovery by decoding instructions, completing blocks, and forking to discovered branch destinations.

Primary members
MemberDescription
entryEntry basic block of the generated routine.
leadersMap of discovered leader VIPs to blocks.
populate(block)Build from one start block.
explore()Launch recursive exploration from entry.
Minimal example
using rd = vtil::lifter::recursive_descent<
    vtil::lifter::byte_input,
    vtil::lifter::amd64::lifter_t
>;

rd parser(&input, entry_rip);
parser.entry->owner->routine_convention = vtil::lifter::host_preserve_all_convention();
parser.explore();

Header Files