Function at 0x40b080
Capabilities:
Get cpu information
Query or enumerate registry value

Disassembly:
sub esp, 0x4c
mov ecx, dword [0x447e34]
push ebx
push esi
push edi
call fcn.00409000
mov ecx, dword [0x447e34]
push str.___Registry_information___
call fcn.00408fb0
mov ecx, dword [0x447e34]
call fcn.00409000
mov ecx, dword [0x447e34]
call fcn.00409000
mov edi, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
lea eax, [esp + 0x10]
push eax
push 1
push 0
mov ebx, 0x3f
push str.SoftwareMicrosoftWindowsCurrentVersion
push 0x80000002
mov dword [esp + 0x28], 0
mov dword [esp + 0x20], ebx
call edi
mov esi, dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x40b281
lea ecx, [esp + 0xc]
lea edx, [esp + 0x18]
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x18]
push edx
push eax
push 0
push str.ProductName
push ecx
call esi
test eax, eax
jne 0x40b141
mov ecx, dword [0x447e34]
push str.Product_name_:
call fcn.00408fb0
mov ecx, dword [0x447e34]
lea edx, [esp + 0x18]
push edx
call fcn.00408fb0
mov ecx, dword [0x447e34]
call fcn.00409000
mov dword [esp + 0xc], ebx
lea eax, [esp + 0xc]
lea ecx, [esp + 0x18]
push eax
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x18]
push ecx
push edx
push 0
push str.Version
push eax
call esi
test eax, eax
jne 0x40b191
mov ecx, dword [0x447e34]
push str.Version_:
call fcn.00408fb0
lea ecx, [esp + 0x18]
push ecx
mov ecx, dword [0x447e34]
call fcn.00408fb0
mov ecx, dword [0x447e34]
call fcn.00409000
mov dword [esp + 0xc], ebx
lea edx, [esp + 0xc]
lea eax, [esp + 0x18]
push edx
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push eax
push ecx
push 0
push str.VersionNumber
push edx
call esi
test eax, eax
jne 0x40b1e1
mov ecx, dword [0x447e34]
push str.Version_number_:
call fcn.00408fb0
mov ecx, dword [0x447e34]
lea eax, [esp + 0x18]
push eax
call fcn.00408fb0
mov ecx, dword [0x447e34]
call fcn.00409000
mov dword [esp + 0xc], ebx
lea ecx, [esp + 0xc]
lea edx, [esp + 0x18]
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x18]
push edx
push eax
push 0
push str.SubVersionNumber
push ecx
call esi
test eax, eax
jne 0x40b231
mov ecx, dword [0x447e34]
push str.SubVersion_number_:
call fcn.00408fb0
mov ecx, dword [0x447e34]
lea edx, [esp + 0x18]
push edx
call fcn.00408fb0
mov ecx, dword [0x447e34]
call fcn.00409000
mov dword [esp + 0xc], ebx
lea eax, [esp + 0xc]
lea ecx, [esp + 0x18]
push eax
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x18]
push ecx
push edx
push 0
push str.Plus__VersionNumber
push eax
call esi
test eax, eax
jne 0x40b281
mov ecx, dword [0x447e34]
push str.Plus_Version_number_:
call fcn.00408fb0
lea ecx, [esp + 0x18]
push ecx
mov ecx, dword [0x447e34]
call fcn.00408fb0
mov ecx, dword [0x447e34]
call fcn.00409000
mov dword [esp + 0xc], ebx
lea edx, [esp + 0x10]
push edx
push 1
push 0
push str.SoftwareMicrosoftDirectX
push 0x80000002
call edi
test eax, eax
jne 0x40b2ea
lea eax, [esp + 0xc]
lea ecx, [esp + 0x18]
push eax
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x18]
push ecx
push edx
push 0
push str.Version
push eax
call esi
test eax, eax
jne 0x40b2ea
mov ecx, dword [0x447e34]
push str.DirectX_version_:
call fcn.00408fb0
lea ecx, [esp + 0x18]
push ecx
mov ecx, dword [0x447e34]
call fcn.00408fb0
mov ecx, dword [0x447e34]
call fcn.00409000
mov dword [esp + 0xc], ebx
lea edx, [esp + 0x10]
push edx
push 1
push 0
push str.HardwareDescriptionSystemCentralProcessor0
push 0x80000002
call edi
test eax, eax
jne 0x40b3a7
lea eax, [esp + 0xc]
lea ecx, [esp + 0x18]
push eax
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x18]
push ecx
push edx
push 0
push str.Identifier
push eax
call esi
test eax, eax
jne 0x40b357
mov ecx, dword [0x447e34]
push str.Processor_id_:
call fcn.00408fb0
lea ecx, [esp + 0x18]
push ecx
mov ecx, dword [0x447e34]
call fcn.00408fb0
mov ecx, dword [0x447e34]
call fcn.00409000
mov dword [esp + 0xc], ebx
lea edx, [esp + 0xc]
lea eax, [esp + 0x18]
push edx
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push eax
push ecx
push 0
push str.VendorIdentifier
push edx
call esi
test eax, eax
jne 0x40b3a7
mov ecx, dword [0x447e34]
push str.Vendor_id_:
call fcn.00408fb0
mov ecx, dword [0x447e34]
lea eax, [esp + 0x18]
push eax
call fcn.00408fb0
mov ecx, dword [0x447e34]
call fcn.00409000
mov dword [esp + 0xc], ebx
lea ecx, [esp + 0x10]
push ecx
push 1
push 0
push str.HardwareDescriptionSystemCentralProcessor1
push 0x80000002
call edi
test eax, eax
jne 0x40b464
lea edx, [esp + 0xc]
lea eax, [esp + 0x18]
push edx
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push eax
push ecx
push 0
push str.Identifier
push edx
call esi
test eax, eax
jne 0x40b414
mov ecx, dword [0x447e34]
push str.Processor_id_:
call fcn.00408fb0
mov ecx, dword [0x447e34]
lea eax, [esp + 0x18]
push eax
call fcn.00408fb0
mov ecx, dword [0x447e34]
call fcn.00409000
mov dword [esp + 0xc], ebx
lea ecx, [esp + 0xc]
lea edx, [esp + 0x18]
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x18]
push edx
push eax
push 0
push str.VendorIdentifier
push ecx
call esi
test eax, eax
jne 0x40b464
mov ecx, dword [0x447e34]
push str.Vendor_id_:
call fcn.00408fb0
mov ecx, dword [0x447e34]
lea edx, [esp + 0x18]
push edx
call fcn.00408fb0
mov ecx, dword [0x447e34]
call fcn.00409000
mov dword [esp + 0xc], ebx
mov ecx, dword [0x447e34]
call fcn.00409000
pop edi
pop esi
pop ebx
add esp, 0x4c
ret