少女前线Live2D解密

2018-05-26 2,397 ℃

上周在CP22看到这个游戏两周年了,打算回坑玩一阵,不过上一个号是买的初始号账号密码都忘记了,所以只好开了个新号。然后新皮肤倒是抽到了,不过枪都没有怎么舔老婆呢,所以只好提取一发啦

少前Live2D的所有TextAsset类文件都加密了,搜了一下并没有找到相关的东西,就自己研究吧。解密函数就塞在libLive2DEncryption.so里,这名字生怕你找不到它,直接F5后照着写就行了

public static byte[] Decrypt(byte[] encrypt)
{
    var length = encrypt.Length - 17;
    var v24 = new byte[16];
    var decrypt = new byte[length];
    for (var i = 0; i < 16; i++)
    {
        v24[i] = encrypt[i * 5 + 1];
    }
    var v20 = 0;
    var v10 = -1;
    var v11 = 0;
    do
    {
        var v12 = v10 + 1;
        if (v10 + 1 > 80)
        {
            var v13 = v24[v10 - ((v10 + ((v10 - 16) >> 31 >> 28) - 16) & 0xFFFFFFF0) - 16];
            decrypt[v11] = (byte)(encrypt[v10 + 1] ^ v13);
            v12 = v10 + 1;
            ++v11;
        }
        else
        {
            if (v10 == 5 * (v10 / 5))
            {
                ++v20;
            }
            else if (v10 != -1)
            {
                decrypt[v11++] = (byte)(encrypt[v10 + 1] ^ v24[(v10 - v20) % 16]);
            }
        }
        v10 = v12;
    }
    while (v11 != length);
    return decrypt;
}

随便撸了个小程序

百度云

可以用如下方法快速提取

  1. 打开AssetStudio,勾选Options – Display asset original name,同时将group方式改为Do not group exported assets
  2. 用File – load file载入所有的live2d_gun_*.ab文件
  3. Show Type勾上TextAsset和Texture2D,用Export – Filtered assets导出
  4. 在提取后的文件夹里运行GFLive2DDecrypter.exe即可

我TM舔爆!

简单绕过BanG Dream校验

2.2.0 上周去参加CP22,炸梦演出时的人比想象中的要多,给我一种国服能很火的感觉,于是我决定下回日服顺带摸鱼一篇文章 游戏不懂什么版本开始加入了一点校验...

阅读全文

浅谈某NetHTProtect

声明,本文只稍微提一下思路,不提供任何代码~ 这次是第二次写它了,上篇文章讲的也是这玩意,不过这次它加了个新东西,直接暴力dump dll的话会发现method co...

阅读全文

关于Unity的PE文件结构破坏保护

开始码字后突然不懂标题应该怎么取,原本想像隔壁一样来个什么“关于Unity的xxx保护(1)”,不过目前只打算写写这一个例子,估摸着也没有下篇,还是别挖坑了。...

阅读全文

