|
20精币
当调用一个函数时,分配寄存器给函数使用,当发现寄存器不够用时,有一个专门的寄存器指针指向一个特定的内存,然后把所有寄存器的值push到这个指针的位置上去,再把寄存器给函数使用。函数返回时,再从这个特定的内存中把原先寄存器的值pop回寄存器。
[e]
.版本 2
.程序集 窗口程序集1
.程序集变量 ctx, Cttop
.程序集变量 APIHOOK_MessageBoxA, APIHOOK类
.程序集变量 Hotkey, 整数型
.程序集变量 Move, 整数型
.程序集变量 单选框标志位, 整数型
.子程序 _M_Table, 整数型
.参数 KePoint, 整数型
.判断开始 (Dump (Dump (KePoint) + 12) = 7595991) ' 每次换这里。也就是新的基质的十进制’
写到内存 (7596019, Dump (KePoint + 4) + 184, ) ' ‘每次换这里。也就是新的基质的十进制 +28 的十进制。
返回 (#CI)
.默认
.判断结束
返回 (#HI)
.子程序 __启动窗口_创建完毕, , , 不要动。
.如果真 (取现行时间 () > [2013年1月19日4时7分29秒])
结束 ()
.如果真结束
.判断开始 (Func1 (9798408, “::...::::”) ≠ 400948916)
结束 ()
.默认
This句柄 = 0
.判断结束
SusEagleXnt (9798408, “::.”)
APIHOOK_MessageBoxA.安装APIHOOK (“user32.dll”, “MessageBoxA”, 到整数 (&MyMessageBoxA))
This句柄 = PUSH (&_M_Table)
.如果 (This句柄 ≤ 1)
结束 ()
.否则
.如果结束
.子程序 _卡气_被单击
.判断开始 (卡气.选中 = 真)
ctx.ContextFlags = 65599
BtcIo (GetCurrentThread (), ctx)
ctx.Dr2 = 7595991 ' 每次换这里。也就是新的基质的十进制’
ctx.Dr7 = 1109
ctx.ContextFlags = 65599
VtcIo (GetCurrentThread (), ctx)
.默认
ctx.ContextFlags = 65599
BtcIo (GetCurrentThread (), ctx)
ctx.Dr2 = 0
ctx.Dr7 = 1109
ctx.ContextFlags = 65599
VtcIo (GetCurrentThread (), ctx)
.判断结束
.子程序 MyMessageBoxA, 整数型
.参数 hWnd, 整数型
.参数 lpText, 文本型
.参数 lpCaption, 文本型
.参数 uType, 整数型
.局部变量 返回值, 整数型
.局部变量 参数, 整数型, , "0"
.局部变量 参数数目, 整数型
.局部变量 函数地址, 整数型
.局部变量 动态调用代码, 字节集
返回 (返回值)
.子程序 __启动窗口_可否被关闭, 逻辑型
ResEagleXnt (9798408, “::.”)
结束 ()
返回 (真)
[/e]
补充内容 (2012-3-18 10:48):
QQ735312642 |
|