ExpCheckForLookasideList

VOID __stdcall ExpCheckForLookasideList(PVOID p, UINT64 Size, LIST_ENTRY *ListHead, UINT64 *SpinLock){
  _LIST_ENTRY *v5; 
  _LIST_ENTRY *Flink; 
  unsigned __int8 v10; 
  unsigned __int64 v11; 
  v5 = (_LIST_ENTRY *)((char *)p + Size);
  KeAcquireSpinLockRaiseToDpc(SpinLock, Size);
  Flink = ListHead->Flink;
  v11 = v10;
  while( Flink != ListHead )
  {
    if( &Flink[-4] >= p && &Flink[-4] < v5 )
    {
      DbgPrintEx(
        0,
        0,
        "EX: ExFreePool( %p, %Ix ) contains a lookaside structure that has not been deleted first\n",
        p,
        Size);
      __debugbreak();
    }
    Flink = Flink->Flink;
  }
  KxReleaseSpinLock(SpinLock);
  __writecr8(v11);
}

Referenced by:

ExpCheckForLookaside