时间紧,我不想说太多了,看文章前先确保你有过研究天龙的经验
(注意抠紧我的每一个字,不然你的头会变大)
OD附加 bp send 打坐,断下
02D74C48 0B 00 1A 00 00 91 00 00 80 BF 23 00 FF FF FF FF
02D74C58 DA 74 00 00 FF FF FF FF 00 00 80 BF 00 00 80 BF
23是打坐的技能号,以前我也说过

在23那里下内存写入断点,回游戏里打坐,OD断在005545A9处,原来是串传送指令,看了一下中间的窗格,发现23是从[esi]=[0012FC20]传过来的,接下来我们把目标放到0012FC20上。

再重来一次,继续在23那里下断,断下后按N次ctrl+f9

直到停在Call 004247B0 的返回处,我们不知道004247B0这个函数是干什么的,但有一点时肯定的,
函数004247B0()
{
Mov [0012FC20],[xxx]
}

我们来看一下004247B0内部世界

在函数004247B0的第一句那里下断,回到游戏里打坐,游戏如我们所愿断了下来,注意了,一边步过每一句,一边观察[0012FC20] (别问我在那里看0012FC20),

直到步过0042490C Call 004243B0时,[0012FC20]变成了23,呵呵,是不是思路有点乱了?没关系,我们来整理一下,

函数004247B0()
{
Call 004243B0
Mov esi, 0012FC20
rep movs byte ptr es:[edi],byte ptr[esi] //串传送23至发包缓冲区
send(...)
}

函数004243B0()
{
Mov [0012FC20],[xxx]
}

明白不?我们接下来要揭开xxx的神秘面纱。
要跟进004242B0吗?你可以跟进去,但我在这里要偷懒一下
在0042490C Call 004243B0上面看到一句movsx edx,word ptr[esi+84]
我们来断这句看看(你会问为什么要断这一句?答:没什么,累了娱乐一下)

回到游戏里打坐,断下了,我们看看中间的窗格,[053FE09C]=0023,恩有搞头。思路又乱了?我们再整理

函数004247B0()
{
Call 004243B0
Mov esi, 0012FC20
rep movs byte ptr es:[edi],byte ptr[esi] //串传送23至发包缓冲区
send(...)
}

函数004243B0(传地址053FE09C)
{
Mov [0012FC20],[053FE09C] //[053FE09C]=0023
}

猜一下,xxx就是053FE09C,不信的话跟进函数004243B0里看看

我们看看是什么东西改变了[053FE09C],在053FE09C处下内存写入断点

回到游戏里打坐(又打坐啊,烦不烦,快成佛了~~)

断在00423A27 mov word ptr [esi+84],ax 看看中间窗格,你的明白?
ctrl+f9一次执行到返回

OK,看到了打坐的原貌了

函数004247B0()
{
Call 004243B0
Mov esi, 0012FC20
rep movs byte ptr es:[edi],byte ptr[esi] //串传送23至发包缓冲区
send(...)
}

函数004243B0(传地址053FE09C)
{
Mov [0012FC20],[053FE09C] //[053FE09C]=0023
}

打坐(...,23,...)
{
mov [053FE09C], 23
ret
}

完结。

转载于:https://www.cnblogs.com/rogee/archive/2010/10/11/1847948.html

