9 dépôts
Tools that transform compiled bytecode back into high-level human-readable source code.
Distinct from Bytecode Disassemblers: Focuses on recovering source code (decompilation) rather than just assembly-like disassembly.
Explore 9 awesome GitHub repositories matching part of an awesome list · Bytecode Decompilers. Refine with filters or upvote what's useful.
Recaf est une suite d'outils spécialisés pour assembler, éditer, désobfusquer, décompiler et instrumenter le bytecode Java et les processus runtime. Il fournit un environnement coordonné pour modifier les fichiers de classe Java compilés et analyser le comportement des applications Java. Le projet se distingue par une couche d'abstraction multi-niveaux qui permet l'édition à travers différents formats et un framework enfichable qui route le bytecode à travers plusieurs moteurs de décompilation configurables. Il inclut un moteur de script embarqué et une architecture de plugin pour automatiser les tâches répétitives et étendre le comportement du système. L'ensemble d'outils couvre plusieurs domaines de capacités de haut niveau, incluant l'analyse statique pour rechercher le contenu de l'application et simuler les états d'exécution des méthodes. Il prend également en charge l'instrumentation runtime pour s'attacher aux processus actifs et la transformation automatisée de bytecode pour supprimer l'obfuscation et réparer les fichiers de classe. L'exécution headless est prise en charge via une interface en ligne de commande pour intégrer les workflows dans des pipelines de build externes.
Provides a pluggable framework that routes bytecode through multiple interchangeable decompilers.
Reverse engineering and pentesting for Android applications
Decompiles DEX and ODEX bytecode into readable source code for security analysis.
JPEX Software is a comprehensive reverse engineering suite for SWF binary files, serving as an ActionScript decompiler and editor. It provides a toolkit for decompiling, analyzing, and modifying the internal structure of compiled Flash content, including the extraction of scripts and media assets. The project is distinguished by its ability to perform direct binary modification, allowing users to edit bytecode and replace embedded resources without reverting to high-level source code. It includes a runtime ActionScript bytecode debugger for variable inspection and call stack analysis, as well
Ships a powerful ActionScript decompiler that transforms compiled bytecode back into human-readable source code.
Ce projet est une suite complète de rétro-ingénierie Android qui fonctionne comme un décompilateur, un désobfuscateur de bytecode et un outil d'analyse de malware. Il est conçu pour convertir les binaires APK, DEX et OAT en code source lisible par l'homme en utilisant une implémentation native qui ne nécessite pas de machine virtuelle Java. La plateforme se distingue par son intégration avec Frida pour l'analyse dynamique, permettant aux utilisateurs de hooker des méthodes, d'injecter du JavaScript personnalisé et de dumper la mémoire de l'appareil en temps réel. Elle dispose également de moteurs de sécurité spécialisés, incluant un moteur de propagation de taint et une machine à états de pile, pour détecter les fuites de confidentialité, les comportements malveillants et les vulnérabilités de sécurité. La suite couvre un large éventail de capacités analytiques, incluant le patching et le repackaging de binaires, le mappage des dépendances par références croisées et l'analyse de flux de données. Elle fournit des outils pour l'identification des packers logiciels, le décodage de chaînes chiffrées et la recherche globale de métadonnées à travers les ressources de l'application. L'outil fournit une interface en ligne de commande et prend en charge l'automatisation de l'analyse via des scripts Python ou Java personnalisés.
Translates Dalvik bytecode into readable source code using a structured algorithm to recover program logic.
Fernflower est un décompilateur de bytecode Java et un outil d'ingénierie inverse. Il transforme les fichiers de classe Java compilés en code source Java lisible par l'homme pour reconstruire la logique originale du programme et les noms de variables. L'outil fonctionne comme un processeur de bytecode en ligne de commande capable de traiter par lots des archives Java et des fichiers de classe. Il gère spécifiquement l'analyse de code obfusqué en renommant les identifiants ambigus et en résolvant les conflits de nommage pour rendre le code source résultant plus facile à suivre. Le système emploie l'analyse statique pour convertir le bytecode en source, utilisant l'extraction d'informations de débogage pour restaurer les noms de variables locales. Il reconstruit les structures de programme via l'analyse de graphe de flux de contrôle, l'inférence de type et la génération d'un arbre de syntaxe abstraite.
Functions as a bytecode decompiler that transforms compiled class files back into human-readable Java source code.
python-uncompyle6 est un décompilateur de bytecode Python et un outil d'ingénierie inverse conçu pour convertir des fichiers de bytecode compilés en code source lisible par l'humain. Il fonctionne comme un récupérateur de code source et un désassembleur de bytecode, permettant l'analyse de la logique interne du programme et la reconstruction des constructions linguistiques originales. L'outil offre une prise en charge multi-version, permettant l'analyse et la récupération de code source à partir de bytecode créé à travers plusieurs versions différentes de l'interpréteur Python. Cela lui permet d'opérer comme un analyseur de bytecode multi-version capable d'interpréter des jeux d'instructions variés indépendamment de la version utilisée pour exécuter l'outil. Ses capacités couvrent l'analyse de bytecode et l'inspection de programme, incluant la possibilité de lister les instructions avec des drapeaux et opérandes interprétés. Le système peut reconstruire le code source à partir de fichiers entiers ou de segments fragmentés spécifiques, tels que les corps de lambda et les compréhensions de liste, en mappant les offsets de bytecode vers des fragments de source.
Employs recursive descent techniques to recover complex nested expressions such as lambdas and list comprehensions.
pycdc is a reverse engineering toolset that decompiles and disassembles compiled Python bytecode files back into readable source code. It parses .pyc file headers, reconstructs abstract syntax trees from bytecode instructions, and handles version-specific opcodes across Python versions 1.0 through 3.13 with endian-aware binary parsing. The tool recovers numeric constants, string literals, and marshalled Python objects from compiled bytecode, supporting both file-based and in-memory bytecode loading. It provides a human-readable disassembly listing of bytecode instructions alongside full sourc
Translate compiled Python bytecode back into readable source code by analyzing and reconstructing the original program structure.
Fernflower is a Java bytecode decompiler designed to convert compiled Java class files back into human-readable source code. It functions as a bytecode analysis tool that recovers original program logic and structure from compiled binaries. The project includes capabilities for obfuscated identifier resolution to rename ambiguous member elements, ensuring clear identifiers in the resulting source. These features support the analysis of obfuscated code, legacy code recovery, and Java malware analysis for security auditing. The system utilizes a structural analysis pipeline that includes contr
Converts compiled Java class files back into readable source code to recover original program logic.
gdsdecomp is a project recovery suite and game engine reverse engineering toolset. It functions as a bytecode decompiler, binary resource converter, and asset extraction tool designed to reconstruct original directory hierarchies and scripts from compiled binary game assets. The toolset specializes in GDScript bytecode decompilation and compilation, translating compiled bytecode back into human-readable source code or converting source code into executable bytecode for specific engine versions and commit hashes. It includes a game archive patcher to modify project archives by replacing intern
Converts compiled bytecode files back into human-readable source code for various engine versions.