c++ 植物大战僵尸中文版call源码

创建僵尸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 :不能丢
还有就是取址指令只能用十六进制的值这样写起来维护很麻烦!
猜想: 我在想是不是可以先用读内存吧值读出来再赋值给寄存器。不然只能传十六进制的值相当于只能写死或者要再写一个转换函数。

猜你喜欢

转载自blog.csdn.net/qq_35189120/article/details/82085969
今日推荐