Ich hab hier son Programm, welches ich mir im Dev-C++-Editor angesehn hab. Da steht dann allerdings nur unbrauchbares Zeug. Liegt das daran, dass es kompiliert ist? Naja, jedenfalls würde ich den Source-Code gern ma lesbar machen, um mir den Aufbau anzusehen. Ist das möglich?
Danke, spawn
--
Rattlesnake Shake
<< And as we wind on down the road our shadows taller than our soul,
There walks a lady we all know who shines white light
And wants to show how everything still turns to gold.
And if you listen very hard the tune will come to you at last
When all are one and one is all, to be a rock and not to roll >>
Led Zeppelin - Stairway to heaven
Ja, kompilierte Programme sind Binärdateien (dieses unlesbare Zeug).
Dekompilieren kann man nicht so einfach, du könntest es höchstens mit einem Disassembler versuchen. Der spuckt aber nur Assemblercode aus.
Wo bekomm ich son disassembler her?
und inwiefern ist der code dann nutzbar?
--
Rattlesnake Shake
<< And as we wind on down the road our shadows taller than our soul,
There walks a lady we all know who shines white light
And wants to show how everything still turns to gold.
And if you listen very hard the tune will come to you at last
When all are one and one is all, to be a rock and not to roll >>
Led Zeppelin - Stairway to heaven
Google ist dein Freund und da wir seid neustem ne Google-Leiste im Forum haben wirds noch einfacher...
ASM (Assmebler) Code wird für dich sicher nicht nutzbar sein, da ich du wohl keine Ahnung da von hast (Annahme, aber wenn dus chon nicht weist was n'Ä Dissassembler ist ...)
Assembler-Code sieht etwa so aus:
Und wer mir sagt was der Code bewirkt bekommt die Adresse wo ich ihn her hab
Und wer mir sagt was der Code bewirkt bekommt die Adresse wo ich ihn her hab
...
Ich tippe auf ein.. Wie schreibe ich mein eigenes OS-Tutorial oder so.
Oder eben dein eigens Dings was du da zusammenschusterst. Zumindest kommt mir der Code bekannt vor, ich hatte mal was fuer den C64 ausprobiert, sah so aehnlich aus. IIRC.
Boar, kommt verdammt nahe. Das Teil ist ein Bootsector. Wenn man ihn in den bootsector von ner Diskette schrteibt und davon bootet sorgt dieser Code dafür das die nächsten 5 Sektoren (1 Sektor = 512 Byte) in den Arbeitsspeicher geladen werden [Man beachte: Real Mode, das heißt maximal Adressierungen von 1024 KByte, das heißt nur 1 MB nutzbar, selbst wenn man 256 MB oder mehr hat...] und dannach ausgeführt werden. Als Quelle verweis ich auf LL #1
Leider zerfetzten die min.20 bis 80% des Codes zumindest war es so mit allen die ich bisher hatte.
Leider habe ich keinen Link zueinem Cpp Decompiler
...
Du wirst wohl auch kaum einen finden... Man kann Maschinencode problemlos in Assemblercode übersetzen (Diassembler) und Assemblercode kann auch mehr oder weniger problemlos in C-Code übersetzt werden - es ist also auch möglich, Maschinen- in C-Code umzurechnen. C++ halte ich aber für unwahrscheinlich; immerhin geht der ganze HLL-Kram zu großen Teilen verloren, wenn man's in Maschinencode umwandelt.
Möglich wär's, aber irgendwie würde es meines Erachtens nach nicht fürchterlich viel Sinn machen.
Boar, kommt verdammt nahe. Das Teil ist ein Bootsector. Wenn man ihn in den bootsector von ner Diskette schrteibt und davon bootet sorgt dieser Code dafür das die nächsten 5 Sektoren (1 Sektor = 512 Byte) in den Arbeitsspeicher geladen werden [Man beachte: Real Mode, das heißt maximal Adressierungen von 1024 KByte, das heißt nur 1 MB nutzbar, selbst wenn man 256 MB oder mehr hat...] und dannach ausgeführt werden. Als Quelle verweis ich auf LL #1
...
Bootloader oder Bootsector ist im Prinzip doch das gleiche.
Der Bootloader befindet sich auch in den ersten paar Sektoren der Festplatte (MBR) und sorgt dafür das (für Linux) die Kernelimages geladen werden.
Wie das genau funktioniert weis ich nicht, interessiert mich auch nicht wirklich, ich hab mein OS Projekt verworfen.
Hm, eigentlich totaler Stuss was ich da schreibe... der Bootsector macht das laden des Bootloaders ja erst mögich...
@Topic:
Also Disassembling ist ne dreckige Sache, wenn man keinen guten Disassembler hat der keine Kommentare setzt hat man so gut wie verloren.
Und wenn man VisualBasic Programme disassemblieren will kann man das auch
vergessen. Solche Disassembler haben die Jungs bei den Antiviren Herstellern, ist meist hausinterne Software, an sowas kommt man leider nicht bzw nur schwer.
BTW, will jemand disassemblies vom neuen Sober Wurm? :3 *protz*
Ja, Disassembling ist wirklich eine undankbare Sache. Wenn man sich denkt, dass man eben mal nen' Spiel disassemblieren und dann daraus lesen kann, sollte man das schnell wieder vergessen.
Kleine Programme kann man mal disassemblen und daraus auch ohne Kommentare lesen. Zum Beispiel welche Interrupts/System Calls verwendet werden, das kann einem helfen, wenn man beispielsweise die System Funktionen umbiegen will oder ein ähnliches Vergehen plant. ;)
So ein Zeug mit Ints usw. bleibt ja im Code enthalten. Also kleine Dinge kann man durch's Disassemblieren schon erfahren, wenn man zum Beispiel, wie beim Virenscan, nach etwas Bestimmtem sucht. Aber zum Überblicken großer Programme ist es eher nichts.
Nein danke. Würmer werden bitte schön komplett selber geschrieben und nicht einfach nur modifiziert.
...
Ich hab echt besseres zu tun als Würmer zu modifizieren (was sowieso ziemlich lahm ist, finde ich zumindest).
Aber lassen wir das ma, geht zu off topic