吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1822|回复: 4
收起左侧

[求助] 汇编proc uses 的问题

[复制链接]
zmbilx 发表于 2019-11-3 12:38
-_resultProcMain   proc  uses ebx edi esi hProcessModuleDlg:HWND,wMsg,wParam,lParam
_resultProcMain   proc  uses ebx edi esi hProcessModuleDlg:HWND,wMsg,wParam,lParam

<hr>
这句汇编代码看不懂后面的 uses ebx edi esi hProcessModuleDlg:HWND,wMsg,wParam,lParam,use后面直接跟寄存器,是让它压栈,但是后面为什么又加一个HWND类型的hProcessModuleDlg,而且use后面的wMsg,wParam,lParam这三个参数也和use后面的四个参数个数不等啊,这个函数到底取了几个参数,每个参数是什么,很迷啊

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

klamauk 发表于 2019-11-3 16:50
逗号的问题它格式就是这样。uses后面的寄存器跟参数无关。
uses ebx edi esi这句编译器会自动帮你在函数的开头写上push ebx push edi push esi,
然后在函数退出前pop ebx pop edi pop esi.目的就是保护寄存器原来的值。
klamauk 发表于 2019-11-3 15:21
uses ebx edi esi是让编译把这几个寄存器压栈和出栈。这个函数有4个参数,hProcessModuleDlg:HWND,wMsg,wParam,lParam。
只不过第一个参数指定了类型是HWND,其它3个默认DWORD。
 楼主| zmbilx 发表于 2019-11-3 16:33
klamauk 发表于 2019-11-3 15:21
uses ebx edi esi是让编译把这几个寄存器压栈和出栈。这个函数有4个参数,hProcessModuleDlg:HWND,wMsg,w ...

可是逗号为什么不在esi后面啊,却在HWND后面,我看格式是label PROC [attributes] [USES reglist], parameter_list这样的。还有一个问题 是后面参数与前面的uses后面的寄存器没有关系吗?
 楼主| zmbilx 发表于 2019-11-3 17:01
klamauk 发表于 2019-11-3 16:50
逗号的问题它格式就是这样。uses后面的寄存器跟参数无关。
uses ebx edi esi这句编译器会自动帮你在函数的 ...

恩恩,了解啦了解啦,谢谢您的热心解答
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 14:47

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表