 |
Cheat Engine The Official Site of Cheat Engine
|
View previous topic :: View next topic |
Author |
Message |
paindubreak Newbie cheater
Reputation: 0
Joined: 06 Jan 2023 Posts: 11
|
Posted: Fri Oct 27, 2023 10:10 am Post subject: Help with shared opcode |
|
|
Again, i need your help, i want to take all the value that appear in one opcode for a script like that
THIS IS NOT THE SCRIPT THAT I WILL BE USING, its just an example, idk how i can name this type of script that move the value into a label
Code: | { Game : godfather2.exe
Version:
Date : 2023-07-07
Author : user
This script does blah blah blah
}
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(INJECT_crd,godfather2.exe,F3 0F 10 59 38) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
label(crd)
newmem:
mov [crd],ecx
add [crd],38
code:
movss xmm3,[ecx+38]
jmp return
crd:
dd (float)1.0
INJECT_crd:
jmp newmem
return:
registersymbol(INJECT_crd)
registersymbol(crd)
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
INJECT_crd:
db F3 0F 10 59 38
unregistersymbol(INJECT_crd)
unregistersymbol(crd)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: godfather2.exe.text+14F8DF
godfather2.exe.text+14F8B6: 8B F1 - mov esi,ecx
godfather2.exe.text+14F8B8: 76 0D - jna godfather2.exe.text+14F8C7
godfather2.exe.text+14F8BA: F3 0F 10 86 A8 00 00 00 - movss xmm0,[esi+000000A8]
godfather2.exe.text+14F8C2: F3 0F 11 45 10 - movss [ebp+10],xmm0
godfather2.exe.text+14F8C7: 8B 46 14 - mov eax,[esi+14]
godfather2.exe.text+14F8CA: F3 0F 7E 46 64 - movq xmm0,[esi+64]
godfather2.exe.text+14F8CF: 8B 48 30 - mov ecx,[eax+30]
godfather2.exe.text+14F8D2: 8B 49 18 - mov ecx,[ecx+18]
godfather2.exe.text+14F8D5: F3 0F 10 49 30 - movss xmm1,[ecx+30]
godfather2.exe.text+14F8DA: F3 0F 10 51 34 - movss xmm2,[ecx+34]
// ---------- INJECTING HERE ----------
godfather2.exe.text+14F8DF: F3 0F 10 59 38 - movss xmm3,[ecx+38]
// ---------- DONE INJECTING ----------
godfather2.exe.text+14F8E4: 8B 56 6C - mov edx,[esi+6C]
godfather2.exe.text+14F8E7: 66 0F D6 44 24 54 - movq [esp+54],xmm0
godfather2.exe.text+14F8ED: F3 0F 10 40 10 - movss xmm0,[eax+10]
godfather2.exe.text+14F8F2: F3 0F 11 44 24 40 - movss [esp+40],xmm0
godfather2.exe.text+14F8F8: F3 0F 10 40 14 - movss xmm0,[eax+14]
godfather2.exe.text+14F8FD: 83 C1 30 - add ecx,30
godfather2.exe.text+14F900: F6 05 5C 8D 11 01 01 - test byte ptr [godfather2.exe.data+2CDD5C],01
godfather2.exe.text+14F907: 8B 4D 08 - mov ecx,[ebp+08]
godfather2.exe.text+14F90A: F3 0F 11 44 24 44 - movss [esp+44],xmm0
godfather2.exe.text+14F910: F3 0F 10 40 18 - movss xmm0,[eax+18]
}
|
I need to do for each value a thing where you can change it one by one
also. just by curiosities, if i want to take only of the seventh value, how i can do it ?
Thank you for your help
Description: |
|
Filesize: |
33.03 KB |
Viewed: |
1055 Time(s) |

|
|
|
Back to top |
|
 |
Famine Cheater
Reputation: 0
Joined: 23 Oct 2023 Posts: 27 Location: A club where people wee on each other.
|
Posted: Fri Oct 27, 2023 7:21 pm Post subject: |
|
|
If you want to modify individual values one by one, you can follow this approach:
Create a label and allocate memory for each value you want to change.
Use instructions to modify the allocated memory location.
Create separate code blocks (newmem sections) for each value you want to change.
Modify the values as needed in each code block.
Jump to the return label to continue the execution flow.
Here's an example of how you can modify the seventh value:
Code: | [ENABLE]
// Code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(INJECT_crd, godfather2.exe, F3 0F 10 59 38) // should be unique
alloc(newmem, $1000)
label(code)
label(return)
label(crd)
label(seventh_value) // Label for the seventh value
newmem:
mov [crd], ecx
add [crd], 38
code:
movss xmm3, [ecx+38]
jmp return
seventh_value:
// You can modify the seventh value here
movss xmm3, [ecx+38]
addss xmm3, [crd] // Modify the seventh value (e.g., add the value in [crd])
jmp return
crd:
dd (float)1.0
INJECT_crd:
jmp newmem
return:
registersymbol(INJECT_crd)
registersymbol(crd)
registersymbol(seventh_value) // Register the symbol for the seventh value
[DISABLE]
// Code from here till the end of the code will be used to disable the cheat
INJECT_crd:
db F3 0F 10 59 38
unregistersymbol(INJECT_crd)
unregistersymbol(crd)
unregistersymbol(seventh_value) // Unregister the symbol for the seventh value
dealloc(newmem)
|
In this code, I added a label seventh_value and a separate code block for modifying the seventh value. You can add your code to manipulate the seventh value within the seventh_value block.
|
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum
|
|