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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
push ebx
push esi
push edi
mov edi, ecx
mov dword [ebp - 4], edi
call fcn.100e7200
xor ebx, ebx
mov dword [edi + 0x34c], eax
cmp eax, ebx
jne 0x100e8081
lea eax, [ebp - 8]
push eax
push 0x20019
push ebx
push str.HARDWAREDESCRIPTIONSystemCentralProcessor0
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x100e7e4b
mov eax, dword [ebp - 8]
lea ecx, [ebp - 0xc]
push ecx
lea edx, [edi + 0x64]
push edx
push ebx
push ebx
push str.VendorIdentifier
push eax
mov dword [ebp - 0xc], 0x80
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov ecx, dword [ebp - 8]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 8], ebx
pushfd
pop eax
mov ecx, eax
xor eax, 0x40000
push eax
popfd
pushfd
pop eax
xor eax, ecx
mov dword [ebp - 8], 0x182
je 0x100e7e85
push ecx
popfd
mov dword [ebp - 8], 0x1e6
mov eax, ecx
xor eax, 0x200000
push eax
popfd
pushfd
pop eax
xor eax, ecx
je 0x100e7e85
mov dword [ebp - 8], 0x24a
call fcn.100e5320
mov esi, eax
sub eax, ebx
mov dword [ebp - 0xc], esi
je 0x100e7e9d
sub eax, 1
je 0x100e7ef0
sub eax, 2
jne 0x100e7ea3
mov dword [edi + 0x350], ebx
mov eax, dword [ebp - 8]
sub eax, 0x182
je 0x100e7fa8
sub eax, 0x64
jne 0x100e8c96
call fcn.100e52a0
test eax, eax
je 0x100e7efc
push 0x2c
call fcn.1003ddbb
add esp, 4
cmp eax, ebx
je 0x100e7ff9
call fcn.10116270
mov esi, dword [ebp - 4]
mov edi, eax
call fcn.100e5b00
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [edi + 0x350], 1
jmp 0x100e7ea3
lea edx, [ebp - 8]
push edx
call fcn.100e5140
add esp, 4
test eax, eax
je 0x100e7f41
push 0x20
call fcn.1003ddbb
add esp, 4
cmp eax, ebx
je 0x100e7ff9
mov edx, dword [ebp - 8]
push 0x1e6
call fcn.10111cb0
mov esi, dword [ebp - 4]
mov edi, eax
call fcn.100e5b00
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x18
call fcn.1003ddbb
add esp, 4
cmp eax, ebx
je 0x100e7f6a
mov dword [eax], vtable.CCPUInfos.0
mov dword [eax + 0x10], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], 1
mov dword [eax + 0xc], ebx
mov dword [eax + 0x14], ebx
jmp 0x100e7f6c
xor eax, eax
mov esi, dword [ebp - 4]
mov edi, eax
call fcn.100e5b00
push 0x20
call fcn.1003ddbb
add esp, 4
cmp eax, ebx
je 0x100e806e
mov edx, dword [ebp - 0xc]
push 0x1e6
call fcn.10132d80
mov edi, eax
call fcn.100e5ab0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [ebp - 8], ebx
mov eax, 0x5555
xor edx, edx
mov ecx, 2
clc
div ecx
je 0x100e7fbe
jmp 0x100e7fc5
mov dword [ebp - 8], 1
mov edi, 1
cmp dword [ebp - 8], edi
jne 0x100e800f
push 0x28
call fcn.1003ddbb
add esp, 4
cmp eax, ebx
je 0x100e7ff9
push esi
call fcn.100eb930
mov esi, dword [ebp - 4]
mov edi, eax
call fcn.100e5b00
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp - 4]
xor eax, eax
mov edi, eax
call fcn.100e5b00
lea eax, [edi + 1]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x18
call fcn.1003ddbb
add esp, 4
cmp eax, ebx
je 0x100e8034
mov dword [eax], vtable.CCPUInfos.0
mov dword [eax + 0x10], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], edi
mov dword [eax + 0xc], ebx
mov dword [eax + 0x14], ebx
jmp 0x100e8036
xor eax, eax
mov esi, dword [ebp - 4]
mov edi, eax
call fcn.100e5b00
push 0x20
call fcn.1003ddbb
add esp, 4
cmp eax, ebx
je 0x100e806e
mov edx, dword [ebp - 0xc]
push 0x182
call fcn.10132ef0
mov edi, eax
call fcn.100e5ab0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor eax, eax
mov edi, eax
call fcn.100e5ab0
lea eax, [edi + 1]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x28]
mov dword [ebp - 0xc], eax
push esi
mov esi, dword [ebp - 0xc]
mov eax, 0
mov ebx, 0
mov ecx, 0
mov edx, 0
cpuid
mov dword [esi], eax
mov dword [esi + 4], ebx
mov dword [esi + 8], ecx
mov dword [esi + 0xc], edx
pop esi
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
lea eax, [edi + 0x64]
mov dword [ebp - 0x18], eax
mov dword [eax], ecx
mov eax, dword [ebp - 0x1c]
mov dword [edi + 0x68], eax
mov eax, dword [ebp - 0x28]
mov dword [edi + 0x6c], edx
mov byte [edi + 0x70], 0
mov dword [edi + 0x2ec], eax
cmp eax, 1
jb 0x100e826c
lea ecx, [ebp - 0x28]
mov dword [ebp - 0xc], ecx
push esi
mov esi, dword [ebp - 0xc]
mov eax, 1
mov ebx, 0
mov ecx, 0
mov edx, 0
cpuid
mov dword [esi], eax
mov dword [esi + 4], ebx
mov dword [esi + 8], ecx
mov dword [esi + 0xc], edx
pop esi
mov esi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov ebx, dword [ebp - 0x28]
mov dword [ebp - 8], edx
xor edx, edx
mov ecx, esi
and cl, 1
cmp cl, 1
sete dl
mov dword [ebp - 0x10], eax
mov eax, esi
and al, 0x20
xor ecx, ecx
cmp al, 0x20
sete cl
mov dword [edi + 0x350], edx
mov edx, esi
xor eax, eax
and dl, 0x10
cmp dl, 0x10
sete al
mov dword [ebp - 0x14], esi
mov dword [edi + 0x358], ecx
mov dword [edi + 0x354], eax
test eax, eax
je 0x100e81d0
push 0x28
call fcn.1003ddbb
add esp, 4
test eax, eax
je 0x100e8188
or ecx, 0xffffffff
mov dword [eax + 8], 4
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], ecx
mov dword [eax + 0x18], ecx
mov dword [eax + 0x1c], ecx
mov dword [eax + 0x20], ecx
mov dword [eax + 0x24], ecx
mov dword [eax], vtable.CTSCCounter.0
jmp 0x100e818a
xor eax, eax
mov esi, edi
mov dword [edi + 0x484], eax
call fcn.100e7ba0
fstp dword [ebp - 0xc]
fld dword [ebp - 0xc]
fst dword [edi + 0x534]
fmul qword [0x101f6e50]
call fcn.1003f916
mov ecx, dword [edi + 0x484]
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov edi, dword [edi + 0x484]
call fcn.1013c470
push edi
mov edi, dword [eax + 0x34]
call fcn.10001800
mov edi, esi
mov eax, ebx
shr eax, 8
and eax, 0xf
mov ecx, ebx
shr ecx, 4
and ecx, 0xf
mov dword [edi + 0x304], eax
mov eax, dword [ebp - 8]
mov dword [edi + 0x308], ecx
mov ecx, dword [ebp - 0x14]
mov dword [edi + 0x330], eax
mov eax, dword [ebp - 0x10]
mov dword [edi + 0x338], ecx
mov edx, ebx
shr ecx, 9
mov dword [edi + 0x334], eax
shr eax, 0x1f
and edx, 0xf
and ebx, 0xfff
and ecx, 1
mov dword [edi + 0x30c], edx
mov dword [edi + 0x318], ebx
mov dword [edi + 0x35c], ecx
mov dword [edi + 0x380], eax
test eax, eax
je 0x100e826c
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x14], ecx
push esi
mov esi, dword [ebp - 0x14]
mov eax, 0x40000000
mov ebx, 0
mov ecx, 0
mov edx, 0
cpuid
mov dword [esi], eax
mov dword [esi + 4], ebx
mov dword [esi + 8], ecx
mov dword [esi + 0xc], edx
pop esi
mov edx, dword [ebp - 0x28]
mov dword [edi + 0x2f4], edx
lea eax, [ebp - 0x28]
mov dword [ebp - 0x14], eax
push esi
mov esi, dword [ebp - 0x14]
mov eax, SysReAllocString
mov ebx, 0
mov ecx, 0
mov edx, 0
cpuid
mov dword [esi], eax
mov dword [esi + 4], ebx
mov dword [esi + 8], ecx
mov dword [esi + 0xc], edx
pop esi
mov eax, dword [ebp - 0x28]
mov esi, SysReAllocString
mov dword [edi + 0x2f0], eax
cmp eax, esi
jb 0x100e8308
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x14], ecx
push esi
mov esi, dword [ebp - 0x14]
mov eax, SysReAllocString
mov ebx, 0
mov ecx, 0
mov edx, 0
cpuid
mov dword [esi], eax
mov dword [esi + 4], ebx
mov dword [esi + 8], ecx
mov dword [esi + 0xc], edx
pop esi
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x24]
mov dword [edi + 0x340], eax
mov eax, dword [ebp - 0x1c]
mov dword [edi + 0x344], eax
shr eax, 0x14
mov ebx, 1
and eax, ebx
mov dword [edi + 0x33c], edx
mov dword [edi + 0x378], eax
mov esi, SysReAllocString
jmp 0x100e830d
mov ebx, 1
cmp dword [edi + 0x2ec], ebx
jb 0x100e831c
call fcn.100e71b0
jmp 0x100e831e
xor eax, eax
mov dword [edi + 0x3c8], eax
cmp dword [edi + 0x2f0], esi
jb 0x100e8333
call fcn.100e7160
jmp 0x100e8335
xor eax, eax
mov dword [edi + 0x3cc], eax
cmp dword [edi + 0x2f0], esi
jb 0x100e834a
call fcn.100e7110
jmp 0x100e834c
xor eax, eax
mov dword [edi + 0x3d0], eax
cmp dword [edi + 0x2f0], esi
jb 0x100e8361
call fcn.100e70c0
jmp 0x100e8363
xor eax, eax
mov dword [edi + 0x3d4], eax
cmp dword [edi + 0x2ec], ebx
jb 0x100e8378
call fcn.100e7070
jmp 0x100e837a
xor eax, eax
mov dword [edi + 0x3d8], eax
cmp dword [edi + 0x2ec], ebx
jb 0x100e838f
call fcn.100e7020
jmp 0x100e8391
xor eax, eax
mov dword [edi + 0x3dc], eax
cmp dword [edi + 0x2ec], ebx
jb 0x100e83a6
call fcn.100e6fd0
jmp 0x100e83a8
xor eax, eax
mov dword [edi + 0x3e0], eax
cmp dword [edi + 0x2ec], ebx
jb 0x100e83bd
call fcn.100e6f80
jmp 0x100e83bf
xor eax, eax
mov dword [edi + 0x3e4], eax
cmp dword [edi + 0x2ec], ebx
jb 0x100e83d4
call fcn.100e6f30
jmp 0x100e83d6
xor eax, eax
mov dword [edi + 0x3e8], eax
cmp dword [edi + 0x2ec], ebx
jb 0x100e83eb
call fcn.100e6ee0
jmp 0x100e83ed
xor eax, eax
mov dword [edi + 0x3ec], eax
cmp dword [edi + 0x2f0], esi
jb 0x100e8402
call fcn.100e6e90
jmp 0x100e8404
xor eax, eax
mov dword [edi + 0x3f0], eax
cmp dword [edi + 0x2f0], esi
jb 0x100e8419
call fcn.100e6e40
jmp 0x100e841b
xor eax, eax
mov dword [edi + 0x3f4], eax
cmp dword [edi + 0x2f0], esi
jb 0x100e8430
call fcn.100e6df0
jmp 0x100e8432
xor eax, eax
mov dword [edi + 0x3f8], eax
cmp dword [edi + 0x2ec], ebx
jb 0x100e8447
call fcn.100e6da0
jmp 0x100e8449
xor eax, eax
mov dword [edi + 0x3fc], eax
cmp dword [edi + 0x2ec], ebx
jb 0x100e845e
call fcn.100e6d50
jmp 0x100e8460
xor eax, eax
mov dword [edi + 0x400], eax
cmp dword [edi + 0x2ec], ebx
jb 0x100e8475
call fcn.100e6d00
jmp 0x100e8477
xor eax, eax
mov esi, 7
mov dword [edi + 0x404], eax
cmp dword [edi + 0x2ec], esi
jb 0x100e8491
call fcn.100e6cb0
jmp 0x100e8493
xor eax, eax
mov dword [edi + 0x408], eax
cmp dword [edi + 0x2ec], esi
jb 0x100e84a8
call fcn.100e6c60
jmp 0x100e84aa
xor eax, eax
mov dword [edi + 0x40c], eax
call fcn.100e6c00
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x410], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e84cd
call fcn.100e6bb0
jmp 0x100e84cf
xor eax, eax
mov dword [ebx + 0x414], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e84e4
call fcn.100e6ac0
jmp 0x100e84e6
xor eax, eax
mov dword [ebx + 0x418], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e84fb
call fcn.100e6a70
jmp 0x100e84fd
xor eax, eax
mov dword [ebx + 0x41c], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e8512
call fcn.100e6b10
jmp 0x100e8514
xor eax, eax
mov dword [ebx + 0x420], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e8529
call fcn.100e6b60
jmp 0x100e852b
xor eax, eax
mov dword [ebx + 0x424], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e8540
call fcn.100e6a20
jmp 0x100e8542
xor eax, eax
mov dword [ebx + 0x428], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e8557
call fcn.100e69d0
jmp 0x100e8559
xor eax, eax
mov dword [ebx + 0x42c], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e856e
call fcn.100e6980
jmp 0x100e8570
xor eax, eax
mov dword [ebx + 0x430], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e8585
call fcn.100e6930
jmp 0x100e8587
xor eax, eax
mov dword [ebx + 0x434], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e859c
call fcn.100e68e0
jmp 0x100e859e
xor eax, eax
mov dword [ebx + 0x438], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e85b3
call fcn.100e6890
jmp 0x100e85b5
xor eax, eax
mov dword [ebx + 0x43c], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e85ca
call fcn.100e6840
jmp 0x100e85cc
xor eax, eax
mov dword [ebx + 0x440], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e85e1
call fcn.100e67f0
jmp 0x100e85e3
xor eax, eax
cmp dword [ebx + 0x2ec], 1
mov dword [ebx + 0x448], eax
jb 0x100e85f9
call fcn.100e67a0
jmp 0x100e85fb
xor eax, eax
cmp dword [ebx + 0x2f0], 0x80000001
mov dword [ebx + 0x44c], eax
jb 0x100e8614
call fcn.100e6750
jmp 0x100e8616
xor eax, eax
mov dword [ebx + 0x450], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e862b
call fcn.100e6700
jmp 0x100e862d
xor eax, eax
mov dword [ebx + 0x454], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e8642
call fcn.100e66b0
jmp 0x100e8644
xor eax, eax
mov dword [ebx + 0x458], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e8659
call fcn.100e6660
jmp 0x100e865b
xor eax, eax
mov dword [ebx + 0x45c], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e8670
call fcn.100e6610
jmp 0x100e8672
xor eax, eax
mov dword [ebx + 0x460], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e8687
call fcn.100e65c0
jmp 0x100e8689
xor eax, eax
mov dword [ebx + 0x464], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e869e
call fcn.100e6570
jmp 0x100e86a0
xor eax, eax
mov dword [ebx + 0x468], eax
cmp dword [ebx + 0x2ec], esi
jb 0x100e86b5
call fcn.100e6520
jmp 0x100e86b7
xor eax, eax
mov edi, ebx
mov dword [ebx + 0x46c], eax
call fcn.100e7d20
mov edi, dword [ebp - 0x18]
mov ecx, str.GenuineIntel
mov eax, edi
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100e86f2
test dl, dl
je 0x100e86ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100e86f2
add eax, 2
add ecx, 2
test dl, dl
jne 0x100e86d0
xor esi, esi
xor eax, eax
jmp 0x100e86f9
sbb eax, eax
sbb eax, 0xffffffff
xor esi, esi
cmp eax, esi
je 0x100e8c29
mov ecx, str.GenuineIotel
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100e8728
test dl, dl
je 0x100e8724
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100e8728
add eax, 2
add ecx, 2
test dl, dl
jne 0x100e8708
xor eax, eax
jmp 0x100e872d
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
je 0x100e8c29
mov ecx, str.AuthenticAMD
mov eax, edi
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100e8760
test dl, dl
je 0x100e875c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100e8760
add eax, 2
add ecx, 2
test dl, dl
jne 0x100e8740
xor eax, eax
jmp 0x100e8765
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x100e879e
push 0x101cbb48
lea ecx, [ebx + 0xe4]
push 0x80
push ecx
call fcn.1003dc98
add esp, 0xc
push 0x1c
call fcn.1003ddbb
add esp, 4
cmp eax, esi
je 0x100e8c87
call fcn.101328c0
jmp 0x100e8c89
mov ecx, str.HygonGenuine
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100e87c5
test dl, dl
je 0x100e87c1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100e87c5
add eax, 2
add ecx, 2
test dl, dl
jne 0x100e87a5
xor eax, eax
jmp 0x100e87ca
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x100e8803
push str.HygonGenuine_Processor
lea edx, [ebx + 0xe4]
push 0x80
push edx
call fcn.1003dc98
add esp, 0xc
push 0x1c
call fcn.1003ddbb
add esp, 4
cmp eax, esi
je 0x100e8c87
call fcn.10114060
jmp 0x100e8c89
mov ecx, str.CyrixInstead
mov eax, edi
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100e8830
test dl, dl
je 0x100e882c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100e8830
add eax, 2
add ecx, 2
test dl, dl
jne 0x100e8810
xor eax, eax
jmp 0x100e8835
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x100e886e
push 0x101cbb90
lea eax, [ebx + 0xe4]
push 0x80
push eax
call fcn.1003dc98
add esp, 0xc
push 0x2c
call fcn.1003ddbb
add esp, 4
cmp eax, esi
je 0x100e8c87
call fcn.10116270
jmp 0x100e8c89
mov ecx, str.CentaurHauls
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100e8895
test dl, dl
je 0x100e8891
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100e8895
add eax, 2
add ecx, 2
test dl, dl
jne 0x100e8875
xor eax, eax
jmp 0x100e889a
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x100e88d3
push 0x101cbbb0
lea ecx, [ebx + 0xe4]
push 0x80
push ecx
call fcn.1003dc98
add esp, 0xc
push 0x18
call fcn.1003ddbb
add esp, 4
cmp eax, esi
je 0x100e8c87
call fcn.10161d90
jmp 0x100e8c89
mov ecx, str.__Shanghai
mov eax, edi
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100e8900
test dl, dl
je 0x100e88fc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100e8900
add eax, 2
add ecx, 2
test dl, dl
jne 0x100e88e0
xor eax, eax
jmp 0x100e8905
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x100e892e
push str.Zhaoxin_Processor
push 0x80
add ebx, 0xe4
push ebx
call fcn.1003dc98
add esp, 0xc
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, str.GenuineTMx86
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100e8955
test dl, dl
je 0x100e8951
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100e8955
add eax, 2
add ecx, 2
test dl, dl
jne 0x100e8935
xor eax, eax
jmp 0x100e895a
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x100e8993
push str.Transmeta_Processor
lea edx, [ebx + 0xe4]
push 0x80
push edx
call fcn.1003dc98
add esp, 0xc
push 0x20
call fcn.1003ddbb
add esp, 4
cmp eax, esi
je 0x100e8c87
call fcn.100eae10
jmp 0x100e8c89
mov ecx, str.UMC_UMC_UMC
mov eax, edi
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100e89c0
test dl, dl
je 0x100e89bc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100e89c0
add eax, 2
add ecx, 2
test dl, dl
jne 0x100e89a0
xor eax, eax
jmp 0x100e89c5
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x100e89fe
push 0x101cbc18
lea eax, [ebx + 0xe4]
push 0x80
push eax
call fcn.1003dc98
add esp, 0xc
push 0x18
call fcn.1003ddbb
add esp, 4
cmp eax, esi
je 0x100e8c87
call fcn.100eaa30
jmp 0x100e8c89
mov ecx, str.NexGenDriven
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100e8a25
test dl, dl
je 0x100e8a21
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100e8a25
add eax, 2
add ecx, 2
test dl, dl
jne 0x100e8a05
xor eax, eax
jmp 0x100e8a2a
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x100e8a6b
push str.NexGen_Processor
lea ecx, [ebx + 0xe4]
push 0x80
push ecx
call fcn.1003dc98
add esp, 0xc
call fcn.100e5320
push 0x28
mov edi, eax
call fcn.1003ddbb
add esp, 4
cmp eax, esi
je 0x100e8c87
push edi
call fcn.100eb930
jmp 0x100e8c89
mov ecx, str.RiseRiseRise
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100e8a92
test dl, dl
je 0x100e8a8e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100e8a92
add eax, 2
add ecx, 2
test dl, dl
jne 0x100e8a72
xor eax, eax
jmp 0x100e8a97
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x100e8ad0
push 0x101cbc5c
lea edx, [ebx + 0xe4]
push 0x80
push edx
call fcn.1003dc98
add esp, 0xc
push 0x18
call fcn.1003ddbb
add esp, 4
cmp eax, esi
je 0x100e8c87
call fcn.100eb6d0
jmp 0x100e8c89
mov ecx, str.SiS_SiS_SiS
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100e8af7
test dl, dl
je 0x100e8af3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100e8af7
add eax, 2
add ecx, 2
test dl, dl
jne 0x100e8ad7
xor eax, eax
jmp 0x100e8afc
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x100e8b35
push 0x101cbc78
lea eax, [ebx + 0xe4]
push 0x80
push eax
call fcn.1003dc98
add esp, 0xc
push 0x18
call fcn.1003ddbb
add esp, 4
cmp eax, esi
je 0x100e8c87
call fcn.100eb420
jmp 0x100e8c89
mov ecx, str.Geode_by_NSC
mov eax, edi
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100e8b60
test dl, dl
je 0x100e8b5c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100e8b60
add eax, 2
add ecx, 2
test dl, dl
jne 0x100e8b40
xor eax, eax
jmp 0x100e8b65
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x100e8b9e
push str.National_Semiconductor_Processor
lea ecx, [ebx + 0xe4]
push 0x80
push ecx
call fcn.1003dc98
add esp, 0xc
push 0x2c
call fcn.1003ddbb
add esp, 4
cmp eax, esi
je 0x100e8c87
call fcn.10116270
jmp 0x100e8c89
mov ecx, str.Vortex86_SoC
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100e8bc5
test dl, dl
je 0x100e8bc1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100e8bc5
add eax, 2
add ecx, 2
test dl, dl
jne 0x100e8ba5
xor eax, eax
jmp 0x100e8bca
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x100e8c03
push str.DMP_Processor
lea edx, [ebx + 0xe4]
push 0x80
push edx
call fcn.1003dc98
add esp, 0xc
push 0x18
call fcn.1003ddbb
add esp, 4
cmp eax, esi
je 0x100e8c87
call fcn.101145a0
jmp 0x100e8c89
push edi
push str._s_Processor
push 0x80
add ebx, 0xe4
push ebx
call fcn.1013b440
add esp, 0x10
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.Intel_Processor
lea eax, [ebx + 0xe4]
push 0x80
push eax
call fcn.1003dc98
add esp, 0xc
push 0x34
call fcn.1003ddbb
add esp, 4
cmp eax, esi
je 0x100e8c87
or ecx, 0xffffffff
mov dword [eax + 0x10], esi
mov dword [eax + 4], 0x1000000
mov dword [eax + 8], 1
mov dword [eax + 0xc], esi
mov dword [eax + 0x14], esi
mov dword [eax], vtable.Intel_CPU_Infos.0
mov dword [eax + 0x18], ecx
mov dword [eax + 0x1c], esi
mov dword [eax + 0x20], esi
mov dword [eax + 0x24], esi
mov dword [eax + 0x28], esi
mov dword [eax + 0x2c], ecx
mov dword [eax + 0x30], ecx
jmp 0x100e8c89
xor eax, eax
mov edi, eax
cmp edi, esi
je 0x100e8c96
mov esi, ebx
call fcn.100e5b00
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret