Difference between revisions of "Template:Asm:CustomRegenUsingPtrs"
(Created page with 'Category:Scripting ===Using Pointers=== ''we all love pointers'', ''they have multiple uses''. ''note that the script might not be injected in 32 bit processes'', ''unless y…') |
|||
Line 3: | Line 3: | ||
===Using Pointers=== | ===Using Pointers=== | ||
''we all love pointers'', ''they have multiple uses''. ''note that the script might not be injected in 32 bit processes'', ''unless you remove push 03E8 and call Kernel32.Sleep''. | ''we all love pointers'', ''they have multiple uses''. ''note that the script might not be injected in 32 bit processes'', ''unless you remove push 03E8 and call Kernel32.Sleep''. | ||
− | ''keep in mind you need to specify the data type if your value is a floating point value'', ''add [edx],01 is not the same as | + | ''keep in mind you need to specify the data type if your value is a floating point value'', ''add [edx],01 is not the same as add [edx],(float)1.0''. |
Latest revision as of 09:35, 3 February 2018
Using Pointers[edit]
we all love pointers, they have multiple uses. note that the script might not be injected in 32 bit processes, unless you remove push 03E8 and call Kernel32.Sleep. keep in mind you need to specify the data type if your value is a floating point value, add [edx],01 is not the same as add [edx],(float)1.0.
[enable]
alloc(ReGen,$100)
registersymbol(ReGen)
createthread(ReGen)
label(return)
label(exit)
registersymbol(exit)
ReGen:
push 03E8
call Kernel32.Sleep
cmp byte ptr [exit],00 // add exit to your address list, default is '1' change it to '0' if you want to stop the regeneration.
jz return
lea edx,[[[[[["Executable.exe"+00123ABC]+4]+56]+0]+789]+DEF]
cmp dword ptr [edx],64 // say your health limit is 4-byte '100' once your health goes below '100' it will regenerate health
jz ReGen
add [edx],01
jmp ReGen
return:
ret
exit:
db 01
[disable]
dealloc(ReGen)
unregistersymbol(ReGen)
unregistersymbol(exit)