PpmEventVetoReasonRundown

VOID __stdcall PpmEventVetoReasonRundown(){
  __int64 v0; 
  __int64 v1; 
  unsigned int v2; 
  __int64 v3; 
  int v4; 
  __int64 v5; 
  unsigned int v6; 
  _EVENT_DATA_DESCRIPTOR UserData; 
  __int64 v8; 
  int v9; 
  int v10; 

  v6 = 0;
  if( PpmEtwRegistered )
  {
    if( EtwEventEnabled(PpmEtwHandle, &PPM_ETW_VETO_NAME_RUNDOWN) )
    {
      v0 = *(&stru_140CF2E80 + 972);
      if( *(&stru_140CF2E80 + 972) )
      {
        UserData.Reserved = 0;
        UserData.Ptr = (unsigned __int64)&v6;
        v1 = 0i64;
        UserData.Size = 4;
        if( **(&stru_140CF2E80 + 972) )
        {
          do
          {
            v2 = v1 + 1;
            v3 = 2 * v1;
            v6 = v2;
            v4 = *(unsigned __int16 *)(v0 + 8 * v3 + 10);
            v5 = *(_QWORD *)(v0 + 8 * v3 + 16);
            v10 = 0;
            v8 = v5;
            v9 = v4;
            EtwWrite(PpmEtwHandle, &PPM_ETW_VETO_NAME_RUNDOWN, 0, 2u, &UserData);
            v0 = *(&stru_140CF2E80 + 972);
            v1 = v2;
          }
          while( v2 < **(&stru_140CF2E80 + 972) );
        }
      }
    }
  }
}

Referenced by:

PpmEventTraceControlCallback