View previous topic :: View next topic |
Author |
Message |
mStorm Expert Cheater
Reputation: 0
Joined: 21 Feb 2009 Posts: 107
|
Posted: Sun Aug 23, 2009 9:13 pm Post subject: Memory Access Exceptions crashing game. |
|
|
About 75% of the time when I use Memory Access Exceptions while manually tracing a pointer back, it will cause the game to crash. Any ideas?
|
|
Back to top |
|
 |
Xblade Of Heaven Master Cheater
Reputation: 0
Joined: 16 Oct 2005 Posts: 395 Location: DEAD
|
Posted: Sun Aug 23, 2009 9:31 pm Post subject: |
|
|
run Systemcallretriever and restard windows
_________________
Welcome to the Hell.
 |
|
Back to top |
|
 |
mStorm Expert Cheater
Reputation: 0
Joined: 21 Feb 2009 Posts: 107
|
Posted: Sun Aug 23, 2009 10:58 pm Post subject: |
|
|
Ran the Systemcallretriever in the Cheat Engine directory, rebooted and still same thing.
It crashes right after I get the values for "Find out what accessed this address", then when I try to close out that window it crashes the game as well.
Any ideas?
|
|
Back to top |
|
 |
Dark Byte Site Admin
Reputation: 470
Joined: 09 May 2003 Posts: 25785 Location: The netherlands
|
Posted: Mon Aug 24, 2009 3:15 am Post subject: |
|
|
The memory access exceptions will often cause a crash on multithreaded programs, I can see if I can make it a bit more stable in the next 32-bit only version, but don't count on it
If you're using it because the original register is being overwritten, see if you can't reconstruct the original register.
example:
You know the address being accesses it 1102887c
the instruction to access it is mov eax,[eax+c]
since we know that eax+c = 1102887c we can assume that eax=11028870
_________________
Do not ask me about online cheats. I don't know any and wont help finding them.
Like my help? Join me on Patreon so i can keep helping |
|
Back to top |
|
 |
mStorm Expert Cheater
Reputation: 0
Joined: 21 Feb 2009 Posts: 107
|
Posted: Mon Aug 24, 2009 2:55 pm Post subject: |
|
|
Hm. What if it is:
mov eax,[eax+ebx]
Would this mean that it's fruitless to use EBX as the offset to go by because it is dynamic?
Also, I'm a little confused:
Say the instruction is:
mov eax,[eax+c]
Isn't EAX now the address pointed to by the (old)EAX+C, which means the new EAX - C wouldn't really be useful?
|
|
Back to top |
|
 |
Dark Byte Site Admin
Reputation: 470
Joined: 09 May 2003 Posts: 25785 Location: The netherlands
|
Posted: Mon Aug 24, 2009 3:49 pm Post subject: |
|
|
a+b=k
a is an unknown value (eax)
b is a known value (ebx)
k is a known value (address you used the "find what ..." on)
so:
a=k-b
just pick as offset the lowest one
and in case of "mov eax,[eax+c]" the offset would be c and the base pointer would be the original eax
as I said, you can find the original eax by doing "Address you used find what access on"-c
eax isn't used in the equation so it doesn't matter if it got changed
_________________
Do not ask me about online cheats. I don't know any and wont help finding them.
Like my help? Join me on Patreon so i can keep helping |
|
Back to top |
|
 |
SwaggaJackin' Master Cheater
Reputation: 2
Joined: 06 Nov 2009 Posts: 304
|
Posted: Sat Nov 07, 2009 11:06 pm Post subject: |
|
|
Would forcing the game to run on 1 core solve the issue with multi-threaded games crashing with exceptions enabled?
EDIT: Just tried it. It doesn't, unless that wasn't what is causing CNC3 to crash with access exceptions enabled.
|
|
Back to top |
|
 |
|