Skip to main content

pypi version pypi download GitHub release GitHub All Releases GitHub last commit GitHub Workflow Status

WindowsLinuxUbuntuKaliFreeBSDDeepinDebianCent OS

What?

pydumpck is a multi-threads tool for decompile exe,elf,pyz,pyc packed by python which is base on pycdc and uncompyle6.sometimes its py-file result not exactly right ,maybe could use uncompyle6.

Install

pip install pydumpck

Usage

usage: pydumpck [-h] [-o OUTPUT_DIRECTORY] [-w THREAD] [-t TIMEOUT] [--session-timeout TIMEOUT_SESSION]
                [-y TARGET_FILE_TYPE] [-d [DECOMPILE_FILE ...]] [--header [STRUCT_HEADERS ...]] [-v [SHOW_VERSION]]
                [-p [PLUGIN ...]]
                [target_file]

pydumpck is a multi-threads tool for decompile exe,elf,pyz,pyc packed by python which is base on pycdc and
uncompyle6.sometimes its py-file result not exactly right ,maybe could use uncompyle6.

positional arguments:
  target_file           file to extract or decompiler,combine with -y for type select.

options:
  -h, --help            show this help message and exit
  -o OUTPUT_DIRECTORY, --output OUTPUT_DIRECTORY
                        output archive file to (default: output_2938294).
  -w THREAD, --thread THREAD
                        thread count for running (default: 0) cpu-count * 8.
  -t TIMEOUT, --timeout TIMEOUT
                        timeout running single decompiler (default: 10).
  --session-timeout TIMEOUT_SESSION
                        timeout running total task (default: 10).
  -y TARGET_FILE_TYPE, --type TARGET_FILE_TYPE
                        file-type of input file,can use pe,exe,elf,pyc,pyz (default: None : auto guess).
  -d [DECOMPILE_FILE ...], --decompile_file [DECOMPILE_FILE ...]
                        only decompile referred file for quick complete (default: None).
  --header [STRUCT_HEADERS ...]
                        specify pyc header hex-string (default: None).if not set , pydumpck will use struct.pyc's
                        header(if possible) and default header.eg:6f0d0d0a 00000000 00000000 ffffffff
  -v [SHOW_VERSION], --version [SHOW_VERSION]
                        show version of package
  -p [PLUGIN ...], --plugin [PLUGIN ...]
                        enable decompiler plugins,split by space .example: `--plugin pycdc uncompyle6` (default:
                        ['pycdc']).available:pycdc,uncompyle6

Quick Start

pydumpck xxx.exe
pydumpck xxx.elf
pydumpck xxx.pyc
pydumpck xxx.pyz
pydumpck xxx.exe --output ./output --thread 8 --timeout 10

Example

  • -p/--plugin specified which plugin to use for decompile (pycdc|uncompyle6)

pydumpck xxx.exe -p uncompyle6

pydumpck xxx.exe -p pycdc uncompyle6

  • -d/--decompile_file specified which file(s) to decompile for a faster run

pydumpck xxx.exe -d main for only target main.py

pydumpck xxx.exe -d main lib_base64 secert for targets main.py and lib_base64.py and secert.py

Demo

  • pyc with header been tampered with
    • (Warning:gif with size 5MB)pyc-fix_header-demo

Notice

pycdc speed is more than 10 times faster than uncompyle6 , and uncompyle6 is not support for python that version above 3.8.

however pycdc sometimes return a not precisely right result.

in pydumpck , you can use --plugin uncompyle6 for single-use or --plugin pycdc uncompyle6 for both-use.

Status

Alt

Release files for pydumpck 1.20.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pydumpck 1.20.1
File Size Uploaded
pydumpck-1.20.1.tar.gz 682.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pydumpck 1.20.1
File Interpreter ABI Platform
pydumpck-1.20.1-py3-none-any.whl Python 3 none any Details

Total release size:1.4 MB

Release files / pydumpck-1.20.1.tar.gz

Download URL pydumpck-1.20.1.tar.gz
Size 682.8 kB
Tags Source
SHA-256 checksum
How to use checksums
b68b403000e487d9a676dac39e5e6d780383009a7658e90002b2292678f0e34f
BLAKE2b-256 checksum
How to use checksums
117265a4395d86ca61123392e4be2cf3fa81618de17a2fb9998144e878dbab5c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.12.3

Release files / pydumpck-1.20.1-py3-none-any.whl

Download URL pydumpck-1.20.1-py3-none-any.whl
Size 686.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1dd493f348a2721a118c00c6739b0cf14746274b55a3bc78b495a02eaf343160
BLAKE2b-256 checksum
How to use checksums
13676f2aaf897be677ce75665a560df0cad4031566cc4ebfe2fe4cac2fcf5e29
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

1.20.1 This release

2 release files

1.16.3

2 release files

1.15.8

2 release files

1.14.6

2 release files

1.5.95

2 release files

1.5.94

2 release files

1.5.92

3 release files

1.5.91

3 release files

1.5.90

3 release files

1.5.89

3 release files

1.5.88

3 release files

1.5.87

3 release files

1.4.46

3 release files

1.4.45

3 release files

1.3.37

3 release files

1.3.36

3 release files

1.3.35

3 release files

1.1.27

3 release files

1.1.26

3 release files

1.1.25

3 release files

1.1.24

3 release files

1.1.15

3 release files

1.1.14

3 release files

1.1.13

3 release files

1.1.12

3 release files

1.1.11

3 release files

1.1.10

3 release files

1.1.9

3 release files

1.1.8

3 release files

1.1.7

3 release files

1.1.6

3 release files

1.1.5

3 release files

1.0.3

3 release files

1.0.2

3 release files

1.0.1

3 release files

1.0.0

3 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page