Function at 0x40ab40
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x2b4
mov eax, dword [0x4e3e9c]
xor eax, esp
mov dword [esp + 0x2b0], eax
push ebx
push esi
push edi
push 0xffffffffffffffff
mov edi, ecx
call fcn.00437ad0
mov ecx, eax
call fcn.004368b0
test eax, eax
je 0x40c3e0
mov eax, dword [0x4e5d84]
lea esi, [edi + 0xf4]
push esi
push str._html__head__title_CPU_Z__s_HTML_report_file__title___head__body_bgcolorFFFFFF__n
push eax
call fcn.0048f1b6
mov ecx, dword [0x4e5d84]
push str._font_face_arial__color_000000___n
push ecx
call fcn.0048f1b6
mov edx, dword [0x4e5d84]
push str._table_border0_width_100____cellspacing_0__cellpadding_5___n
push edx
call fcn.0048f1b6
mov eax, dword [0x4e5d84]
push str._tr_align_left___n
push eax
call fcn.0048f1b6
mov ecx, dword [0x4e5d84]
push str._td__n
push ecx
call fcn.0048f1b6
mov edx, dword [0x4e5d84]
push str._p__a_href_http:__www.cpuid.com__targetblank__img_src_http:__www.cpuid.com_pics_logo.jpg__border_0__width_172__height_55____a___p__n
push edx
call fcn.0048f1b6
mov eax, dword [0x4e5d84]
push esi
push str._p__b_CPU_Z__s_report_file__b___p__n
push eax
call fcn.0048f1b6
mov ecx, dword [0x4e5d84]
add esp, 0x40
push str.__td__n
push ecx
call fcn.0048f1b6
mov edx, dword [0x4e5d84]
push str.__tr__n
push edx
call fcn.0048f1b6
mov ecx, dword [edi + 0xbc]
add esp, 0x10
push 0
call fcn.0043c070
mov esi, eax
test esi, esi
je 0x40bb87
push str.nbsp
push str.Processor_s_
mov ecx, edi
call fcn.00407ca0
mov ecx, edi
call fcn.00407c60
mov eax, dword [edi + 0xbc]
mov ecx, dword [eax + 8]
push ecx
push 0x4ae3b8
push str.Number_of_processors
push edi
call fcn.00408730
add esp, 0x10
mov ecx, esi
call fcn.00438e90
push eax
push str._d_per_processor
push str.Number_of_cores
push edi
call fcn.00408730
add esp, 0x10
mov ecx, esi
call fcn.00438ea0
push eax
push str._d_per_processor
push str.Number_of_threads
push edi
call fcn.00408730
add esp, 0x10
mov ecx, esi
call fcn.00439730
push eax
push 0x4ae020
push str.Name
push edi
call fcn.00408730
add esp, 0x10
mov ecx, esi
call fcn.00439770
push eax
push 0x4ae020
push str.Code_Name
push edi
call fcn.00408730
add esp, 0x10
mov ecx, esi
call fcn.004397b0
cmp byte [eax], 0
je 0x40ad23
mov ecx, esi
call fcn.004397b0
push eax
push 0x4ae020
lea edx, [esp + 0xc0]
push 0x200
push edx
call fcn.00436a40
add esp, 0x10
mov ecx, esi
call fcn.00439700
test eax, eax
je 0x40ad3d
push str.__Engineering_Sample_
lea eax, [esp + 0xbc]
push 0x200
push eax
call fcn.00436830
jmp 0x40ad3a
push str.nbsp
lea ecx, [esp + 0xbc]
push 0x200
push ecx
call fcn.00436a40
add esp, 0xc
lea edx, [esp + 0xb8]
push edx
push 0x4ae020
push str.Specification
push edi
call fcn.00408730
add esp, 0x10
mov ecx, esi
call fcn.00439110
push eax
push 0x4ae020
push str.Package
push edi
call fcn.00408730
add esp, 0x10
mov ecx, esi
call fcn.00439900
push eax
mov ecx, esi
call fcn.004398d0
push eax
mov ecx, esi
call fcn.004398a0
push eax
push str._X._X._X
push str.Family_Model_Stepping
push edi
call fcn.00408730
add esp, 0x18
mov ecx, esi
call fcn.00439930
push eax
call fcn.00408510
add esp, 4
test eax, eax
je 0x40add5
mov ecx, esi
call fcn.00439960
push eax
mov ecx, esi
call fcn.00439930
push eax
push str._X._X
push str.Extended_Family_Model
push edi
call fcn.00408730
add esp, 0x14
mov ecx, esi
call fcn.00439870
test eax, eax
jle 0x40adfb
mov ecx, esi
call fcn.00439870
push eax
push 0x4ae3b8
push str.Brand_ID
push edi
call fcn.00408730
add esp, 0x10
mov ecx, esi
call fcn.004397f0
push eax
push 0x4ae020
push str.Core_Stepping
push edi
call fcn.00408730
add esp, 0x10
mov ecx, esi
call fcn.00439830
fstp dword [esp + 0x18]
fldz
fld dword [esp + 0x18]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x40aeac
fcom qword [0x4ae2c0]
fnstsw ax
test ah, 5
jp 0x40ae6f
fmul qword [0x4ae2b8]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
call fcn.0048f080
push eax
push str._d_nm
lea eax, [esp + 0xc0]
push 0x200
push eax
call fcn.00436a40
add esp, 0x10
jmp 0x40ae8f
sub esp, 8
fstp qword [esp]
push str._1.2f_um
lea ecx, [esp + 0xc4]
push 0x200
push ecx
call fcn.00436a40
add esp, 0x14
lea edx, [esp + 0xb8]
push edx
push 0x4ae020
push str.Technology
push edi
call fcn.00408730
add esp, 0x10
jmp 0x40aeae
fstp st(0)
push 0
mov ecx, esi
call fcn.00439b10
fstp dword [esp + 0x18]
mov ecx, esi
call fcn.00438d80
fstp dword [esp + 0x1c]
push 0
mov ecx, esi
call fcn.00439b30
fstp dword [esp + 0x24]
fldz
fld dword [esp + 0x18]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x40b017
sub esp, 8
fstp qword [esp]
push 0x4ae280
push str.Core_Speed
push edi
call fcn.00408730
fld dword [esp + 0x2c]
add esp, 0xc
fstp qword [esp]
push 0x4ae280
lea eax, [esp + 0xc4]
push 0x200
push eax
call fcn.00436a40
fldz
fld dword [esp + 0x38]
add esp, 0x14
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x40af9f
fld dword [esp + 0x1c]
fcom st(2)
fnstsw ax
fstp st(2)
test ah, 0x41
jne 0x40afa3
fld qword [0x4ae278]
fmul st(1)
call fcn.0048f080
fxch st(1)
mov ecx, eax
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esp, 0x10
lea edx, [eax + eax*4]
add edx, edx
sub ecx, edx
fstp qword [esp + 8]
fstp qword [esp]
je 0x40af8a
push str._.2f_x__.1f_MHz
push str.Multiplier_x_Bus_speed
push edi
call fcn.00408730
add esp, 0x1c
jmp 0x40afa7
push str._.1f_x__.1f_MHz
push str.Multiplier_x_Bus_speed
push edi
call fcn.00408730
add esp, 0x1c
jmp 0x40afa7
fstp st(1)
jmp 0x40afa5
fstp st(0)
fstp st(0)
mov ecx, esi
call fcn.00439bf0
fstp dword [esp + 0x1c]
fldz
fcomp dword [esp + 0x1c]
fnstsw ax
test ah, 5
jp 0x40b019
mov ecx, esi
call fcn.004396d0
and eax, 0xffffff00
cmp eax, 0x2002000
je 0x40aff8
cmp eax, 0x2004000
je 0x40aff8
fld dword [esp + 0x1c]
sub esp, 8
fstp qword [esp]
push str._4.1f_MHz
push str.Rated_Bus_speed
push edi
call fcn.00408730
add esp, 0x14
jmp 0x40b019
fld dword [esp + 0x1c]
sub esp, 8
fstp qword [esp]
push str._4.1f_MHz
push str.HT_Link_speed
push edi
call fcn.00408730
add esp, 0x14
jmp 0x40b019
fstp st(0)
mov ecx, esi
call fcn.00439c60
push eax
call fcn.00408510
add esp, 4
test eax, eax
je 0x40b048
mov ecx, esi
call fcn.00439c60
push eax
push str._d_MHz
push str.Stock_frequency
push edi
call fcn.00408730
add esp, 0x10
push 1
mov ecx, esi
call fcn.004399f0
test eax, eax
mov eax, 0x4ae338
jne 0x40b05f
mov eax, 0x4ae335
push eax
lea eax, [esp + 0xbc]
push 0x200
push eax
call fcn.00436a40
add esp, 0xc
push 2
mov ecx, esi
call fcn.004399f0
test eax, eax
mov eax, 0x4ae330
jne 0x40b08c
mov eax, 0x4ae335
push eax
lea ecx, [esp + 0xbc]
push 0x200
push ecx
call fcn.00436830
add esp, 0xc
push 3
mov ecx, esi
call fcn.004399f0
test eax, eax
mov eax, str.__3DNow_
jne 0x40b0b9
mov eax, 0x4ae335
push eax
lea edx, [esp + 0xbc]
push 0x200
push edx
call fcn.00436830
add esp, 0xc
push 4
mov ecx, esi
call fcn.004399f0
test eax, eax
mov eax, 0x4ae330
jne 0x40b0e6
mov eax, 0x4ae335
push eax
lea eax, [esp + 0xbc]
push 0x200
push eax
call fcn.00436830
add esp, 0xc
push 5
mov ecx, esi
call fcn.004399f0
test eax, eax
mov eax, str.__SSE
jne 0x40b113
mov eax, 0x4ae335
push eax
lea ecx, [esp + 0xbc]
push 0x200
push ecx
call fcn.00436830
add esp, 0xc
push 6
mov ecx, esi
call fcn.004399f0
test eax, eax
mov eax, str.__SSE2
jne 0x40b140
mov eax, 0x4ae335
push eax
lea edx, [esp + 0xbc]
push 0x200
push edx
call fcn.00436830
add esp, 0xc
push 7
mov ecx, esi
call fcn.004399f0
test eax, eax
mov eax, str.__SSE3
jne 0x40b16d
mov eax, 0x4ae335
push eax
lea eax, [esp + 0xbc]
push 0x200
push eax
call fcn.00436830
add esp, 0xc
push 8
mov ecx, esi
call fcn.004399f0
test eax, eax
mov eax, str.__SSSE3
jne 0x40b19a
mov eax, 0x4ae335
push eax
lea ecx, [esp + 0xbc]
push 0x200
push ecx
call fcn.00436830
add esp, 0xc
push 9
mov ecx, esi
call fcn.004399f0
test eax, eax
mov eax, str.__SSE4.1
jne 0x40b1c7
mov eax, 0x4ae335
push eax
lea edx, [esp + 0xbc]
push 0x200
push edx
call fcn.00436830
add esp, 0xc
push 0xc
mov ecx, esi
call fcn.004399f0
test eax, eax
mov eax, str.__SSE4.2
jne 0x40b1f4
mov eax, 0x4ae335
push eax
lea eax, [esp + 0xbc]
push 0x200
push eax
call fcn.00436830
add esp, 0xc
push 0xd
mov ecx, esi
call fcn.004399f0
test eax, eax
mov eax, str.__SSE4A
jne 0x40b221
mov eax, 0x4ae335
push eax
lea ecx, [esp + 0xbc]
push 0x200
push ecx
call fcn.00436830
add esp, 0xc
push 0xe
mov ecx, esi
call fcn.004399f0
test eax, eax
mov eax, str.__SSE5
jne 0x40b24e
mov eax, 0x4ae335
push eax
lea edx, [esp + 0xbc]
push 0x200
push edx
call fcn.00436830
add esp, 0xc
mov ecx, esi
call fcn.004396d0
test eax, 0x1000000
push 0x10
mov ecx, esi
je 0x40b299
call fcn.004399f0
test eax, eax
mov eax, str.__EM64T
jne 0x40b289
mov eax, 0x4ae335
push eax
push 0x200
lea eax, [esp + 0xc0]
push eax
jmp 0x40b2ba
call fcn.004399f0
test eax, eax
mov eax, 0x4ae2c8
jne 0x40b2ac
mov eax, 0x4ae335
push eax
push 0x200
lea ecx, [esp + 0xc0]
push ecx
call fcn.00436830
add esp, 0xc
cmp byte [esp + 0xb8], 0
lea eax, [esp + 0xb8]
jne 0x40b2d8
mov eax, str.nbsp
push eax
push 0x4ae020
push str.Instruction_sets
push edi
call fcn.00408730
add esp, 0x10
push 1
push 1
mov ecx, esi
call fcn.00439090
push 2
push 1
mov ecx, esi
mov ebx, eax
call fcn.00439090
push 4
push 1
mov ecx, esi
mov dword [esp + 0x3c], eax
call fcn.00439090
push 3
push 2
mov ecx, esi
mov dword [esp + 0x34], eax
call fcn.00439090
push 1
push 2
mov ecx, esi
mov dword [esp + 0x20], eax
call fcn.00439090
push 2
push 2
mov ecx, esi
mov dword [esp + 0x2c], eax
call fcn.00439090
push 3
push 3
mov ecx, esi
mov dword [esp + 0x30], eax
call fcn.00439090
test ebx, ebx
mov dword [esp + 0x20], eax
jle 0x40b481
push 1
push 1
mov ecx, esi
call fcn.00439040
test eax, eax
mov dword [esp + 0x1c], eax
je 0x40b481
mov edx, eax
mov eax, dword [edx + 0xc]
push eax
call fcn.00408510
add esp, 4
test eax, eax
je 0x40b481
cmp ebx, 1
jle 0x40b3b6
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 0xc]
push eax
push ebx
push str._d_x__d_KBytes
lea ecx, [esp + 0xc4]
push 0x200
push ecx
call fcn.00436a40
mov ebx, dword [esp + 0x30]
add esp, 0x14
jmp 0x40b3d8
mov ebx, dword [esp + 0x1c]
mov eax, dword [ebx + 0xc]
push eax
push str._d_KBytes
lea edx, [esp + 0xc0]
push 0x200
push edx
call fcn.00436a40
add esp, 0x10
mov eax, dword [ebx + 0x18]
cmp eax, 0xffffffff
je 0x40b434
cmp eax, 1
je 0x40b41f
cmp eax, 0xff
je 0x40b40a
mov ecx, dword [ebx + 0x14]
push ecx
push eax
push str.___d_way_set_associative___d_byte_line_size
lea edx, [esp + 0x44]
push 0x80
push edx
call fcn.00436a40
add esp, 0x14
jmp 0x40b44f
mov eax, dword [ebx + 0x14]
push eax
push str.__Fully_associative___d_byte_line_size
push 0x80
lea ecx, [esp + 0x44]
push ecx
jmp 0x40b447
mov edx, dword [ebx + 0x14]
push edx
push str.__Direct_mapped___d_byte_line_size
push 0x80
lea eax, [esp + 0x44]
push eax
jmp 0x40b447
mov ecx, dword [ebx + 0x14]
push ecx
push str.___d_byte_line_size
push 0x80
lea edx, [esp + 0x44]
push edx
call fcn.00436a40
add esp, 0x10
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0xbc]
push 0x200
push ecx
call fcn.00436830
lea edx, [esp + 0xc4]
push edx
push 0x4ae020
push str.L1_Data_cache__per_processor_
push edi
call fcn.00408730
add esp, 0x1c
cmp dword [esp + 0x34], 0
jle 0x40b5a9
push 2
push 1
mov ecx, esi
call fcn.00439040
mov ebx, eax
test ebx, ebx
je 0x40b66d
mov eax, dword [ebx + 0xc]
push eax
call fcn.00408510
add esp, 4
test eax, eax
je 0x40b66d
cmp dword [esp + 0x34], 1
mov eax, dword [ebx + 0xc]
push eax
jle 0x40b4e1
mov eax, dword [esp + 0x38]
push eax
push str._d_x__d_KBytes
lea ecx, [esp + 0xc4]
push 0x200
push ecx
call fcn.00436a40
add esp, 0x14
jmp 0x40b4fb
push str._d_KBytes
lea edx, [esp + 0xc0]
push 0x200
push edx
call fcn.00436a40
add esp, 0x10
mov eax, dword [ebx + 0x18]
cmp eax, 0xffffffff
je 0x40b557
cmp eax, 1
je 0x40b542
cmp eax, 0xff
je 0x40b52d
mov ecx, dword [ebx + 0x14]
push ecx
push eax
push str.___d_way_set_associative___d_byte_line_size
lea edx, [esp + 0x44]
push 0x80
push edx
call fcn.00436a40
add esp, 0x14
jmp 0x40b572
mov eax, dword [ebx + 0x14]
push eax
push str.__Fully_associative___d_byte_line_size
push 0x80
lea ecx, [esp + 0x44]
push ecx
jmp 0x40b56a
mov edx, dword [ebx + 0x14]
push edx
push str.__Direct_mapped___d_byte_line_size
push 0x80
lea eax, [esp + 0x44]
push eax
jmp 0x40b56a
mov ecx, dword [ebx + 0x14]
push ecx
push str.___d_byte_line_size
push 0x80
lea edx, [esp + 0x44]
push edx
call fcn.00436a40
add esp, 0x10
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0xbc]
push 0x200
push ecx
call fcn.00436830
lea edx, [esp + 0xc4]
push edx
push 0x4ae020
push str.L1_Instruction_cache__per_processor_
push edi
call fcn.00408730
add esp, 0x1c
jmp 0x40b66d
cmp dword [esp + 0x2c], 0
jle 0x40b66d
push 4
push 1
mov ecx, esi
call fcn.00439040
mov ebx, eax
test ebx, ebx
je 0x40b66d
mov eax, dword [ebx + 0xc]
push eax
call fcn.00408510
add esp, 4
test eax, eax
je 0x40b66d
cmp dword [esp + 0x2c], 1
mov eax, dword [ebx + 0xc]
push eax
jle 0x40b609
mov eax, dword [esp + 0x30]
push eax
push str._d_x__d_Kuops
lea ecx, [esp + 0xc4]
push 0x200
push ecx
call fcn.00436a40
add esp, 0x14
jmp 0x40b623
push str._d_Kuops
lea edx, [esp + 0xc0]
push 0x200
push edx
call fcn.00436a40
add esp, 0x10
mov eax, dword [ebx + 0x18]
push eax
push str.___d_way_set_associative
lea ecx, [esp + 0x40]
push 0x80
push ecx
call fcn.00436a40
lea edx, [esp + 0x48]
push edx
lea eax, [esp + 0xcc]
push 0x200
push eax
call fcn.00436830
lea ecx, [esp + 0xd4]
push ecx
push 0x4ae020
push str.Trace_cache__per_processor_
push edi
call fcn.00408730
add esp, 0x2c
cmp dword [esp + 0x28], 0
jle 0x40b790
push 2
push 2
mov ecx, esi
call fcn.00439040
mov ebx, eax
test ebx, ebx
je 0x40b790
mov eax, dword [ebx + 0xc]
push eax
call fcn.00408510
add esp, 4
test eax, eax
je 0x40b790
cmp dword [esp + 0x28], 1
mov eax, dword [ebx + 0xc]
push eax
jle 0x40b6cd
mov edx, dword [esp + 0x2c]
push edx
push str._d_x__d_KBytes
lea eax, [esp + 0xc4]
push 0x200
push eax
call fcn.00436a40
add esp, 0x14
jmp 0x40b6e7
push str._d_KBytes
lea ecx, [esp + 0xc0]
push 0x200
push ecx
call fcn.00436a40
add esp, 0x10
mov eax, dword [ebx + 0x18]
cmp eax, 0xffffffff
je 0x40b743
cmp eax, 1
je 0x40b72e
cmp eax, 0xff
je 0x40b719
mov edx, dword [ebx + 0x14]
push edx
push eax
push str.___d_way_set_associative___d_byte_line_size
lea eax, [esp + 0x44]
push 0x80
push eax
call fcn.00436a40
add esp, 0x14
jmp 0x40b75e
mov ecx, dword [ebx + 0x14]
push ecx
push str.__Fully_associative___d_byte_line_size
push 0x80
lea edx, [esp + 0x44]
push edx
jmp 0x40b756
mov eax, dword [ebx + 0x14]
push eax
push str.__Direct_mapped___d_byte_line_size
push 0x80
lea ecx, [esp + 0x44]
push ecx
jmp 0x40b756
mov edx, dword [ebx + 0x14]
push edx
push str.___d_byte_line_size
push 0x80
lea eax, [esp + 0x44]
push eax
call fcn.00436a40
add esp, 0x10
lea ecx, [esp + 0x38]
push ecx
lea edx, [esp + 0xbc]
push 0x200
push edx
call fcn.00436830
lea eax, [esp + 0xc4]
push eax
push 0x4ae020
push str.L2_Instruction_cache__per_processor_
push edi
call fcn.00408730
add esp, 0x1c
cmp dword [esp + 0x24], 0
jle 0x40b8b3
push 1
push 2
mov ecx, esi
call fcn.00439040
mov ebx, eax
test ebx, ebx
je 0x40b8b3
mov eax, dword [ebx + 0xc]
push eax
call fcn.00408510
add esp, 4
test eax, eax
je 0x40b8b3
cmp dword [esp + 0x24], 1
mov eax, dword [ebx + 0xc]
push eax
jle 0x40b7f0
mov ecx, dword [esp + 0x28]
push ecx
push str._d_x__d_KBytes
lea edx, [esp + 0xc4]
push 0x200
push edx
call fcn.00436a40
add esp, 0x14
jmp 0x40b80a
push str._d_KBytes
lea eax, [esp + 0xc0]
push 0x200
push eax
call fcn.00436a40
add esp, 0x10
mov eax, dword [ebx + 0x18]
cmp eax, 0xffffffff
je 0x40b866
cmp eax, 1
je 0x40b851
cmp eax, 0xff
je 0x40b83c
mov ecx, dword [ebx + 0x14]
push ecx
push eax
push str.___d_way_set_associative___d_byte_line_size
lea edx, [esp + 0x44]
push 0x80
push edx
call fcn.00436a40
add esp, 0x14
jmp 0x40b881
mov eax, dword [ebx + 0x14]
push eax
push str.__Fully_associative___d_byte_line_size
push 0x80
lea ecx, [esp + 0x44]
push ecx
jmp 0x40b879
mov edx, dword [ebx + 0x14]
push edx
push str.__Direct_mapped___d_byte_line_size
push 0x80
lea eax, [esp + 0x44]
push eax
jmp 0x40b879
mov ecx, dword [ebx + 0x14]
push ecx
push str.___d_byte_line_size
push 0x80
lea edx, [esp + 0x44]
push edx
call fcn.00436a40
add esp, 0x10
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0xbc]
push 0x200
push ecx
call fcn.00436830
lea edx, [esp + 0xc4]
push edx
push 0x4ae020
push str.L2_Data_cache__per_processor_
push edi
call fcn.00408730
add esp, 0x1c
cmp dword [esp + 0x18], 0
jle 0x40b9d6
push 3
push 2
mov ecx, esi
call fcn.00439040
mov ebx, eax
test ebx, ebx
je 0x40b9d6
mov eax, dword [ebx + 0xc]
push eax
call fcn.00408510
add esp, 4
test eax, eax
je 0x40b9d6
cmp dword [esp + 0x18], 1
mov eax, dword [ebx + 0xc]
push eax
jle 0x40b913
mov eax, dword [esp + 0x1c]
push eax
push str._d_x__d_KBytes
lea ecx, [esp + 0xc4]
push 0x200
push ecx
call fcn.00436a40
add esp, 0x14
jmp 0x40b92d
push str._d_KBytes
lea edx, [esp + 0xc0]
push 0x200
push edx
call fcn.00436a40
add esp, 0x10
mov eax, dword [ebx + 0x18]
cmp eax, 0xffffffff
je 0x40b989
cmp eax, 1
je 0x40b974
cmp eax, 0xff
je 0x40b95f
mov ecx, dword [ebx + 0x14]
push ecx
push eax
push str.___d_way_set_associative___d_byte_line_size
lea edx, [esp + 0x44]
push 0x80
push edx
call fcn.00436a40
add esp, 0x14
jmp 0x40b9a4
mov eax, dword [ebx + 0x14]
push eax
push str.__Fully_associative___d_byte_line_size
push 0x80
lea ecx, [esp + 0x44]
push ecx
jmp 0x40b99c
mov edx, dword [ebx + 0x14]
push edx
push str.__Direct_mapped___d_byte_line_size
push 0x80
lea eax, [esp + 0x44]
push eax
jmp 0x40b99c
mov ecx, dword [ebx + 0x14]
push ecx
push str.___d_byte_line_size
push 0x80
lea edx, [esp + 0x44]
push edx
call fcn.00436a40
add esp, 0x10
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0xbc]
push 0x200
push ecx
call fcn.00436830
lea edx, [esp + 0xc4]
push edx
push 0x4ae020
push str.L2_cache__per_processor_
push edi
call fcn.00408730
add esp, 0x1c
cmp dword [esp + 0x20], 0
jle 0x40bb80
push 3
push 3
mov ecx, esi
call fcn.00439040
mov ebx, eax
test ebx, ebx
je 0x40bb80
mov esi, dword [ebx + 0xc]
push esi
call fcn.00408510
add esp, 4
test eax, eax
je 0x40bb80
cmp dword [esp + 0x20], 1
jle 0x40ba7d
cmp esi, 0x400
jl 0x40ba5b
mov eax, esi
and eax, 0x800003ff
jns 0x40ba29
dec eax
or eax, 0xfffffc00
inc eax
jne 0x40ba5b
mov ecx, dword [esp + 0x20]
mov eax, esi
cdq
and edx, 0x3ff
add eax, edx
sar eax, 0xa
push eax
push ecx
push str._d_x__d_MBytes
lea edx, [esp + 0xc4]
push 0x200
push edx
call fcn.00436a40
add esp, 0x14
jmp 0x40bad7
mov eax, dword [esp + 0x20]
push esi
push eax
push str._d_x__d_KBytes
lea ecx, [esp + 0xc4]
push 0x200
push ecx
call fcn.00436a40
add esp, 0x14
jmp 0x40bad7
cmp esi, 0x400
jl 0x40babc
mov edx, esi
and edx, 0x800003ff
jns 0x40ba97
dec edx
or edx, 0xfffffc00
inc edx
jne 0x40babc
mov eax, esi
cdq
and edx, 0x3ff
add eax, edx
sar eax, 0xa
push eax
push str._d_MBytes
push 0x200
lea eax, [esp + 0xc4]
push eax
jmp 0x40bacf
push esi
push str._d_KBytes
push 0x200
lea ecx, [esp + 0xc4]
push ecx
call fcn.00436a40
add esp, 0x10
mov eax, dword [ebx + 0x18]
cmp eax, 0xffffffff
je 0x40bb33
cmp eax, 1
je 0x40bb1e
cmp eax, 0xff
je 0x40bb09
mov edx, dword [ebx + 0x14]
push edx
push eax
push str.___d_way_set_associative___d_byte_line_size
lea eax, [esp + 0x44]
push 0x80
push eax
call fcn.00436a40
add esp, 0x14
jmp 0x40bb4e
mov ecx, dword [ebx + 0x14]
push ecx
push str.__Fully_associative___d_byte_line_size
push 0x80
lea edx, [esp + 0x44]
push edx
jmp 0x40bb46
mov eax, dword [ebx + 0x14]
push eax
push str.__Direct_mapped___d_byte_line_size
push 0x80
lea ecx, [esp + 0x44]
push ecx
jmp 0x40bb46
mov edx, dword [ebx + 0x14]
push edx
push str.___d_byte_line_size
push 0x80
lea eax, [esp + 0x44]
push eax
call fcn.00436a40
add esp, 0x10
lea ecx, [esp + 0x38]
push ecx
lea edx, [esp + 0xbc]
push 0x200
push edx
call fcn.00436830
lea eax, [esp + 0xc4]
push eax
push 0x4ae020
push str.L3_cache__per_processor_
push edi
call fcn.00408730
add esp, 0x1c
mov ecx, edi
call fcn.00407c80
cmp dword [edi + 0xc4], 0
je 0x40c11f
mov eax, dword [edi + 0xc4]
mov ecx, dword [eax + 0x14]
mov esi, dword [eax + 0xc]
mov edx, dword [eax + 0x18]
mov ebx, dword [eax + 0x10]
push str.nbsp
mov dword [esp + 0x28], ecx
push str.Chipset__Memory
mov ecx, edi
mov dword [esp + 0x30], esi
mov dword [esp + 0x20], edx
call fcn.00407ca0
mov ecx, edi
call fcn.00407c60
test esi, esi
je 0x40bbf0
lea eax, [esi + 0x88]
push eax
lea ecx, [esi + 0x48]
push ecx
add esi, 8
push esi
push str._s__s_rev.__s
push str.Northbridge
push edi
call fcn.00408730
add esp, 0x18
test ebx, ebx
je 0x40bc16
lea edx, [ebx + 0x88]
push edx
lea eax, [ebx + 0x48]
push eax
add ebx, 8
push ebx
push str._s__s_rev.__s
push str.Southbridge
push edi
call fcn.00408730
add esp, 0x18
call fcn.00437ad0
cmp dword [eax + 0x34], 0
je 0x40bdf0
push 0xc
call fcn.0047fb47
add esp, 4
test eax, eax
je 0x40bc42
mov ecx, eax
call fcn.00403e30
mov esi, eax
mov dword [esp + 0x20], eax
jmp 0x40bc48
xor esi, esi
mov dword [esp + 0x20], esi
call fcn.00437ad0
mov eax, dword [eax + 0x34]
push esi
push 0
push 3
mov ecx, eax
call fcn.0043ea60
test eax, eax
je 0x40bde0
cmp dword [esp + 0x20], 0
je 0x40bdf0
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx + 4]
test eax, eax
mov dword [esp + 0x30], eax
je 0x40bde0
mov edx, eax
mov eax, dword [edx + 4]
test eax, eax
je 0x40bde0
nop
push eax
call fcn.00403e50
mov eax, dword [eax + 0x18]
add esp, 4
test eax, eax
je 0x40bce2
mov ebx, dword [eax + 4]
test ebx, ebx
je 0x40bce2
mov esi, dword [ebx + 4]
test esi, esi
je 0x40bce2
mov edi, edi
push 2
mov ecx, esi
call fcn.0043cd80
test eax, eax
jne 0x40bd0c
push 0x10
mov ecx, esi
call fcn.0043cd80
test eax, eax
jne 0x40bd9d
test ebx, ebx
je 0x40bce2
mov eax, dword [ebx + 8]
test eax, eax
je 0x40bce2
mov esi, dword [eax + 4]
test esi, esi
mov ebx, eax
jne 0x40bcb0
cmp dword [esp + 0x30], 0
je 0x40bde0
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 8]
test eax, eax
je 0x40bde0
mov dword [esp + 0x30], eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x40bc90
jmp 0x40bde0
push esi
call fcn.00403e50
mov esi, eax
add esp, 4
cmp dword [esi + 0x54], 0
je 0x40bde0
push 0x4af650
push str.Graphic_Interface
push edi
call fcn.00408730
movzx eax, byte [esi + 0x58]
mov ecx, eax
and ecx, 0xf
push ecx
shr eax, 4
push eax
push str._d._d
push str.AGP_Revision
push edi
call fcn.00408730
mov edx, dword [esi + 0x48]
push edx
push 0x4ae038
push str.AGP_Transfer_Rate
push edi
call fcn.00408730
add esp, 0x30
cmp dword [esi + 0x34], 0
mov ecx, str.enabled
jne 0x40bd76
mov ecx, str.not_enabled
cmp dword [esi + 0x30], 0
mov eax, str.supported
jne 0x40bd86
mov eax, str.not_supported
push ecx
push eax
push str._s___s
push str.AGP_Side_Band_Addressing
push edi
call fcn.00408730
add esp, 0x14
jmp 0x40bde0
push esi
call fcn.00403e50
push str.PCI_Express
push str.Graphic_Interface
push edi
mov esi, eax
call fcn.00408730
mov eax, dword [esi + 0x1c]
push eax
push 0x4ae000
push str.PCI_E_Link_Width
push edi
call fcn.00408730
mov ecx, dword [esi + 0x18]
push ecx
push 0x4ae000
push str.PCI_E_Max_Link_Width
push edi
call fcn.00408730
add esp, 0x30
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x40bdf0
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov eax, dword [esp + 0x18]
test eax, eax
je 0x40be1c
mov esi, dword [eax + 0xc]
push esi
call fcn.00408510
add esp, 4
test eax, eax
je 0x40be1c
push esi
push str._d_KBytes
push str.On_Board_Cache
push edi
call fcn.00408730
add esp, 0x10
mov esi, dword [esp + 0x24]
test esi, esi
je 0x40c118
mov byte [esp + 0xb8], 0
mov eax, dword [esi + 4]
add eax, 0xfffffffe
cmp eax, 7
ja case.default.0x40be3f
jmp dword [eax*4 + 0x40c3f8]
push 0x4aeed0
push 0x200
lea ecx, [esp + 0xc0]
push ecx
jmp 0x40beca
push 0x4aeecc
jmp 0x40bebd
push str.SDRAM
push 0x200
lea eax, [esp + 0xc0]
push eax
jmp 0x40beca
push str.RDRAM
push 0x200
lea ecx, [esp + 0xc0]
push ecx
jmp 0x40beca
push 0x4aeeb8
jmp 0x40bebd
push str.DDR2
push 0x200
lea eax, [esp + 0xc0]
push eax
jmp 0x40beca
push str.DDR3
push 0x200
lea ecx, [esp + 0xc0]
push ecx
jmp 0x40beca
push str.FB_DDR2
push 0x200
lea edx, [esp + 0xc0]
push edx
call fcn.00436a40
add esp, 0xc
lea eax, [esp + 0xb8]
push eax
push 0x4ae020
push str.Memory_Type
push edi
call fcn.00408730
mov ecx, dword [esi + 8]
push ecx
push str._d_MBytes
push str.Memory_Size
push edi
call fcn.00408730
fldz
fcomp dword [esi + 0x40]
add esp, 0x20
fnstsw ax
test ah, 5
jp 0x40bf2d
fld dword [esi + 0x40]
lea edx, [esi + 0x78]
push edx
sub esp, 8
fstp qword [esp]
push str._.1f_MHz___s_
push str.Memory_Frequency
push edi
call fcn.00408730
add esp, 0x18
mov ebx, dword [esi + 0x4c]
push ebx
call fcn.00408510
add esp, 4
test eax, eax
je 0x40bf93
test ebx, ebx
jne 0x40bf5d
push str.none
lea eax, [esp + 0xbc]
push 0x200
push eax
call fcn.00436a40
add esp, 0xc
jmp 0x40bf78
push ebx
push str._d_way
lea ecx, [esp + 0xc0]
push 0x200
push ecx
call fcn.00436a40
add esp, 0x10
lea edx, [esp + 0xb8]
push edx
push 0x4ae020
push str.DRAM_Interleave
push edi
call fcn.00408730
add esp, 0x10
fldz
fcomp dword [esi + 0x18]
fnstsw ax
test ah, 5
jp 0x40bfbb
fld dword [esi + 0x18]
sub esp, 8
fstp qword [esp]
push str._.1f_clocks
push str.CAS_Latency__tCL_
push edi
call fcn.00408730
add esp, 0x14
mov ebx, dword [esi + 0x1c]
push ebx
call fcn.00408510
add esp, 4
test eax, eax
je 0x40bfdf
push ebx
push str._d_clocks
push str.RAS_to_CAS__tRCD_
push edi
call fcn.00408730
add esp, 0x10
mov ebx, dword [esi + 0x20]
push ebx
call fcn.00408510
add esp, 4
test eax, eax
je 0x40c003
push ebx
push str._d_clocks
push str.RAS_Precharge__tRP_
push edi
call fcn.00408730
add esp, 0x10
mov ebx, dword [esi + 0x24]
push ebx
call fcn.00408510
add esp, 4
test eax, eax
je 0x40c027
push ebx
push str._d_clocks
push str.Cycle_Time__tRAS_
push edi
call fcn.00408730
add esp, 0x10
mov ebx, dword [esi + 0x28]
push ebx
call fcn.00408510
add esp, 4
test eax, eax
je 0x40c04b
push ebx
push str._d_clocks
push str.Bank_Cycle_Time__tRC_
push edi
call fcn.00408730
add esp, 0x10
mov ebx, dword [esi + 0x38]
push ebx
call fcn.00408510
add esp, 4
test eax, eax
je 0x40c06f
push ebx
push str._d_clocks
push str.DRAM_Idle_Timer
push edi
call fcn.00408730
add esp, 0x10
mov ebx, dword [esi + 0x3c]
push ebx
call fcn.00408510
add esp, 4
test eax, eax
je 0x40c093
push ebx
push 0x4af4c0
push str.Command_Rate__CR_
push edi
call fcn.00408730
add esp, 0x10
mov ebx, dword [esi + 0x34]
push ebx
call fcn.00408510
add esp, 4
test eax, eax
je 0x40c0b7
push ebx
push 0x4ae3b8
push str.Total_CAS__tRDRAM_
push edi
call fcn.00408730
add esp, 0x10
mov esi, dword [esi + 0x30]
push esi
call fcn.00408510
add esp, 4
test eax, eax
je 0x40c0db
push esi
push 0x4ae3b8
push str.Row_To_Column__tRCD_
push edi
call fcn.00408730
add esp, 0x10
mov eax, dword [esp + 0x28]
test eax, eax
je 0x40c118
mov esi, dword [eax + 0xa4]
push esi
call fcn.00408510
add esp, 4
test eax, eax
je 0x40c118
test esi, esi
mov eax, str.enabled
jne 0x40c104
mov eax, str.disabled
push eax
push 0x4ae020
push str.Performance_Mode
push edi
call fcn.00408730
add esp, 0x10
mov ecx, edi
call fcn.00407c80
cmp dword [edi + 0xd0], 0
je 0x40c2a7
push str.nbsp
push str.System
mov ecx, edi
call fcn.00407ca0
mov ecx, edi
call fcn.00407c60
mov ecx, dword [edi + 0xd0]
push 1
call fcn.0047d820
test eax, eax
je 0x40c1c3
push eax
call fcn.00403e50
mov esi, eax
mov eax, dword [esi + 8]
add esp, 4
cmp byte [eax], 0
jne 0x40c16d
mov eax, str.nbsp
push eax
push 0x4ae020
push str.System_Manufacturer
push edi
call fcn.00408730
mov eax, dword [esi + 0xc]
add esp, 0x10
cmp byte [eax], 0
jne 0x40c18e
mov eax, str.nbsp
push eax
push 0x4ae020
push str.System_Name
push edi
call fcn.00408730
mov esi, dword [esi + 0x14]
add esp, 0x10
cmp byte [esi], 0
jne 0x40c1af
mov esi, str.nbsp
push esi
push 0x4ae020
push str.System_S_N
push edi
call fcn.00408730
add esp, 0x10
mov ecx, dword [edi + 0xd0]
push 2
call fcn.0047d820
test eax, eax
je 0x40c221
push eax
call fcn.00403e50
mov esi, eax
mov eax, dword [esi + 8]
add esp, 4
cmp byte [eax], 0
jne 0x40c1ec
mov eax, str.nbsp
push eax
push 0x4ae020
push str.Mainboard_Vendor
push edi
call fcn.00408730
mov eax, dword [esi + 0xc]
add esp, 0x10
cmp byte [eax], 0
jne 0x40c20d
mov eax, str.nbsp
push eax
push 0x4ae020
push str.Mainboard_Model
push edi
call fcn.00408730
add esp, 0x10
mov ecx, dword [edi + 0xd0]
push 0
call fcn.0047d820
test eax, eax
je 0x40c2a0
push eax
call fcn.00403e50
mov esi, eax
mov eax, dword [esi + 8]
add esp, 4
cmp byte [eax], 0
jne 0x40c24a
mov eax, str.nbsp
push eax
push 0x4ae020
push str.BIOS_Vendor
push edi
call fcn.00408730
mov eax, dword [esi + 0xc]
add esp, 0x10
cmp byte [eax], 0
jne 0x40c26b
mov eax, str.nbsp
push eax
push 0x4ae020
push str.BIOS_Version
push edi
call fcn.00408730
mov esi, dword [esi + 0x10]
add esp, 0x10
cmp byte [esi], 0
jne 0x40c28c
mov esi, str.nbsp
push esi
push 0x4ae020
push str.BIOS_Date
push edi
call fcn.00408730
add esp, 0x10
mov ecx, edi
call fcn.00407c80
cmp dword [edi + 0xcc], 0
je 0x40c355
push str.nbsp
push str.Memory_SPD
mov ecx, edi
call fcn.00407ca0
mov ecx, edi
call fcn.00407c60
mov eax, dword [edi + 0xcc]
xor ecx, ecx
cmp dword [eax + 4], ecx
jle 0x40c34e
mov dword [esp + 0x18], ecx
lea ecx, [ecx]
mov esi, dword [eax + 8]
add esi, dword [esp + 0x18]
lea ebx, [ecx + 1]
push ebx
push str.Module__d
lea eax, [esp + 0x40]
push 0x80
push eax
call fcn.00436a40
lea eax, [esi + 0x60]
add esp, 0x10
cmp byte [eax], 0
jne 0x40c30f
mov eax, str.unknown_brand
mov ecx, dword [esi + 0x180]
mov edx, dword [esi + 0x1cc]
push eax
push ecx
push edx
lea eax, [esi + 0x38]
push eax
add esi, 0x18
push esi
push str._s___s___d_MHz____d_MBytes___s
lea ecx, [esp + 0x50]
push ecx
push edi
call fcn.00408730
mov eax, dword [edi + 0xcc]
add dword [esp + 0x38], 0x224
mov ecx, ebx
add esp, 0x20
cmp ecx, dword [eax + 4]
jl 0x40c2e0
mov ecx, edi
call fcn.00407c80
cmp dword [edi + 0xb4], 0
je 0x40c3c0
push str.nbsp
push str.Software
mov ecx, edi
call fcn.00407ca0
mov ecx, edi
call fcn.00407c60
mov eax, dword [edi + 0xb4]
mov edx, dword [eax + 0x20]
mov eax, dword [eax + 0x1c]
push edx
push eax
push str._s__s
push str.Windows_Version
push edi
call fcn.00408730
mov eax, dword [edi + 0xb4]
add eax, 0x40
add esp, 0x14
cmp byte [eax], 0
je 0x40c3b9
push eax
push 0x4ae020
push str.DirectX_Version
push edi
call fcn.00408730
add esp, 0x10
mov ecx, edi
call fcn.00407c80
mov ecx, dword [0x4e5d84]
push str.__font___body___html__n
push ecx
call fcn.0048f1b6
add esp, 8
call fcn.00437ad0
mov ecx, eax
call fcn.00436440
mov ecx, dword [esp + 0x2bc]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0048e5ae
mov esp, ebp
pop ebp
ret