EtwpAllocatePmcData

INT64 __fastcall EtwpAllocatePmcData(_WMI_LOGGER_CONTEXT *LoggerContext){
  int MaximumProcessorCount; 
  _QWORD *PoolWithTag; 
  _QWORD *v4; 
  VOID *v6; 
  MaximumProcessorCount = KeQueryMaximumProcessorCountEx(0xFFFFu);
  PoolWithTag = ExAllocatePoolWithTag(NonPagedPoolNx, (unsigned int)(8 * MaximumProcessorCount + 24), 0x58777445ui64);
  v4 = PoolWithTag;
  if( !PoolWithTag )
    return 3221225495i64;
  memset((INT64)PoolWithTag, 0i64);
  v6 = ExAllocatePoolWithTag(NonPagedPoolNx, 4i64 * (unsigned int)EtwpMaxPmcCounter, 0x58777445ui64);
  *v4 = v6;
  if( !v6 )
  {
    ExFreePoolWithTag(v4, 0);
    return 3221225495i64;
  }
  *((_QWORD *)LoggerContext + 125) = v4;
  return 0i64;
}

Referenced by:

EtwpUpdatePmcCounters
EtwpUpdatePmcEvents