LOL查找换肤CALL和调用(一)

文章正文
发布时间:2025-08-19 20:14

在论坛潜水学习许久,我终于鼓起勇气,尝试用自己尚显稚嫩的技术与有限的表达,在这里发了帖子。若内容有疏漏、错误之处,恳请各位大佬不吝赐教,感激不尽 。


LOL动态换肤原理不用过多赘述了,调用换肤CALL即可实现。

换肤CALL查找:

1.确认英雄名
随便找个英雄进入游戏,确认所选英雄英文名,我这边选的是刀妹对应的为Irelia,不知道的可以到百度百科上查

image.png (195.29 KB, 下载次数: 0)

下载附件

Irelia

2025-3-21 10:52 上传



2.CE 启动
CE字符串搜索Irelia 3244个结果不要怕,我们只需要看最下面的十几个地址就行。

image.png (87.38 KB, 下载次数: 0)

下载附件

Irelia查找

2025-3-21 10:54 上传


选择第一个,查看什么访问了这个地址,计数为6,Irelia 的长度也为6那么这个可能就是我们要找的地址

image.png (52.87 KB, 下载次数: 0)

下载附件

Irelia访问

2025-3-21 10:59 上传


进入汇编,这里就是对 Irelia 每个字符的确认,确认完成之后就是换肤了

image.png (78.17 KB, 下载次数: 0)

下载附件

名字汇编

2025-3-21 11:04 上传



那么下面的CALL就是换肤CALL了
一共5个参数:
-----------------
r8: 换肤ID
rax:1416BA198
r9: 0
rdx: 人物名称
rcx:人物地址
------------------
换肤 call 14028c190
有了这些地址就能调用了

image.png (69.06 KB, 下载次数: 0)

下载附件

换肤CALL

2025-3-21 11:08 上传



以下是deepseek写的CALL代码

[C++] 纯文本查看 复制代码

//通用CALL typedef uintptr_t(__stdcall* UniversalCall_t)(uintptr_t, uintptr_t, uintptr_t, uintptr_t, uintptr_t); uintptr_t UniversalCall(uintptr_t functionAddress, uintptr_t arg1, uintptr_t arg2, uintptr_t arg3, uintptr_t arg4, uintptr_t arg5) { UniversalCall_t callFunction = (UniversalCall_t)functionAddress; return callFunction(arg1, arg2, arg3, arg4, arg5); }


调用

[Asm] 纯文本查看 复制代码

UniversalCall(MODELFUNC,Read64(PLAYERBASE), Read64(PLAYERBASE)+ NAMEOFFERST,SKINID,0,RAX)



我用的是劫持dll的方式,工具:AheadLib ,  劫持DLL名称:version.dll

 

免费评分 参与人数 10吾爱币 +16 热心值 +9 理由

151595428
  + 1   + 1   热心回复!  

MortalTvT
  + 1   + 1   谢谢@Thanks!  

OIIISHIRO
  + 1   + 1   欢迎分析讨论交流,吾爱破解论坛有你更精彩!  

E6810M
  + 1     感谢发布原创作品,吾爱破解论坛因你更精彩!  

willJ
  + 7   + 1   欢迎分析讨论交流,吾爱破解论坛有你更精彩!  

ZRSEC
  + 1   + 1   谢谢@Thanks!  

zhij
  + 1   + 1   谢谢@Thanks!  

Ichbinich
  + 1   + 1   谢谢@Thanks!  

ytfh1131
  + 1   + 1   谢谢@Thanks!  

anwuzhu077
  + 1   + 1   谢谢@Thanks!  

查看全部评分

首页
评论
分享
Top