One-click install
npx skills add https://github.com/NeverSight/NeverC --skill binary-lifting-neversight
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: binary-lifting
Source: https://github.com/NeverSight/NeverC/tree/main/.agents/skills/binary-lifting
Command: npx skills add https://github.com/NeverSight/NeverC --skill binary-lifting-neversight

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Binary lifting turns opaque machine code into an intermediate representation you can analyze, transform, and recompile, reducing the effort needed for reverse engineering and vulnerability research.

Core Features & Use Cases

  • Instruction semantics translation: Model instruction behavior in a higher-level IR (e.g., mapping x86/ARM operations into LLVM IR while tracking flags and side effects).
  • Control-flow recovery: Reconstruct function boundaries and branching behavior using techniques like recursive descent, speculative disassembly, and handling indirect jumps.
  • Deobfuscation and recompilation: Lift obfuscated code, run simplification/optimization passes, recover VM handler logic, and re-emit cleaned logic for further study.
  • Triton-assisted lifting: Use symbolic execution to extract AST/register semantics that can then be translated into IR for downstream analysis.

Real-world use case: you have an obfuscated x86-64 sample and need to convert it into LLVM IR to identify the original logic, simplify the control/data flow, and guide a safe deobfuscation or patch.

Quick Start

Ask the AI to lift an x86-64 binary into LLVM IR by proposing a pipeline covering disassembly, function recovery, indirect jump resolution, and IR generation with correctness-minded flag/memory modeling.

Frequently Asked Questions about binary-lifting

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I convert machine code into LLVM IR for reverse engineering?

Binary lifting converts machine code into LLVM IR by modeling instruction semantics, tracking flags and side effects, and reconstructing function boundaries to enable downstream analysis and transformation workflows.

What is the best way to recover control flow from obfuscated binaries?

Control-flow recovery from obfuscated binaries uses recursive descent, speculative disassembly, and indirect jump resolution to reconstruct function boundaries and branching behavior for accurate IR generation and deobfuscation.

Can I use symbolic execution to assist with deobfuscation and recompilation?

Yes, Triton-assisted lifting uses symbolic execution to extract AST and register semantics, translating them into LLVM IR so you can run simplification passes, recover VM handler logic, and re-emit cleaned code for further study.

Does binary lifting support both x86 and ARM architecture deobfuscation?

Binary lifting applies across architectures by mapping x86 and ARM operations into LLVM IR while tracking flags and side effects, enabling deobfuscation and recompilation workflows for samples from different platforms.

How do I validate lifted LLVM IR behavior against the original binary?

Validation-oriented comparison checks the lifted LLVM IR behavior against the original binary by verifying that instruction semantics translation and control-flow reconstruction accurately model flags, memory, and side effects.

Why do I need LLVM IR for vulnerability research on compiled samples?

LLVM IR reduces the effort needed for vulnerability research by turning opaque machine code into an intermediate representation you can analyze, optimize, and transform to guide safe deobfuscation or patching.