-
-
[旧帖]
[求助]不知哪儿错了
0.00雪花
-
发表于:
2009-11-17 05:29
1339
-
GetNameOffset proc psp ;psp中放的是PsGetCurrentProcess返回的_eprocess指针
local tmpOffset ;定义局部变量
pushad
mov ebx, psp ;把_eprocess指针放到ebx中
xor ecx, ecx ;ecx清空,准备循环变量
@@:
push eax
push ecx
invoke strncmp, $CTA0("System"), ebx, eax ;比较指针处字符是否为"system"
pop ecx
.if !eax ;如果0,即相等
pop eax
mov tmpOffset, ecx
popad
mov eax, tmpOffset ;保存结果
ret
.elseif
pop eax
inc ebx ;指针加1
inc ecx ;循环加1
cmp ecx, 4096 ;到进程全完
je @F
jmp @B
.endif
@@: ;错误处理
popad
mov eax, -1
ret
GetNameOffset endp
小弟做成驱动后老返回-1,不知错哪儿,请大侠们指出,不胜荣兴.
[课程]FART 脱壳王!加量不加价!FART作者讲授!