Hackerboard WikiHaboBlog

[HaBo]

 
Code Kitchen Allgemeines Coder-Forum rund um das Programmieren eigenständiger, ausführbarer Programme.

Hex-Code in Sourcecode umwandeln?

Diskussion: Hex-Code in Sourcecode umwandeln? im Forum Code Kitchen, in der Kategorie Software Home; Hi. Angenommen ich habe den Hexcode von irgendeinem Programm habe, z.B ich schreibe in C oder in irgendeiner anderen Sprache ...

Antwort
Alt 13.02.04, 23:44   #1 (permalink)
 
Registriert seit: 11.12.03
Bleeding666 Leistung: Facit NTK
Likes: 0
Standard Hex-Code in Sourcecode umwandeln?


Hi.

Angenommen ich habe den Hexcode von irgendeinem Programm habe, z.B ich schreibe in C oder in irgendeiner anderen Sprache ein Prog und öffne es dann mit einem Hexeditor.

Wie kann ich jetzt vom Hexcode auf den Programmcode schließen? Bzw. kann ich den Hexcode in irgendeiner Programmiersprache öffnen?

Ich möchte also von Hexcode auf den Programmcode z.B:

Hexzahlen --> Binärzahlen --> Assemblercode

Müsste doch gehen. Zumindest in Assemblercode. Es gibt doch bestimmt ein Tool, das die Hexzahlen in Binärcode umrechnet. Wenn ich dann die Binärzahlen habe, müsste ich es doch irgendwie in die Mnemonics umwandeln können.

Weiß jemand wie das genau geht? Oder kennst jemand solche Tools?

Bin für jede Hilfe dankbar.

mfg
Bleeding

Bleeding666 ist offline   Mit Zitat antworten
Alt 14.02.04, 13:00   #2 (permalink)
 
Registriert seit: 04.01.04
Andy1974 Leistung: Facit NTK
Andy1974 eine Nachricht über ICQ schicken
Likes: 0
Standard RE: Hex-Code in Sourcecode umwandeln?

Ich nehme an, du meinst sowas wie einen Dis-Assembler oder einen Debugger.

Kannst ja mal nach "Hiew" googlen, der ist zwar (meines Wissens) nicht mehr zeitgemäß, aber er ist ziemlich klein und du kannst mal testen, ob das ungefähr dem entspricht, was du suchst.
Andy1974 ist offline   Mit Zitat antworten
   
HaBOT
 

Werbung ist gerade online    
Alt 14.02.04, 13:07   #3 (permalink)
Member of Honour
 
Benutzerbild von ivegotmail
 
Registriert seit: 28.05.03
ivegotmail Leistung: Z3
Likes: 1
Standard

scheinbar suchst du einfach nur n dsisassembler
google mal nach W32dasm
__________________
http://livehabo.hackerboard.de | http://livebb.sourceforge.net
ivegotmail ist offline   Mit Zitat antworten
Alt 14.02.04, 15:30   #4 (permalink)
Themenstarter
 
Registriert seit: 11.12.03
Bleeding666 Leistung: Facit NTK
Likes: 0
Standard

Ich dachte ein Disassembler kann nur eine exe oder com Datei in den Assemblersource zurückwandeln. Aber was mach ich, wenn ich wie gesagt nur den Hexcode eines Programms habe? Kann der Disassembler auch vom Hexcode auf den Source schließen?

Kann ich auch z.B ein C Programm oder ein Programm in einer anderen Sprache in Assemblercode umwandeln? Über den Umweg des Hexcodes?
Da es ja für C keine Decompiler gibt.

mfg
BleedingSoul
Bleeding666 ist offline   Mit Zitat antworten
Alt 14.02.04, 16:25   #5 (permalink)
Rushjo
Guest
 
Likes:
Standard

Richtig, aufgrund der Unterschiede in den Übersetzung des verschiedenen
Compiler von "C Sources" sieht auch das "Disassemblat" jedes Mal ein wenig anders
aus, aber man kann sich NICHT den "C Source" anzeigen lassen. Du musst Dir schon
das "Disassemblat" anschauen und verstehen. Ist doch eigentlich auch logisch, der
Compiler übersetzt deine "Hochsprache" in eine "Low Level Language". Dies kann
man nicht rückgängig machen.

MfG Rushjo
  Mit Zitat antworten
Alt 14.02.04, 17:19   #6 (permalink)
Themenstarter
 
Registriert seit: 11.12.03
Bleeding666 Leistung: Facit NTK
Likes: 0
Standard

Danke Rushjo. Wenn ich alles verstanden habe heißt das ( bitte verbessern wenn ich irgendwo falsch liege, ich muss das genau wissen) :

Ich kann jede exe Datei egal in welcher Sprache sie geschrieben wurde mit einem Disassembler in einen Assemblerquellcode umwandeln.

