Function at 0x10004330
Capabilities:
Check os version
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x44
push 0x2c
call fcn.1004e433
add esp, 4
mov dword [ebp - 4], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xb
rep stosd dword es:[edi], eax
add ebx, 0x14
push ebx
push 0x88
call fcn.1004e433
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x10058880
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x20
rep stosd dword es:[edi], eax
push 0x24
call fcn.1004e433
add esp, 4
mov dword [ebp - 8], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 9
rep stosd dword es:[edi], eax
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], 0
mov ebx, dword [ebp - 4]
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
mov dword [ebx], 0x9c
mov dword [ebp - 0x30], esp
mov eax, dword [ebp - 4]
push eax
push 0x9c
call fcn.1004e433
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x80
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
xor eax, eax
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
nop
nop
cmp dword [ebp - 0x30], esp
je 0x100044a6
push 0x3e
push 0x40165de
push 6
call fcn.1004e43f
add esp, 0xc
push eax
mov ebx, dword [ebp - 0x34]
push ebx
mov edi, dword [ebp - 0x38]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.1004e8b0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x1000450f
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x1000450d
imul eax, dword [edi]
jmp 0x10004502
mov ecx, eax
cmp ecx, 0x80
jle 0x1000451c
mov ecx, 0x80
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x80
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
call fcn.1004e439
add esp, 4
pop eax
test eax, eax
je 0x1000576e
mov dword [ebp - 0x30], esp
push dword [ebp - 8]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
nop
nop
cmp dword [ebp - 0x30], esp
je 0x10004599
push 0x59
push 0x40165de
push 6
call fcn.1004e43f
add esp, 0xc
mov dword [ebp - 0x30], esp
lea eax, [ebp - 0xc]
push eax
push 0xffffffff
xor eax, eax
call dword [sym.imp.KERNEL32.dll_IsWow64Process]
nop
nop
cmp dword [ebp - 0x30], esp
je 0x100045cb
push 0x73
push 0x40165de
push 6
call fcn.1004e43f
add esp, 0xc
mov ebx, dword [ebp - 4]
add ebx, 4
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 4]
add ebx, 8
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x38], esp
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 0x34]
push dword [ebp - 0x30]
xor eax, eax
call dword [0x1006dae8]
nop
nop
cmp dword [ebp - 0x38], esp
je 0x10004610
push 0x96
push 0x40165de
push 6
call fcn.1004e43f
add esp, 0xc
mov ebx, dword [ebp - 4]
add ebx, 4
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
mov eax, dword [ebx]
mov ebx, dword [ebp + 8]
mov dword [ebx], eax
mov ebx, dword [ebp - 4]
add ebx, 8
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
mov eax, dword [ebx]
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
mov ebx, dword [ebp - 4]
add ebx, 0xc
mov dword [ebp - 0x30], ebx
mov eax, dword [ebp - 0x10]
cwde
mov ebx, dword [ebp - 0x30]
mov dword [ebx], eax
mov ebx, dword [ebp - 4]
add ebx, 4
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp dword [ebx], 0xa
jne 0x100046f6
mov ebx, dword [ebp - 4]
add ebx, 8
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp dword [ebx], 0
jne 0x100046f1
mov ebx, dword [ebp - 4]
add ebx, 0x24
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp byte [ebx], 1
jne 0x100046a6
mov eax, str.Windows_10
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x1000469d
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
jmp 0x100046f1
push 0
push 0
push 0
push 0x80000004
push 0
push str.SOFTWAREMicrosoftWindows_NTCurrentVersionProductName
push 0x80000301
push 0
push 4
push 3
mov ebx, 0x698
call fcn.1004f1f0
add esp, 0x28
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x100046ed
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
jmp 0x10004d0d
mov ebx, dword [ebp - 4]
add ebx, 4
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp dword [ebx], 6
jne 0x10004897
mov ebx, dword [ebp - 4]
add ebx, 8
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp dword [ebx], 0
jne 0x1000476e
mov ebx, dword [ebp - 4]
add ebx, 0x24
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp byte [ebx], 1
mov eax, 0
sete al
test eax, eax
je 0x10004749
mov eax, str.Windows_Vista
jmp 0x1000474e
mov eax, str.Windows_Server_2008
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x10004765
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
jmp 0x10004892
mov ebx, dword [ebp - 4]
add ebx, 8
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 1
jne 0x100047d1
mov ebx, dword [ebp - 4]
add ebx, 0x24
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp byte [ebx], 1
mov eax, 0
sete al
test eax, eax
je 0x100047ac
mov eax, str.Windows_7
jmp 0x100047b1
mov eax, str.Windows_Server_2008_R2
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x100047c8
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
jmp 0x10004892
mov ebx, dword [ebp - 4]
add ebx, 8
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 2
jne 0x10004834
mov ebx, dword [ebp - 4]
add ebx, 0x24
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp byte [ebx], 1
mov eax, 0
sete al
test eax, eax
je 0x1000480f
mov eax, str.Windows_8
jmp 0x10004814
mov eax, str.Windows_Server_2012
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x1000482b
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
jmp 0x10004892
mov ebx, dword [ebp - 4]
add ebx, 8
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 3
jne 0x10004892
mov ebx, dword [ebp - 4]
add ebx, 0x24
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp byte [ebx], 1
mov eax, 0
sete al
test eax, eax
je 0x10004872
mov eax, str.Windows_8.1
jmp 0x10004877
mov eax, str.Windows_Server_2012_R2
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x1000488e
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
jmp 0x10004d0d
mov ebx, dword [ebp - 4]
add ebx, 4
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp dword [ebx], 5
jne 0x100048c8
mov ebx, dword [ebp - 4]
add ebx, 8
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0
jne 0x100048c8
mov eax, 1
jmp 0x100048cd
mov eax, 0
test eax, eax
je 0x10004a01
mov eax, str.Windows_2000
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x100048eb
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 4]
add ebx, 0x24
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp byte [ebx], 1
jne 0x10004923
mov eax, str.Professional
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x1000491a
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x100049fc
mov ebx, dword [ebp - 4]
add ebx, 0x20
mov dword [ebp - 0x30], ebx
push 0x80000301
push 0
push 0x80
mov ebx, dword [ebp - 0x30]
mov ax, word [ebx]
cwde
push 0x80000301
push 0
push eax
push 2
mov ebx, 0xc4
call fcn.1004f380
add esp, 0x1c
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jne 0x10004980
mov eax, str.Datacenter_Server
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x1000497c
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 4]
add ebx, 0x20
mov dword [ebp - 0x30], ebx
push 0x80000301
push 0
push 2
mov ebx, dword [ebp - 0x30]
mov ax, word [ebx]
cwde
push 0x80000301
push 0
push eax
push 2
mov ebx, 0xc4
call fcn.1004f380
add esp, 0x1c
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jne 0x100049e2
mov eax, str.Advanced_Server
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x100049d9
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x100049fc
mov eax, str.Server
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x100049f8
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10004d0d
mov ebx, dword [ebp - 4]
add ebx, 4
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp dword [ebx], 5
jne 0x10004a32
mov ebx, dword [ebp - 4]
add ebx, 8
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 1
jne 0x10004a32
mov eax, 1
jmp 0x10004a37
mov eax, 0
test eax, eax
je 0x10004ada
mov eax, str.Windows_XP
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x10004a55
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 4]
add ebx, 0x20
mov dword [ebp - 0x30], ebx
push 0x80000301
push 0
push 0x200
mov ebx, dword [ebp - 0x30]
mov ax, word [ebx]
cwde
push 0x80000301
push 0
push eax
push 2
mov ebx, 0xc4
call fcn.1004f380
add esp, 0x1c
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 1
jne 0x10004abb
mov eax, str.Home_Edition
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004ab2
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10004ad5
mov eax, str.Professional
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004ad1
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10004d0d
mov ebx, dword [ebp - 4]
add ebx, 4
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp dword [ebx], 5
jne 0x10004b0b
mov ebx, dword [ebp - 4]
add ebx, 8
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 2
jne 0x10004b0b
mov eax, 1
jmp 0x10004b10
mov eax, 0
test eax, eax
je 0x10004cb5
mov dword [ebp - 0x30], esp
push 0x59
xor eax, eax
call dword [sym.imp.USER32.dll_GetSystemMetrics]
nop
nop
cmp dword [ebp - 0x30], esp
je 0x10004b46
push 0xb74
push 0x40165de
push 6
call fcn.1004e43f
add esp, 0xc
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
je 0x10004b72
mov eax, str.Windows_Server_2003_R2_
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x10004b69
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
jmp 0x10004cb0
mov ebx, dword [ebp - 4]
add ebx, 0x20
mov dword [ebp - 0x30], ebx
push 0x80000301
push 0
push 0x2000
mov ebx, dword [ebp - 0x30]
mov ax, word [ebx]
cwde
push 0x80000301
push 0
push eax
push 2
mov ebx, 0xc4
call fcn.1004f380
add esp, 0x1c
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0x2000
jne 0x10004bd7
mov eax, str.Windows_Storage_Server_2003
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x10004bce
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
jmp 0x10004cb0
mov ebx, dword [ebp - 4]
add ebx, 0x20
mov dword [ebp - 0x30], ebx
push 0x80000301
push 0
push 0x8000
mov ebx, dword [ebp - 0x30]
mov ax, word [ebx]
cwde
push 0x80000301
push 0
push eax
push 2
mov ebx, 0xc4
call fcn.1004f380
add esp, 0x1c
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0x8000
jne 0x10004c3c
mov eax, str.Windows_Home_Server
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x10004c33
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
jmp 0x10004cb0
mov ebx, dword [ebp - 4]
add ebx, 0x24
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp byte [ebx], 1
jne 0x10004c6a
mov ebx, dword [ebp - 8]
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 9
jne 0x10004c6a
mov eax, 1
jmp 0x10004c6f
mov eax, 0
test eax, eax
je 0x10004c96
mov eax, str.Windows_XP_Professional_x64_Edition
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x10004c8d
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
jmp 0x10004cb0
mov eax, str.Windows_Server_2003_
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x10004cac
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
jmp 0x10004d0d
mov ebx, dword [ebp - 4]
add ebx, 4
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp dword [ebx], 4
jne 0x10004ce6
mov ebx, dword [ebp - 4]
add ebx, 8
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0xa
jne 0x10004ce6
mov eax, 1
jmp 0x10004ceb
mov eax, 0
test eax, eax
je 0x10004d0d
mov eax, str.Windows_98
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x10004d09
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 4]
add ebx, 4
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp dword [ebx], 6
jl 0x10005222
mov ebx, dword [ebp - 4]
add ebx, 4
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 4]
add ebx, 8
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x38], esp
lea eax, [ebp - 0x1c]
push eax
push 0
push 0
mov ebx, dword [ebp - 0x34]
push dword [ebx]
mov ebx, dword [ebp - 0x30]
push dword [ebx]
xor eax, eax
call dword [0x1006daec]
nop
nop
cmp dword [ebp - 0x38], esp
je 0x10004d75
push 0xf17
push 0x40165de
push 6
call fcn.1004e43f
add esp, 0xc
cmp dword [ebp - 0x1c], 1
jne 0x10004d9e
mov eax, str.Ultimate_Edition
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004d95
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 2
jne 0x10004dc7
mov eax, str.Home_Basic_Edition
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004dbe
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 3
jne 0x10004df0
mov eax, str.Home_Premium_Edition
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004de7
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 4
jne 0x10004e19
mov eax, str.Enterprise_Edition
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004e10
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 6
jne 0x10004e42
mov eax, str.Business_Edition
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004e39
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 7
jne 0x10004e6b
mov eax, str.Standard
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004e62
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 8
jne 0x10004e94
mov eax, str.Datacenter_Edition
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004e8b
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 9
jne 0x10004ebd
mov eax, str.Small_Business_Server
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004eb4
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 0xa
jne 0x10004ee6
mov eax, str.Enterprise_Edition
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004edd
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 0xb
jne 0x10004f0f
mov eax, str.Starter_Edition
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004f06
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 0xc
jne 0x10004f38
mov eax, str.Datacenter_Edition__core_installation_
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004f2f
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 0xd
jne 0x10004f61
mov eax, str.Standard_Edition__core_installation_
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004f58
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 0xe
jne 0x10004f8a
mov eax, str.Enterprise_Edition__core_installation_
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004f81
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 0xf
jne 0x10004fb3
mov eax, str.Enterprise_Edition_for_Itanium_based_Systems
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004faa
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 0x10
jne 0x10004fdc
mov eax, str.Business_N
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004fd3
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 0x11
jne 0x10005005
mov eax, str.Web_Server__full_installation_
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10004ffc
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 0x12
jne 0x1000502e
mov eax, str.HPC_Edition
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10005025
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 0x13
jne 0x10005057
mov eax, str.Windows_Storage_Server_2008_R2_Essentials
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x1000504e
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 0x14
jne 0x10005080
mov eax, str.Storage_Server_Express
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10005077
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 0x15
jne 0x100050a9
mov eax, str.Storage_Server_Standard
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x100050a0
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 0x16
jne 0x100050d2
mov eax, str.Storage_Server_Workgroup
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x100050c9
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 0x17
jne 0x100050fb
mov eax, str.Storage_Server_Enterprise
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x100050f2
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 0x19
jne 0x10005124
mov eax, str.Small_Business_Server_Premium_Edition
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x1000511b
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 0x30
jne 0x1000514d
mov eax, str.Professional
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10005144
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
cmp dword [ebp - 0x1c], 0x79
jne 0x10005176
mov eax, str.Education
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x1000516d
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
jmp 0x10005222
mov ebx, dword [ebp - 4]
add ebx, 4
mov dword [ebp - 0x30], ebx
push 0x80000301
push 0
mov ebx, dword [ebp - 0x30]
push dword [ebx]
push 1
mov ebx, 0x168
call fcn.1004f410
add esp, 0x10
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 4]
add ebx, 8
mov dword [ebp - 0x38], ebx
push 0x80000301
push 0
mov ebx, dword [ebp - 0x38]
push dword [ebx]
push 1
mov ebx, 0x168
call fcn.1004f410
add esp, 0x10
mov dword [ebp - 0x3c], eax
push dword [ebp - 0x3c]
push 0x100587d6
push dword [ebp - 0x34]
push 0x100587d8
mov ecx, 4
call fcn.1000107c
add esp, 0x10
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x100051fa
push ebx
call fcn.1004e439
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x1000520a
push ebx
call fcn.1004e439
add esp, 4
mov eax, dword [ebp - 0x40]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x1000521e
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x1000523e
push eax
mov ebx, eax
call fcn.10001011
inc eax
push eax
call fcn.1004e433
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x1000524f
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
push 0x80000002
push 0
push 0
push 0
push 0
push 0
push 0x80000004
push 0
mov eax, dword [ebp - 0x18]
test eax, eax
jne 0x10005278
mov eax, 0x10057207
push eax
push 0x80000004
push 0
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x1000528c
mov eax, 0x10057207
push eax
push 4
mov ebx, 0x148
call fcn.1004f6c0
add esp, 0x34
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0xffffffff
mov eax, 0
sete al
test eax, eax
je 0x100052d7
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x100052d2
push eax
mov ebx, eax
call fcn.10001011
inc eax
push eax
call fcn.1004e433
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x100052dc
mov eax, 0x10057207
mov dword [ebp - 0x3c], eax
push dword [ebp - 0x3c]
push 0x100587ee
push dword [ebp - 0x20]
mov ecx, 3
call fcn.1000107c
add esp, 0xc
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x1000530a
push ebx
call fcn.1004e439
add esp, 4
cmp dword [ebp + 0x18], 0
je 0x10005335
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x10005330
push eax
mov ebx, eax
call fcn.10001011
inc eax
push eax
call fcn.1004e433
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x10005351
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x10005351
push eax
mov ebx, eax
call fcn.10001011
inc eax
push eax
call fcn.1004e433
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x10005364
push ebx
call fcn.1004e439
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x10005378
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
push str._x64
push dword [ebp - 0x20]
mov ecx, 2
call fcn.1000107c
add esp, 8
mov dword [ebp - 0x30], eax
push str._x86
push dword [ebp - 0x20]
mov ecx, 2
call fcn.1000107c
add esp, 8
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0xc], 0
je 0x100053d7
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x100053d2
push eax
mov ebx, eax
call fcn.10001011
inc eax
push eax
call fcn.1004e433
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x100053f3
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x100053f3
push eax
mov ebx, eax
call fcn.10001011
inc eax
push eax
call fcn.1004e433
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x10005406
push ebx
call fcn.1004e439
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x10005416
push ebx
call fcn.1004e439
add esp, 4
cmp dword [ebp + 0x20], 0
je 0x10005441
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x1000543c
push eax
mov ebx, eax
call fcn.10001011
inc eax
push eax
call fcn.1004e433
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x1000545d
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x1000545d
push eax
mov ebx, eax
call fcn.10001011
inc eax
push eax
call fcn.1004e433
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
mov dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x10005470
push ebx
call fcn.1004e439
add esp, 4
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x10005484
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
cmp dword [ebp + 0x28], 0
je 0x100055d0
mov ebx, dword [ebp - 4]
add ebx, 0x14
mov dword [ebp - 0x30], ebx
push 0xa0000101
push 0
mov ebx, dword [ebp - 0x30]
push dword [ebx]
push 1
mov ebx, 0x168
call fcn.1004f410
add esp, 0x10
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x100054d0
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x24], eax
push 0x80000004
push 0
mov eax, dword [ebp - 0x24]
test eax, eax
jne 0x100054e7
mov eax, 0x10057207
push eax
push 1
mov ebx, 0x130
call fcn.1004f7f0
add esp, 0x10
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
jne 0x10005552
push 0
push 0
push 0
push 0x80000004
push 0
push str.SOFTWAREMicrosoftWindows_NTCurrentVersionCSDVersion
push 0x80000301
push 0
push 4
push 3
mov ebx, 0x698
call fcn.1004f1f0
add esp, 0x28
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
push eax
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x1000554e
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x24], eax
push 0x80000004
push 0
mov eax, dword [ebp - 0x24]
test eax, eax
jne 0x10005565
mov eax, 0x10057207
push eax
push 1
mov ebx, 0x130
call fcn.1004f7f0
add esp, 0x10
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 2
mov eax, 0
setg al
test eax, eax
je 0x100055b0
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x100055ab
push eax
mov ebx, eax
call fcn.10001011
inc eax
push eax
call fcn.1004e433
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x100055b5
mov eax, 0x10057207
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x100055cc
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
cmp dword [ebp + 0x30], 0
je 0x10005702
mov ebx, dword [ebp - 4]
add ebx, 0xc
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp dword [ebx], 0
jne 0x1000563f
push 0
push 0
push 0
push 0x80000004
push 0
push str.SOFTWAREMicrosoftWindows_NTCurrentVersionCurrentBuild
push 0x80000301
push 0
push 4
push 3
mov ebx, 0x698
call fcn.1004f1f0
add esp, 0x28
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
push eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x10005636
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x2c], eax
jmp 0x10005681
mov ebx, dword [ebp - 4]
add ebx, 0xc
mov dword [ebp - 0x30], ebx
push 0x80000301
push 0
mov ebx, dword [ebp - 0x30]
push dword [ebx]
push 1
mov ebx, 0x168
call fcn.1004f410
add esp, 0x10
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x1000567d
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x2c], eax
push 0x10057207
push dword [ebp - 0x28]
call fcn.100010d8
add esp, 8
cmp eax, 0
je 0x100056d2
push dword [ebp - 0x2c]
push str._Build:
push dword [ebp - 0x28]
mov ecx, 3
call fcn.1000107c
add esp, 0xc
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x100056c9
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
jmp 0x10005702
push dword [ebp - 0x2c]
push str.Build:
mov ecx, 2
call fcn.1000107c
add esp, 8
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x100056fe
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
push 0x10057207
push dword [ebp - 0x28]
call fcn.100010d8
add esp, 8
cmp eax, 0
je 0x10005750
push 0x1005887b
push dword [ebp - 0x28]
push 0x1005887d
mov ecx, 3
call fcn.1000107c
add esp, 0xc
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x1000574c
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
push dword [ebp - 0x20]
mov ecx, 2
call fcn.1000107c
add esp, 8
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
jmp 0x10005778
mov eax, 0x10057207
jmp 0x10005778
push eax
mov ebx, dword [ebp - 4]
push ebx
add ebx, 0x14
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.1004e439
add esp, 4
pop ebx
call fcn.1004e439
add esp, 4
mov ebx, dword [ebp - 8]
push ebx
call fcn.1004e439
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x100057b1
push ebx
call fcn.1004e439
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x100057c1
push ebx
call fcn.1004e439
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x100057d1
push ebx
call fcn.1004e439
add esp, 4
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x100057e1
push ebx
call fcn.1004e439
add esp, 4
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x100057f1
push ebx
call fcn.1004e439
add esp, 4
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x10005801
push ebx
call fcn.1004e439
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x30