awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
avast avatar

avast/retdec

0
View on GitHub↗
8,556 stars·992 forks·C++·MIT·30 viewsretdec.com↗

Retdec

RetDec is a reverse engineering framework and static binary analysis tool. Its primary purpose is to function as an LLVM-based machine code decompiler that translates binary machine code from multiple architectures into high-level C source code.

The system employs a multi-stage lifting pipeline to recover program logic, using an intermediate representation to apply optimizations before emitting source code. It distinguishes itself through the ability to identify compilers and packers, perform executable unpacking, and reconstruct class hierarchies and original program structures.

The framework covers broad capability areas including binary metadata extraction from formats like DWARF and PDB, symbol demangling, and the generation of call and control-flow graphs. It also provides tools for object file extraction and binary signature generation.

The analysis and decompilation components can be embedded into external software projects using provided headers and build scripts.

Features

  • Binary Decompilers - Translates binary machine code from multiple architectures into high-level C source code via an intermediate representation.
  • Machine Code Decompilers - Translates binary machine code from multiple architectures into high-level C source code using an LLVM-based pipeline.
  • Reverse Engineering Frameworks - Provides a comprehensive framework for recovering program logic, class hierarchies, and control-flow graphs from binaries.
  • Decompilers - Translates compiled binary machine code back into higher-level source code using LLVM infrastructure.
  • Intermediate Representation Lifting - Lifts machine code into a common intermediate representation to enable cross-architecture analysis and optimizations.
  • Retargetable Binary Frontends - Provides a retargetable architecture that decouples binary parsing from the decompilation engine to support multiple CPU instruction sets.
  • Static Binary Analysis - Analyzes compiled binaries without execution to detect compilers, identify packers, and extract structural metadata.
  • Binary Lifting - Implements a multi-stage pipeline to translate architecture-specific machine code into a portable intermediate representation.
  • Reverse Engineering Tools - Analyzes compiled machine code to recover high-level C source code and reconstruct program logic.
  • Control Flow Analysis Tools - Reconstructs logical execution paths and function boundaries through static analysis of binary branching structures.
  • Control-Flow Graph Generation - Generates call and control-flow graphs to visualize logical execution paths from binary code.
  • Packer Detection Tools - Detects the specific compilers used and identifies whether a binary was processed by a packer.
  • Executable Unpackers - Removes packing layers from executable files to reveal the original machine code for analysis.
  • Symbol Reference Mapping - Maps DWARF and PDB debugging symbols to lifted code to restore original variable and function names.
  • Program Logic Recovery - Recovers functions, types, and class hierarchies to restore the original structure of analyzed binary code.
  • Binary Metadata Inspection - Parses object file formats to extract and represent the structural composition of compiled binary images.
  • Binary Signature Matchers - Identifies compilers and packers by matching binary byte sequences against known structural signatures.
  • Debug Symbol Parsers - Extracts metadata and symbolic information from PDB and DWARF files to resolve binary structures.
  • Symbol Demanglers - Restores human-readable function and variable names from mangled identifiers generated by compilers.
  • Binary Signature Engines - Extracts binary patterns and library signatures to create identification rules for scanning compiled files.
  • Malware Analysis - Identifies packers and unpacks binaries to reveal hidden code for security-oriented reverse engineering.
  • Binary Metadata - Extracts structural metadata and function names from compiled binaries using DWARF and PDB formats.
  • Decompilation Tools - Retargetable machine-code decompiler based on LLVM.
  • Code Analysis - Retargetable machine-code decompiler.
  • Reverse Engineering Tools - Retargetable machine-code decompiler based on LLVM.

Star history

Star history chart for avast/retdecStar history chart for avast/retdec

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Retdec

Similar open-source projects, ranked by how many features they share with Retdec.
  • avast-tl/retdecavast-tl avatar

    avast-tl/retdec

    8,556View on GitHub↗

    Retdec is an LLVM-based machine code decompiler and static binary analysis tool designed for binary reverse engineering. It translates binary executable code into high-level representations to facilitate the reconstruction of program logic from compiled machine code. The system utilizes a retargetable frontend architecture and a multi-stage lifting pipeline to convert raw bytes into a common intermediate language. It differentiates custom program logic from known library code through signature-based identification and provides utilities for binary symbol demangling to restore human-readable n

    C++
    View on GitHub↗8,556
  • angr/angrangr avatar

    angr/angr

    8,898View on GitHub↗

    Angr is a binary analysis framework and static analysis tool used for reverse engineering compiled binaries. It serves as a binary decompiler and a lifting platform that translates machine code into a common intermediate representation to enable cross-architecture analysis. The framework integrates a symbolic execution engine and constraint solvers to determine the inputs required to reach specific program states. It also employs untrusted code sandboxing to isolate guest code from the host environment during analysis. Its capabilities cover control flow and data flow analysis, including the

    Python
    View on GitHub↗8,898
  • horsicq/detect-it-easyhorsicq avatar

    horsicq/Detect-It-Easy

    10,266View on GitHub↗

    Detect-It-Easy is a binary file identifier and analysis toolkit designed to determine file formats, compilers, and packers. It functions as a binary file identifier that utilizes signature matching and heuristic analysis to identify executable and archive formats. The project includes a custom file signature engine and a scriptable rule system for defining and applying detection logic to identify specific binary patterns. It features specialized detectors for Android packages, such as APK and DEX files, and a malware packer detector to identify protections, obfuscators, and virus families. T

    JavaScriptbinary-analysisdebuggerdetect
    View on GitHub↗10,266
  • albertan017/llm4decompilealbertan017 avatar

    albertan017/LLM4Decompile

    6,728View on GitHub↗

    LLM4Decompile is a toolset and framework for binary-to-source code translation. It uses large language models to transform machine code into readable source code and recover the original logic of compiled executables. The project includes a specialized pipeline for generating synthetic training datasets by converting source code into assembly pairs. It provides a fine-tuning framework to optimize deep learning models on these binary-to-source datasets, increasing the accuracy of code recovery. The system also features capabilities for refining decompiled pseudo-code. This process focuses on

    Python
    View on GitHub↗6,728
See all 30 alternatives to Retdec→

Frequently asked questions

What does avast/retdec do?

RetDec is a reverse engineering framework and static binary analysis tool. Its primary purpose is to function as an LLVM-based machine code decompiler that translates binary machine code from multiple architectures into high-level C source code.

What are the main features of avast/retdec?

The main features of avast/retdec are: Binary Decompilers, Machine Code Decompilers, Reverse Engineering Frameworks, Decompilers, Intermediate Representation Lifting, Retargetable Binary Frontends, Static Binary Analysis, Binary Lifting.

What are some open-source alternatives to avast/retdec?

Open-source alternatives to avast/retdec include: avast-tl/retdec — Retdec is an LLVM-based machine code decompiler and static binary analysis tool designed for binary reverse… angr/angr — Angr is a binary analysis framework and static analysis tool used for reverse engineering compiled binaries. It serves… horsicq/detect-it-easy — Detect-It-Easy is a binary file identifier and analysis toolkit designed to determine file formats, compilers, and… albertan017/llm4decompile — LLM4Decompile is a toolset and framework for binary-to-source code translation. It uses large language models to… cea-sec/miasm — Miasm is a Python reverse engineering framework designed for binary analysis, disassembly, and modification. It… skylot/jadx — Jadx is a comprehensive Java decompilation suite designed to transform compiled binary application files into readable…