#define ExAllocatePoolWithTag(hernya, size, tag)
_Must_inspect_result_ _In_ PFLT_CALLBACK_DATA _In_ PFLT_DEFERRED_IO_WORKITEM_ROUTINE _In_ WORK_QUEUE_TYPE QueueType
_Must_inspect_result_ _In_ PFLT_CALLBACK_DATA _In_ PFLT_DEFERRED_IO_WORKITEM_ROUTINE WorkerRoutine
VOID NTAPI IoQueueWorkItem(IN PIO_WORKITEM IoWorkItem, IN PIO_WORKITEM_ROUTINE WorkerRoutine, IN WORK_QUEUE_TYPE QueueType, IN PVOID Context)
VOID NTAPI IoFreeWorkItem(IN PIO_WORKITEM IoWorkItem)
PIO_WORKITEM NTAPI IoAllocateWorkItem(IN PDEVICE_OBJECT DeviceObject)
VOID NTAPI IopWorkItemCallback(IN PVOID Parameter)
#define ASSERT_IRQL_LESS_OR_EQUAL(x)
_In_ PDEVICE_OBJECT DeviceObject
VOID NTAPI ExQueueWorkItem(IN PWORK_QUEUE_ITEM WorkItem, IN WORK_QUEUE_TYPE QueueType)
#define ExInitializeWorkItem(Item, Routine, Context)
enum _WORK_QUEUE_TYPE WORK_QUEUE_TYPE
_In_opt_ PVOID _In_ PIO_WORKITEM IoWorkItem
struct _IO_WORKITEM * PIO_WORKITEM
IO_WORKITEM_ROUTINE * PIO_WORKITEM_ROUTINE
#define ObDereferenceObject
#define ObReferenceObject
_Inout_opt_ PVOID Parameter