bartekdvd How do I cheat?
Reputation: 0
Joined: 01 Jan 2012 Posts: 4
|
Posted: Fri Nov 30, 2012 6:24 am Post subject: CheatEngine ADD ECX,94 - really weird thing |
|
|
This is log from tracer:
Code: | 010681A0 - push ebp
EAX=010681A0
EBX=00000000
ECX=263AD23C
EDX=FD1EB8B0
ESI=00000006
EDI=0573FE68
EBP=0573FE4C
ESP=0573FD88
EIP=010681A0
EFLAGS=00000206
-
010681A1 - mov ebp,esp
EAX=010681A0
EBX=00000000
ECX=263AD23C
EDX=FD1EB8B0
ESI=00000006
EDI=0573FE68
EBP=0573FE4C
ESP=0573FD84
EIP=010681A1
EFLAGS=00000206
-
010681A3 - push esi
EAX=010681A0
EBX=00000000
ECX=263AD23C
EDX=FD1EB8B0
ESI=00000006
EDI=0573FE68
EBP=0573FD84
ESP=0573FD84
EIP=010681A3
EFLAGS=00000206
-
010681A4 - mov esi,[ebp+0C]
0573FD90 = (pointer)0573FE48
EAX=010681A0
EBX=00000000
ECX=263AD23C
EDX=FD1EB8B0
ESI=00000006
EDI=0573FE68
EBP=0573FD84
ESP=0573FD80
EIP=010681A4
EFLAGS=00000206
-
010681A7 - add ecx,94
EAX=010681A0
EBX=00000000
ECX=263AD23C
EDX=FD1EB8B0
ESI=0573FE48
EDI=0573FE68
EBP=0573FD84
ESP=0573FD80
EIP=010681A7
EFLAGS=00000206
-
010681AA - push ecx
EAX=010681A0
EBX=00000000
ECX=263AD1D0
EDX=FD1EB8B0
ESI=0573FE48
EDI=0573FE68
EBP=0573FD84
ESP=0573FD80
EIP=010681AA
EFLAGS=00000213
-
010681AB - mov [esi],00000000
0573FE48 = (dword)00000000(0)
EAX=010681A0
EBX=00000000
ECX=263AD1D0
EDX=FD1EB8B0
ESI=0573FE48
EDI=0573FE68
EBP=0573FD84
ESP=0573FD7C
EIP=010681AB
EFLAGS=00000213
-
010681B1 - call AC3SP.AK::MusicEngine::GetDefaultInitSettings+119FA0
EAX=010681A0
EBX=00000000
ECX=263AD1D0
EDX=FD1EB8B0
ESI=0573FE48
EDI=0573FE68
EBP=0573FD84
ESP=0573FD7C
EIP=010681B1
EFLAGS=00000213
-
00F45420 - push ebp
EAX=010681A0
EBX=00000000
ECX=263AD1D0
EDX=FD1EB8B0
ESI=0573FE48
EDI=0573FE68
EBP=0573FD84
ESP=0573FD78
EIP=00F45420
EFLAGS=00000213
-
00F45421 - mov ebp,esp
EAX=010681A0
EBX=00000000
ECX=263AD1D0
EDX=FD1EB8B0
ESI=0573FE48
EDI=0573FE68
EBP=0573FD84
ESP=0573FD74
EIP=00F45421
EFLAGS=00000213
-
|
ECX=263AD23C
ADD ECX,94
ECX=263AD1D0 - Fuck Logic.
Why after "add ecx,94" instr. ecx = 263AD1D0 instead of 263AD2D0 ?!
CE bug?
EDIT;
I've created new thread in AC3SP process:
Code: |
31 C9 - xor ecx,ecx
83 C1 94 - add ecx,94
EB F9 - jmp AC3SP.exe+18
|
xor ecx,ecx - ecx = 0x00000000
add ecx,94 - ecx should be 0x00000094
but...
Code: |
00400018 - xor ecx,ecx
EAX=75733398
EBX=00000000
ECX=00000000
EDX=00400018
ESI=00000000
EDI=00000000
EBP=0B9EFF94
ESP=0B9EFF8C
EIP=00400018
EFLAGS=00000282
-
0040001A - add ecx,94
EAX=75733398
EBX=00000000
ECX=00000000
EDX=00400018
ESI=00000000
EDI=00000000
EBP=0B9EFF94
ESP=0B9EFF8C
EIP=0040001A
EFLAGS=00000246
-
0040001D - jmp AC3SP.exe+18
EAX=75733398
EBX=00000000
ECX=FFFFFF94
EDX=00400018
ESI=00000000
EDI=00000000
EBP=0B9EFF94
ESP=0B9EFF8C
EIP=0040001D
EFLAGS=00000282
-
|
I don't understand why it is 0xFFFFFF94 instead of 0x000000094.
EDIT2;
I've changed my code. Now it is:
Code: |
31 C9 - xor ecx,ecx
81 C1 94000000 - add ecx,00000094
EB F6 - jmp AC3SP.exe+18
|
and after "add ecx,00000094" ecx = 0x00000094
What is the difference between "add ecx,94" and "add ecx,00000094" ???
EDIT 3;
Ok i understand now. ADD ECX,94 = ADD ECX,FFFFFF94.
ADD ECX,94 - this is sign extended smth.
ADD ECX,00000094 - normal add
Thanks...
|
|