Function at 0x404c99
Capabilities:
Check for vm using instruction vpcext

Disassembly:
xor al, 0
sbb dword [edi], 9
xor dl, byte [eax]
xor eax, 0xb3003300
sub eax, 0x8d320f00
add byte [edi], al
xor byte [eax], al
mov eax, dword [0xd6f03]
or al, byte [edx]
pop ds
inc ebp
and edx, ebx
xor eax, 0x204700
push eax
and byte [ebp + 0x65], 0x54
push esp
add byte [ebx - 0x80], dl
push esp
or byte [di + 0x49], 0x80
add dword [ebx - 0x73], edx
or byte [ebx + 0x74], 0x80
dec eax
sub dword [ecx + 0x73], 0
inc ebx
and byte [ebp + 0x22], 0x6e
and byte [ebp + 0x67], 0
dec edx
adc byte [edi + ecx*2], 0
push 0x4e
and byte [edi + 0x44], 0x80
or esi, dword [edi - 0x80]
pop ss
cmp dword [0x6280ab61], 0x8c738185
pop ds
and byte [eax + 0x1580721d], al
stosb byte es:[edi], al
insd dword es:[edi], dx
or byte [ebx + 0x742b8068], 0x80
jns 0x404d81
and byte [eax], 0x8a
das
cmp byte [edx + 0x695d8267], 0
jbe 0x404c9b
sbb dword [eax - 0x7d9cffd2], ebp
adc ch, byte [edi]
add byte [edx], 0x64
add byte [0x49806c4a], 0x65
sub byte [edi], 0x74
add byte [ebp - 0x7d52d0d8], cl
pop edx
outsd dx, dword [esi]
cmp byte [ecx], 0xb1
js 0x404d94
xor byte [0xad6a8062], 0x87
das
cmp al, byte [eax + 0x26]
dec edi
add eax, 0x305e4028
rcr byte [eax - 0x5e], 0x35
rol byte [eax], 0x44
inc esp
add byte [esi + 0x40], al
inc esi
inc eax
add ebp, dword [ecx]
ret 0x6a3d
add byte [ebp - 0x3f], al
adc byte [eax - 0x40], ch
sbb al, 0x67
add byte [eax - 0x3e], ch
adc byte [ecx + 0x6a], ch
add byte [ecx + 0x13], al
je 0x404d54
outsb dx, byte [esi]
jne 0x404dd7
and eax, ebx
pop es
push ebp
aaa
inc eax
add eax, ebx
add eax, 0xc067597f
xor eax, dword [edi + 0x59]
pop ebp
add byte [ebp - 0x3fc9a613], ch
cmp al, 0xff
pop ecx
popal
inc eax
sub dword [ebx - 0x40], 0x8f41add5
jne 0x404dfc
invalid
push edi
inc ecx
salc
je 0x404e01
inc eax
jb 0x404d84
cmp al, 0xad
inc ecx
pushfd
and byte [eax + 0x29], al
rcl esp, 0x72
inc eax
xchg ebp, eax
jo 0x404d56
jmp 0x607757
add byte [ebp + 0x7ba0203d], ch
mov eax, dword [0x22832167]
jo 0x404dc4
adc ah, byte [eax]
add byte [ebx], ah
pushal
jb 0x404e0b
add byte [eax + 0x206d0028], ch
add edi, dword [eax - 0x20]
and dh, byte [ecx]
and cl, byte [ecx - 0x35]
aas
sub ch, cl
invalid
add byte [edi], bh
sub ah, bl
stosd dword es:[edi], eax
aas
push edi
lodsd eax, dword [esi]
push ss
inc ecx
and byte [0x6d2aa074], dl
pushal
jae 0x404e2f
je 0x404db9
pop esp
jne 0x404e7a
sub esp, dword [ebp + 0x4900425b]
pop esp
add byte [eax + 0x7f], dl
jg 0x404e3d
arpl word [esi], dx
xor al, 0xa0
jp 0x404e62
push ebp
mov al, byte [0x1da0311c]
inc ebx
loopne 0x404e6b
sbb al, 0x31
mov al, byte [0x35e0431d]
imul esp, dword [edx], 0xa
and dword [eax + eax + 0x45], eax
and byte [esi - 0x5fb0ffae], ah
add byte [ecx], ah
mov dword [0x14a10320], eax
js 0x404e4c
cmp al, ah
add al, 0x30
pushal
add byte [edx + 0x3500e234], ah
add byte [ecx], ch
and al, byte [ebx]
ja 0x404ebd
adc dword [esi + 0x62], edx
push 0xffffffffffffff80
mov eax, dword [0x13a07083]
cmp ah, byte [eax + 0x208f3771]
xchg edi, eax
loope 0x404e74
invalid
out 9, eax
and dword [eax + 0x22], edi
add byte [edx], ah
pushal
pop es
and al, byte [eax]
and ah, byte [eax + 7]
mov dl, 0x66
mov al, byte [0xa100692c]
mov al, byte [0xa100692c]
scasb al, byte es:[edi]
mov eax, dword [0x66607745]
push edi
and dword [esi - 0x5f], eax
mov edx, 0xa0200d6f
add ebp, dword [esi + 0x60]
push es
outsd dx, dword cs:[esi]
pushal
add byte [ecx + 0x1b], ah
call [ebx]
jmp 0xb62082bb
sbb ebp, ecx
sbb esi, dword [eax]
mov ch, 0x7f
xor ch, byte [ecx - 0x23]
and byte [ecx], bl
outsb dx, byte [esi]
mov al, byte [0x6332772b]
sub esp, dword [eax]
pushal
add al, 0x63
inc esi
ljmp 0x60
enter 0x7da1, 0x62
inc ebx
mov al, byte [0x55005c28]
loopne 0x404efb
loope 0x404e9a
jae 0x404ee1
add byte [eax + 0x32], bl
push ebp
loopne 0x404f23
dec eax
add byte [ecx - 0x4b], al
and byte [edx + 0x5c4ca07e], dh
and byte [ecx], al
popal
and al, 0x44
pushal
and byte [ecx + 0x5c62e1], ch
and esi, edx
arpl word [eax + 0x5a06c01], sp
inc esi
push esp
and byte [ecx], dl
loope 0x404f33
pop esp
add byte [edi + 0x20], dh
sub esi, dword [ebp + edx*2 - 0x20]
add eax, 0x4405e033
pushal
and byte [ebx], ch
je 0x404f54
loopne 0x404f06
xor esp, eax
add eax, 0x74356044
pushal
push ebx
jo 0x404f66
xor eax, 0x70536074
pop edx
add byte [ebx - 0x505f9978], ah
loope 0x404f7f
and byte [bx + si], dl
outsd dx, dword [esi]
pop edx
add byte [ebp + 0x2a0646e], ah
imul edi, dword [ebp + 0x7215a03d], 0x6503a0ad
aas
adc eax, 0x3a0ad72
aas
and dword [eax + 0x3be23a24], 0x2e
mov al, byte [0x6034ae36]
scasb al, byte es:[edi]
xor al, 0x60
add byte [edi + 0x26], bh
jge 0x404f61
push edi
and byte [edx], bl
imul esp, dword [eax], 0x62467610
adc eax, 0x2028597b
sub byte [eax], ah
dec edx
invalid
mov al, 0x10
adc byte ss:[ecx], ch
jno 0x404f82
sub dword [ecx + 0x2b], esi
mov edi, 0x7f625f36
sbb eax, 0x5d6b6257
or dword [ecx + 0x1d106681], esi
daa
aas
pushal
jo 0x404f88
sbb eax, 0x70603f27
sbb al, 0x65
sbb eax, 0xd2740cd0
sbb eax, 0xd2740cd0
sub byte [ecx + 0x4e771f57], dl
add byte [edi], ah
jne 0x404f50
and byte [esi + 0x50], ch
add dh, byte [ebx + 0x30]
xor eax, 0x4ff14ef1
jne 0x404fde
push ebp
mov al, 0x1c
arpl word [eax + 0x2170731d], dx
adc byte [ecx], bl
insb byte es:[edi], dx
jge 0x404f47
das
jns 0x40500a
or al, 0x3f
btr dword [ebp + 0xf358dfd], eax
xor bh, byte [edi + 0xf3f05f0]
aas
invalid
fisubr dword [ecx + 0x10]
pushal
outsb dx, byte [esi]
xor ch, byte [ecx + esi]
ucomiss xmm3, dword [edi]
daa
shl byte [0x309b9fd5], 1
aad 0x9f
wait
xor byte [eax + 0x53502e26], dl
cmp byte [edi + 0x3a], bl
nop
push dword fs:[ebx]
dec esi
dec dword [esi]
pop edi
cmp dh, byte [ebx]
jg 0x404fe3
sbb al, 0x31
wait
pop ss
push ebx
push ecx
pop esi
push esi
xor byte [eax], dl
adc al, 0x91
xor esi, dword [ebx + 0x74]
mov eax, cr2
sbb dh, byte [edx - 0xf]
jo 0x405095
xor byte [eax], al
js 0x40502f
or dh, byte [ecx]
dec esi
aaa
add bh, bl
sbb edi, esi
fistp word [ecx]
push ecx
xor ebx, edi
sbb dword [ebx - 0x50], eax
adc al, 0xf5
xor edi, ebx
sbb edi, ebx
sbb dword [ebp + 0x304219d7], esp
adc al, 0x63
add bh, bh
je 0x4050a9
xor byte [eax], bl
mul byte [ebp - 0x50]
add dword [ecx + 0x17], edx
mov al, 0xa
xchg ecx, eax
xor eax, 0x87535f93
pop edi
aas
or al, 0x73
or al, 0x3f
or al, 0x3f
or al, 0x35
or al, 0x37
adc dl, byte [eax]
and byte [ebx - 0x5108b430], bh
push edx
hlt
jmp dword [edx]
add byte [ecx - 3], bh
jns 0x4050a8
mov al, 0
pop edi
or byte [edi + 8], bl
invalid