Function at 0x421053
Capabilities:
Check os version
Get disk information
Get disk size
Get hostname
Get memory capacity
Get session user name
Get system information on windows

Disassembly:
push ebp
lea ebp, [esp - 0x70]
sub esp, 0x45c
mov eax, dword [0x449748]
push ebx
mov ebx, dword [ebp + 0x7c]
and ebx, 0xfffffff
neg ebx
push esi
sbb bl, bl
push edi
inc bl
push str.CCPU32.LIB_ver.
mov dword [ebp + 0x6c], eax
mov dword [ebp - 0x388], 0x43c616
mov byte [ebp - 0x37c], bl
call fcn.0042043a
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
push 8
push 0
push 5
mov edi, eax
lea eax, [ebp + 0x58]
push str._d._02d._02d
push eax
call esi
lea eax, [ebp + 0x58]
push eax
call fcn.00420458
add esp, 0x1c
test bl, bl
mov ecx, str._r_nCopyright_C__1996_2004_INASOFT
jne 0x4210c5
mov ecx, str._r_nCopyright
push ecx
mov edi, eax
call fcn.00420458
mov dword [ebp - 0x380], eax
pop ecx
lea eax, [ebp - 0x3dc]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
movzx eax, word [ebp - 0x3dc]
and dword [0x44c2b4], 0
cmp eax, 7
mov edi, 0x44c288
ja case.default.0x4210fd
jmp dword [eax*4 + 0x42374d]
call fcn.00420766
test ax, ax
je 0x42135e
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcmpA]
push str.CyrixInstead
push edi
call ebx
test eax, eax
jne 0x421136
cmp dword [0x44c2a0], reloc.WSOCK32.dll_connect
sbb al, al
and al, 3
add al, 2
jmp 0x4211ad
push str._________IBM
push edi
call ebx
test eax, eax
jne 0x42114e
mov byte [0x44c241], 3
jmp 0x42134d
push str.AuthenticAMD
push edi
call ebx
test eax, eax
jne 0x421163
mov al, 4
mov byte [0x44c241], al
jmp 0x4211ba
push str.CentaurHauls
push edi
call ebx
test eax, eax
jne 0x42117b
mov byte [0x44c241], 6
jmp 0x42134d
push str.UMC_UMC_UMC
push edi
call ebx
test eax, eax
jne 0x421193
mov byte [0x44c241], 7
jmp 0x42134d
push str.NexGenDriven
push edi
call ebx
test eax, eax
jne 0x4211ab
mov byte [0x44c241], 8
jmp 0x42134d
mov al, 1
cmp al, 4
mov byte [0x44c241], al
jne 0x42132c
mov ecx, dword [0x44c2b4]
cmp ecx, 0x510
jb 0x421332
push dword [ebp - 0x37c]
call fcn.00420852
pop ecx
call fcn.00420075
cmp byte [0x44c254], 0x20
mov eax, 0x44c254
jne 0x4211f1
inc eax
cmp byte [eax], 0x20
je 0x4211eb
mov bl, byte [ebp - 0x37c]
mov edi, dword [ebp - 0x380]
push eax
call fcn.00420458
cmp dword [ebp - 0x3c8], 1
pop ecx
mov edi, eax
jbe 0x421283
test bl, bl
mov eax, 0x4370e4
jne 0x42121d
mov eax, str._r_nNumber_of_CPU:
push eax
call fcn.00420458
push dword [ebp - 0x3c8]
mov edi, eax
call fcn.004204a9
push eax
call fcn.00420458
push 0x4370cc
mov edi, eax
call fcn.00420458
add esp, 0x10
mov edi, eax
xor ebx, ebx
mov eax, dword [ebp - 0x3cc]
mov ecx, ebx
shr eax, cl
test al, 1
mov eax, 0x4370c8
jne 0x421261
mov eax, 0x4370c4
push eax
call fcn.00420458
inc ebx
cmp ebx, 0x20
pop ecx
mov edi, eax
jl 0x421249
push 0x445ea4
call fcn.00420458
mov bl, byte [ebp - 0x37c]
pop ecx
mov edi, eax
cmp dword [0x44c2b4], 0
je 0x422421
push str._r_nCPUID________:
call fcn.00420458
push dword [0x44c2b4]
mov edi, eax
lea eax, [ebp + 0x38]
push str._04xh
push eax
call esi
lea eax, [ebp + 0x38]
push eax
call fcn.00420458
add esp, 0x14
cmp byte [0x44c240], 0
je 0x421559
test bl, bl
mov ecx, 0x437094
jne 0x4212d4
mov ecx, str._r_nBrand_ID_____:
push ecx
mov edi, eax
call fcn.00420458
mov edi, eax
movzx eax, byte [0x44c240]
push eax
lea eax, [ebp + 0x38]
push str._02xh__
push eax
call esi
lea eax, [ebp + 0x38]
push eax
call fcn.00420458
push dword [0x44c2b4]
mov edi, eax
mov al, byte [0x44c240]
call fcn.004200de
add esp, 0x18
cmp byte [eax], 0
je 0x42154e
push eax
call fcn.00420458
mov dword [esp], 0x437074
mov edi, eax
jmp 0x421553
mov ecx, dword [0x44c2b4]
cmp al, 2
je 0x4211cc
cmp al, 1
jne 0x42134d
mov eax, 0xf00
and ecx, eax
cmp ecx, eax
je 0x4211cc
push dword [ebp - 0x37c]
call fcn.00420852
pop ecx
jmp 0x4211f1
mov dword [ebp - 0x384], 1
xor ax, ax
sahf
mov ax, 5
mov bx, 2
div bl
lahf
cmp ah, 2
jne 0x421382
mov ax, 1
jmp 0x421385
xor ax, ax
mov word [ebp - 0x384], ax
cmp word [ebp - 0x384], 0
je 0x4213a0
mov eax, str.Cx4x86_5x86
jmp 0x4211f1
mov eax, dword [ebp - 0x3c4]
sub eax, 0x182
je 0x4213d5
sub eax, 0x64
je 0x4213cb
sub eax, 0x64
mov bl, byte [ebp - 0x37c]
jne 0x421543
mov eax, str.Intel_Pentium
jmp 0x4211f7
mov eax, str.Intel_80486
jmp 0x4211f1
mov eax, str.Intel_80386
jmp 0x4211f1
cmp word [ebp - 0x3bc], 4
je 0x421401
test bl, bl
je 0x4213f7
mov eax, str.MIPS
jmp 0x4211f7
mov eax, str.MIPS_Architecture
jmp 0x4211f7
mov eax, str.MIPS_R4000
jmp 0x4211f7
movzx eax, word [ebp - 0x3bc]
sub eax, 0x5248
je 0x42144e
dec eax
dec eax
je 0x421444
sub eax, 0x62
je 0x42143a
test bl, bl
je 0x421430
mov eax, str.Alpha
jmp 0x4211f7
mov eax, str.Alpha_Architecture
jmp 0x4211f7
mov eax, str.Alpha_21164
jmp 0x4211f7
mov eax, str.Alpha_21066
jmp 0x4211f7
mov eax, str.Alpha_21064
jmp 0x4211f7
movzx eax, word [ebp - 0x3bc]
dec eax
je 0x4214c1
dec eax
dec eax
je 0x4214b7
dec eax
je 0x4214ad
dec eax
dec eax
je 0x4214a3
sub eax, 3
je 0x421499
sub eax, 0xb
je 0x42148f
test bl, bl
je 0x421485
mov eax, 0x436fac
jmp 0x4211f7
mov eax, str.PPC_Architecture
jmp 0x4211f7
mov eax, str.PPC_620
jmp 0x4211f7
mov eax, str.PPC_604
jmp 0x4211f7
mov eax, str.PPC_603
jmp 0x4211f7
mov eax, 0x436f70
jmp 0x4211f7
mov eax, 0x436f68
jmp 0x4211f7
mov eax, str.PPC_601
jmp 0x4211f7
test bl, bl
je 0x4214d9
mov eax, 0x436f4c
jmp 0x4211f7
mov eax, str.SHX_Architecture
jmp 0x4211f7
test bl, bl
je 0x4214f1
mov eax, 0x436f24
jmp 0x4211f7
mov eax, str.ARM_Architecture
jmp 0x4211f7
test bl, bl
je 0x421509
mov eax, str.IA64
jmp 0x4211f7
mov eax, str.IA64_Architecture
jmp 0x4211f7
test bl, bl
je 0x421521
mov eax, str.Alpha64
jmp 0x4211f7
mov eax, str.Alpha64_Architecture
jmp 0x4211f7
test bl, bl
je 0x421539
mov eax, 0x436ea0
jmp 0x4211f7
mov eax, str.Unknown_Architecture
jmp 0x4211f7
mov eax, dword [ebp - 0x394]
jmp 0x4211f7
push str.Unknown_
call fcn.00420458
pop ecx
test byte [ebp + 0x7f], 0xf0
je 0x4215e3
test byte [0x44c2b2], 4
je 0x4215e3
test bl, bl
mov ecx, 0x436e68
jne 0x42157a
mov ecx, str._r_nSerial_No.___:
push ecx
mov edi, eax
call fcn.00420458
push 1
mov ebx, eax
call fcn.0042003a
mov edi, dword [0x44c250]
push 3
mov dword [ebp + 0x60], edi
call fcn.0042003a
movzx eax, word [0x44c248]
push eax
movzx eax, word [0x44c24a]
push eax
movzx eax, word [0x44c244]
push eax
movzx eax, word [0x44c246]
push eax
movzx eax, di
push eax
movzx eax, word [ebp + 0x62]
push eax
lea eax, [ebp + 0x38]
push str._04X__04X__04X__04X__04X__04X
push eax
call esi
lea eax, [ebp + 0x38]
push eax
mov edi, ebx
call fcn.00420458
mov bl, byte [ebp - 0x37c]
add esp, 0x30
test bl, bl
mov ecx, 0x436e20
jne 0x4215f1
mov ecx, str._r_nVender_ID____:
push ecx
mov edi, eax
call fcn.00420458
mov edi, eax
mov dword [esp], 0x44c288
call fcn.00420458
test byte [0x44c2b0], 0x10
pop ecx
mov edi, eax
je 0x421727
push 0
call fcn.00420f9f
test eax, eax
pop ecx
je 0x42165b
test bl, bl
mov ecx, str._r_nCPU
jne 0x421631
mov ecx, str._r_nFrequency____:_5u._02u_MHz__with_High_resolution_performance_counter_
push 0x64
pop ebx
xor edx, edx
div ebx
push edx
push eax
push ecx
lea eax, [ebp - 0xd0]
push eax
call esi
lea eax, [ebp - 0xd0]
push eax
call fcn.00420458
mov bl, byte [ebp - 0x37c]
add esp, 0x14
mov edi, eax
push 1
call fcn.00420f9f
test eax, eax
pop ecx
je 0x42169f
test bl, bl
mov ecx, 0x436d44
jne 0x421675
mov ecx, str._r_nFrequency____:_5u._02u_MHz__with_Multi_media_timer_
push 0x64
pop ebx
xor edx, edx
div ebx
push edx
push eax
push ecx
lea eax, [ebp - 0xd0]
push eax
call esi
lea eax, [ebp - 0xd0]
push eax
call fcn.00420458
mov bl, byte [ebp - 0x37c]
add esp, 0x14
mov edi, eax
push 2
call fcn.00420f9f
test eax, eax
pop ecx
je 0x4216e3
test bl, bl
mov ecx, 0x436cdc
jne 0x4216b9
mov ecx, str._r_nFrequency____:_5u._02u_MHz__with_GetTickCount_
push 0x64
pop ebx
xor edx, edx
div ebx
push edx
push eax
push ecx
lea eax, [ebp - 0xd0]
push eax
call esi
lea eax, [ebp - 0xd0]
push eax
call fcn.00420458
mov bl, byte [ebp - 0x37c]
add esp, 0x14
mov edi, eax
push 3
call fcn.00420f9f
test eax, eax
pop ecx
je 0x421727
test bl, bl
mov ecx, 0x436c7c
jne 0x4216fd
mov ecx, str._r_nFrequency____:_5u._02u_MHz__with_Sleep_
push 0x64
pop ebx
xor edx, edx
div ebx
push edx
push eax
push ecx
lea eax, [ebp - 0xd0]
push eax
call esi
lea eax, [ebp - 0xd0]
push eax
call fcn.00420458
mov bl, byte [ebp - 0x37c]
add esp, 0x14
mov edi, eax
test bl, bl
mov eax, 0x436c30
jne 0x421735
mov eax, str._r_nStd.Functions:_08xh____08xh
push dword [0x44c2a4]
push 0
push eax
lea eax, [ebp - 4]
push eax
call esi
lea eax, [ebp - 4]
push eax
call fcn.00420458
mov edi, eax
mov eax, connect
add esp, 0x14
cmp dword [0x44c2a0], eax
jb 0x421789
test bl, bl
mov ecx, 0x436bf0
jne 0x42176d
mov ecx, str._r_nExt.Functions:_08xh____08xh
push dword [0x44c2a0]
push eax
push ecx
lea eax, [ebp - 4]
push eax
call esi
lea eax, [ebp - 4]
push eax
call fcn.00420458
add esp, 0x14
mov edi, eax
test byte [0x44c2b3], 0x10
je 0x4217bd
test bl, bl
mov eax, 0x436bb4
jne 0x4217a0
mov eax, str._r_nHyper_Threading_____:_u
movzx ecx, byte [0x44c29e]
push ecx
push eax
lea eax, [ebp - 4]
push eax
call esi
lea eax, [ebp - 4]
push eax
call fcn.00420458
add esp, 0x10
mov edi, eax
push 0
call fcn.0042003a
cmp dword [0x44c250], 2
pop ecx
jb 0x421f6f
test bl, bl
mov eax, str._r_n_r_n_
jne 0x4217e0
mov eax, str._r_n_r_n_Memory_Cache_
push eax
call fcn.00420458
push 2
mov edi, eax
call fcn.0042003a
pop ecx
xor esi, esi
pop ecx
inc esi
call fcn.004201bf
test eax, eax
je 0x421814
test bl, bl
mov eax, str._r_n
jne 0x42180b
mov eax, str._r_n___Instruction_TLB:_4K_byte_Pages__4_way_set_associative__32_entries
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 2
pop esi
call fcn.004201bf
test eax, eax
je 0x421837
test bl, bl
mov eax, 0x436aac
jne 0x42182e
mov eax, str._r_n___Instruction_TLB:_4M_byte_Pages__fully_associative__2_entries
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 3
pop esi
call fcn.004201bf
test eax, eax
je 0x42185a
test bl, bl
mov eax, 0x436a28
jne 0x421851
mov eax, str._r_n___Data_TLB:_4K_byte_Pages__4_way_set_associative__64_entries
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 4
pop esi
call fcn.004201bf
test eax, eax
je 0x42187d
test bl, bl
mov eax, 0x4369ac
jne 0x421874
mov eax, str._r_n___Data_TLB:_4M_byte_Pages__4_way_set_associative__8_entries
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 6
pop esi
call fcn.004201bf
test eax, eax
je 0x4218a0
test bl, bl
mov eax, str._r_n___8KB
jne 0x421897
mov eax, str._r_n___1st_level_instruction_cache:_8K_bytes__4_way_set_associative__32_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 8
pop esi
call fcn.004201bf
test eax, eax
je 0x4218c3
test bl, bl
mov eax, str._r_n___16KB
jne 0x4218ba
mov eax, str._r_n___1st_level_instruction_cache:_16K_bytes__4_way_set_associative__32_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0xa
pop esi
call fcn.004201bf
test eax, eax
je 0x4218e6
test bl, bl
mov eax, 0x4367e8
jne 0x4218dd
mov eax, str._r_n___1st_level_data_cache:_8K_bytes__2_way_set_associative__32_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0xc
pop esi
call fcn.004201bf
test eax, eax
je 0x421909
test bl, bl
mov eax, 0x436750
jne 0x421900
mov eax, str._r_n___1st_level_data_cache:_16K_bytes__4_way_set_associative__32_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x22
pop esi
call fcn.004201bf
test eax, eax
je 0x42192c
test bl, bl
mov eax, str._r_n___512K_L3
jne 0x421923
mov eax, str._r_n___3rd_level_cache:_512K_bytes__4_way_set_associative__sectored__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x23
pop esi
call fcn.004201bf
test eax, eax
je 0x42194f
test bl, bl
mov eax, str._r_n___1MB_L3
jne 0x421946
mov eax, str._r_n___3rd_level_cache:_1M_bytes__8_way_set_associative__sectored__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x25
pop esi
call fcn.004201bf
test eax, eax
je 0x421972
test bl, bl
mov eax, str._r_n___2MB_L3
jne 0x421969
mov eax, str._r_n___3rd_level_cache:_2M_bytes__8_way_set_associative__sectored__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x29
pop esi
call fcn.004201bf
test eax, eax
je 0x421995
test bl, bl
mov eax, str._r_n___4MB_L3
jne 0x42198c
mov eax, str._r_n___3rd_level_cache:_4M_bytes__8_way_set_associative__sectored__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x2c
pop esi
call fcn.004201bf
test eax, eax
je 0x4219b8
test bl, bl
mov eax, str._r_n___32KB
jne 0x4219af
mov eax, str._r_n___1st_level_data_cache:_32K_bytes__8_way_set_associative__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x30
pop esi
call fcn.004201bf
test eax, eax
je 0x4219db
test bl, bl
mov eax, 0x4363d8
jne 0x4219d2
mov eax, str._r_n___1st_level_instruction_cache:_32K_bytes__8_way_set_associative__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x39
pop esi
call fcn.004201bf
test eax, eax
je 0x4219fe
test bl, bl
mov eax, str._r_n___128KB_L2
jne 0x4219f5
mov eax, str._r_n___2nd_level_cache:_128K_bytes__4_way_set_associative__sectored__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x3b
pop esi
call fcn.004201bf
test eax, eax
je 0x421a21
test bl, bl
mov eax, 0x436290
jne 0x421a18
mov eax, str._r_n___2nd_level_cache:_128KB__2_way_set_associative__sectored_cache__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x3c
pop esi
call fcn.004201bf
test eax, eax
je 0x421a44
test bl, bl
mov eax, str._r_n___256KB_L2
jne 0x421a3b
mov eax, str._r_n___2nd_level_cache:_256K_bytes__4_way_set_associative__sectored__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x40
pop esi
call fcn.004201bf
test eax, eax
je 0x421a67
test bl, bl
mov eax, str._r_n___L2
jne 0x421a5e
mov eax, str._r_n___No_2nd_level_cache_or__if_processor_contains_a_valid_2nd_level_cache__no3rd_level_cache
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x41
pop esi
call fcn.004201bf
test eax, eax
je 0x421a8a
test bl, bl
mov eax, 0x4360b0
jne 0x421a81
mov eax, str._r_n___2nd_level_cache:_128K_bytes__4_way_set_associative__32_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x42
pop esi
call fcn.004201bf
test eax, eax
je 0x421aad
test bl, bl
mov eax, 0x436018
jne 0x421aa4
mov eax, str._r_n___2nd_level_cache:_256K_bytes__4_way_set_associative__32_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x43
pop esi
call fcn.004201bf
test eax, eax
je 0x421ad0
test bl, bl
mov eax, str._r_n___512KB_L2
jne 0x421ac7
mov eax, str._r_n___2nd_level_cache:_512K_bytes__4_way_set_associative__32_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x44
pop esi
call fcn.004201bf
test eax, eax
je 0x421af3
test bl, bl
mov eax, str._r_n___1MB_L2
jne 0x421aea
mov eax, str._r_n___2nd_level_cache:_1M_bytes__4_way_set_associative__32_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x45
pop esi
call fcn.004201bf
test eax, eax
je 0x421b16
test bl, bl
mov eax, str._r_n___2M_L2
jne 0x421b0d
mov eax, str._r_n___2nd_level_cache:_2M_bytes__4_way_set_associative__32_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x50
pop esi
call fcn.004201bf
test eax, eax
je 0x421b39
test bl, bl
mov eax, 0x435dc8
jne 0x421b30
mov eax, str._r_n___Instruction_TLB:_4K__2M_or_4M_pages__fully_associative__64_entries
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x51
pop esi
call fcn.004201bf
test eax, eax
je 0x421b5c
test bl, bl
mov eax, 0x435d38
jne 0x421b53
mov eax, str._r_n___Instruction_TLB:_4K__2M_or_4M_pages__fully_associative__128_entries
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x52
pop esi
call fcn.004201bf
test eax, eax
je 0x421b7f
test bl, bl
mov eax, 0x435ca0
jne 0x421b76
mov eax, str._r_n___Instruction_TLB:_4K__2M_or_4M_pages__fully_associative__256_entries
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x5b
pop esi
call fcn.004201bf
test eax, eax
je 0x421ba2
test bl, bl
mov eax, 0x435c0c
jne 0x421b99
mov eax, str._r_n___Data_TLB:_4K_or_4M_pages__fully_associative__64_entries
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x5c
pop esi
call fcn.004201bf
test eax, eax
je 0x421bc5
test bl, bl
mov eax, 0x435b8c
jne 0x421bbc
mov eax, str._r_n___Data_TLB:_4K_or_4M_pages__fully_associative__128_entries
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x5d
pop esi
call fcn.004201bf
test eax, eax
je 0x421be8
test bl, bl
mov eax, 0x435b0c
jne 0x421bdf
mov eax, str._r_n___Data_TLB:_4K_or_4M_pages__fully_associative__256_entries
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x60
pop esi
call fcn.004201bf
test eax, eax
je 0x421c0b
test bl, bl
mov eax, str._r_n___16KB_L1
jne 0x421c02
mov eax, str._r_n___1st_level_data_cache:_16_KB__8_way_set_associative__sectored_cache__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x66
pop esi
call fcn.004201bf
test eax, eax
je 0x421c2e
test bl, bl
mov eax, str._r_n___8KB_L1
jne 0x421c25
mov eax, str._r_n___1st_level_data_cache:_8K_bytes__4_way_set_associative__sectored__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x67
pop esi
call fcn.004201bf
test eax, eax
je 0x421c51
test bl, bl
mov eax, 0x435928
jne 0x421c48
mov eax, str._r_n___1st_level_data_cache:_16K_bytes__4_way_set_associative__sectored__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x68
pop esi
call fcn.004201bf
test eax, eax
je 0x421c74
test bl, bl
mov eax, str._r_n___32KB_L1
jne 0x421c6b
mov eax, str._r_n___1st_level_data_cache:_32K_bytes__4_way_set_associative__sectored__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x70
pop esi
call fcn.004201bf
test eax, eax
je 0x421c97
test bl, bl
mov eax, 0x4357d8
jne 0x421c8e
mov eax, str._r_n___Trace_cache:_12K_uops__8_way_set_associative
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x71
pop esi
call fcn.004201bf
test eax, eax
je 0x421cba
test bl, bl
mov eax, 0x435764
jne 0x421cb1
mov eax, str._r_n___Trace_cache:_16K_uops__8_way_set_associative
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x72
pop esi
call fcn.004201bf
test eax, eax
je 0x421cdd
test bl, bl
mov eax, 0x4356f0
jne 0x421cd4
mov eax, str._r_n___Trace_cache:_32K_uops__8_way_set_associative
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x78
pop esi
call fcn.004201bf
test eax, eax
je 0x421d00
test bl, bl
mov eax, 0x435678
jne 0x421cf7
mov eax, str._r_n___2nd_level_cache:_1_MB__4_way_set_associative__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x79
pop esi
call fcn.004201bf
test eax, eax
je 0x421d23
test bl, bl
mov eax, 0x4355e0
jne 0x421d1a
mov eax, str._r_n___2nd_level_cache:_128K_bytes__8_way_set_associative__sectored_cache__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x7a
pop esi
call fcn.004201bf
test eax, eax
je 0x421d46
test bl, bl
mov eax, 0x435530
jne 0x421d3d
mov eax, str._r_n___2nd_level_cache:_256K_bytes__8_way_set_associative__sectored_cache__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x7b
pop esi
call fcn.004201bf
test eax, eax
je 0x421d69
test bl, bl
mov eax, 0x435480
jne 0x421d60
mov eax, str._r_n___2nd_level_cache:_512K_bytes__8_way_set_associative__sectored_cache__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x7c
pop esi
call fcn.004201bf
test eax, eax
je 0x421d8c
test bl, bl
mov eax, 0x4353d0
jne 0x421d83
mov eax, str._r_n___2nd_level_cache:_1M_bytes__8_way_set_associative__sectored_cache__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x7d
pop esi
call fcn.004201bf
test eax, eax
je 0x421daf
test bl, bl
mov eax, str._r_n___2MB_L2
jne 0x421da6
mov eax, str._r_n___2nd_level_cache:_2_MB__8_way_set_associative__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0x7f
pop esi
call fcn.004201bf
test eax, eax
je 0x421dd2
test bl, bl
mov eax, 0x435298
jne 0x421dc9
mov eax, str._r_n___2nd_level_cache:_512_KB__2_way_set_associative__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
mov esi, 0x80
call fcn.004201bf
test eax, eax
je 0x421df7
test bl, bl
mov eax, str._r_n___L1
jne 0x421dee
mov eax, str._r_n___1st_level_cache:_4_way_associative__16byte_line
push eax
call fcn.00420458
pop ecx
mov edi, eax
mov esi, 0x82
call fcn.004201bf
test eax, eax
je 0x421e1c
test bl, bl
mov eax, 0x435198
jne 0x421e13
mov eax, str._r_n___2nd_level_cache:_256K_bytes__8_way_set_associative__32_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
mov esi, 0x83
call fcn.004201bf
test eax, eax
je 0x421e41
test bl, bl
mov eax, 0x4350f8
jne 0x421e38
mov eax, str._r_n___2nd_level_cache:_512K_bytes__8_way_set_associative__32_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
mov esi, 0x84
call fcn.004201bf
test eax, eax
je 0x421e66
test bl, bl
mov eax, 0x435060
jne 0x421e5d
mov eax, str._r_n___2nd_level_cache:_1M_bytes__8_way_set_associative__32_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
mov esi, 0x85
call fcn.004201bf
test eax, eax
je 0x421e8b
test bl, bl
mov eax, 0x434fc8
jne 0x421e82
mov eax, str._r_n___2nd_level_cache:_2M_bytes__8_way_set_associative__32_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
mov esi, 0x86
call fcn.004201bf
test eax, eax
je 0x421eb0
test bl, bl
mov eax, 0x434f30
jne 0x421ea7
mov eax, str._r_n___2nd_level_cache:_512K_bytes__4_way_set_associative__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
mov esi, 0x87
call fcn.004201bf
test eax, eax
je 0x421ed5
test bl, bl
mov eax, 0x434ea0
jne 0x421ecc
mov eax, str._r_n___2nd_level_cache:_1M_bytes__8_way_set_associative__64_byte_line_size
push eax
call fcn.00420458
pop ecx
mov edi, eax
mov esi, 0xb0
call fcn.004201bf
test eax, eax
je 0x421efa
test bl, bl
mov eax, 0x434e10
jne 0x421ef1
mov eax, str._r_n___Instruction_TLB:_4K_byte_Pages__4_way_set_associative__128_entries
push eax
call fcn.00420458
pop ecx
mov edi, eax
mov esi, 0xb3
call fcn.004201bf
test eax, eax
je 0x421f1f
test bl, bl
mov eax, 0x434d84
jne 0x421f16
mov eax, str._r_n___Data_TLB:_4K_byte_Pages__4_way_set_associative__128_entries
push eax
call fcn.00420458
pop ecx
mov edi, eax
mov esi, 0xf0
call fcn.004201bf
test eax, eax
je 0x421f44
test bl, bl
mov eax, str._r_n___64
jne 0x421f3b
mov eax, str._r_n___64_byte_Prefetching
push eax
call fcn.00420458
pop ecx
mov edi, eax
mov esi, 0xf1
call fcn.004201bf
test eax, eax
je 0x421f69
test bl, bl
mov eax, str._r_n___128
jne 0x421f60
mov eax, str._r_n___128_byte_Prefetching
push eax
call fcn.00420458
pop ecx
mov edi, eax
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
cmp byte [0x44c241], 4
jne 0x422193
mov eax, CreateStatusWindowA
cmp dword [0x44c2a0], eax
jb 0x422193
push eax
call fcn.0042003a
test bl, bl
pop ecx
mov eax, str._r_n_r_n_TLB
jne 0x421fa2
mov eax, str._r_n_r_n_TLB_Information__r_n__Data_TLB_______________________________Instruction_TLB_
push eax
call fcn.00420458
mov edi, eax
movzx eax, byte [0x44c24f]
push eax
lea eax, [ebp - 0x20]
push str._Associativity:__02Xh
push eax
call esi
movzx eax, byte [0x44c24d]
push eax
lea eax, [ebp - 0x20]
push eax
mov ebx, str._r_n__40s_Associativity:__02Xh
lea eax, [ebp - 0xbc]
push ebx
push eax
call esi
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
add esp, 0x24
cmp byte [ebp - 0x37c], 0
mov edi, eax
mov eax, 0x434bf4
jne 0x421ffc
mov eax, str._Entry_______:__u
movzx ecx, byte [0x44c24e]
push ecx
push eax
lea eax, [ebp - 0x20]
push eax
call esi
add esp, 0xc
cmp byte [ebp - 0x37c], 0
mov eax, str._r_n__40s_
jne 0x422021
mov eax, str._r_n__40s_Entry_______:__u
mov ecx, dword [0x44c24c]
and ecx, 0xff
push ecx
lea ecx, [ebp - 0x20]
push ecx
push eax
lea eax, [ebp - 0xbc]
push eax
call esi
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
push 0x434b90
mov edi, eax
lea eax, [ebp - 0x20]
push str._r_n__40s_L1
push eax
call esi
add esp, 0x20
cmp byte [ebp - 0x37c], 0
mov eax, str._r_n_L1
jne 0x422070
mov eax, str._r_n_L1_Data_Cache___________________________L1_Instruction_Cache_
push eax
call fcn.00420458
cmp byte [ebp - 0x37c], 0
mov edi, eax
pop ecx
mov eax, 0x434ad4
jne 0x42208c
mov eax, str._Size_________:__dKB
movzx ecx, byte [0x44c24b]
push ecx
push eax
lea eax, [ebp - 0x20]
push eax
call esi
add esp, 0xc
cmp byte [ebp - 0x37c], 0
mov eax, str._r_n__40s
jne 0x4220b1
mov eax, str._r_n__40s_Size_________:__uKB
movzx ecx, byte [0x44c247]
push ecx
lea ecx, [ebp - 0x20]
push ecx
push eax
lea eax, [ebp - 0xbc]
push eax
call esi
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
mov edi, eax
movzx eax, byte [0x44c24a]
push eax
lea eax, [ebp - 0x20]
push str._Associativity:__02Xh
push eax
call esi
movzx eax, byte [0x44c246]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0xbc]
push ebx
push eax
call esi
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
mov edi, eax
movzx eax, byte [0x44c249]
push eax
lea eax, [ebp - 0x20]
push str._Lines_per_Tag:__u
push eax
call esi
movzx eax, byte [0x44c245]
add esp, 0x40
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0xbc]
push str._r_n__40s_Lines_per_Tag:__u
push eax
call esi
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
mov edi, eax
mov eax, dword [0x44c248]
mov ebx, 0xff
and eax, ebx
push eax
lea eax, [ebp - 0x20]
push str._Line_size____:__ubytes
push eax
call esi
mov eax, dword [0x44c244]
and eax, ebx
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0xbc]
push str._r_n__40s_Line_size____:__ubytes
push eax
call esi
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
mov bl, byte [ebp - 0x37c]
add esp, 0x34
mov edi, eax
test bl, bl
mov eax, str._r_n_r_n_CPUID
jne 0x4221a1
mov eax, str._r_n_r_n_CPUID_Standard_Feature_Flag____________CPUID_Additional_Feature_Flag_
push eax
call fcn.00420458
pop ecx
mov edi, eax
xor ebx, ebx
mov eax, ebx
shl eax, 2
mov ecx, dword [eax + 0x448040]
cmp byte [ecx], 0
je 0x42222e
cmp byte [ebp - 0x37c], 0
je 0x4221cd
mov edx, dword [eax + 0x448240]
jmp 0x4221d3
mov edx, dword [eax + 0x4482c0]
cmp byte [ebp - 0x37c], 0
mov dword [ebp - 0x384], edx
je 0x4221e6
mov eax, ecx
jmp 0x4221ec
mov eax, dword [eax + 0x4480c0]
mov edx, dword [0x44c2a8]
mov ecx, ebx
shr edx, cl
and edx, 1
push edx
push dword [ebp - 0x384]
mov edx, dword [0x44c2b0]
shr edx, cl
push ebx
and edx, 1
push edx
push eax
push ebx
lea eax, [ebp - 0xbc]
push str._r_n_2d___32s:_u___2d___32s:_u
push eax
call esi
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
add esp, 0x24
mov edi, eax
inc ebx
cmp ebx, 0x20
jl 0x4221ac
cmp dword [0x44c2a0], 0x80000001
jbe 0x42241b
mov al, byte [0x44c241]
cmp al, 2
je 0x4223af
cmp al, 5
je 0x4223af
cmp al, 4
jne 0x4222d2
cmp byte [ebp - 0x37c], 0
mov eax, 0x434944
jne 0x422274
mov eax, str._r_n_r_n_Extend_Feature_Flag_AMD__
push eax
call fcn.00420458
pop ecx
mov edi, eax
xor ebx, ebx
cmp byte [ebp - 0x37c], 0
je 0x422291
mov eax, dword [ebx*4 + 0x448340]
jmp 0x422298
mov eax, dword [ebx*4 + 0x4483c0]
mov edx, dword [0x44c2ac]
mov ecx, ebx
shr edx, cl
and edx, 1
push edx
push eax
push ebx
lea eax, [ebp - 0xbc]
push str._r_n_2d___32s:_u
push eax
call esi
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
add esp, 0x18
inc ebx
cmp ebx, 0x20
mov edi, eax
jl 0x42227f
jmp 0x42241b
cmp al, 1
jne 0x422347
cmp byte [ebp - 0x37c], 0
mov eax, 0x4348f0
jne 0x4222e9
mov eax, str._r_n_r_n_Extend_Feature_Flag_Intel__
push eax
call fcn.00420458
pop ecx
mov edi, eax
xor ebx, ebx
cmp byte [ebp - 0x37c], 0
je 0x422306
mov eax, dword [ebx*4 + 0x448140]
jmp 0x42230d
mov eax, dword [ebx*4 + 0x4481c0]
mov edx, dword [0x44c298]
mov ecx, ebx
shr edx, cl
and edx, 1
push edx
push eax
push ebx
lea eax, [ebp - 0xbc]
push str._r_n_2d___32s:_u
push eax
call esi
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
add esp, 0x18
inc ebx
cmp ebx, 0x20
mov edi, eax
jl 0x4222f4
jmp 0x42241b
cmp byte [ebp - 0x37c], 0
mov eax, 0x4348b0
jne 0x42235a
mov eax, str._r_n_r_n_Extend_Feature_Flag_
push eax
call fcn.00420458
pop ecx
mov edi, eax
xor ebx, ebx
cmp byte [ebp - 0x37c], 0
mov eax, 0x43325c
jne 0x422378
mov eax, 0x433254
mov edx, dword [0x44c2ac]
mov ecx, ebx
shr edx, cl
and edx, 1
push edx
push eax
push ebx
lea eax, [ebp - 0xbc]
push str._r_n_2d___32s:_u
push eax
call esi
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
add esp, 0x18
inc ebx
cmp ebx, 0x20
mov edi, eax
jl 0x422365
jmp 0x42241b
cmp byte [ebp - 0x37c], 0
mov eax, 0x434870
jne 0x4223c2
mov eax, str._r_n_r_n_Extend_Feature_Flag_Cyrix__
push eax
call fcn.00420458
pop ecx
mov edi, eax
xor ebx, ebx
cmp byte [ebp - 0x37c], 0
je 0x4223df
mov eax, dword [ebx*4 + 0x448440]
jmp 0x4223e6
mov eax, dword [ebx*4 + 0x4484c0]
mov edx, dword [0x44c2ac]
mov ecx, ebx
shr edx, cl
and edx, 1
push edx
push eax
push ebx
lea eax, [ebp - 0xbc]
push str._r_n_2d___32s:_u
push eax
call esi
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
add esp, 0x18
inc ebx
cmp ebx, 0x20
mov edi, eax
jl 0x4223cd
mov bl, byte [ebp - 0x37c]
test bl, bl
mov byte [ebp + 0x7f], 0
mov eax, 0x434808
jne 0x422433
mov eax, str._r_n_r_n_Operating_System__r_nOS_version___:Microsoft_Windows
push eax
call fcn.00420458
mov ebx, dword [sym.imp.KERNEL32.dll_GetVersionExA]
mov dword [ebp - 0x380], eax
pop ecx
lea eax, [ebp - 0x100]
push eax
mov dword [ebp - 0x100], 0x94
call ebx
cmp dword [ebp - 0xf0], 2
mov edx, dword [ebp - 0xf4]
je 0x422492
mov eax, edx
shr eax, 0x10
test ax, ax
je 0x42248e
movzx ecx, ax
mov eax, ecx
shr eax, 8
and ecx, 0xff
mov dword [ebp - 0xfc], eax
mov dword [ebp - 0xf8], ecx
jmp 0x422498
mov byte [ebp + 0x7f], 1
mov eax, dword [ebp - 0xfc]
mov ecx, dword [ebp - 0xf0]
imul eax, eax, 0x64
add eax, dword [ebp - 0xf8]
and edx, 0xffff
sub ecx, 0
mov dword [ebp - 0x384], eax
mov dword [ebp - 0xf4], edx
je 0x42291c
dec ecx
je 0x422756
dec ecx
je 0x4224e8
cmp byte [ebp - 0x37c], 0
mov eax, 0x4347c0
jne 0x422919
mov eax, 0x433254
jmp 0x422919
cmp ax, 0x1f4
jne 0x4225be
mov eax, edx
sub eax, 0x7ef
je 0x422541
sub eax, 0x61
je 0x422535
cmp edx, 0x893
jae 0x422529
cmp byte [ebp - 0x37c], 0
je 0x42251d
mov dword [ebp - 0x384], str.2000
jmp 0x42255e
mov dword [ebp - 0x384], str.2000_beta
jmp 0x42255e
mov dword [ebp - 0x384], 0x4347a4
jmp 0x42255e
mov dword [ebp - 0x384], str.2000_RC2_
jmp 0x42255e
cmp byte [ebp - 0x37c], 0
mov dword [ebp - 0x384], str.2000_
jne 0x42255e
mov dword [ebp - 0x384], str.2000_beta_3_
mov edi, 0x9c
push edi
lea eax, [ebp - 0x6c]
push 0
push eax
call fcn.00426360
add esp, 0xc
lea eax, [ebp - 0x6c]
push eax
mov dword [ebp - 0x6c], edi
call ebx
cmp byte [ebp + 0x2e], 1
jne 0x422590
mov dword [ebp - 0x388], str._Professsional
jmp 0x42274b
test byte [ebp + 0x2c], 0x80
je 0x4225a5
mov dword [ebp - 0x388], str._Datascenter_Server
jmp 0x42274b
test byte [ebp + 0x2c], 2
je 0x42273b
mov dword [ebp - 0x388], str._Advanced_Server
jmp 0x42274b
cmp ax, 0x1f5
jne 0x422675
mov eax, edx
sub eax, 0x8f8
je 0x42262a
sub eax, 0xa6
je 0x42261e
sub eax, 0x2b
je 0x422612
cmp edx, 0xa28
jae 0x422606
cmp byte [ebp - 0x37c], 0
je 0x4225fa
mov dword [ebp - 0x384], 0x43473c
jmp 0x422634
mov dword [ebp - 0x384], str.XP_beta
jmp 0x422634
mov dword [ebp - 0x384], 0x434730
jmp 0x422634
mov dword [ebp - 0x384], str.XP_RC1_
jmp 0x422634
mov dword [ebp - 0x384], 0x434720
jmp 0x422634
mov dword [ebp - 0x384], 0x434718
mov edi, 0x9c
push edi
lea eax, [ebp - 0x6c]
push 0
push eax
call fcn.00426360
add esp, 0xc
lea eax, [ebp - 0x6c]
push eax
mov dword [ebp - 0x6c], edi
call ebx
test byte [ebp + 0x2d], 2
je 0x422666
mov dword [ebp - 0x388], str._Home_Edition
jmp 0x42274b
mov dword [ebp - 0x388], str._Professional
jmp 0x42274b
cmp ax, 0x1f6
jne 0x4226ed
cmp edx, 0xe4f
mov dword [ebp - 0x384], 0x43c616
jne 0x422697
mov dword [ebp - 0x384], str._RC1_
mov edi, 0x9c
push edi
lea eax, [ebp - 0x6c]
push 0
push eax
call fcn.00426360
add esp, 0xc
lea eax, [ebp - 0x6c]
push eax
mov dword [ebp - 0x6c], edi
call ebx
test byte [ebp + 0x2c], 0x80
je 0x4226c9
mov dword [ebp - 0x388], str._Datascenter_Server_2003
jmp 0x42274b
test byte [ebp + 0x2c], 2
je 0x4226db
mov dword [ebp - 0x388], str._Enterprise_Server_2003
jmp 0x42274b
cmp byte [ebp + 0x2e], 3
jne 0x42274b
mov dword [ebp - 0x388], str._Standard_Server_2003
jmp 0x42274b
mov edi, 0x9c
push edi
lea eax, [ebp - 0x6c]
push 0
push eax
call fcn.00426360
add esp, 0xc
lea eax, [ebp - 0x6c]
push eax
mov dword [ebp - 0x6c], edi
call ebx
cmp word [ebp - 0x384], 0x258
mov dword [ebp - 0x384], str.Longhorn
je 0x422729
mov dword [ebp - 0x384], 0x434694
cmp byte [ebp + 0x2e], 1
jne 0x42273b
mov dword [ebp - 0x388], str._Workstation
jmp 0x42274b
cmp byte [ebp + 0x2e], 3
jne 0x42274b
mov dword [ebp - 0x388], str._Server
push dword [ebp - 0x384]
jmp 0x422921
cmp ax, 0x19a
jae 0x4227f0
cmp edx, 0x457
je 0x4227e6
cmp edx, 0x4bb
jbe 0x422794
cmp edx, 0x4bd
jbe 0x42278a
cmp edx, 0x4be
jne 0x422794
mov eax, str.95_OSR2.1_2.5
jmp 0x422919
mov eax, str.95_OSR2.1
jmp 0x422919
cmp byte [ebp + 0x7f], 0
je 0x4227b7
cmp byte [ebp - 0x37c], 0
je 0x4227ad
mov eax, str.95__XP
jmp 0x422919
mov eax, str.95__Windows_XP_
jmp 0x422919
cmp edx, 0x3b6
jae 0x4227dc
cmp byte [ebp - 0x37c], 0
je 0x4227d2
mov eax, 0x434634
jmp 0x422919
mov eax, str.95_beta
jmp 0x422919
mov eax, 0x434628
jmp 0x422919
mov eax, str.95_OSR2
jmp 0x422919
cmp ax, 0x1ea
jae 0x422869
cmp edx, 0x547
je 0x42285f
mov eax, 0x7ce
cmp edx, eax
je 0x422855
jae 0x422826
cmp byte [ebp - 0x37c], 0
je 0x42281c
mov eax, 0x434618
jmp 0x422919
mov eax, str.98_beta
jmp 0x422919
cmp edx, 0x8ae
jae 0x42284b
cmp byte [ebp - 0x37c], 0
je 0x422841
mov eax, str.98_SE
jmp 0x422919
mov eax, str.98SE_beta
jmp 0x422919
mov eax, str.98_Second_Edition
jmp 0x422919
mov eax, 0x4345e4
jmp 0x422919
mov eax, str.98_Developer_Release
jmp 0x422919
cmp ax, 0x1f4
jae 0x422914
mov eax, 0x9c3
cmp edx, eax
mov ecx, 0x940
ja 0x4228bb
je 0x4228b4
mov eax, edx
sub eax, ecx
je 0x4228ad
sub eax, 0x2a
je 0x4228a6
sub eax, 9
je 0x42289f
sub eax, 0x1c
jne 0x4228ce
mov eax, 0x4345bc
jmp 0x422919
mov eax, 0x4345b4
jmp 0x422919
mov eax, 0x4345a8
jmp 0x422919
mov eax, 0x4345a0
jmp 0x422919
mov eax, 0x434598
jmp 0x422919
mov eax, edx
sub eax, 0x9d1
je 0x42290d
sub eax, 0xc
je 0x422906
sub eax, 0xa
je 0x4228ff
cmp edx, ecx
jae 0x4228d9
mov eax, str.Me_Developer_Release
jmp 0x422919
cmp edx, 0xbb8
jae 0x4228f8
cmp byte [ebp - 0x37c], 0
je 0x4228f1
mov eax, 0x434578
jmp 0x422919
mov eax, str.Me_beta
jmp 0x422919
mov eax, str.Millennium_Edition
jmp 0x422919
mov eax, str.Me_RC2
jmp 0x422919
mov eax, str.Me_RC0_1
jmp 0x422919
mov eax, str.Me_Post
jmp 0x422919
mov eax, 0x43c616
push eax
jmp 0x422921
push str.___Win32s_
mov edi, dword [ebp - 0x380]
call fcn.00420458
cmp dword [ebp - 0xf0], 2
mov edi, eax
pop ecx
mov eax, 0x43ce3c
je 0x422942
mov eax, 0x43c616
lea ecx, [ebp - 0xec]
push ecx
push eax
push dword [ebp - 0xf4]
lea eax, [ebp - 0x378]
push dword [ebp - 0xf8]
push dword [ebp - 0xfc]
push dword [ebp - 0x388]
push str._s_ver._d._02d._d_s_s
push eax
call esi
lea eax, [ebp - 0x378]
push eax
call fcn.00420458
add esp, 0x24
mov edi, eax
push 0x43
mov dword [ebp - 0x380], edi
call dword [sym.imp.USER32.dll_GetSystemMetrics]
dec eax
je 0x4229aa
dec eax
jne 0x4229ca
cmp byte [ebp - 0x37c], 0
mov eax, 0x4344ec
jne 0x4229bd
mov eax, str.__Fail_safe_with_network_boot_
jmp 0x4229bd
cmp byte [ebp - 0x37c], 0
mov eax, 0x4344bc
jne 0x4229bd
mov eax, str.__Fail_safe_boot_
push eax
call fcn.00420458
pop ecx
mov dword [ebp - 0x380], eax
push str.SoftwareMicrosoftWindowsCurrentVersion
mov ebx, CreateStatusWindowA
push ebx
call fcn.00420572
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0x384], eax
je 0x422a3a
push str.Plus__VersionNumber
push eax
call fcn.00420595
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0x388], eax
je 0x422a2e
mov edi, dword [ebp - 0x380]
push str._r_nPlus_version_:
call fcn.00420458
push dword [ebp - 0x388]
mov edi, eax
call fcn.00420458
push dword [ebp - 0x388]
mov dword [ebp - 0x380], eax
call fcn.0042765d
add esp, 0xc
push dword [ebp - 0x384]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov edi, str.SoftwareMicrosoftInternet_Explorer
push edi
push ebx
call fcn.00420572
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0x384], eax
je 0x422a71
push str.Version
push eax
call fcn.00420595
pop ecx
pop ecx
push dword [ebp - 0x384]
mov dword [ebp - 0x388], eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [ebp - 0x388], 0
je 0x422abf
cmp byte [ebp - 0x37c], 0
mov eax, str._r_nIE
jne 0x422a8d
mov eax, str._r_nIE_version___:ver.
mov edi, dword [ebp - 0x380]
push eax
call fcn.00420458
push dword [ebp - 0x388]
mov edi, eax
call fcn.00420458
push dword [ebp - 0x388]
mov dword [ebp - 0x380], eax
call fcn.0042765d
add esp, 0xc
jmp 0x422c6b
push edi
push ebx
call fcn.00420572
mov edi, eax
test edi, edi
pop ecx
pop ecx
mov dword [ebp - 0x384], edi
je 0x422c6b
push str.Build
push edi
call fcn.00420595
mov ebx, eax
test ebx, ebx
pop ecx
pop ecx
je 0x422bd0
cmp byte [ebp - 0x37c], 0
mov eax, str._r_nIE
jne 0x422b02
mov eax, str._r_nIE_version___:ver.
mov edi, dword [ebp - 0x380]
push eax
call fcn.00420458
mov edi, dword [sym.imp.KERNEL32.dll_lstrcmpA]
mov dword [esp], 0x433220
push ebx
mov dword [ebp - 0x380], eax
call edi
test eax, eax
je 0x422b9f
push str.1155
push ebx
call edi
test eax, eax
jne 0x422b3e
push 0x434420
jmp 0x422bbe
push str.1158
push ebx
call edi
test eax, eax
jne 0x422b51
push str.3.0_for_OSR2
jmp 0x422bbe
push str.1215
push ebx
call edi
test eax, eax
jne 0x422b64
push str.3.01
jmp 0x422bbe
push str.1300
push ebx
call edi
test eax, eax
jne 0x422b77
push str.3.02_3.02a
jmp 0x422bbe
push ebx
call fcn.0042765d
mov dword [esp], str.IVer
push dword [ebp - 0x384]
call fcn.00420595
pop ecx
pop ecx
mov ebx, eax
push 0x4331f4
push ebx
call edi
test eax, eax
jne 0x422ba6
push 0x4343f8
jmp 0x422bbe
push 0x4331f0
push ebx
call edi
test eax, eax
jne 0x422bb9
push str.3.0x
jmp 0x422bbe
push str.1.0_2.0_3.0x
mov edi, dword [ebp - 0x380]
call fcn.00420458
pop ecx
push ebx
jmp 0x422c53
push str.IVer
push edi
call fcn.00420595
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0x388], eax
je 0x422c5f
cmp byte [ebp - 0x37c], 0
mov eax, 0x4343c8
jne 0x422bfa
mov eax, str._r_nIE_version___:ver.1.0
mov edi, dword [ebp - 0x380]
push eax
call fcn.00420458
mov edi, dword [sym.imp.KERNEL32.dll_lstrcmpA]
mov dword [esp], 0x4343ac
push dword [ebp - 0x388]
mov ebx, eax
call edi
test eax, eax
jne 0x422c28
push str._for_Windows_95
jmp 0x422c45
push 0x434398
push dword [ebp - 0x388]
call edi
test eax, eax
jne 0x422c40
push str._for_Windows_NT_4.0
jmp 0x422c45
push str._2.0_3.0
mov edi, ebx
call fcn.00420458
pop ecx
push dword [ebp - 0x388]
mov dword [ebp - 0x380], eax
call fcn.0042765d
pop ecx
push dword [ebp - 0x384]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call fcn.00420620
movzx eax, ax
push 0x64
pop ecx
cdq
idiv ecx
push edx
push eax
lea eax, [ebp - 0xbc]
push str._r_nComctl32.dll_:ver._u._02u
push eax
call esi
mov edi, dword [ebp - 0x380]
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
mov edi, eax
add esp, 0x14
lea eax, [ebp + 0x38]
push eax
mov dword [ebp + 0x38], 0x20
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatus]
cmp byte [ebp - 0x37c], 0
mov eax, 0x434348
jne 0x422cc4
mov eax, str._r_nPhysical_Mem.:
push eax
call fcn.00420458
cmp byte [ebp - 0x37c], 0
pop ecx
mov ebx, eax
mov edi, str._14s___14s
jne 0x422ce0
mov edi, str._14s___14s_bytes___5u__5uMB_
mov eax, dword [ebp + 0x40]
shr eax, 0x14
push eax
mov eax, dword [ebp + 0x44]
shr eax, 0x14
push eax
push dword [ebp + 0x40]
call fcn.004204c6
pop ecx
push eax
push dword [ebp + 0x44]
call fcn.004204c6
pop ecx
push eax
lea eax, [ebp - 0xbc]
push edi
push eax
call esi
lea eax, [ebp - 0xbc]
push eax
mov edi, ebx
call fcn.00420458
mov bl, byte [ebp - 0x37c]
add esp, 0x1c
test bl, bl
mov ecx, 0x4342e0
jne 0x422d31
mov ecx, str._r_nPage_File____:
push ecx
mov edi, eax
call fcn.00420458
test bl, bl
pop ecx
mov dword [ebp - 0x380], eax
mov edi, str._14s___14s
jne 0x422d4e
mov edi, str._14s___14s_bytes___5u__5uMB_
mov eax, dword [ebp + 0x48]
shr eax, 0x14
push eax
mov eax, dword [ebp + 0x4c]
shr eax, 0x14
push eax
push dword [ebp + 0x48]
call fcn.004204c6
pop ecx
push eax
push dword [ebp + 0x4c]
call fcn.004204c6
pop ecx
push eax
lea eax, [ebp - 0xbc]
push edi
push eax
call esi
mov edi, dword [ebp - 0x380]
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
add esp, 0x1c
test bl, bl
mov ecx, 0x4342b8
jne 0x422d9d
mov ecx, str._r_nVirtual_Mem._:
push ecx
mov edi, eax
call fcn.00420458
test bl, bl
pop ecx
mov edi, eax
mov ebx, str._14s___14s
jne 0x422db6
mov ebx, str._14s___14s_bytes___5u__5uMB_
mov eax, dword [ebp + 0x50]
shr eax, 0x14
push eax
mov eax, dword [ebp + 0x54]
shr eax, 0x14
push eax
push dword [ebp + 0x50]
call fcn.004204c6
pop ecx
push eax
push dword [ebp + 0x54]
call fcn.004204c6
pop ecx
push eax
lea eax, [ebp - 0xbc]
push ebx
push eax
call esi
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
add esp, 0x1c
cmp byte [ebp - 0x37c], 0
mov ecx, 0x434290
jne 0x422e04
mov ecx, str._r_nMemory_Used__:
push ecx
mov edi, eax
call fcn.00420458
push dword [ebp + 0x3c]
mov edi, eax
lea eax, [ebp - 0xbc]
push str._3d__
push eax
call esi
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
add esp, 0x14
xor ebx, ebx
push ebx
mov dword [ebp - 0x380], eax
call dword [sym.imp.USER32.dll_GetDC]
push 0xc
push eax
mov dword [ebp - 0x388], eax
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
mov edi, dword [sym.imp.USER32.dll_GetSystemMetrics]
push eax
push 1
call edi
push eax
push ebx
call edi
push eax
lea eax, [ebp - 0xbc]
push str._dx_d___dbpp_
push eax
call esi
add esp, 0x14
push dword [ebp - 0x388]
push ebx
call dword [sym.imp.USER32.dll_ReleaseDC]
cmp byte [ebp - 0x37c], bl
mov eax, 0x434250
jne 0x422e8c
mov eax, str._r_nScreen_______:
mov edi, dword [ebp - 0x380]
push eax
call fcn.00420458
lea ecx, [ebp - 0xbc]
push ecx
mov edi, eax
call fcn.00420458
pop ecx
pop ecx
push ebx
mov edi, eax
lea eax, [ebp + 0x5c]
push eax
push ebx
push 0x30
call dword [sym.imp.USER32.dll_SystemParametersInfoA]
cmp byte [ebp - 0x37c], 0
mov eax, 0x43421c
jne 0x422ecb
mov eax, str.__Work_Area___d__d____d__d___
push dword [ebp + 0x68]
push dword [ebp + 0x64]
push dword [ebp + 0x60]
push dword [ebp + 0x5c]
push eax
lea eax, [ebp - 0xbc]
push eax
call esi
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
add esp, 0x1c
cmp byte [ebp - 0x37c], 0
mov ecx, 0x4341e8
jne 0x422f03
mov ecx, str._r_nKeyboard_Type:
push ecx
mov edi, eax
call fcn.00420458
mov ebx, dword [sym.imp.USER32.dll_GetKeyboardType]
pop ecx
push 0
mov edi, eax
call ebx
mov ecx, eax
dec ecx
je 0x422fd3
dec ecx
je 0x422fbc
dec ecx
je 0x422fa5
dec ecx
je 0x422f8e
dec ecx
je 0x422f77
dec ecx
je 0x422f60
dec ecx
je 0x422f43
push eax
call fcn.004204a9
pop ecx
jmp 0x422fe6
cmp byte [ebp - 0x37c], 0
je 0x422f56
mov eax, 0x4341c0
jmp 0x422fe6
mov eax, str.Japanese_keyboard
jmp 0x422fe6
cmp byte [ebp - 0x37c], 0
je 0x422f70
mov eax, str.Nokia_9140
jmp 0x422fe6
mov eax, str.Nokia_9140_and_similar_keyboards
jmp 0x422fe6
cmp byte [ebp - 0x37c], 0
je 0x422f87
mov eax, str.Nokia_1050
jmp 0x422fe6
mov eax, str.Nokia_1050_and_similar_keyboards
jmp 0x422fe6
cmp byte [ebp - 0x37c], 0
je 0x422f9e
mov eax, str.IBM
jmp 0x422fe6
mov eax, str.IBM_enhanced__101__or_102_key__keyboard
jmp 0x422fe6
cmp byte [ebp - 0x37c], 0
je 0x422fb5
mov eax, str.IBM_PC_AT
jmp 0x422fe6
mov eax, str.IBM_PC_AT__84_key__or_similar_keyboard
jmp 0x422fe6
cmp byte [ebp - 0x37c], 0
je 0x422fcc
mov eax, str.Olivetti__ICO_
jmp 0x422fe6
mov eax, str.Olivetti__ICO___102_key__keyboard
jmp 0x422fe6
cmp byte [ebp - 0x37c], 0
mov eax, str.IBM_PC_XT
jne 0x422fe6
mov eax, str.IBM_PC_XT_or_compatible__83_key__keyboard
push eax
call fcn.00420458
cmp byte [ebp - 0x37c], 0
pop ecx
mov dword [ebp - 0x380], eax
mov edi, 0x433fb8
jne 0x423006
mov edi, str.__SubType:_04xh__function_keys:
push 1
call ebx
push eax
lea eax, [ebp - 0xbc]
push edi
push eax
call esi
add esp, 0xc
push 2
call ebx
mov ecx, eax
dec ecx
je 0x42305e
dec ecx
je 0x423047
dec ecx
je 0x42305e
dec ecx
je 0x423040
dec ecx
je 0x42305e
dec ecx
je 0x423039
push eax
call fcn.004204a9
pop ecx
jmp 0x423063
mov eax, 0x433f94
jmp 0x423063
mov eax, 0x433f90
jmp 0x423063
cmp byte [ebp - 0x37c], 0
je 0x423057
mov eax, 0x433f80
jmp 0x423063
mov eax, str.12_or_18
jmp 0x423063
mov eax, 0x433f70
push eax
lea eax, [ebp - 0xbc]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov edi, dword [ebp - 0x380]
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
mov edi, eax
pop ecx
lea eax, [ebp + 0x7c]
push eax
lea eax, [ebp + 0x5c]
push eax
mov dword [ebp - 0x380], edi
mov dword [ebp + 0x7c], 0x10
call dword [sym.imp.KERNEL32.dll_GetComputerNameA]
test eax, eax
je 0x4230d3
cmp byte [ebp - 0x37c], 0
mov eax, 0x433f5c
jne 0x4230b8
mov eax, str._r_nMachine_Name_:
push eax
call fcn.00420458
lea ecx, [ebp + 0x5c]
push ecx
mov edi, eax
call fcn.00420458
pop ecx
mov edi, eax
pop ecx
mov dword [ebp - 0x380], edi
lea eax, [ebp + 0x7c]
push eax
lea eax, [ebp - 0x170]
push eax
mov dword [ebp + 0x7c], 0x104
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
test eax, eax
je 0x42311e
cmp byte [ebp - 0x37c], 0
mov eax, 0x433f34
jne 0x423102
mov eax, str._r_nUser_Name____:
push eax
call fcn.00420458
lea ecx, [ebp - 0x170]
push ecx
mov edi, eax
call fcn.00420458
pop ecx
pop ecx
mov dword [ebp - 0x380], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp byte [ebp - 0x37c], 0
mov ecx, eax
mov edi, 0x433efc
jne 0x423139
mov edi, str._u_milliseconds___u_day_s___u:_02u:_02u._03u_
xor edx, edx
mov eax, ecx
mov ebx, 0x3e8
div ebx
push edx
push 0x3c
pop ebx
xor edx, edx
div ebx
mov eax, ecx
mov ebx, 0xea60
push edx
xor edx, edx
div ebx
push 0x3c
pop ebx
xor edx, edx
div ebx
mov eax, ecx
mov ebx, 0x36ee80
push edx
xor edx, edx
div ebx
push 0x18
pop ebx
xor edx, edx
div ebx
mov eax, ecx
mov ebx, 0x5265c00
push edx
xor edx, edx
div ebx
push eax
push ecx
lea eax, [ebp - 0x170]
push edi
push eax
call esi
add esp, 0x20
cmp byte [ebp - 0x37c], 0
mov eax, 0x433eb8
jne 0x4231a0
mov eax, str._r_nGetTickCount_:
mov edi, dword [ebp - 0x380]
push eax
call fcn.00420458
lea ecx, [ebp - 0x170]
push ecx
mov edi, eax
call fcn.00420458
cmp byte [ebp - 0x37c], 0
pop ecx
pop ecx
mov dword [ebp + 0x7c], 0x5c3a41
mov ecx, 0x433e40
jne 0x4231d6
mov ecx, str._r_n_r_n_Disk_Drives__r_n___Type____Disk_Free_Space__File_System______Serial____Valume_Label_r_n
push ecx
mov edi, eax
call fcn.00420458
mov dword [esp], str.GetDiskFreeSpaceExA
push str.kernel32.dll
mov dword [ebp - 0x380], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 1
mov dword [ebp - 0x384], eax
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
and dword [ebp - 0x388], 0
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcatA]
mov dword [ebp - 0x394], eax
mov al, byte [ebp - 0x388]
add al, 0x41
mov byte [ebp + 0x7c], al
lea eax, [ebp + 0x7c]
push eax
call dword [sym.imp.KERNEL32.dll_GetDriveTypeA]
test eax, eax
je 0x423254
cmp eax, 2
je 0x423254
cmp eax, 3
je 0x423254
cmp eax, 4
je 0x423254
cmp eax, 5
je 0x423254
cmp eax, 6
jne 0x42351d
mov cl, byte [ebp + 0x7c]
dec eax
dec eax
mov byte [ebp - 0xd0], cl
mov byte [ebp - 0xcf], 0x3a
mov byte [ebp - 0xce], 0x20
mov byte [ebp - 0xcd], 0
je 0x4232ab
dec eax
je 0x4232a4
dec eax
je 0x42329d
dec eax
je 0x423296
dec eax
lea eax, [ebp - 0xd0]
je 0x42328f
push str.Unknown
jmp 0x4232b6
push str.RAMDisk
jmp 0x4232b6
push str.CD_DVD
jmp 0x4232b0
push str.Remote
jmp 0x4232b0
push str.HDD
jmp 0x4232b0
push str.FDD_RMV
lea eax, [ebp - 0xd0]
push eax
call ebx
cmp dword [ebp - 0x384], 0
je 0x4233d0
lea eax, [ebp - 0x390]
push eax
lea eax, [ebp - 0x3b0]
push eax
lea eax, [ebp - 0x3ec]
push eax
lea eax, [ebp + 0x7c]
push eax
call dword [ebp - 0x384]
test eax, eax
je 0x42345b
mov eax, dword [ebp - 0x3ac]
mov ecx, eax
shr ecx, 8
xor edx, edx
ja 0x423301
cmp ecx, 0x63
jbe 0x423316
mov eax, dword [ebp - 0x38c]
push ecx
shr eax, 8
push eax
push str._6u__6uTB
jmp 0x4233c2
mov edx, dword [ebp - 0x3b0]
mov ecx, edx
mov edi, eax
shrd ecx, edi, 0x1e
shr edi, 0x1e
mov dword [ebp - 0x3b4], edi
jne 0x423334
cmp ecx, 0x63
jbe 0x423350
mov eax, dword [ebp - 0x390]
push ecx
mov ecx, dword [ebp - 0x38c]
shrd eax, ecx, 0x1e
push eax
shr ecx, 0x1e
push str._6u__6uGB
jmp 0x4233c2
mov ecx, edx
mov edi, eax
shrd ecx, edi, 0x14
shr edi, 0x14
mov dword [ebp - 0x3b4], edi
jne 0x423368
cmp ecx, 0x63
jbe 0x423384
mov eax, dword [ebp - 0x390]
push ecx
mov ecx, dword [ebp - 0x38c]
shrd eax, ecx, 0x14
push eax
shr ecx, 0x14
push str._6u__6uMB
jmp 0x4233c2
mov ecx, edx
shrd ecx, eax, 0xa
shr eax, 0xa
mov dword [ebp - 0x3b4], eax
jne 0x42339a
cmp ecx, 0x63
jbe 0x4233b6
mov eax, dword [ebp - 0x390]
push ecx
mov ecx, dword [ebp - 0x38c]
shrd eax, ecx, 0xa
push eax
shr ecx, 0xa
push str._6u__6uKB
jmp 0x4233c2
push edx
push dword [ebp - 0x390]
push str._6u__6uB
lea eax, [ebp - 0xc]
push eax
call esi
lea eax, [ebp - 0xc]
jmp 0x423455
lea eax, [ebp - 0x398]
push eax
lea eax, [ebp - 0x3a0]
push eax
lea eax, [ebp - 0x3a4]
push eax
lea eax, [ebp - 0x3a8]
push eax
lea eax, [ebp + 0x7c]
push eax
call dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceA]
test eax, eax
je 0x42345b
mov edx, dword [ebp - 0x3a8]
imul edx, dword [ebp - 0x3a4]
mov ecx, dword [ebp - 0x398]
mov eax, dword [ebp - 0x3a0]
imul ecx, edx
imul eax, edx
mov edx, ecx
shr edx, 0x14
cmp edx, 0x63
jbe 0x42342f
push edx
shr eax, 0x14
push eax
push str._6u__6uMB
jmp 0x42344c
mov edx, ecx
shr edx, 0xa
cmp edx, 0x63
jbe 0x423445
push edx
shr eax, 0xa
push eax
push str._6u__6uKB
jmp 0x42344c
push ecx
push eax
push str._6u__6uB
lea eax, [ebp + 0x30]
push eax
call esi
lea eax, [ebp + 0x30]
add esp, 0x10
push eax
jmp 0x423460
push str._____________
lea eax, [ebp - 0xd0]
push eax
call ebx
mov edi, dword [ebp - 0x380]
lea eax, [ebp - 0xd0]
push eax
call fcn.00420458
pop ecx
mov edi, eax
push 0xa
lea eax, [ebp + 0x60]
push eax
lea eax, [ebp - 0x3e0]
push eax
lea eax, [ebp - 0x3e4]
push eax
lea eax, [ebp - 0x39c]
push eax
push 0x104
lea eax, [ebp - 0x274]
push eax
lea eax, [ebp + 0x7c]
push eax
call dword [sym.imp.KERNEL32.dll_GetVolumeInformationA]
test eax, eax
je 0x42350c
lea eax, [ebp + 0x60]
push eax
lea eax, [ebp - 0xd0]
push str.____17s
push eax
call esi
lea eax, [ebp - 0xd0]
push eax
call fcn.00420458
mov edi, eax
lea eax, [ebp - 0x274]
push eax
mov eax, dword [ebp - 0x39c]
mov ecx, eax
and ecx, 0xffff
push ecx
shr eax, 0x10
push eax
lea eax, [ebp - 0xd0]
push str._04X__04X__s_r_n
push eax
call esi
lea eax, [ebp - 0xd0]
push eax
call fcn.00420458
add esp, 0x28
jmp 0x423517
push 0x43e2e4
call fcn.00420458
pop ecx
mov dword [ebp - 0x380], eax
inc dword [ebp - 0x388]
cmp dword [ebp - 0x388], 0x1a
jl 0x42321e
push dword [ebp - 0x394]
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
cmp byte [ebp - 0x37c], 0
mov eax, 0x433d00
jne 0x42354f
mov eax, str._r_n_Other_Information_
mov edi, dword [ebp - 0x380]
push eax
call fcn.00420458
cmp dword [ebp + 0x78], 0
pop ecx
je 0x423589
cmp byte [ebp - 0x37c], 0
mov ecx, 0x433cd4
jne 0x423575
mov ecx, str._r_nClient_______:
push ecx
mov edi, eax
call fcn.00420458
push dword [ebp + 0x78]
mov edi, eax
call fcn.00420458
pop ecx
pop ecx
cmp byte [ebp - 0x37c], 0
mov edi, eax
je 0x42361e
push 0x433cac
mov dword [ebp + 0x3c], 0x433ca8
mov dword [ebp + 0x40], 0x433ca4
mov dword [ebp + 0x44], 0x433ca0
mov dword [ebp + 0x48], 0x433c9c
mov dword [ebp + 0x4c], 0x433c98
mov dword [ebp + 0x50], 0x433c94
mov dword [ebp + 0x54], 0x433c90
call fcn.00420458
mov edi, eax
pop ecx
lea eax, [ebp + 0x5c]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx eax, word [ebp + 0x6a]
push eax
movzx eax, word [ebp + 0x68]
push eax
movzx eax, word [ebp + 0x66]
push eax
movzx eax, word [ebp + 0x64]
push eax
movzx eax, word [ebp + 0x60]
push dword [ebp + eax*4 + 0x3c]
movzx eax, word [ebp + 0x62]
push eax
movzx eax, word [ebp + 0x5e]
push eax
movzx eax, word [ebp + 0x5c]
push eax
lea eax, [ebp + 8]
push str._5d__2d__2d__s___2d:_02d:_02d._03d_r_n
push eax
call esi
lea eax, [ebp + 8]
jmp 0x4236fc
push str._r_nTime_Data____:
mov dword [ebp + 0x3c], str.Sunday
mov dword [ebp + 0x40], str.Monday
mov dword [ebp + 0x44], str.Tuesday
mov dword [ebp + 0x48], str.Wednesday
mov dword [ebp + 0x4c], str.Thursday
mov dword [ebp + 0x50], str.Friday
mov dword [ebp + 0x54], str.Saturday
mov dword [ebp], str.January
mov dword [ebp + 4], str.February
mov dword [ebp + 8], str.March
mov dword [ebp + 0xc], str.April
mov dword [ebp + 0x10], 0x433be8
mov dword [ebp + 0x14], str.June
mov dword [ebp + 0x18], str.July
mov dword [ebp + 0x1c], str.August
mov dword [ebp + 0x20], str.September
mov dword [ebp + 0x24], str.October
mov dword [ebp + 0x28], str.November
mov dword [ebp + 0x2c], str.December
call fcn.00420458
mov edi, eax
pop ecx
lea eax, [ebp + 0x5c]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx eax, word [ebp + 0x6a]
push eax
movzx eax, word [ebp + 0x68]
push eax
movzx eax, word [ebp + 0x66]
push eax
movzx eax, word [ebp + 0x64]
push eax
movzx eax, word [ebp + 0x5c]
push eax
movzx eax, word [ebp + 0x62]
push eax
movzx eax, word [ebp + 0x5e]
push dword [ebp + eax*4 - 4]
movzx eax, word [ebp + 0x60]
push dword [ebp + eax*4 + 0x3c]
lea eax, [ebp - 0xbc]
push str._s___s__d___d__2d:_02d:_02d._03d_r_n
push eax
call esi
lea eax, [ebp - 0xbc]
push eax
call fcn.00420458
add esp, 0x2c
mov esi, eax
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
push eax
push 2
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov edi, eax
test edi, edi
je 0x423734
push edi
call dword [sym.imp.KERNEL32.dll_GlobalLock]
push esi
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push edi
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
push esi
call fcn.0042765d
pop ecx
mov ecx, dword [ebp + 0x6c]
mov eax, edi
pop edi
pop esi
pop ebx
call fcn.00428306
add ebp, 0x70
leave
ret