
Reko (sueco: “decente, obrigando”) é um projeto C # contendo um decompiler para binários de código de máquina. Este projeto está disponível gratuitamente sob a Licença Pública Geral GNU.O projeto consiste em front-ends, motor decompilador central e back ends para ajudar a atingir seus objetivos. Uma linha de comando, uma GUI do Windows e um front end do ASP.NET existem no momento da gravação. O mecanismo decompiler recebe entradas dos front-ends na forma de arquivos executáveis individuais ou arquivos de projeto do decompiler. Arquivos de projeto Reko contêm informações adicionais sobre um arquivo binário, úteis para o processo de descompilação ou para formatar a saída. O mecanismo decompiler então passa a analisar o binário de entrada.Reko tem a ambição de apoiar a descompilação de várias arquiteturas de processador e formatos de arquivo executáveis com intervenção mínima do usuário. Para uma lista completa, consulte a página de binários suportados .Observe que muitas licenças de software proíbem a descompilação ou outra engenharia reversa de seus binários de código de máquina. Use este descompilador somente se você tiver direitos legais para descompilar o binário (por exemplo, se o binário for seu).
Baixando Reko
Os lançamentos oficiais são publicados a cada poucos meses no Github e no SourceForge . Os usuários que não podem ou não construirão o próprio Reko podem fazer o download da saída do construtor de integração do AppVeyor . Naturalmente você pode construir o projeto a partir das fontes: veja “Hacking” abaixo.
Instalando
os usuários do Reko Windows
O seguinte software de pré-requisito deve ser instalado em sua máquina primeiro:
- .NET Framework 4.7.2 ( https://www.microsoft.com/net/download/dotnet-framework-runtime )
Baixe um arquivo MSI de um dos lugares mencionados acima e simplesmente execute o instalador.
Usuários não-Windows
O seguinte software de pré-requisito deve ser instalado em sua máquina primeiro:
- versão mono 5.14.0 ( https://download.mono-project.com/archive/5.14.0/ )
Nota : não conseguimos testar o Reko com a versão mais recente do mono, 5.16.0, porque um bug na referida versão torna impossível a construção. Isso foi relatado em mono / mono # 11663.
Depois de instalar o mono, você pode continuar baixando binários diretamente do servidor de compilação de integração ou construindo o Reko a partir das fontes (veja Hacking
abaixo).
Documentação
Para se familiarizar com os vários recursos do Reko, você pode ler o guia do usuário . Se você estiver interessado no funcionamento interno do projeto, consulte o wiki.
Como obter suporte
Você pode relatar qualquer problema encontrado ou fazer qualquer pergunta relacionada ao Reko no rastreador de problemas . Você também pode tentar o Reko Gitter.imsala de bate-papo. A Reko é construída pelos esforços dos voluntários em seu tempo livre, portanto, ajuste suas expectativas de tempo de resposta de acordo.
Hacking
Para construir o reko, comece clonando https://github.com/uxmal/reko . Você pode usar um IDE ou a linha de comando para criar o arquivo da solução Reko-decompiler.sln
. Se você for um usuário do IDE, use o Visual Studio 2017 ou posterior ou o MonoDevelop versão 5.10 ou posterior. Se você deseja construir usando a linha de comando, use o comando
msbuild Reko-decompiler.sln
(desde que você tenha msbuild
instalado). Todas as dependências externas necessárias para construir o Reko estão incluídas no external
diretório.
Nota : informe-nos se ainda não conseguir compilar, para que possamos ajudá-lo a corrigir o problema.
Se você estiver interessado em contribuir com código, consulte o roteiro das áreas a serem exploradas. O Wiki tem mais informações sobre o funcionamento interno do projeto Reko. Por favor, consulte o guia de estilo .
Avisos e erros relacionados ao WiX
Você receberá avisos ou erros ao carregar a solução no Visual Studio ou no MonoDevelop se não tiver instalado o conjunto de ferramentas WiXna sua máquina de desenvolvimento. Você pode ignorar com segurança os avisos; o conjunto de ferramentas WiX é usado apenas ao fazer pacotes do instalador MSI, e nem é suportado no MonoDevelop. Você não precisará criar um instalador se já puder compilar o projeto: o processo de compilação copia todos os arquivos necessários para dentro Se você deseja criar um instalador MSI com o conjunto de ferramentas WiX, pode baixá-lo aqui: http: //wixtoolset.org/releases/
Como faço para iniciar o Reko?
A pasta de solução Drivers
contém os executáveis que atuam como interfaces de usuário: o diretório WindowsDecompiler
contém o cliente da GUI para usuários do Windows; MonoDecompiler
contém o cliente GUI para usuários Mono; CmdLine
é um driver de linha de comando.