KiPrepareReadyThreadForRescheduling

VOID __stdcall KiPrepareReadyThreadForRescheduling(_ETHREAD *Thread, INT64 Priority, _SINGLE_LIST_ENTRY *ReadyList){
  if( (unsigned int)(Priority - 1) <= 0xD
    && KUSER_SHARED_DATA.TickCount.LowPart - 300 >= Thread->Tcb.WaitBlock[2].SpareLong )
  {
    KiSetPriorityBoost(0i64, &Thread->Tcb, 15, Thread->Tcb.CycleTime);
  }
  KiInsertDeferredReadyList((INT64)ReadyList, (INT64)Thread);
}

Referenced by:

KeSetActualBasePriorityThread
KiApplyForegroundBoostThread
KiRescheduleThreadAfterAffinityChange
KiSetHeteroPolicyThread
KiSetPriorityThread