ExInitPoolLookasidePointers

VOID __stdcall ExInitPoolLookasidePointers(){
  struct _KPRCB *CurrentPrcb; 
  unsigned int v1; 
  int v2; 
  CurrentPrcb = KeGetCurrentPrcb();
  if( !*((_DWORD *)CurrentPrcb + 9) )
  {
    qword_140C168F8 = (__int64)&ExPoolLookasideListHead;
    qword_140C16918 = (__int64)&ExSystemLookasideListHead;
    ExSystemLookasideListHead = (UINT64)&ExSystemLookasideListHead;
    ExPoolLookasideListHead = (__int64)&ExPoolLookasideListHead;
    ExInitializeSystemLookasideList(
      (unsigned int)ExpScratchBufferLookasideList,
      512,
      1264,
      1717723987,
      32,
      (__int64)&ExSystemLookasideListHead);
  }
  *((_QWORD *)CurrentPrcb + 273) = ExpScratchBufferLookasideList;
  *((_QWORD *)CurrentPrcb + 272) = ExpScratchBufferLookasideList;
  v1 = 16;
  v2 = (_DWORD)CurrentPrcb + 2304;
  do
  {
    ExInitializeSystemLookasideList(v2 + 3072, 0, v1, 1282371408, 256, (__int64)&ExPoolLookasideListHead);
    ExInitializeSystemLookasideList(v2, 512, v1, 1282371408, 256, (__int64)&ExPoolLookasideListHead);
    ExInitializeSystemLookasideList(v2 + 6144, 1, v1, 1282371408, 256, (__int64)&ExPoolLookasideListHead);
    v1 += 16;
    v2 += 96;
  }
  while( v1 < 0x210 );
}

Referenced by:

KiInitializeBootStructures