RtlpHpVsContextInitialize

VOID *__fastcall RtlpHpVsContextInitialize(unsigned __int64 a1, __int64 a2, __int128 *a3, int a4, int a5, _DWORD *a6){
  __int128 v10; 
  __int128 v11; 
  __int64 i; 
  __int64 v13; 

  memset((VOID *)a1, 0i64, 0xC0u);
  v10 = *a3;
  v11 = a3[1];
  *(_DWORD *)(a1 + 180) = a5;
  *(_OWORD *)(a1 + 136) = v10;
  *(_QWORD *)(a1 + 128) = a2 ^ a1;
  *(_QWORD *)&v10 = *((_QWORD *)a3 + 4);
  *(_OWORD *)(a1 + 152) = v11;
  *(_DWORD *)(a1 + 8) = a4;
  *(_QWORD *)(a1 + 168) = v10;
  *(_DWORD *)(a1 + 176) = *a6;
  for( i = 0i64; i < 4; ++i )
    *(_QWORD *)(a1 + 8 * i + 136) ^= a1 ^ RtlpHpHeapGlobals;
  v13 = *(_QWORD *)(a1 + 168);
  if( v13 )
    *(_QWORD *)(a1 + 168) = a1 ^ RtlpHpHeapGlobals ^ v13;
  *(_QWORD *)a1 = 0i64;
  *(_QWORD *)(a1 + 16) = 0i64;
  *(_QWORD *)(a1 + 24) = 0i64;
  if( (a5 & 0x8000000) != 0 )
    *(_BYTE *)(a1 + 24) = 1;
  *(_QWORD *)(a1 + 40) = 0i64;
  *(_QWORD *)(a1 + 32) = 0i64;
  *(_OWORD *)(a1 + 64) = 0i64;
  return InitializeSListHead((PSLIST_HEADER)(a1 + 64));
}

Referenced by:

RtlpHpFixedHeapCreate
RtlpHpHeapCreate