风吹屁屁凉 发表于 2023-10-10 17:24

Decompyle++(A Python Byte-code Disassembler/Decompiler)

# Decompyle++
***A Python Byte-code Disassembler/Decompiler***

Decompyle++ aims to translate compiled Python byte-code back into valid
and human-readable Python source code. While other projects have achieved
this with varied success, Decompyle++ is unique in that it seeks to
support byte-code from any version of Python.

Decompyle++ includes both a byte-code disassembler (pycdas) and a
decompiler (pycdc).

As the name implies, Decompyle++ is written in C++.
If you wish to contribute, please fork us on github at
https://github.com/zrax/pycdc

## Building Decompyle++
* Generate a project or makefile with (http://www.cmake.org) (See CMake's documentation for details)
* The following options can be passed to CMake to control debug features:

    | Option | Description |
    | --- | --- |
    | `-DCMAKE_BUILD_TYPE=Debug` | Produce debugging symbols |
    | `-DENABLE_BLOCK_DEBUG=ON` | Enable block debugging output |
    | `-DENABLE_STACK_DEBUG=ON` | Enable stack debugging output |

* Build the generated project or makefile
* For projects (e.g. MSVC), open the generated project file and build it
* For makefiles, just run `make`
* To run tests (on \*nix or MSYS), run `make check`

## Usage
**To run pycdas**, the PYC Disassembler:
`./pycdas `
The byte-code disassembly is printed to stdout.

**To run pycdc**, the PYC Decompiler:
`./pycdc `
The decompiled Python source is printed to stdout.
Any errors are printed to stderr.

**Marshalled code objects**:
Both tools support Python marshalled code objects, as output from `marshal.dumps(compile(...))`.

To use this feature, specify `-c -v <version>` on the command line - the version must be specified as the objects themselves do not contain version metadata.

## Authors, Licence, Credits
Decompyle++ is the work of Michael Hansen and Darryl Pogue.

Additional contributions from:
* charlietang98
* Kunal Parmar
* Olivier Iffrig
* Zlodiy

It is released under the terms of the GNU General Public License, version 3;
See LICENSE file for details.

ly871108 发表于 2023-10-11 08:19

感谢分享

HAINING 发表于 2023-10-10 17:55

大佬,EAZ的脱壳来个啊{:1_893:}

unpy 发表于 2023-11-3 20:33

xixicoco 发表于 2023-10-11 23:45
pyc可以,pyd的是不行的

pyc才是解释执行的py字节码;
pyd是dll,可能本身就是c写的(或py转成c)代码编译成的二进制代码,只能IDA逆向,要得到完全复原的源码理论上就不可能。

amscracker 发表于 2023-10-10 17:42

不知道Python 3.10的pyc能不能反编译

0xxx 发表于 2023-10-10 18:25

学习学习

yuyuchun 发表于 2023-10-10 19:27

解压出错

jiqimaoer 发表于 2023-10-11 01:52

谢谢分享,收藏一个

xixicoco 发表于 2023-10-11 23:45

pyc可以,pyd的是不行的

boss1943 发表于 2023-10-12 03:26

给力,不错顶一个

M-Riley 发表于 2023-11-3 16:26

大佬,解压失败!
页: [1] 2 3 4
查看完整版本: Decompyle++(A Python Byte-code Disassembler/Decompiler)