Function at 0x4b8baa
Capabilities:
Check os version

Disassembly:
push 0x493bd9
ret
ja 0x489b88
jbe 0x489993
mov dh, 0x53
jbe 0x489b88
fidivr dword [esi - 0x3d]
daa
retf 0x6855
cmp ax, 4
jne 0x4a8326
xchg edx, eax
xchg edx, eax
call fcn.004a37b5
add esp, 8
pop edi
pop esi
pop ebx
shr bh, 0x40
mov esp, ebp
pop ebp
ret
mov edx, dword [esi]
push 0x24
push edx
call fcn.004a37b5
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
jno 0x49573c
jo 0x49c46b
nop
cpuid
ret 0x800f
jo 0x49573c
sbb byte [edx + 0xf], 0x84
fmul dword [0xc1660002]
out dx, al
inc eax
jne 0x49c483
test eax, 0xe9b43dfc
call 0x8349c42e
or byte [edx + 0xe], ch
jmp 0x496a70
mov dl, byte [ebp + 0xb]
test al, 0xc3
add esp, 0x2c
mov byte [esi + 0xba], bl
test ax, ax
jb 0x498d44
shr di, 0x40
mov bp, bp
mov byte [esi + 0xbb], dl
lea esi, [esi]
shr bx, 0x40
xchg ebp, edi
xchg edi, ebp
mov ch, ch
push edx
mov dx, 0x7d1d
xchg dh, dh
pop edx
shr si, 0x40
mov word [esi + 0xbc], di
mov cx, cx
jne 0x489989
je 0x4a48d9
push cs
sub byte [eax], ch
jmp 0x483cf0
jne 0x491aff
mov ah, ah
xchg dx, ax
xchg ch, bl
xchg bl, ch
xchg dx, ax
mov esi, esi
je 0x4a63be
nop
cpuid
ret
jmp 0x4a63bf
push esi
call 0x49eb7a
xchg esi, edi
xchg edi, esi
mov cl, byte [ebp + 0xc]
mov dx, word [ebp + 0x10]
ja 0x483ee8
jbe 0x4a63db
adc ecx, ebx
jbe 0x483ee8
xor byte [edi + 0x56], 0x3f
dec ecx
add byte [esp + 0x4a], cl
add bh, ch
xchg edx, eax
dec ecx
add byte [eax + eax], bh
add byte [eax], al
lodsd eax, dword [esi]
cli
dec eax
add byte [eax + eax], bh
add byte [eax], al
pop edx
jae 0x4a6448
add byte [esi], al
dec edx
add dl, al
mov esp, 0x4b1a3b8a
add byte [eax], dh
add byte [eax], al
add byte [eax], dh
add byte [eax], al
add byte [ebp + ecx*2 - 0x3380ffb7], dl
dec edx
add byte [ebx - 0x5e], ch
dec edx
add byte [eax], al
popal
add byte [eax + 0x34], al
add byte [ecx], ah
add byte [eax], al
inc dword [eax]
add byte [eax], al
add byte [edx], dl
add byte [eax], al
add byte [edx], al
add byte [eax], dh
add byte [eax], al
add byte [esp + esi*4 - 0x552ffb8], al
dec eax
add byte [eax + eax], al
add byte [esi + edi], al
dec ecx
add byte [ecx - 0x5f], bl
push esp
aas
dec ecx
add byte [ebx], ch
ror byte [eax], 1
pop edx
jae 0x4a64a1
add byte [esi + 0x64], bl
dec edx
add byte [edx], al
adc eax, 0x4a735a
sub edx, eax
dec eax
add bh, al
aas
mov ebp, ebp
jne 0x490282
xchg di, dx
shr cx, 0x40
xchg dx, di
je 0x4a6480
cpuid
xchg esi, eax
ret
lea edx, [ebp - 0x10]
mov esi, esi
shl esi, 0x20
lea esi, [esi]
push 8
call fcn.004c2799
fcom dword [ebx - 0x170f0015]
mov bl, 0x49
add byte [eax], al
add esp, 4
cmp dl, dl
test edi, edi
jb 0x4908d1
je 0x4a64eb
jne 0x4a64b7
pop esi
cpuid
ret
cmp edi, 0xffffffff
je 0x4a64eb
jne 0x4a64c9
mov dword [0xc13b3f60], eax
jecxz 0x4a64ec
shl ebx, 0x20
mov edx, dword [esi]
push 0
push edx
call fcn.004a37b5
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
shr edx, 0x40
pop ebp
shl eax, 0x20
ret
cmp word [ebp - 0x38], 0
je 0x49c449
cmp dword [ebp - 0x38], 0x840f0000
push edx
pop edi
invalid
jne 0x4a64fd
add dword [edi], ebx
sub eax, 0xc8458bcc
mov eax, dword [ebp - 0x38]
mov ecx, dword [esi]
ja 0x4bc8fd
jbe 0x4a650e
cpuid
lodsb al, byte [esi]
ret
jbe 0x4bc8fd
invalid
jne 0x4a63a6
je 0x4a8331
cld
xlatb
pushfd
je 0x4a63a6
fcomp dword [edx - 0x76bef775]
or byte [esi - 0x77], ah
fistp dword [ebx + 0x5d]
ret
lea esp, [esp + 4]
shl bl, 0x20
mov eax, dword [ebp - 8]
lea eax, [eax]
jne 0x4a4885
shr edi, 0x40
je 0x4b8bc3
push ebx
out dx, al
je 0x4a4885
and eax, 0x4468b9b
mov cx, cx
mov ebx, dword [esi + 8]
lea esi, [esi + 0xc]
adc byte [ebp + ebx], al
shr al, 0x40
jmp dword [esi]
push eax
push ecx
jne 0x49c432
je 0x4bc90b
imul ecx, dword [ecx + ebx*8 + 0x21840fcd], 0xfffffffb
std
push dword [0xc5e856b0]
je 0x49c432
xor eax, 0xc5e856b0
popfd
cld
dec dword [ebx + 0x39660c7d]
rol byte [ecx + 0x8c4], cl
add dh, dh
invalid