Function at 0x422591
Capabilities:
Get hostname
Inspect section memory permissions
Resolve dns

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xbcc
mov eax, dword [0x5a6008]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x140
lea eax, [ebp - 0xbb8]
mov ebx, ecx
push 0
push eax
mov dword [ebp - 0xbc4], ebx
call fcn.00513330
add esp, 0xc
lea eax, [ebp - 0xbb8]
lea ecx, [ebp - 0xbb9]
push eax
call fcn.00420660
test eax, eax
lea eax, [ebp - 0x870]
je 0x423c69
push 0x560f28
push eax
call fcn.00423dd0
add esp, 8
lea eax, [ebp - 0x870]
cmp dword [ebp - 0xb14], 5
push str.OS:
push 0x800
push eax
jne 0x422513
call fcn.0051736e
jmp 0x422518
call fcn.005173c8
mov ecx, dword [ebp - 0xb14]
add esp, 0xc
lea eax, [ecx - 1]
cmp eax, 4
ja case.default.0x42252d
jmp dword [eax*4 + 0x423d84]
push 0x58e9e0
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
jmp 0x4232dc
push str.Windows
jmp 0x422539
mov eax, dword [ebp - 0xb20]
cmp ecx, 5
jne 0x422589
cmp eax, 7
jb 0x422571
mov eax, str.Windows_Embedded_Compact
push eax
jmp 0x422539
cmp ecx, 5
jne 0x422589
cmp eax, 4
jne 0x422589
cmp dword [ebp - 0xb1c], 0
mov eax, str.Windows_CE_.NET
ja 0x42258e
mov eax, str.Windows_CE
push eax
jmp 0x422539
mov edi, dword [ebp - 0xb18]
mov esi, dword [ebp - 0xb1c]
mov edx, dword [ebp - 0xb20]
cmp ecx, 3
jne 0x4226be
cmp edx, 4
jne 0x4225c8
test esi, esi
jne 0x4225c8
cmp edi, 0x3b6
jne 0x4225c8
mov eax, str.Windows_95
push eax
jmp 0x4232bb
cmp ecx, 3
jne 0x4226be
cmp edx, 4
jne 0x4225ee
lea eax, [edi - 0x3b7]
cmp eax, 0x81
ja 0x4225ee
mov eax, str.Windows_95_SP1
push eax
jmp 0x4232bb
cmp ecx, 3
jne 0x4226be
cmp edx, 4
jne 0x422619
cmp esi, 0xa
jae 0x422619
lea eax, [edi - 0x439]
cmp eax, 0x84
ja 0x422619
mov eax, str.Windows_95_B__aka_OSR2_
push eax
jmp 0x4232bb
cmp ecx, 3
jne 0x4226be
cmp edx, 4
jne 0x42263f
cmp esi, 0xa
jae 0x42263f
cmp edi, 0x4be
jb 0x42263f
mov eax, str.Windows_95_C__aka_OSR2.5_
push eax
jmp 0x4232bb
cmp ecx, 3
jne 0x4226be
cmp edx, 4
jne 0x422661
cmp esi, 0xa
jne 0x422661
cmp edi, 0x7ce
jne 0x422661
mov eax, str.Windows_98
push eax
jmp 0x4232bb
cmp ecx, 3
jne 0x4226be
cmp edx, 4
jne 0x422688
cmp esi, 0xa
jne 0x422688
lea eax, [edi - 0x7cf]
cmp eax, 0xb7
ja 0x422688
mov eax, str.Windows_98_SP1
push eax
jmp 0x4232bb
cmp ecx, 3
jne 0x4226be
cmp edx, 4
jne 0x4226aa
cmp esi, 0xa
jne 0x4226aa
cmp edi, 0x887
jb 0x4226aa
mov eax, str.Windows_98_Second_Edition
push eax
jmp 0x4232bb
cmp ecx, 3
jne 0x4226be
cmp edx, 4
jne 0x4226be
mov eax, str.Windows_Millenium_Edition
cmp esi, 0x5a
je 0x4226c3
mov eax, str.Windows___
push eax
jmp 0x4232bb
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.004221f0
test eax, eax
je 0x4227e5
push str.Windows_NT
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
mov ecx, dword [ebp - 0xb14]
add esp, 0xc
mov edx, dword [ebp - 0xa7c]
mov eax, dword [ebp - 0xb20]
cmp ecx, 4
jne 0x4232dc
cmp eax, 4
ja 0x422723
cmp edx, 1
jne 0x422723
push str.__Workstation_
jmp 0x42277d
cmp ecx, 4
jne 0x4232dc
cmp eax, ecx
ja 0x42273c
cmp edx, 2
jne 0x42273c
push str.__Server_
jmp 0x42277d
cmp ecx, 4
jne 0x4232dc
cmp eax, ecx
ja 0x42275d
cmp edx, 3
jne 0x42275d
test byte [ebp - 0xa88], cl
je 0x42275d
push str.__Primary_Domain_Controller_
jmp 0x42277d
cmp ecx, 4
jne 0x4232dc
cmp eax, ecx
ja 0x42279d
cmp edx, 3
jne 0x42279d
test byte [ebp - 0xa88], 8
je 0x42279d
push str.__Backup_Domain_Controller_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
mov eax, dword [ebp - 0xb20]
add esp, 0xc
mov ecx, dword [ebp - 0xb14]
cmp ecx, 4
jne 0x4232dc
cmp eax, ecx
ja 0x4227bd
test byte [ebp - 0xa88], 0x20
je 0x4227bd
push str.___Datacenter_
jmp 0x422539
cmp ecx, 4
jne 0x4232dc
cmp eax, ecx
ja 0x4232dc
test byte [ebp - 0xa88], 2
je 0x4232dc
push str.___Enterprise_
jmp 0x422539
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00421fe0
test eax, eax
je 0x4228d2
test byte [ebp - 0xa84], 0x80
je 0x42280a
mov eax, str.Windows_2000__Professional_
jmp 0x42284c
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00422220
test eax, eax
je 0x422822
mov eax, str.Windows_2000_Server
jmp 0x42284c
cmp ecx, 4
jne 0x422847
cmp dword [ebp - 0xb20], 5
jne 0x422847
cmp dword [ebp - 0xb1c], 0
jne 0x422847
cmp dword [ebp - 0xa7c], 3
mov eax, str.Windows_2000__Domain_Controller_
je 0x42284c
mov eax, str.Windows_2000
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
mov esi, dword [ebp - 0xb14]
add esp, 0xc
mov eax, dword [ebp - 0xa88]
mov ecx, dword [ebp - 0xb1c]
mov edx, dword [ebp - 0xb20]
cmp esi, 4
jne 0x4232dc
cmp edx, 5
jne 0x422899
test ecx, ecx
jne 0x422899
test al, 0x20
je 0x422899
push str.___Datacenter_
jmp 0x422539
cmp esi, 4
jne 0x4232dc
cmp edx, 5
jne 0x4232dc
test ecx, ecx
jne 0x4232dc
cmp dword [ebp - 0xa7c], 2
jne 0x4232dc
test al, 2
je 0x4232dc
push str.___Advanced_Server_
jmp 0x422539
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00422010
test eax, eax
je 0x422ac2
mov edx, dword [ebp - 0xa88]
test edx, 0x10000
je 0x4228ff
mov eax, str.Windows_XP__Starter_Edition_
jmp 0x4229aa
test dl, 0x40
je 0x42290e
mov eax, str.Windows_XP__Personal_
jmp 0x4229aa
test byte [ebp - 0xa84], 0x80
je 0x422921
mov eax, str.Windows_XP__Professional_
jmp 0x4229aa
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00422260
test eax, eax
je 0x422939
mov eax, str.Windows_Server_2003
jmp 0x4229aa
mov esi, dword [ebp - 0xa7c]
mov edi, dword [ebp - 0xb1c]
mov ebx, dword [ebp - 0xb20]
cmp ecx, 4
jne 0x42296d
cmp ebx, 5
jne 0x42296d
test edi, edi
je 0x42296d
cmp esi, 3
jne 0x42296d
test edx, 0x20000
jne 0x42296d
mov eax, str.Windows_Server_2003__Domain_Controller_
jmp 0x4229aa
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00422300
test eax, eax
je 0x422985
mov eax, str.Windows_Server_2003_R2
jmp 0x4229aa
cmp ecx, 4
jne 0x4229a5
cmp ebx, 5
jne 0x4229a5
test edi, edi
je 0x4229a5
cmp esi, 3
jne 0x4229a5
mov eax, str.Windows_Server_2003_R2__Domain_Controller_
test edx, 0x20000
jne 0x4229aa
mov eax, str.Windows_XP
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
mov edi, dword [ebp - 0xb14]
add esp, 0xc
mov ecx, dword [ebp - 0xa88]
mov edx, dword [ebp - 0xb1c]
mov esi, dword [ebp - 0xb20]
cmp edi, 4
jne 0x422a17
cmp esi, 5
jne 0x4229f2
test edx, edx
je 0x4229f2
test cl, 0x20
je 0x4229f2
test ecx, 0x20000
je 0x422a0d
cmp edi, 4
jne 0x422a17
cmp esi, 5
jne 0x422a17
test edx, edx
je 0x422a17
test cl, 0x20
je 0x422a17
test ecx, 0x20000
je 0x422a17
push str.___Datacenter_Edition_
jmp 0x422539
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.004222b0
test eax, eax
jne 0x42308e
cmp edi, 4
jne 0x422a6d
cmp esi, 5
jne 0x422a46
test edx, edx
je 0x422a46
test cl, cl
jns 0x422a46
test ecx, 0x20000
je 0x422a60
cmp edi, 4
jne 0x422a6d
cmp esi, 5
jne 0x422a6a
test edx, edx
je 0x422a6a
test cl, cl
jns 0x422a6a
test ecx, 0x20000
je 0x422a6a
push str.___Web_Edition_
jmp 0x422539
cmp edi, 4
mov eax, dword [ebp - 0xa84]
jne 0x422a8a
cmp esi, 5
jne 0x422a8a
test edx, edx
je 0x422a8a
test al, 0x20
je 0x422a8a
test ecx, 0x20000
je 0x422ab8
cmp edi, 4
jne 0x4232dc
cmp esi, 5
jne 0x4232dc
test edx, edx
je 0x4232dc
test al, 0x20
je 0x4232dc
test ecx, 0x20000
je 0x4232dc
push str.___Standard_Edition_
jmp 0x422539
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00422040
test eax, eax
je 0x422c24
mov eax, dword [ebp - 0xa88]
test eax, 0x10000
je 0x422aee
mov eax, str.Windows_Vista__Starter_Edition_
jmp 0x422b73
test eax, 0x1000000
je 0x422afc
mov eax, str.Windows_Vista__Home_Basic_
jmp 0x422b73
test eax, 0x2000000
je 0x422b0a
mov eax, str.Windows_Vista__Home_Premium_
jmp 0x422b73
test eax, 0x8000000
je 0x422b18
mov eax, str.Windows_Vista__Business_
jmp 0x422b73
test al, 2
je 0x422b23
mov eax, str.Windows_Vista__Enterprise_
jmp 0x422b73
test eax, 0x400000
je 0x422b31
mov eax, str.Windows_Vista__Ultimate_
jmp 0x422b73
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00422350
test eax, eax
je 0x422b49
mov eax, str.Windows_Server_2008
jmp 0x422b73
cmp ecx, 4
jne 0x422b6e
cmp dword [ebp - 0xb20], 6
jne 0x422b6e
cmp dword [ebp - 0xb1c], 0
jne 0x422b6e
cmp dword [ebp - 0xa7c], 3
mov eax, str.Windows_Server_2008__Domain_Controller_
je 0x422b73
mov eax, str.Windows_Vista
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
mov edx, dword [ebp - 0xb14]
add esp, 0xc
mov ebx, dword [ebp - 0xa88]
mov eax, dword [ebp - 0xb1c]
mov ecx, dword [ebp - 0xb20]
cmp edx, 4
jne 0x4232dc
cmp ecx, 6
jne 0x422bc1
test eax, eax
jne 0x422bc1
test bl, 0x20
je 0x422bc1
push str.___Datacenter_Edition_
jmp 0x422539
cmp edx, 4
jne 0x4232dc
cmp ecx, 6
jne 0x422beb
test eax, eax
jne 0x422beb
cmp dword [ebp - 0xa7c], 2
jne 0x422beb
test bl, 2
je 0x422beb
push str.___Enterprise_Edition_
jmp 0x422539
cmp edx, 4
jne 0x4232dc
cmp ecx, 6
jne 0x422c0b
test eax, eax
jne 0x422c0b
test bl, bl
jns 0x422c0b
push str.___Web_Edition_
jmp 0x422539
cmp edx, 4
jne 0x4232dc
cmp ecx, 6
jne 0x4232dc
test eax, eax
jmp 0x422efe
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00422070
test eax, eax
je 0x422d9f
mov edx, dword [ebp - 0xa84]
test edx, 0x20000
je 0x422c51
mov eax, str.Windows_7_Thin_PC
jmp 0x422cea
mov eax, dword [ebp - 0xa88]
test eax, 0x10000
je 0x422c68
mov eax, str.Windows_7__Starter_Edition_
jmp 0x422cea
test eax, 0x1000000
je 0x422c76
mov eax, str.Windows_7__Home_Basic_
jmp 0x422cea
test eax, 0x2000000
je 0x422c84
mov eax, str.Windows_7__Home_Premium_
jmp 0x422cea
test dl, dl
jns 0x422c8f
mov eax, str.Windows_7__Professional_
jmp 0x422cea
test al, 2
je 0x422c9a
mov eax, str.Windows_7__Enterprise_
jmp 0x422cea
test eax, 0x400000
je 0x422ca8
mov eax, str.Windows_7__Ultimate_
jmp 0x422cea
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00422390
test eax, eax
je 0x422cc0
mov eax, str.Windows_Server_2008_R2
jmp 0x422cea
cmp ecx, 4
jne 0x422ce5
cmp dword [ebp - 0xb20], 6
jne 0x422ce5
cmp dword [ebp - 0xb1c], 1
jne 0x422ce5
cmp dword [ebp - 0xa7c], 3
mov eax, str.Windows_Server_2008_R2__Domain_Controller_
je 0x422cea
mov eax, str.Windows_7
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
mov edx, dword [ebp - 0xb14]
add esp, 0xc
mov ebx, dword [ebp - 0xa88]
mov eax, dword [ebp - 0xb1c]
mov ecx, dword [ebp - 0xb20]
cmp edx, 4
jne 0x4232dc
cmp ecx, 6
jne 0x422d39
cmp eax, 1
jne 0x422d39
test bl, 0x20
je 0x422d39
push str.___Datacenter_Edition_
jmp 0x422539
cmp edx, 4
jne 0x4232dc
cmp ecx, 6
jne 0x422d64
cmp eax, 1
jne 0x422d64
cmp dword [ebp - 0xa7c], 2
jne 0x422d64
test bl, 2
je 0x422d64
push str.___Enterprise_Edition_
jmp 0x422539
cmp edx, 4
jne 0x4232dc
cmp ecx, 6
jne 0x422d85
cmp eax, 1
jne 0x422d85
test bl, bl
jns 0x422d85
push str.___Web_Edition_
jmp 0x422539
cmp edx, 4
jne 0x4232dc
cmp ecx, 6
jne 0x4232dc
cmp eax, 1
jmp 0x422efe
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.004220a0
test eax, eax
je 0x422f1b
mov edx, dword [ebp - 0xa84]
test edx, 0x20000
je 0x422dcc
mov eax, str.Windows_8_Thin_PC
jmp 0x422e50
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00422140
test eax, eax
je 0x422de4
mov eax, str.Windows_8_RT
jmp 0x422e50
mov eax, dword [ebp - 0xa88]
test eax, 0x10000
je 0x422df8
mov eax, str.Windows_8__Starter_Edition_
jmp 0x422e50
test dl, dl
jns 0x422e03
mov eax, str.Windows_8__Pro_
jmp 0x422e50
test al, 2
je 0x422e0e
mov eax, str.Windows_8__Enterprise_
jmp 0x422e50
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.004223d0
test eax, eax
je 0x422e26
mov eax, str.Windows_Server_2012
jmp 0x422e50
cmp ecx, 4
jne 0x422e4b
cmp dword [ebp - 0xb20], 6
jne 0x422e4b
cmp dword [ebp - 0xb1c], 2
jne 0x422e4b
cmp dword [ebp - 0xa7c], 3
mov eax, str.Windows_Server_2012__Domain_Controller_
je 0x422e50
mov eax, str.Windows_8
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
mov edx, dword [ebp - 0xb14]
add esp, 0xc
mov ebx, dword [ebp - 0xa88]
mov eax, dword [ebp - 0xb1c]
mov ecx, dword [ebp - 0xb20]
cmp edx, 4
jne 0x4232dc
cmp ecx, 6
jne 0x422e9f
cmp eax, 2
jne 0x422e9f
test bl, 0x20
je 0x422e9f
push str.___Datacenter_Edition_
jmp 0x422539
cmp edx, 4
jne 0x4232dc
cmp ecx, 6
jne 0x422ec8
cmp eax, 2
jne 0x422ec8
cmp dword [ebp - 0xa7c], eax
jne 0x422ec8
test al, bl
je 0x422ec8
push str.___Enterprise_Edition_
jmp 0x422539
cmp edx, 4
jne 0x4232dc
cmp ecx, 6
jne 0x422ee9
cmp eax, 2
jne 0x422ee9
test bl, bl
jns 0x422ee9
push str.___Web_Edition_
jmp 0x422539
cmp edx, 4
jne 0x4232dc
cmp ecx, 6
jne 0x4232dc
cmp eax, 2
jne 0x4232dc
test byte [ebp - 0xa84], 0x20
je 0x4232dc
push str.___Standard_Edition_
jmp 0x422539
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.004220d0
test eax, eax
je 0x4230e6
mov edx, dword [ebp - 0xa84]
test edx, 0x20000
je 0x422f48
mov eax, str.Windows_8.1_Thin_PC
jmp 0x422fcc
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00422140
test eax, eax
je 0x422f60
mov eax, str.Windows_8.1_RT
jmp 0x422fcc
mov eax, dword [ebp - 0xa88]
test eax, 0x10000
je 0x422f74
mov eax, str.Windows_8.1__Starter_Edition_
jmp 0x422fcc
test dl, dl
jns 0x422f7f
mov eax, str.Windows_8.1__Pro_
jmp 0x422fcc
test al, 2
je 0x422f8a
mov eax, str.Windows_8.1__Enterprise_
jmp 0x422fcc
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00422410
test eax, eax
je 0x422fa2
mov eax, str.Windows_Server_2012_R2
jmp 0x422fcc
cmp ecx, 4
jne 0x422fc7
cmp dword [ebp - 0xb20], 6
jne 0x422fc7
cmp dword [ebp - 0xb1c], 3
jne 0x422fc7
cmp dword [ebp - 0xa7c], 3
mov eax, str.Windows_Server_2012_R2__Domain_Controller_
je 0x422fcc
mov eax, str.Windows_8.1
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
mov eax, dword [ebp - 0xa84]
add esp, 0xc
test eax, 0x800000
je 0x42300d
push str.___with_Bing___CoreConnected_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
mov eax, dword [ebp - 0xa84]
add esp, 0xc
test eax, 0x400000
je 0x423033
push str.___Update_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
mov eax, dword [ebp - 0xa84]
add esp, 0xc
mov esi, dword [ebp - 0xb14]
mov ebx, dword [ebp - 0xa88]
mov ecx, dword [ebp - 0xb1c]
mov edx, dword [ebp - 0xb20]
cmp esi, 4
jne 0x4232dc
cmp edx, 6
jne 0x42306d
cmp ecx, 3
jne 0x42306d
test bl, 0x20
je 0x42306d
push str.___Datacenter_Edition_
jmp 0x422539
cmp esi, 4
jne 0x4232dc
cmp edx, 6
jne 0x423098
cmp ecx, 3
jne 0x423098
cmp dword [ebp - 0xa7c], 2
jne 0x423098
test bl, 2
je 0x423098
push str.___Enterprise_Edition_
jmp 0x422539
cmp esi, 4
jne 0x4232dc
cmp edx, 6
jne 0x4230b9
cmp ecx, 3
jne 0x4230b9
test bl, bl
jns 0x4230b9
push str.___Web_Edition_
jmp 0x422539
cmp esi, 4
jne 0x4232dc
cmp edx, 6
jne 0x4232dc
cmp ecx, 3
jne 0x4232dc
test al, 0x20
je 0x4232dc
push str.___Standard_Edition_
jmp 0x422539
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00422100
test eax, eax
je 0x4232dc
mov edx, dword [ebp - 0xa84]
test edx, 0x20000
je 0x423113
mov eax, str.Windows_10_Thin_PC
jmp 0x4231c8
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00422140
test eax, eax
je 0x42312e
mov eax, str.Windows_10_RT
jmp 0x4231c8
mov eax, dword [ebp - 0xa88]
test eax, 0x10000
je 0x423145
mov eax, str.Windows_10__Starter_Edition_
jmp 0x4231c8
test edx, 0x4000000
je 0x423154
mov eax, str.Windows_10__Home_
jmp 0x4231c8
test dl, dl
jns 0x42315f
mov eax, str.Windows_10__Pro_
jmp 0x4231c8
test al, 2
je 0x42316a
mov eax, str.Windows_10__Enterprise_
jmp 0x4231c8
test edx, edx
jns 0x423175
mov eax, str.Windows_10_Nano_Server
jmp 0x4231c8
test byte [ebp - 0xa80], 2
je 0x423185
mov eax, str.Windows_10_ARM64_Server
jmp 0x4231c8
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00422450
test eax, eax
je 0x42319d
mov eax, str.Windows_Server_2016
jmp 0x4231c8
cmp ecx, 4
jne 0x4231c3
cmp dword [ebp - 0xb20], 6
ja 0x4231b5
jne 0x4231c3
cmp dword [ebp - 0xb1c], ecx
jb 0x4231c3
cmp dword [ebp - 0xa7c], 3
mov eax, str.Windows_Server_2016__Domain_Controller_
je 0x4231c8
mov eax, str.Windows_10
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
mov ebx, dword [ebp - 0xa84]
add esp, 0xc
test ebx, 0x800000
je 0x42320a
push str.___with_Bing___CoreConnected_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
mov ebx, dword [ebp - 0xa84]
add esp, 0xc
mov edx, dword [ebp - 0xb14]
mov ecx, dword [ebp - 0xb1c]
mov eax, dword [ebp - 0xb20]
cmp edx, 4
jne 0x4232dc
cmp eax, 6
ja 0x423231
jne 0x423244
cmp ecx, 4
jb 0x423244
test byte [ebp - 0xa88], 0x20
je 0x423244
push str.___Datacenter_Edition_
jmp 0x422539
cmp edx, 4
jne 0x4232dc
cmp eax, 6
ja 0x423258
jne 0x423274
cmp ecx, edx
jb 0x423274
cmp dword [ebp - 0xa7c], 2
jne 0x423274
test byte [ebp - 0xa88], 2
je 0x423274
push str.___Enterprise_Edition_
jmp 0x422539
cmp edx, 4
jne 0x4232dc
cmp eax, 6
ja 0x423284
jne 0x423297
cmp ecx, edx
jb 0x423297
test byte [ebp - 0xa88], 0x80
je 0x423297
push str.___Web_Edition_
jmp 0x422539
cmp edx, 4
jne 0x4232dc
cmp eax, 6
ja 0x4232a7
jne 0x4232dc
cmp ecx, edx
jb 0x4232dc
test bl, 0x20
je 0x4232dc
push str.___Standard_Edition_
jmp 0x422539
push str.Unknown_OS
lea eax, [ebp - 0x70]
push eax
call fcn.00423df0
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0x14
mov eax, dword [ebp - 0xb10]
cmp eax, 0xa
ja case.0x4232e7.0
jmp dword [eax*4 + 0x423d98]
mov eax, str.___x86_32_Processor_
jmp 0x423339
mov eax, str.___MIPS_Processor_
jmp 0x423339
mov eax, str.___Alpha_Processor_
jmp 0x423339
mov eax, str.___PPC_Processor_
jmp 0x423339
mov eax, str.___IA64_Itanium_2__Processor_
jmp 0x423339
mov eax, str.___x86_64_Processor_
jmp 0x423339
mov eax, str.___Alpha64_Processor_
jmp 0x423339
mov eax, str.___MSIL_Processor_
jmp 0x423339
mov eax, str.___ARM_Processor_
jmp 0x423339
mov eax, str.___SHX_Processor_
jmp 0x423339
mov eax, str.___Unknown_Processor_
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
lea eax, [ebp - 0x70]
push dword [ebp - 0xb20]
push str._v_d.
push eax
call fcn.00423df0
add esp, 0xc
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
mov esi, dword [ebp - 0xb1c]
mov eax, 0xcccccccd
mul esi
mov eax, esi
add esp, 0xc
shr edx, 3
lea ecx, [edx + edx*4]
add ecx, ecx
sub eax, ecx
lea eax, [ebp - 0x70]
je 0x4233a8
push esi
cmp esi, 9
jbe 0x4233a9
push str._02d
jmp 0x4233ae
push edx
push str._01d
push eax
call fcn.00423df0
add esp, 0xc
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
mov eax, dword [ebp - 0xb18]
add esp, 0xc
test eax, eax
je 0x423403
push eax
lea eax, [ebp - 0x70]
push str._Build:_d
push eax
call fcn.00423df0
add esp, 0xc
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
push 0x58f2c8
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
mov cx, word [ebp - 0xa8c]
add esp, 0xc
mov ax, word [ebp - 0xa8a]
test cx, cx
je 0x423511
test ax, ax
je 0x4234e5
mov esi, dword [ebp - 0xb14]
mov ebx, dword [ebp - 0xa88]
mov edi, dword [ebp - 0xb1c]
mov edx, dword [ebp - 0xb20]
cmp esi, 4
jne 0x4234ca
cmp edx, 4
ja 0x42347d
cmp cx, 6
jne 0x423482
cmp ax, 1
jne 0x423482
lea eax, [ebp - 0x70]
push str.Service_Pack:_6a
push eax
call fcn.00423df0
add esp, 8
jmp 0x4234fa
cmp esi, 4
jne 0x4234ca
cmp edx, 5
jne 0x423490
test edi, edi
je 0x423490
test bl, 0x40
jne 0x4234ac
cmp esi, 4
jne 0x4234ca
cmp edx, 5
jne 0x4234ca
test edi, edi
je 0x4234ca
cmp dword [ebp - 0xa7c], 1
jne 0x4234ca
test bl, 0x40
jne 0x4234ca
cmp cx, 1
jne 0x4234ca
cmp ax, cx
jne 0x4234ca
lea eax, [ebp - 0x70]
push str.Service_Pack:_1a
push eax
call fcn.00423df0
add esp, 8
jmp 0x4234fa
movzx eax, ax
push eax
movzx eax, cx
push eax
lea eax, [ebp - 0x70]
push str.Service_Pack:_d._d
push eax
call fcn.00423df0
add esp, 0x10
jmp 0x4234fa
movzx eax, cx
push eax
lea eax, [ebp - 0x70]
push str.Service_Pack:_d
push eax
call fcn.00423df0
add esp, 0xc
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
jmp 0x423528
test ax, ax
je 0x42352b
movzx eax, ax
push eax
lea eax, [ebp - 0x70]
push str.Service_Pack:0._d
push eax
call fcn.00423df0
add esp, 0xc
mov ecx, dword [ebp - 0xa88]
mov eax, ecx
shr eax, 0x13
and eax, 1
je 0x423547
test cl, 2
je 0x423547
push str.___Storage_Server_Enterprise_
jmp 0x423597
test byte [ebp - 0xa84], 8
je 0x423557
push str.___Storage_Server_Express_
jmp 0x423597
test eax, eax
je 0x42356b
test byte [ebp - 0xa84], 0x20
je 0x42356b
push str.___Storage_Server_Standard_
jmp 0x423597
test byte [ebp - 0xa84], 0x10
je 0x42357b
push str.___Storage_Server_Workgroup_
jmp 0x423597
test dword [ebp - 0xa84], 0x1000
je 0x42358e
push str.___Storage_Server_Essentials_
jmp 0x423597
test eax, eax
je 0x4235ab
push str.___Storage_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa84], 0x800
je 0x4235be
push str.___Home_Server_Premium_Edition_
jmp 0x4235cf
test dword [ebp - 0xa88], 0x10000000
je 0x4235e3
push str.___Home_Server_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test byte [ebp - 0xa88], 0x10
je 0x423605
push str.___Terminal_Services_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa88], 0x100
je 0x42362a
push str.___Embedded_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa88], 0x200
je 0x42364f
push str.___Terminal_Services_in_Remote_Admin_Mode_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
push str.KERNEL32.DLL
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test eax, eax
je 0x4236b0
push str.IsWow64Process
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x4236b0
lea eax, [ebp - 0xbc0]
mov dword [ebp - 0xbc0], 0
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call esi
test eax, eax
je 0x4236b0
cmp dword [ebp - 0xbc0], 0
je 0x4236b0
push str.___64_Bit_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa88], 0x4000
je 0x4236d5
push str.___Media_Center_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa88], 0x8000
je 0x4236fa
push str.___Tablet_PC_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa88], 0x40000
je 0x42371f
push str.___Compute_Cluster_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa84], 0x100
je 0x423744
push str.___Foundation_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa84], 0x10000
je 0x423757
push str.___MultiPoint_Premium_Edition_
jmp 0x423768
test dword [ebp - 0xa84], 0x200
je 0x42377c
push str.___MultiPoint_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa88], 0x100000
je 0x4237a1
push str.___Security_Appliance_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa88], 0x200000
je 0x4237c6
push str.___BackOffice_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa88], 0x800000
je 0x4237eb
push str.___N_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test byte [ebp - 0xa84], 0x40
je 0x42380d
push str.___E_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa88], 0x4000000
je 0x423832
push str.___Hyper_V_Tools_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa84], 0x400
je 0x423857
push str.___Hyper_V_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa88], 0x20000000
je 0x42387c
push str.___Server_Core_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa88], 0x400
je 0x4238a1
push str.___Uniprocessor_Free_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa88], 0x800
je 0x4238c6
push str.___Uniprocessor_Checked_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa88], 0x1000
je 0x4238eb
push str.___Multiprocessor_Free_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa88], 0x2000
je 0x423910
push str.___Multiprocessor_Checked_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa88], 0x40000000
je 0x423935
push str.___Windows_Essential_Business_Server_Manangement_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa88], 0x80000000
je 0x42395a
push str.___Windows_Essential_Business_Server_Messaging_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test byte [ebp - 0xa84], 1
je 0x42397c
push str.___Windows_Essential_Business_Server_Security_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test byte [ebp - 0xa84], 2
je 0x42399e
push str.___Cluster_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test byte [ebp - 0xa88], 1
je 0x4239c0
push str.___Small_Business_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test byte [ebp - 0xa84], 4
je 0x4239e2
push str.___Small_Business_Server_Premium_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa84], 0x2000
je 0x423a07
push str.___Prerelease_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa84], 0x4000
je 0x423a2c
push str.___Evaluation_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa84], 0x40000
je 0x423a51
push str.___Automotive_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa84], 0x80000
je 0x423a76
push str.___China_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa84], 0x100000
je 0x423a9b
push str.___Single_Language_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa84], 0x200000
je 0x423ac0
push str.___Win32s_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa84], 0x1000000
je 0x423ae5
push str.___Education_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa84], 0x2000000
je 0x423b0a
push str.___Industry_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa84], 0x8000000
je 0x423b2f
push str.___Student_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa84], 0x10000000
je 0x423b54
push str.___Mobile_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa84], 0x20000000
je 0x423b79
push str.___IoT_Core_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test byte [ebp - 0xa80], 0x20
je 0x423b9b
push str.___Cloud_Host_Infrastructure_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test dword [ebp - 0xa84], 0x40000000
je 0x423bc0
push str.___S_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test byte [ebp - 0xa80], 1
je 0x423be2
push str.___Cloud_Storage_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test byte [ebp - 0xa80], 4
je 0x423c04
push str.___PPI_Pro_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test byte [ebp - 0xa80], 8
je 0x423c26
push str.___Connected_Car_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
test byte [ebp - 0xa80], 0x10
je 0x423c48
push str.___Handheld_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
add esp, 0xc
push 0x58f2c8
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.005173c8
mov ebx, dword [ebp - 0xbc4]
add esp, 0xc
jmp 0x423c77
push str.Failed_in_call_to_GetOSVersion_n
push eax
call fcn.00423dd0
add esp, 8
push 0x560f28
push 0x400
push ebx
mov dword [ebp - 0xbc8], 0x101
call fcn.0051736e
add esp, 0xc
lea eax, [ebp - 0x978]
push 0x101
push 0
push eax
call fcn.00513330
add esp, 0xc
lea eax, [ebp - 0xbc8]
push eax
lea eax, [ebp - 0x978]
push eax
call dword [sym.imp.KERNEL32.dll_GetComputerNameA]
test eax, eax
je 0x423cea
push str._nComputerName_:
push 0x400
push ebx
call fcn.005173c8
add esp, 0xc
lea eax, [ebp - 0x978]
push eax
push 0x400
push ebx
call fcn.005173c8
add esp, 0xc
push 0xff
lea eax, [ebp - 0xa78]
push eax
call dword [sym.imp.WS2_32.dll_gethostname]
test eax, eax
jne 0x423d46
lea eax, [ebp - 0xa78]
push eax
call dword [sym.imp.WS2_32.dll_gethostbyname]
test eax, eax
je 0x423d46
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
push dword [eax]
call dword [sym.imp.WS2_32.dll_inet_ntoa]
mov esi, eax
test esi, esi
je 0x423d46
push str._nIP_:
push 0x400
push ebx
call fcn.005173c8
add esp, 0xc
push esi
push 0x400
push ebx
call fcn.005173c8
add esp, 0xc
push 0x58f2c8
push 0x400
push ebx
call fcn.005173c8
add esp, 0xc
lea eax, [ebp - 0x870]
push eax
push 0x400
push ebx
call fcn.005173c8
mov ecx, dword [ebp - 4]
add esp, 0xc
xor ecx, ebp
xor eax, eax
pop edi
pop esi
pop ebx
call fcn.00511339
mov esp, ebp
pop ebp
ret