Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- unsigned __int8 *__fastcall getEncodeBuffer(unsigned __int64 *a1, unsigned __int8 *a2, const char *a3, const char *a4)
- {
- const char *v4; // x24
- const char *v5; // x25
- __int64 *v6; // x23
- unsigned __int8 *v7; // x19
- __int64 **v8; // x20
- __int64 v9; // x1
- void *v10; // x0
- unsigned int *v12; // x1
- signed int v13; // w2
- cocos2d::CCFileUtils *v14; // x0
- __int64 v15; // x20
- void *v16; // x0
- unsigned __int8 *v17; // x0
- unsigned int *v18; // x1
- signed int v19; // w2
- int v20; // w0
- __int64 v21; // x0
- __int64 v22; // [xsp+58h] [xbp+58h]
- __int64 v23; // [xsp+68h] [xbp+68h]
- __int64 v24; // [xsp+70h] [xbp+70h]
- unsigned __int8 *v25; // [xsp+78h] [xbp+78h]
- __int64 v26; // [xsp+80h] [xbp+80h]
- __int64 v27; // [xsp+88h] [xbp+88h]
- __int64 v28; // [xsp+90h] [xbp+90h]
- v4 = a3;
- v5 = a4;
- v6 = (__int64 *)a1;
- v7 = a2;
- sub_D7153C(&v23, a3, &v28);
- v24 = 0LL;
- v25 = 0LL;
- if ( sub_D725A0(&v23, &unk_DC28A0, 0LL, 3LL) != 0xFFFFFFFFFFFFFFFFLL )
- {
- decBuffer(*v6, v7, (unsigned __int64 *)&v24, &v25);
- if ( v7 )
- operator delete[](v7);
- v8 = `vtable for'MessageBoxPage;
- v7 = v25;
- *v6 = v24;
- goto LABEL_5;
- }
- if ( !v7 )
- {
- v7 = 0LL;
- v8 = `vtable for'MessageBoxPage;
- goto LABEL_5;
- }
- if ( *v7 == 0xEF && v7[1] == 0xFE )
- {
- if ( strcmp(v5, (const char *)&unk_DC28A8) )
- {
- operator delete[](v7);
- v26 = 0LL;
- v15 = cocos2d::CCFileUtils::sharedFileUtils(v14);
- sub_D7153C(&v27, v4, &v22);
- cocos2d::CCFileUtils::getDataFromFile(v15, &v27, 0LL, 0LL);
- v7 = (unsigned __int8 *)cocos2d::CCMutableData::detachBuffer(
- (cocos2d::CCMutableData *)&v28,
- (unsigned __int64 *)&v26);
- v8 = `vtable for'MessageBoxPage;
- cocos2d::CCMutableData::~CCMutableData((cocos2d::CCMutableData *)&v28);
- v16 = (void *)(v27 - 0x18);
- if ( (__int64 *)(v27 - 0x18) != &qword_11FA2A0 )
- {
- if ( &pthread_create )
- {
- v18 = (unsigned int *)(v27 - 8);
- do
- v19 = __ldaxr(v18);
- while ( __stlxr(v19 - 1, v18) );
- }
- else
- {
- v19 = *(_DWORD *)(v27 - 8);
- *(_DWORD *)(v27 - 8) = v19 - 1;
- }
- if ( v19 <= 0 )
- operator delete(v16);
- }
- *v6 = v26;
- LABEL_5:
- v9 = v23;
- v10 = (void *)(v23 - 0x18);
- if ( (__int64 *)(v23 - 0x18) == v8[0x1FD] )
- return v7;
- goto LABEL_10;
- }
- if ( sub_D725A0(&v23, ".txt", 0LL, 4LL) == 0xFFFFFFFFFFFFFFFFLL
- && sub_D725A0(&v23, ".cfg", 0LL, 4LL) == 0xFFFFFFFFFFFFFFFFLL
- && sub_D725A0(&v23, ".json", 0LL, 5LL) == 0xFFFFFFFFFFFFFFFFLL )
- {
- v20 = v7[2];
- if ( v20 == 0x80 )
- {
- v21 = rc4TextureBuffer(*v6, v7, (unsigned __int64 *)v6);
- goto LABEL_35;
- }
- if ( v20 == 0xFF )
- {
- v21 = rc4DocumentBuffer(*v6, v7, (unsigned __int64 *)v6);
- LABEL_35:
- v7 = (unsigned __int8 *)v21;
- v8 = `vtable for'MessageBoxPage;
- goto LABEL_5;
- }
- }
- if ( (unsigned __int8)decBuffer(*v6 - 2, v7 + 2, (unsigned __int64 *)&v24, &v25) )
- {
- v8 = `vtable for'MessageBoxPage;
- operator delete[](v7);
- v7 = v25;
- *v6 = v24;
- }
- else
- {
- v17 = v7;
- v8 = `vtable for'MessageBoxPage;
- v7 = 0LL;
- operator delete[](v17);
- }
- goto LABEL_5;
- }
- v9 = v23;
- v10 = (void *)(v23 - 0x18);
- if ( (__int64 *)(v23 - 0x18) == &qword_11FA2A0 )
- return v7;
- LABEL_10:
- if ( &pthread_create )
- {
- v12 = (unsigned int *)(v9 - 8);
- do
- v13 = __ldaxr(v12);
- while ( __stlxr(v13 - 1, v12) );
- }
- else
- {
- v13 = *(_DWORD *)(v9 - 8);
- *(_DWORD *)(v9 - 8) = v13 - 1;
- }
- if ( v13 <= 0 )
- operator delete(v10);
- return v7;
- }
- __int64 __fastcall rc4TextureBuffer(__int64 a1, unsigned __int8 *a2, unsigned __int64 *a3)
- {
- char *v3; // x21
- __int64 v4; // x24
- unsigned __int64 *v5; // x26
- unsigned __int64 v6; // x20
- __int64 v7; // x23
- __int64 v9; // [xsp+50h] [xbp+50h]
- v3 = (char *)a2;
- v4 = a1;
- v5 = a3;
- v6 = a1 - 3;
- memset(&v9, 0, 0x108u);
- av_rc4_init((__int64)&v9, (__int64)"nc315XHW^", 0x48);
- v7 = operator new[](v4 - 3);
- if ( v6 > 0x80 )
- {
- av_rc4_crypt((__int64)&v9, v7, v3 + 3, 0x80);
- }
- else
- {
- av_rc4_crypt((__int64)&v9, v7, v3 + 3, v4 - 3);
- if ( v6 <= (unsigned int)(v4 - 3) )
- goto LABEL_3;
- }
- memcpy((void *)(v7 + 0x80), v3 + 0x83, v4 - 0x83);
- LABEL_3:
- *v5 = v6;
- if ( v3 )
- operator delete[](v3);
- return v7;
- }
- void *__fastcall rc4DocumentBuffer(__int64 a1, unsigned __int8 *a2, unsigned __int64 *a3)
- {
- char *v3; // x23
- __int64 v4; // x26
- unsigned __int64 *v5; // x27
- void *v6; // x20
- void *v7; // x22
- void *result; // x0
- unsigned __int64 v9; // [xsp+68h] [xbp+68h]
- __int64 v10; // [xsp+70h] [xbp+70h]
- v3 = (char *)a2;
- v4 = a1;
- v5 = a3;
- av_rc4_init((__int64)&v10, (__int64)"nc315XHW^", 0x48);
- v6 = (void *)operator new[](0x100000uLL);
- v7 = (void *)operator new[](v4 - 3);
- av_rc4_crypt((__int64)&v10, (__int64)v7, v3 + 3, v4 - 3);
- v9 = 0x100000LL;
- if ( (unsigned int)uncompress(v6, &v9, v7, v4 - 3) )
- {
- if ( v3 )
- operator delete[](v3);
- operator delete[](v7);
- operator delete[](v6);
- result = 0LL;
- }
- else
- {
- *v5 = v9;
- if ( v3 )
- operator delete[](v3);
- operator delete[](v7);
- result = v6;
- }
- return result;
- }
- __int64 __fastcall av_rc4_crypt(__int64 result, __int64 a2, char *a3, int a4)
- {
- bool v4; // zf
- bool v5; // nf
- int v6; // w12
- unsigned int v7; // w3
- int v8; // w6
- unsigned __int8 v9; // w7
- __int64 v10; // x5
- __int64 v11; // x8
- char v12; // w4
- char v13; // w5
- char v14; // w4
- char v15; // w9
- unsigned __int8 v16; // w4
- v4 = a4 == 0;
- v5 = a4 < 0;
- v6 = *(unsigned __int8 *)(result + 0x100);
- v7 = a4 - 1;
- v8 = *(unsigned __int8 *)(result + 0x104);
- if ( !v5 && !v4 )
- {
- v9 = *(_BYTE *)(result + 0x100);
- v10 = (unsigned __int8)v6;
- v11 = 0LL;
- v12 = *(_BYTE *)(result + (unsigned __int8)v6);
- do
- {
- v15 = *(_BYTE *)(result + (unsigned __int8)v8);
- *(_BYTE *)(result + (unsigned __int8)v8) = v12;
- *(_BYTE *)(result + v10) = v15;
- v16 = v15 + v12;
- if ( a3 )
- {
- v13 = *a3++;
- v14 = *(_BYTE *)(result + v16) ^ v13;
- }
- else
- {
- v14 = *(_BYTE *)(result + v16);
- }
- *(_BYTE *)(a2 + v11++) = v14;
- v10 = ++v9;
- v12 = *(_BYTE *)(result + v9);
- v8 = (unsigned __int8)(v12 + v8);
- }
- while ( v11 != v7 + 1LL );
- v6 = (unsigned __int8)(v7 + v6 + 1);
- }
- *(_DWORD *)(result + 0x100) = v6;
- *(_DWORD *)(result + 0x104) = v8;
- return result;
- }
- __int64 __fastcall av_rc4_init(__int64 a1, __int64 a2, int a3)
- {
- bool v3; // zf
- unsigned int v4; // w10
- int v5; // w2
- unsigned int v6; // w3
- signed int v7; // w5
- unsigned int v8; // w4
- __int64 v9; // x6
- int v10; // w7
- signed int v11; // w11
- signed int v12; // w3
- int32x4_t v13; // q0
- int8x16_t *v14; // x6
- int32x4_t v15; // q3
- int v16; // w4
- int v17; // w3
- int v18; // w4
- char *v19; // x6
- unsigned __int8 v20; // w4
- signed int v21; // w3
- __int64 v22; // x5
- char v23; // w7
- char v24; // w8
- v4 = a3 & 7;
- v3 = v4 == 0;
- v5 = a3 >> 3;
- if ( v3 )
- {
- v6 = -(signed int)a1 & 0xF;
- if ( v6 )
- {
- *(_BYTE *)a1 = 0;
- if ( v6 == 1 )
- {
- v7 = 0xFF;
- v8 = 1;
- }
- else
- {
- *(_BYTE *)(a1 + 1) = 1;
- if ( v6 == 2 )
- {
- v7 = 0xFE;
- v8 = 2;
- }
- else
- {
- *(_BYTE *)(a1 + 2) = 2;
- if ( v6 == 3 )
- {
- v7 = 0xFD;
- v8 = 3;
- }
- else
- {
- *(_BYTE *)(a1 + 3) = 3;
- if ( v6 == 4 )
- {
- v7 = 0xFC;
- v8 = 4;
- }
- else
- {
- *(_BYTE *)(a1 + 4) = 4;
- if ( v6 == 5 )
- {
- v7 = 0xFB;
- v8 = 5;
- }
- else
- {
- *(_BYTE *)(a1 + 5) = 5;
- if ( v6 == 6 )
- {
- v7 = 0xFA;
- v8 = 6;
- }
- else
- {
- *(_BYTE *)(a1 + 6) = 6;
- if ( v6 == 7 )
- {
- v7 = 0xF9;
- v8 = 7;
- }
- else
- {
- *(_BYTE *)(a1 + 7) = 7;
- if ( v6 == 8 )
- {
- v7 = 0xF8;
- v8 = 8;
- }
- else
- {
- *(_BYTE *)(a1 + 8) = 8;
- if ( v6 == 9 )
- {
- v7 = 0xF7;
- v8 = 9;
- }
- else
- {
- *(_BYTE *)(a1 + 9) = 9;
- if ( v6 == 0xA )
- {
- v7 = 0xF6;
- v8 = 0xA;
- }
- else
- {
- *(_BYTE *)(a1 + 0xA) = 0xA;
- if ( v6 == 0xB )
- {
- v7 = 0xF5;
- v8 = 0xB;
- }
- else
- {
- *(_BYTE *)(a1 + 0xB) = 0xB;
- if ( v6 == 0xC )
- {
- v7 = 0xF4;
- v8 = 0xC;
- }
- else
- {
- *(_BYTE *)(a1 + 0xC) = 0xC;
- if ( v6 == 0xD )
- {
- v7 = 0xF3;
- v8 = 0xD;
- }
- else
- {
- *(_BYTE *)(a1 + 0xD) = 0xD;
- if ( v6 == 0xF )
- {
- v7 = 0xF1;
- *(_BYTE *)(a1 + 0xE) = 0xE;
- v8 = 0xF;
- }
- else
- {
- v7 = 0xF2;
- v8 = 0xE;
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- v9 = v6;
- v10 = 0x100 - v6;
- v11 = 0xF;
- v12 = 0xF0;
- }
- else
- {
- v12 = 0x100;
- v8 = 0;
- v7 = 0x100;
- v9 = 0LL;
- v10 = 0x100;
- v11 = 0x10;
- }
- v13 = vdupq_n_s32(v8);
- v14 = (int8x16_t *)(a1 + v9);
- *v14 = vmovn_hight_s16(
- vmovn_s16(
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0100)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0110))),
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0120)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0130)));
- v14[1] = vmovn_hight_s16(
- vmovn_s16(
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0140)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0150))),
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0160)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0170)));
- v14[2] = vmovn_hight_s16(
- vmovn_s16(
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0180)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0190))),
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A01A0)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A01B0)));
- v14[3] = vmovn_hight_s16(
- vmovn_s16(
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A01C0)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A01D0))),
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A01E0)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A01F0)));
- v14[4] = vmovn_hight_s16(
- vmovn_s16(
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0200)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0210))),
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0220)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0230)));
- v14[5] = vmovn_hight_s16(
- vmovn_s16(
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0240)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0250))),
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0260)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0270)));
- v14[6] = vmovn_hight_s16(
- vmovn_s16(
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0280)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0290))),
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A02A0)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A02B0)));
- v14[7] = vmovn_hight_s16(
- vmovn_s16(
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A02C0)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A02D0))),
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A02E0)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A02F0)));
- v14[8] = vmovn_hight_s16(
- vmovn_s16(
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0300)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0310))),
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0320)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0330)));
- v14[9] = vmovn_hight_s16(
- vmovn_s16(
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0340)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0350))),
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0360)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0370)));
- v14[0xA] = vmovn_hight_s16(
- vmovn_s16(
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0380)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0390))),
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A03A0)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A03B0)));
- v14[0xB] = vmovn_hight_s16(
- vmovn_s16(
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A03C0)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A03D0))),
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A03E0)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A03F0)));
- v14[0xC] = vmovn_hight_s16(
- vmovn_s16(
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0400)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0410))),
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0420)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0430)));
- v14[0xD] = vmovn_hight_s16(
- vmovn_s16(
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0440)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0450))),
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0460)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A0470)));
- v15 = vaddq_s32(v13, (int32x4_t)xmmword_5A0480);
- v14[0xE] = vmovn_hight_s16(
- vmovn_s16(
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A0490)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A04A0))),
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A04B0)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A04C0)));
- if ( v11 == 0x10 )
- v14[0xF] = vmovn_hight_s16(
- vmovn_s16(vmovn_hight_s32(vmovn_s32(v15), vaddq_s32(v13, (int32x4_t)xmmword_5A04D0))),
- vmovn_hight_s32(
- vmovn_s32(vaddq_s32(v13, (int32x4_t)xmmword_5A04E0)),
- vaddq_s32(v13, (int32x4_t)xmmword_5A04F0)));
- v3 = v10 == v12;
- v16 = v8 + v12;
- v17 = v7 - v12;
- if ( !v3 )
- {
- *(_BYTE *)(a1 + v16) = v16;
- if ( v17 != 1 )
- {
- *(_BYTE *)(a1 + v16 + 1) = v16 + 1;
- if ( v17 != 2 )
- {
- *(_BYTE *)(a1 + v16 + 2) = v16 + 2;
- if ( v17 != 3 )
- {
- *(_BYTE *)(a1 + v16 + 3) = v16 + 3;
- if ( v17 != 4 )
- {
- *(_BYTE *)(a1 + v16 + 4) = v16 + 4;
- if ( v17 != 5 )
- {
- *(_BYTE *)(a1 + v16 + 5) = v16 + 5;
- if ( v17 != 6 )
- {
- *(_BYTE *)(a1 + v16 + 6) = v16 + 6;
- if ( v17 != 7 )
- {
- *(_BYTE *)(a1 + v16 + 7) = v16 + 7;
- if ( v17 != 8 )
- {
- *(_BYTE *)(a1 + v16 + 8) = v16 + 8;
- if ( v17 != 9 )
- {
- *(_BYTE *)(a1 + v16 + 9) = v16 + 9;
- if ( v17 != 0xA )
- {
- *(_BYTE *)(a1 + v16 + 0xA) = v16 + 0xA;
- if ( v17 != 0xB )
- {
- *(_BYTE *)(a1 + v16 + 0xB) = v16 + 0xB;
- if ( v17 != 0xC )
- {
- *(_BYTE *)(a1 + v16 + 0xC) = v16 + 0xC;
- if ( v17 != 0xD )
- {
- *(_BYTE *)(a1 + v16 + 0xD) = v16 + 0xD;
- v18 = v16 + 0xE;
- if ( v17 != 0xE )
- *(_BYTE *)(a1 + v18) = v18;
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- v19 = (char *)a1;
- v20 = 0;
- v21 = 0;
- do
- {
- v22 = v21;
- if ( v5 == v21 )
- v22 = 0LL;
- v23 = *v19;
- v3 = v5 == v21++;
- if ( v3 )
- v21 = 1;
- v20 += v23 + *(_BYTE *)(a2 + v22);
- v24 = *(_BYTE *)(a1 + v20);
- *(_BYTE *)(a1 + v20) = v23;
- *v19++ = v24;
- }
- while ( v19 != (char *)(a1 + 0x100) );
- *(_DWORD *)(a1 + 0x104) = *(unsigned __int8 *)(a1 + 1);
- *(_DWORD *)(a1 + 0x100) = 1;
- }
- else
- {
- v4 = 0xFFFFFFFF;
- }
- return v4;
- }
- __int64 __fastcall decBuffer(__int64 a1, unsigned __int8 *a2, unsigned __int64 *a3, unsigned __int8 **a4)
- {
- __int64 v4; // x22
- unsigned __int8 *v5; // x21
- unsigned __int64 *v6; // x19
- unsigned __int8 **v7; // x20
- void *v8; // x23
- unsigned __int8 *v9; // x2
- int v10; // w1
- int v11; // w21
- unsigned __int8 *v12; // x0
- __int64 result; // x0
- v4 = a1;
- v5 = a2;
- v6 = a3;
- v7 = a4;
- v8 = (void *)operator new[]((unsigned __int64)*a2 << 0xD);
- *v6 = (unsigned __int64)*v5 << 0xD;
- if ( v4 )
- {
- v9 = v5;
- v10 = 0;
- do
- {
- *v9++ ^= aNc315xhw[v10];
- v10 = (v10 + 1) % 9;
- }
- while ( v9 != &v5[v4] );
- }
- v11 = uncompress(v8, v6, v5 + 1, v4 - 1);
- v12 = (unsigned __int8 *)operator new[](*v6);
- *v7 = v12;
- if ( v11 )
- {
- operator delete[](v8);
- result = 0LL;
- }
- else
- {
- memcpy(v12, v8, *v6);
- operator delete[](v8);
- result = 1LL;
- }
- return result;
- }
Advertisement
Add Comment
Please, Sign In to add comment