HalpUpdateCapsule
NTSTATUS __stdcall HalpUpdateCapsule(PVOID CapsuleHeaderArray, INT64 CapsuleCount, _LARGE_INTEGER ScatterGatherList){
char v4;
unsigned int v5;
NTSTATUS updated;
_GROUP_AFFINITY Affinity;
_GROUP_AFFINITY PreviousAffinity;
Affinity = 0i64;
PreviousAffinity = 0i64;
if( !byte_140C49D08 )
return -1073741822;
if( KeGetCurrentIrql() >= 2u )
{
v4 = 0;
}
else
{
v4 = 1;
v5 = KiProcessorIndexToNumberMappingTable[KeGetPcr()->Prcb.Number];
Affinity.Reserved[1] = 0;
Affinity.Reserved[2] = 0;
*(_DWORD *)&Affinity.Group = (unsigned __int16)(v5 >> 6);
Affinity.Mask = 1i64 << (v5 & 0x3F);
KeSetSystemGroupAffinityThread(&Affinity, &PreviousAffinity);
}
updated = HalEfiUpdateCapsule();
if( v4 )
KeRevertToUserGroupAffinityThread(&PreviousAffinity);
return updated;
}Referenced by:
No references.