KiPrepareFlushCurrentAffinity
unsigned __int64 __fastcall KiPrepareFlushCurrentAffinity(_DWORD *a1){
struct _KPRCB *CurrentPrcb;
unsigned __int64 result;
__int64 Group;
unsigned __int64 GroupSetMember;
CurrentPrcb = KeGetCurrentPrcb();
a1[1] = 0;
*a1 = 1310721;
result = (unsigned __int64)memset(a1 + 2, 0i64, 0xA0u);
Group = CurrentPrcb->Group;
GroupSetMember = CurrentPrcb->GroupSetMember;
if( *(_WORD *)a1 <= (unsigned __int16)Group )
{
result = (unsigned int)(Group + 1);
*(_WORD *)a1 = Group + 1;
}
*(_QWORD *)&a1[2 * Group + 2] |= GroupSetMember;
return result;
}Referenced by:
KeFlushMultipleRangeCurrentTb
KeFlushSingleCurrentTb