挂海论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
 友情提示:文字/图片广告均非网站意见,请担保交易勿直接付款,由此产生的责任自负
玩游戏来117游戏网(H5不下载也能玩手游传奇,吃鸡,竞技都有)不懂社区·好资源不错过·各位资源站大佬欢迎来采集搬运寻找会做《单机》游戏修改器的开发作者长期合作,价格不是问题!联系QQ:1874088565
IOS签名/udid证书出售/送证书加群1040456405 ██【我要租此广告位】██.
.. .
查看: 2430|回复: 2
打印 上一主题 下一主题

[辅助源码] 关于cs2自动开枪的找法(2)

[复制链接]

15

积分

4

主题

7

听众
已帮网友解决0 个问题
好评
2
贡献
11
海币
1647
交易币
0
跳转到指定楼层
#
发表于 2024-10-2 16:01:32 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
提醒:若下载的软件是收费的"请不要付款",可能是骗子,请立即联系本站举报,执意要付款被骗后本站概不负责。(任何交易请走第三方中介,请勿直接付款交易以免被骗!切记).

友情提示:文字/图片广告均非本站意见,请担保交易勿直接付款,由此产生的责任自负!!!↑↑


(帖子太大,所以分开发)
二、寻找解密算法
也是f5看访问,然后随便点一条下断点,可以看到RAX是我们的准星索引
根据x64的调用约定,这个rax应该是这个Call的返回值,我们直接出这个call看看这个值后边拿去干什么了。
我们慢慢跟,发现这个call执行之后我们寄存器的值就变动了
所以我们进这个call(client.dll+9C5226)看一下
继续跟,注意寄存器是什么时候变的,走到这里rax再次变动,我们跟进call里看一下,继续单步看寄存器的变动
跟到这个CALL后,我们往下翻到这里,仔细分析一下
他这条改了rax,那么大概率这个Call里要对我们的索引值进行计算了
此时rbx r8都存着我们的准星索引,继续往下看看
我们发现这一段可疑运算,跟着跑完后发现rax(也就是call的返回值),就是人物数组,给他添加血量的偏移就能的到血量
所以我们可以确定,这就是我们要找的解密算法,我们直接把他copy出来分析:
client.dll+571430 - 48 83 EC 28           - sub rsp,28 { 40 }
client.dll+571434 - 83 F9 FF              - cmp ecx,-01 { 255 }
client.dll+571437 - 75 17                 - jne client.dll+571450
client.dll+571439 - 48 8B 0D 98EE4301     - mov rcx,[client.dll+19B02D8] { (7FFB3AEF2C80) }
client.dll+571440 - 48 8D 54 24 30        - lea rdx,[rsp+30]
client.dll+571445 - 48 8B 01              - mov rax,[rcx]
client.dll+571448 - FF 90 D8020000        - call qword ptr [rax+000002D8]
client.dll+57144E - 8B 08                 - mov ecx,[rax]
client.dll+571450 - 48 63 C1              - movsxd  rax,ecx
client.dll+571453 - 48 8D 0D 6E2D4301     - lea rcx,[client.dll+19A41C8] { (15239A94600) }
client.dll+57145A - 48 8B 0C C1           - mov rcx,[rcx+rax*8]
client.dll+57145E - 48 85 C9              - test rcx,rcx
client.dll+571461 - 74 52                 - je client.dll+5714B5
client.dll+571463 - 8B 91 0C060000        - mov edx,[rcx+0000060C]
client.dll+571469 - 83 FA FF              - cmp edx,-01 { 255 }
client.dll+57146C - 74 47                 - je client.dll+5714B5
client.dll+57146E - 4C 8B 0D F3183301     - mov r9,[client.dll+18A2D68] { (1500BE10010) }
client.dll+571475 - 4D 85 C9              - test r9,r9
client.dll+571478 - 74 3B                 - je client.dll+5714B5
client.dll+57147A - 83 FA FE              - cmp edx,-02 { 254 }
client.dll+57147D - 74 36                 - je client.dll+5714B5
client.dll+57147F - 8B CA                 - mov ecx,edx
client.dll+571481 - 81 E1 FF7F0000        - and ecx,00007FFF { 32767 }
client.dll+571487 - 8B C1                 - mov eax,ecx
client.dll+571489 - 44 8B C1              - mov r8d,ecx
client.dll+57148C - C1 E8 09              - shr eax,09 { 9 }
client.dll+57148F - 49 8B 0C C1           - mov rcx,[r9+rax*8]
client.dll+571493 - 48 85 C9              - test rcx,rcx
client.dll+571496 - 74 1D                 - je client.dll+5714B5
client.dll+571498 - 41 81 E0 FF010000     - and r8d,000001FF { 511 }
client.dll+57149F - 49 6B C0 78           - imul rax,r8,78
client.dll+5714A3 - 48 03 C1              - add rax,rcx
client.dll+5714A6 - 74 0D                 - je client.dll+5714B5
client.dll+5714A8 - 39 50 10              - cmp [rax+10],edx
client.dll+5714AB - 75 08                 - jne client.dll+5714B5
client.dll+5714AD - 48 8B 00              - mov rax,[rax]
client.dll+5714B0 - 48 83 C4 28           - add rsp,28 { 40 }
client.dll+5714B4 - C3                    - ret
client.dll+5714B5 - 33 C0                 - xor eax,eax
client.dll+5714B7 - 48 83 C4 28           - add rsp,28 { 40 }
client.dll+5714BB - C3                    - ret
整理一下,去除无关信息,主要看怎么赋值的
首先是
client.dll+571453 - 48 8D 0D 6E2D4301     - lea rcx,[client.dll+19A41C8] { (15239A94600) }
然后在对rcx进行操作
client.dll+57145A - 48 8B 0C C1           - mov rcx,[rcx+rax*8]
注意此时的rax是0
紧接着就是吧值赋值给edx
client.dll+571463 - 8B 91 0C060000        - mov edx,[rcx+0000060C]
然后有对r9赋值
client.dll+57146E - 4C 8B 0D F3183301     - mov r9,[client.dll+18A2D68] { (1500BE10010) }
又把edx赋值给ecx
client.dll+57147F - 8B CA                 - mov ecx,edx
然后对ecx进行and运算
client.dll+571481 - 81 E1 FF7F0000        - and ecx,00007FFF { 32767 }
再分别赋值给eax.r8d,同时吧eax右移了9位
client.dll+571487 - 8B C1                 - mov eax,ecx
client.dll+571489 - 44 8B C1              - mov r8d,ecx
client.dll+57148C - C1 E8 09              - shr eax,09 { 9 }
然后在对rcx赋值
client.dll+57148F - 49 8B 0C C1           - mov rcx,[r9+rax*8]
最后 r8d进行与运算,在对吧r8乘以0x78在赋值给rax, 然后吧rax和rcx相加,就能的到了我们要的人物数组
client.dll+571498 - 41 81 E0 FF010000     - and r8d,000001FF { 511 }
client.dll+57149F - 49 6B C0 78           - imul rax,r8,78
client.dll+5714A3 - 48 03 C1              - add rax,rcx
理清楚了逻辑,我们来看看寄存器具体是那些参数
首先and ecx,00007FFF,从上边分析的逻辑可以知道ecx是[[client.dll+19A41C8]+0x60c]
我们翻看dump文件,搜索0x60c
知道这是一个m_hPwan,所以and ecx,00007FFF,可以表示为
m_hPwan & 0x7FFF
然后是第二条: shr eax,09 ,从上边的逻辑分析,我们知道 eax=m_hPwan & 0x7FFF 所以这里表示为
m_hPwan & 0x7FFF)>>9
然后是第三条:mov rcx,[r9+rax*8],从上边可知rax的值为0 ,所以此处表达为
[[client.dll+18A2D68]+0]+((m_hPwan & 0x7FFF)>>9)*8)
然后是第四条:and r8d,000001FF,从上边可知r8d=m_hPwan & 0x7FFF,所以这里表示为
(m_hPwan & 0x7FFF)&0x1FF
第五条:imul rax,r8,78,表示为
((m_hPwan & 0x7FFF)&0x1FF)*78
第六条:add rax,rcx,如上rcx=[client.dll+18A2D68]+((m_hPwan & 0x7FFF)>>9)*8),所以最后的表达式为
((m_hPwan & 0x7FFF)&0x1FF)*78+[client.dll+18A2D68]+((m_hPwan & 0x7FFF)>>9)*8)
最后我通过比较寄存器的值,知道了m_hPwan & 0x7FFF就是我们找的的准星索引的值
所以最终的表达是应该为:
(准星索引&0x1FF)*78+[[client.dll+18A2D68]+0]+((准星索引)>>9)*8)
一下是易语言的写法
.版本 2
.子程序 解密鼠标索引, 长整数型
.参数 索引值, 整数型
.参数 r9, 长整数型
.局部变量 A, 长整数型
.局部变量 C, 长整数型
A = 位与 (进制_十六到十_ASM (索引值), 十六进制 (“1FF”)) × 120
C = 进制_十六到十 (r9) + 右移 (进制_十六到十_ASM (索引值), 9) × 8
返回 (进制_十到十六 (A + C)
如此一来就能读取人物的阵营从而判断开枪了。
补充:
r9值的特征码:4C 8B 0D ?? ?? ?? ?? 4D 85 C9 74 3B 83 FA FE 74 36    



联系我时,请说是在 挂海论坛 上看到的,谢谢!



上一篇:关于cs2自动开枪的找法(1)
下一篇:yj无尽最新全套基址
免责声明:
1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关。一切关于该内容及资源商业行为与www.52ghai.com无关。

2、本站提供的一切资源内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。

3、本站信息来自第三方用户,非本站自制,版权归原作者享有,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。

4、如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵犯你版权的,请邮件与我们联系删除(邮箱:xhzlw@foxmail.com),本站将立即改正。

8资深会员
1269/1800

1269

积分

89

主题

14

听众
已帮网友解决0 个问题
好评
-6
贡献
1180
海币
17
交易币
0
沙发
发表于 2024-10-3 20:45:48 | 只看该作者
{:撸啊撸:}{:撸啊撸:}{:撸啊撸:}
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

免责声明|Archiver|手机版|小黑屋|挂海论坛

GMT+8, 2025-4-12 17:30 , Processed in 0.077791 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.2

本站资源来自互联网用户收集发布,如有侵权请邮件与我们联系处理。xhzlw@foxmail.com

快速回复 返回顶部 返回列表