吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2220|回复: 4
收起左侧

[原创] 关于超时代视频v9.36的.vpy和.exe的解密

[复制链接]
PieceOfShit 发表于 2023-11-24 18:38
本帖最后由 PieceOfShit 于 2023-11-24 20:06 编辑

原文: 瞎猫碰上死耗子 破解超时代加密视频 https://www.52pojie.cn/thread-1140734-1-1.html

叠甲声明:

我甚至不是逆向小白,事实上我对逆向一窍不通。我因为想要解密超时代视频(v9.36),前天才注册了论坛。惊喜地发现论坛上早已有了方案,但是那个方案对于我们纯门外汉、只是想达到解密目的的人(目前还看不懂逆向技术)来说有点难以抓到重点,现作出面向门外汉的整理

正文:

原作者对超时代加密做了一通分析,事实上我们看不懂也不用看他的逆向过程,直接看他最后发的代码(我改了一点,但不影响意思):

#include <cstdio>
#include<cstring>
#pragma warning(disable:4996)
int main() {
    FILE* fp, * fout;
    char nameIn[80] = "in.vpy", nameOut[80] = "out.mp4";
    const int len = 256;
    char c[len] = {'\0'};
    int count = 0;
    int key[16] = { 0x56,0x12,0x32,0x09,0x43,0x22,0x11,0x30,0x89,0x01,0x08,0x09,0x02,0x93,0x25,0x12 };
    fp = fopen(nameIn, "rb");
    fout = fopen(nameOut, "wb");
    fseek(fp, 0x2CF8, SEEK_SET);// 位置,偏移量0xFF2428字节是exe的。
    while (fread(c,1, len, fp)) { //经过fseek,表明了开始位置,这里就是将第一个字节,存放到变量c
        for (int i = 0; i < len; i++) {
            c[i] ^= key[count % 16] + 3;
            count++;
        }
        fwrite(c, 1, len, fout);
    }
    fclose(fp); fclose(fout);
    return 0;
}

这个代码的意思就是对加密视频进行异或+偏移量解密。直接编译运行这个代码,超时代v9.36加密的视频就能解密成mp4。就是这么简单。

与原作者的不同之处:
1.优化了I/O性能。速度提高了十几倍。
2.原作者的fseek处的地址偏移量是0xFF2428,那是面向.exe的。超时代有两种加密,一种是加密成.exe,这种情况下双击exe,输入密码就可以播放;一种是加密成.vpy,要用外置的播放器输入密码播放。原作者没有提.vpy怎么解密,事实上只要修改这里的地址偏移就行(0x2CF8是我自己发现的地址偏移量)。毕竟可以想象,加密成.exe这种自解压文件还要在mp4段前面塞一大堆程序,而.vpy没有前面的一大堆程序,所以地址偏移量小一些。

免费评分

参与人数 3吾爱币 +9 热心值 +3 收起 理由
漁滒 + 1 + 1 我很赞同!
Hmily + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
yjn866y + 1 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

yjn866y 发表于 2023-11-27 18:02
占个沙发。。。
zswpug 发表于 2023-11-28 23:24
gusong125 发表于 2024-3-20 13:00
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 03:12

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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