Function at 0x47136c
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff34
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0xcc], edx
mov dword [ebp - 0xc8], edx
mov dword [ebp - 0xc4], edx
mov dword [ebp - 0xc0], edx
mov dword [ebp - 0xbc], edx
mov dword [ebp - 0xb8], edx
mov dword [ebp - 0xac], edx
mov dword [ebp - 0x98], edx
mov esi, eax
xor eax, eax
push ebp
push 0x471710
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 0x94], 0x94
xor ebx, ebx
lea eax, [ebp - 0x94]
push eax
call sub.kernel32.dll_GetVersionExA
test eax, eax
je 0x4716dc
mov eax, dword [ebp - 0x84]
sub eax, 1
jb 0x4713f3
je 0x471449
dec eax
je 0x47148f
jmp 0x4716dc
lea eax, [ebp - 0x98]
push eax
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xa8], eax
mov byte [ebp - 0xa4], 0
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xa0], eax
mov byte [ebp - 0x9c], 0
lea edx, [ebp - 0xa8]
mov ecx, 1
mov eax, 0x471728
call fcn.0040b75c
mov edx, dword [ebp - 0x98]
mov eax, esi
call fcn.004055c0
mov bl, 1
jmp 0x4716dc
mov eax, dword [ebp - 0x8c]
sub eax, 1
jb 0x471460
sub eax, 9
je 0x47146e
sub eax, 0x50
je 0x47147c
jmp 0x471488
mov eax, esi
mov edx, 0x471740
call fcn.004055c0
jmp 0x471488
mov eax, esi
mov edx, 0x471754
call fcn.004055c0
jmp 0x471488
mov eax, esi
mov edx, 0x471768
call fcn.004055c0
mov bl, 2
jmp 0x4716dc
cmp dword [ebp - 0x90], 5
jne 0x4714b4
cmp dword [ebp - 0x8c], 0
jne 0x4714b4
mov eax, esi
mov edx, 0x47177c
call fcn.004055c0
mov bl, 4
jmp 0x4716dc
cmp dword [ebp - 0x90], 5
jne 0x471503
cmp dword [ebp - 0x8c], 1
jne 0x471503
lea eax, [ebp - 0xac]
push eax
lea eax, [ebp - 0x80]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 6
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x471794
call fcn.0040b75c
mov edx, dword [ebp - 0xac]
mov eax, esi
call fcn.004055c0
mov bl, 5
jmp 0x4716dc
cmp dword [ebp - 0x90], 5
jne 0x471552
cmp dword [ebp - 0x8c], 2
jne 0x471552
lea eax, [ebp - 0xb8]
push eax
lea eax, [ebp - 0x80]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 6
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4717ac
call fcn.0040b75c
mov edx, dword [ebp - 0xb8]
mov eax, esi
call fcn.004055c0
mov bl, 6
jmp 0x4716dc
cmp dword [ebp - 0x90], 6
jne 0x4715a1
cmp dword [ebp - 0x8c], 0
jne 0x4715a1
lea eax, [ebp - 0xbc]
push eax
lea eax, [ebp - 0x80]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 6
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4717c4
call fcn.0040b75c
mov edx, dword [ebp - 0xbc]
mov eax, esi
call fcn.004055c0
mov bl, 7
jmp 0x4716dc
cmp dword [ebp - 0x90], 6
jne 0x4715f0
cmp dword [ebp - 0x8c], 1
jne 0x4715f0
lea eax, [ebp - 0xc0]
push eax
lea eax, [ebp - 0x80]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 6
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4717e0
call fcn.0040b75c
mov edx, dword [ebp - 0xc0]
mov eax, esi
call fcn.004055c0
mov bl, 8
jmp 0x4716dc
mov edi, dword [ebp - 0x90]
cmp edi, 6
jne 0x471641
cmp dword [ebp - 0x8c], 2
jne 0x471641
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0x80]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 6
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4717f8
call fcn.0040b75c
mov edx, dword [ebp - 0xc4]
mov eax, esi
call fcn.004055c0
mov bl, 9
jmp 0x4716dc
cmp edi, 4
ja 0x471693
lea eax, [ebp - 0xc8]
push eax
mov dword [ebp - 0xa8], edi
mov byte [ebp - 0xa4], 0
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xa0], eax
mov byte [ebp - 0x9c], 0
lea edx, [ebp - 0xa8]
mov ecx, 1
mov eax, 0x471810
call fcn.0040b75c
mov edx, dword [ebp - 0xc8]
mov eax, esi
call fcn.004055c0
mov bl, 3
jmp 0x4716dc
lea eax, [ebp - 0xcc]
push eax
mov dword [ebp - 0xa8], edi
mov byte [ebp - 0xa4], 0
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xa0], eax
mov byte [ebp - 0x9c], 0
lea edx, [ebp - 0xa8]
mov ecx, 1
mov eax, 0x47182c
call fcn.0040b75c
mov edx, dword [ebp - 0xcc]
mov eax, esi
call fcn.004055c0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x471717
lea eax, [ebp - 0xcc]
mov edx, 6
call fcn.00405590
lea eax, [ebp - 0xac]
call fcn.0040556c
lea eax, [ebp - 0x98]
call fcn.0040556c
ret