hahacker 发表于 2015-6-26 12:02:07

push窗口怎么找

本帖最后由 hahacker 于 2015-6-26 12:06 编辑

用E-debug抓取事件
→开始调试←
触发窗口:5201C13C→触发控件:1601C2E2
控件名称:时钟3→事件地址:42FA96
-------------点了登陆按钮之后--------
触发窗口:5201C13C→触发控件:1601C151
控件名称:编辑框_帐号→事件地址:416710
-------------------------------
触发窗口:5201C13C→触发控件:1601C151
控件名称:编辑框_帐号→事件地址:41486A
-------------------------------
触发窗口:5201C13C→触发控件:1601C151
控件名称:编辑框_帐号→事件地址:41486A
-------------------------------
触发窗口:5201C13C→触发控件:1601C151
控件名称:编辑框_帐号→事件地址:416710
窗口是5201C13C,但是点了登陆按钮之后,却触发了两个断点,
这就很奇怪了,应该是一个事件地址才对啊,我比较了下两处
地址的代码,基本上一样的,只是有个别地址push xxx,不一样
那么怎么确定到底调用的是哪个呢??而且怎么可能调用两个地址呢?
用FF 55 FC 5F 5E来下断,但是貌似程序是有个定时器的,不停的
自动在这个位置下断,目的就是防止人为的在这个地址下断。
所以我提前先打开程序,用PCHunter32把时钟去掉,之后再附加,但是
这样的程序基本上是卡死的,再下断好像也不太好使,像这样的如何解决?

第二个问题。。
因为软件是可以注册帐号试用进去的,所以我注册了个帐号进入主界面,再用
e-debug看了下,它的窗口是52010001, 所以我直接在程序里查找
push 0x5201C13C, 查找如下:
0040A57D    68 02000080   push 0x80000002
0040A582    6A 00         push 0x0
0040A584    68 00000000   push 0x0
0040A589    6A 00         push 0x0
0040A58B    6A 00         push 0x0
0040A58D    6A 00         push 0x0
0040A58F    68 01000100   push 0x10001
0040A594    68 3DC10106   push 0x601C13D
0040A599    68 3CC10152   push 0x5201C13C   //就是这个
0040A59E    68 03000000   push 0x3
0040A5A3    BB A0455000   mov ebx,Terminat.005045A0
0040A5A8    E8 A2990F00   call Terminat.00503F4F

我是想,连点击登陆铵钮都省了,直接打开的就是主窗口,所以打补丁push 0x5201C13C
改为push 0x52010001
但是运行之后,是能进入主窗口的,但是也时也弹出了如下图的错误,请问问题出在哪儿啊?
http://attach.52pojie.cn/forum/201506/25/212638yysavkvv9smzmls6.png

第三个问题,对于这种FF25之后在JMP上面没有push 0x520xxx的这种,应该是隐藏掉了,如何push呢?
上传一下程序:http://pan.baidu.com/s/1gdzsk5l 求各路高手指点,谢谢。

hahacker 发表于 2015-6-26 12:06:54

为什么发个贴子,出现呢?弄不掉了。哎。
页: [1]
查看完整版本: push窗口怎么找