Function at 0x87a6e8
Capabilities:
Execute anti-debugging instructions

Disassembly:
call 0x87a60b
push ebx
popal
outsb dx, byte gs:[esi]
imul ebp, dword [bp + 0x65], 0x69685320
insb byte es:[edi], dx
outsb dx, byte gs:[esi]
and byte [esi + 0x32], dh
xor dword cs:[esi], ebp
cmp dword [esi], ebp
xor byte [eax], al
pushfd
cmc
cmc
cld
call fcn.0087a20b
mov bp, 0x558f
add esp, 1
neg eax
mov bp, word [esp]
xchg byte [esp + 4], dh
jmp 0x87a6c4
mov dh, bh
mov bp, dx
mov word [esp + 0xa], dx
lea eax, reloc.WINMM.dll_waveOutUnprepareHeader
lea ebp, [esi*4]
jmp 0x87a6a5
xchg dword [esp + 0x18], ebp
xor ebp, esi
neg dh
mov byte [esp + 0x1a], ah
xchg dx, bp
mov byte [esp + 0x17], dh
jmp 0x87a62f
mov bp, word [esp]
inc eax
xchg word [esp], bp
setnp ah
sub esp, 0x1e
xchg word [esp + 0x1b], bp
jmp 0x87a64c
mov dx, si
mov bp, word [esp + 2]
mov byte [esp + 0x1d], ah
mov dh, ch
bts ebp, ebx
lea eax, [esp + ecx]
jmp 0x87a6d6
mov ebp, 0x315c1a84
mov dl, 0xcc
lea ebp, [esi + 0xe5]
sub dh, ah
rdtsc
lea ebp, [edi*4]
jmp 0x87a689
mov dword [esp], ebp
pop ax
pop ax
xchg word [esp], bp
mov dx, 0x6c89
clc
jmp 0x87a673
mov dh, 0xc3
call fcn.0087a795
mov dword [esp + 0x1f], esi
mov dh, 0xb0
call fcn.0087a730
jmp 0x87a714
push word [esp + 0x25]
xchg word [esp + 0x20], dx
lea ebp, [edx*4]
mov ebp, esp
jmp 0x87a759
mov bp, sp
xchg bp, ax
mov eax, 0x523a9d12
mov dh, byte [esp + 5]
bswap ebp
jmp 0x87a775
mov ebp, dword [esp + 0x14]
sub esp, 0x10
mov bp, word [esp + 0x1e]
lea ebp, [edx*4]
mov bp, word [esp + 0x22]
mov dh, bh
jmp 0x87a741
mov ax, bp
rdtsc
xchg dword [esp + 0xb], ebp
bsf bp, ax
mov dh, ch
xchg ebp, edx
jmp 0x87a856
mov ax, word [esp + 0x1a]
lea ebp, [eax*4]
jmp 0x87a83f
mov ebp, dword [esp + 0x1d]
mov dh, byte [esp + 0x1f]
bsf ax, si
mov ebp, edx
xchg byte [esp + 0xf], dh
jmp 0x87a7af
xchg bp, ax
xchg word [esp + 0x13], bp
mov byte [esp + 0x35], ah
or dx, 0x9dc6
add esp, 0x11
xchg dx, bp
jmp 0x87a7c6
pop word [esp + 0x15]
mov eax, ecx
push edx
xchg byte [esp + 0x28], dh
mov ebp, dword [esp + 0x1d]
mov dword [esp + 5], ebp
jmp 0x87a86f
mov dh, bh
push word [esp + 0x1b]
mov word [esp + 0x20], bx
pop bp
inc dl
xchg ah, dh
jmp 0x87a7f9
mov eax, 0xfc48dce4
push word [esp + 0x23]
neg dh
not dh
rdtsc
jmp 0x87a822
mov edx, ecx
mov al, 0x1e
xchg dword [esp + 0xc], edx
pop dx
lea ebp, [edi*4]
setl ah
jmp 0x87a7e0
mov bp, 0xd1f3
mov eax, 0x213db3b8
push word [esp + 0x21]
mov word [esp + 0x1c], di
mov dword [esp + 9], ebp
pop eax
jmp 0x87a9d3
add esp, 0x15
lea esp, [esp + 0x12]
not ebp
mov dl, 0x5c
not bp
inc dx
jmp 0x87a9a3
not dx
inc bp
setb dh
setbe dh
mov dh, byte [esp + 3]
xchg byte [esp + 0x1a], dl
jmp 0x87a89e
mov ebp, 0x4bf2d894
lea ebp, [esp + edi]
pop ebp
mov bp, 0x8a57
pop ebp
xchg bp, ax
jmp 0x87a93e
pop dword [esp + 1]
lea esp, [esp + 0x19]
lea edx, reloc.WINMM.dll_waveOutUnprepareHeader
pop dword [esp + 2]
push dword [esp + 6]
jmp 0x87a8ce
mov edx, ecx
mov dh, byte [esp + 0x1f]
lea eax, [edi + ebp]
xchg word [esp + 0x33], bp
pop edx
mov dh, ch
jmp 0x87a8f3
mov edx, dword [esp + 0x11]
bswap ebp
mov bp, 0x193b
mov ebp, dword [esp + 3]
rdtsc
jmp 0x87a959
lea ebp, [ebp*4]
pop dword [esp + 4]
xchg byte [esp], al
sub esp, 0x1a
mov dword [esp + 0x17], esi
bsf bp, ax
jmp 0x87a924
lea edx, [ebp + 0x97]
bswap ebp
pop dword [esp + 0xe]
mov eax, 0x3a44f6f8
pop word [esp + 1]
jmp 0x87a988
btr eax, edx
cmc
mov dh, byte [esp + 0x17]
cmc
mov dx, word [esp + 0x17]
neg edx
jmp 0x87a911
add esp, 0xf
add esp, 0xe
sub esp, 2
lea ebp, [ebp - 0x5f]
mov eax, dword [esp]
jmp 0x87a9b4
pushal
mov dword [esp + 0x16], ecx
not dh
inc al
shl bp, cl
sub esp, 0x16
jmp 0x87a976
lea eax, [ebx*4]
mov byte [esp + 1], ch
lea esp, [esp]
bswap eax
push word [esp + 1]
jmp 0x87ab20
mov dh, ch
stc
mov word [esp + 8], sp
rdtsc
clc
lea ebp, reloc.WINMM.dll_waveOutUnprepareHeader
jmp 0x87a8b9
stc
mov ebp, 0xccba20dc
mov dh, byte [esp + 1]
push edx
mov bp, sp
lea esp, [esp + 5]
jmp 0x87aa1d
pushal
lea esp, [esp + 0x5b]
mov dx, 0xc2ab
push esp
pop word [esp]
inc edx
jmp 0x87a9e9
push esp
mov dword [esp], esi
not bp
mov dh, 0x48
mov edx, dword [esp + 3]
mov ebp, dword [esp + 4]
jmp 0x87aa76
xchg dh, dl
inc dl
mov bp, 0x72b3
sub esp, 0x14
sub esp, 0xe
sub esp, 0x18
jmp 0x87aa0c
mov ebp, ebx
mov edx, dword [esp + 0x20]
pop ebp
bsf bp, si
neg edx
push dword [esp + 0x1a]
jmp 0x87aad8
lea ebp, [edi*4]
lea esp, [esp]
mov ebp, dword [esp]
pushal
rdtsc
jmp 0x87aa48
stc
btr edx, edi
xchg ah, dh
pop edx
neg dh
inc eax
jmp 0x87aa5f
mov ebp, dword [esp]
pop bp
rdtsc
not bp
add al, dh
mov byte [esp], bh
jmp 0x87aa35
add esp, 0x19
mov word [esp], dx
add esp, 2
mov ebp, dword [esp]
rdtsc
mov dl, dh
jmp 0x87ab08
cmc
mov dword [esp + 3], ecx
pop ebp
lea ebp, [ebp*4]
rdtsc
add esp, 5
jmp 0x87aa9e
mov dh, 0x6a
push dword [esp + 0xe]
xchg byte [esp + 0x16], dh
mov dword [esp + 0x1d], esi
mov eax, dword [esp + 0x13]
mov edx, 0xd446d0e6
jmp 0x87aab5
rdtsc
mov bp, bx
mov ah, byte [esp]
mov dh, 0xca
mov dx, 0xcf07
call fcn.0087aaf1
or byte [ebx + 0x664c7dc2], ch
mov ebp, dword [esp + 4]
mov bp, word [esp + 4]
xchg byte [esp], dh
pop word [esp]
rdtsc
mov bp, 0xaa6d
mov dx, bx
jmp 0x87aa8d