Jump to content

Read register value of a memory address


Recommended Posts

Is it possible to read the current ESI value of a memory address? I know the pointer address of a DMA address, the only problem is the pointer address does not store the plain DMA address, instead it adds a value to the current ESI value, which is the location I am looking for. To be simple, the location I need to know is ESI + 7D. Is there any way to get the ESI register value through autoit?

Link to comment
Share on other sites

A register isn't the same thing as memory. So I am a little confused on what you're asking. The only way to get the value of a register is to use assembly. Write a DLL with inline asm that returns the value of the specified register.

It should look something like this...

int GetRegisterValue()
{
    __asm mov eax, esi
}
Edited by cppman
Link to comment
Share on other sites

Here is how I find the value in CE, I open the memory view, go to the static address, then debug it (f5), it freezes the game, and I click ESI and copy the value it holds (then stop the debugger so the game continues). Then I add a static value to that address (the +7D part) and that gives me the dynamic address I'm looking for.

How would I go about writting the DLL? I do have C# knowledge but without doing "unsafe" code I cannot read memory or anything, so I figured maybe AutoIT could do something similar.

Edited by mwpeck
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...