Function at 0x47473c
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff38
push ebx
push esi
push edi
xor edx, 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 0x474a8b
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 0x94], 0x94
mov bl, 8
lea eax, [ebp - 0x94]
push eax
call sub.kernel32.dll_GetVersionExA
test eax, eax
je 0x474a57
mov eax, dword [ebp - 0x84]
sub eax, 1
jb 0x4747bd
je 0x474813
dec eax
je 0x474859
jmp 0x474a57
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, 0x474aa4
call fcn.0040ad30
mov edx, dword [ebp - 0x98]
mov eax, esi
call fcn.00404e54
xor ebx, ebx
jmp 0x474a57
mov eax, dword [ebp - 0x8c]
sub eax, 1
jb 0x47482a
sub eax, 9
je 0x474838
sub eax, 0x50
je 0x474846
jmp 0x474852
mov eax, esi
mov edx, 0x474abc
call fcn.00404e54
jmp 0x474852
mov eax, esi
mov edx, 0x474ad0
call fcn.00404e54
jmp 0x474852
mov eax, esi
mov edx, 0x474ae4
call fcn.00404e54
mov bl, 1
jmp 0x474a57
cmp dword [ebp - 0x90], 5
jne 0x47487e
cmp dword [ebp - 0x8c], 0
jne 0x47487e
mov eax, esi
mov edx, 0x474af8
call fcn.00404e54
mov bl, 3
jmp 0x474a57
cmp dword [ebp - 0x90], 5
jne 0x4748cd
cmp dword [ebp - 0x8c], 1
jne 0x4748cd
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, 0x474b10
call fcn.0040ad30
mov edx, dword [ebp - 0xac]
mov eax, esi
call fcn.00404e54
mov bl, 4
jmp 0x474a57
cmp dword [ebp - 0x90], 5
jne 0x47491c
cmp dword [ebp - 0x8c], 2
jne 0x47491c
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, 0x474b28
call fcn.0040ad30
mov edx, dword [ebp - 0xb8]
mov eax, esi
call fcn.00404e54
mov bl, 5
jmp 0x474a57
cmp dword [ebp - 0x90], 6
jne 0x47496b
cmp dword [ebp - 0x8c], 0
jne 0x47496b
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, 0x474b40
call fcn.0040ad30
mov edx, dword [ebp - 0xbc]
mov eax, esi
call fcn.00404e54
mov bl, 6
jmp 0x474a57
mov edi, dword [ebp - 0x90]
cmp edi, 6
jne 0x4749bc
cmp dword [ebp - 0x8c], 1
jne 0x4749bc
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, 0x474b5c
call fcn.0040ad30
mov edx, dword [ebp - 0xc0]
mov eax, esi
call fcn.00404e54
mov bl, 7
jmp 0x474a57
cmp edi, 4
ja 0x474a0e
lea eax, [ebp - 0xc4]
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, 0x474b74
call fcn.0040ad30
mov edx, dword [ebp - 0xc4]
mov eax, esi
call fcn.00404e54
mov bl, 2
jmp 0x474a57
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, 0x474b90
call fcn.0040ad30
mov edx, dword [ebp - 0xc8]
mov eax, esi
call fcn.00404e54
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x474a92
lea eax, [ebp - 0xc8]
mov edx, 5
call fcn.00404e24
lea eax, [ebp - 0xac]
call fcn.00404e00
lea eax, [ebp - 0x98]
call fcn.00404e00
ret