All pastes #978033 Raw Edit

Mine

public cpp v1 · immutable
·published 2008-04-09 07:31 UTC
rendered paste body
signed int __userpurge APH_HandleRealmList<eax>(int a1<ecx>, __int16 *a2<edi>, CDataStore *dataStore){  __int16 *ST10_4_0; // ST10_4@0  int v4; // esi@1  int v6; // ebx@4  signed int v7; // edi@4  __int16 *v8; // ST08_4@4  unsigned int v9; // edi@9  int v10; // edx@11  int  s; // [sp+234h] [bp+0h]@1  unsigned int v12; // [sp+230h] [bp-4h]@1  int v13; // [sp+14h] [bp-220h]@1  unsigned __int16 v14; // [sp+24h] [bp-210h]@3  int v15; // [sp+10h] [bp-224h]@4  char v16; // [sp+4h] [bp-230h]@4  unsigned __int16 v17; // [sp+28h] [bp-20Ch]@4  char value; // [sp+22h] [bp-212h]@5  char v19; // [sp+1Ch] [bp-218h]@5  char v20; // [sp+2Fh] [bp-205h]@5  int data; // [sp+130h] [bp-104h]@5  int v22; // [sp+30h] [bp-204h]@5  char v23; // [sp+8h] [bp-22Ch]@5  char v24; // [sp+1Fh] [bp-215h]@5  char v25; // [sp+1Eh] [bp-216h]@5  char v26; // [sp+20h] [bp-214h]@5  char v27; // [sp+21h] [bp-213h]@6  char v28; // [sp+1Dh] [bp-217h]@6  char v29; // [sp+23h] [bp-211h]@6  char v30; // [sp+18h] [bp-21Ch]@6  char v31; // [sp+Ch] [bp-228h]@9  v12 = (unsigned int)& s ^ dword_90D530;  v4 = (int)dataStore;  v13 = a1;  if ( !sub_7EC140((int)dataStore, 2)    || (CDataStore_ReadInt16((CDataStore *)v4, (CDataStore *)&v14, ST10_4_0), !sub_7EC140(v4, v14)) )    return 0;  v15 = *(_DWORD *)(v4 + 20);  CDataStore_ReadInt32((CDataStore *)v4, (int *)&v16);  v6 = *(_DWORD *)(v4 + 20);  CDataStore_ReadInt16((CDataStore *)v4, (CDataStore *)&v17, a2);  v7 = 0;  if ( v17 )  {    while ( 1 )    {      CDataStore_ReadByte((CDataStore *)v4, (BYTE)&value);      CDataStore_ReadByte((CDataStore *)v4, (BYTE)&v19);      CDataStore_ReadByte((CDataStore *)v4, (BYTE)&v20);      CDataStore_ReadCString((CDataStore *)v4, &data, 256);      CDataStore_ReadCString((CDataStore *)v4, &v22, 256);      CDataStore_ReadFloat((CDataStore *)v4, (float *)&v23);      CDataStore_ReadByte((CDataStore *)v4, (BYTE)&v24);      CDataStore_ReadByte((CDataStore *)v4, (BYTE)&v25);      CDataStore_ReadByte((CDataStore *)v4, (BYTE)&v26);      if ( v20 & 4 )      {        CDataStore_ReadByte((CDataStore *)v4, (BYTE)&v27);        CDataStore_ReadByte((CDataStore *)v4, (BYTE)&v28);        CDataStore_ReadByte((CDataStore *)v4, (BYTE)&v29);        CDataStore_ReadInt16((CDataStore *)v4, (CDataStore *)&v30, v8);      }      if ( *(_DWORD *)(v4 + 20) > *(_DWORD *)(v4 + 16) )        break;      ++v7;      if ( v7 >= v17 )        goto LABEL_9;    }  }  else  {LABEL_9:    CDataStore_ReadInt16((CDataStore *)v4, (CDataStore *)&v31, v8);    v9 = *(_DWORD *)(v4 + 20);    if ( v9 <= *(_DWORD *)(v4 + 16) && v9 - v15 == v14 )    {      v10 = v13;      *(_DWORD *)(v4 + 20) = v6;      (*(int (__stdcall **)(int))(**(_DWORD **)(v10 + 412) + 68))(v4);      *(_DWORD *)(v4 + 20) = v9;      return 2;    }  }  return 1;}