HalpQueryCapsuleCapabilities
NTSTATUS __stdcall HalpQueryCapsuleCapabilities(
VOID *CapsuleHeaderArray,
INT64 CapsuleCount,
UINT64 *MaximumCapsuleSize,
UINT64 *ResetType){
char v6;
unsigned int v7;
NTSTATUS CapsuleCapabilities;
_GROUP_AFFINITY Affinity;
_GROUP_AFFINITY PreviousAffinity;
Affinity = 0i64;
PreviousAffinity = 0i64;
if( !byte_140C49D08 )
return -1073741822;
if( KeGetCurrentIrql() >= 2u )
{
v6 = 0;
}
else
{
v6 = 1;
v7 = KiProcessorIndexToNumberMappingTable[KeGetPcr()->Prcb.Number];
Affinity.Reserved[1] = 0;
Affinity.Reserved[2] = 0;
*(_DWORD *)&Affinity.Group = (unsigned __int16)(v7 >> 6);
Affinity.Mask = 1i64 << (v7 & 0x3F);
KeSetSystemGroupAffinityThread(&Affinity, &PreviousAffinity);
}
CapsuleCapabilities = HalEfiQueryCapsuleCapabilities((__int64)CapsuleHeaderArray);
if( v6 )
KeRevertToUserGroupAffinityThread(&PreviousAffinity);
return CapsuleCapabilities;
}Referenced by:
No references.