KeFlushQueuedDpcs
VOID KeFlushQueuedDpcs(void){
unsigned int v0;
unsigned __int16 *v1[2];
__int16 v2;
int v3;
__int16 v4;
_KAFFINITY_EX result;
__int64 v6[22];
memset((INT64)&result, 0i64);
v3 = 0;
v4 = 0;
v0 = 0;
memset((INT64)v6, 0i64);
KiGetDeepIdleProcessors(&result, (_KAFFINITY_EX *)v6);
v1[1] = (unsigned __int16 *)result.Bitmap[0];
v1[0] = (unsigned __int16 *)&result;
v2 = 0;
while( !(unsigned int)KeEnumerateNextProcessor(&v0, v1) )
{
if( *((_DWORD *)*(&KiProcessorBlock + v0) + 3147) )
KeAddProcessorAffinityEx(v6, v0);
}
KeGenericProcessorCallback(v6, (void(__fastcall *)(struct _KPRCB *, __int64))KiFlushQueuedDpcsWorker, 0i64, 2);
}Referenced by:
CcDeletePartition
ExpPartitionDestroy
ExpTimeZoneCleanupSiloState
IopDeleteDriver
KeCleanupThreadState
MmPageEntireDriver