ExpInitializeResource

UINT16 *__fastcall ExpInitializeResource(INT64 a1){
  UINT16 *result; 
  __int64 v3; 
  PKSPIN_LOCK v4; 
  UINT16 *v5; 
  __int16 v6; 
  result = (UINT16 *)memset(a1, 0i64);
  *(_QWORD *)(a1 + 8) = a1;
  v3 = 0i64;
  *(_QWORD *)a1 = a1;
  *(_OWORD *)(a1 + 32) = 0i64;
  *(_QWORD *)(a1 + 96) = 0i64;
  if( (NtGlobalFlag & 0x2000) != 0 )
  {
    v4 = RtlpStackTraceDatabase;
    if( RtlpStackTraceDatabase )
    {
      result = (UINT16 *)RtlStdLogStackTrace((INT64)RtlpStackTraceDatabase, 1i64);
      v5 = result;
      if( result )
      {
        result = (UINT16 *)RtlpStdGetRecordedStackTraceIndex((INT64)v4, result);
        v6 = (__int16)result;
        if( !(_DWORD)result )
          result = (UINT16 *)RtlStdReleaseStackTrace((INT64)v4, (INT64)v5);
      }
      else
      {
        v6 = 0;
      }
      LOWORD(v3) = v6;
    }
    v3 = (unsigned __int16)v3;
  }
  *(_QWORD *)(a1 + 88) = v3;
  return result;
}

Referenced by:

ExInitializeFastResource