ixiadao 发表于 2021-3-12 03:26:59

类_HOOKAddr BUG

模块版本:7.6
.版本 2

.子程序 取寄存器, 整数型, 公开, 取出寄存器
.参数 寄存器, 文本型, 可空, 空为取eax 不分大小写
.局部变量 指针, 整数型

.如果真 (是否为空 (寄存器) 或 到小写 (寄存器) = “eax”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).EAX
.如果真结束
.如果真 (是否为空 (寄存器) 或 到小写 (寄存器) = “ebx”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).EBX
.如果真结束
.如果真 (是否为空 (寄存器) 或 到小写 (寄存器) = “ecx”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).ECX
.如果真结束
.如果真 (是否为空 (寄存器) 或 到小写 (寄存器) = “edx”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).EDX
.如果真结束
.如果真 (是否为空 (寄存器) 或 到小写 (寄存器) = “esp”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).ESP
.如果真结束
.如果真 (是否为空 (寄存器) 或 到小写 (寄存器) = “ebp”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).EBP
.如果真结束
.如果真 (是否为空 (寄存器) 或 到小写 (寄存器) = “esi”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).ESI
.如果真结束
.如果真 (是否为空 (寄存器) 或 到小写 (寄存器) = “edi”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).EDI
.如果真结束
返回 (指针)




不知道这个代码是谁写的,如果真会每个都判断一次,建议:改成“判断”,同时每个判断下来,参数留空的话,默认值应该是最后一个“EDI”?。
下面是我临时改动的,请参考

.版本 2

.子程序 取寄存器, 整数型, 公开, 取出寄存器
.参数 寄存器, 文本型, 可空, 空为取eax 不分大小写
.局部变量 指针, 整数型

.判断开始 (是否为空 (寄存器) 或 到小写 (寄存器) = “eax”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).EAX
.判断 (到小写 (寄存器) = “ebx”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).EBX
.判断 (到小写 (寄存器) = “ecx”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).ECX
.判断 (到小写 (寄存器) = “edx”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).EDX
.判断 (到小写 (寄存器) = “esp”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).ESP
.判断 (到小写 (寄存器) = “ebp”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).EBP
.判断 (到小写 (寄存器) = “esi”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).ESI
.判断 (到小写 (寄存器) = “edi”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).EDI
.默认

.判断结束

返回 (指针)






ixiadao 发表于 2021-3-12 03:29:59

这个论坛也有BUG吧?我上下两个代码明明是不一样的,怎么显示的是一样的????

.版本 2

.子程序 取寄存器, 整数型, 公开, 取出寄存器
.参数 寄存器, 文本型, 可空, 空为取eax 不分大小写
.局部变量 指针, 整数型

.判断开始 (是否为空 (寄存器) 或 到小写 (寄存器) = “eax”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).EAX
.判断 (到小写 (寄存器) = “ebx”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).EBX
.判断 (到小写 (寄存器) = “ecx”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).ECX
.判断 (到小写 (寄存器) = “edx”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).EDX
.判断 (到小写 (寄存器) = “esp”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).ESP
.判断 (到小写 (寄存器) = “ebp”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).EBP
.判断 (到小写 (寄存器) = “esi”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).ESI
.判断 (到小写 (寄存器) = “edi”)
    指针 = HOOKaddr.读值 (回调数据.返回地址).EDI
.默认

.判断结束

返回 (指针)

揰掵佲 发表于 2021-3-13 10:31:29

这份代码,忘记是什么时候写的.这个写法下个版本优化一下.
代码显示这个问题,是一个后台插件,这个插件本身有BUG,抽空修复一下
页: [1]
查看完整版本: 类_HOOKAddr BUG