WdipStartEndScenario

INT64 __fastcall WdipStartEndScenario(
        const _GUID *ProviderGuid,
        const _GUID *ScenarioInstanceId,
        const _EVENT_DESCRIPTOR *EventDescriptor,
        UINT64 ScenarioType){
  unsigned __int16 Id; 
  if( !ProviderGuid
    || !ScenarioInstanceId
    || !EventDescriptor
    || !ScenarioInstanceId->Data1
    && !ScenarioInstanceId->Data2
    && !ScenarioInstanceId->Data3
    && !ScenarioInstanceId->Data4[0]
    && !ScenarioInstanceId->Data4[1]
    && !ScenarioInstanceId->Data4[2]
    && !ScenarioInstanceId->Data4[3]
    && !ScenarioInstanceId->Data4[4]
    && !ScenarioInstanceId->Data4[5]
    && !ScenarioInstanceId->Data4[6]
    && !ScenarioInstanceId->Data4[7] )
  {
    return 3221225485i64;
  }
  Id = EventDescriptor->Id;
  if( (_DWORD)ScenarioType == 10 )
  {
    if( WdipSemEnabled )
      return WdipSemEnableScenario(ProviderGuid, Id, ScenarioInstanceId);
  }
  else if( WdipSemEnabled )
  {
    return WdipSemDisableScenario(ProviderGuid, Id, ScenarioInstanceId);
  }
  return 3221225473i64;
}

Referenced by:

EtwWriteEndScenario
EtwWriteStartScenario
WdiDispatchControl