Function at 0x4c49f0
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffec8
push ebx
push esi
push edi
push 0x100
call sym.SISCOM.EXE__hb_xgrab
pop ecx
mov esi, eax
push 0x9c
push 0
lea eax, [ebp - 0x9c]
push eax
call fcn.004d48a8
add esp, 0xc
mov dword [ebp - 0x9c], 0x9c
lea edx, [ebp - 0x9c]
push edx
call sub.KERNEL32.DLL_GetVersionExA
test eax, eax
je 0x4c4cfa
xor ebx, ebx
xor edi, edi
mov eax, dword [ebp - 0x8c]
sub eax, 1
jb 0x4c4c4d
je 0x4c4a61
dec eax
je 0x4c4aa3
dec eax
je 0x4c4c54
jmp 0x4c4c59
cmp dword [ebp - 0x98], 4
jne 0x4c4a7d
cmp dword [ebp - 0x94], 0xa
jae 0x4c4a7d
mov ebx, 0x679f08
jmp 0x4c4c59
cmp dword [ebp - 0x98], 4
jne 0x4c4a99
cmp dword [ebp - 0x94], 0xa
jne 0x4c4a99
mov ebx, 0x679f0c
jmp 0x4c4c59
mov ebx, 0x679f10
jmp 0x4c4c59
cmp dword [ebp - 0x98], 6
jne 0x4c4acc
cmp dword [ebp - 0x94], 0
jne 0x4c4acc
cmp byte [ebp - 2], 1
jne 0x4c4ac5
mov ebx, str._Vista
jmp 0x4c4b4b
mov ebx, str._2008
jmp 0x4c4b4b
cmp dword [ebp - 0x98], 6
jne 0x4c4af2
cmp dword [ebp - 0x94], 1
jne 0x4c4af2
cmp byte [ebp - 2], 1
jne 0x4c4aeb
mov ebx, 0x679f21
jmp 0x4c4b4b
mov ebx, str._2008_R2
jmp 0x4c4b4b
cmp dword [ebp - 0x98], 5
jne 0x4c4b1d
cmp dword [ebp - 0x94], 2
jne 0x4c4b1d
push 0x62
call sub.USER32.DLL_GetSystemMetrics
test eax, eax
je 0x4c4b16
mov ebx, str._2003_R2
jmp 0x4c4b4b
mov ebx, str._2003
jmp 0x4c4b4b
cmp dword [ebp - 0x98], 5
jne 0x4c4b36
cmp dword [ebp - 0x94], 1
jne 0x4c4b36
mov ebx, 0x679f3c
jmp 0x4c4b4b
cmp dword [ebp - 0x98], 5
jne 0x4c4b46
mov ebx, str._2000
jmp 0x4c4b4b
mov ebx, 0x679f46
mov dword [ebp - 0x138], 0x9c
lea eax, [ebp - 0x138]
push eax
call sub.KERNEL32.DLL_GetVersionExA
test eax, eax
je 0x4c4c59
cmp byte [ebp - 0x9e], 1
jne 0x4c4ba2
cmp dword [ebp - 0x134], 4
jne 0x4c4b85
mov edi, str._Workstation_4.0
jmp 0x4c4c59
test byte [ebp - 0x9f], 2
je 0x4c4b98
mov edi, str._Home_Edition
jmp 0x4c4c59
mov edi, str._Professional
jmp 0x4c4c59
cmp byte [ebp - 0x9e], 3
jne 0x4c4c59
cmp dword [ebp - 0x134], 5
jne 0x4c4bfd
cmp dword [ebp - 0x130], 2
jne 0x4c4bfd
test byte [ebp - 0xa0], 0x80
je 0x4c4bd4
mov edi, str._Datacenter_Edition
jmp 0x4c4c59
test byte [ebp - 0xa0], 2
je 0x4c4be4
mov edi, str._Enterprise_Edition
jmp 0x4c4c59
cmp word [ebp - 0xa0], 0x400
jne 0x4c4bf6
mov edi, str._Web_Edition
jmp 0x4c4c59
mov edi, str._Standard_Edition
jmp 0x4c4c59
cmp dword [ebp - 0x134], 5
jne 0x4c4c36
cmp dword [ebp - 0x130], 0
jne 0x4c4c36
test byte [ebp - 0xa0], 0x80
je 0x4c4c1f
mov edi, str._Datacenter_Server
jmp 0x4c4c59
test byte [ebp - 0xa0], 2
je 0x4c4c2f
mov edi, str._Advanced_Server
jmp 0x4c4c59
mov edi, 0x679fc9
jmp 0x4c4c59
test byte [ebp - 0xa0], 2
je 0x4c4c46
mov edi, str._Server_4.0__Enterprise_Edition
jmp 0x4c4c59
mov edi, str._Server_4.0
jmp 0x4c4c59
mov ebx, str._32s
jmp 0x4c4c59
mov ebx, 0x67a013
mov ax, word [ebp - 0x90]
and ax, 0xffff
movzx edx, ax
push edx
push dword [ebp - 0x94]
push dword [ebp - 0x98]
test edi, edi
jne 0x4c4c7d
mov edi, 0x679f0b
push edi
test ebx, ebx
jne 0x4c4c84
xor ebx, ebx
push ebx
push str.Windows_s_s__lu._02lu._04d
push 0x100
push esi
call fcn.004c47b5
add esp, 0x20
lea eax, [ebp - 0x88]
test eax, eax
je 0x4c4d0d
xor ebx, ebx
jmp 0x4c4ca7
inc ebx
cmp byte [ebp + ebx - 0x88], 0
je 0x4c4cc4
movsx eax, byte [ebp + ebx - 0x88]
push eax
call fcn.004d8210
pop ecx
test eax, eax
jne 0x4c4ca6
cmp byte [ebp + ebx - 0x88], 0
je 0x4c4d0d
push 0xff
push 0x67a032
push esi
call fcn.004c29ab
add esp, 0xc
push 0xff
lea edx, [ebp - 0x88]
add ebx, edx
push ebx
push esi
call fcn.004c29ab
add esp, 0xc
jmp 0x4c4d0d
push str.Windows
push 0x100
push esi
call fcn.004c47b5
add esp, 0xc
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret