9 dépôts
Capabilities that link specific binary offsets to corresponding lines of decompiled high-level code.
Distinct from Decompilers: Distinct from general decompilers by focusing on the precise mapping between raw bytes and decompiled source lines.
Explore 9 awesome GitHub repositories matching operating systems & systems programming · Binary-to-Source Mappings. Refine with filters or upvote what's useful.
dnSpy is a specialized toolset for the reverse engineering, analysis, and modification of compiled .NET binaries. It functions as a decompiler that converts assemblies back into readable high-level source code, an assembly editor for modifying bytecode and metadata, and a debugger for inspecting compiled binaries. The project integrates a hex editor specifically for inspecting and modifying raw bytes and Common Intermediate Language structures. It allows for the direct modification of binary contents to change application behavior without requiring the original project source files. The tool
Links specific byte offsets in binary files to corresponding lines of decompiled source code for precise analysis.
ILSpy is a .NET decompiler and binary analyzer designed to convert compiled .NET assemblies back into readable C# source code. It functions as a metadata explorer and a common intermediate language viewer, enabling the analysis of compiled code and the execution of reverse engineering workflows. The project distinguishes itself through specialized translation capabilities, such as converting compiled binary XML (BAML) back into human-readable XAML for user interface analysis. It also provides tools for inspecting native machine code and extracting metadata from program database (PDB) files.
Maps raw binary table tokens to high-level objects to allow bidirectional navigation between source and metadata.
This project is a Java bytecode reverse engineering suite that functions as a disassembler, decompiler, and editor for Java class files and Android APK binaries. It provides tools to transform compiled bytecode into assembly instructions or readable source code. The toolset supports Android APK analysis and Java binary patching, allowing for the modification of source code or bytecode and subsequent recompilation into functional binaries. It includes capabilities for removing Java obfuscation and performing malware analysis through the detection of malicious code patterns. The system incorpo
Links compiled binary offsets to reconstructed source code for synchronized analysis and editing.
Clair is a container image vulnerability scanner and security analyzer. It performs static analysis of container images by matching package contents against vulnerability databases to identify security risks across different package formats and architectures. The project functions as both an image indexer and a vulnerability database manager. It processes container layers into intermediate representations to enable fast security lookups and synchronizes security metadata from multiple external sources to maintain a local registry. Capability areas include continuous security monitoring, whic
Tracks the relationship between source-level packages and binary versions to improve vulnerability attribution accuracy.
Binaryen is a WebAssembly compiler toolchain and optimizer designed to transform, validate, and shrink binary modules. It provides a comprehensive intermediate representation framework that converts binary code into a single-assignment form to enable advanced program analysis and code transformation. The project includes a specialized transformation engine that applies iterative optimization passes to increase execution speed and reduce binary size. Additionally, it functions as a transpiler that translates WebAssembly binary modules into executable JavaScript for environments that lack nativ
Maintains expression locations within debug data to link binary instructions back to original source code.
This project is a version-controlled Git archive and software archaeology dataset containing the continuous evolution of Unix source code from 1970 to the present. It serves as a chronological record of system history, synthesizing a versioned code timeline from disparate historical snapshots. The archive enables longitudinal software analysis by reconstructing a sequence of commits and merges from fragmented releases. This allows for the tracking of system evolution and the attribution of specific lines of code to original authors through synthesized version control metadata. The dataset co
Relates source code identifiers to specific memory locations within a system image for binary and object analysis.
Ce projet est un projet de décompilation de jeu consistant en une base de code source C reconstruite et les systèmes utilisés pour la reconstruction binaire. Il fournit une version lisible par l'homme d'un titre de jeu commercial créé par analyse statique et dynamique pour faciliter l'étude technique et la modification. Le projet utilise un environnement de build conteneurisé pour assurer une compilation reproductible et des versions de toolchain cohérentes à travers différents systèmes d'exploitation hôtes. Il inclut un reconstructeur de binaire de jeu qui traduit le code machine original en code source et un système pour compiler la base de code en plusieurs binaires régionaux et spécifiques à la plateforme. La toolchain couvre des pipelines de compilation croisée et la gestion des variantes de build, utilisant une toolchain GCC spécifique pour cibler des architectures matérielles différentes de l'hôte. Des capacités supplémentaires incluent la génération de documentation technique pilotée par métadonnées et des shells de conteneurs interactifs pour l'analyse manuelle et le débogage.
Provides precise mapping between original game binary offsets and their corresponding reconstructed source code lines.
Sbt est un outil de construction JVM et un système de gestion de dépendances conçu pour Scala et Java. Il fonctionne comme un orchestrateur de construction multi-projets qui gère la compilation du code source, résout les bibliothèques externes à partir de dépôts distants et emballe les binaires pour la distribution. Le projet se distingue par son système de construction interactif, qui fournit une boucle de lecture-évaluation-impression (REPL) pour l'inspection de l'état en temps réel et l'exécution des tâches. Il utilise un modèle d'exécution basé sur un graphe de dépendances pour traiter les tâches et maintient un magasin clé-valeur typé pour la configuration dynamique de la construction. Ses capacités couvrent l'automatisation de la construction JVM avec recompilation incrémentale, l'organisation modulaire des projets et l'exécution automatisée des tests. Le système prend également en charge la compilation multi-versions, la publication d'artefacts vers le stockage cloud et un modèle de plugin extensible pour ajouter une logique de construction personnalisée.
Maps specific files and generated sources to designated internal paths within JAR packages.
cargo-binstall is a toolchain extension and binary artifact manager designed to install pre-compiled Rust binaries from releases. Its primary purpose is to avoid the time and resource costs associated with compiling software from source by fetching pre-built executables. The tool provides mechanisms for discovering and downloading binaries across different architectures and platforms. It includes capabilities for verifying the authenticity and integrity of downloaded packages using cryptographic signature verification against public keys. The system supports automated installation in continu
Specifies custom download URLs and archive formats for packages that cannot be auto-detected.