
Table UcxEndpointState(State)
{
    switch(State)
    {
    case 0x57A71000: "Maybe_UcxEndpointStateBase";
    case 0x57a71001: "Maybe_UcxEndpointStateAborting";
    case 0x57a71002: "Maybe_UcxEndpointStateCompletingAbortUrbIfNotAlreadyCancelled1";
    case 0x57a71003: "Maybe_UcxEndpointStateCompletingAbortUrbIfNotAlreadyCancelled2";
    case 0x57a71004: "Maybe_UcxEndpointStateCompletingDisableStaticStreamsIrp1";
    case 0x57a71005: "Maybe_UcxEndpointStateCompletingDisableStaticStreamsIrp2";
    case 0x57a71006: "Maybe_UcxEndpointStateCompletingDisableStaticStreamsIrp3";
    case 0x57a71007: "Maybe_UcxEndpointStateCompletingDisableStaticStreamsIrp4";
    case 0x57a71008: "Maybe_UcxEndpointStateCompletingDisableStaticStreamsWdfRequest2";
    case 0x57a71009: "Maybe_UcxEndpointStateCompletingDisableStaticStreamsWdfRequest3";
    case 0x57a7100a: "Maybe_UcxEndpointStateCompletingEnableStaticStreamsIrp1";
    case 0x57a7100b: "Maybe_UcxEndpointStateCompletingEnableStaticStreamsIrp2";
    case 0x57a7100c: "Maybe_UcxEndpointStateCompletingEnableStaticStreamsIrp3";
    case 0x57a7100d: "Maybe_UcxEndpointStateCompletingEndpointResetIrp1";
    case 0x57a7100e: "Maybe_UcxEndpointStateCompletingEndpointResetIrp2";
    case 0x57a7100f: "Maybe_UcxEndpointStateCompletingEndpointResetIrp3";
    case 0x57a71010: "Maybe_UcxEndpointStateCompletingEndpointResetIrp4";
    case 0x57a71011: "Maybe_UcxEndpointStateCompletingEndpointResetWdfRequest2";
    case 0x57a71012: "Maybe_UcxEndpointStateCompletingEndpointResetWdfRequest3";
    case 0x57a71013: "Maybe_UcxEndpointStateCompletingPendingOperation";
    case 0x57a71014: "Maybe_UcxEndpointStateCompletingPendingOperation2";
    case 0x57a71015: "Maybe_UcxEndpointStateCompletingStart";
    case 0x57a71016: "Maybe_UcxEndpointStateCreated";
    case 0x57a71017: "Maybe_UcxEndpointStateDeleting";
    case 0x57a71018: "Maybe_UcxEndpointStateDeletingStale";
    case 0x57a71019: "Maybe_UcxEndpointStateDisablingStaticStreams";
    case 0x57a7101a: "Maybe_UcxEndpointStateDisablingStaticStreams3";
    case 0x57a7101b: "Maybe_UcxEndpointStateDisconnected";
    case 0x57a7101c: "Maybe_UcxEndpointStateEnabled";
    case 0x57a7101d: "Maybe_UcxEndpointStateEnablingStaticStreams";
    case 0x57a7101e: "Maybe_UcxEndpointStateFailingDisableStaticStreamsWdfRequest";
    case 0x57a7101f: "Maybe_UcxEndpointStateFailingEnableStaticStreamsIrp";
    case 0x57a71020: "Maybe_UcxEndpointStateIsDeprogrammedDueToControllerReset1";
    case 0x57a71021: "Maybe_UcxEndpointStateIsDeprogrammedDueToControllerReset2";
    case 0x57a71022: "Maybe_UcxEndpointStateIsDeprogrammedDueToControllerReset3";
    case 0x57a71023: "Maybe_UcxEndpointStateIsDeprogrammedDueToControllerReset4";
    case 0x57a71024: "Maybe_UcxEndpointStateNeedToSetStale";
    case 0x57a71025: "Maybe_UcxEndpointStateOkToResetControllerAndPauseSM";
    case 0x57a71026: "Maybe_UcxEndpointStatePurged";
    case 0x57a71027: "Maybe_UcxEndpointStatePurging1";
    case 0x57a71028: "Maybe_UcxEndpointStatePurging2";
    case 0x57a71029: "Maybe_UcxEndpointStatePurgingOnControllerReset";
    case 0x57a7102a: "Maybe_UcxEndpointStatePurgingOnDisconnect";
    case 0x57a7102b: "Maybe_UcxEndpointStateRejectingEnableStaticStreamsWdfRequest2";
    case 0x57a7102c: "Maybe_UcxEndpointStateRejectingEnableStaticStreamsWdfRequest3";
    case 0x57a7102d: "Maybe_UcxEndpointStateResettingEndpoint1";
    case 0x57a7102e: "Maybe_UcxEndpointStateResettingEndpoint2";
    case 0x57a7102f: "Maybe_UcxEndpointStateResumeSMAndWaitForPendingOperation";
    case 0x57a71030: "Maybe_UcxEndpointStateSetStaleAndDeletePreviousStale";
    case 0x57a71031: "Maybe_UcxEndpointStateStale";
    case 0x57a71032: "Maybe_UcxEndpointStateStarting";
    case 0x57a71033: "Maybe_UcxEndpointStateWaitingForAbortUrbToBeQueued";
    case 0x57a71034: "Maybe_UcxEndpointStateWaitingForPurgeComplete1";
    case 0x57a71035: "Maybe_UcxEndpointStateWaitingForPurgeComplete2";
    case 0x57a71036: "Maybe_UcxEndpointStateWaitingForStartComplete";
    case 0x57a73001: "UcxEndpointStateAborting";
    case 0x57a73002: "UcxEndpointStateCompletingAbortUrbIfNotAlreadyCancelled1";
    case 0x57a73003: "UcxEndpointStateCompletingAbortUrbIfNotAlreadyCancelled2";
    case 0x57a73004: "UcxEndpointStateCompletingDisableStaticStreamsIrp1";
    case 0x57a73005: "UcxEndpointStateCompletingDisableStaticStreamsIrp2";
    case 0x57a73006: "UcxEndpointStateCompletingDisableStaticStreamsIrp3";
    case 0x57a73007: "UcxEndpointStateCompletingDisableStaticStreamsIrp4";
    case 0x57a73008: "UcxEndpointStateCompletingDisableStaticStreamsWdfRequest2";
    case 0x57a73009: "UcxEndpointStateCompletingDisableStaticStreamsWdfRequest3";
    case 0x57a7300a: "UcxEndpointStateCompletingEnableStaticStreamsIrp1";
    case 0x57a7300b: "UcxEndpointStateCompletingEnableStaticStreamsIrp2";
    case 0x57a7300c: "UcxEndpointStateCompletingEnableStaticStreamsIrp3";
    case 0x57a7300d: "UcxEndpointStateCompletingEndpointResetIrp1";
    case 0x57a7300e: "UcxEndpointStateCompletingEndpointResetIrp2";
    case 0x57a7300f: "UcxEndpointStateCompletingEndpointResetIrp3";
    case 0x57a73010: "UcxEndpointStateCompletingEndpointResetIrp4";
    case 0x57a73011: "UcxEndpointStateCompletingEndpointResetWdfRequest2";
    case 0x57a73012: "UcxEndpointStateCompletingEndpointResetWdfRequest3";
    case 0x57a73013: "UcxEndpointStateCompletingPendingOperation";
    case 0x57a73014: "UcxEndpointStateCompletingPendingOperation2";
    case 0x57a73015: "UcxEndpointStateCompletingStart";
    case 0x57a73016: "UcxEndpointStateCreated";
    case 0x57a73017: "UcxEndpointStateDeleting";
    case 0x57a73018: "UcxEndpointStateDeletingStale";
    case 0x57a73019: "UcxEndpointStateDisablingStaticStreams";
    case 0x57a7301a: "UcxEndpointStateDisablingStaticStreams3";
    case 0x57a7301b: "UcxEndpointStateDisconnected";
    case 0x57a7301c: "UcxEndpointStateEnabled";
    case 0x57a7301d: "UcxEndpointStateEnablingStaticStreams";
    case 0x57a7301e: "UcxEndpointStateFailingDisableStaticStreamsWdfRequest";
    case 0x57a7301f: "UcxEndpointStateFailingEnableStaticStreamsIrp";
    case 0x57a73020: "UcxEndpointStateIsDeprogrammedDueToControllerReset1";
    case 0x57a73021: "UcxEndpointStateIsDeprogrammedDueToControllerReset2";
    case 0x57a73022: "UcxEndpointStateIsDeprogrammedDueToControllerReset3";
    case 0x57a73023: "UcxEndpointStateIsDeprogrammedDueToControllerReset4";
    case 0x57a73024: "UcxEndpointStateNeedToSetStale";
    case 0x57a73025: "UcxEndpointStateOkToResetControllerAndPauseSM";
    case 0x57a73026: "UcxEndpointStatePurged";
    case 0x57a73027: "UcxEndpointStatePurging1";
    case 0x57a73028: "UcxEndpointStatePurging2";
    case 0x57a73029: "UcxEndpointStatePurgingOnControllerReset";
    case 0x57a7302a: "UcxEndpointStatePurgingOnDisconnect";
    case 0x57a7302b: "UcxEndpointStateRejectingEnableStaticStreamsWdfRequest2";
    case 0x57a7302c: "UcxEndpointStateRejectingEnableStaticStreamsWdfRequest3";
    case 0x57a7302d: "UcxEndpointStateResettingEndpoint1";
    case 0x57a7302e: "UcxEndpointStateResettingEndpoint2";
    case 0x57a7302f: "UcxEndpointStateResumeSMAndWaitForPendingOperation";
    case 0x57a73030: "UcxEndpointStateSetStaleAndDeletePreviousStale";
    case 0x57a73031: "UcxEndpointStateStale";
    case 0x57a73032: "UcxEndpointStateStarting";
    case 0x57a73033: "UcxEndpointStateWaitingForAbortUrbToBeQueued";
    case 0x57a73034: "UcxEndpointStateWaitingForPurgeComplete1";
    case 0x57a73035: "UcxEndpointStateWaitingForPurgeComplete2";
    case 0x57a73036: "UcxEndpointStateWaitingForStartComplete";
    case 0x57a73037: "UcxEndpointStateCompletePendingTreePurge1";
    case 0x57a73038: "UcxEndpointStateCompletePendingTreePurge2";
    case 0x57a73039: "UcxEndpointStateDisablingStaticStreams2";
    case 0x57a7303a: "UcxEndpointStateIsDeviceAbleToStartEndpoints";
    case 0x57a7303b: "UcxEndpointStatePurging3";
    case 0x57a7303c: "UcxEndpointStatePurging4";
    case 0x57a7303d: "UcxEndpointStateCompletingPendingTreePurge1";
    case 0x57a7303e: "UcxEndpointStateCompletingPendingTreePurge2";
    case 0x57a7303f: "UcxEndpointStateIsDeviceAbleToExitPurge";
    case 0x57a73040: "UcxEndpointStateCompletingPendingOperation1";
    case 0x57a73041: "UcxEndpointStateCompletingPendingOperation3";
    case 0x57a73042: "UcxEndpointStateCompletingPendingOperation4";
    case 0x57a73043: "UcxEndpointStateIsAbleToStart1";
    case 0x57a73044: "UcxEndpointStateIsAbleToStart2";
    case 0x57a73045: "UcxEndpointStatePurging5";
    case 0x57a73046: "UcxEndpointStateCompletingPendingTreePurge";
    case 0x57a73047: "UcxEndpointStateFailingEndpointResetWdfRequest";
    case 0x57a73048: "UcxEndpointStateIsDeprogrammedDueToControllerResetOrDisconnected";
    case 0x57a73049: "UcxEndpointStatePendingDestroy";
    case 0x57a7304a: "UcxEndpointStateStarting1";
    case 0x57a7304b: "UcxEndpointStateStarting2";
    case 0x57a7304c: "UcxEndpointStateClearingEnabledFlag";
    case 0x57a7304d: "UcxEndpointStateSettingEnabledFlag1";
    case 0x57a7304e: "UcxEndpointStateSettingEnabledFlag2";
    case 0x57a7304f: "UcxEndpointStatePurgedOrDisabled";
    case 0x57a73050: "UcxEndpointStateAborting1";
    case 0x57a73051: "UcxEndpointStateAborting2";
    case 0x57a73052: "UcxEndpointStateStarting3";
    case 0x57a73053: "UcxEndpointStateOkToResetControllerAndPauseSM1";
    case 0x57a73054: "UcxEndpointStateOkToResetControllerAndPauseSM2";
    case 0x57a73055: "UcxEndpointStateResumeSMAndWaitForPendingOperation1";
    case 0x57a73056: "UcxEndpointStateResumeSMAndWaitForPendingOperation2";
    default: "UcxEndpointUnknown";
    }
}

