|
|
- #pragma once
- #pragma warning(disable:4996)
- #include "stdafx.h"
- #include <stdio.h>
- #include <Windows.h>
- #include <string>
- #include <io.h>
- using namespace std;
- BYTE AL(int VirtuallAddrOfFile){
- DWORD Szhu[] = { 0x0A35DE1FF, 0x11A0B8F0, 0x3D9810FA, 0x83B8FD21, 0xB56C4AFC, 0xD35B2DD1, 0xE4799A53, 0x4565B6F8, 0x49BCD28E, 0x97904BFB, 0xF2E1DDDA, 0x7EA4CB33, 0x632FB141, 0x4C6ECEE8, 0xE0CADF2A, 0x74C03671 };
- DWORD j = Szhu[(VirtuallAddrOfFile >> 0xa) & 0xf];
- DWORD yi0x10 = j >> 0x10;
- DWORD yi0x18 = j >> 0x18;
- WORD ListResult = LOBYTE(yi0x10) + yi0x18 + HIBYTE(j) + LOBYTE(j);
- BYTE al = LOBYTE(((VirtuallAddrOfFile >> 0xa) ^ 0xFFFFFF09) ^ ListResult);
- return al;
- }
- int _tmain(int argc, _TCHAR* argv[])
- {
- char fileN[80] = "dhf.vep";
- FILE* fp = fopen(fileN, "rb");
- fseek(fp, 0, SEEK_END);
- DWORD dwsize = ftell(fp);
- BYTE* buffer = new BYTE[dwsize + 1];//开辟内存空间
- memset(buffer, 0, dwsize + 1);//初始化我们开辟的内存空间
- //把文件存放到我们开辟的内存里
- fseek(fp, 0, SEEK_SET);
- fread(buffer, dwsize + 1, 1, fp);//读取文件到buffer
- for (DWORD i = 0; i < dwsize + 1; i++)
- {
- buffer[i] ^= AL(i);
- }
- char nameOut[80] = "解密.MP4";
- FILE * fout = fopen(nameOut, "wb");
- fwrite(buffer, dwsize + 1, 1, fout);
- fclose(fp);
- fclose(fout);
- return 0;
- }
复制代码
|
|