受斑竹XYZ之托,对BCYJ的bik外挂字幕工具做一下简要分析。% ~& r* K& ~7 w, ]: E, \0 t: S
. [2 v( L& u/ S4 `" g/ [( z
这个工具主要用了DLL代理技术,又叫特洛伊DLL技术.: u( t3 T$ C* P2 z1 a3 x
由于现有的windows中DLL的使用都没有用数字签名,所以我们可以把原来的DLL改名,自己做一个代理DLL,把无关函数原样转发,要修改的函数修改后再转发给原DLL.代理DLL必须要有和原DLL函数100%相同的导出函数。
" U9 d6 u: M r8 V+ l: E5 B6 p$ E( m8 P9 `& d
BCYJ自己在播放bik的关键DLL的基础上制作了一个代理DLL,在关键函数中加入了显示中文字幕的功能。基本原理就是如此。具体实现细节还是比较复杂的,内嵌了汇编。2 K7 W& U/ p& t! N. R X
7 o* u- m" L. u; E个人觉得这种方法还是相当不错的,和我用的HOOK方法类似。
+ u1 A# b/ ~9 J9 P3 E7 p& W! O v0 M. O+ q- K6 p% H4 A5 ^
不知道当时有测试图片没有,想看看实际效果。 |