Advertisement
Guest User

16135_origi

a guest
Nov 18th, 2013
149
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 12.34 KB | None | 0 0
  1. char __thiscall sub_7199F0(void *this, int a2)
  2. {
  3.   char v2; // cl@1
  4.   char v9; // al@2
  5.   char v10; // dl@4
  6.   char v16; // al@5
  7.   char v17; // al@7
  8.   char v23; // al@8
  9.   char v24; // al@10
  10.   char v25; // cl@10
  11.   char v26; // cl@10
  12.   char v27; // zf@10
  13.   int v28; // eax@10
  14.   char v29; // al@12
  15.   char v30; // dl@12
  16.   char v31; // cl@12
  17.   char v32; // al@14
  18.   char v33; // cl@14
  19.   char v34; // dl@14
  20.   char v35; // al@16
  21.   char v36; // dl@16
  22.   char v37; // al@18
  23.   char v38; // cl@18
  24.   char v39; // dl@18
  25.   char v40; // al@20
  26.   char v41; // dl@20
  27.   char v42; // al@22
  28.   char v43; // cl@22
  29.   char v44; // dl@22
  30.   char v45; // al@25
  31.   char v46; // bl@25
  32.   char v47; // cl@25
  33.   char v48; // al@27
  34.   char v49; // dl@27
  35.   char v50; // al@29
  36.   char v51; // cl@29
  37.   char v52; // dl@29
  38.   char v53; // al@31
  39.   char v54; // dl@31
  40.   char v55; // al@33
  41.   char v56; // cl@33
  42.   char v57; // dl@33
  43.   char v58; // al@35
  44.   char v59; // dl@35
  45.   char v60; // cl@35
  46.   char v61; // al@37
  47.   char v62; // cl@37
  48.   char v63; // dl@37
  49.   char v64; // al@39
  50.   char v65; // cl@39
  51.   char v66; // al@41
  52.   char v67; // dl@41
  53.   char v68; // cl@41
  54.   char v69; // dl@43
  55.   int v70; // edx@45
  56.   int v71; // edx@47
  57.   char v72; // al@52
  58.   char v73; // al@54
  59.   char v74; // al@56
  60.   char v75; // al@58
  61.   unsigned int v76; // ebx@60
  62.   char v77; // al@62
  63.   char v78; // al@64
  64.   char v79; // al@66
  65.   char v80; // al@68
  66.   char v81; // al@70
  67.   char v82; // al@72
  68.   char v83; // al@74
  69.   char v84; // al@76
  70.   char v85; // al@78
  71.   char v86; // al@80
  72.   char v87; // al@82
  73.   char v88; // al@84
  74.   char v89; // al@87
  75.   char v90; // al@91
  76.   char v91; // al@93
  77.   char v92; // al@95
  78.   char v93; // al@97
  79.   char v94; // al@99
  80.   char v95; // al@101
  81.   char v96; // al@105
  82.   int v97; // eax@107
  83.   int v113; // esi@119
  84.   int v115; // [sp+Ch] [bp-8h]@1
  85.   int v116; // [sp+10h] [bp-4h]@7
  86.   int v117; // [sp+1Ch] [bp+8h]@113
  87.   int v118; // [sp+1Ch] [bp+8h]@115
  88.   int v119; // [sp+1Ch] [bp+8h]@117
  89.  
  90.   _ESI = this;
  91.   CDataStore__PutInt32(1654);
  92.   CDataStore__PutFloat(*((float *)_ESI + 11));
  93.   CDataStore__PutInt8(*((_BYTE *)_ESI + 176));
  94.   CDataStore__PutFloat(*((float *)_ESI + 10));
  95.   CDataStore__PutFloat(*((float *)_ESI + 9));
  96.   __asm
  97.   {
  98.     movss   xmm1, dword ptr [esi+70h]
  99.     xorps   xmm0, xmm0
  100.   }
  101.   v2 = *((_BYTE *)_ESI + 21) != 0;
  102.   __asm
  103.   {
  104.     ucomiss xmm1, xmm0
  105.     lahf
  106.   }
  107.   v115 = a2;
  108.   if ( __SETP__(_AH & 0x44, 0) )
  109.     v9 = 0;
  110.   else
  111.     v9 = 1;
  112.   __asm { movss   xmm1, dword ptr [esi+30h] }
  113.   v10 = 2 * (2 * (2 * (v9 | 2 * v2) | *((_BYTE *)_ESI + 23) != 0) | *((_DWORD *)_ESI + 8) == 0);
  114.   __asm
  115.   {
  116.     ucomiss xmm1, xmm0
  117.     lahf
  118.   }
  119.   if ( __SETP__(_AH & 0x44, 0) )
  120.     v16 = 0;
  121.   else
  122.     v16 = 1;
  123.   LOBYTE(v116) = 2 * (2 * (v16 | 2 * (v10 | *((_BYTE *)_ESI + 187) != 0)) | *((_BYTE *)_ESI + 188) != 0) | *((_DWORD *)_ESI + 42) == 0;
  124.   v17 = CDataStore__PutInt8(v116);
  125.   __asm
  126.   {
  127.     movss   xmm0, dword ptr [esi+90h]
  128.     ucomiss xmm0, ds:dword_CEE1E8
  129.     lahf
  130.   }
  131.   if ( __SETP__(_AH & 0x44, 0) )
  132.     v23 = 0;
  133.   else
  134.     v23 = 1;
  135.   LOBYTE(v116) = v23 | 2
  136.                      * (2
  137.                       * (2
  138.                        * (*((_BYTE *)_ESI + 148) | 2
  139.                                                  * (2
  140.                                                   * (*((_BYTE *)_ESI + 149) | 2
  141.                                                                             * (*((_BYTE *)_ESI + 172) | 2 * (*((_BYTE *)_ESI + 16) != 0))) | *((_DWORD *)_ESI + 6) == 0)) | *((_BYTE *)_ESI + 185) != 0) | *((_BYTE *)_ESI + 191) != 0);
  142.   CDataStore__PutInt8(v116);
  143.   LOBYTE(a2) = 0;
  144.   v26 = 2 * (2 * (*((_BYTE *)_ESI + 18) != 0) | *((_BYTE *)_ESI + 189) != 0) | *((_BYTE *)_ESI + 184) != 0;
  145.   v27 = *((_BYTE *)_ESI + 19) == 0;
  146.   BYTE1(v116) = 5;
  147.   v28 = *((_DWORD *)_ESI + 39);
  148.   LOBYTE(v116) = 2 * (2 * v26 | !v27) | *((_DWORD *)_ESI + 7) == 0;
  149.   sub_701FD0(v28, a2);
  150.   v24 = 6;
  151.   v25 = 2 * v116 | *((_BYTE *)_ESI + 20) != 0;
  152.   LOBYTE(v116) = 2 * v116 | *((_BYTE *)_ESI + 20) != 0;
  153.   BYTE1(v116) = 6;
  154.   v31 = 2 * v25;
  155.   v29 = v24 + 1;
  156.   v30 = v31 | *((_BYTE *)_ESI + 22) != 0;
  157.   LOBYTE(v116) = v31 | *((_BYTE *)_ESI + 22) != 0;
  158.   BYTE1(v116) = v29;
  159.   if ( v29 == 8 )
  160.   {
  161.     CDataStore__PutInt8(v116);
  162.     v29 = 0;
  163.     v30 = 0;
  164.   }
  165.   v34 = 2 * v30;
  166.   v32 = v29 + 1;
  167.   v33 = v34 | *((_BYTE *)_ESI + 186) != 0;
  168.   LOBYTE(v116) = v34 | *((_BYTE *)_ESI + 186) != 0;
  169.   BYTE1(v116) = v32;
  170.   if ( v32 == 8 )
  171.   {
  172.     CDataStore__PutInt8(v116);
  173.     v32 = 0;
  174.     v33 = 0;
  175.   }
  176.   v35 = v32 + 1;
  177.   v36 = *((_BYTE *)_ESI + 116) | 2 * v33;
  178.   LOBYTE(v116) = *((_BYTE *)_ESI + 116) | 2 * v33;
  179.   BYTE1(v116) = v35;
  180.   if ( v35 == 8 )
  181.   {
  182.     CDataStore__PutInt8(v116);
  183.     v35 = 0;
  184.     v36 = 0;
  185.   }
  186.   v39 = 2 * v36;
  187.   v37 = v35 + 1;
  188.   v38 = v39 | *((_BYTE *)_ESI + 190) != 0;
  189.   LOBYTE(v116) = v39 | *((_BYTE *)_ESI + 190) != 0;
  190.   BYTE1(v116) = v37;
  191.   if ( v37 == 8 )
  192.   {
  193.     CDataStore__PutInt8(v116);
  194.     v37 = 0;
  195.     v38 = 0;
  196.   }
  197.   v40 = v37 + 1;
  198.   v41 = *((_BYTE *)_ESI + 56) | 2 * v38;
  199.   LOBYTE(v116) = *((_BYTE *)_ESI + 56) | 2 * v38;
  200.   BYTE1(v116) = v40;
  201.   if ( v40 == 8 )
  202.   {
  203.     CDataStore__PutInt8(v116);
  204.     v40 = 0;
  205.     v41 = 0;
  206.   }
  207.   v44 = 2 * v41;
  208.   v42 = v40 + 1;
  209.   v43 = v44 | *((_BYTE *)_ESI + 17) != 0;
  210.   LOBYTE(v116) = v44 | *((_BYTE *)_ESI + 17) != 0;
  211.   BYTE1(v116) = v42;
  212.   if ( v42 == 8 )
  213.   {
  214.     CDataStore__PutInt8(v116);
  215.     v42 = 0;
  216.     v43 = 0;
  217.     LOWORD(v116) = 0;
  218.   }
  219.   if ( *((_BYTE *)_ESI + 56) )
  220.   {
  221.     v47 = 2 * v43;
  222.     v45 = v42 + 1;
  223.     v46 = v47 | *((_BYTE *)_ESI + 64) != 0;
  224.     LOBYTE(v116) = v47 | *((_BYTE *)_ESI + 64) != 0;
  225.     BYTE1(v116) = v45;
  226.     if ( v45 == 8 )
  227.     {
  228.       CDataStore__PutInt8(v116);
  229.       v45 = 0;
  230.       v46 = 0;
  231.     }
  232.     v49 = 2 * v46 | *((_BYTE *)_ESI + 69) != 0;
  233.     v48 = v45 + 1;
  234.     LOBYTE(v116) = 2 * v46 | *((_BYTE *)_ESI + 69) != 0;
  235.     BYTE1(v116) = v48;
  236.     if ( v48 == 8 )
  237.     {
  238.       CDataStore__PutInt8(v116);
  239.       v48 = 0;
  240.       v49 = 0;
  241.     }
  242.     v52 = 2 * v49;
  243.     v50 = v48 + 1;
  244.     v51 = v52 | *((_BYTE *)_ESI + 71) != 0;
  245.     LOBYTE(v116) = v52 | *((_BYTE *)_ESI + 71) != 0;
  246.     BYTE1(v116) = v50;
  247.     if ( v50 == 8 )
  248.     {
  249.       CDataStore__PutInt8(v116);
  250.       v50 = 0;
  251.       v51 = 0;
  252.     }
  253.     v53 = v50 + 1;
  254.     v54 = *((_BYTE *)_ESI + 96) | 2 * v51;
  255.     LOBYTE(v116) = *((_BYTE *)_ESI + 96) | 2 * v51;
  256.     BYTE1(v116) = v53;
  257.     if ( v53 == 8 )
  258.     {
  259.       CDataStore__PutInt8(v116);
  260.       v53 = 0;
  261.       v54 = 0;
  262.     }
  263.     v57 = 2 * v54;
  264.     v55 = v53 + 1;
  265.     v56 = v57 | *((_BYTE *)_ESI + 65) != 0;
  266.     LOBYTE(v116) = v57 | *((_BYTE *)_ESI + 65) != 0;
  267.     BYTE1(v116) = v55;
  268.     if ( v55 == 8 )
  269.     {
  270.       CDataStore__PutInt8(v116);
  271.       v55 = 0;
  272.       v56 = 0;
  273.     }
  274.     v60 = 2 * v56;
  275.     v58 = v55 + 1;
  276.     v59 = v60 | *((_BYTE *)_ESI + 66) != 0;
  277.     LOBYTE(v116) = v60 | *((_BYTE *)_ESI + 66) != 0;
  278.     BYTE1(v116) = v58;
  279.     if ( v58 == 8 )
  280.     {
  281.       CDataStore__PutInt8(v116);
  282.       v58 = 0;
  283.       v59 = 0;
  284.     }
  285.     v63 = 2 * v59;
  286.     v61 = v58 + 1;
  287.     v62 = v63 | *((_BYTE *)_ESI + 68) != 0;
  288.     LOBYTE(v116) = v63 | *((_BYTE *)_ESI + 68) != 0;
  289.     BYTE1(v116) = v61;
  290.     if ( v61 == 8 )
  291.     {
  292.       CDataStore__PutInt8(v116);
  293.       v61 = 0;
  294.       v62 = 0;
  295.     }
  296.     v65 = *((_BYTE *)_ESI + 104) | 2 * v62;
  297.     v64 = v61 + 1;
  298.     LOBYTE(v116) = v65;
  299.     BYTE1(v116) = v64;
  300.     if ( v64 == 8 )
  301.     {
  302.       CDataStore__PutInt8(v116);
  303.       v64 = 0;
  304.       v65 = 0;
  305.     }
  306.     v68 = 2 * v65;
  307.     v66 = v64 + 1;
  308.     v67 = v68 | *((_BYTE *)_ESI + 70) != 0;
  309.     LOBYTE(v116) = v68 | *((_BYTE *)_ESI + 70) != 0;
  310.     BYTE1(v116) = v66;
  311.     if ( v66 == 8 )
  312.     {
  313.       CDataStore__PutInt8(v116);
  314.       v66 = 0;
  315.       v67 = 0;
  316.     }
  317.     v69 = 2 * v67;
  318.     v42 = v66 + 1;
  319.     v43 = v69 | *((_BYTE *)_ESI + 67) != 0;
  320.     LOBYTE(v116) = v69 | *((_BYTE *)_ESI + 67) != 0;
  321.     BYTE1(v116) = v42;
  322.     if ( v42 == 8 )
  323.     {
  324.       CDataStore__PutInt8(v116);
  325.       v42 = 0;
  326.       v43 = 0;
  327.       LOWORD(v116) = 0;
  328.     }
  329.   }
  330.   v70 = *((_DWORD *)_ESI + 6);
  331.   if ( v70 )
  332.   {
  333.     LOBYTE(a2) = 0;
  334.     sub_70E930(v70, a2);
  335.     v42 = BYTE1(v116);
  336.     v43 = v116;
  337.   }
  338.   v71 = *((_DWORD *)_ESI + 7);
  339.   if ( v71 )
  340.   {
  341.     LOBYTE(a2) = 0;
  342.     sub_70E670(v71, a2);
  343.     v42 = BYTE1(v116);
  344.     v43 = v116;
  345.   }
  346.   if ( *((_BYTE *)_ESI + 116) )
  347.   {
  348.     LOBYTE(v116) = *((_BYTE *)_ESI + 128) | 2 * v43;
  349.     BYTE1(v116) = v42 + 1;
  350.     if ( v42 == 7 )
  351.     {
  352.       CDataStore__PutInt8(v116);
  353.       LOWORD(v116) = 0;
  354.     }
  355.   }
  356.   sub_6FB500(&v115);
  357.   v72 = *((_BYTE *)_ESI + 20);
  358.   if ( v72 )
  359.     CDataStore__PutInt8(v72 ^ 1);
  360.   v73 = *((_BYTE *)_ESI + 17);
  361.   if ( v73 )
  362.     CDataStore__PutInt8(v73 ^ 1);
  363.   v74 = *((_BYTE *)_ESI + 191);
  364.   if ( v74 )
  365.     CDataStore__PutInt8(v74 ^ 1);
  366.   v75 = *((_BYTE *)_ESI + 185);
  367.   if ( v75 )
  368.     CDataStore__PutInt8(v75 ^ 1);
  369.   v76 = 0;
  370.   if ( *((_DWORD *)_ESI + 39) )
  371.   {
  372.     do
  373.       CDataStore__PutInt32(*(_DWORD *)(*((_DWORD *)_ESI + 40) + 4 * v76++));
  374.     while ( v76 < *((_DWORD *)_ESI + 39) );
  375.   }
  376.   v77 = *((_BYTE *)_ESI + 16);
  377.   if ( v77 )
  378.     CDataStore__PutInt8(v77 ^ 1);
  379.   v78 = *((_BYTE *)_ESI + 187);
  380.   if ( v78 )
  381.     CDataStore__PutInt8(v78 ^ 1);
  382.   v79 = *((_BYTE *)_ESI + 189);
  383.   if ( v79 )
  384.     CDataStore__PutInt8(v79 ^ 1);
  385.   v80 = *((_BYTE *)_ESI + 190);
  386.   if ( v80 )
  387.     CDataStore__PutInt8(v80 ^ 1);
  388.   v81 = *((_BYTE *)_ESI + 186);
  389.   if ( v81 )
  390.     CDataStore__PutInt8(v81 ^ 1);
  391.   v82 = *((_BYTE *)_ESI + 22);
  392.   if ( v82 )
  393.     CDataStore__PutInt8(v82 ^ 1);
  394.   v83 = *((_BYTE *)_ESI + 18);
  395.   if ( v83 )
  396.     CDataStore__PutInt8(v83 ^ 1);
  397.   v84 = *((_BYTE *)_ESI + 188);
  398.   if ( v84 )
  399.     CDataStore__PutInt8(v84 ^ 1);
  400.   v85 = *((_BYTE *)_ESI + 19);
  401.   if ( v85 )
  402.     CDataStore__PutInt8(v85 ^ 1);
  403.   v86 = *((_BYTE *)_ESI + 23);
  404.   if ( v86 )
  405.     CDataStore__PutInt8(v86 ^ 1);
  406.   v87 = *((_BYTE *)_ESI + 184);
  407.   if ( v87 )
  408.     CDataStore__PutInt8(v87 ^ 1);
  409.   v88 = *((_BYTE *)_ESI + 21);
  410.   if ( v88 )
  411.     CDataStore__PutInt8(v88 ^ 1);
  412.   if ( *((_BYTE *)_ESI + 56) )
  413.   {
  414.     CDataStore__PutFloat(*((float *)_ESI + 18));
  415.     v89 = *((_BYTE *)_ESI + 71);
  416.     if ( v89 )
  417.       CDataStore__PutInt8(v89 ^ 1);
  418.     if ( *((_BYTE *)_ESI + 104) )
  419.       CDataStore__PutInt32(*((_DWORD *)_ESI + 27));
  420.     v90 = *((_BYTE *)_ESI + 65);
  421.     if ( v90 )
  422.       CDataStore__PutInt8(v90 ^ 1);
  423.     v91 = *((_BYTE *)_ESI + 66);
  424.     if ( v91 )
  425.       CDataStore__PutInt8(v91 ^ 1);
  426.     CDataStore__PutFloat(*((float *)_ESI + 20));
  427.     v92 = *((_BYTE *)_ESI + 68);
  428.     if ( v92 )
  429.       CDataStore__PutInt8(v92 ^ 1);
  430.     v93 = *((_BYTE *)_ESI + 69);
  431.     if ( v93 )
  432.       CDataStore__PutInt8(v93 ^ 1);
  433.     v94 = *((_BYTE *)_ESI + 70);
  434.     if ( v94 )
  435.       CDataStore__PutInt8(v94 ^ 1);
  436.     v95 = *((_BYTE *)_ESI + 67);
  437.     if ( v95 )
  438.       CDataStore__PutInt8(v95 ^ 1);
  439.     CDataStore__PutFloat(*((float *)_ESI + 21));
  440.     CDataStore__PutInt8(*((_BYTE *)_ESI + 88));
  441.     CDataStore__PutInt32(*((_DWORD *)_ESI + 23));
  442.     CDataStore__PutFloat(*((float *)_ESI + 19));
  443.     if ( *((_BYTE *)_ESI + 96) )
  444.       CDataStore__PutInt32(*((_DWORD *)_ESI + 25));
  445.     v96 = *((_BYTE *)_ESI + 64);
  446.     if ( v96 )
  447.       CDataStore__PutInt8(v96 ^ 1);
  448.   }
  449.   v97 = *((_DWORD *)_ESI + 42);
  450.   if ( v97 )
  451.     LOBYTE(v97) = CDataStore__PutInt32(*((_DWORD *)_ESI + 42));
  452.   if ( *((_BYTE *)_ESI + 116) )
  453.   {
  454.     CDataStore__PutFloat(*((float *)_ESI + 31));
  455.     if ( *((_BYTE *)_ESI + 128) )
  456.     {
  457.       CDataStore__PutFloat(*((float *)_ESI + 33));
  458.       CDataStore__PutFloat(*((float *)_ESI + 34));
  459.       CDataStore__PutFloat(*((float *)_ESI + 35));
  460.     }
  461.     LOBYTE(v97) = CDataStore__PutInt32(*((_DWORD *)_ESI + 30));
  462.   }
  463.   __asm
  464.   {
  465.     movss   xmm0, dword ptr [esi+30h]
  466.     ucomiss xmm0, ds:dword_CEE1E8
  467.     lahf
  468.     movss   [ebp+arg_0], xmm0
  469.   }
  470.   if ( __SETP__(_AH & 0x44, 0) )
  471.     LOBYTE(v97) = CDataStore__PutFloat(v117);
  472.   __asm
  473.   {
  474.     movss   xmm0, dword ptr [esi+70h]
  475.     ucomiss xmm0, ds:dword_CEE1E8
  476.     lahf
  477.     movss   [ebp+arg_0], xmm0
  478.   }
  479.   if ( __SETP__(_AH & 0x44, 0) )
  480.     LOBYTE(v97) = CDataStore__PutFloat(v118);
  481.   __asm
  482.   {
  483.     movss   xmm0, dword ptr [esi+90h]
  484.     ucomiss xmm0, ds:dword_CEE1E8
  485.     lahf
  486.     movss   [ebp+arg_0], xmm0
  487.   }
  488.   if ( __SETP__(_AH & 0x44, 0) )
  489.     LOBYTE(v97) = CDataStore__PutFloat(v119);
  490.   v113 = *((_DWORD *)_ESI + 8);
  491.   if ( v113 )
  492.     LOBYTE(v97) = CDataStore__PutInt32(v113);
  493.   return v97;
  494. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement