I wanted to ask for some help on how to find a variable inside a program using a disassembler like OllyDbg or Win32Dasm. I'm trying to figure out how to manipulate that variable but my main problem is how to find it.
I have little experience with disassemblers but somehow I managed to crack a few things over the years.
Most of what I know by the basic tutorials that I've read take the same a approach, you check the program's string references and search the section that means something in relation to what you need to find, then you start following jumps and calls until you get to the spot that you want to manipulate, I've done that on some occasions.
The task at hand is a bit different from what I'm used to, there are apparently no string references to the specific variable I need to find and so I don't know which way to go. I tried to follow the code but at some point I realized that even if I stepped on the code I was searching for I wouldn't know it. In more detail, it's a video game that upon launch checks if an external file is loaded, if that external file was loaded it displays an internal warning message (not your win32 popup) then exits. The game was built using a proprietary programming language based on Visual C++. I'm guessing the source-code for that portion should be something like this:
Code: Select all
if (ExternalFileLoaded==1) {
Display ("WARNING: An external file was loaded, bla, bla...");
Exit(0);
}
else
{
...continue...
}
Thank you for your time.