Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int __fastcall Aska::_DecodeMain<true,7>::Decode(int a1, Aska *this, void *a3)
- {
- void *v3; // r4
- Aska *v4; // r9
- int v5; // r8
- Aska *v6; // r0
- void **v7; // r1
- Aska *v8; // r7
- void **v9; // r1
- int v10; // r0
- int v12; // [sp+0h] [bp-38h]
- void *v13; // [sp+4h] [bp-34h]
- int v14; // [sp+8h] [bp-30h]
- int v15; // [sp+Ch] [bp-2Ch]
- void *v16; // [sp+10h] [bp-28h]
- int v17; // [sp+14h] [bp-24h]
- v3 = a3;
- v4 = this;
- v5 = a1;
- if ( (signed int)a3 <= 0x10000 )
- return Aska::DecompressZSTD(v4, v3, v5, v3, v12);
- v6 = (Aska *)Aska::CreateZSTDStream((Aska *)a1);
- v8 = v6;
- if ( !v6 )
- return Aska::DecompressZSTD(v4, v3, v5, v3, v12);
- if ( !Aska::InitializeDecompressStreamZSTD(v6, v7)
- || (v15 = v5,
- v16 = v3,
- v12 = (int)v4,
- v13 = v3,
- v17 = 0,
- v14 = 0,
- v10 = Aska::DecompressStreamZSTD(v8, &v12, &v15),
- v10 < 0) )
- {
- LABEL_7:
- Aska::DeleteZSTDStream(v8, v9);
- return Aska::DecompressZSTD(v4, v3, v5, v3, v12);
- }
- while ( v10 )
- {
- Aska::Thread::Switch();
- v10 = Aska::DecompressStreamZSTD(v8, &v12, &v15);
- if ( v10 < 0 )
- goto LABEL_7;
- }
- return Aska::DeleteZSTDStream(v8, v9);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement