PYTHON 129
Wall O Text By SkyFire on 18th November 2018 03:57:26 AM
  1.  
  2.  
  3. unsigned int __thiscall sub_733B08(_DWORD *this, CDataStore *a2, int a3)
  4. {
  5.   _DWORD *v3; // esi
  6.   unsigned int v4; // eax
  7.   unsigned int result; // eax
  8.   int v6; // edi
  9.   int v7; // ebx
  10.   int v8; // ebx
  11.   int v9; // ebx
  12.   int v10; // ebx
  13.   int v11; // ebx
  14.   int v12; // ebx
  15.   int v13; // ebx
  16.   int v14; // ebx
  17.   int v15; // ebx
  18.   int v16; // ebx
  19.   int v17; // ebx
  20.   int v18; // ebx
  21.   int v19; // ebx
  22.   int v20; // ebx
  23.   int v21; // ebx
  24.   int v22; // ebx
  25.   char v23; // al
  26.   int v24; // edi
  27.   _BYTE *v25; // ebx
  28.   _BYTE *v26; // ebx
  29.   _BYTE *v27; // ebx
  30.   _BYTE *v28; // ebx
  31.   _BYTE *v29; // ebx
  32.   int v30; // eax
  33.   _BYTE *v31; // ebx
  34.   _BYTE *v32; // ebx
  35.   _BYTE *v33; // ebx
  36.   int v34; // ebx
  37.   int v35; // eax
  38.   _BYTE *v36; // ebx
  39.   _BYTE *v37; // ebx
  40.   _BYTE *v38; // ebx
  41.   int v39; // eax
  42.   _BYTE *v40; // ebx
  43.   _BYTE *v41; // ebx
  44.   int v42; // eax
  45.   _BYTE *v43; // ebx
  46.   _BYTE *v44; // ebx
  47.   CDataStore *v45; // [esp+Ch] [ebp-14h]
  48.   __int16 v46; // [esp+10h] [ebp-10h]
  49.   int v47; // [esp+14h] [ebp-Ch]
  50.   unsigned int v48; // [esp+18h] [ebp-8h]
  51.   char v49; // [esp+1Fh] [ebp-1h]
  52.  
  53.   v45 = a2;
  54.   LOBYTE(v47) = 0;
  55.   v3 = this;
  56.   v46 = 2048;
  57.   v4 = CBitPack::Read7Bits((CBitPack *)&v45, v47);
  58.   result = sub_728D6E(v4);
  59.   v48 = 0;
  60.   if ( v3[4] )
  61.   {
  62.     v6 = 0;
  63.     do
  64.     {
  65.       v7 = v3[5];
  66.       *(_BYTE *)(v7 + v6 + 9) = CBitPack::ReadBit((CBitPack *)&v45);
  67.       v8 = v3[5];
  68.       *(_BYTE *)(v8 + v6 + 11) = CBitPack::ReadBit((CBitPack *)&v45);
  69.       v9 = v3[5];
  70.       *(_BYTE *)(v9 + v6 + 1) = CBitPack::ReadBit((CBitPack *)&v45);
  71.       v10 = v3[5];
  72.       *(_BYTE *)(v10 + v6 + 10) = CBitPack::ReadBit((CBitPack *)&v45);
  73.       v11 = v3[5];
  74.       *(_BYTE *)(v11 + v6 + 2) = CBitPack::ReadBit((CBitPack *)&v45);
  75.       v12 = v3[5];
  76.       *(_BYTE *)(v12 + v6 + 13) = CBitPack::ReadBit((CBitPack *)&v45);
  77.       v13 = v3[5];
  78.       *(_BYTE *)(v13 + v6 + 8) = CBitPack::ReadBit((CBitPack *)&v45);
  79.       v14 = v3[5];
  80.       *(_BYTE *)(v14 + v6 + 6) = CBitPack::ReadBit((CBitPack *)&v45);
  81.       v15 = v3[5];
  82.       *(_BYTE *)(v15 + v6 + 5) = CBitPack::ReadBit((CBitPack *)&v45);
  83.       v16 = v3[5];
  84.       *(_BYTE *)(v16 + v6 + 12) = CBitPack::ReadBit((CBitPack *)&v45);
  85.       v17 = v3[5];
  86.       *(_BYTE *)(v17 + v6 + 7) = CBitPack::ReadBit((CBitPack *)&v45);
  87.       v18 = v3[5];
  88.       *(_BYTE *)(v18 + v6 + 3) = CBitPack::ReadBit((CBitPack *)&v45);
  89.       v19 = v3[5];
  90.       *(_BYTE *)(v19 + v6 + 4) = CBitPack::ReadBit((CBitPack *)&v45);
  91.       v20 = v3[5];
  92.       *(_BYTE *)(v20 + v6) = CBitPack::ReadBit((CBitPack *)&v45);
  93.       v21 = v3[5];
  94.       *(_BYTE *)(v21 + v6 + 14) = CBitPack::ReadBit((CBitPack *)&v45);
  95.       v22 = v3[5];
  96.       v23 = CBitPack::ReadBit((CBitPack *)&v45);
  97.       ++v48;
  98.       *(_BYTE *)(v22 + v6 + 15) = v23;
  99.       result = v48;
  100.       v6 += 40;
  101.     }
  102.     while ( v48 < v3[4] );
  103.   }
  104.   v24 = 0;
  105.   v48 = 0;
  106.   if ( v3[4] )
  107.   {
  108.     do
  109.     {
  110.       v25 = (_BYTE *)(v24 + v3[5] + 12);
  111.       if ( *v25 )
  112.       {
  113.         v49 = 0;
  114.         CDataStore::ReadInt8(a2, &v49);
  115.         *v25 ^= v49;
  116.       }
  117.       v26 = (_BYTE *)(v24 + v3[5] + 15);
  118.       if ( *v26 )
  119.       {
  120.         v49 = 0;
  121.         CDataStore::ReadInt8(a2, &v49);
  122.         *v26 ^= v49;
  123.       }
  124.       v27 = (_BYTE *)(v24 + v3[5] + 6);
  125.       if ( *v27 )
  126.       {
  127.         v49 = 0;
  128.         CDataStore::ReadInt8(a2, &v49);
  129.         *v27 ^= v49;
  130.       }
  131.       v28 = (_BYTE *)(v24 + v3[5] + 14);
  132.       if ( *v28 )
  133.       {
  134.         v49 = 0;
  135.         CDataStore::ReadInt8(a2, &v49);
  136.         *v28 ^= v49;
  137.       }
  138.       v29 = (_BYTE *)(v24 + v3[5] + 2);
  139.       if ( *v29 )
  140.       {
  141.         v49 = 0;
  142.         CDataStore::ReadInt8(a2, &v49);
  143.         *v29 ^= v49;
  144.       }
  145.       v47 = 0;
  146.       CDataStore::GetInt32(a2, &v47);
  147.       *(_DWORD *)(v24 + v3[5] + 32) = v47;
  148.       v30 = v3[5];
  149.       if ( *(_BYTE *)(v24 + v30 + 7) )
  150.       {
  151.         v31 = (_BYTE *)(v24 + v30 + 7);
  152.         v49 = 0;
  153.         CDataStore::ReadInt8(a2, &v49);
  154.         *v31 ^= v49;
  155.       }
  156.       v32 = (_BYTE *)(v24 + v3[5] + 3);
  157.       if ( *v32 )
  158.       {
  159.         v49 = 0;
  160.         CDataStore::ReadInt8(a2, &v49);
  161.         *v32 ^= v49;
  162.       }
  163.       v33 = (_BYTE *)(v24 + v3[5] + 8);
  164.       if ( *v33 )
  165.       {
  166.         v49 = 0;
  167.         CDataStore::ReadInt8(a2, &v49);
  168.         *v33 ^= v49;
  169.       }
  170.       v47 = 0;
  171.       CDataStore::GetInt32(a2, &v47);
  172.       *(_DWORD *)(v24 + v3[5] + 16) = v47;
  173.       if ( *(_BYTE *)(v24 + v3[5]) )
  174.       {
  175.         v34 = v3[5];
  176.         v49 = 0;
  177.         CDataStore::ReadInt8(a2, &v49);
  178.         *(_BYTE *)(v34 + v24) ^= v49;
  179.       }
  180.       v47 = 0;
  181.       CDataStore::GetInt32(a2, &v47);
  182.       *(_DWORD *)(v24 + v3[5] + 24) = v47;
  183.       v35 = v3[5];
  184.       if ( *(_BYTE *)(v24 + v35 + 10) )
  185.       {
  186.         v36 = (_BYTE *)(v24 + v35 + 10);
  187.         v49 = 0;
  188.         CDataStore::ReadInt8(a2, &v49);
  189.         *v36 ^= v49;
  190.       }
  191.       v37 = (_BYTE *)(v24 + v3[5] + 13);
  192.       if ( *v37 )
  193.       {
  194.         v49 = 0;
  195.         CDataStore::ReadInt8(a2, &v49);
  196.         *v37 ^= v49;
  197.       }
  198.       v38 = (_BYTE *)(v24 + v3[5] + 11);
  199.       if ( *v38 )
  200.       {
  201.         v49 = 0;
  202.         CDataStore::ReadInt8(a2, &v49);
  203.         *v38 ^= v49;
  204.       }
  205.       v47 = 0;
  206.       CDataStore::GetInt32(a2, &v47);
  207.       *(_DWORD *)(v24 + v3[5] + 28) = v47;
  208.       v39 = v3[5];
  209.       if ( *(_BYTE *)(v24 + v39 + 5) )
  210.       {
  211.         v40 = (_BYTE *)(v24 + v39 + 5);
  212.         v49 = 0;
  213.         CDataStore::ReadInt8(a2, &v49);
  214.         *v40 ^= v49;
  215.       }
  216.       v41 = (_BYTE *)(v24 + v3[5] + 1);
  217.       if ( *v41 )
  218.       {
  219.         v49 = 0;
  220.         CDataStore::ReadInt8(a2, &v49);
  221.         *v41 ^= v49;
  222.       }
  223.       v47 = 0;
  224.       CDataStore::GetInt32(a2, &v47);
  225.       *(_DWORD *)(v24 + v3[5] + 20) = v47;
  226.       v42 = v3[5];
  227.       if ( *(_BYTE *)(v24 + v42 + 4) )
  228.       {
  229.         v43 = (_BYTE *)(v24 + v42 + 4);
  230.         v49 = 0;
  231.         CDataStore::ReadInt8(a2, &v49);
  232.         *v43 ^= v49;
  233.       }
  234.       v44 = (_BYTE *)(v24 + v3[5] + 9);
  235.       if ( *v44 )
  236.       {
  237.         v49 = 0;
  238.         CDataStore::ReadInt8(a2, &v49);
  239.         *v44 ^= v49;
  240.       }
  241.       result = ++v48;
  242.       v24 += 40;
  243.     }
  244.     while ( v48 < v3[4] );
  245.   }
  246.   return result;
  247. }

Yourpaste is for source code and general debugging text.

Login or Register to edit, delete and keep track of your pastes and more.

Raw Paste

Login or Register to edit or fork this paste. It's free.