有谁还不会找技能Call跟我来(以打坐为例子)相关推荐

  1. 游戏测试需要学什么软件有哪些内容,除了会玩游戏之外,作为游戏测试还需要具备哪些“技能”?...

    每个游戏作品都希望呈现出最美的游戏体验,有一种职业在除了游戏设计和策划的工作之外,为玩家的游戏体验保驾护航--游戏测试. 游戏测试仅仅是玩游戏吗?除了会玩游戏之外,作为游戏测试还需要具备哪些" ...

  2. 还在苦恼找素材?实用平面设计素材网站

    听说你在学设计? 什么! ! 你还在苦恼找素材 平面设计素材网站帖 让你从此不担心 集设网 网站网址:www.ijishe.com 推荐理由: 专为设计师而生的设计交流平台;专注创意设计分享与设计技术 ...

  3. 阿里P8大神:30岁还靠简历找工作的都是垃圾,一律不要……

    如果说回望一下2019年,不得不说这一年大家的面试经历都别是一番滋味在心头! 最近在互联网匿名社区看到这样一个帖子:员工去大公司面试被"秒拒",面试官:30岁还靠简历找工作的都是垃 ...

  4. php找出字符串不同地方,PHP中比较两个字符串找出第一个不同字符位置例子

    PHP中比较两个字符串找出第一个不同字符位置例子 一般的做法就会这样: 复制代码 代码如下: for ($offset = 0; $offset < $length; ++$offset) { ...

  5. 还在网上找Demo?这个Java项目真香!

    我前几天专门去网上搜集项目,打算找一些分享给大家用来实践. 但找了一圈发现,网上的项目都比较旧,业务也有些过时,再有就是一些特别大型的项目,不适合初学者做. 不过,我最终还是发现了1个免费的Java训 ...

  6. 除了敲代码,程序员还需要哪些必备技能?

    良好的写作水平,是个被严重低估的软件工程师必备技能! 作者 | Gergely Orosz,软件工程经理 译者 | 弯月,责编 | 郭芮 出品 | CSDN(ID:CSDNnews) 以下为译文: 自 ...

  7. 今天才发现!通过微信左下角,还可以快速找到未读消息

    如今最常用的聊天工具非微信莫属,相信大家每天都会使用微信和朋友联络感情. 但是用了这么多年微信,你知道微信左下角的隐藏小技巧吗?非常实用便捷哦. 贴心悬浮窗 微信不止是可以聊天,很多朋友都喜欢看微信公 ...

  8. 你还在为找工作发愁嘛?最新前端高频面试题(适合应届生),拿走不谢!

    HTML.CSS相关 盒子模型: 一个盒子可以分成四个部分:外边距,边框,内边距,内容 默认情况下,盒子的width和height属性只是设置content(内容)的宽和高 盒子真正的宽应该是:内容宽 ...

  9. [展览人秘籍]除了展会会刊(参展商名录)还能这样找客户

    咳咳,雪妹纸一周课堂开课啦~~ 之前跟大家分享过华展云找会刊的一些小技巧,还记不记得啊,来个闪现   ,找会刊跟找企业虽说都是找展商,但是是两个不同的功能哦, 查找的针对性也是不一样的,找会刊主要是根 ...

最新文章

  1. 第二十五章 面向对象------封装、内置函数、反射、动态导入
  2. 洛谷 P3128 [USACO15DEC]最大流Max Flow
  3. java异常_Java的异常体系
  4. mysql 分库分表 ~ 柔性事务
  5. windows.onload和body的onload属性的区别
  6. layui上传文件请求接口异常_SpringMVC实现文件上传与下载,拦截器,异常处理
  7. npm的常用操作---npm工作笔记003
  8. hbuilder新建web apk项目_【CUCS】Ionic利用你喜欢的(html css js) web技术创建跨平台的移动app...
  9. FormatMessage函数
  10. Android版本历史变迁
  11. 数据结构C语言版 学习整理
  12. 555定时器产生对称三角波电路
  13. 推荐电影 迪士尼经典动画片大全 1937-2008
  14. 虚拟机虚拟磁盘文件格式转换
  15. php首字母改大写,php实现字符串首字母转换成大写的方法
  16. Apollo学习笔记(19)UKF
  17. 人脸识别 ArcFace 实现
  18. LeetCode刷题之575.分糖果
  19. python编辑七段数码管引脚图_少儿Python程序第十二讲:单片机控制数码管
  20. 创建父需求子需求构建需求树_用pc构建DIY计算集群(超级计算机)

热门文章

  1. Redis 主从配置和参数详解
  2. Nagios—服务和性能监控
  3. Jenkins插件之VShpere Cloud
  4. Java开发必须掌握的线上问题排查命令
  5. 云计算或将逐步被认可
  6. react进阶系列 - 高阶组件详解四:高阶组件的嵌套使用
  7. Linux网络性能评估工具iperf
  8. Lucene+Tika 文件索引的创建与搜索
  9. echop红包发放规则添加
  10. WINDOWS SERVER 2003从入门到精通之使用证书在WEB服务器上设置SSL(下)