KeQuerySecureSpeculationInformation
INT64 __stdcall KeQuerySecureSpeculationInformation(UINT8 *dst, UINT64 count, _DWORD *a3){
unsigned int v4;
__int16 SecureSpeculationControlInformation;
unsigned int v8;
v4 = count;
SecureSpeculationControlInformation = VslGetSecureSpeculationControlInformation();
*a3 = 8;
if( v4 < 4 )
return 3221225476i64;
memset((INT64)dst, 0i64);
if( (SecureSpeculationControlInformation & 1) != 0 )
*(_DWORD *)dst |= 1u;
if( (SecureSpeculationControlInformation & 2) != 0 )
*(_DWORD *)dst |= 2u;
if( (SecureSpeculationControlInformation & 4) != 0 )
{
*(_DWORD *)dst |= 4u;
v8 = *(_DWORD *)dst & 0xFFFFFFF7;
LABEL_11:
*(_DWORD *)dst = v8;
goto LABEL_12;
}
if( (SecureSpeculationControlInformation & 8) != 0 )
{
*(_DWORD *)dst |= 8u;
v8 = *(_DWORD *)dst & 0xFFFFFFFB;
goto LABEL_11;
}
LABEL_12:
if( (SecureSpeculationControlInformation & 0x2000) != 0 )
*(_DWORD *)dst |= 0x10u;
return 0i64;
}Referenced by:
ExpQuerySystemInformation