Ich kann aber aus der exe nicht auf den Sourcecode einer höheren Sprache ( z.B C ) rückschließen.

Eine Frage blieb noch offen: Wie kann ich den Hexcode einer exe in den Assemblerquellcode umwandeln? Angenommen ich hätte die exe Datei nicht mehr sondern nur noch den Hexcode.

Danke.

mfg
Bleeding
Bleeding666 ist offline   Mit Zitat antworten
Alt 15.02.04, 16:30   #7 (permalink)
Rushjo
Guest
 
Likes:
Standard

@bleed666

Deine Ausführungen sind richtig. Mit der Einschränkung, Du kannst schon auf die
Sprache "schliessen", aber das "Disassemblat" nicht zurück übersetzen auf einen
Quelltext mit "C/C++ Befehlen".

Rein theoretisch kannst Du den gesamten Hex-Code zurück in eine Datei schreiben
und dann als ".exe" benennen. Diese ".exe" kannst Du dann mit einem Disassembler
wie z.B. "W32dsm89" "desassemblieren". Voil?! <-- Dies funktioniert aber nur, wenn
Du wirklich ALLE Zeichen des Hex-Code hast. Ansonsten hast Du nur "Daten-Müll".

MfG Rushjo
  Mit Zitat antworten
Alt 17.02.04, 20:09   #8 (permalink)
 
Registriert seit: 22.01.04
HellKnight Leistung: Facit NTK
HellKnight eine Nachricht über ICQ schicken HellKnight eine Nachricht über AIM schicken
Likes: 0
Standard

Und noch was: Es gibt C-Dekompiler. Zwar nich sehr viele und sehr gute ... aber es gibt sie!
HellKnight ist offline   Mit Zitat antworten
Alt 17.02.04, 20:32   #9 (permalink)
Themenstarter
 
Registriert seit: 11.12.03
Bleeding666 Leistung: Facit NTK
Likes: 0
Standard

Es gibt C Decompiler? Sicher? Können die wie ganz normale D Compiler wie z.B in Assembler jede exe Datei decompilieren, oder gibt es da Einschränkungen?

Woher weisst du das? Hast du selber welche? Irgendwie bezweifle ich das!

Dann könnte man damit ja Teile von Windows decompilieren. z.B den Taskmanager, die Eingabeaufforderung???

Kannst du mir konkrete Namen sagen?

Bei Assembler z.B ist es klar: der Code hat immer die gleiche Syntax ( oder sehr) ähnlich. Aber eine Hochsprache wie C? Dann müsste der Decompiler ja den Sourcecode machen wie es ihm grad passt.

Danke.

mfg
Bleeding
Bleeding666 ist offline   Mit Zitat antworten
Alt 17.02.04, 20:41   #10 (permalink)
Themenstarter
 
Registriert seit: 11.12.03
Bleeding666 Leistung: Facit NTK
Likes: 0
Standard

Sorry war etwas voreilig. Durch Suchen mit Google hab ich das gefunden:

Zitat:
dcc
The dcc decompiler decompiles .exe files from the (i386, DOS) platform to C programs. The final C program contains assembler code for any subroutines that are not possible to be decompiled at a higher level than assembler
http://www.itee.uq.edu.au/~cristina/dcc.html

Also gibt es schon C Decompiler aber diese Compilieren nicht den ganzen Code sondern nur den Teil den sie können und der Rest ist Assembler.

mfg
BleedingSoul
Bleeding666 ist offline   Mit Zitat antworten
Alt 17.02.04, 20:54   #11 (permalink)
 
Registriert seit: 22.01.04
HellKnight Leistung: Facit NTK
HellKnight eine Nachricht über ICQ schicken HellKnight eine Nachricht über AIM schicken
Likes: 0
Standard

Ja des gibts. Nur dass dann alle Namen unleserlich sind und niemand mehr was sinvolles draus lesen könnte. Keine kommentare, keine Variablennamen - einfach nichts mehr da.
Das kling zwar ein bisschen seltsam zu sagen, dass das dann niemand mehr lesen kann - stimmt aber wirklich. Probiers aus!
HellKnight ist offline   Mit Zitat antworten
Antwort
   

Werbung ist gerade online    

[HaBo] » Software Home » Code Kitchen » Hex-Code in Sourcecode umwandeln?
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
LaTeX-Code in Bild umwandeln (C/C++ - bibliothek) RedEagle Code Kitchen 4 09.11.08 17:05
MySQL 4.0* Sourcecode Gulliver Linux/UNIX 2 14.09.07 13:51
sourcecode zu quake - serie (I - III) _fux_ Games 0 12.12.05 22:57
Windows98 Sourcecode Sven Fun Section 1 19.01.04 18:48


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61