Untitled

mail@pastecode.io avatar
unknown
plain_text
a month ago
14 kB
2
Indexable
Never
_DWORD *__thiscall m_EPC_GetGHINMEI(_DWORD *this, int *structSized56)
{
  _DWORD *m_11; // eax
  int vtable_4; // eax
  _DWORD *linkedListStruct0; // esi
  int struct_7; // eax
  _DWORD *linkedListStruct; // ebx
  int struct_8; // eax
  int v9; // eax
  int vtable_10; // eax
  int vtable_11; // eax
  int int_v12; // esi
  int (__thiscall *func_v13)(char *, char *, int); // ebx
  int v14; // eax
  int v15; // eax
  _DWORD *v16; // eax
  int vtable_17; // eax
  int v18; // eax
  _DWORD *v19; // eax
  int vtable_20; // eax
  int *_struct1; // eax
  int int_v22; // eax
  _DWORD *v23; // eax
  int vtable_24; // eax
  _DWORD *v25; // eax
  int vtable_26; // eax
  int *_struct2; // eax
  _DWORD *v28; // eax
  int vtable_29; // eax
  _DWORD *v30; // eax
  int *v31; // eax
  int v32; // eax
  int *v33; // eax
  _DWORD *v34; // eax
  _DWORD *v35; // eax
  int vtable_36; // ebx
  int v37; // eax
  int v38; // eax
  _DWORD *v39; // eax
  int v40; // eax
  _DWORD *v41; // eax
  int v42; // eax
  int v43; // ebx
  int v44; // ecx
  char *v45; // ecx
  int v46; // ecx
  int v47; // ecx
  int v48; // ecx
  int v49; // ecx
  char *v50; // ecx
  int v51; // ecx
  int v52; // ecx
  int v53; // ecx
  int v54; // ecx
  char *v55; // ecx
  int v56; // ecx
  int v57; // ecx
  char *v58; // ecx
  int v59; // ecx
  char *v60; // ecx
  _DWORD *v61; // eax
  int vtable_62; // eax
  _DWORD *v63; // eax
  int vtable_64; // eax
  _DWORD *v65; // eax
  int vtable_66; // eax
  _DWORD *v67; // eax
  int vtable_68; // eax
  _DWORD *v69; // eax
  int vtable_70; // eax
  _DWORD *v71; // eax
  int vtable_72; // eax
  _DWORD *v73; // eax
  int vtable_74; // eax
  _DWORD *v75; // eax
  int v76; // eax
  _DWORD *v77; // eax
  int v78; // eax
  int *v79; // eax
  int v80; // edx
  int v81; // eax
  _DWORD *v82; // eax
  int v83; // eax
  int *v84; // esi
  int v85; // ebx
  int v86; // eax
  _DWORD *v87; // eax
  int v88; // ecx
  int v90; // [esp-14h] [ebp-6Ch] BYREF
  char v91; // [esp-10h] [ebp-68h]
  char *v92; // [esp-Ch] [ebp-64h] BYREF
  int v93; // [esp-8h] [ebp-60h] BYREF
  int int_v94; // [esp-4h] [ebp-5Ch] BYREF
  int v95; // [esp+0h] [ebp-58h]
  int v96; // [esp+Ch] [ebp-4Ch] BYREF
  char v97[4]; // [esp+10h] [ebp-48h] BYREF
  _DWORD *vtable_98; // [esp+14h] [ebp-44h]
  char v99[4]; // [esp+18h] [ebp-40h] BYREF
  char v100[4]; // [esp+1Ch] [ebp-3Ch] BYREF
  char char4_v101[4]; // [esp+20h] [ebp-38h] BYREF
  char char4_v102[4]; // [esp+24h] [ebp-34h] BYREF
  char char4_v103[4]; // [esp+28h] [ebp-30h] BYREF
  char v104[4]; // [esp+2Ch] [ebp-2Ch] BYREF
  int _count; // [esp+30h] [ebp-28h]
  char v106[4]; // [esp+34h] [ebp-24h] BYREF
  char char4_v107[4]; // [esp+38h] [ebp-20h] BYREF
  char char4_v108[4]; // [esp+3Ch] [ebp-1Ch] BYREF
  char char4_v109[4]; // [esp+40h] [ebp-18h] BYREF
  char char4_v110[4]; // [esp+44h] [ebp-14h] BYREF
  char char4_v111[4]; // [esp+48h] [ebp-10h] BYREF
  int *v112_ptr; // [esp+4Ch] [ebp-Ch]
  char char4_v112[4]; // [esp+50h] [ebp-8h] BYREF
  int seemsLikeFlag; // [esp+54h] [ebp-4h]

  seemsLikeFlag = 0;
  initVtable(this, (int)structSized56);
  *this = off_65C688;
  v112_ptr = 0;
  QtAllocate(char4_v111);
  QtAllocate(char4_v109);
  QtAllocate(char4_v107);
  QtAllocate(char4_v108);
  QtAllocate(char4_v112);
  QtAllocate(char4_v110);
  m_11 = (_DWORD *)get_m_11(this);
  vtable_4 = get_m_11(m_11);
  (*(void (__thiscall **)(_DWORD, int))(**(_DWORD **)(vtable_4 + 152) + 736))(*(_DWORD *)(vtable_4 + 152), 2);
  linkedListStruct0 = (_DWORD *)(p_someclass::ctor() + 192);
  if ( *(_DWORD *)(*linkedListStruct0 + 4) > 1u )
    possiblyCreateEmpty(linkedListStruct0);
  struct_7 = getNodeAt((_DWORD *)*linkedListStruct0, 0);
  ((void (__thiscall *)(char *, int))qt_mt312_1880)(char4_v107, struct_7 + 12);
  linkedListStruct = (_DWORD *)(p_someclass::ctor() + 212);
  if ( *(_DWORD *)(*linkedListStruct + 4) > 1u )
    possiblyCreateEmpty(linkedListStruct);
  struct_8 = getNodeAt((_DWORD *)*linkedListStruct, 0);
  ((void (__thiscall *)(char *, int))qt_mt312_1880)(char4_v108, struct_8 + 12);
  v9 = sub_52F4BD((int)&structSized56);
  ((void (__thiscall *)(char *, int))qt_mt312_1880)(char4_v110, v9);
  QtClean(&structSized56);
  vtable_10 = p_someclass::ctor();
  ((void (__thiscall *)(char *, int))qt_mt312_1880)(char4_v111, vtable_10 + 552);
  int_v94 = (int)aG40100;
  if ( (unsigned __int8)qt_mt312_2186(char4_v110) )
  {
    vtable_11 = p_someclass::ctor();
    ((void (__thiscall *)(char *, int))qt_mt312_1880)(char4_v109, vtable_11 + 556);
  }
  else
  {
    int_v94 = (int)aG30200;
    if ( (unsigned __int8)qt_mt312_2186(char4_v110) )
    {
      QtAllocate(&structSized56);
      EPC_Gcode((int)char4_v111, (int)&structSized56);
      v92 = &byte_6AE680;
      if ( !(unsigned __int8)qt_mt312_2244(&structSized56) )
      {
        *(_DWORD *)(p_someclass::ctor() + 560) = -1;
        sub_52F4EF(0);
        QtClean(&structSized56);
        goto Finish;
      }
      *(_DWORD *)(p_someclass::ctor() + 560) = 1;
      int_v22 = qt_mt312_7606(&structSized56, char4_v103, 3, 60);
      ((void (__thiscall *)(char *, int))qt_mt312_1880)(char4_v109, int_v22);
      QtClean(char4_v103);
      QtClean(&structSized56);
    }
  }
  EPC_Ghinmei(char4_v111);
  int_v12 = *(_DWORD *)(*(_DWORD *)qt_mt312_11422(char4_v112, &structSized56) + 12) & 0x3FFFFFFF;
  QtClean(&structSized56);
  if ( int_v12 )
  {
    _count = 0;
    func_v13 = (int (__thiscall *)(char *, char *, int))qt_mt312_7065;
    do
    {
      int_v94 = (int)char4_v102;
      v14 = func_v13(char4_v112, char4_v101, 6);
      HIBYTE(structSized56) = (*(_DWORD *)(*(_DWORD *)qt_mt312_11422(v14, v95) + 12) & 0x3FFFFFFF) != 0;// Clear 2MSB, extract remaining 30 bit
      QtClean(char4_v102);
      QtClean(char4_v101);
      if ( !HIBYTE(structSized56) )
        break;
      int_v94 = (int)char4_v108;
      v15 = func_v13(char4_v112, v100, 6);
      HIBYTE(structSized56) = (unsigned __int8)EPC_HinmeiCode(char4_v107, v15) == 1;
      QtClean(v100);
      if ( HIBYTE(structSized56) )
      {
        v16 = (_DWORD *)get_m_11(this);
        vtable_17 = get_m_11(v16);
        (*(void (__thiscall **)(_DWORD, int *, int))(**(_DWORD **)(vtable_17 + 152) + 836))(
          *(_DWORD *)(vtable_17 + 152),
          v112_ptr,
          1);
        QtAllocate(v106);
        v18 = func_v13(char4_v112, v99, 6);
        EPC_GetHinmei(v18);
        QtClean(v99);
        structSized56 = (int *)operator new(56u);
        if ( structSized56 )
        {
          QtRegexFunction(v104, &byte_6AE680);
          seemsLikeFlag |= 1u;                  // Set 1LSB
          v19 = (_DWORD *)get_m_11(this);
          vtable_20 = get_m_11(v19);
          qt_mt312_860(structSized56, *(_DWORD *)(vtable_20 + 152), 2, v104);
          _struct1 = structSized56;
          *structSized56 = (int)&off_65B1D4;
          _struct1[13] = 1;
        }
        else
        {
          structSized56 = 0;
        }
        v23 = (_DWORD *)get_m_11(this);
        vtable_24 = get_m_11(v23);
        (*(void (__thiscall **)(_DWORD, int *, _DWORD, int *))(**(_DWORD **)(vtable_24 + 152) + 612))(
          *(_DWORD *)(vtable_24 + 152),
          v112_ptr,
          0,
          structSized56);
        if ( (seemsLikeFlag & 1) != 0 )         // check LSB
        {
          seemsLikeFlag &= ~1u;                 // clean LSB
          QtClean(v104);
        }
        structSized56 = (int *)operator new(56u);
        if ( structSized56 )
        {
          QtRegexFunction(char4_v103, &byte_6AE680);
          seemsLikeFlag |= 2u;                  // set 2LSB to 1
          v25 = (_DWORD *)get_m_11(this);
          vtable_26 = get_m_11(v25);
          qt_mt312_860(structSized56, *(_DWORD *)(vtable_26 + 152), 2, char4_v103);
          _struct2 = structSized56;
          *structSized56 = (int)&off_65B1D4;
          _struct2[13] = 1;
        }
        else
        {
          structSized56 = 0;
        }
        v28 = (_DWORD *)get_m_11(this);
        vtable_29 = get_m_11(v28);
        (*(void (__thiscall **)(_DWORD, int *, int, int *))(**(_DWORD **)(vtable_29 + 152) + 612))(
          *(_DWORD *)(vtable_29 + 152),
          v112_ptr,
          1,
          structSized56);                       // Runtime polymorphism
                                                // 
        if ( (seemsLikeFlag & 2) != 0 )         // Check 2LSB
        {
          seemsLikeFlag &= ~2u;                 // clean 2LSB
          QtClean(char4_v103);
        }
        v30 = (_DWORD *)get_m_11(this);
        v31 = *(int **)(get_m_11(v30) + 152);
        int_v94 = 6;
        structSized56 = v31;
        vtable_98 = (_DWORD *)*v31;
        v32 = func_v13(char4_v112, v97, 6);
        ((void (__thiscall *)(int *, int *, _DWORD, int))vtable_98[154])(structSized56, v112_ptr, 0, v32);
        QtClean(v97);
        v33 = v112_ptr;
        v112_ptr = (int *)((char *)v112_ptr + 1);// v112ptr + 1
        structSized56 = v33;
        v34 = (_DWORD *)get_m_11(this);
        v35 = *(_DWORD **)(get_m_11(v34) + 152);
        int_v94 = -1;
        vtable_98 = v35;
        vtable_36 = *v35;
        v37 = qt_mt312_3380(v106);
        v38 = qt_mt312_5758(&v96, v37, -1);
        (*(void (__thiscall **)(_DWORD *, int *, int, int))(vtable_36 + 616))(vtable_98, structSized56, 1, v38);
        QtClean(&v96);
        QtClean(v106);
        func_v13 = (int (__thiscall *)(char *, char *, int))qt_mt312_7065;
      }
      qt_mt312_9518(char4_v112, 0, 6);
      ++_count;
    }
    while ( _count < 100 );
  }
  v39 = (_DWORD *)get_m_11(this);
  v40 = get_m_11(v39);
  if ( (*(int (__thiscall **)(_DWORD))(**(_DWORD **)(v40 + 152) + 668))(*(_DWORD *)(v40 + 152)) )
  {
    v41 = (_DWORD *)get_m_11(this);
    v42 = get_m_11(v41);
    v43 = (*(int (__thiscall **)(_DWORD))(**(_DWORD **)(v42 + 152) + 668))(*(_DWORD *)(v42 + 152));
    *(_DWORD *)(p_someclass::ctor() + 560) = v43;
    int_v94 = v44;
    QtRegexFunction(&int_v94, &byte_6AE680);
    v92 = v45;
    QtRegexFunction(&v92, &byte_6AE680);
    v90 = v46;
    QtRegexFunction(&v90, &byte_6AE680);
    v90 = v47;
    QtRegexFunction(&v90, &byte_6AE680);
    v90 = v48;
    QtRegexFunction(&v90, aMg402000);
    ((void (__stdcall *)(char, char, char, char, char))sub_52D099)(v91, (char)v92, v93, int_v94, v95);
    v95 = 7;
    int_v94 = v49;
    QtRegexFunction(&int_v94, aMn100);
    ((void (__stdcall *)(char, int))sub_52D006)(v93, int_v94);
    int_v94 = 14;
    v93 = 7;
    v92 = v50;
    QtRegexFunction(&v92, aMn101);
    sub_52D047(this, v93, int_v94, v95);
    v95 = 15;
    int_v94 = 7;
    v93 = v51;
    QtRegexFunction(&v93, aMn102);
    sub_52D047(this, v93, int_v94, v95);
    v95 = 16;
    int_v94 = 7;
    v93 = v52;
    QtRegexFunction(&v93, aMn103);
    sub_52D047(this, v93, int_v94, v95);
    v95 = 17;
    int_v94 = 7;
    v93 = v53;
    QtRegexFunction(&v93, aMn104);
    sub_52D047(this, v93, int_v94, v95);
    v95 = 8;
    int_v94 = v54;
    QtRegexFunction(&int_v94, aMn200);
    ((void (__stdcall *)(char, int))sub_52D006)(v93, int_v94);
    int_v94 = 34;
    v93 = 8;
    v92 = v55;
    QtRegexFunction(&v92, aMn201);
    sub_52D047(this, v93, int_v94, v95);
    v95 = 35;
    int_v94 = 8;
    v93 = v56;
    QtRegexFunction(&v93, aMn202);
    sub_52D047(this, v93, int_v94, v95);
    v95 = 9;
    int_v94 = v57;
    QtRegexFunction(&int_v94, aMn300);
    ((void (__stdcall *)(char, int))sub_52D006)(v93, int_v94);
    int_v94 = 55;
    v93 = 9;
    v92 = v58;
    QtRegexFunction(&v92, aMn302);
    sub_52D047(this, v93, int_v94, v95);
    v95 = 11;
    int_v94 = v59;
    QtRegexFunction(&int_v94, aMn500);
    ((void (__stdcall *)(char, int))sub_52D006)(v93, int_v94);
    int_v94 = 11;
    v93 = 11;
    v92 = v60;
    QtRegexFunction(&v92, aMn500);
    sub_52D047(this, v93, int_v94, v95);
    v61 = (_DWORD *)get_m_11(this);
    vtable_62 = get_m_11(v61);
    (*(void (__thiscall **)(_DWORD, char *))(**(_DWORD **)(vtable_62 + 136) + 476))(
      *(_DWORD *)(vtable_62 + 136),
      char4_v111);
    v63 = (_DWORD *)get_m_11(this);
    vtable_64 = get_m_11(v63);
    (*(void (__thiscall **)(_DWORD, char *))(**(_DWORD **)(vtable_64 + 128) + 476))(
      *(_DWORD *)(vtable_64 + 128),
      char4_v109);
    v65 = (_DWORD *)get_m_11(this);
    vtable_66 = get_m_11(v65);
    (*(void (__thiscall **)(_DWORD, _DWORD, int))(**(_DWORD **)(vtable_66 + 152) + 828))(
      *(_DWORD *)(vtable_66 + 152),
      0,
      1);
    v67 = (_DWORD *)get_m_11(this);
    vtable_68 = get_m_11(v67);
    (*(void (__thiscall **)(_DWORD, int, int))(**(_DWORD **)(vtable_68 + 152) + 828))(
      *(_DWORD *)(vtable_68 + 152),
      1,
      1);
    v69 = (_DWORD *)get_m_11(this);
    vtable_70 = get_m_11(v69);
    (*(void (__thiscall **)(_DWORD, _DWORD, _DWORD))(**(_DWORD **)(vtable_70 + 152) + 776))(
      *(_DWORD *)(vtable_70 + 152),
      0,
      0);
    v71 = (_DWORD *)get_m_11(this);
    vtable_72 = get_m_11(v71);
    (*(void (__thiscall **)(_DWORD, int, int))(**(_DWORD **)(vtable_72 + 152) + 776))(
      *(_DWORD *)(vtable_72 + 152),
      1,
      1);
    v73 = (_DWORD *)get_m_11(this);
    vtable_74 = get_m_11(v73);
    (*(void (__thiscall **)(_DWORD, _DWORD, int))(**(_DWORD **)(vtable_74 + 152) + 760))(
      *(_DWORD *)(vtable_74 + 152),
      0,
      150);
    v75 = (_DWORD *)get_m_11(this);
    v76 = get_m_11(v75);
    sub_530932(*(_DWORD *)(v76 + 152), 1);
    v77 = (_DWORD *)get_m_11(this);
    v78 = get_m_11(v77);
    v79 = (int *)qt_mt312_6116(*(_DWORD *)(v78 + 152));
    v80 = *v79;
    structSized56 = v79;
    int_v94 = -1;
    v96 = v80;
    v81 = sub_5C4AD7(v97, &unk_6865E8, 0);
    (*(void (__thiscall **)(int *, _DWORD, int, int))(v96 + 436))(structSized56, 0, v81, int_v94);
    QtClean(v97);
    v82 = (_DWORD *)get_m_11(this);
    v83 = get_m_11(v82);
    v84 = (int *)qt_mt312_6116(*(_DWORD *)(v83 + 152));
    int_v94 = -1;
    v93 = 0;
    v85 = *v84;
    v86 = sub_5C4AD7(&structSized56, &unk_683F18, 0);
    (*(void (__thiscall **)(int *, int, int, int))(v85 + 436))(v84, 1, v86, int_v94);
    QtClean(&structSized56);
    v87 = (_DWORD *)get_m_11(this);
    v88 = *(_DWORD *)(get_m_11(v87) + 152);
    int_v94 = (int)this;
    qt_mt312_6454(v88);
    int_v94 = (int)this;
    qt_mt312_6454(this);
  }
  else
  {
    *(_DWORD *)(p_someclass::ctor() + 560) = 0;
    sub_52F4EF(0);
  }
Finish:
  QtClean(char4_v110);
  QtClean(char4_v112);
  QtClean(char4_v108);
  QtClean(char4_v107);
  QtClean(char4_v109);
  QtClean(char4_v111);
  return this;
}
Leave a Comment