3 Repos
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 ist ein technischer Implementierungsleitfaden und eine Referenz für den CPython-Interpreter. Es bietet eine detaillierte Analyse des internen C-Quellcodes und der Architektur, wobei der Fokus auf der Logik liegt, die das Verhalten des Interpreters steuert. Das Projekt dokumentiert das Python-Objektmodell und die Kompilierungs-Pipeline und verfolgt den Prozess von der rohen Grammatik und den abstrakten Syntaxbäumen bis hin zum ausführbaren Bytecode. Es dient zudem als Referenz für die Entwicklung von C-Erweiterungen und erklärt, wie man mit internen Datenstrukturen interagiert und die C-API nutzt. Das Material deckt die Speicherverwaltung ab, einschließlich Referenzzählung und generationaler Garbage Collection, sowie die Funktion des Global Interpreter Lock.
Analyzes the compilation pipeline and bytecode instructions across the CPython architecture.
python-uncompyle6 ist ein Python-Bytecode-Decompiler und Reverse-Engineering-Tool, das darauf ausgelegt ist, kompilierte Bytecode-Dateien zurück in menschenlesbaren Quellcode zu konvertieren. Es fungiert als Quellcode-Wiederhersteller und Bytecode-Disassembler, was die Analyse interner Programmlogik und die Rekonstruktion ursprünglicher Sprachkonstrukte ermöglicht. Das Tool bietet Cross-Version-Unterstützung, was die Analyse und Wiederherstellung von Quellcode aus Bytecode ermöglicht, der über verschiedene Versionen des Python-Interpreters hinweg erstellt wurde. Dies erlaubt den Betrieb als Cross-Version-Bytecode-Analyzer, der unterschiedliche Instruktionssätze unabhängig von der zur Ausführung des Tools verwendeten Version interpretieren kann. Die Funktionen decken Bytecode-Analyse und Programminspektion ab, einschließlich der Möglichkeit, Instruktionen mit interpretierten Flags und Operanden aufzulisten. Das System kann Quellcode aus ganzen Dateien oder spezifischen fragmentierten Segmenten, wie Lambda-Bodys und List Comprehensions, durch Abbildung von Bytecode-Offsets auf Quellfragmente rekonstruieren.
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.