Quote:
Originally Posted by Adroxxx
Dann ist es nicht der Basepointer.
Du musst weiter reversen und schauen wo diese Adresse herkommt.
|
Also ich habe das gleiche Problem wie Drake.
Ich habe jetzt mal ne Weile rum probiert, und behaupte was ich und Drake gefunden haben ist der "Base" Pointer.
FF**AFA8 --> 25DB20 + 50 --> FA3A0 + 14 --> Punktezahl
Hier die Verschachtelung mal als (pseudo) C-code, dann versteht man es besser.
const uint32_t * basePtr = 0xFF00AFA8;
uint32_t * ref1Ptr = *(basePtr + 50);
uint32_t * ref2Ptr = *(ref1Ptr + 14);
uint32_t val = *ref2Ptr;
Egal wie ich die Pointer die mir CE ausspuckt reverse komme ich immer wieder bei 0xFF**AFA8 raus. Die ** ändern sich bei jedem Solitär Neustart, wie kann das sein?
By the way: Ich lande immer wieder bei FF**AFA8 und dieser Wert findet sich nicht mehr, sprich der wird nicht referenziert --> sollte der Base Pointer sein.
Win7 x64.
Edit: Mir fällt noch ein, kann es etwas mit der Endianess bei 64Bit zu tun haben? Denn eigentlich müssten die Pointer 64 Bit breit sein, CE verwendet aber nur 32Bit Addressen, vielleicht wird die Baseaddress schlicht weg falsch dargestellt. Oder bin ich da auf dem Holzweg?