ucpuid (execute CPUID instruction in debuggee)
Description of the 'ucpuid' command in HyperDbg.
Last updated
1: kHyperDbg> ucpuid 0
*******************************************************
* LEAF 0 HAS NO SUBLEAVES *
* ANY SUBLEAF YOU ENTER WILL DEFAULT TO 0 *
* AND THE PROCESSOR RETURNS UNDEFINED VALUES *
*******************************************************
Vendor : GenuineIntel
Maximum supported basic leaf : 221: kHyperDbg> ucpuid 0x80000000
==== CPUID.(EAX=80000000H) Extended Function Information ====
*******************************************************
* LEAF 0x80000000 HAS NO SUBLEAVES *
* ANY SUBLEAF YOU ENTER WILL DEFAULT TO 0 *
* AND THE PROCESSOR RETURNS UNDEFINED VALUES *
*******************************************************
-- EAX --
MaxExtendedFunctions = 0x80000008 (2147483656)
-- EBX --
Reserved = 0x00000000
-- ECX --
Reserved = 0x00000000
-- EDX --
Reserved = 0x000000001: kHyperDbg> ucpuid 0x1
==== CPUID.(EAX=01H) Version / Additional / Feature Information ====
*******************************************************
* LEAF 1 HAS NO SUBLEAVES *
* ANY SUBLEAF YOU ENTER WILL DEFAULT TO 0 *
* AND THE PROCESSOR RETURNS UNDEFINED VALUES *
*******************************************************
-- EAX: Version Information --
SteppingId = 2
Model = 5
FamilyId = 6
ProcessorType = 0
ExtendedModelId = 10
ExtendedFamilyId = 0
-- EBX: Additional Information --
BrandIndex = 0
ClflushLineSize = 8 (cache line = 64 bytes)
MaxAddressableIds = 8
InitialApicId = 1
-- ECX: Feature Information --
SSE3 = TRUE
PCLMULQDQ = TRUE
DTES64 = FALSE
MONITOR/MWAIT = FALSE
CPL Qualified DS = FALSE
VMX = TRUE
SMX = FALSE
EIST (SpeedStep) = FALSE
TM2 = FALSE
SSSE3 = TRUE
L1 Context ID = FALSE
Silicon Debug = FALSE
FMA = TRUE
CMPXCHG16B = TRUE
xTPR Update Control = FALSE
PDCM = FALSE
PCID = TRUE
DCA = FALSE
SSE4.1 = TRUE
SSE4.2 = TRUE
x2APIC = TRUE
MOVBE = TRUE
POPCNT = TRUE
TSC-Deadline = TRUE
AESNI = TRUE
XSAVE/XRSTOR = TRUE
OSXSAVE = TRUE
AVX = TRUE
F16C = TRUE
RDRAND = TRUE
-- EDX: Feature Information --
FPU = TRUE
VME = TRUE
DE = TRUE
PSE = TRUE
TSC = TRUE
MSR (RDMSR/WRMSR) = TRUE
PAE = TRUE
MCE = TRUE
CX8 (CMPXCHG8B) = TRUE
APIC On-Chip = TRUE
SEP (SYSENTER/EXIT) = TRUE
MTRR = TRUE
PGE = TRUE
MCA = TRUE
CMOV = TRUE
PAT = TRUE
PSE-36 = TRUE
PSN = FALSE
CLFSH = TRUE
DS (Debug Store) = FALSE
ACPI (Thermal/Clock) = FALSE
MMX = TRUE
FXSR (FXSAVE/FXRSTOR) = TRUE
SSE = TRUE
SSE2 = TRUE
SS (Self Snoop) = TRUE
HTT = TRUE
TM (Thermal Monitor) = FALSE
PBE = FALSE1: kHyperDbg> ucpuid 4 2
==== CPUID.(EAX=04H) Deterministic Cache Parameters ====
*******************************************************
* Max NumberOfSubLeaves = 3 *
*******************************************************
---- CPUID.(EAX=04H, ECX=2) ----
-- EAX --
CacheTypeField = 3 (Unified Cache)
CacheLevel = 2
SelfInitializingCacheLevel = TRUE
FullyAssociativeCache = FALSE
MaxAddressableIds(LogicalProcs) (raw) = 0 -> actual = 1 (raw + 1)
MaxAddressableIds(Cores) (raw) = 7 -> actual = 8 (raw + 1)
-- EBX --
SystemCoherencyLineSize (raw) = 63 -> actual = 64 bytes (raw + 1)
PhysicalLinePartitions (raw) = 0 -> actual = 1 (raw + 1)
WaysOfAssociativity (raw) = 3 -> actual = 4 (raw + 1)
-- ECX --
NumberOfSets (raw) = 1023 -> actual = 1024 (raw + 1)
-- EDX --
WriteBackInvalidate = FALSE
CacheInclusiveness = FALSE
ComplexCacheIndexing = FALSE (direct mapped)
-- Cache Size --
Cache Size (per spec formula) = 262144 bytes (256 KB, 0 MB)BOOLEAN
hyperdbg_u_request_cpuid(UINT32 FunctionId, UINT32 SubFunctionId);