Function at 0x47ba88
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 0x47be2c
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 0x47bdf8
mov eax, dword [ebp - 0x84]
sub eax, 1
jb 0x47bb0f
je 0x47bb65
dec eax
je 0x47bbab
jmp 0x47bdf8
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, 0x47be44
call fcn.0040beb0
mov edx, dword [ebp - 0x98]
mov eax, esi
call fcn.00405688
mov bl, 1
jmp 0x47bdf8
mov eax, dword [ebp - 0x8c]
sub eax, 1
jb 0x47bb7c
sub eax, 9
je 0x47bb8a
sub eax, 0x50
je 0x47bb98
jmp 0x47bba4
mov eax, esi
mov edx, 0x47be5c
call fcn.00405688
jmp 0x47bba4
mov eax, esi
mov edx, 0x47be70
call fcn.00405688
jmp 0x47bba4
mov eax, esi
mov edx, 0x47be84
call fcn.00405688
mov bl, 2
jmp 0x47bdf8
cmp dword [ebp - 0x90], 5
jne 0x47bbd0
cmp dword [ebp - 0x8c], 0
jne 0x47bbd0
mov eax, esi
mov edx, 0x47be98
call fcn.00405688
mov bl, 4
jmp 0x47bdf8
cmp dword [ebp - 0x90], 5
jne 0x47bc1f
cmp dword [ebp - 0x8c], 1
jne 0x47bc1f
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, 0x47beb0
call fcn.0040beb0
mov edx, dword [ebp - 0xac]
mov eax, esi
call fcn.00405688
mov bl, 5
jmp 0x47bdf8
cmp dword [ebp - 0x90], 5
jne 0x47bc6e
cmp dword [ebp - 0x8c], 2
jne 0x47bc6e
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, 0x47bec8
call fcn.0040beb0
mov edx, dword [ebp - 0xb8]
mov eax, esi
call fcn.00405688
mov bl, 6
jmp 0x47bdf8
cmp dword [ebp - 0x90], 6
jne 0x47bcbd
cmp dword [ebp - 0x8c], 0
jne 0x47bcbd
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, 0x47bee0
call fcn.0040beb0
mov edx, dword [ebp - 0xbc]
mov eax, esi
call fcn.00405688
mov bl, 7
jmp 0x47bdf8
cmp dword [ebp - 0x90], 6
jne 0x47bd0c
cmp dword [ebp - 0x8c], 1
jne 0x47bd0c
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, 0x47befc
call fcn.0040beb0
mov edx, dword [ebp - 0xc0]
mov eax, esi
call fcn.00405688
mov bl, 8
jmp 0x47bdf8
mov edi, dword [ebp - 0x90]
cmp edi, 6
jne 0x47bd5d
cmp dword [ebp - 0x8c], 2
jne 0x47bd5d
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, 0x47bf14
call fcn.0040beb0
mov edx, dword [ebp - 0xc4]
mov eax, esi
call fcn.00405688
mov bl, 9
jmp 0x47bdf8
cmp edi, 4
ja 0x47bdaf
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, 0x47bf2c
call fcn.0040beb0
mov edx, dword [ebp - 0xc8]
mov eax, esi
call fcn.00405688
mov bl, 3
jmp 0x47bdf8
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, 0x47bf48
call fcn.0040beb0
mov edx, dword [ebp - 0xcc]
mov eax, esi
call fcn.00405688
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x47be33
lea eax, [ebp - 0xcc]
mov edx, 6
call fcn.00405658
lea eax, [ebp - 0xac]
call fcn.00405634
lea eax, [ebp - 0x98]
call fcn.00405634
ret