{"id":13418382,"url":"https://github.com/zrax/pycdc","last_synced_at":"2025-05-14T13:06:08.713Z","repository":{"id":1680797,"uuid":"2408045","full_name":"zrax/pycdc","owner":"zrax","description":"C++ python bytecode disassembler and decompiler","archived":false,"fork":false,"pushed_at":"2024-10-13T16:54:24.000Z","size":903,"stargazers_count":3675,"open_issues_count":196,"forks_count":705,"subscribers_count":96,"default_branch":"master","last_synced_at":"2025-04-28T11:52:44.637Z","etag":null,"topics":["cxx","decompiler","disassembler","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zrax.png","metadata":{"files":{"readme":"README.markdown","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2011-09-18T04:16:33.000Z","updated_at":"2025-04-28T06:36:47.000Z","dependencies_parsed_at":"2023-07-05T21:02:08.567Z","dependency_job_id":"c8cef817-b852-4c09-808a-304326d29fca","html_url":"https://github.com/zrax/pycdc","commit_stats":{"total_commits":370,"total_committers":25,"mean_commits":14.8,"dds":0.5054054054054054,"last_synced_commit":"2e76e56420493bfc0807da06a87dfdda5217a5aa"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zrax%2Fpycdc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zrax%2Fpycdc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zrax%2Fpycdc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zrax%2Fpycdc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zrax","download_url":"https://codeload.github.com/zrax/pycdc/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254149949,"owners_count":22022851,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cxx","decompiler","disassembler","hacktoberfest","python"],"created_at":"2024-07-30T22:01:01.651Z","updated_at":"2025-05-14T13:06:08.655Z","avatar_url":"https://github.com/zrax.png","language":"C++","funding_links":[],"categories":["TODO scan for Android support in followings","C++","Blue Team","Decompilers","\u003ca id=\"0971f295b0f67dc31b7aa45caf3f588f\"\u003e\u003c/a\u003eDecompiler\u0026\u0026反编译器","Reverse Engineering"],"sub_categories":["Reverse Engineering","\u003ca id=\"e67c18b4b682ceb6716388522f9a1417\"\u003e\u003c/a\u003e工具","Malware Articles and Sources"],"readme":"# Decompyle++ \n***A Python Byte-code Disassembler/Decompiler***\n\nDecompyle++ aims to translate compiled Python byte-code back into valid\nand human-readable Python source code. While other projects have achieved\nthis with varied success, Decompyle++ is unique in that it seeks to\nsupport byte-code from any version of Python.\n\nDecompyle++ includes both a byte-code disassembler (pycdas) and a \ndecompiler (pycdc).\n\nAs the name implies, Decompyle++ is written in C++.\nIf you wish to contribute, please fork us on github at \nhttps://github.com/zrax/pycdc\n\n## Building Decompyle++\n* Generate a project or makefile with [CMake](http://www.cmake.org) (See CMake's documentation for details)\n  * The following options can be passed to CMake to control debug features:\n\n    | Option | Description |\n    | --- | --- |\n    | `-DCMAKE_BUILD_TYPE=Debug` | Produce debugging symbols |\n    | `-DENABLE_BLOCK_DEBUG=ON` | Enable block debugging output |\n    | `-DENABLE_STACK_DEBUG=ON` | Enable stack debugging output |\n\n* Build the generated project or makefile\n  * For projects (e.g. MSVC), open the generated project file and build it\n  * For makefiles, just run `make`\n  * To run tests (on \\*nix or MSYS), run `make check JOBS=4` (optional\n    `FILTER=xxxx` to run only certain tests)\n\n## Usage\n**To run pycdas**, the PYC Disassembler:\n`./pycdas [PATH TO PYC FILE]`\nThe byte-code disassembly is printed to stdout.\n\n**To run pycdc**, the PYC Decompiler: \n`./pycdc [PATH TO PYC FILE]`\nThe decompiled Python source is printed to stdout.\nAny errors are printed to stderr.\n\n**Marshalled code objects**:\nBoth tools support Python marshalled code objects, as output from `marshal.dumps(compile(...))`.\n\nTo use this feature, specify `-c -v \u003cversion\u003e` on the command line - the version must be specified as the objects themselves do not contain version metadata.\n\n## Authors, Licence, Credits\nDecompyle++ is the work of Michael Hansen and Darryl Pogue.\n\nAdditional contributions from:\n* charlietang98\n* Kunal Parmar\n* Olivier Iffrig\n* Zlodiy\n\nIt is released under the terms of the GNU General Public License, version 3;\nSee LICENSE file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzrax%2Fpycdc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzrax%2Fpycdc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzrax%2Fpycdc/lists"}