App installieren
How to install the app on iOS
Follow along with the video below to see how to install our site as a web app on your home screen.
Anmerkung: This feature may not be available in some browsers.
Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
kleinen code umcoden ASM
- Ersteller delpher
- Erstellt am
Hallo
ich habe da mal ne frage weis auch nicht ob das möglich ist habe bisher immer nur Delphi programmiert und habe hier einen Code Schnipsel den ich Umprogrammieren will das heisst der Code soll seine funktion behalten nur halt anders.
Da ich leider in ASM die wenigste Peilung habe wollte ich mal fragen ob hier vielleichgt jemand weiss wie ich das am besten machen kann hier der Code:
mov ecx,1CD
mov eax,(adress1)
xor byte [eax],0C
inc eax
dec ecx
jnz (adress1)
push (adress2)
retn
was könnte ich daran wohl ändern das die funktion bleibt aber der code anders ist?
Bin für jeden Tip dankbar...
ich habe da mal ne frage weis auch nicht ob das möglich ist habe bisher immer nur Delphi programmiert und habe hier einen Code Schnipsel den ich Umprogrammieren will das heisst der Code soll seine funktion behalten nur halt anders.
Da ich leider in ASM die wenigste Peilung habe wollte ich mal fragen ob hier vielleichgt jemand weiss wie ich das am besten machen kann hier der Code:
mov ecx,1CD
mov eax,(adress1)
xor byte [eax],0C
inc eax
dec ecx
jnz (adress1)
push (adress2)
retn
was könnte ich daran wohl ändern das die funktion bleibt aber der code anders ist?
Bin für jeden Tip dankbar...
Ray
Grand Admiral Special
- Mitglied seit
- 11.11.2001
- Beiträge
- 3.141
- Renomée
- 20
- Standort
- An der Spree
- Mein Laptop
- Kein Notbuch
- Prozessor
- Intel Core2Quad Q9650@3.8, AMD Ryzen 9 under test
- Mainboard
- DFI LANPARTY LT X48-T2R + MIPS DFI LANparty P35/X38/X48 Series Freezer Set Nickel
- Kühlung
- EK-Supreme
- Speicher
- 4 x 2 GB OCZ PC2 8500 C5 Reaper@500
- Grafikprozessor
- XFX 8800 GTS(G92) 512 + EK-FC8800 GT/GTS(g92)
- Display
- TFT HP w2408h, 1920x1200
- SSD
- Samsung 840 Pro 256 GB
- HDD
- 2 x WD Black 1TB
- Optisches Laufwerk
- Samsung SH-D163A, Samsung SH-S183A
- Soundkarte
- Creative X-FI Xtreme Gamer Fatality Pro
- Gehäuse
- Modified Lian Li PC201B
- Netzteil
- Seasonic S12 550W
- Betriebssystem
- Win7U-64
- Webbrowser
- FireFox
- Verschiedenes
- Thermochill PA120.3 Triple Radiator , Liang DDC , 11 years old mainboard, still running!
Wie anders?mov ecx,1CD
mov eax,(adress1)
xor byte [eax],0C
inc eax
dec ecx
jnz (adress1)
push (adress2)
retn
was könnte ich daran wohl ändern das die funktion bleibt aber der code anders ist?
Ist das Inline Assembler?
Wo ist adress1?
Woher kommt der Schnipsel?
Soll das eine vollständige Funktion sein?
Woher kommt der Aufruf bzw. was erwartet der Caller?
Willst Du uns blos verarschen?
Dalai
Grand Admiral Special
- Mitglied seit
- 14.06.2004
- Beiträge
- 7.420
- Renomée
- 262
- Standort
- Meiningen, Thüringen
- Mein Laptop
- Thinkpad T43 mit 15" UXGA (1600x1200), 2x 1 GiB RAM, 100GB HD, Bluetooth, GBit LAN, ATi X300
- Prozessor
- AMD Ryzen 5 2600 (Pinnacle Ridge)
- Mainboard
- ASUS Prime X370-A
- Kühlung
- Noctua NH-U12S mit 1x NF-F12
- Speicher
- Crucial Ballistix Sport LT weiß (BLS2K8G4D32AESCK): 2x 8 GiB DDR4-3200 (CL16) @ 1,25V
- Grafikprozessor
- Zotac GeForce GTX 1060 6GB AMP Edition
- Display
- Dell U2410, 24 Zoll, IPS, 16:10
- SSD
- Samsung 850 Evo 250 GB
- HDD
- WD40EZRZ (WD Blue) 4000GB SATA3, WD20EZRX (WD Green) 2000GB SATA3
- Optisches Laufwerk
- Pio DVR-212 (DVD-RAM), ASUS E818A6T (DVD-ROM), Pio DVD-106S (Slot-in DVD-ROM)
- Soundkarte
- Creative SoundBlaster Audigy 2 ZS PCI
- Gehäuse
- Lian Li PC-8NB Midi-Tower
- Netzteil
- Enermax EMP400AGT MaxPro 400W
- Betriebssystem
- Windows 7 Professional x64 und immer mal wieder ein neues Linux :-)
- Webbrowser
- Mozilla Firefox mit diversen Erweiterungen
- Verschiedenes
- 2x 120mm Gehäuselüfter (Front und Rückwand), DVBSky T9580, Sharkoon Frontpanel B (2x USB 3.0)
Ich vermute mal, er möchte das ganze in Delphi-Code umschreiben bzw. umgeschrieben haben, da er ja schreibt, dass er bisher nur Delphi programmiert hat.Wie anders?
Da müsste dann jmd. helfen, der in Assembler und Delphi fit ist (ich bin es nicht , ich kann nicht wirklich Assembler).
MfG Dalai
Nachtschicht
Admiral Special
Ich kann weder diesen Assembler noch Delphi, imho würde der Code in "C" etwa so wie unten aussehen. Korrekt ist der Code aber noch nicht, da die Marke adress1 im Assembler nicht erscheint. Entweder ich interpretiere etwas falsch oder es wird ein Codebereich modifiziert und dann dorthin gesprungen, also eine ziemlich schmutzige Angelegenheit.
char *adress1 = ...
char *adress2 = ...
...
for (i = 0; i < 0x1cd; i++) {
adress1 ^= 0xc;
}
return adress2;
char *adress1 = ...
char *adress2 = ...
...
for (i = 0; i < 0x1cd; i++) {
adress1 ^= 0xc;
}
return adress2;
Ray
Grand Admiral Special
- Mitglied seit
- 11.11.2001
- Beiträge
- 3.141
- Renomée
- 20
- Standort
- An der Spree
- Mein Laptop
- Kein Notbuch
- Prozessor
- Intel Core2Quad Q9650@3.8, AMD Ryzen 9 under test
- Mainboard
- DFI LANPARTY LT X48-T2R + MIPS DFI LANparty P35/X38/X48 Series Freezer Set Nickel
- Kühlung
- EK-Supreme
- Speicher
- 4 x 2 GB OCZ PC2 8500 C5 Reaper@500
- Grafikprozessor
- XFX 8800 GTS(G92) 512 + EK-FC8800 GT/GTS(g92)
- Display
- TFT HP w2408h, 1920x1200
- SSD
- Samsung 840 Pro 256 GB
- HDD
- 2 x WD Black 1TB
- Optisches Laufwerk
- Samsung SH-D163A, Samsung SH-S183A
- Soundkarte
- Creative X-FI Xtreme Gamer Fatality Pro
- Gehäuse
- Modified Lian Li PC201B
- Netzteil
- Seasonic S12 550W
- Betriebssystem
- Win7U-64
- Webbrowser
- FireFox
- Verschiedenes
- Thermochill PA120.3 Triple Radiator , Liang DDC , 11 years old mainboard, still running!
Mit der Schleife könnte etwa hinkommen.
Aber der Code springt zu adress1.
Vielleicht ist mov eax,(adress1) vertippt und soll mov eax,(adress2) heissen.
Dann wird aus
Sodass in C adress1 nicht mehr relevant ist.
Weil sonst hätten wir es womöglich mit sich selbst modifizierendem Code zu tun.
Aber der Code springt zu adress1.
Vielleicht ist mov eax,(adress1) vertippt und soll mov eax,(adress2) heissen.
Dann wird aus
Code:
mov ecx,1CD
mov eax,(adress2)
adress1:
xor byte [eax],0C
inc eax
dec ecx
jnz (adress1)
push (adress2)
retn
in etwa
unsigned int i;
unsigned char *adress2 = ...
...
for (i = 0; i < 0x1cd; i++) {
adress2[i] ^= 0xc;
}
return adress2;
Weil sonst hätten wir es womöglich mit sich selbst modifizierendem Code zu tun.
Zuletzt bearbeitet:
Ähnliche Themen
- Antworten
- 8
- Aufrufe
- 4K
- Antworten
- 0
- Aufrufe
- 86K