Einzelnen Beitrag anzeigen

Benutzerbild von milos
milos

Registriert seit: 14. Jul 2008
Ort: Bern (CH)
509 Beiträge
 
Delphi 11 Alexandria
 
#12

AW: Dynamische Memory Adressen - Startpunkt herausfinden

  Alt 24. Jul 2015, 19:55
Ja habe schon länger die Pointer Adressen rumliegen, leider sind die nach dem Update geändert worden und muss die genauen nochmal suchen ^^

Ich habe es jedoch nicht wirklich hinbekommen von den Pointer Adressen schlussendlich zu meinem Ziel zu gelangen. :/
Im Anhang ist ein Screenshot von der Pointer Adresse in Cheat Engine.
Muss ich nun, damit ich zum Ziel komme in Delphi das wirklich so lösen?

- Auslesen von "client.dll"+04B337A8, sollte mir laut Cheat Engine (Bild im Anhang) ja 04C099E0 geben.
- Danach dem letzten ergebniss $68 welche mir dann 04192880 zurück gibt
- Immer so weiter bis ich ganz oben und dann bei meinem Ziel "041929CC" bin?

Hab das gestern mal so ausprobiert, bin aber verzweifelt und habs aufgegeben. :/

Hab es etwa so ausprobiert:
Delphi-Quellcode:
class function TGameUtils.FollowPointerAddr(AStartPointer: Integer;
  Offsets: array of Cardinal) : integer;
var
  c: Integer;
  Address : Int64;
  R : Int64;
  Bytesread: NativeUInt;
begin
  Address := ClientBaseAddress + AStartPointer;

  for c := 0 to Length(Offsets)-1 do
  begin
    ReadProcessMemory(GameHandle, ptr(Address), @Address, SizeOf(R), Bytesread);
  end;
  ReadProcessMemory(GameHandle, ptr(Address), @Result, 4, Bytesread);
end;


Caption := IntToHex(TGameUtils.FollowPointerAddr($04B337A8,[$68, $48, $154, $3c, $14c]),8);
Hoffe einer kann mir da weiterhelfen, bin nämlich wirklich schon am verzweifeln ^^

Freundliche Grüsse
Miniaturansicht angehängter Grafiken
p6ov.jpeg  
Milos
  Mit Zitat antworten Zitat