typedef struct _KGUARDED_MUTEX
{
    volatile long Count;
    KTHREAD *Owner;
    unsigned long Contention;
    KGATE Gate;
    union
    {
        struct
        {
            short KernelApcDisable;
            short SpecialApcDisable;
        };
        unsigned long CombinedApcDisable;
    };
} KGUARDED_MUTEX, *PKGUARDED_MUTEX;