低调(d-iao)论坛大牛写的LUA解密工具,版权归低调(d-iao)论坛大牛所有
本帖最后由 linfengtai2008 于 2017-11-3 19:10 编辑解COCOS2DX 的LUA加密非常要用,就是不知道LUA默认的签名和秘钥是多少,要是能分享下,就可以写出默认的加密脚本了 此文件专门用来破解COCOX2D 中的LUA加密,是大神的教程包里我拿出来的,非常好用,不过好像解不来COCOS2D中的ZIP加密,下面这段伪代码就是COCOX2D游戏中解ZIP加密的
void *__fastcall getFileDataFromZip(anysdk::framework **a1, void **a2, _DWORD *a3)
{
void **v3; // r7@1
_DWORD *v4; // r4@1
void *v5; // r6@1
anysdk::framework *v6; // r0@1
const char *v7; // r1@1
anysdk::framework *v8; // r0@2
int v9; // r3@2
anysdk::framework *v10; // r5@2
void *v11; // r1@3
void *v12; // r7@8
void *v13; // r0@8
unsigned int v14; // r3@8
int v15; // r0@8
void *v16; // r1@8
bool v17; // zf@8
char v19; // @4
size_t size; // @8
char v21; // @4
int v22; // @1
v3 = a2;
v4 = a3;
v5 = 0;
v22 = _stack_chk_guard;
*a3 = 0;
v6 = *a1;
v7 = (const char *)*((_DWORD *)v6 - 3);
if ( v7 )
{
v8 = (anysdk::framework *)anysdk::framework::unzOpen(v6, v7);
v10 = v8;
if ( v8 )
{
v5 = 0;
if ( !anysdk::framework::unzLocateFile(v8, *v3, (const char *)1, v9)
&& !anysdk::framework::unzGetCurrentFileInfo(v10, &v19, &v21, 260) )
{
if ( anysdk::framework::unzOpenCurrentFile(v10, v11) )
{
v5 = 0;
}
else
{
v12 = (void *)size;
v13 = malloc(size);
v5 = v13;
v15 = anysdk::framework::unzReadCurrentFile(v10, v13, v12, v14);
v16 = (void *)size;
v17 = v15 == 0;
if ( v15 )
v17 = v15 == size;
if ( !v17 )
{
printf("the file size is wrong");
v16 = (void *)size;
}
*v4 = v16;
anysdk::framework::unzCloseCurrentFile(v10, v16);
}
}
anysdk::framework::unzClose(v10, v11);
}
else
{
v5 = 0;
}
}
if ( _stack_chk_guard != v22 )
_stack_chk_fail(_stack_chk_guard - v22);
return v5;
} 很不错的东西,我当时有一个main.lua要解,我想到的方法是,能被程序调用,说明程序能解码,用apktool解压程序,看看解码文件在哪。最后失败了。。。。 虽然不懂但看似很好,先感谢了,谢谢 谢谢! 楼主辛苦 不知道LUA默认的签名和秘钥是多少 膜拜大神
----小白见贴就回,混个脸熟。。。{:301_986:} 你不觉得少一点东西吗,大家别下载了,没用的 什么东西 没有说明书 什么东西 没有说明{:1_918:} 不明觉厉