Function at 0x97ad50
Capabilities:
Execute anti-debugging instructions

Disassembly:
pop word [esp + 0x14]
cpuid
push esp
mov cx, dx
pop ebx
add al, dh
jmp 0x97abc0
rdtsc
xchg dword [esp + 9], edi
mov byte [esp + 1], dh
jmp 0x97ab6a
rdtsc
lea edx, [esi*4]
mov esi, 0xb88e3fc
neg di
xchg ecx, edx
inc bx
jmp 0x97ac19
push dword [esp + 0xe]
bswap eax
mov ebp, dword [esp + 6]
bswap eax
push dword [esp + 9]
mov dword [esp], esi
jmp 0x97ad6b
mov ebx, 0x1186c98c
lea ebx, [ebp + 0x47]
setbe ch
cpuid
btr ecx, edx
not esi
jmp 0x97abf4
pop word [esp + 0xc]
lea esp, [esp + 1]
xchg dh, al
add esp, 0xf
jmp 0x97ac8d
setg ch
sub esp, 0x14
mov cl, ch
mov esi, 0x7121b316
cld
shr eax, 0x17
jmp 0x97ac2d
lea ebp, [eax - 0x11]
push edx
push dword [esp + 2]
mov dl, 0xe4
pop word [esp + 1]
xchg byte [esp], bl
jmp 0x97ac45
lea ecx, [esi*4]
lea ecx, [esi - 0xed]
mov cl, 0xfa
mov dl, dh
lea ebx, [ecx - 0xeb]
jmp 0x97ad0a
mov si, 0xec4d
xchg byte [esp], cl
cmc
inc ebp
xchg word [esp + 9], cx
jmp 0x97ac70
xchg byte [esp], al
bswap esi
mov edi, esi
setae dh
push word [esp]
not ch
jmp 0x97ac5c
mov bh, byte [esp + 1]
rcl di, cl
xchg word [esp], si
bswap esi
xchg cx, ax
rdtsc
jmp 0x97aca4
ror edi, 0x1b
mov edi, ecx
sub esp, 2
mov ecx, 0x4395a0cc
neg ah
jmp 0x97ad3d
rol bx, cl
bsf di, si
lea esp, [esp + 7]
mov word [esp + 0x10], sp
jmp 0x97acdd
pop ax
push dword [esp + 5]
xchg byte [esp + 8], bl
sub esp, 0x1c
rdtsc
not bx
jmp 0x97acf3
aad 0x83
in al, dx
add cl, byte [edi]
xor dword [ebx - reloc.WINMM.dll_midiStreamOut], eax
inc esp
and al, 0x19
sub esp, 2
rdtsc
sub esp, 0x12
xchg word [esp + 0x19], ax
pop word [esp + 9]
call 0x97ad50
jbe 0x97ad1d
je 0x97ad4c
out dx, al
dec ecx
xchg edi, eax
invalid
mov cl, 0x4a
mov si, word [esp]
pushal
lea esp, [esp + 0x46]
lea ebx, [esp + esi]
sub esp, 8
jmp 0x97ad1e
in al, dx
or bl, ch
into
not dx
jmp 0x97ada9
pushal
mov byte [esp + 0x1f], ch
neg dh
mov bl, 0x78
xchg dword [esp + 0x1a], ebx
btc ecx, ebx
jmp 0x97ad89
bsf dx, ax
add esp, 0x1b
mov bp, 0xb8fd
lea edx, [eax - 0xd1]
lea esp, [esp + 1]
mov byte [esp + 1], dh
jmp 0x97acca
xor edx, esi
push dword [esp + 5]
pop word [esp + 0x16]
xchg dx, ax
rdtsc
mov bl, bh
jmp 0x97ae26
add esp, 0x1d
xchg byte [esp], cl
btc ebp, edi
xchg byte [esp], al
xchg byte [esp], bl
mov ch, byte [esp]
jmp 0x97ad55
cpuid
rdtsc
mov ebp, 0xb268f21a
pop word [esp + 6]
neg esi
sub esp, 2
jmp 0x97ae0e
ror dh, 7
bswap ebp
bswap edi
lea esi, [edx + esi]
xchg word [esp + 3], dx
mov word [esp + 8], bx
jmp 0x97adbd
mov ax, 0xda15
shr ch, 5
add esp, 4
xchg byte [esp + 2], dl
bswap ecx
mov byte [esp + 3], ch
jmp 0x97ae69
mov byte [esp + 0xb], ch
setno ch
add esp, 4
xchg byte [esp + 6], dl
mov dword [esp + 1], eax
jmp 0x97adee
shl dx, cl
mov dx, di
mov cx, di
popal
neg eax
sub esp, 0xa
jmp 0x97add8
push dword [esp + 2]
mov dword [esp + 1], esi
mov bp, word [esp + 2]
jmp 0x97ae7f
bsr dx, cx
cld
lea esp, [esp + 1]
mov dl, dh
mov si, word [esp + 2]
mov cl, ch
jmp 0x97ae37
push word [esp + 3]
mov al, 0x3e
lea esi, [esp + eax]
mov bl, 0x70
mov ch, byte [esp + 4]
mov byte [esp + 1], dh
jmp 0x97ae4d
push word [esp + 9]
lea edi, [ecx*4]
lea edx, [ecx + edi]
pop si
mov bx, dx
xchg byte [esp + 4], cl
jmp 0x97aedb
pushal
push dword [esp + 0x14]
xchg word [esp + 0x13], si
xchg di, si
push dword [esp + 0x1a]
mov di, sp
jmp 0x97afe5
mov al, 0x16
mov al, 0x9e
sub eax, eax
inc dl
mov bl, 0x98
mov ebx, dword [esp + 3]
jmp 0x97aeb3
btr edi, edx
mov ebx, dword [esp]
xchg ah, bl
xchg di, si
xchg edx, eax
mov ebx, ecx
jmp 0x97af44
not ebx
push edx
mov eax, 0xfaeb900e
rdtsc
lea ebx, [ebx*4]
pop di
jmp 0x97af0c
xchg word [esp], dx
ror ebx, 0x17
bsr bx, bp
add esp, 1
mov bx, sp
add esp, 0
jmp 0x97afb6
xchg dword [esp + 0x2a], ecx
lea esi, [ecx + ebx]
sub esp, 0x16
lea esp, [esp + 0x4a]
cmc
mov bp, word [esp]
jmp 0x97af2f
lea ebx, reloc.WINMM.dll_midiStreamOut
lea ebx, [esi*4]
lea ebx, [eax*4]
mov ebp, dword [esp]
and cl, bh
jmp 0x97afca
lea edx, [ebx + ebx]
mov al, ah
lea ebp, [esi - 0xdd]
sub cx, 0xa6b0
jmp 0x97af7f
cpuid
neg esi
lea ecx, [esi*4]
bswap edx
mov bl, 0x90
mov ch, byte [esp]
jmp 0x97af9f
bswap edi
mov ecx, 0x71824994
cmc
xchg ch, dl
rdtsc
lea ebp, [ebx*4]
jmp 0x97b1bb
not edi
lea ebp, [esp + ebp]
mov byte [esp + 0x26], dh
push word [esp + 0x2b]
not ecx
mov byte [esp + 0xd], dh
jmp 0x97af6a
lea esp, [esp]
xchg ch, dl
sub esp, 0x1e
clc
lea ecx, [esi + edi]
mov byte [esp + 0x1b], dh
jmp 0x97b027
rdtsc
mov byte [esp], bh
xchg edx, ecx
not edi
mov esi, 0x5dcf61f0
add esp, 0
jmp 0x97affe
neg ebp
mov bl, 0xd8
neg bh
cmc
bswap edi
mov byte [esp + 0x1b], ah
jmp 0x97b056
setge bh
not esi
shr ebx, 0x1f
not bp
lea edx, [ebx*4]
xchg ah, bl
jmp 0x97b014
neg ch
rdtsc
mov bp, di
mov eax, dword [esp + 0x14]
xchg ah, bl
push word [esp + 0x19]
jmp 0x97b131
lea esp, [esp + 4]
mov bl, bh
not cx
mov dl, 0x2c
lea ecx, [ecx + 0xb3]
xchg dh, al
jmp 0x97b040
cpuid
rdtsc
pop dword [esp + 7]
mov ebp, 0x85d87740
add esp, 7
setge dh
jmp 0x97b0fe
pushal
pop edx
not ah
rdtsc
popal
lea edi, [ebp - 0x3f]
jmp 0x97b08f
cmc
lea esi, [esp + ebx]
pop word [esp + 8]
neg ax
xchg ch, dl
mov eax, dword [esp + 8]
jmp 0x97b0ac
lea ebp, [esp + edi]
rdtsc
lea eax, [eax*4]
bswap ebp
neg bh
inc esi
jmp 0x97b158
xchg byte [esp + 1], bl
cld
pop word [esp + 1]
add esp, 3
sub di, 0xb060
jmp 0x97b0d9
mov ebx, ecx
lea esp, [esp + 6]
setae ah
mov ch, byte [esp + 0x12]
mov dx, word [esp + 0x15]
xchg bx, ax
jmp 0x97b0c5
neg dh
inc cl
not ecx
lea edi, [edx + ebx]
setno ch
pop edx
jmp 0x97b116
pop word [esp]
xchg si, ax
mov ch, byte [esp + 1]
xchg word [esp], dx
setnp ah
jmp 0x97b1a4
push edx
lea eax, reloc.WINMM.dll_midiStreamOut
mov esi, ecx
rdtsc
mov esi, dword [esp]
setp ah
jmp 0x97b140
lea esp, [esp]
mov si, word [esp]
sub bl, ah
push esp
mov ebx, eax
xchg ebx, eax
jmp 0x97b07a
mov al, 0xa6
lea esp, [esp + 1]
sub esp, 0x1c
pushal
lea ebx, reloc.WINMM.dll_midiStreamOut
not si
jmp 0x97b5a5
mov eax, esi
lea esp, [esp]
cpuid
cpuid
lea edx, reloc.WINMM.dll_midiStreamOut
not ch
jmp 0x97b18a
mov byte [esp], ch
mov byte [esp], bh
cld
bswap ebp
mov edi, 0x791bd238
bsf bx, si
jmp 0x97b178
pop dx
mov ax, sp
mov dh, byte [esp + 0x37]
btr edi, edx
xchg dword [esp + 0x36], ebx
mov dword [esp + 0x1b], eax
call fcn.0097b2da