50 条评论

  1. 萌新问下- -从第二部就开始卡主了- -载入所有的live2d_gun_*.ab文件这些文件是需要在哪里找到的? :???:

  2. 求问dalao,我按流程拆包解密出来的moc文件,只有HK416在Live2DViewer能正常显示,其它的打开都了都没有图案,还是白底,png也还在,请问怎么解决

  3. 这so文件当时确实是一眼就看到了,萌新就是想问问,v+数字,是指什么,自己研究的话要怎么找出来……?
    先谢过大佬指点了 :oops:

  4. 博主求解惑啊,按照博主的步骤导出现在国服最新版本的所有live2d_gun文件,结果全是txt格式的文件,重命名为josn也没用。因为博主给的小程序在我的电脑上无法运行,所以我用Live2D Wallpaper这个软件来检验导出的josn文件。其实之前用bilibili服的数据包中的live2d_gun文件是能导出josn文件的,而且导出来的josn文件也能在Live2D Wallpaper上运行,可惜是和谐过的,我就想再试试的国服数据包提取,结果就导出了txt文件。博主还在关注这个游戏的提取么?能否麻烦博主对现在这个版本的国服做新的提取方法呢,感激不尽。
    ps:博主的小程序闪退啊,这样就不能用pose.json和physics.json解除和谐了,肿么办,,用博主的小软件打开导出的文件会显示:对路径“C:\WINDOWS\system32\Com\dmp”的访问被拒绝。

    1. 终于发现下载反和谐数据包之后,导出来的文件都会变成txt。博主,我现在唯一的疑问就是:大佬你文章下面那张最高出价的GIF里,到底是怎么把胸中间那块黑布直接弄没的?我在live2d viewer上调了半天,pose.josn的“PARTS_HEXIE”数值变化只能控制黑布的透明度。难、难道真的是photoshop直接扣掉,,,

    2. 卧槽,model.moc在live2d viewer的Parts部分是可以调节的,终于把碍事的布弄掉了,555被自己蠢哭 :cry:

    3. 打开AssetStudio,勾选Options – Display asset original name,同时将group方式改为Do not group exported assets
      导出文件后请不要自己改动,把博主给文件放在和assets一个目录,不要拖动文件到程序上,点击程序运行一下就行,那个是运行解码完自动关闭,不是闪退。然后就可以正常打开了。

      1. 大佬,我想接着导出其他的live2d,结果导出的文件全是txt。重新下了一遍游戏数据包再导出还是txt,的确是按照博主给的导出步骤,请问这是什么缘故。会不会是无意中改了assetstudio的什么设置呢?

        1. 运行完程序会自动命名为json,另外程序是放到提取后的文件夹里,不要放在外面

  5. 如果不修改libLive2DEncryption.so直接提取是否2d-live无法正常打开?
    GFLive2DDecrypter.exe启动后闪退什么情况?

    1. 同闪退,的确是按照博主说的在导出的文件下启动,仍然闪退。怎么办,,

  6. libLive2DEncryption.so 大佬这个文件夹在哪?找不到…..我是新手求解,感谢大佬。

        1. 或是你找libmonofix.so 新版好像換成這個名稱
          用ida pro可以找到decode的方法

    1. libLive2DEncryption.so,兄弟libLive2DEncryption.so这个文件在哪?能否说一下,新手上路跌跌撞撞的…

  7. 再反馈个问题,现在运行的话是和谐过的动作(你敢信,和B站上未和谐的录屏对比发现居然和谐了乳摇···怪不得这个读出来总觉得胸一动不动的)。不知道大佬能看看是什么的问题不?

    1. 把pose.json拖進去載入是讓它呈現未和諧樣貌
      把physics.json拖進去載入就會呈現乳搖了

        1. 请问您导出的最高出价的2Dlive和博主的一样么?都是胸前没有黑布的遮挡的么?

          1. 你按博主的设置走全解包出来,然后用博主的小程序解密走一波就都要有了啊。全拖进去就是未和谐的了。。

              1. 就是点一次里面的文件就都解码完了啊,具体怎么用那些文件自行研究吧。网上live2d说明多得是。

                1. 唉,,,总之谢谢解答。自己试着再弄弄吧,虽然我弄了一晚上还是没能启动博主的小程序

      1. 请问pose.json文件和physics.json文件都位于什么地方呢?是需要root才能看到的隐藏文件么?找了半天实在是没找着,这两个文件是否能麻烦您给发个连接呢,感激不尽。

    2. 关于和谐问题,我觉得吧,还是建议直接下台服客户端得了。
      国服即使反和谐依然是比那边和谐的,解完你也得手动改动作数据/贴图。
      别纠结国服才是正道 :evil: :evil:

  8. 上面的问题发现解决方法了 是贴图尺寸不对,重新单个找到1024×1024贴图导出替换回去就好了。留着给后面的人看!

  9. 非常感谢大佬!!这个方法我找了好久了。还有个问题反馈下,DSR50红牡丹皮肤的大破解包出来依然一片空白,不知道是什么问题。

  10. 那小程序没啥用啊 我提取完直接可以用live2dviewerex打开了 那个小程序用来干嘛的?

  11. 导出dsr50_2101 normal 里的贴图尺寸不是1024,想问下dalao那边会这样吗? :???: 其它几个都正常的说

      1. 肯定是texture2D,我有仔细看的,就只有她的正常模式是导出的贴图尺寸不正确,是1022像素的宽度 :shock: 会不会是缓存包下载的时候这个文件就是损坏的?

        1. 重新下载缓存后还是不行,用Export – Filtered assets导出的图片还是1004X1022,不过后来我试了只导出这一个文件,用selected assets导出就正常了 :mrgreen:

欢迎留言

0 + 0 =