易语言x64位调用call函数与 分析64位call技术

上两篇易语言对x64位进程操作的技术贴发出后,因为得知我们 Game-Ec 驱动模块8.5.3里
开发了对x64程序进程里的模块,API取地址,内存读写,内存搜索,函数hook,call函数调用等诸多命令功能后,很多写64位游戏辅助的学员激动不已。

因为这些功能预示着写64位游戏辅助不用换其他语言来写了,有了这次版本里加入的各种x64功能,易语言可以完美的开发64位游戏内存辅助了,因为可以读写内存数据,可以HOOK,可以内存搜索,最关键的是还可以远程调用x64程序进程里的指定call执行x64汇编代码。

今天就来示范讲解下这次我开发加入的 调用64位程序进程里的call的命令:
x64进程_调用函数()
这个命令有两个参数,
进程ID //目标x64位进程ID
x64汇编 //执行call的x64汇编代码

这个命令,之前一直不够稳定,所以一直测试,后来经过黑,色,衬,衣他的改良修改指点,现在完美了
({:101_195:}都怪黑色,衬,衣他太忙,不然这篇帖子能早出,哈哈)。

写法和我们已经出版的系列辅助视频教程啊教的写32位程序CALL一样简单。

首先我用vs2020写了个64位程序(mfcapplication1.exe),来作为示范用(当做64位的游戏)
布局:

程序源代码:

这个64位程序,主要功能就是构建了一个call功能:add ( ) 加法函数
然后计算出2个数的和
首先我们要来逆向分析下我写的这个X64位程序,找出我们要调用的CALL,
既然是64位程序,当然就需要个64位DUG调试工具(类似我们的OD)
我用的是 x64dbg.exe

附加我的64位程序:mfcapplication1.exe 后
我们在x64dbg.exe 工具命令栏目输入 bp MessageBoxA 来对 信息框API进行函数断点,因为方便定位,我就在源码里加了 MessageBoxA 信息框
这样我们单击 确定 按钮时候 就会断下来,然后好快速分析到 我们这个64位示范程序的 确定 按钮call函数
找到了这里:

从上面反汇编代码 右边的注释来看,有我们信息框的标题和内容字符,可以肯定现在我们断在了 MessageBoxA 调用位置。
但是我们要找的是 确定 按钮CALL,所以应该在这个call的上一层,所以返回上一层看看
来到了:

经过F2设置断点后,运行示范程序mfcapplication1.exe,点击确定按钮会被断下来,而且测试几次所mov的几个寄存器的值也是固定的不改变
所以这个应该就是我们要找的 确定 按钮call,
梳理这个call的代码为:
mov rax,000000013F8DAB90
mov rcx,000000000028F020
mov rax,000000013F8DAB90
call 13F8E7EF8
接下来就是写调用它的易语言代码了
因为我们的辅助是用易语言写,代码很简单
如下:

调用call的:

sub rsp,38
。。。。。。。
。。。。。。。

add rsp,38
ret
上面代码中的这开头和结尾这3句必须要写,因为x64汇编是必须写上的噢,否则会奔溃。

下面我们来看调用效果:

可以完美的调用64位程序(mfcapplication1.exe)进程里的指定CALL,好了,这节 就到这里。
更多易语言X64进程操作的技术到:http://bbs.dult.cn/forum.php?mod=viewthread&tid=24053 学习

