HalpMceInitializeErrorPacket

VOID __stdcall HalpMceInitializeErrorPacket(INT64 a1, INT64 a2){
  UINT8 *v4; 
  UINT8 v5; 
  __int64 v6; 
  volatile __int64 *v7; 
  _HALP_ALLOC_CONTEXT *v8; 
  volatile __int64 *v9; 
  VOID *v10; 

  v4 = HalpMmAllocCtxAlloc((_HALP_ALLOC_CONTEXT *)a1, 0x160ui64);
  v6 = (__int64)v4;
  if( !v4 )
    KeBugCheckEx(0xACu, (PVOID)0x160, (PVOID)0xDA00, "minkernel\\hals\\lib\\whea\\mca.c", (PVOID)0x6C0);
  HalpMceInitializeErrorPacketContents((UINT64)v4, v5);
  LODWORD(v7) = HalpGetMcaPcrContext(a2);
  v9 = v7;
  v10 = (VOID *)_InterlockedExchange64(v7, v6);
  if( v10 )
    HalpMmAllocCtxFree(v8, v10);
  _InterlockedExchange64(v9 + 1, a1);
}

Referenced by:

HalpMceInitProcessor