I have located a function that I would like to reverse engineer in a game. The function pulls character strings from a large array. I am trying to find this array's contents.

The line in Ghidra is: _Str = (&PTR_DAT_00566838)[iVar7 + (iVar2 + (int)(short)p2* 10) * 5];

As I can see, _Str is a character pointer and we are adding from this table to the string (the pointer is advanced with each loop).

My question is: how do I find this table. I see PTR_DAT_00566838 so I am guessing this is a pointer at this address. What I need to find is what value this pointer points to during runtime and explore that memory. Is that correct?

What's the best way either with ollydbg, CheatEngine or x32dbg to figure out what is at this location?

  • Did you try any of those methods (olly, CheatEngine or x32dbg)? Because the one that's best is the one that just works. – Paweł Łukasik Jan 13 at 7:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.