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

Disassembly:
and dword [esp], edx
jne 0x103ea01f
push 0x9f3d8d36
adc edi, 4
shrd ax, dx, cl
pop ecx
mov word [ecx + edi + 0x60c272ca], ax
mov edx, ecx
neg cx
movzx eax, dl
jmp esi
not eax
push edx
inc eax
dec dl
jnp 0x101c80dd
mov dx, word [edi + 2]
mov ecx, 0x361eac1c
and ecx, ecx
add cl, 0x27
mov cl, byte [edi + ecx*2 - 0x6c3d5882]
jnp 0x10182411
mov edx, 0x47118e08
movsx eax, dl
mov ecx, eax
mov edx, dword [edi + edx - 0x47118e08]
sal ecx, 0x8b
bswap eax
lea edi, [edi + ecx - 0x3ffc]
sar eax, 0x9d
lea eax, [eax + eax + 0x7224d51d]
not al
xor edx, ebx
call fcn.102a9a5c
mov edx, 0x623b6e89
lea edx, [edx*4 - 0x67d73450]
mov ecx, dword [edi + edx - 0x211685d4]
sub edx, 0x6829ce9f
xor ecx, ebx
rol ecx, 3
add ecx, 0xfb63bbb
shr edx, 0x2d
movsx eax, dx
ror ecx, 1
call fcn.10298297
call fcn.10347253
xadd edx, ecx
neg eax
rol eax, 2
rol ecx, cl
jae 0x1038ba7f
add edi, 4
mov ecx, eax
xor edx, ebx
rol edx, 1
sar ecx, cl
sar eax, cl
xor edx, 0xe987b9aa
sar ecx, 0xdf
rol eax, cl
ror edx, 1
push ecx
call fcn.10253351
sub edx, 0x4e94899f
xchg esp, eax
dec esi
add al, dl
neg al
xor al, 0x14
xor bl, al
add eax, esp
ror dx, 0x6a
dec dx
adc dx, dx
mov word [eax], cx
mov eax, 0xaa24af85
mov ecx, dword [edi + 2]
jae 0x102975aa
test dword [edi + 0x4f8baa24], ebp
add cl, byte [edi]
add dword [edx - 0x2f], 0x10
add byte [edx + ebx + 0x5e2e3072], bh
mov esp, 0x2e30721a
pop esi
pop esi
aad 0x62
sar dword [edx], 1
outsb dx, byte [esi]
stosb byte es:[edi], al
push ebp
wait
or dword [esi], ebp
inc byte [edx]
mov edx, 0x2ffd0025
pop esi
cmp edi, eax
jae 0x1018a45b
mov ebx, 0xbd397648
cmp dl, cl
aas
jns 0x1018a41a
loope 0x1018a441
push ss
hlt
and eax, 0xeda3f635
xor cl, bl
add cl, 0x15
or eax, eax
or eax, 0x1b237b9b
dec ax
rol cl, 1
shl eax, 0x8b
add cl, 0x16
rol cl, 1
and eax, eax
add eax, eax
xor bl, cl
jmp 0x101c5c43
xor eax, 0x1f0c6310
xchg cx, dx
sub edx, 0x6039e50e
jno 0x10183617
pop eax
in eax, 0xcb
or dword cs:[0xb4c0efea], 0xffffffa4
out 0xd, eax
ljmp 0x2a97
inc eax
neg cl
neg eax
xadd cl, dh
push edx
rol cl, 0xc4
xor ebx, eax
rol edx, cl
add edi, eax
fld qword [esi]
pop eax
jmp edi
or al, ah
not al
adc ecx, esp
xor al, 0xa5
dec ax
mov dword [ecx + eax - 0x37b9a0f9], edx
mov edx, dword [ebp + eax*2 - 0x6f7341ee]
mov eax, dword [ebp + eax - 0x37b9a0f1]
jp 0x103d4014
mov edx, 0x7f1b813d
lea ebp, [edx + ebp - 0x7f1b8141]
mov eax, dword [ebp + edx - 0x7f1b813d]
sar dl, 0xe3
inc dx
lea ecx, [edx + 0x2319d404]
xor eax, ebx
neg eax
dec cl
bswap eax
jg 0x101b3460
je 0x101c5cfd
std
sbb edi, dword [ecx + edx*2 + 0x13]
mov esi, 0x11547c4f
adc edi, dword [esi + 0x19561e4f]
adc edi, dword [esi + 0x5978084f]
adc edi, dword [esi + 0x5f5c764f]
add dh, 0xa4
mov ecx, 0xac2dd861
invalid
pop ebp
mov cs, esi
into
sbb edx, ebp
cmp bh, byte [edx + eax + 0x3cd8bdbc]
mov byte [0x156df0e2], al
and byte [edi - 0x46c40e15], ah
xor byte [ecx - 0x3006ef56], 0x11
clc
invalid
loop 0x101c5ccb
insd dword es:[edi], dx
adc eax, 0xf1eba720
cmp edi, dword [ecx - 0x554e7d0e]
adc cl, bh
iretd
aas
in eax, 0x16
sub eax, 0xdcaa2cee
push 0x1f
sbb esi, dword [ebp - 0x6d830eb2]
lodsd eax, dword [esi]
cmp al, 3
scasb al, byte es:[edi]
sbb al, 0x6f
pop edi
inc esi
imul ebx, dword [eax + 0x1a], 0xffffff9f
movsb byte es:[edi], byte [esi]
xchg edx, eax
cld
pop esi
dec esi
rcr dword [esi], 0x65
xchg esi, eax
rcr bl, 1
in eax, 0x9f
inc edi
dec dword [ecx + 0x106caf98]
das
inc esp
sub al, 0x4f
insd dword es:[edi], dx
pop ds
das
add eax, 0x2f0ba239
test byte [esi + 0x78], cl
jbe 0x101c5d9e
out dx, eax
fcom qword [esi + 0x6a]
ror byte [ebp - 0x7fd3e557], cl
push eax
jno 0x101c5cd9
add byte [ebx - 0x71443b87], 0x8c
jmp 0x31d240b4
and al, 0x61
and dword [ebx - 0x5efe7041], esp
jmp 0x101c5dde
push eax
cmp eax, 0x2b1bfd64
add al, 0x12
mov esi, 0x7037dd4f
adc bh, byte [esi + 0x38117d4f]
adc bh, byte [esi + 0x1c371d4f]
adc bh, byte [esi + 0x22213f4f]
rcr byte [ebx - 0x56], 1
mov ecx, edx
dec edx
sti
push edx
mov ah, 0xa
out dx, eax
js 0x101c5e6e
push es
lahf
xchg esp, eax
aad 0x37
scasb al, byte es:[edi]
and esi, esi
sub eax, 0xae1a3f09
fild word gs:[ecx]
aas
mov esi, 0x1df4da5
aas
int1
jne 0x101c5e04
add dword [edi], edi
push ecx
imul ebp, dword [ecx - 0x21], 0xdd623f01
sub eax, 0x253f29f1
salc
std
sbb eax, eax
out dx, eax
adc dword [esi - 0x8293db1], edi
adc dword [esi - 0x18e129b1], edi
adc dword [esi - 0x748113b1], edi
adc dword [esi - 0x660f67b1], edi
rcr dword [ebx - 0x56], cl
add al, 0x19
dec ecx
sti
push edx
inc ebp
popfd
clc
aaa
fsubr dword [0x37c1d8b4]
xor eax, 0x3f1d61a9
and eax, 0x15936e59
aas
cmp dl, byte [ecx + 0x3f159312]
mov dword [ebp + 0x76], ebx
adc eax, 0x12913a3f
xchg ebx, eax
adc eax, 0x765d893f
xchg ebx, eax
adc eax, 0x560dbd3f
xchg ebx, eax
adc eax, 0xccca7d3f
push edi
invalid
xor eax, 0x2d30e60f
xor ebx, eax
rol ecx, cl
inc edx
sar edx, 0x5a
mov dword [ebp - 4], eax
jne 0x10018c7f
mov edx, dword [ebp]
mov eax, 0x34273c3e
sub ax, ax
mov ecx, 0x168d48b9
movzx ecx, byte [eax + edi - 0x34270000]
jp 0x1019a00d
jge 0x10372fc8
pop eax
rol edx, 3
sal cx, 0x28
xor cl, al
sbb edx, 0x83a40490
xchg dword [esp + ecx - 0x6b278042], ecx
xor edx, 0xa1293323
ror ecx, 0x34
and ax, ax
sar eax, 0x8b
rol edx, cl
not cl
xor al, 0x12
xor ebx, edx
or eax, 0x81be4fbe
adc edi, edx
movzx edx, word [esp + ecx - 0x2fb1021d]
ror dword [esp + edx*2 - 0x10084], cl
pop edx
jae fcn.1025c2e8
xor al, bl
sub al, 0xb5
xor al, 0x8f
dec dl
jp 0x1018a43d
xor ecx, ebx
lea eax, [edx + edx - 0x595c755a]
neg ecx
bswap eax
call fcn.1038f9e1
mov ecx, dword [ebp + edx - 0x6141567c]
mov eax, 0x7806312c
lea ebp, [ebp + eax - 0x78063131]
xor ecx, ebx
jmp 0x10362b77
lea eax, [esp + 0x24]
and dx, 0x9cb2
sete dl
mov dword [eax], ecx
or dx, dx
call fcn.1018ac26
jae 0x1028dc95
call fcn.101c1444
bswap edx
sub eax, 0x69729bd
xor cl, cl
sub ecx, edx
xor eax, 0x2d33b59b
shr ecx, 0x41
dec cx
sub dl, 0x10
not eax
lea ecx, [ecx + ecx*2 + 0x689ae40a]
call fcn.102d053b
push 0xac32df36
call fcn.103e87b7
mov edx, 0xfaa19bb2
mov eax, 0x6b3d6432
mov eax, dword [esi + eax - 0x6b3d6432]
sar edx, 0xa4
xor eax, ebx
sar edx, 1
dec eax
movsx ecx, dx
bswap eax
jmp 0x101aabe1
jmp 0x102de27e
bswap ecx
pop eax
lea edx, [edx*2 - 0x37ce71fd]
inc ecx
rol ecx, 1
inc ecx
xor ebx, ecx
ror dword [esp + eax - 0x3126fd3a], 3
mov dword [eax + esi - 0x3126fd46], ecx
xor edx, 0xab0df02
rol eax, 0x1e
lea esi, [esi + eax*2 - 0x18937ea8]
call fcn.102a0360
mov ecx, dword [ebp]
mov dx, word [ecx]
mov eax, 0x2bbbaaaf
jmp 0x1024d5f7
lea ebp, [ebp + eax - 0x2bbbaaad]
mov word [ebp + eax*2 - 0x5777555e], dx
movzx edx, al
jmp 0x1038df8d
xor eax, ebx
xadd ecx, edx
xor eax, 0xeda686b2
sub eax, 0xd7aea19c
xor eax, 0xbb8c4cbc
dec edx
and cx, cx
lea eax, [eax + ecx*2 - 0x42bf2533]
rol cx, 0x82
neg eax
call fcn.101f565e
lea ebp, [edx + ebp - 0xbd7156e]
mov eax, dword [ebp + edx*2 - 0x17ae2ad4]
not dx
sar dl, 0x27
movsx ecx, dl
xor eax, ebx
jmp 0x101da49a
ja 0x101d5d82
pop ecx
add edx, edx
not eax
dec edx
dec edx
adc cl, 6
xor eax, 0xe30a2d8d
call fcn.1029b2a8
out 0x8a, al
int 0x1b
call 0x5fbbafdc
out dx, al
fcmovb st(0), st(7)
cld
mov cs, word [edi + 0x1c]
retf
mov eax, dword [ebp]
mov edx, 0xb32b4414
movsx ecx, dx
dec ecx
mov cx, word [ebp + ecx*8 - 0x22094]
add dx, dx
adc ebp, 6
sub edx, edx
mov word [eax + edx], cx
lea ecx, [edx*2 - 0x666f136a]
lea esi, [esi + edx*2 - 4]
lea eax, [ecx*8 + 0x4625bc2b]
add dl, al
call fcn.103bd2a1
and eax, edx
mov dword [edi], eax
sub esi, 4
mov eax, dword [esi]
mov edx, 0x5c3be888
movzx ecx, dx
not dx
xor eax, ebx
lea eax, [ecx + eax + 0x480f6baf]
neg cl
sar cl, 0xe5
shr dl, cl
not eax
and edx, 0x11327235
dec edx
rol eax, cl
inc eax
shr dx, cl
adc cl, cl
not eax
dec eax
xor ebx, eax
add ebp, eax
jmp ebp
jmp 0x1021e038
lahf
adc dword [ebx - 0x12], esp
lcall 0x4b03, 0x52118f25
mov ebp, 0x7aa5bd79
lahf
stc
aam 0xf6
push edx
mov cl, byte [esi + 0x7aab06d8]
xor bl, byte [esi - 0x54f9270e]
push ss
mov ebx, 0x66533427
sar dword [esp + edx - 0x569931c2], 0x6b
sar word [esp + edx - 0x569931c2], 0x6b
jne 0x1036f356
sub eax, 0xcd1bd149
cmp byte [edi], bh
xchg edx, eax
dec edi
pop ss
pop ss
add byte [edi], bh
xchg edx, eax
dec edi
sub eax, 0x923f4005
dec edi
jae 0x10307145
adc byte [edi], bh
xchg edx, eax
dec edi
pop ds
cmp dword [edx], 0xfffffffd
ja 0x1030709a
pop ebx
mov byte [0xe452d767], al
xor dl, bl
stosb byte es:[edi], al
mov edi, eax
inc bp
dec edx
lcall 0x705d, 0x89c7502d
inc ebp
push edx
mov esp, 0x7173904
das
lodsb al, byte [esi]
inc esi
ret 0x98d0
inc edi
add al, byte [ecx + 0x2c7]
add byte [esi - 1], ah
leave
jmp edi
xor ebx, ecx
ror al, 4
adc edx, 0x71077626
adc edi, ecx
jmp 0x10317ec2
mov eax, dword [edi]
call fcn.1035ce5b
mov edx, 0xf428ea96
movsx eax, dl
ror eax, 0x7d
fadd qword [esi]
neg edx
jns 0x102907e1
sal edx, cl
sbb eax, 0x960b4e29
call fcn.102fb5ab
not ecx
sar ax, 0x4a
add dx, dx
jno 0x102f4dfe
xor ecx, 0xbb3fc18b
jmp 0x103634b0
rol ecx, 3
xadd dl, al
lea edx, [eax + eax*4 - 0x1fe2dd77]
not ecx
add dx, 0xf8bf
jg 0x103289d9
not al
xor bl, al
sub word [esp + edx - 0x569931c2], dx
rol ecx, 0x21
cmove dx, cx
lea eax, [esp + eax + 0xc]
sbb ecx, 0xf31a28d
mov edx, dword [eax + edx - 0x569931c9]
mov dword [esi - 6], edx
mov ecx, dword [ebp - 0xb]
sbb ebp, 0xb
mov eax, 0xb18b4084
xor ecx, ebx
lea edx, [eax + eax*8 + 0x230a8f36]
sub dx, dx
jns 0x101f6c8a
jmp 0x101db195
neg edx
push eax
xor ebx, edx
shl cl, 0x24
add esi, edx
call fcn.102bab10
movsx ecx, dl
mov word [esi - 2], ax
bswap ecx
push edx
pop edx
movzx eax, byte [ebp - 7]
xor al, bl
mov dword [esp + 4], edx
ror edx, 0xa4
shl ecx, 0x6d
add al, 0x3a
xor al, dl
sub edx, 0x7406ae36
dec al
mov dword [esp + edx - 0x569931c1], edx
rol al, 1
jmp 0x103070c0
neg eax
jmp 0x102cb2f0
mov ecx, 0xf5ba91b8
mov eax, dword [esi + eax - 0x2bbbaaaf]
xchg ch, dl
sal ecx, 0x14
lea esi, [esi + edx*2 - 0x11e]
sal dl, 0xc3
neg cl
xor eax, ebx
bswap eax
xchg edx, ecx
inc ecx
shr cx, 0x2f
inc eax
dec ecx
sal edx, cl
ror eax, 2
rol dl, 0xa3
sar cl, 0x47
not dl
inc eax
call fcn.103c0457
call fcn.1016d4f7
movzx eax, byte [esi + 4]
xor al, bl
ror dx, 3
not al
call fcn.102212fa
call fcn.10321d60