|
[求助]如何设置菜单消息断点???
老兄,视频里面没有录你是怎么个下断点的哦,光一个下完断点之后的演示呀 |
|
|
|
|
|
[求助]如何设置菜单消息断点???
雨兄:你的全部常数在哪里??到处找遍了也没这个菜单,能否详细一点那?多谢 我在网上找到这么一篇文章讲菜单消息断点的。 一种效果很好的菜单消息断点(菜单响应函数)的定位方法 2009-06-14 09:54 对于菜单响应函数的定位,从pediy(看雪)论坛很多的文章来看, 都是说通过MSG==WM_COMMAND或者[ESP+8]==0111 (wm_command的宏定义对应0x111)。 本人也是这样尝试:od(ollydbg,ollyice)载入exe,首先点击工具条“W”图标,在最上窗体上面右键, 选择“切换断点”,然后点击工具条“B”,修改条件为“[ESP+8]==WM_COMMAND”, 再F9全速运行,结果总是断不下来。 如果去掉条件“[ESP+8]==WM_COMMAND“,则可以断下来,但是只要切换窗口, 那么太多的消息都被断下来了。 看来这种方法不行(或者我没有正确使用?请大家指教)。 郁闷。。。。。。 偶然搜得一篇文章,受到启发,现将方法总结如下: 1.reshacker查看要截获菜单响应函数的exe的资源,找到对应菜单的id(最后一个10进制数字就是:这儿假设32852,对应0x8054) 2.od载入exe,并f9全速运行 3.启动winhex,菜单“tool”->"open ram",选择这个exe进程,展开,再次选择这个exe,就打开了运行的改进程内存, 4.winhex搜索,菜单“search”->"find hex value",输入查找“5480”(第一步中0x8054在内存表示),找到如下特征即就是响应函数地址:连续两个0x8054后第8个位置开始的4byte即为响应函数地址(记得看的话要颠倒byte位置)。 (如果有多种这种情况,请看下地址是不是004开头的)。 5.od找到对应的代码,f2设置断点 6.操作该菜单,则应该断下来了。 我按他的步骤,唯一不同是我在IDA里面搜索ID的,这应该和winhex搜索是一样的吧,结果搜不到连续两个ID的字串,郁闷啊 |
|
[讨论]对看雪很失望
呵呵,楼主被整惨了 |
|
[讨论]有没有一个这这样的工具
beyondCompare也有文本比较功能的 |
|
|
|
[求助]一个大学生的迷茫
赞同楼上的观点,JAVA我研究一年多,看了N多书,最终选择放弃,因为大多数是做UI的,我们又没有能精到特别的地步。建议学好VC开始,用途广 |
|
[求助]我还要继续自己的理想吗?
楼主,我很能理解你!!偶也是,慢慢积累,伺机待发吧 |
|
[求助]反汇编中几个指令如何解释呢
我觉得非常难以区分哪些call应该看进去哪些不用看,经常有下面这条指令: call __EH_prolog3 跳到函数所在处,函数是: text:007A87C5 __EH_prolog3 proc near ; CODE XREF: sub_401000+7p .text:007A87C5 ; .text:00401083p ... .text:007A87C5 .text:007A87C5 arg_0 = byte ptr 4 .text:007A87C5 .text:007A87C5 push eax .text:007A87C6 push large dword ptr fs:0 .text:007A87CD lea eax, [esp+8+arg_0] .text:007A87D1 sub esp, [esp+0Ch] .text:007A87D5 push ebx .text:007A87D6 push esi .text:007A87D7 push edi .text:007A87D8 mov [eax], ebp .text:007A87DA mov ebp, eax .text:007A87DC mov eax, dword_A489D0 .text:007A87E1 xor eax, ebp .text:007A87E3 push eax .text:007A87E4 push dword ptr [ebp-4] .text:007A87E7 mov dword ptr [ebp-4], 0FFFFFFFFh .text:007A87EE lea eax, [ebp-0Ch] .text:007A87F1 mov large fs:0, eax .text:007A87F7 retn 按F5键翻译成C语言: int *__usercall _EH_prolog3<eax>(int a1<ebp>, char a2) { signed int r; // [sp+0h] [bp+0h]@1 int v4; // [sp-8h] [bp-8h]@1 *(_DWORD *)&a2 = a1; r = -1; return &v4; } 看不明白做了些什么事情,似乎翻译的C语言很难看懂,困惑啊 |
|
[分享]为求邀请码而拿出珍藏的东东:黑基VIP资源分享下载
支持一下,收藏了,以备不时之需 |
|
[分享]明天就要转正了,真不容易啊。。
分享一下,恭喜啊,偶刚刚开始熬 |
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值