Home of Gamehacking - Archiv
opcode - Druckversion

+- Home of Gamehacking - Archiv (http://archiv-homeofgamehacking.de)
+-- Forum: Coding (http://archiv-homeofgamehacking.de/forumdisplay.php?fid=15)
+--- Forum: Sonstiges (http://archiv-homeofgamehacking.de/forumdisplay.php?fid=21)
+--- Thema: opcode (/showthread.php?tid=264)



opcode - Bluespide - 04.03.2011

hi, ich bin es mal wieder:blush:,

also, ich möchte an eine Adresse einen Wert schreiben. Wie mache ich das, weil vorne ja ein byte stehen muss und keine Adresse?



RE: opcode - fr33k - 04.03.2011

(04.03.2011, 19:45)Bluespide schrieb: hi, ich bin es mal wieder:blush:,

also, ich möchte an eine Adresse einen Wert schreiben. Wie mache ich das, weil vorne ja ein byte stehen muss und keine Adresse?

sehr wenig infos, so kann man schlecht wissen was du willst, wie z.B welche Sprache (da du diese frage unter Sonstiges schreibst), usw...


RE: opcode - Acubra - 04.03.2011

Hey,
willst du jetzt den Wert einer Adresse ändern, oder die Opcodes verändern?
Ist mir aus deiner Fragestellung nicht ganz klar geworden.

//EDiT: Stichwort bei beiden Varianten WriteProcessMemory


RE: opcode - Bluespide - 04.03.2011

z.B. "mov 024CFD7A,00000014" geht ja nicht, weil vorne ein byte stehen muss


RE: opcode - Acubra - 04.03.2011

Hey,
also hier mal ein Beispiel, welches etwas Licht ins Dunkel bringen sollte.

[code=asm]
0050F16F(Adresse) - B8 1758708C(Bytes) - mov eax,8C705817(Opcode)
[/code]
Das heisst, das an der Adresse 0050F16F die Bytes B8 1758708C den Opcode mov eax,8C705817 beschreiben. D.h wenn wir diesen Befehl jetzt zu mov eax, eax ändern möchten, sehe das so aus:
[code=asm]
0050F16F - 8B C0 - mov eax,eax
0050F171 - 90 - nop
0050F172 - 90 - nop
0050F173 - 90 - nop
[/code]

Also musst du die Bytes B8 1758708C durch 8B C0 90 90 90 ersetzen.


RE: opcode - Bluespide - 04.03.2011

aber bei deinem Code ist vorne eax als des und ich möchte nach 024CFD7A mov'en


RE: opcode - Acubra - 04.03.2011

Hey,
achso.
Dann musst du erstmal die Adresse in eine andere Variable verschieben (oder ein Register) und dann den Wert dahinschreiben.



RE: opcode - DNA - 04.03.2011

(04.03.2011, 21:29)Bluespide schrieb: z.B. "mov 024CFD7A,00000014" geht ja nicht, weil vorne ein byte stehen muss

vorne muss ein byte stehen? du meinst wohl eher ein Register Wink
Aber auch das stimmt nicht so ganz ... versuch mal folgendes

[code=asm]mov dword ptr[024CFD7A],014[/code]


RE: opcode - Bluespide - 04.03.2011

(04.03.2011, 22:08)DNA schrieb:
(04.03.2011, 21:29)Bluespide schrieb: z.B. "mov 024CFD7A,00000014" geht ja nicht, weil vorne ein byte stehen muss

vorne muss ein byte stehen? du meinst wohl eher ein Register Wink
Aber auch das stimmt nicht so ganz ... versuch mal folgendes

[code=asm]mov dword ptr[024CFD7A],014[/code]

au jah genau das habe ich gesucht thxHappy