Function at 0x4c53e4
Capabilities:
Check os version

Disassembly:
push ebx
push esi
push edi
push ebp
add esp, 0xfffffe2c
mov ebp, 0x65bef4
push 0x100
call fcn.0048a490
pop ecx
mov edi, eax
push 0x9c
push 0
lea eax, [esp + 8]
push eax
call fcn.00509f60
add esp, 0xc
mov dword [esp], 0x9c
push esp
call sub.KERNEL32.DLL_GetVersionExA
test eax, eax
je 0x4c5726
xor ebx, ebx
xor esi, esi
mov eax, dword [esp + 0x10]
sub eax, 1
jb 0x4c5684
je 0x4c544b
dec eax
je 0x4c547e
dec eax
je 0x4c568c
jmp 0x4c5692
cmp dword [esp + 4], 4
jne 0x4c5460
cmp dword [esp + 8], 0xa
jae 0x4c5460
mov ebx, ebp
jmp 0x4c5692
cmp dword [esp + 4], 4
jne 0x4c5476
cmp dword [esp + 8], 0xa
jne 0x4c5476
lea ebx, [ebp + 4]
jmp 0x4c5692
lea ebx, [ebp + 8]
jmp 0x4c5692
cmp dword [esp + 4], 6
jne 0x4c54a6
cmp dword [esp + 8], 0
jne 0x4c54a6
cmp byte [esp + 0x9a], 1
jne 0x4c549e
lea ebx, [ebp + 0xc]
jmp 0x4c5565
lea ebx, [ebp + 0x13]
jmp 0x4c5565
cmp dword [esp + 4], 6
jne 0x4c54ce
cmp dword [esp + 8], 1
jne 0x4c54ce
cmp byte [esp + 0x9a], 1
jne 0x4c54c6
lea ebx, [ebp + 0x19]
jmp 0x4c5565
lea ebx, [ebp + 0x1c]
jmp 0x4c5565
cmp dword [esp + 4], 6
jne 0x4c54f0
cmp dword [esp + 8], 2
jb 0x4c54f0
cmp byte [esp + 0x9a], 1
jne 0x4c54eb
lea ebx, [ebp + 0x25]
jmp 0x4c5565
lea ebx, [ebp + 0x28]
jmp 0x4c5565
cmp dword [esp + 4], 5
jne 0x4c5543
cmp dword [esp + 8], 2
jb 0x4c5543
mov dword [esp + 0x9c], 0x9c
lea eax, [esp + 0x9c]
push eax
call sub.KERNEL32.DLL_GetVersionExA
test eax, eax
je 0x4c553e
cmp byte [esp + 0x136], 1
jne 0x4c5529
lea ebx, [ebp + 0x2e]
jmp 0x4c5565
push 0x59
call sub.USER32.DLL_GetSystemMetrics
test eax, eax
je 0x4c5539
lea ebx, [ebp + 0x36]
jmp 0x4c5565
lea ebx, [ebp + 0x46]
jmp 0x4c5565
lea ebx, [ebp + 3]
jmp 0x4c5565
mov eax, dword [esp + 4]
cmp eax, 5
jne 0x4c5558
cmp dword [esp + 8], 1
jne 0x4c5558
lea ebx, [ebp + 0x53]
jmp 0x4c5565
cmp eax, 5
jne 0x4c5562
lea ebx, [ebp + 0x57]
jmp 0x4c5565
lea ebx, [ebp + 0x5d]
mov dword [esp + 0x138], 0x9c
lea eax, [esp + 0x138]
push eax
call sub.KERNEL32.DLL_GetVersionExA
test eax, eax
je 0x4c5692
cmp byte [esp + 0x1d2], 1
jne 0x4c55be
cmp dword [esp + 0x13c], 4
jne 0x4c55a1
lea esi, [ebp + 0x61]
jmp 0x4c5692
test byte [esp + 0x1d1], 2
je 0x4c55b3
lea esi, [ebp + 0x72]
jmp 0x4c5692
lea esi, [ebp + 0x80]
jmp 0x4c5692
cmp byte [esp + 0x1d2], 3
jne 0x4c5692
cmp dword [esp + 0x13c], 5
jne 0x4c561c
cmp dword [esp + 0x140], 2
jne 0x4c561c
mov ax, word [esp + 0x1d0]
test al, 0x80
je 0x4c55f7
lea esi, [ebp + 0x8e]
jmp 0x4c5692
test al, 2
je 0x4c5606
lea esi, [ebp + 0xa2]
jmp 0x4c5692
cmp ax, 0x400
jne 0x4c5614
lea esi, [ebp + 0xb6]
jmp 0x4c5692
lea esi, [ebp + 0xc3]
jmp 0x4c5692
cmp dword [esp + 0x13c], 5
jne 0x4c5658
cmp dword [esp + 0x140], 0
jne 0x4c5658
mov ax, word [esp + 0x1d0]
test al, 0x80
je 0x4c5644
lea esi, [ebp + 0xd5]
jmp 0x4c5692
test al, 2
je 0x4c5650
lea esi, [ebp + 0xe8]
jmp 0x4c5692
lea esi, [ebp + 0xe0]
jmp 0x4c5692
cmp dword [esp + 0x13c], 4
jne 0x4c567c
test byte [esp + 0x1d0], 2
je 0x4c5674
lea esi, [ebp + 0xf9]
jmp 0x4c5692
lea esi, [ebp + 0x119]
jmp 0x4c5692
lea esi, [ebp + 0xe0]
jmp 0x4c5692
lea ebx, [ebp + 0x125]
jmp 0x4c5692
lea ebx, [ebp + 0x12a]
mov ax, word [esp + 0xc]
and ax, 0xffff
movzx edx, ax
push edx
test esi, esi
mov ecx, dword [esp + 0xc]
push ecx
mov eax, dword [esp + 0xc]
push eax
jne 0x4c56b0
lea esi, [ebp + 3]
push esi
test ebx, ebx
jne 0x4c56b7
xor ebx, ebx
push ebx
lea eax, [ebp + 0x12e]
push eax
push 0x100
push edi
call fcn.004c519c
add esp, 0x20
lea edx, [esp + 0x14]
test edx, edx
je 0x4c573b
xor esi, esi
lea ebx, [esp + 0x14]
jmp 0x4c56df
inc esi
inc ebx
mov al, byte [ebx]
test al, al
je 0x4c56f3
movsx edx, al
push edx
call fcn.0050df48
pop ecx
test eax, eax
jne 0x4c56dd
cmp byte [esp + esi + 0x14], 0
je 0x4c573b
push 0xff
lea ecx, [ebp + 0x149]
push ecx
push edi
call fcn.004c32d8
add esp, 0xc
push 0xff
lea eax, [esp + 0x18]
add esi, eax
push esi
push edi
call fcn.004c32d8
add esp, 0xc
jmp 0x4c573b
lea edx, [ebp + 0x14b]
push edx
push 0x100
push edi
call fcn.004c519c
add esp, 0xc
mov eax, edi
add esp, 0x1d4
pop ebp
pop edi
pop esi
pop ebx
ret