创建僵尸call
void createMonsterCall(){
DWORD dwjz = 0x042A0F0;
_asm{
pushad
mov ecx, dword ptr ds : [0x06A9EC0]
mov ecx, dword ptr ds : [ecx + 0x768]
mov ecx, dword ptr ds : [ecx + 0x160]
mov eax, 1//y
push 1//x
push 1//种类
call dwjz
popad
}
}
种植call
void createPlanCall(){
DWORD dwz = 0x040D120;
_asm{
pushad
push - 1
push 2 //植物类型
mov eax, 1//y
push 3//x
mov ebx, dword ptr ds : [0x06A9EC0]
mov ebx, dword ptr ds : [ebx + 0x768]
push ebx
call dwz
popad
}
}
我这个call使用远线程注入的,写call有严格的规范,dword ptr ds :不能丢
还有就是取址指令只能用十六进制的值这样写起来维护很麻烦!
猜想: 我在想是不是可以先用读内存吧值读出来再赋值给寄存器。不然只能传十六进制的值相当于只能写死或者要再写一个转换函数。