{"id":13591415,"url":"https://github.com/uxmal/reko","last_synced_at":"2025-05-13T00:14:15.204Z","repository":{"id":35451241,"uuid":"39718308","full_name":"uxmal/reko","owner":"uxmal","description":"Reko is a binary decompiler.","archived":false,"fork":false,"pushed_at":"2025-05-05T15:16:12.000Z","size":963386,"stargazers_count":2283,"open_issues_count":163,"forks_count":263,"subscribers_count":73,"default_branch":"master","last_synced_at":"2025-05-13T00:13:43.857Z","etag":null,"topics":["aarch64","arm","decompile","decompiler","decompiler-engine","disassemble","disassembler","dotnet","m68k","reverse-engineering","risc-v","x86","x86-64"],"latest_commit_sha":null,"homepage":"https://uxmal.github.io/reko","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/uxmal.png","metadata":{"files":{"readme":"README.md","changelog":"NEWS.md","contributing":"CONTRIBUTING.md","funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-07-26T07:58:30.000Z","updated_at":"2025-05-11T17:53:12.000Z","dependencies_parsed_at":"2023-10-02T12:29:09.786Z","dependency_job_id":"af4b2ebd-eccf-47e6-92c4-a8f2acbe60aa","html_url":"https://github.com/uxmal/reko","commit_stats":{"total_commits":9538,"total_committers":39,"mean_commits":"244.56410256410257","dds":"0.21671209897253096","last_synced_commit":"1316378cea7f009435dc379a9c1d812b206bf17d"},"previous_names":[],"tags_count":43,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uxmal%2Freko","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uxmal%2Freko/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uxmal%2Freko/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uxmal%2Freko/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/uxmal","download_url":"https://codeload.github.com/uxmal/reko/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253843225,"owners_count":21972874,"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":["aarch64","arm","decompile","decompiler","decompiler-engine","disassemble","disassembler","dotnet","m68k","reverse-engineering","risc-v","x86","x86-64"],"created_at":"2024-08-01T16:00:57.222Z","updated_at":"2025-05-13T00:14:15.182Z","avatar_url":"https://github.com/uxmal.png","language":"C#","readme":"\n# reko - a general purpose decompiler.\n\n[![Cirrus CI Build Status](https://api.cirrus-ci.com/github/uxmal/reko.svg?branch=master)](https://cirrus-ci.com/github/uxmal/reko)\n[![GitHub workflow status](https://github.com/uxmal/reko/workflows/Reko/badge.svg)](https://github.com/uxmal/reko/actions/workflows/reko.yml)\n[![Join us on Discord](https://img.shields.io/static/v1?link=https://discord.gg/9PMWVxEjqr\u0026message=Join%20Discord\u0026logo=discord\u0026style=flat\u0026color=107090\u0026labelColor=5E5E5E\u0026label=\u0026logoColor=white)](https://discord.gg/9PMWVxEjqr)\n[![Join the chat at https://gitter.im/uxmal/reko](https://badges.gitter.im/uxmal/reko.svg)](https://gitter.im/uxmal/reko?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge)\n\n \n\u003cimg align=\"right\" src=\"web/images/reko.png\" /\u003e \n\n**Reko** (Swedish: \"decent, obliging\") is a decompiler for machine code binaries.\nThis project is freely available under the GNU General Public License.\n\nThe project consists of front ends, core decompiler engine, and back\nends to help it achieve its goals.  A command-line, a Windows GUI,\nand a ASP.NET front end exist at the time of writing.  The decompiler\nengine receives inputs from the front ends in the form of either\nindividual executable files or decompiler project files. Reko\nproject files contain additional information about a binary file,\nhelpful to the decompilation process or for formatting the output.\nThe decompiler engine then proceeds to analyze the input binary.\n\n\u003ctable\u003e\n    \u003ctr\u003e\n        \u003ctd\u003e\n            \u003ca href=\"doc/img/mem-map-full.png\"\u003e\u003cimg src=\"doc/img/mem-map-640.png\" border=\"0\" /\u003e\u003c/a\u003e\u003cbr /\u003e\n            Byte map view of a loaded ARM binary executable\n        \u003c/td\u003e\n        \u003ctd\u003e\n            \u003ca href=\"doc/img/structure-full.png\"\u003e\u003cimg src=\"doc/img/structure-640.png\" border=\"0\" /\u003e\u003c/a\u003e\u003cbr /\u003e\n            Decompiled view of a loaded ARM binary executable\n        \u003c/td\u003e\n    \u003c/tr\u003e\n\u003c/table\u003e\n\nReko has the ambition of supporting decompilation of various \nprocessor architectures and executable file formats with minimal user\nintervention. For a complete list, see the\n[supported binaries](https://github.com/uxmal/reko/wiki/Supported-binaries) \npage.\n\nPlease note that many software licenses prohibit decompilation or\nother reverse engineering of their machine code binaries. Use this\ndecompiler only if you have legal rights to decompile the binary\n(for instance if the binary is your own.)\n\n## Downloading Reko\n\nOfficial releases are published every few months on [Github](https://github.com/uxmal/reko/releases)\nand [SourceForge](https://sourceforge.net/projects/decompiler/files/). \nUsers who can't or won't build Reko themselves can download the output\nof the [Cirrus CI integration builder](https://cirrus-ci.com/github/uxmal/reko) or the [Github Actions integration builder](https://github.com/uxmal/reko/actions/workflows/reko.yml).\nNaturally you can build the project from the sources: see \"Hacking\" \nbelow.\n\n## Installing Reko\n\nThe following prerequisite software must be installed on your machine first:\n* .NET 6.0 (https://www.microsoft.com/net/download/dotnet-framework-runtime)\n\nDownload an appropriate installer and run it on the target machine.\n\nAfter installation, you can proceed by either downloading binaries directly\nfrom the integration build server, or by building Reko from sources (see `Hacking` \nbelow).\n\n## Documentation\n\nTo get acquainted with Reko's various features, you can read the \n[user's guide](doc/guide/reko.md). If you're interested in the internal workings\nof the project, see the wiki.\n\n## Getting support\n\nYou can report any issues you encounter or ask any Reko-related question\non the [issue tracker](https://github.com/uxmal/reko/issues).\nYou can also try the Reko [Gitter.im](https://gitter.im/uxmal/reko)\nchatroom. Reko is built by volunteers' efforts on their\nspare time, so adjust your response-time expectations accordingly.\n\n## Hacking\n\nTo build reko, start by cloning https://github.com/uxmal/reko. You\ncan use an IDE or the command line to build the solution file\n`Reko-decompiler.sln`. Reko requires the [.NET 6.0 SDK](https://dotnet.microsoft.com/en-us/download/dotnet/6.0)\nto compile. If you are an IDE user, use a recent version of Visual Studio 2022.\nIf you wish to build using the command line, use the command\n\n```cmd\ndotnet msbuild -p:Platform={platform} -p:Configuration={config} -v:m -t:build_solution -m ./src/BuildTargets/BuildTargets.csproj\n```\nReplace `{config}` with either `Debug` or `Release`, and `{platform}` with `x64` or `x86`.\n\n**Note**: please let us know if you still are not able to compile,\nso we can help you fix the issue.\n\nIf you're interested in contributing code, see the\n[road map](https://github.com/uxmal/reko/wiki/Roadmap) for areas to explore.\nThe [Wiki](https://github.com/uxmal/reko/wiki) has more information\nabout the Reko project's internal workings. Please consult the\n [style guide](https://github.com/uxmal/reko/blob/master/doc/style.md).\n\n### Warnings and errors related to WiX\n\nYou will receive warnings or errors when loading the solution in Visual Studio\nif you haven't installed the WiX toolset on your\ndevelopment machine. You can safely ignore the warnings; the WiX\ntoolset is only used when making MSI installer packages. You will not need\nto build an installer if you're already able to compile the project: the build\nprocess copies all the necessary files into a single directory. \nIf you do want to build an MSI installer with the WiX toolchain, you can\n download it here:\nhttp://wixtoolset.org/releases/\n\n### Errors related to CMake in Visual Studio\n\nDepending on what you do Visual Studio might try to rebuild NativeProxy which\ndepends on CMake. You can either install [CMake](https://cmake.org/download/)\nand make sure it's added to your PATH or disable the project in Visual Studio.\n\nHaving CMake installed as part of Visual Studio is sufficient to run msbuild\nfrom the `Developer Command Prompt` but not when building from inside VS,\nunless you've added that to your global PATH. Installing CMake externally allows\nyou to add it to PATH during the installation.\n\n**NOTE**: there is an issue in certain versions of Visual Studio that can manifest itself\nwhen loading the project. You'll notice it if Visual Studio is stuck \"Running Background Tasks\" \nand won't let you build the project. A workaround is to right click the \"NativeProxy\" project in the\nsolution explorer and choose \"Unload Project\". The project will then be able to load and build correctly.\nThis issue doesn't occur when building from the command line.\n\n### How do I start Reko?\n\nThe solution folder `Drivers` contains the executables that act\nas user interfaces. The subdirectory `WindowsDecompiler` contains\nthe GUI client for the Windows Forms user interface. The subdirectory\n`AvaloniaShell` contains the GUI client for the cross-platform [Avalonia](https://avaloniaui.net/)\nuser interface (still under construction). `CmdLine` is a command line driver.\n\n## Recent versions\n\nSee the [release log](https://github.com/uxmal/reko/releases) for the latest releases.","funding_links":[],"categories":[":wrench: Tools","C#","Disassemblers","FPGA Tools","C\\#","C# #","Tools","\u003ca id=\"0971f295b0f67dc31b7aa45caf3f588f\"\u003e\u003c/a\u003eDecompiler\u0026\u0026反编译器"],"sub_categories":["Before 2000","Interfaces","Mesh networks","\u003ca id=\"e67c18b4b682ceb6716388522f9a1417\"\u003e\u003c/a\u003e工具"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fuxmal%2Freko","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fuxmal%2Freko","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fuxmal%2Freko/lists"}