Function at 0x410f27
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc4
mov dword [ebp - 0xc4], ecx
mov dword [ebp - 8], 0
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0x94
lea eax, [ebp - 0x9c]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
cmp dword [ebp - 0x8c], 2
jne 0x410f71
mov dword [ebp - 0xa0], 1
mov eax, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0xc4]
mov dword [ecx + 0xc4], eax
mov edx, dword [ebp - 0xc4]
cmp dword [edx + 0xc4], 0
jne 0x410fd3
mov dword [ebp - 8], 0x2c3
mov eax, dword [ebp - 8]
push eax
mov ecx, dword [ebp - 0xc4]
call fcn.00411317
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
xor eax, eax
jmp 0x4111f0
mov ecx, dword [ebp - 0xc4]
cmp dword [ecx + 0xc4], 4
je 0x4111eb
mov edx, dword [ebp - 0xc4]
cmp dword [edx + 0xc4], 6
je 0x4111eb
mov eax, dword [ebp - 0xc4]
cmp dword [eax + 0xc4], 7
je 0x4111eb
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0
cmp dword [ebp - 0xa0], 0
je 0x4110f7
mov dword [ebp - 0xb0], 0x10007
mov ecx, dword [ebp - 0xb0]
push ecx
call fcn.00423fa9
add esp, 4
mov dword [ebp - 0xb8], eax
mov edx, dword [ebp - 0xb8]
mov dword [ebp - 0xa8], edx
cmp dword [ebp - 0xa8], 0
jne 0x411068
xor eax, eax
jmp 0x4111f0
mov eax, dword [ebp - 0xb0]
push eax
push 0
mov ecx, dword [ebp - 0xa8]
push ecx
call fcn.00412470
add esp, 0xc
mov edx, dword [ebp - 0xa8]
mov dword [ebp - 0xb4], edx
mov eax, dword [ebp - 0xb4]
mov dword [eax], 0xf0000
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 4], 0xffff
mov edx, dword [ebp - 0xb0]
push edx
mov eax, dword [ebp - 0xa8]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0xc4]
call fcn.004112d0
test eax, eax
jne 0x4110e8
mov edx, dword [ebp - 0xa8]
mov dword [ebp - 0xbc], edx
mov eax, dword [ebp - 0xbc]
push eax
call fcn.00423fd2
add esp, 4
xor eax, eax
jmp 0x4111f0
mov ecx, dword [ebp - 0xa8]
add ecx, 8
mov dword [ebp - 0xa4], ecx
cmp dword [ebp - 0xa0], 0
je 0x411111
mov edx, dword [ebp - 0xa4]
add edx, 0xe0c1
mov dword [ebp - 4], edx
jmp 0x411118
mov dword [ebp - 4], 0xfe0c1
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp eax, 0x34
jge 0x411137
mov ecx, dword [ebp - 4]
push ecx
mov edx, dword [ebp + 0x10]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
jmp 0x411146
push str.SPOILED
mov eax, dword [ebp + 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
cmp dword [ebp - 0xa0], 0
je 0x411160
mov ecx, dword [ebp - 0xa4]
add ecx, 0xece0
mov dword [ebp - 4], ecx
jmp 0x411167
mov dword [ebp - 4], 0xfece0
push 9
mov edx, dword [ebp - 4]
push edx
mov eax, dword [ebp + 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
mov ecx, dword [ebp + 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
sub eax, 1
mov dword [ebp - 0xac], eax
jmp 0x41119b
mov edx, dword [ebp - 0xac]
sub edx, 1
mov dword [ebp - 0xac], edx
cmp dword [ebp - 0xac], 0
jl 0x4111c7
mov eax, dword [ebp + 0xc]
add eax, dword [ebp - 0xac]
movsx ecx, byte [eax]
cmp ecx, 0x20
jne 0x4111c3
mov edx, dword [ebp + 0xc]
add edx, dword [ebp - 0xac]
mov byte [edx], 0
jmp 0x4111c5
jmp 0x4111c7
jmp 0x41118c
cmp dword [ebp - 0xa0], 0
je 0x4111eb
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xc0], eax
mov ecx, dword [ebp - 0xc0]
push ecx
call fcn.00423fd2
add esp, 4
mov eax, 1
mov esp, ebp
pop ebp
ret 0xc