Wie zu dekompilieren einer exe-oder einer dll-assembly
Ich bin wirklich interessiert in Assembler und ich will lernen, wie die exe-Dateien wie dlls ausführen etc... und ich habe eine Idee, eine Anwendung schreiben, zu dekompilieren einer exe-Datei in Assembler-code, da ich bin nicht ein sehr guter Assembler-Programmierer und mit dem Mangel an wissen über die innere Funktion der exe-Datei konnte ich es nicht tun. Seit ich Lesen kann eine exe-Datei im hex-ich denke, es ist nicht unmöglich, aber ich weiß nicht wie ich zu schreiben mein eigenes Programm. Jedes Mittel oder jede mögliche Hilfe würde geschätzt.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich glaube, Sie suchen nach einem disassembler nicht ein decompiler. IDA pro scheint beliebt zu sein, und Sie können laden Sie eine ältere version kostenlos bei http://www.hex-rays.com/idapro/idadownfreeware.htm
Gibt es eine Menge von dissemblers bereits für Sie geschrieben (siehe oben), aber ich glaube nicht, dass das Lesen disassemblierten code wird Ihnen helfen, ein besseres Montage-Schriftsteller. Der Hauptgrund dafür ist, dass der Compiler EINE MENGE von Optimierungen vor, die Sie erzeugen-Baugruppen. Oft sorgt dies für sehr schwierig, code zu schreiben, aber sehr effizienten code zu analysieren.
Werfen Sie einen Blick auf diese Die Dekompilierung Wiki, ich vermute, es wird die meisten Ihrer Fragen beantworten.
Wenn Sie daran interessiert sind, was eine kompilierte Programm aussieht, bei der eine assembler-Ebene eine viel sinnvollere Ansatz wäre, kompilieren und Blick auf die generierte assembly. Zum Beispiel mit gcc/g++ das erfordert nur
gcc -c -S filename.c
und hinterlässt eine klare text-assembly-Datei zu betrachten.