typedef struct _KWAIT_BLOCK
{
    LIST_ENTRY WaitListEntry;
    KTHREAD *Thread;
    void *Object;
    KWAIT_BLOCK *NextWaitBlock;
    unsigned short WaitKey;
    unsigned char WaitType;
    volatile unsigned char BlockState;
    long SpareLong;
} KWAIT_BLOCK, *PKWAIT_BLOCK;