📄 ceautoassembler.txt
字号:
exported functions:
delphi headers:
function CEAutoAsm(script: pchar; enable: boolean;allocid: pinteger):boolean; stdcall;
function CEInitialize(pid: dword; phandle: dword):boolean; stdcall;
function CEReloadSymbolsAndModules:boolean; stdcall;
function CEReloadModuleListOnly:boolean; stdcall;
all functions use the standard call calling mechanism, and should be compatible with most compilers
CEAutoAsm:
pchar is a pointer to a 0 terminated string, this will be a pointer to the first character of your script. ANSII ONLY (NO UNICODE)
pinteger is a pointer to a integer (also known as call by reference)
it assembles the script and either returns true if it was successfull or false if not. Check your debug strings for more info on false.
allocid returns a internally used id used to free memory caused by allocs in scripts. you have to give the same id back when calling with enable set to false
CEInitialize:
Give it the processid and the processhandle of the opened process Recommended calling this a little after the game has started so it can find all loaded modules and symbols
CEReloadSymbolsAndModules:
same as initialize, but requires intialize to be called at least once (to get the processid and handle), but waits till the symbolloader is completly loaded
CEReloadModuleListOnly:
only reloads the module list, which is most important in most cases.
Symbols are stuff like "CEngine::DrawHealth", "CPawn::DecreaseHealth" and userdefined symbols
Modules are stuff like "game.exe", "gamex86.dll" , etc...
usage:
When you have opened the process and you think all modules have been loaded by the game (probably ingame or user input) call CEInitialize and give it the processid and processhandle so it can start gathering module data and symbol data while you are doing other stuff.
when you are ready to inject a script use CEAutoAsm, the first parameter receives the pointer to the script in ASCIIZ form. The second parameter is a boolean defining if it is a enable or a disable script. If no enable or disable, set it to true. the 3th parameter recevies a POINTER TO a integer that receives the allocid. The allocid is used later to disable a script. (without it the disable command will fail)
when it fails check the debug strings for more info
when it fails because it couldn't find a module or symbol use CEReloadSymbolsAndModules or CEReloadModuleListOnly (The modulelistonly is fastes if only modulenames are used in the script and no symbols)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -