Function at 0x40eac0
Capabilities:
Check os version

Disassembly:
sub esp, 0x1a4
mov eax, dword [0x46e040]
xor eax, esp
mov dword [esp + 0x19c], eax
push esi
push edi
push 0x118
lea eax, [esp + 0x10]
push 0
push eax
call fcn.004235b0
add esp, 0xc
mov dword [esp + 8], 0x11c
lea eax, [esp + 8]
push eax
call dword [sym.imp.ntdll.dll_RtlGetVersion]
nop dword [eax]
test eax, eax
js 0x40ebaf
mov eax, dword [esp + 0xc]
mov ecx, 0x2e
push 0
mov dword [esp + 0x13c], eax
mov eax, dword [esp + 0x14]
push 0x50
mov word [esp + 0x158], cx
lea edx, [ecx - 0x29]
mov dword [esp + 0x170], eax
mov eax, dword [esp + 0x1c]
mov word [esp + 0x188], cx
lea ecx, [esp + 0x130]
push str.0.0.0
mov dword [esp + 0x134], 8
mov dword [esp + 0x14c], 0
mov dword [esp + 0x164], 8
mov dword [esp + 0x17c], 0
mov dword [esp + 0x194], 8
mov dword [esp + 0x1a4], eax
call fcn.00409400
mov eax, dword [esp + 0x10]
lea esi, [esp + 8]
mov ecx, 0x47
mov edi, 0x46fce8
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0xc]
cmp ecx, 6
jne 0x40ebd0
cmp eax, 1
jae 0x40ebd4
mov dword [0x46ead8], 0
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
jb 0x40ebaf
jne 0x40ec4c
cmp eax, 1
jne 0x40ebfa
mov dword [0x46ead8], 0x3d
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
cmp eax, 2
jne 0x40ec21
mov dword [0x46ead8], 0x3e
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
cmp eax, 3
jne 0x40ec67
mov dword [0x46ead8], 0x3f
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
cmp ecx, 0xa
jne 0x40ec67
cmp dword [esp + 0x10], 0
jne 0x40ec67
mov eax, dword ds:[esp + 0x14]
cmp eax, 0x65f4
jbe 0x40ec8c
mov dword [0x46ead8], 0xffffffff
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
jb 0x40ecaf
mov dword [0x46ead8], 0x75
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
cmp eax, 0x5867
jb 0x40ecd7
mov dword [0x46ead8], 0x74
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
cmp eax, 0x585d
jb 0x40ecff
mov dword [0x46ead8], 0x73
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
nop
cmp eax, 0x55f0
jb 0x40ed2c
mov dword [0x46ead8], 0x72
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
cmp eax, 0x4a65
jb 0x40ed54
mov dword [0x46ead8], 0x71
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
cmp eax, 0x4a64
jb 0x40ed7c
mov dword [0x46ead8], 0x70
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
nop dword [eax]
cmp eax, 0x4a63
jb 0x40edac
mov dword [0x46ead8], 0x6f
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
cmp eax, 0x4a62
jb 0x40edd4
mov dword [0x46ead8], 0x6e
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
cmp eax, 0x4a61
jb 0x40edfc
mov dword [0x46ead8], 0x6d
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
nop dword [eax]
cmp eax, 0x47bb
jb 0x40ee2c
mov dword [0x46ead8], 0x6c
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
cmp eax, 0x47ba
jb 0x40ee54
mov dword [0x46ead8], 0x6b
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
cmp eax, 0x4563
jb 0x40ee7c
mov dword [0x46ead8], 0x6a
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
nop dword [eax]
cmp eax, 0x42ee
jb 0x40eeac
mov dword [0x46ead8], 0x69
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
cmp eax, 0x3fab
jb 0x40eed4
mov dword [0x46ead8], 0x68
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
cmp eax, 0x3ad7
jb 0x40eefc
mov dword [0x46ead8], 0x67
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
nop dword [eax]
cmp eax, 0x3839
jb 0x40ef2c
mov dword [0x46ead8], 0x66
pop edi
pop esi
mov ecx, dword [esp + 0x19c]
xor ecx, esp
call fcn.004218f3
add esp, 0x1a4
ret
mov ecx, dword [esp + 0x1a4]
cmp eax, 0x295a
pop edi
sbb eax, eax
add eax, 0x65
pop esi
xor ecx, esp
mov dword [0x46ead8], eax
call fcn.004218f3
add esp, 0x1a4
ret