请选择 进入手机版 | 继续访问电脑版

滚动热门

 找回密码
 立即注册

QQ登录

只需一步,快速开始

服务器名字 游戏下载·账号注册 开服时间表 玩家QQ群
《卓越武林外传》 登录器下载  客户端下载  账号注册
距卓越武林外传公益版开放还有:72小时0分0秒
卓越武林外传
《卓越传奇》 登录器下载  客户端下载  账号注册
距卓越传奇公益服开放还有:72小时0分0秒
嘟嘟诛仙
待定 待定  待定 待定 梦回诛仙公益服
待定 待定  待定 待定 梦回诛仙公益服
待定 待定  待定 待定 梦回诛仙公益服
卓越武林外传卓越武林外传卓越武林外传卓越武林外传卓越武林外传
传奇手游传奇手游传奇手游传奇手游传奇手游
查看: 738|回复: 1
收起左侧

[分享] [源码开源] DOF 的 PVF文件的、解密、解包、原理分析(请大家继续完善)

[复制链接]
  • TA的每日心情
    难过
    2022-5-17 06:23
  • 签到天数: 22 天

    [LV.4]偶尔看看III

    1409

    主题

    1780

    帖子

    6057

    积分

    超级版主

    Rank: 39Rank: 39Rank: 39Rank: 39Rank: 39Rank: 39Rank: 39Rank: 39Rank: 39Rank: 39Rank: 39

    UID
    3
    威望
    79
    贡献
    75
    热度
    3939
    钻石
    0 克拉
    翡翠
    0 毫克
    精华
    21
    违规
    0
    在线时间
    596 小时
    注册时间
    2015-5-30
    最后登录
    2022-5-17
    发表于 2021-11-8 08:39 | 显示全部楼层 |阅读模式

    马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x
    本帖最后由 sony09090 于 2019-4-25 12:19 编辑


    121352u6kyjxy6zr2z57xv.jpg.thumb.jpg


    游客,如果您要查看本帖隐藏内容请回复

    本帖隐藏的内容
    游客,如果您要查看本帖隐藏内容请回复




    ==============易源码====================


    本帖隐藏的内容.版本 2
    .支持库 spec
    .支持库 EThread


    .子程序 取树列表
    .参数 文本型, 文本型
    .局部变量 文件长度
    .局部变量 目录树_数据, 字节集


    _启动窗口.标题 = “解密中请耐心等待”


    文件 = 文本型
    文件号 = 打开文件 (文件, 1, )
    ' 文件长度 = 取文件长度 (文件号)


    读入数据 (文件号, 头信息.GUID长度)
    头信息.GUID = 读入字节集 (文件号, 头信息.GUID长度)
    读入数据 (文件号, 头信息.文件版本)
    读入数据 (文件号, 头信息.目录树长度)
    读入数据 (文件号, 头信息.目录树效验)
    读入数据 (文件号, 头信息.总文件数量)


    ' 调试输出 (“PVF文件长度”, 文件长度)
    调试输出 (“GUID长度”, 头信息.GUID长度)
    调试输出 (“GUID”, 头信息.GUID)
    调试输出 (“文件版本”, 头信息.文件版本)
    调试输出 (“目录树长度”, 头信息.目录树长度)
    调试输出 (“目录树效验”, 头信息.目录树效验)
    调试输出 (“总文件数量”, 头信息.总文件数量)


    目录树_数据 = 读入字节集 (文件号, 头信息.目录树长度)
    api_decryptTreeBlock (目录树_数据, 头信息.目录树长度, 头信息.总文件数量, 头信息.目录树效验, 头信息.目录树效验) 'C源码实现(继续往下看有源码)


    关闭文件 (文件号)


    文件号 = 打开内存文件 ()
    写出字节集 (文件号, 目录树_数据)
    移到文件首 (文件号)
    启动线程 (&处理树数据, 文件号, )



    ==============C源码====================


    本帖隐藏的内容int PvfPlayer::_decryptTreeBlock(unsigned char* buf, unsigned int bufLen, int numberOfFiles, int checkSumCheck, int checksumUse)
    {
    unsigned int bufLenv5; // ebx@1
    unsigned char *bufv6; // esi@1
    int result; // eax@2
    unsigned char * bufEnd; // edx@3
    unsigned int v9; // eax@3
    unsigned char * i; // ecx@3
    unsigned int v11; // esi@4
    unsigned int v12; // eax@4
    unsigned int v13; // eax@4
    unsigned int v14; // eax@4
    unsigned int v15[256]; // [sp+8h] [bp-404h]@3




    bufLenv5 = bufLen;
    bufv6 = buf;
    if (bufLen & 3) // bufLen shall be fold of 4
    {
    result = 0;
    }
    else
    {
    this->_sub_311820(v15);
    bufEnd = bufv6 + 4 * (bufLenv5 >> 2); // >>2 then * 4, this is truncation
    v9 = ~numberOfFiles;
    for (i = bufv6; i != bufEnd; i += 4)
    {
    v11 = __ROR4__(checksumUse ^ *(unsigned int *)i ^ 0x81A79011, 6);
    *(unsigned int *)i = v11;
    v12 = v15[(unsigned char)v9 ^ *(unsigned char *)i] ^ (v9 >> 8);
    v13 = v15[(unsigned char)v12 ^ *(unsigned char *)(i + 1)] ^ (v12 >> 8);
    v14 = v15[(unsigned char)v13 ^ *(unsigned char *)(i + 2)] ^ (v13 >> 8);
    v9 = v15[(unsigned char)v14 ^ *(unsigned char *)(i + 3)] ^ (v14 >> 8);
    }
    result = ~v9 == checkSumCheck;
    }
    return result;
    }


    unsigned int PvfPlayer::_sub_311820(unsigned int *a1)
    {
    unsigned int v1; // ecx@1
    unsigned int v2; // esi@1
    unsigned int result; // eax@2
    unsigned int *v4; // edx@2




    v1 = 1;
    *a1 = 0;
    v2 = 128;
    do
    {
    v1 = ((v1 & 1) != 0 ? 0xEDB88320 : 0) ^ (v1 >> 1);
    result = 0;
    v4 = &a1[v2];
    do
    {
    *v4 = v1 ^ a1[result];
    result += 2 * v2;
    v4 += 2 * v2;
    } while (result <= 0xFF);
    v2 >>= 1;
    } while (v2);
    return result;
    }
    }


    欢迎来到滚动热门】论坛——-网单专业的论坛之一!
    请记住我们的网址 滚动热门 [这是 默 认 签 名,更换签名点这里!]

    ☆--本论坛是网单专业论坛之一(最专业的知识,最贴心的服务圆您网单之梦--☆

    ☆--(教您最快,最省,最高的网络游戏技巧)--☆

    ☆--在这里祝玩家天天爆极品装备,好运连连--☆

    ☆--若出现不能下载或其他未知故障,请联系客服QQ:349379187,反馈问题 务必请直入主题 拒绝闲聊--- ☆

           ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
           ┃滚动热门讨论群:滚动热门讨论群6577538 ┃
           ┃滚动热门讨论群:滚动热门讨论群6577538 ┃
           ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
    1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
    2、本站所有主题由该帖子作者发表,该帖子作者与滚动热门享有帖子相关版权
    3、论坛的所有内容都不保证其准确性,有效性,时间性。阅读本站内容因误导等因素而造成的损失本站不承担连带责任。
    4、当政府机关依照法定程序要求披露信息时,论坛均得免责。
    5、若因线路及非本站所能控制范围的故障导致暂停服务期间造成的一切不便与损失,论坛不负任何责任。
    6、注册会员通过任何手段和方法针对论坛进行破坏,我们有权对其行为作出处理。并保留进一步追究其责任的权利。
    7、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和滚动热门的同意
    8、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
    9、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
    10、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
    11、滚动热门管理员和版主有权不事先通知发贴者而删除本文
    12、滚动热门社区资源均来自网络收集,本站所有内容仅供学习与测试使用,禁止进行任何商业操作
    13、如私自违反造成的一切责任自行承担,本站不对其负任何相关法律和连带责任
    如私自违反造成的一切责任自行承担,本站不对其负任何相关法律和连带责任
  • TA的每日心情
    难过
    2022-5-14 00:55
  • 签到天数: 1 天

    [LV.1]初来乍到

    1

    主题

    2

    帖子

    14

    积分

    幼儿园

    Rank: 1

    UID
    51190
    威望
    0
    贡献
    0
    热度
    12
    钻石
    0 克拉
    翡翠
    0 毫克
    精华
    0
    违规
    0
    在线时间
    0 小时
    注册时间
    2022-5-14
    最后登录
    2022-5-14
    发表于 2022-5-14 01:02 | 显示全部楼层
    666666666666666666666666

    欢迎来到滚动热门】论坛——-网单专业的论坛之一!
    请记住我们的网址 滚动热门 [这是 默 认 签 名,更换签名点这里!]

    ☆--本论坛是网单专业论坛之一(最专业的知识,最贴心的服务圆您网单之梦--☆

    ☆--(教您最快,最省,最高的网络游戏技巧)--☆

    ☆--在这里祝玩家天天爆极品装备,好运连连--☆

    ☆--若出现不能下载或其他未知故障,请联系客服QQ:349379187,反馈问题 务必请直入主题 拒绝闲聊--- ☆

           ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
           ┃滚动热门讨论群:滚动热门讨论群6577538 ┃
           ┃滚动热门讨论群:滚动热门讨论群6577538 ┃
           ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
    1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
    2、本站所有主题由该帖子作者发表,该帖子作者与滚动热门享有帖子相关版权
    3、论坛的所有内容都不保证其准确性,有效性,时间性。阅读本站内容因误导等因素而造成的损失本站不承担连带责任。
    4、当政府机关依照法定程序要求披露信息时,论坛均得免责。
    5、若因线路及非本站所能控制范围的故障导致暂停服务期间造成的一切不便与损失,论坛不负任何责任。
    6、注册会员通过任何手段和方法针对论坛进行破坏,我们有权对其行为作出处理。并保留进一步追究其责任的权利。
    7、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和滚动热门的同意
    8、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
    9、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
    10、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
    11、滚动热门管理员和版主有权不事先通知发贴者而删除本文
    12、滚动热门社区资源均来自网络收集,本站所有内容仅供学习与测试使用,禁止进行任何商业操作
    13、如私自违反造成的一切责任自行承担,本站不对其负任何相关法律和连带责任
    如私自违反造成的一切责任自行承担,本站不对其负任何相关法律和连带责任
    请勿恶意灌水!尊重他人也是尊重自己!
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

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