KeQueryActiveProcessorCount
UINT64 __stdcall KeQueryActiveProcessorCount(UINT64 *ActiveProcessors){
unsigned __int64 v1;
__int64 v2;
if( ActiveProcessors )
{
v1 = KeActiveProcessors.Bitmap[0];
*ActiveProcessors = KeActiveProcessors.Bitmap[0];
return(0x101010101010101i64
* ((((v1 - ((v1 >> 1) & 0x5555555555555555i64)) & 0x3333333333333333i64)
+ (((v1 - ((v1 >> 1) & 0x5555555555555555i64)) >> 2) & 0x3333333333333333i64)
+ ((((v1 - ((v1 >> 1) & 0x5555555555555555i64)) & 0x3333333333333333i64)
+ (((v1 - ((v1 >> 1) & 0x5555555555555555i64)) >> 2) & 0x3333333333333333i64)) >> 4)) & 0xF0F0F0F0F0F0F0Fi64)) >> 56;
}
else
{
LODWORD(v2) = KeQueryActiveProcessorCountEx(0);
}
return(unsigned int)v2;
}Referenced by:
No references.