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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xbcc
mov eax, dword [0x5d7008]
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.0053f2b0
add esp, 0xc
lea eax, [ebp - 0xbb8]
lea ecx, [ebp - 0xbb9]
push eax
call fcn.0041fee0
test eax, eax
lea eax, [ebp - 0x870]
je 0x4234e9
push 0x584fd8
push eax
call fcn.00423650
add esp, 8
lea eax, [ebp - 0x870]
cmp dword [ebp - 0xb14], 5
push str.OS:
push 0x800
push eax
jne 0x421d93
call fcn.005417f5
jmp 0x421d98
call fcn.0054184f
mov ecx, dword [ebp - 0xb14]
add esp, 0xc
lea eax, [ecx - 1]
cmp eax, 4
ja case.default.0x421dad
jmp dword [eax*4 + 0x423604]
push 0x5b99cc
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
jmp 0x422b5c
push str.Windows
jmp 0x421db9
mov eax, dword [ebp - 0xb20]
cmp ecx, 5
jne 0x421e09
cmp eax, 7
jb 0x421df1
mov eax, str.Windows_Embedded_Compact
push eax
jmp 0x421db9
cmp ecx, 5
jne 0x421e09
cmp eax, 4
jne 0x421e09
cmp dword [ebp - 0xb1c], 0
mov eax, str.Windows_CE_.NET
ja 0x421e0e
mov eax, str.Windows_CE
push eax
jmp 0x421db9
mov edi, dword [ebp - 0xb18]
mov esi, dword [ebp - 0xb1c]
mov edx, dword [ebp - 0xb20]
cmp ecx, 3
jne 0x421f3e
cmp edx, 4
jne 0x421e48
test esi, esi
jne 0x421e48
cmp edi, 0x3b6
jne 0x421e48
mov eax, str.Windows_95
push eax
jmp 0x422b3b
cmp ecx, 3
jne 0x421f3e
cmp edx, 4
jne 0x421e6e
lea eax, [edi - 0x3b7]
cmp eax, 0x81
ja 0x421e6e
mov eax, str.Windows_95_SP1
push eax
jmp 0x422b3b
cmp ecx, 3
jne 0x421f3e
cmp edx, 4
jne 0x421e99
cmp esi, 0xa
jae 0x421e99
lea eax, [edi - 0x439]
cmp eax, 0x84
ja 0x421e99
mov eax, str.Windows_95_B__aka_OSR2_
push eax
jmp 0x422b3b
cmp ecx, 3
jne 0x421f3e
cmp edx, 4
jne 0x421ebf
cmp esi, 0xa
jae 0x421ebf
cmp edi, 0x4be
jb 0x421ebf
mov eax, str.Windows_95_C__aka_OSR2.5_
push eax
jmp 0x422b3b
cmp ecx, 3
jne 0x421f3e
cmp edx, 4
jne 0x421ee1
cmp esi, 0xa
jne 0x421ee1
cmp edi, 0x7ce
jne 0x421ee1
mov eax, str.Windows_98
push eax
jmp 0x422b3b
cmp ecx, 3
jne 0x421f3e
cmp edx, 4
jne 0x421f08
cmp esi, 0xa
jne 0x421f08
lea eax, [edi - 0x7cf]
cmp eax, 0xb7
ja 0x421f08
mov eax, str.Windows_98_SP1
push eax
jmp 0x422b3b
cmp ecx, 3
jne 0x421f3e
cmp edx, 4
jne 0x421f2a
cmp esi, 0xa
jne 0x421f2a
cmp edi, 0x887
jb 0x421f2a
mov eax, str.Windows_98_Second_Edition
push eax
jmp 0x422b3b
cmp ecx, 3
jne 0x421f3e
cmp edx, 4
jne 0x421f3e
mov eax, str.Windows_Millenium_Edition
cmp esi, 0x5a
je 0x421f43
mov eax, str.Windows___
push eax
jmp 0x422b3b
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00421a70
test eax, eax
je 0x422065
push str.Windows_NT
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
mov ecx, dword [ebp - 0xb14]
add esp, 0xc
mov edx, dword [ebp - 0xa7c]
mov eax, dword [ebp - 0xb20]
cmp ecx, 4
jne 0x422b5c
cmp eax, 4
ja 0x421fa3
cmp edx, 1
jne 0x421fa3
push str.__Workstation_
jmp 0x421ffd
cmp ecx, 4
jne 0x422b5c
cmp eax, ecx
ja 0x421fbc
cmp edx, 2
jne 0x421fbc
push str.__Server_
jmp 0x421ffd
cmp ecx, 4
jne 0x422b5c
cmp eax, ecx
ja 0x421fdd
cmp edx, 3
jne 0x421fdd
test byte [ebp - 0xa88], cl
je 0x421fdd
push str.__Primary_Domain_Controller_
jmp 0x421ffd
cmp ecx, 4
jne 0x422b5c
cmp eax, ecx
ja 0x42201d
cmp edx, 3
jne 0x42201d
test byte [ebp - 0xa88], 8
je 0x42201d
push str.__Backup_Domain_Controller_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
mov eax, dword [ebp - 0xb20]
add esp, 0xc
mov ecx, dword [ebp - 0xb14]
cmp ecx, 4
jne 0x422b5c
cmp eax, ecx
ja 0x42203d
test byte [ebp - 0xa88], 0x20
je 0x42203d
push str.___Datacenter_
jmp 0x421db9
cmp ecx, 4
jne 0x422b5c
cmp eax, ecx
ja 0x422b5c
test byte [ebp - 0xa88], 2
je 0x422b5c
push str.___Enterprise_
jmp 0x421db9
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00421860
test eax, eax
je 0x422152
test byte [ebp - 0xa84], 0x80
je 0x42208a
mov eax, str.Windows_2000__Professional_
jmp 0x4220cc
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00421aa0
test eax, eax
je 0x4220a2
mov eax, str.Windows_2000_Server
jmp 0x4220cc
cmp ecx, 4
jne 0x4220c7
cmp dword [ebp - 0xb20], 5
jne 0x4220c7
cmp dword [ebp - 0xb1c], 0
jne 0x4220c7
cmp dword [ebp - 0xa7c], 3
mov eax, str.Windows_2000__Domain_Controller_
je 0x4220cc
mov eax, str.Windows_2000
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
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 0x422b5c
cmp edx, 5
jne 0x422119
test ecx, ecx
jne 0x422119
test al, 0x20
je 0x422119
push str.___Datacenter_
jmp 0x421db9
cmp esi, 4
jne 0x422b5c
cmp edx, 5
jne 0x422b5c
test ecx, ecx
jne 0x422b5c
cmp dword [ebp - 0xa7c], 2
jne 0x422b5c
test al, 2
je 0x422b5c
push str.___Advanced_Server_
jmp 0x421db9
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00421890
test eax, eax
je 0x422342
mov edx, dword [ebp - 0xa88]
test edx, 0x10000
je 0x42217f
mov eax, str.Windows_XP__Starter_Edition_
jmp 0x42222a
test dl, 0x40
je 0x42218e
mov eax, str.Windows_XP__Personal_
jmp 0x42222a
test byte [ebp - 0xa84], 0x80
je 0x4221a1
mov eax, str.Windows_XP__Professional_
jmp 0x42222a
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00421ae0
test eax, eax
je 0x4221b9
mov eax, str.Windows_Server_2003
jmp 0x42222a
mov esi, dword [ebp - 0xa7c]
mov edi, dword [ebp - 0xb1c]
mov ebx, dword [ebp - 0xb20]
cmp ecx, 4
jne 0x4221ed
cmp ebx, 5
jne 0x4221ed
test edi, edi
je 0x4221ed
cmp esi, 3
jne 0x4221ed
test edx, 0x20000
jne 0x4221ed
mov eax, str.Windows_Server_2003__Domain_Controller_
jmp 0x42222a
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00421b80
test eax, eax
je 0x422205
mov eax, str.Windows_Server_2003_R2
jmp 0x42222a
cmp ecx, 4
jne 0x422225
cmp ebx, 5
jne 0x422225
test edi, edi
je 0x422225
cmp esi, 3
jne 0x422225
mov eax, str.Windows_Server_2003_R2__Domain_Controller_
test edx, 0x20000
jne 0x42222a
mov eax, str.Windows_XP
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
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 0x422297
cmp esi, 5
jne 0x422272
test edx, edx
je 0x422272
test cl, 0x20
je 0x422272
test ecx, 0x20000
je 0x42228d
cmp edi, 4
jne 0x422297
cmp esi, 5
jne 0x422297
test edx, edx
je 0x422297
test cl, 0x20
je 0x422297
test ecx, 0x20000
je 0x422297
push str.___Datacenter_Edition_
jmp 0x421db9
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00421b30
test eax, eax
jne 0x42290e
cmp edi, 4
jne 0x4222ed
cmp esi, 5
jne 0x4222c6
test edx, edx
je 0x4222c6
test cl, cl
jns 0x4222c6
test ecx, 0x20000
je 0x4222e0
cmp edi, 4
jne 0x4222ed
cmp esi, 5
jne 0x4222ea
test edx, edx
je 0x4222ea
test cl, cl
jns 0x4222ea
test ecx, 0x20000
je 0x4222ea
push str.___Web_Edition_
jmp 0x421db9
cmp edi, 4
mov eax, dword [ebp - 0xa84]
jne 0x42230a
cmp esi, 5
jne 0x42230a
test edx, edx
je 0x42230a
test al, 0x20
je 0x42230a
test ecx, 0x20000
je 0x422338
cmp edi, 4
jne 0x422b5c
cmp esi, 5
jne 0x422b5c
test edx, edx
je 0x422b5c
test al, 0x20
je 0x422b5c
test ecx, 0x20000
je 0x422b5c
push str.___Standard_Edition_
jmp 0x421db9
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.004218c0
test eax, eax
je 0x4224a4
mov eax, dword [ebp - 0xa88]
test eax, 0x10000
je 0x42236e
mov eax, str.Windows_Vista__Starter_Edition_
jmp 0x4223f3
test eax, 0x1000000
je 0x42237c
mov eax, str.Windows_Vista__Home_Basic_
jmp 0x4223f3
test eax, 0x2000000
je 0x42238a
mov eax, str.Windows_Vista__Home_Premium_
jmp 0x4223f3
test eax, 0x8000000
je 0x422398
mov eax, str.Windows_Vista__Business_
jmp 0x4223f3
test al, 2
je 0x4223a3
mov eax, str.Windows_Vista__Enterprise_
jmp 0x4223f3
test eax, 0x400000
je 0x4223b1
mov eax, str.Windows_Vista__Ultimate_
jmp 0x4223f3
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00421bd0
test eax, eax
je 0x4223c9
mov eax, str.Windows_Server_2008
jmp 0x4223f3
cmp ecx, 4
jne 0x4223ee
cmp dword [ebp - 0xb20], 6
jne 0x4223ee
cmp dword [ebp - 0xb1c], 0
jne 0x4223ee
cmp dword [ebp - 0xa7c], 3
mov eax, str.Windows_Server_2008__Domain_Controller_
je 0x4223f3
mov eax, str.Windows_Vista
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
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 0x422b5c
cmp ecx, 6
jne 0x422441
test eax, eax
jne 0x422441
test bl, 0x20
je 0x422441
push str.___Datacenter_Edition_
jmp 0x421db9
cmp edx, 4
jne 0x422b5c
cmp ecx, 6
jne 0x42246b
test eax, eax
jne 0x42246b
cmp dword [ebp - 0xa7c], 2
jne 0x42246b
test bl, 2
je 0x42246b
push str.___Enterprise_Edition_
jmp 0x421db9
cmp edx, 4
jne 0x422b5c
cmp ecx, 6
jne 0x42248b
test eax, eax
jne 0x42248b
test bl, bl
jns 0x42248b
push str.___Web_Edition_
jmp 0x421db9
cmp edx, 4
jne 0x422b5c
cmp ecx, 6
jne 0x422b5c
test eax, eax
jmp 0x42277e
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.004218f0
test eax, eax
je 0x42261f
mov edx, dword [ebp - 0xa84]
test edx, 0x20000
je 0x4224d1
mov eax, str.Windows_7_Thin_PC
jmp 0x42256a
mov eax, dword [ebp - 0xa88]
test eax, 0x10000
je 0x4224e8
mov eax, str.Windows_7__Starter_Edition_
jmp 0x42256a
test eax, 0x1000000
je 0x4224f6
mov eax, str.Windows_7__Home_Basic_
jmp 0x42256a
test eax, 0x2000000
je 0x422504
mov eax, str.Windows_7__Home_Premium_
jmp 0x42256a
test dl, dl
jns 0x42250f
mov eax, str.Windows_7__Professional_
jmp 0x42256a
test al, 2
je 0x42251a
mov eax, str.Windows_7__Enterprise_
jmp 0x42256a
test eax, 0x400000
je 0x422528
mov eax, str.Windows_7__Ultimate_
jmp 0x42256a
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00421c10
test eax, eax
je 0x422540
mov eax, str.Windows_Server_2008_R2
jmp 0x42256a
cmp ecx, 4
jne 0x422565
cmp dword [ebp - 0xb20], 6
jne 0x422565
cmp dword [ebp - 0xb1c], 1
jne 0x422565
cmp dword [ebp - 0xa7c], 3
mov eax, str.Windows_Server_2008_R2__Domain_Controller_
je 0x42256a
mov eax, str.Windows_7
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
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 0x422b5c
cmp ecx, 6
jne 0x4225b9
cmp eax, 1
jne 0x4225b9
test bl, 0x20
je 0x4225b9
push str.___Datacenter_Edition_
jmp 0x421db9
cmp edx, 4
jne 0x422b5c
cmp ecx, 6
jne 0x4225e4
cmp eax, 1
jne 0x4225e4
cmp dword [ebp - 0xa7c], 2
jne 0x4225e4
test bl, 2
je 0x4225e4
push str.___Enterprise_Edition_
jmp 0x421db9
cmp edx, 4
jne 0x422b5c
cmp ecx, 6
jne 0x422605
cmp eax, 1
jne 0x422605
test bl, bl
jns 0x422605
push str.___Web_Edition_
jmp 0x421db9
cmp edx, 4
jne 0x422b5c
cmp ecx, 6
jne 0x422b5c
cmp eax, 1
jmp 0x42277e
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00421920
test eax, eax
je 0x42279b
mov edx, dword [ebp - 0xa84]
test edx, 0x20000
je 0x42264c
mov eax, str.Windows_8_Thin_PC
jmp 0x4226d0
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.004219c0
test eax, eax
je 0x422664
mov eax, str.Windows_8_RT
jmp 0x4226d0
mov eax, dword [ebp - 0xa88]
test eax, 0x10000
je 0x422678
mov eax, str.Windows_8__Starter_Edition_
jmp 0x4226d0
test dl, dl
jns 0x422683
mov eax, str.Windows_8__Pro_
jmp 0x4226d0
test al, 2
je 0x42268e
mov eax, str.Windows_8__Enterprise_
jmp 0x4226d0
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00421c50
test eax, eax
je 0x4226a6
mov eax, str.Windows_Server_2012
jmp 0x4226d0
cmp ecx, 4
jne 0x4226cb
cmp dword [ebp - 0xb20], 6
jne 0x4226cb
cmp dword [ebp - 0xb1c], 2
jne 0x4226cb
cmp dword [ebp - 0xa7c], 3
mov eax, str.Windows_Server_2012__Domain_Controller_
je 0x4226d0
mov eax, str.Windows_8
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
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 0x422b5c
cmp ecx, 6
jne 0x42271f
cmp eax, 2
jne 0x42271f
test bl, 0x20
je 0x42271f
push str.___Datacenter_Edition_
jmp 0x421db9
cmp edx, 4
jne 0x422b5c
cmp ecx, 6
jne 0x422748
cmp eax, 2
jne 0x422748
cmp dword [ebp - 0xa7c], eax
jne 0x422748
test al, bl
je 0x422748
push str.___Enterprise_Edition_
jmp 0x421db9
cmp edx, 4
jne 0x422b5c
cmp ecx, 6
jne 0x422769
cmp eax, 2
jne 0x422769
test bl, bl
jns 0x422769
push str.___Web_Edition_
jmp 0x421db9
cmp edx, 4
jne 0x422b5c
cmp ecx, 6
jne 0x422b5c
cmp eax, 2
jne 0x422b5c
test byte [ebp - 0xa84], 0x20
je 0x422b5c
push str.___Standard_Edition_
jmp 0x421db9
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00421950
test eax, eax
je 0x422966
mov edx, dword [ebp - 0xa84]
test edx, 0x20000
je 0x4227c8
mov eax, str.Windows_8.1_Thin_PC
jmp 0x42284c
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.004219c0
test eax, eax
je 0x4227e0
mov eax, str.Windows_8.1_RT
jmp 0x42284c
mov eax, dword [ebp - 0xa88]
test eax, 0x10000
je 0x4227f4
mov eax, str.Windows_8.1__Starter_Edition_
jmp 0x42284c
test dl, dl
jns 0x4227ff
mov eax, str.Windows_8.1__Pro_
jmp 0x42284c
test al, 2
je 0x42280a
mov eax, str.Windows_8.1__Enterprise_
jmp 0x42284c
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00421c90
test eax, eax
je 0x422822
mov eax, str.Windows_Server_2012_R2
jmp 0x42284c
cmp ecx, 4
jne 0x422847
cmp dword [ebp - 0xb20], 6
jne 0x422847
cmp dword [ebp - 0xb1c], 3
jne 0x422847
cmp dword [ebp - 0xa7c], 3
mov eax, str.Windows_Server_2012_R2__Domain_Controller_
je 0x42284c
mov eax, str.Windows_8.1
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
mov eax, dword [ebp - 0xa84]
add esp, 0xc
test eax, 0x800000
je 0x42288d
push str.___with_Bing___CoreConnected_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
mov eax, dword [ebp - 0xa84]
add esp, 0xc
test eax, 0x400000
je 0x4228b3
push str.___Update_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
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 0x422b5c
cmp edx, 6
jne 0x4228ed
cmp ecx, 3
jne 0x4228ed
test bl, 0x20
je 0x4228ed
push str.___Datacenter_Edition_
jmp 0x421db9
cmp esi, 4
jne 0x422b5c
cmp edx, 6
jne 0x422918
cmp ecx, 3
jne 0x422918
cmp dword [ebp - 0xa7c], 2
jne 0x422918
test bl, 2
je 0x422918
push str.___Enterprise_Edition_
jmp 0x421db9
cmp esi, 4
jne 0x422b5c
cmp edx, 6
jne 0x422939
cmp ecx, 3
jne 0x422939
test bl, bl
jns 0x422939
push str.___Web_Edition_
jmp 0x421db9
cmp esi, 4
jne 0x422b5c
cmp edx, 6
jne 0x422b5c
cmp ecx, 3
jne 0x422b5c
test al, 0x20
je 0x422b5c
push str.___Standard_Edition_
jmp 0x421db9
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00421980
test eax, eax
je 0x422b5c
mov edx, dword [ebp - 0xa84]
test edx, 0x20000
je 0x422993
mov eax, str.Windows_10_Thin_PC
jmp 0x422a48
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.004219c0
test eax, eax
je 0x4229ae
mov eax, str.Windows_10_RT
jmp 0x422a48
mov eax, dword [ebp - 0xa88]
test eax, 0x10000
je 0x4229c5
mov eax, str.Windows_10__Starter_Edition_
jmp 0x422a48
test edx, 0x4000000
je 0x4229d4
mov eax, str.Windows_10__Home_
jmp 0x422a48
test dl, dl
jns 0x4229df
mov eax, str.Windows_10__Pro_
jmp 0x422a48
test al, 2
je 0x4229ea
mov eax, str.Windows_10__Enterprise_
jmp 0x422a48
test edx, edx
jns 0x4229f5
mov eax, str.Windows_10_Nano_Server
jmp 0x422a48
test byte [ebp - 0xa80], 2
je 0x422a05
mov eax, str.Windows_10_ARM64_Server
jmp 0x422a48
push ecx
lea eax, [ebp - 0xbb8]
push eax
call fcn.00421cd0
test eax, eax
je 0x422a1d
mov eax, str.Windows_Server_2016
jmp 0x422a48
cmp ecx, 4
jne 0x422a43
cmp dword [ebp - 0xb20], 6
ja 0x422a35
jne 0x422a43
cmp dword [ebp - 0xb1c], ecx
jb 0x422a43
cmp dword [ebp - 0xa7c], 3
mov eax, str.Windows_Server_2016__Domain_Controller_
je 0x422a48
mov eax, str.Windows_10
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
mov ebx, dword [ebp - 0xa84]
add esp, 0xc
test ebx, 0x800000
je 0x422a8a
push str.___with_Bing___CoreConnected_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
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 0x422b5c
cmp eax, 6
ja 0x422ab1
jne 0x422ac4
cmp ecx, 4
jb 0x422ac4
test byte [ebp - 0xa88], 0x20
je 0x422ac4
push str.___Datacenter_Edition_
jmp 0x421db9
cmp edx, 4
jne 0x422b5c
cmp eax, 6
ja 0x422ad8
jne 0x422af4
cmp ecx, edx
jb 0x422af4
cmp dword [ebp - 0xa7c], 2
jne 0x422af4
test byte [ebp - 0xa88], 2
je 0x422af4
push str.___Enterprise_Edition_
jmp 0x421db9
cmp edx, 4
jne 0x422b5c
cmp eax, 6
ja 0x422b04
jne 0x422b17
cmp ecx, edx
jb 0x422b17
test byte [ebp - 0xa88], 0x80
je 0x422b17
push str.___Web_Edition_
jmp 0x421db9
cmp edx, 4
jne 0x422b5c
cmp eax, 6
ja 0x422b27
jne 0x422b5c
cmp ecx, edx
jb 0x422b5c
test bl, 0x20
je 0x422b5c
push str.___Standard_Edition_
jmp 0x421db9
push str.Unknown_OS
lea eax, [ebp - 0x70]
push eax
call fcn.00423670
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0x14
mov eax, dword [ebp - 0xb10]
cmp eax, 0xa
ja case.0x422b67.0
jmp dword [eax*4 + 0x423618]
mov eax, str.___x86_32_Processor_
jmp 0x422bb9
mov eax, str.___MIPS_Processor_
jmp 0x422bb9
mov eax, str.___Alpha_Processor_
jmp 0x422bb9
mov eax, str.___PPC_Processor_
jmp 0x422bb9
mov eax, str.___IA64_Itanium_2__Processor_
jmp 0x422bb9
mov eax, str.___x86_64_Processor_
jmp 0x422bb9
mov eax, str.___Alpha64_Processor_
jmp 0x422bb9
mov eax, str.___MSIL_Processor_
jmp 0x422bb9
mov eax, str.___ARM_Processor_
jmp 0x422bb9
mov eax, str.___SHX_Processor_
jmp 0x422bb9
mov eax, str.___Unknown_Processor_
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
lea eax, [ebp - 0x70]
push dword [ebp - 0xb20]
push str._v_d.
push eax
call fcn.00423670
add esp, 0xc
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
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 0x422c28
push esi
cmp esi, 9
jbe 0x422c29
push str._02d
jmp 0x422c2e
push edx
push str._01d
push eax
call fcn.00423670
add esp, 0xc
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
mov eax, dword [ebp - 0xb18]
add esp, 0xc
test eax, eax
je 0x422c83
push eax
lea eax, [ebp - 0x70]
push str._Build:_d
push eax
call fcn.00423670
add esp, 0xc
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
push 0x5ba2b4
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
mov cx, word [ebp - 0xa8c]
add esp, 0xc
mov ax, word [ebp - 0xa8a]
test cx, cx
je 0x422d91
test ax, ax
je 0x422d65
mov esi, dword [ebp - 0xb14]
mov ebx, dword [ebp - 0xa88]
mov edi, dword [ebp - 0xb1c]
mov edx, dword [ebp - 0xb20]
cmp esi, 4
jne 0x422d4a
cmp edx, 4
ja 0x422cfd
cmp cx, 6
jne 0x422d02
cmp ax, 1
jne 0x422d02
lea eax, [ebp - 0x70]
push str.Service_Pack:_6a
push eax
call fcn.00423670
add esp, 8
jmp 0x422d7a
cmp esi, 4
jne 0x422d4a
cmp edx, 5
jne 0x422d10
test edi, edi
je 0x422d10
test bl, 0x40
jne 0x422d2c
cmp esi, 4
jne 0x422d4a
cmp edx, 5
jne 0x422d4a
test edi, edi
je 0x422d4a
cmp dword [ebp - 0xa7c], 1
jne 0x422d4a
test bl, 0x40
jne 0x422d4a
cmp cx, 1
jne 0x422d4a
cmp ax, cx
jne 0x422d4a
lea eax, [ebp - 0x70]
push str.Service_Pack:_1a
push eax
call fcn.00423670
add esp, 8
jmp 0x422d7a
movzx eax, ax
push eax
movzx eax, cx
push eax
lea eax, [ebp - 0x70]
push str.Service_Pack:_d._d
push eax
call fcn.00423670
add esp, 0x10
jmp 0x422d7a
movzx eax, cx
push eax
lea eax, [ebp - 0x70]
push str.Service_Pack:_d
push eax
call fcn.00423670
add esp, 0xc
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
jmp 0x422da8
test ax, ax
je 0x422dab
movzx eax, ax
push eax
lea eax, [ebp - 0x70]
push str.Service_Pack:0._d
push eax
call fcn.00423670
add esp, 0xc
mov ecx, dword [ebp - 0xa88]
mov eax, ecx
shr eax, 0x13
and eax, 1
je 0x422dc7
test cl, 2
je 0x422dc7
push str.___Storage_Server_Enterprise_
jmp 0x422e17
test byte [ebp - 0xa84], 8
je 0x422dd7
push str.___Storage_Server_Express_
jmp 0x422e17
test eax, eax
je 0x422deb
test byte [ebp - 0xa84], 0x20
je 0x422deb
push str.___Storage_Server_Standard_
jmp 0x422e17
test byte [ebp - 0xa84], 0x10
je 0x422dfb
push str.___Storage_Server_Workgroup_
jmp 0x422e17
test dword [ebp - 0xa84], 0x1000
je 0x422e0e
push str.___Storage_Server_Essentials_
jmp 0x422e17
test eax, eax
je 0x422e2b
push str.___Storage_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa84], 0x800
je 0x422e3e
push str.___Home_Server_Premium_Edition_
jmp 0x422e4f
test dword [ebp - 0xa88], 0x10000000
je 0x422e63
push str.___Home_Server_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test byte [ebp - 0xa88], 0x10
je 0x422e85
push str.___Terminal_Services_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa88], 0x100
je 0x422eaa
push str.___Embedded_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa88], 0x200
je 0x422ecf
push str.___Terminal_Services_in_Remote_Admin_Mode_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
push str.KERNEL32.DLL
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test eax, eax
je 0x422f30
push str.IsWow64Process
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x422f30
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 0x422f30
cmp dword [ebp - 0xbc0], 0
je 0x422f30
push str.___64_Bit_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa88], 0x4000
je 0x422f55
push str.___Media_Center_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa88], 0x8000
je 0x422f7a
push str.___Tablet_PC_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa88], 0x40000
je 0x422f9f
push str.___Compute_Cluster_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa84], 0x100
je 0x422fc4
push str.___Foundation_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa84], 0x10000
je 0x422fd7
push str.___MultiPoint_Premium_Edition_
jmp 0x422fe8
test dword [ebp - 0xa84], 0x200
je 0x422ffc
push str.___MultiPoint_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa88], 0x100000
je 0x423021
push str.___Security_Appliance_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa88], 0x200000
je 0x423046
push str.___BackOffice_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa88], 0x800000
je 0x42306b
push str.___N_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test byte [ebp - 0xa84], 0x40
je 0x42308d
push str.___E_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa88], 0x4000000
je 0x4230b2
push str.___Hyper_V_Tools_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa84], 0x400
je 0x4230d7
push str.___Hyper_V_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa88], 0x20000000
je 0x4230fc
push str.___Server_Core_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa88], 0x400
je 0x423121
push str.___Uniprocessor_Free_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa88], 0x800
je 0x423146
push str.___Uniprocessor_Checked_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa88], 0x1000
je 0x42316b
push str.___Multiprocessor_Free_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa88], 0x2000
je 0x423190
push str.___Multiprocessor_Checked_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa88], 0x40000000
je 0x4231b5
push str.___Windows_Essential_Business_Server_Manangement_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa88], 0x80000000
je 0x4231da
push str.___Windows_Essential_Business_Server_Messaging_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test byte [ebp - 0xa84], 1
je 0x4231fc
push str.___Windows_Essential_Business_Server_Security_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test byte [ebp - 0xa84], 2
je 0x42321e
push str.___Cluster_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test byte [ebp - 0xa88], 1
je 0x423240
push str.___Small_Business_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test byte [ebp - 0xa84], 4
je 0x423262
push str.___Small_Business_Server_Premium_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa84], 0x2000
je 0x423287
push str.___Prerelease_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa84], 0x4000
je 0x4232ac
push str.___Evaluation_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa84], 0x40000
je 0x4232d1
push str.___Automotive_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa84], 0x80000
je 0x4232f6
push str.___China_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa84], 0x100000
je 0x42331b
push str.___Single_Language_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa84], 0x200000
je 0x423340
push str.___Win32s_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa84], 0x1000000
je 0x423365
push str.___Education_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa84], 0x2000000
je 0x42338a
push str.___Industry_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa84], 0x8000000
je 0x4233af
push str.___Student_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa84], 0x10000000
je 0x4233d4
push str.___Mobile_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa84], 0x20000000
je 0x4233f9
push str.___IoT_Core_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test byte [ebp - 0xa80], 0x20
je 0x42341b
push str.___Cloud_Host_Infrastructure_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test dword [ebp - 0xa84], 0x40000000
je 0x423440
push str.___S_Edition_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test byte [ebp - 0xa80], 1
je 0x423462
push str.___Cloud_Storage_Server_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test byte [ebp - 0xa80], 4
je 0x423484
push str.___PPI_Pro_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test byte [ebp - 0xa80], 8
je 0x4234a6
push str.___Connected_Car_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
test byte [ebp - 0xa80], 0x10
je 0x4234c8
push str.___Handheld_
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
add esp, 0xc
push 0x5ba2b4
lea eax, [ebp - 0x870]
push 0x800
push eax
call fcn.0054184f
mov ebx, dword [ebp - 0xbc4]
add esp, 0xc
jmp 0x4234f7
push str.Failed_in_call_to_GetOSVersion_n
push eax
call fcn.00423650
add esp, 8
push 0x584fd8
push 0x400
push ebx
mov dword [ebp - 0xbc8], 0x101
call fcn.005417f5
add esp, 0xc
lea eax, [ebp - 0x978]
push 0x101
push 0
push eax
call fcn.0053f2b0
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 0x42356a
push str._nComputerName_:
push 0x400
push ebx
call fcn.0054184f
add esp, 0xc
lea eax, [ebp - 0x978]
push eax
push 0x400
push ebx
call fcn.0054184f
add esp, 0xc
push 0xff
lea eax, [ebp - 0xa78]
push eax
call dword [sym.imp.WS2_32.dll_gethostname]
test eax, eax
jne 0x4235c6
lea eax, [ebp - 0xa78]
push eax
call dword [sym.imp.WS2_32.dll_gethostbyname]
test eax, eax
je 0x4235c6
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 0x4235c6
push str._nIP_:
push 0x400
push ebx
call fcn.0054184f
add esp, 0xc
push esi
push 0x400
push ebx
call fcn.0054184f
add esp, 0xc
push 0x5ba2b4
push 0x400
push ebx
call fcn.0054184f
add esp, 0xc
lea eax, [ebp - 0x870]
push eax
push 0x400
push ebx
call fcn.0054184f
mov ecx, dword [ebp - 4]
add esp, 0xc
xor ecx, ebp
xor eax, eax
pop edi
pop esi
pop ebx
call fcn.0053d630
mov esp, ebp
pop ebp
ret