易语言远程x64位汇编call技术相关推荐

  1. 易语言对x64进程卸载DLL技术(可卸载64位进程里DLL)

    易语言对x64进程卸载DLL技术(可卸载64位进程里DLL) 代码非常简单: 以上是注入和卸载的代码 下面示范64位游戏魔兽世界: 详细视频教程:链接: https://pan.baidu.com/s ...

  2. 易语言之X64位内存注入DLL技术

    说到易语言对64位进程注入dll方面, 虽然我们Game-EC模块里面已经有对64位程序进行注入dll的功能了,最近研究开发了另外一种对64位程序进程进行注入dll的功能,今天给大家带来的是最近开发的 ...

  3. 在易语言代码中嵌入汇编/机器码

    在易语言代码中嵌入汇编/机器码                    --"置入代码"的使用方法简介 作者:liigo 原文链接:http://blog.csdn.net/liig ...

  4. 易语言写64位魔兽世界游戏 寻路call 教程

    自从Game-EC 8.5.3 辅助模块 发布 开发 64位游戏内存,封包的功能后, 受到了很多写 64位游戏封包,内存辅助的爱好者喜爱 今天在新版本 Game-EC 里面 开发了一个 能调用64位游 ...

  5. 易语言远程线程注入DLL到游戏

    远程线程注入CreateRemoteThread通过获取注入目标进程的句柄,把我们的DLL注入到目标进程内存地址,远程线程的意思是另一个进程中的线程,并非远控的意思,也就是远程线程注入是指一个进程在另 ...

  6. 易语言单窗口单进程单IP技术

    今天给大家来讲解下,什么是单窗口进程单IP技术? 所谓单窗口进程单IP,就是指电脑上运行的每个游戏窗口进程都分配一个不同的IP来进行游戏 这项技术有什么用呢? 这项技术一般用于很多方面,当然既然在这讲 ...

  7. 易语言随机取a b c,易语言取随机数5-7位不重复并且排序的方法

    .版本 2 .支持库 spec .局部变量 a .局部变量 b .局部变量 c, 整数型 .局部变量 文本, 文本型 .局部变量 temp, 文本型, , "0" 置随机数种子 ( ...

  8. 汇编c 易语言编程软件,这些汇编用易语言怎么写?

    .版本 2 .支持库 TianSin .子程序 移动CALL_支持库 .参数 文本型数据X80, 文本型 .参数 文本型数据基础数据7C, 文本型 .参数 文本型数据H84, 文本型 .参数 文本型数 ...

  9. 易语言64位端游内存封包逆向教程介绍---传奇4实战(易全网首套)

    易语言是否支持64位游戏内存或者注入呢?当然是支持的.下面内容教大家如何用易语言 写内存和封包辅助. 技术声明:本教程只能用于计算机技术研究,不做其他用途,如果有疑问,可以联系我. 复习位内存汇编基础 ...

最新文章

  1. 某快手程序员爆料:给小厂随便投投简历,面试表现很差也能过,大厂背书确实有用!...
  2. 一文详解点云分割算法
  3. insightface mxnet训练horovod版
  4. ASP.NET MVC5使用Area区域
  5. HDU 5919 分块做法
  6. 李婷华 201771010113 《面向对象程序设计(java)》 第二周学习总结
  7. VUE3封装axios网络请求
  8. pytorch tensor.detach
  9. Component 父子组件关系
  10. ubuntu系统VNC服务器安装配置
  11. String、StringBuffer 与StringBuilder
  12. 【手写数字识别】基于matlab Fisher分类手写数字识别 【含Matlab源码 505期】
  13. size函数 matlab 含义,size()函数的使用
  14. 北斗垂莽苍 开闭天门路(上)
  15. 苹果开场铃声 android,为何苹果用户喜欢用手机默认铃声?原因在这4点,真是非常现实...
  16. A Morphable Model For The Synthesis Of 3D Faces 论文解析 3DMM
  17. 虚幻4地形怎么增加层_腾讯首款虚幻4沙盘战略手游上线:全面3D化
  18. 服务器和云虚拟主机,虚拟主机与云服务器各自适应什么样的人群?
  19. 程序员版孔乙己(故事小篇)
  20. 手机安装python jam有什么影响_Python入门用Bug修改和.jam文件需要注意的问题

热门文章

  1. [iOS]一个简单日历
  2. 【JavaScript】悬浮窗口
  3. xampp安装包(百度云)
  4. pytorch 报错“THCudaCheck FAIL file=/pytorch/aten/src/THC/THCGeneral.cpp line=663 error=11“解决方案
  5. 测试工程师如何帮助开发域的质量变好
  6. payload什么意思_代码参数里的 payload 是什么意思???
  7. 必备技能——Excel如何设置打印剧中
  8. cuckoo sandbox安装
  9. 连续性、间断点以及介值定理、最值定理和零点定理
  10. 灰度共生矩阵(Gray-level Co-occurrence Matrix,GLCM)