Table UcxEndpointEvent(Event)
{
    switch(Event & 0xFFFFFFF0)
    {
    case 0xebe10000: "Maybe_UcxEndpointEventAbortComplete";
    case 0xebe10010: "Maybe_UcxEndpointEventAbortUrbFromClient";
    case 0xebe10020: "Maybe_UcxEndpointEventAbortUrbQueued";
    case 0xebe10030: "Maybe_UcxEndpointEventControllerResetComplete";
    case 0xebe10040: "Maybe_UcxEndpointEventDelete";
    case 0xebe10050: "Maybe_UcxEndpointEventDeleteStale";
    case 0xebe10060: "Maybe_UcxEndpointEventDisconnectFromHub";
    case 0xebe10070: "Maybe_UcxEndpointEventEnableComplete";
    case 0xebe10080: "Maybe_UcxEndpointEventEndpointResetComplete";
    case 0xebe10090: "Maybe_UcxEndpointEventEndpointResetFromHub";
    case 0xebe100a0: "Maybe_UcxEndpointEventNo";
    case 0xebe100b0: "Maybe_UcxEndpointEventOperationSuccess";
    case 0xebe100c0: "Maybe_UcxEndpointEventPrepareDisableFromHub";
    case 0xebe100d0: "Maybe_UcxEndpointEventPrepareForControllerReset";
    case 0xebe100e0: "Maybe_UcxEndpointEventPurgeComplete";
    case 0xebe100f0: "Maybe_UcxEndpointEventPurgeFromHub";
    case 0xebe10100: "Maybe_UcxEndpointEventStartComplete";
    case 0xebe10110: "Maybe_UcxEndpointEventStartFromHub";
    case 0xebe10120: "Maybe_UcxEndpointEventStaticStreamsDisableComplete";
    case 0xebe10130: "Maybe_UcxEndpointEventStaticStreamsDisableFromClient";
    case 0xebe10140: "Maybe_UcxEndpointEventStaticStreamsEnableComplete";
    case 0xebe10150: "Maybe_UcxEndpointEventStaticStreamsEnableFromClient";
    case 0xebe10160: "Maybe_UcxEndpointEventUsbDeviceDeleting";
    case 0xebe10170: "Maybe_UcxEndpointEventUsbDeviceResetComplete";
    case 0xebe10180: "Maybe_UcxEndpointEventUsbDeviceResetFromHub";
    case 0xebe10190: "Maybe_UcxEndpointEventYes";
    case 0xebe30010: "UcxEndpointEventAbortComplete";
    case 0xebe30020: "UcxEndpointEventAbortUrbFromClient";
    case 0xebe30030: "UcxEndpointEventAbortUrbQueued";
    case 0xebe30040: "UcxEndpointEventControllerResetComplete";
    case 0xebe30050: "UcxEndpointEventDelete";
    case 0xebe30060: "UcxEndpointEventDeleteStale";
    case 0xebe30070: "UcxEndpointEventDisconnectFromHub";
    case 0xebe30080: "UcxEndpointEventEnableComplete";
    case 0xebe30090: "UcxEndpointEventEndpointResetComplete";
    case 0xebe300a0: "UcxEndpointEventEndpointResetFromHub";
    case 0xebe300b0: "UcxEndpointEventNo";
    case 0xebe300c0: "UcxEndpointEventOperationSuccess";
    case 0xebe300d0: "UcxEndpointEventPrepareDisableFromHub";
    case 0xebe300e0: "UcxEndpointEventPrepareForControllerReset";
    case 0xebe300f0: "UcxEndpointEventPurgeComplete";
    case 0xebe30100: "UcxEndpointEventPurgeFromHub";
    case 0xebe30110: "UcxEndpointEventStartComplete";
    case 0xebe30120: "UcxEndpointEventStartFromHub";
    case 0xebe30130: "UcxEndpointEventStaticStreamsDisableComplete";
    case 0xebe30140: "UcxEndpointEventStaticStreamsDisableFromClient";
    case 0xebe30150: "UcxEndpointEventStaticStreamsEnableComplete";
    case 0xebe30160: "UcxEndpointEventStaticStreamsEnableFromClient";
    case 0xebe30170: "UcxEndpointEventUsbDeviceDeleting";
    case 0xebe30180: "UcxEndpointEventUsbDeviceResetComplete";
    case 0xebe30190: "UcxEndpointEventUsbDeviceResetFromHub";
    case 0xebe301a0: "UcxEndpointEventYes";
    case 0xebe301b0: "UcxEndpointEventTreePurgeFromHub";
    case 0xebe301c0: "UcxEndpointEventAbortFromHub";
    default: "UcxEndpointUnknown";
    }
}
