Function at 0x8085c
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff38
push ebx
push esi
push edi
xor eax, eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xac], eax
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0xa8], eax
xor eax, eax
push ebp
push 0x80cb8
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [0x1487ac], 0xfffffffe
je 0x80989
mov eax, dword [0x149c70]
mov eax, dword [eax]
mov edx, 0x80cd4
call fcn.00065094
xor eax, eax
push ebp
push 0x80939
push dword fs:[eax]
mov dword fs:[eax], esp
lea edx, [ebp - 0xa8]
mov eax, dword [0x1487ac]
call fcn.0001aa1c
mov ecx, dword [ebp - 0xa8]
lea eax, [ebp - 0xa4]
mov edx, 0x80d00
call fcn.000140b0
mov edx, dword [ebp - 0xa4]
mov eax, dword [0x149c20]
mov eax, dword [eax]
call fcn.00064894
mov eax, dword [0x1487ac]
mov dword [ebp - 4], eax
mov eax, dword [0x149c70]
mov eax, dword [eax]
call fcn.000650e0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x80c9a
xor edx, edx
push ebp
push 0x80c4f
push dword fs:[edx]
mov dword fs:[edx], esp
mov eax, dword [0x149c70]
mov eax, dword [eax]
mov edx, 0x80d3c
call fcn.00065094
mov eax, dword [0x149c20]
mov eax, dword [eax]
mov edx, 0x80d68
call fcn.00064894
xor eax, eax
mov dword [ebp - 4], eax
call fcn.00086da4
mov byte [0x15e51c], al
lea eax, [ebp - 0xa0]
xor ecx, ecx
mov edx, 0x9c
call fcn.00012cd0
mov dword [ebp - 0xa0], 0x9c
lea eax, [ebp - 0xa0]
push eax
call sub.kernel32.dll_GetVersionExA
test eax, eax
je 0x80b8c
mov ebx, dword [ebp - 0x9c]
mov esi, dword [ebp - 0x98]
movzx edi, byte [ebp - 6]
movzx eax, word [ebp - 8]
mov edx, dword [ebp - 0x90]
sub edx, 2
jne 0x80b85
cmp ebx, 4
jg 0x80a2c
mov dword [ebp - 4], 1
jmp 0x80b91
cmp ebx, 5
jne 0x80a41
test esi, esi
jne 0x80a41
mov dword [ebp - 4], 2
jmp 0x80b91
cmp ebx, 5
jne 0x80a57
cmp esi, 1
jne 0x80a57
mov dword [ebp - 4], 4
jmp 0x80b91
cmp ebx, 5
jne 0x80aaf
cmp esi, 2
jne 0x80aaf
dec edi
jne 0x80a79
cmp byte [0x15e51c], 0
je 0x80a79
mov dword [ebp - 4], 5
jmp 0x80b91
cmp eax, 0x8000
jne 0x80a8c
mov dword [ebp - 4], 3
jmp 0x80b91
push 0x59
call sub.user32.dll_GetSystemMetrics
test eax, eax
jne 0x80aa3
mov dword [ebp - 4], 6
jmp 0x80b91
mov dword [ebp - 4], 7
jmp 0x80b91
cmp ebx, 6
jne 0x80ad3
test esi, esi
jne 0x80ad3
dec edi
jne 0x80ac7
mov dword [ebp - 4], 8
jmp 0x80b91
mov dword [ebp - 4], 0xa
jmp 0x80b91
cmp ebx, 6
jne 0x80af8
cmp esi, 1
jne 0x80af8
dec edi
jne 0x80aec
mov dword [ebp - 4], 9
jmp 0x80b91
mov dword [ebp - 4], 0xb
jmp 0x80b91
cmp ebx, 6
jne 0x80b5f
cmp esi, 2
jne 0x80b5f
call fcn.00080018
test al, al
je 0x80b5f
mov eax, dword [0x149c20]
mov eax, dword [eax]
mov edx, 0x80d80
call fcn.00064894
mov eax, 0x80dcc
call fcn.000806d0
test al, al
je 0x80b33
mov dword [ebp - 4], 0x10
jmp 0x80b91
mov eax, 0x80de0
call fcn.000806d0
test al, al
je 0x80b4a
mov dword [ebp - 4], 0x11
jmp 0x80b91
dec edi
jne 0x80b56
mov dword [ebp - 4], 0xe
jmp 0x80b91
mov dword [ebp - 4], 0xf
jmp 0x80b91
cmp ebx, 6
jne 0x80b7e
cmp esi, 2
jne 0x80b7e
dec edi
jne 0x80b75
mov dword [ebp - 4], 0xc
jmp 0x80b91
mov dword [ebp - 4], 0xd
jmp 0x80b91
xor eax, eax
mov dword [ebp - 4], eax
jmp 0x80b91
xor eax, eax
mov dword [ebp - 4], eax
jmp 0x80b91
xor eax, eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
mov dword [0x1487ac], eax
lea edx, [ebp - 0xb4]
mov eax, ebx
call fcn.0001aa1c
mov ecx, dword [ebp - 0xb4]
lea eax, [ebp - 0xb0]
mov edx, 0x80dfc
call fcn.000140b0
mov edx, dword [ebp - 0xb0]
mov eax, dword [0x149c20]
mov eax, dword [eax]
call fcn.00064894
lea edx, [ebp - 0xbc]
mov eax, esi
call fcn.0001aa1c
mov ecx, dword [ebp - 0xbc]
lea eax, [ebp - 0xb8]
mov edx, 0x80e10
call fcn.000140b0
mov edx, dword [ebp - 0xb8]
mov eax, dword [0x149c20]
mov eax, dword [eax]
call fcn.00064894
lea edx, [ebp - 0xc4]
mov eax, dword [ebp - 4]
call fcn.0001aa1c
mov ecx, dword [ebp - 0xc4]
lea eax, [ebp - 0xc0]
mov edx, 0x80e24
call fcn.000140b0
mov edx, dword [ebp - 0xc0]
mov eax, dword [0x149c20]
mov eax, dword [eax]
call fcn.00064894
mov eax, dword [0x149c70]
mov eax, dword [eax]
call fcn.000650e0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x80c9a
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x80cbf
lea eax, [ebp - 0xc8]
mov edx, 0xa
call fcn.00013e08
ret