
Situação: Há muito tempo desenvolvi alguma codificação em C e C++, convertendo para arquivo *.SO - excluí esses arquivos C e C++.
Problema: desejo reconverter os arquivos *.SO em arquivos C e C++ para a atualização do código. Oriente o procedimento e envie qualquer tutorial e procedimento para reconversão.
Responder1
Esta pergunta já foi feita aqui antes:https://stackoverflow.com/questions/2306972/is-there-any-way-to-decompile-linux-so.
De qualquer forma, você não pode recuperar seu código original, ou citando Carlos Gutiérrez: "Você pode fazer hambúrgueres com uma vaca, mas não pode fazer uma vaca com hambúrgueres".
Um arquivo *.so é um objeto compartilhado compilado (aproximadamente equivalente a uma dll no Windows). Ele contém todas as informações de uma função em uma linguagem que a máquina entende. Este não é necessariamente o mesmo idioma em que está escrito - se o original não era puro assembly, quase certamente não é o mesmo idioma. Portanto, embora seja possível recuperar informações suficientes para produzir uma função que faça a mesma coisa, não é possível voltar ao código-fonte original.