【技术入门】asm内联调用CALL

admin 2022年7月13日09:23:37评论40 views字数 650阅读2分10秒阅读模式

致力于分享游戏安全技术,提供专业的游戏安全资讯   

游戏外挂想要调用游戏功能的时候

往往有三种方式

 

第一种是鼠标键盘模拟,这种方式效率低

第二种通过__asm内联调功能子程序

第三种直接发包,本质也是第二种,不过是调用特点的一个子程序或则API

 

我们来看一下__asm内联

之前我们找到了取对象名称子程序

【技术入门】asm内联调用CALL

那么我们就把他编写到DLL代码中

 

 

首先我们声明一下

【技术入门】asm内联调用CALL

 

然后我们来编写这个函数

 

【技术入门】asm内联调用CALL

 

 

__asm

{

pushad

mov ecx,对象

       push ecx

mov eax,Call地址

call eax

add esp,4

mov 返回值,eax

popad

 

}

注意内联汇编的格式

然后在内联汇编的第一句加上pushad  和最后一句加上popad

保存和还原寄存器的值,防止产生错误。

 

其余部分和在OD中的代码几乎一样

值得注意的是

CALL尽量不要直接CALL地址而是用寄存器转存一下

 

 

这样就可以在我们需要用到这个函数的时候直接调用了

 

【技术入门】asm内联调用CALL 

 

传递对象  返回我们要的对象字符串指针

读取里面的值获得名称字符串。




来源:通化程序员-公众号投稿

*转载请注明来自游戏安全实验室(GSLAB.QQ.COM)

近期精品文章:


【游戏漏洞】RPG游戏NPC数组链表嵌套结构

【游戏漏洞】棋牌游戏BUG分析之控制其他玩家炮倍

【游戏漏洞】RPG游戏通过选中怪物得到怪物NPC遍历

【游戏漏洞】Dnf游戏漏洞挖掘第4期 全屏秒杀+远程CALL



投稿文章:[email protected]

【技术入门】asm内联调用CALL

原文始发于微信公众号(游戏安全实验室):【技术入门】asm内联调用CALL

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年7月13日09:23:37
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【技术入门】asm内联调用CALLhttp://cn-sec.com/archives/1066469.html

发表评论

匿名网友 填写信息