ST_STORE::StInitialize

__int64 __fastcall ST_STORE::StInitialize(__int64 a1){
  unsigned int v2; 
  INT64 v3; 
  _QWORD *v4; 
  _QWORD *i; 
  unsigned int v6; 
  __int64 result; 
  memset(a1 + 1, 0i64);
  *(_BYTE *)a1 = 2;
  ST_STORE::StDmInitialize(a1 + 80, a1 + 2016);
  ST_STORE::StDmInitialize(a1 + 2016, 0i64);
  *(_OWORD *)(a1 + 3960) = 0i64;
  *(_OWORD *)(a1 + 3976) = 0i64;
  *(_OWORD *)(a1 + 3992) = 0i64;
  *(_QWORD *)(a1 + 4008) = 0i64;
  SmCrEncInitialize((_DWORD *)(a1 + 4064));
  v2 = *(_DWORD *)(a1 + 4216) & 0xFFFFFFFE;
  *(_DWORD *)(a1 + 4224) = 3;
  *(_DWORD *)(a1 + 4216) = v2 | 6;
  memset(a1 + 4288, 0i64);
  *(_QWORD *)(a1 + 4280) = a1 + 4304;
  *(_QWORD *)(a1 + 4296) = *(_QWORD *)&KUSER_SHARED_DATA.InterruptTime.LowPart + 600000000i64;
  *(_QWORD *)(a1 + 5608) = 500i64;
  *(_QWORD *)(a1 + 5624) = 1000i64;
  *(_QWORD *)(a1 + 5640) = 3000i64;
  *(_QWORD *)(a1 + 5656) = 5000i64;
  *(_QWORD *)(a1 + 5672) = 10000i64;
  *(_QWORD *)(a1 + 5688) = 20000i64;
  *(_QWORD *)(a1 + 5704) = 50000i64;
  *(_QWORD *)(a1 + 5720) = 100000i64;
  StLcInitialize(a1 + 5584, v3, (UINT64 *)(a1 + 5608));
  memset(a1 + 5744, 0i64);
  v4 = (_QWORD *)(a1 + 5912);
  for( i = (_QWORD *)(a1 + 5744); i < v4; i += 3 )
  {
    *i = -1i64;
    i[1] = -1i64;
  }
  v6 = *(_DWORD *)(a1 + 5936) & 0xFFFFFFFE;
  *v4 = -1i64;
  *(_DWORD *)(a1 + 5944) = 5;
  *(_DWORD *)(a1 + 5936) = v6 | 6;
  InitializeSListHead((_SLIST_HEADER *)(a1 + 4048));
  result = *(_DWORD *)(a1 + 5976) & 0xFFFFFFF8 | 6;
  *(_DWORD *)(a1 + 5984) = 6;
  *(_DWORD *)(a1 + 5976) = result;
  return result;
}

Referenced by:

No references.