Gibt es eine Möglichkeit, ausführbare Pro * C/C++ - Dateien zu disassemblieren?Wie zerlegt man Pro * C/C++ - Programme?
Antwort
Im Allgemeinen sollten Disassembler für ausführbare Dateien verfügbar sein, unabhängig davon, wie sie erstellt wurden (gcc, proC, handgeschrieben usw.), aber das Dekompilieren einer optimierten Binärdatei führt höchstwahrscheinlich zu einer unlesbaren Quelle.
Außerdem ist Pro C/C++ nicht direkt ein Compiler, sondern gibt C/C++ - Code aus, der wiederum von einem plattformeigenen Compiler (gcc, xlc, vC++ usw.) kompiliert wird.
Außerdem ist der generierte Code oft nicht ohne viele manuelle Korrekturen wieder direkt kompilierbar.
Wenn Sie immer noch Ihr Glück versuchen möchten, werfen Sie einen Blick auf diese Liste von x86 disassemblers für einen Start.
Sie sollten versuchen, mit einem Disassembler-Werkzeug Ihrer Wahl zu zerlegen. Am Ende des Tages sind ausführbare Dateien, die mit dem PRO C/C++ - Präprozessor kompiliert wurden, nur einfache ausführbare C/C++ - Dateien.
Wenn das, was Sie suchen SQL Sätze innerhalb des Codes ist, könnten Sie einen Blick nehmen wollen:
$ strings your_executable_file
Es wird Ihnen eine Liste aller Konstanten-Strings in der ausführbaren Datei geben, und Wahrscheinlich werden Sie damit SQL-Sätze bekommen.
Viel Glück.
Das ist schön. Wenn Sie mir Disassembler-Tool zur Verfügung stellen könnten, wird das schöner. – Ahmed
Ich suche auch den ganzen Programmcode, nicht nur SQL-Anweisungen. – Ahmed
Nun, Disassembler-Werkzeug hängt von der Plattform ab. Da Sie keine angegeben haben, ging ich davon aus, dass Sie das Tool bereits hatten oder nicht zu der von Ihnen verwendeten Betriebssystem- oder CPU-Architektur kommentieren wollten. –
Versuchen Sie PE Explorer Disassembler, ein sehr anständiger Disassembler für ausführbare 32-Bit-Dateien.
Abstimmung zum Schließen als Off-Thema: entweder Tool-Empfehlung oder zu breit. –