冰楓論壇
標題:
技能注入求助
[打印本頁]
作者:
ningmeng
時間:
2022-4-16 01:02
標題:
技能注入求助
代码是我自己拼接的,找了个hook点,使用后,游戏直接闪退了。
小弟想求助各位大佬
1.帮忙看一下这一段代码错在了哪里?
2.是不是要alloc一块内存,然后 lea rsp,[申请的内存]?
3.类似mov [rsp+58],r12d 这种,是不是可以直接写成 mov [rsp+58],00000000,不再从 r12d中取值了?
//TwMS V242.1
SkillIn:
push eax
push r8d
push r9
call 143978B80
mov r8d,eax
sub r8d,[Timer]
cmp r8d,[Delay]
jl SkillInMY_Exit
mov [Timer],eax
mov rbx,[145A511A8]
mov rcx,[145A50C10]
call 143B8A960
mov r8d,[skillid]
mov dword ptr [rbx+0001FF34],r8d
mov r8d,[rbx+0001FF34]
lea r9,[rsp+00000100]
mov rcx,[145A50C08]
mov rdx,r15
mov [rsp+38],00000001
mov [rsp+30],r12d
mov [rsp+28],r12d
mov [rsp+20],r12d
mov [rsp+00000100],r12
call 1407F74D0
mov rdx,[rsp+00000100]
xor r9d,r9d
mov [rsp+000000A8],r12l
mov r8d,edi
mov [rsp+000000A0],r12
mov rcx,rbx
mov [rsp+00000098],r12l
mov [rsp+00000090],r12d
mov [rsp+00000088],r12d
mov [rsp+00000080],r12l
mov [rsp+78],r12d
mov [rsp+70],r12d
mov [rsp+68],r12l
mov [rsp+60],r12d
mov [rsp+58],r12d
mov [rsp+50],r12d
mov [rsp+48],r12d
mov [rsp+40],r12d
mov [rsp+38],r12
mov [rsp+30],r12d
mov [rsp+28],r12d
mov [rsp+20],r12d
call 14372C730
SkillInMY_Exit:
pop eax
pop r8d
pop r9
jmp 原地址
複製代碼
作者:
仁二
時間:
2022-4-26 11:19
push eax
push r8d
push r9
sub rsp,118 // 这里先申请一段rsp空间 因为你下面调用的call需要
//开始调用你需要的内容
mov rcx,[xxx]//在这里你就要确保一下rsp是否 16字节对齐了 不然可能调用到一些会飞游戏
call 技能攻击//
add rsp,118 //还原rsp
pop eax //还原摆放顺序错了。。这里应该放pop r9
//(还有eax一般情况下不需要保护 除非hook的位置需要)
pop r8d
pop r9 //这里是你首次push的 则pop eax(现在一般都是rax你push eax默认也会帮你改成rax?)
回复一下 第二个问题
2.是不是要alloc一块内存,然后 lea rsp,[申请的内存]?
这个的话 我有尝试过 似乎不用游戏范围内的rsp另外有检测 不能乱写。。
就按照上面说的sub rsp,xx来申请空间就行 用完记得add回来
歡迎光臨 冰楓論壇 (https://bingfong.com/)
Powered by 冰楓