Function at 0x40cce0
Capabilities:
Check os version

Disassembly:
sub esp, 0x130
mov eax, dword [0x44d79c]
mov ecx, dword [0x44d7a0]
mov dl, byte [0x44d7a4]
mov dword [esp], eax
mov eax, dword [0x44d794]
push ebx
mov dword [esp + 8], ecx
mov cx, word [0x44d798]
mov byte [esp + 0xc], dl
mov edx, dword [0x44d78c]
mov dword [esp + 0x10], eax
mov ax, word [0x44d790]
push esi
push edi
mov word [esp + 0x1c], cx
mov dword [esp + 0x20], edx
mov word [esp + 0x24], ax
call fcn.0040d190
cmp eax, 0x40
mov dword [0x440498], eax
jne 0x40cd50
lea esi, [esp + 0x18]
call fcn.0040d1a0
mov word [0x467854], ax
jmp 0x40cd54
lea esi, [esp + 0x20]
mov ecx, 0x25
xor eax, eax
lea edi, [esp + 0xa8]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0xa8]
mov dword [esp + 0xa8], 0x94
push ecx
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0xac]
mov eax, dword [esp + 0xb0]
mov dword [0x466178], ecx
test ecx, ecx
mov dword [0x466174], edx
mov dword [0x466170], eax
jne 0x40ce19
cmp eax, 1
jne 0x40cdcf
lea edx, [esp + 0xc]
push 0x44d788
push edx
lea eax, [esp + 0x30]
push 0x4497e8
push eax
call fcn.004205cb
add esp, 0x10
mov bl, 1
jmp 0x40d091
cmp eax, 0xb
jne 0x40cdf7
lea ecx, [esp + 0xc]
push 0x44d780
push ecx
lea edx, [esp + 0x30]
push 0x4497e8
push edx
call fcn.004205cb
add esp, 0x10
mov bl, 2
jmp 0x40d091
push eax
push edx
lea eax, [esp + 0x14]
push 0
push eax
lea ecx, [esp + 0x38]
push 0x44d764
push ecx
call fcn.004205cb
add esp, 0x18
mov bl, 2
jmp 0x40d091
cmp ecx, 1
jne 0x40cec0
cmp edx, 4
jne 0x40ce9e
test eax, eax
jne 0x40ce4e
lea edx, [esp + 0xc]
push 0x44d760
push edx
lea eax, [esp + 0x30]
push 0x4497e8
push eax
call fcn.004205cb
add esp, 0x10
mov bl, 3
jmp 0x40d091
cmp eax, 0xa
jne 0x40ce76
lea ecx, [esp + 0xc]
push 0x44d75c
push ecx
lea edx, [esp + 0x30]
push 0x4497e8
push edx
call fcn.004205cb
add esp, 0x10
mov bl, 3
jmp 0x40d091
cmp eax, 0x5a
jne 0x40ce9e
lea eax, [esp + 0xc]
push 0x44d758
push eax
lea ecx, [esp + 0x30]
push 0x4497e8
push ecx
call fcn.004205cb
add esp, 0x10
mov bl, 3
jmp 0x40d091
push eax
push edx
lea edx, [esp + 0x14]
push 1
push edx
lea eax, [esp + 0x38]
push 0x44d73c
push eax
call fcn.004205cb
add esp, 0x18
mov bl, 3
jmp 0x40d091
cmp ecx, 2
jne 0x40d075
cmp edx, 3
jne 0x40ceed
lea ecx, [esp + 0xc]
push eax
push ecx
lea edx, [esp + 0x30]
push 0x44d730
push edx
call fcn.004205cb
add esp, 0x10
mov bl, 4
jmp 0x40d091
cmp edx, 4
jne 0x40cf1d
test eax, eax
jne 0x40d060
lea eax, [esp + 0xc]
push 0x44d728
push eax
lea ecx, [esp + 0x30]
push 0x4497e8
push ecx
call fcn.004205cb
add esp, 0x10
mov bl, 5
jmp 0x40d091
cmp edx, 5
jne 0x40cf9d
test eax, eax
jne 0x40cf49
lea edx, [esp + 0xc]
push 0x44d720
push edx
lea eax, [esp + 0x30]
push 0x4497e8
push eax
call fcn.004205cb
add esp, 0x10
mov bl, 6
jmp 0x40d091
cmp eax, 1
jne 0x40cf71
lea ecx, [esp + 0xc]
push 0x44d71c
push ecx
lea edx, [esp + 0x30]
push 0x4497e8
push edx
call fcn.004205cb
add esp, 0x10
mov bl, 7
jmp 0x40d091
cmp eax, 2
jne 0x40d060
lea eax, [esp + 0xc]
push 0x44d708
push eax
lea ecx, [esp + 0x30]
push 0x4497e8
push ecx
call fcn.004205cb
add esp, 0x10
mov bl, 8
jmp 0x40d091
cmp edx, 6
jne 0x40d039
test eax, eax
jne 0x40cfcd
lea edx, [esp + 0xc]
push 0x44d700
push edx
lea eax, [esp + 0x30]
push 0x4497e8
push eax
call fcn.004205cb
add esp, 0x10
mov bl, 9
jmp 0x40d091
cmp eax, 1
jne 0x40cff3
lea ecx, [esp + 0xc]
push 0x44d6f0
push ecx
lea edx, [esp + 0x30]
push 0x4497e8
push edx
call fcn.004205cb
add esp, 0x10
jmp 0x40d08f
cmp eax, 2
jne 0x40d016
lea eax, [esp + 0xc]
push 0x44d6ec
push eax
lea ecx, [esp + 0x30]
push 0x4497e8
push ecx
call fcn.004205cb
add esp, 0x10
jmp 0x40d08f
cmp eax, 3
jne 0x40d060
lea edx, [esp + 0xc]
push 0x44d6e8
push edx
lea eax, [esp + 0x30]
push 0x4497e8
push eax
call fcn.004205cb
add esp, 0x10
jmp 0x40d08f
cmp edx, 0xa
jne 0x40d060
test eax, eax
jne 0x40d060
lea ecx, [esp + 0xc]
push 0x44d6e4
push ecx
lea edx, [esp + 0x30]
push 0x4497e8
push edx
call fcn.004205cb
add esp, 0x10
jmp 0x40d08f
push eax
push edx
lea eax, [esp + 0x14]
push 2
push eax
lea ecx, [esp + 0x38]
push 0x44d6c8
push ecx
jmp 0x40d087
push eax
push edx
lea edx, [esp + 0x14]
push ecx
push edx
lea eax, [esp + 0x38]
push 0x44d6ac
push eax
call fcn.004205cb
add esp, 0x18
mov bl, 0xa
push 0x440478
lea ecx, [esp + 0x2c]
push esi
push ecx
push 0x44d69c
push 0x7f
push 0x45c11c
call fcn.00420511
mov edx, dword [esp + 0xc8]
mov eax, dword [esp + 0xc4]
mov ecx, dword [esp + 0xd0]
push 0x4400f0
push edx
push eax
push ecx
push str.Windows_Type:__lu._lu._lu___ES:_s
push 0x4540fc
call fcn.004205cb
push 0x45c11c
push 0x4540fc
push str.GetWindowsPlatform___s____s_
push 1
push 1
push 0
push 0
push 0
call fcn.0041b920
mov edx, dword [esp + 0x100]
mov eax, dword [esp + 0xfc]
mov ecx, dword [esp + 0x108]
add esp, 0x50
push 0x4400f0
push edx
push eax
push ecx
push 0x44d634
push 0x4540fc
call fcn.004205cb
add esp, 0x18
mov al, bl
pop edi
pop esi
pop ebx
add esp, 0x130
ret