首页
社区
课程
招聘
[旧帖] [求助]vc6.0注入不能用ReadProcessMemory,内联汇编崩溃! 0.00雪花
发表于: 2011-2-5 16:49 1098

[旧帖] [求助]vc6.0注入不能用ReadProcessMemory,内联汇编崩溃! 0.00雪花

2011-2-5 16:49
1098
1.我注入一个游戏,回调函数是KeyboardProc,在dll里面显示调用,然后在dll里面定义的 KeyboardProc中使用
CWnd *pCWnd = CWnd::GetForegroundWindow();//函数返回前台窗口句柄指针(用户当前工作的窗口)。(第一步)
DWORD processid;//定义变量(窗口进程ID))。(第二步)   
GetWindowThreadProcessId(pCWnd->m_hWnd,&processid);(第三步)
m_proHandle=OpenProcess(PROCESS_ALL_ACCESS,false,processid);//打开窗口进程ID,获取窗口进程句柄(第四步)
m_proHandle是全局的变量,在一个xx.h中定义,并且调用ReadProcessMemory读出数据返回变量(第五步)  
现在的问题是,读出的变量是空值,第五步这步确定没有错,那么我觉得应该是。。。。我也不知道哪里错了,请比我懂的指正我!!谢谢

2.另外,我也想过用内联汇编,但是更悲剧的发现呼出外挂马上崩溃:
extern CString GetRoleName(){ //返回角色名 db [[[[CurRoleBase]+0c]+1b4]+4]+30
DWORD*data;
_asm{  
   //CurRoleBase   
   mov eax,0x775ad0
   mov eax,[eax]
   add eax,0x0C
   mov eax,[eax]
   add eax,0x1b4   
   mov eax,[eax]  
   add eax,0x04
   mov eax,[eax]   
   add eax,30  
   mov data, eax
}
CString str;
str.Format(_T("%s"), *data);
return str;
} //地址是正确的,游戏是ascii码!!喂神马啊!!!
ps:我是个菜鸟中的菜鸟,可是我好学,想说我笨就说吧,我能挺住!

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 437
活跃值: (110)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
2

期待答案
2011-2-5 18:45
0
游客
登录 | 注册 方可回帖
返回
//