Function at 0xa4a0de
Capabilities:
Execute anti-debugging instructions

Disassembly:
clc
mov eax, 0xc69f5994
lea esi, [edi*4]
pushal
pop di
jmp 0xa49f6c
inc ax
xchg dh, al
bswap ecx
xchg ch, dl
mov bl, 8
xchg dx, di
jmp 0xa49f0d
rcl si, cl
mov bl, 0x58
lea esi, reloc.WINMM.dll_midiStreamOut
mov word [esp], sp
add esp, 1
mov ax, 0x420b
jmp 0xa49f23
mov edx, dword [esp + 0x18]
push dword [esp + 0x11]
xchg bp, dx
rdtsc
neg eax
rdtsc
jmp 0xa49fce
mov cl, 0xda
xchg word [esp + 0x19], di
lea esi, [eax*4]
xchg word [esp + 0xd], di
mov word [esp + 0xb], bx
mov dx, di
jmp 0xa49f52
mov word [esp + 0x15], bx
mov ecx, dword [esp + 0x26]
inc dx
rdtsc
call fcn.00a49f89
bswap edx
mov byte [esp + 0xb], bh
mov byte [esp + 0x17], bh
pop word [esp + 0x1e]
add esp, 0x22
pop edi
jmp 0xa4a0a2
xchg dword [esp + 0x10], edx
not esi
mov bx, 0xece3
push dword [esp + 0x1a]
rdtsc
jmp 0xa49f9f
mov byte [esp + 3], ch
neg bx
mov cx, bx
lea esp, [esp + 3]
rdtsc
add bx, 0x37e6
jmp 0xa49f3a
mov ebp, dword [esp]
cpuid
rdtsc
call fcn.00a4a03f
neg dx
push dword [esp]
xchg di, bp
stc
rdtsc
bsr di, bp
jmp 0xa4a278
jmp 0xa49fe7
lea ecx, [edx + ebx]
lea ecx, [ebx + ebp]
bsf si, ax
bsf dx, si
lea eax, [ebp*4]
pushal
jmp 0xa4a1ca
push word [esp + 3]
xchg dx, si
bsf si, ax
shl dx, cl
setbe ah
neg eax
jmp 0xa4a0e3
mov word [esp + 0x16], di
stc
mov bh, byte [esp + 4]
inc ebp
btr edx, edx
xchg byte [esp + 2], dl
jmp 0xa4a150
lea ecx, reloc.WINMM.dll_midiStreamOut
btr ebp, edx
not ah
pop dword [esp + 0x1a]
btr edx, esp
push word [esp + 0x13]
jmp 0xa4a11d
xchg ah, bl
xchg byte [esp + 0x18], al
neg ah
xchg bh, cl
mov ebp, dword [esp + 1]
mov dword [esp + 0x1f], eax
jmp 0xa4a1b0
pop word [esp + 0x1d]
bswap esi
mov ebp, 0x81efec04
xchg dword [esp + 0x17], edx
lea ebp, [ecx + edi]
jmp 0xa4a137
inc cx
mov word [esp + 0x15], sp
xchg ch, dl
not si
stc
xchg esi, eax
jmp 0xa4a16b
mov word [esp], dx
mov ecx, dword [esp]
push word [esp + 1]
mov ebx, eax
bswap ebp
jmp 0xa4a247
add esp, 0x21
pop cx
xchg ebp, ebx
cld
xchg dx, ax
rcr esi, 0xd
jmp 0xa4a19a
mov esi, 0x6ba3b5c4
not edx
bswap ecx
mov si, sp
neg bx
bswap ecx
jmp 0xa4a189
push word [esp]
xchg dword [esp], ebx
xchg di, bp
xchg word [esp], dx
jmp 0xa4a221
ror ebp, 0xb
cmc
mov edi, 0xa40059c
mov ah, byte [esp]
lea esi, [esi + 0xf5]
jmp 0xa4a1dd
mov ecx, dword [esp + 1]
xchg dword [esp], ebp
add esp, 1
bsr si, bp
mov word [esp], dx
inc ecx
jmp 0xa4a1f3
bsr cx, cx
inc edx
mov ebp, eax
sub esp, 0xa
lea edx, [ebp - 7]
mov word [esp + 0xa], dx
jmp 0xa4a25a
mov dword [esp], esi
mov dword [esp], eax
sub bl, ah
bswap edi
mov dword [esp], ebp
mov byte [esp + 1], ah
jmp 0xa4a20c
mov byte [esp + 1], ch
xchg dword [esp + 2], edi
call fcn.00a4a2d2
movsd dword es:[edi], dword [esi]
sub byte [esi - 0x2a34d727], bh
inc ebp
aad 0xbc
dec edi
scasd eax, dword es:[edi]
je 0xa4a2dc
mov ds, word [ecx]
js 0xa4a2da
popal
ror dh, 7
mov byte [esp + 3], ah
mov word [esp + 2], di
xchg dh, al
pop word [esp + 4]
jmp 0xa4a107
mov bl, 0xd8
mov ah, byte [esp + 0xb]
mov ebp, dword [esp + 5]
bswap eax
setae ch
lea edx, [ecx + 0x33]
jmp 0xa4a2fc
mov ax, sp
mov dword [esp + 5], esi
mov al, 0x66
lea esp, [esp + 1]
xchg byte [esp + 6], cl
bswap esi
jmp 0xa4a291
push cs
jmp 0xa4a2b3
salc
mov ah, byte [esp + 1]
mov al, 0x2e
bsr si, bp
cpuid
mov edx, 0x31d644a4
mov ah, byte [esp + 1]
jmp 0xa4a624
mov dl, dh
mov dx, 0xdb0f
pop bx
xchg word [esp + 0xb], si
pop ebp
xchg ch, dl
jmp 0xa4a2dd
lea ebp, reloc.WINMM.dll_midiStreamOut
xchg word [esp], bx
and cl, bh
sub esp, 0x16
mov bl, 0x60
lea esp, [esp]
jmp 0xa4a334
mov ax, 0xca3f
lea esi, [ebx*4]
pop edi
add esp, 0x11
mov ecx, dword [esp + 4]
sub esp, 4
jmp 0xa4a34c
mov ah, byte [esp + 0x19]
mov cx, word [esp + 0x1c]
cld
pop ebx
xchg byte [esp + 4], al
xchg edi, ebp
jmp 0xa4a370
xchg ch, dl
pushal
pop ebx
cld
pop ebx
pop ebp
jmp 0xa4a3b5
btc edi, edi
mov eax, ecx
rdtsc
xchg dx, di
xchg word [esp + 9], si
mov cx, 0x59c3
jmp 0xa4a488