Function at 0x4cc776
Capabilities:
Check os version

Disassembly:
stosb byte es:[edi], al
jne 0x4d906a
je 0x4aab67
outsb dx, byte [esi]
daa
sub ecx, dword [edi]
test ch, bh
in al, 2
add byte [eax + eax*2], dh
je 0x4d906a
cmp eax, ebx
mov word [ebp - 0x28], dx
mov word [esi + 0x53], bx
mov edi, edi
mov dword [ebp - 0x10], ebx
shr bl, 0x40
jle 0x4b883d
jg 0x4b64c9
nop
cpuid
ret 0x7d8d
lea edi, [ebp - 0x50]
sbb dh, 0x60
add byte [eax], al
je 0x4c8e2b
jne 0x4c8e14
dec edx
xchg ebx, eax
aas
mov eax, dword [esi]
mov ch, ch
push 0x32
xchg al, ch
xchg ch, al
push eax
call fcn.004bf49d
add esp, 8
push 8
push 0x5ca028
push 0x4c69f5
ret
mov word [ebp - 0x24], cx
and ebp, ebp
jno 0x4c8e44
jmp 0x4c8e04
jno 0x4b64ab
and byte [edx - 0x2d], 0xe0
ja 0x4d9382
jbe 0x4c8e5a
sbb edx, eax
add al, 0xbb
jbe 0x4d9382
fadd dword [eax]
lea esp, [esp + 4]
lea esi, [esi + 4]
push 0xd30569ff
mov dword [esp], ebx
pushfd
mov ebx, 0xf597a04e
sub ebx, 0x800edc60
popfd
push eax
pop eax
call fcn.004be1ca
xor eax, 0xee850f71
mov al, 0xfd
push dword [edx + eax - 0x68]
xchg edx, eax
or word [esi + 0x50], di
jb 0x4aab5a
lea eax, [ebp - 0xc]
xchg edi, edx
xchg edx, edi
lea ecx, [ebp - 0x50]
push eax
push ecx
jmp 0x4cc7be
push esi
mov dl, dl
call fcn.004c955d
add esp, 0xc
mov dword [ebp + 8], eax
jmp 0x4cc7e3
mov ax, word [esi + 0x1e]
mov cx, word [esi + 0x1c]
shl edx, 0x20
mov dx, word [esi + 0x42]
mov word [ebp - 0x20], ax
mov eax, dword [ebp + 8]
js 0x4c8e3a
jns 0x4cc804
pop ecx
invalid
jns 0x4c8e3a
add eax, 0xc08446e9
jb 0x4adbbc
mov byte [ebp + 8], al
jne 0x4d4b44
je 0x4cc824
invalid
test di, 0x5d16
test ecx, 0x4000
jb 0x4be2c7
call fcn.004abc97
xor al, 0xdb
loopne 0x4d3b36
add byte [eax], al
inc ecx
add byte [eax + 0x30], al
add byte [ecx], al
add byte [eax], al
inc ebx
invalid
jge 0x4d3b83
add ch, dl
cmp ecx, dword [ebp]
mov cl, byte [eax]
dec ebx
add byte [0x3d000000], bh
add byte [eax], al
add byte [edi - 0x2f], bl
dec ebx
add byte [eax], bh
add byte [eax], al
add byte [0x38004b39], bl
add byte [eax], al
add dl, cl
mov cl, 0x4c
add byte [ebx + 0x3b], ah
dec ebp
add dl, al
add edx, dword [ebp + 0xc004ceb]
add byte [eax], al
add byte [eax], dh
add byte [eax], al
add byte [0x48004b39], bl
add byte [eax], al
add byte [esi], ah
sti
dec esp
add byte [eax], dh
add byte [eax], al
add byte [eax], bh
add byte [eax], al
add bl, dl
out dx, al
shr esi, cl
dec esp
add bh, bh
inc dword [eax]
add byte [eax], bh
add byte [eax], al
add byte [esp + ecx*4], al
dec ebx
add byte [ebx - 6], dh
dec esp
add bl, bl
loopne 0x4d3be6
add byte [eax], al
inc eax
add byte [eax], al
cmp byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], ah
xor byte [eax + eax], 0
add byte [eax], al
and dword [eax], eax
add byte [eax + eax], al
add byte [eax + 0x61], bl
dec ebp
add byte [esp + ebp*2 + 0x4b], bl
add byte [eax], al
add byte [eax], al
xor al, 0
add byte [eax], al
sbb eax, 0x44004b39
add byte [eax], al
add byte [esp + edi*2 + 0x4b], dh
add byte [edi + 0x4ba53192], cl
add ch, ch
inc byte [eax]
add byte [eax], dh
add byte [eax], al
add byte [0x48004b39], bl
add byte [eax], al
add bl, bl
loopne 0x4d3c38
add byte [eax], al
inc eax
add byte [eax], al
xor byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], ah
xor byte [eax + eax], 0
add byte [eax], al
and dword [eax], eax
add byte [eax + eax], al
add byte [eax + 0x61], bl
dec ebp
add byte [ebx + 0xc004c2f], ah
add byte [eax], al
add byte [eax], dh
add byte [eax], al
add byte [0x44004b39], bl
add byte [eax], al
add byte [edx + 0x30004b08], cl
add byte [eax], al
add byte [eax], dh
add byte [eax], al
add byte [esp + edi*2 + 0x4b], dh
add dh, ch
jno 0x4d3bc1
and al, 0x9c
push ebp
cmc
lea ebp, [esp + 8]
mov dword [ebp + 0x3c], ebx
mov dword [ebp + 0x48], esi
mov dword [ebp + 0x4c], edi
pop dword [ebp + 0x44]
lea esi, [esp + 0x68]
lea edi, [esp + 4]
mov ecx, 4
or ecx, ecx
je 0x4d3c67
mov al, byte [esi]
inc esi
mov byte [edi], al
inc edi
dec ecx
jne 0x4d3c5e
mov dword [ebp + 0x40], esp
mov dword [esp], 0x4d3c7c
mov esi, 0x4d3c9a
jmp dword [esi]
dec ebp
add byte [ebx + edi*4], al
dec ebp
add byte [eax + eax], al
add byte [eax + eax], al
add byte [0x44004b39], bl
add byte [eax], al
add byte [esp + edi*2 + 0x4b], dh
add byte [esi - 0xe], bh
sub dword [edx + 0x4c], esi
add byte [edx], al
add byte [eax], al
add byte [eax], dh
add byte [eax], al
add dh, al
jge 0x4d5e5c
add byte [esi - 0x7e], ah
dec esp
add dl, cl
mov cl, 0x4c
add byte [ecx], ah
pop esi
dec ebp
add byte [ecx + 0x3071d8f0], al
dec esp
add byte [eax - 0x6c], bh
dec ebx
add byte [edx], al
out dx, eax
dec ebp
add byte [0xf004d5e], dh
mov byte [0xef02c31a], al
dec ebp
add byte [eax - 0x6c], bh
dec ebx
add byte [edx - 0xbba7404], al
mov eax, dword [ebp - 0xc]
mov edi, edi
lea ecx, [ebp - 0x1c]
ja 0x4b0dad
jbe 0x4d5e51
call 0x56d36dad
scasd eax, dword es:[edi]
std
invalid
jbe 0x4b0dad
fidivr dword [esi - 1]
jg 0x4d5de6
mov dword [esi - 0x77077939], eax
ror byte [edi], 0x89
dec ebp
idiv ebp
inc eax
in eax, 0x20
xchg bh, al
xchg al, bh
mov al, al
jns 0x4b55b6
shl ch, 0x20
js 0x4d5e72
cpuid
nop
ret
lea esi, [esi + 8]
mov ax, ax
jmp dword [esi]
xchg si, ax
xchg si, ax
mov eax, dword [esi + 4]
mov ebx, dword [esi + 8]
mov ax, word [ebp + eax]
lea esi, [esi + 0xc]
mov bx, bx
sbb word [ebp + ebx], ax
shr bh, 0x40
jmp dword [esi]
add edi, eax
add ah, 0
test ecx, 0x80000000
jb 0x4bc3da
shl dx, 0x20
jne 0x4e2337
je 0x4d93a1
insb byte es:[edi], dx
add esi, 4
add esi, 4
clc
popfd
jmp dword [esi - 4]
mov si, si
mov ecx, dword [esi]
sub ah, 0
test ecx, 0x2000
jb 0x4c6e82
jne 0x4d3acf
je 0x4e2357
cpuid
jae 0x4e231a
lea ecx, [ecx]
shr si, 0x40
mov eax, dword [esi + 4]
or esp, esp
shr ah, 0x40
jno 0x4e2369