Function at 0x6d52e0
Capabilities:
Execute anti-debugging instructions

Disassembly:
neg dx
cpuid
xchg ecx, ebx
jmp 0x6d5517
lea ebp, [edx*4]
mov dword [esp], ecx
mov cx, di
mov ebx, ebp
lea edi, [edx + ebp]
jmp 0x6d53be
bswap eax
popal
xchg di, bp
lea esi, reloc.WINMM.dll_midiStreamOut
lea esp, [esp + 0xd]
jmp 0x6d5310
push dword [esp + 0xc]
cpuid
mov ebp, ecx
inc bx
xchg ah, bl
mov word [esp + 0x22], di
jmp 0x6d5328
not dh
clc
mov ebp, dword [esp + 0x2c]
setnp bh
xchg bp, bx
rcl dx, cl
jmp 0x6d533f
cld
xchg byte [esp + 0xc], cl
mov bx, sp
neg ah
lea edi, [esi - 0xc5]
not ecx
jmp 0x6d5402
lea ebx, [edx + esi]
mov esi, ecx
clc
sub esp, 0x14
lea ebx, [eax + ebx]
xchg bh, cl
jmp 0x6d5369
mov word [esp], bx
push word [esp + 1]
bsf bp, si
mov word [esp + 2], bx
xchg word [esp + 5], bx
neg dh
jmp 0x6d5381
rdtsc
mov ebp, dword [esp + 3]
sub ebx, eax
inc cx
xchg word [esp + 3], bp
bsf si, si
jmp 0x6d539c
mov bp, word [esp]
cpuid
mov si, 0x239b
cmc
lea esp, [esp + 2]
xchg si, dx
jmp 0x6d5413
rdtsc
xchg di, si
mov word [esp], di
bsr ax, bp
cpuid
jmp 0x6d53d3
xchg bh, cl
mov edi, dword [esp + 1]
cpuid
push edx
lea esp, [esp + 0x1d]
mov dl, dh
jmp 0x6d53eb
mov byte [esp], ch
mov bx, word [esp]
lea esi, [edx + esi]
btr ecx, esp
and edi, ecx
jmp 0x6d545d
rdtsc
xchg bp, ax
sub esp, 0x1a
setp ch
mov eax, dword [esp + 5]
mov byte [esp + 7], bh
jmp 0x6d5357
mov dx, 0x2a0f
mov dword [esp + 5], esi
mov si, word [esp + 5]
mov di, 0x495f
jmp 0x6d54bd
mov bp, word [esp]
btc eax, ebx
sub esp, 0x10
pop edi
mov word [esp + 2], bx
mov byte [esp + 5], bh
jmp 0x6d5442
pop dword [esp]
xchg dword [esp], eax
btr ecx, esp
mov eax, ecx
xchg ch, dl
mov eax, dword [esp + 4]
jmp 0x6d54fb
xchg byte [esp], cl
push dword [esp + 4]
xchg bh, cl
lea ebp, [ecx*4]
jmp 0x6d5473
mov al, ah
pop esi
mov byte [esp + 1], dh
mov ebp, dword [esp + 3]
btr ebp, esp
pop edi
jmp 0x6d548b
lea ebp, reloc.WINMM.dll_midiStreamOut
mov ch, byte [esp + 0xc]
mov esi, 0x3273dfa4
xchg dword [esp + 5], edi
stc
xchg ebp, eax
jmp 0x6d54a2
xchg word [esp], si
cpuid
call fcn.006d54d4
ja 0x6d5569
jbe 0x6d556f
dec edi
jne 0x6d5581
inc ebx
insb byte es:[edi], dx
outsd dx, dword [esi]
jae 0x6d5577
add byte [ebx], bh
adc cl, byte [ebp - 0x785df0e4]
invalid
cpuid
xchg esi, edi
mov bx, word [esp + 9]
xchg dword [esp + 7], ebp
inc di
stc
jmp 0x6d542a
popal
sub esp, 0x18
pop ebx
not ch
mov byte [esp + 0x21], dh
bsr bp, cx
jmp 0x6d55a5
and dword [esi + 0xf], esp
mov ebp, 0x762febe9
popal
mov al, byte [0x87751ae3]
xchg ebx, eax
and al, 0x2a
jmp 0x6d5565
mov dh, byte [esp + 0x22]
xchg ch, dl
inc dl
xchg word [esp + 6], bp
mov ebp, dword [esp + 0x1d]
btc esi, ebx
jmp 0x6d55fc
push dword [esp + 0xb]
call fcn.006d5595
ja 0x6d5636
jbe 0x6d563c
dec edi
jne 0x6d564e
push eax
jb 0x6d5642
jo 0x6d5640
jb 0x6d5646
dec eax
popal
jb 0x6d55e8
pop dx
lea ebx, [edi*4]
xchg ch, dl
pop ebx
mov bh, byte [esp + 3]
pop bx
jmp 0x6d55ca
bsf cx, si
mov word [esp + 0x1c], di
xchg ecx, eax
lea ecx, [edi*4]
inc di
shr ecx, 0x15
call fcn.006d565c
leave
push 0x310f228b
rdtsc
lea esp, [esp + 0x1c]
inc cx
mov al, 0x86
mov bh, byte [esp + 0x19]
xchg ch, dl
jmp 0x6d55e8
xchg word [esp + 8], dx
mov word [esp + 3], dx
sub esp, 0xa
mov dl, 0xb4
add eax, dword [ebx - reloc.WINMM.dll_midiStreamOut]
jmp 0x6d567f
arpl word [ecx + 0x70], sp
add byte gs:[ecx + 0x245487c2], dh
jo 0x6d56a9
add byte [ecx + 0x245487c2], dh
ret 0x5487
pop ss
popal
push dword [esp + 5]
and al, 5
stc
stc
jmp 0x6d562d
lea eax, [ebp - 0x6f]
lea edx, [ebx*4]
btr ebp, edx
add esi, ebp
push dword [esp + 0xe]
pop bx
jmp 0x6d5812
mov ah, byte [esp + 0xa]
xchg ah, bl
xchg word [esp + 0xe], ax
ror ebp, 0x11
bsf di, si
sub bl, ah
jmp 0x6d565e
shl byte [esi - 0x75], 0xf2
popal
sub esp, 0x1c
sub esp, 0x16
jmp 0x6d561b
push dword [esp + 2]
lea ecx, [esi*4]
lea esp, [esp + 9]
push word [esp + 3]
call fcn.006d56b9
pop word [esp + 6]
not si
lea esp, [esp + 0xb]
pop ebx
mov bp, 0x8d65
ror ah, 1
call fcn.006d579a
push esp
insb byte es:[edi], dx
jae 0x6d5759
insb byte es:[edi], dx
insb byte es:[edi], dx
outsd dx, dword [esi]
arpl word [eax], ax
xor byte [ebx - 0x72f8db8c], cl
and al, 0x24
mov esi, dword [esp + 7]
lea esp, [esp]
pop word [esp + 3]
pop word [esp + 0x11]
neg dx
jmp 0x6d56e3
lea ebp, [esi + 0xcd]
xchg byte [esp + 0xa], bl
btc edi, edi
xchg byte [esp + 0x10], al
rol ax, cl
mov al, 0x4e
jmp 0x6d571e
mov bl, bh
push esp
pop word [esp + 0x11]
neg esi
jmp 0x6d57ba
bswap ebx
mov dword [esp], esi
mov dx, sp
xchg dword [esp], esi
bsr bx, cx
neg dh
jmp 0x6d579c
mov dword [esp], eax
mov dword [esp], ebp
push word [esp]
add esp, 5
mov bl, bh
clc
jmp 0x6d57ed
mov si, word [esp + 0x10]
xchg ch, dl
not bx
xchg word [esp + 9], bx
add esp, 0x15
not ch
jmp 0x6d5765
mov byte [esp + 0x1c], dh
call fcn.006d58bd
insd dword es:[edi], dx
imul esp, dword [ecx + ebp*2 + 0x53], 0x61657274
insd dword es:[edi], dx
inc ebx
insb byte es:[edi], dx
outsd dx, dword [esi]
jae 0x6d584d
add byte [esi], cl
cdq
clc
invalid
pushal
bsr bx, cx
xchg byte [esp + 1], cl
mov ebp, 0xe26edfd6
pop word [esp + 0x11]
mov cl, ch
jmp 0x6d57d0
lea edx, [ebx + ebx]
mov bp, word [esp + 0xf]
lea ecx, [esi - 0xfd]
push word [esp + 0x15]
mov ebx, dword [esp + 3]
inc cx
jmp 0x6d573b
lea edx, [eax + edx]
push edx
xchg word [esp + 1], cx
xchg bp, ax
lea ebx, [ecx + 0xfb]
push word [esp + 3]
jmp 0x6d589e
xchg byte [esp + 0x18], bl
clc
mov byte [esp + 0x10], dh
pop word [esp + 0x1b]
pop word [esp + 0x1d]
xchg dword [esp + 0x1a], edx
jmp 0x6d5830
xchg byte [esp], cl
clc
push word [esp + 0x15]
mov si, 0x6697
inc bl
rdtsc
jmp 0x6d595c
inc si
lea esi, [eax*4]
mov ebp, 0x7b113ade
mov bh, byte [esp + 0x1b]
lea edi, [esp + eax]
push edx
jmp 0x6d5866
xchg byte [esp + 0x22], al
push word [esp + 0x15]
cld
mov dh, byte [esp + 0x1f]
xchg word [esp + 0x25], cx
xor dl, ch
jmp 0x6d5881
xchg si, ax
mov edi, 0xfa6d362
cpuid
rcr eax, 0x13
cld
cpuid
jmp 0x6d592a
btr ebp, edx
lea edx, [esi + 0xe5]
xchg di, ax
mov ax, word [esp + 0x20]
pop edx
pop ebp
jmp 0x6d58d6
pop dword [esp + 0xc]
pushal
xchg ecx, esi
call fcn.006d593e
insd dword es:[edi], dx
imul esp, dword [ecx + ebp*2 + 0x53], 0x61657274
insd dword es:[edi], dx
push edx
jae 0x6d5999
popal
jb 0x6d599c
add byte [edx + 0xf], al
xor dword [esi - 0x79], esp
jl 0x6d5954
rdtsc
xchg word [esp + 0x13], di
bswap edi
rol ax, cl
btr eax, esp
xchg cx, di
jmp 0x6d590b
adc ecx, dword [edi]
iretd
outsb dx, byte [esi]
add ch, bh
int3
mov dl, dh
pop dword [esp + 0x20]
inc dx
rol ax, cl
push dword [esp + 0x12]
pop bx
jmp 0x6d58f6
push word [esp + 0xd]
mov bx, 0x27df
xchg word [esp + 0x11], cx
xchg bp, ax
pop dword [esp + 0x18]
jmp 0x6d5a2f
pop ebp
xchg ch, dl
jmp 0x6d596f
btc esi, edi
lea ebp, [ebp*4]
setae ch
mov ebp, eax
sub esp, 0x1a
rdtsc
jmp 0x6d5a0f
mov al, ah
bsf cx, ax
setl ah
pop word [esp]
sub esp, 4
inc ebx
jmp 0x6d599e
lea edi, [esp + ebp]
mov dh, byte [esp + 4]
rdtsc
xchg byte [esp + 2], dl
mov dword [esp], eax
btc eax, edi
jmp 0x6d59bd
pop dword [esp + 2]
push dword [esp]
mov al, 0xc6
bsr bp, cx
lea ebx, [eax*4]
shl di, cl
jmp 0x6d5a8d
add esp, 0x11
lea ecx, [ebp + 0x5f]
inc eax
pop dword [esp + 2]
mov esi, 0xefba85c
not ah
jmp 0x6d59f1
lea esi, reloc.WINMM.dll_midiStreamOut
add esp, 0x17
mov bh, byte [esp + 1]
lea ebp, [esp + ebx]
pop dword [esp]
not ax
jmp 0x6d59dc
push word [esp + 9]
lea eax, [edx*4]
mov dword [esp + 0x1d], ebp
mov word [esp + 4], dx
lea ebp, reloc.WINMM.dll_midiStreamOut
mov bh, byte [esp + 0x2b]
jmp 0x6d5b15
rdtsc
push word [esp + 5]
pushal
mov dword [esp + 0x19], eax
neg ecx
xchg ecx, ebp
jmp 0x6d5a63
bswap esi
mov dx, 0x527d
xchg word [esp + 0x25], dx
mov edx, ebp
mov dx, word [esp + 0x2e]
bsf di, si
call fcn.006d5ac5
push ebx
je 0x6d5b50
jb 0x6d5b7f
outsd dx, dword [esi]
jb 0x6d5b5d
outsd dx, dword [esi]
add al, ah
xchg ch, dl
mov word [esp + 0x18], di
xchg word [esp + 0x29], ax
lea eax, [edi*4]
push dword [esp]
pop si
jmp 0x6d5aec
and al, 7
mov dx, 0x41b7
shl di, cl
btr eax, esp
jmp 0x6d5b94
inc esi
imul ebp, dword [esp + ebp*2 + 0x52], 0xf006e67
wait
invalid
ror eax, 9
mov dword [esp], eax
add esp, 1
mov bl, bh
btr ecx, esp
mov word [esp], sp
jmp 0x6d5bf1
popal
mov bp, 0xe1b9
lea ebx, [esi*4]
mov esi, 0xa4865cda
jmp 0x6d5b79
cpuid
xchg edi, eax
bswap esi
cpuid
call fcn.006d5c61
push edx
popal
inc esi
imul ebp, dword [ebp], reloc.WINMM.dll_midiStreamOut
mov al, 0xfe
neg edx
add esp, 2
add esp, 2
setle dh
setge bh
jmp 0x6d5bc1
btr eax, edx
xchg bh, cl
mov ch, byte [esp]
mov bx, word [esp + 2]
push word [esp]
mov di, 0x1375
jmp 0x6d5bd7