nehmen wir an du hast deinen wert mit Tsearch gefunden. Da die Adresse aber dynamisch ist, wäre sie nach dem nächsten Restart/Mapwechsel o.ä. wieder eine andere.
Also setzt du erstmal ein Breakpoint für schreibzugriffe auf diese Adresse (mit Tsearch --> Autohack)
Wenn du dann das nächste mal schießt, stirbt oder was du auch immer gesucht hast, bekommst du vom Autohack einen ASM code angezeigt. z.b. sowas
12345678 mov[edx+0x68],edi
12345678 wäre dann die adresse wo dieser code eben steht....diese adresse ist statisch.
Wenn du den mov befehl nun aus NOP'st, dann würdest du keine Leben mehr verlieren.
Das ist eine einfache Lösung, funktioniert aber nicht in allen Fällen.....nehmen wir an, du suchst die Stelle an der die momentan angelegte Waffe ist (mit den Werten 1-6 oder so) und du willst diese durch einen Trainer ändern.
mov[edx+0x68],edi <--- heisst ja , dass der Wert in edi an die Adresse edx+0x68 geschrieben werden soll.....der Wert von edx ist bei jedem Neustart des Spiels bei diesem Aufruf ein anderer, daher ja dynamisch.
in edi steht die ID der angelegten Waffe.
Man könnte jetzt per code einfach das edi in die ID der gewünschten Waffe ändern, würde aber nichts bringen, da dieser Code erst aufgerufen wird, wenn man die Waffe auch tatsächlich wechselt. Verstehst du was ich damit sagen will? Es reicht also nicht, die Adresse zu können, an der steht, wie die Waffe gewechselt wird. Wir brauchen die direkte dynamische Adresse.
Nehmen wir jetzt folgendes an :
- du hast die Waffen-ID an der adresse 463746DA gefunden.
- du weisst dass der Code zum ändern mov[edx+0x68],edi lautet
- also muss edx+0x68 = 463746DA sein
rechnen wir also 463746DA - 0x68 dann haben wir edx
Jetzt suchen wir nach dem Wert den wir errechnet haben im speicher, denn der muss ja auch irgendwo stehen (vorher nach dez umwandeln)
Die adresse die du jetzt findest ist auch statisch.
Bei jedem mal wo du jetzt die Waffe ändern willst liest du den Wert an dieser Adresse aus, addierst 0x68 und hast deine dynamische Adresse und kannst da jetzt reinschreiben was du willst.