3 dépôts
Tools that analyze and decompile bytecode across multiple Python versions with version-specific opcode handling.
Distinct from Python Reverse Engineering: Distinct from Python Reverse Engineering: specifically handles version-specific opcode dispatch across Python 1.0 through 3.13.
Explore 3 awesome GitHub repositories matching programming languages & runtimes · Multi-Version Bytecode Analyzers. Refine with filters or upvote what's useful.
CPython-Internals est un guide d'implémentation technique et une référence pour l'interpréteur CPython. Il fournit une analyse détaillée du code source C interne et de l'architecture, en se concentrant sur la logique qui régit le comportement de l'interpréteur. Le projet documente le modèle d'objet Python et le pipeline de compilation, retraçant le processus depuis la grammaire brute et les arbres de syntaxe abstraits jusqu'au bytecode exécutable. Il sert également de référence pour le développement d'extensions C, expliquant comment interfacer avec les structures de données internes et utiliser l'API C. Le matériel couvre la gestion de la mémoire, incluant le comptage de références et le garbage collection générationnel, ainsi que la fonction du verrou global de l'interpréteur (GIL).
Analyzes the compilation pipeline and bytecode instructions across the CPython architecture.
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.
Analyzes and decompiles bytecode across multiple Python versions using version-specific opcode handling.
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
Analyzing and decompiling bytecode across Python versions 1.0 through 3.13 with version-specific opcode handling.