I come to thee with 2 problems I would like help with. As a quest giver, I promise loads of experience and no gold. My backstory is an interesting one. Gather around, children, and I will tell you of my troubles:
I use aobscanmodule extensively. I'm fairly new to assembly, cheat engine and lua, but I consider myself to be a pretty good programmer (other languages) in general. I started learning the code flow by modifying scripts of others. Having seen the various coding styles of define(address, bytes), aobscan and aobscanmodule, I have concluded that aobscanmodule is the best for me because it provides maximum flexibility while not having the potential heavy load of aobscan.
A lot of the initial scripts I learnt from were of the type:
Code: Select all
[ENABLE]
aobscanmodule(placeholder,App.exe,89 87 ?? ?? EF ?? 89)
...
...
code:
mov eax,[ecx+02EFAC01]
...
[DISABLE]
placeholder:
db 89 87 01 AC EF 02
So far so good. Now my problems:
1. I wish to find a way to store "App.exe" in a global variable (let's call it procname) so that I can use aobscanmodule(placeholder,procname,...). This way, I have to specify the exe name in only one place and if the exe ever changes, all scripts don't need to be updated. Or, even better, I would like to extract the name of the process currently attached to cheat engine and use that within aobscanmodule. Is either of these possible? If so, pray tell me how.
2. Continuing my previous gripe with wildcards, what is the point of using wildcards in aobscanmodule if the actual code references a hard-coded offset? Instead of eax,[ecx+02EFAC01], I should be able to generate "02EFAC01" from the wildcards read in aobscanmodule, otherwise the script isn't really portable, is it? Is there any way to do this? If so, how?
I thank thee gentle and kind citizens.