Function at 0x522c02
Capabilities:
Execute anti-debugging instructions

Disassembly:
add edx, 0x8c54723d
jmp 0x523032
add edx, 0x27af49d2
jmp 0x523042
movzx ebx, byte [esi]
rdtsc
call fcn.00522a79
dec dx
jmp 0x522b48
add bl, cl
xchg al, ah
sub esp, 0x17
jo 0x522b63
push dword [esp + 0xe]
lea esp, [esp + 3]
jmp 0x522b69
mov dx, di
jmp 0x522b2d
lea esp, [esp + 3]
jmp 0x522b69
push dword [esp + 0xe]
jmp 0x522b4d
mov dl, bl
lea eax, [ecx + ebx]
setns al
clc
ja 0x522bdc
btr eax, eax
bswap eax
jmp 0x522b8a
push bp
shl eax, 0x1b
bswap eax
jmp 0x522bbb
rol dl, 0
mov ah, dh
cmc
jp 0x522bc1
jnp 0x522bc1
mov eax, 0x3bc8a939
mov bl, byte [edx + 0x1aef881a]
fdivp st(3)
ror byte [ebp - 0x24], cl
das
btr eax, eax
btr eax, eax
bswap eax
push bp
shl eax, 0x1b
bswap eax
lea esp, [esp + 2]
jmp 0x522b93
call 0x522c02
xchg byte [esp + 1], al
mov ah, byte [esp + 3]
add esp, 1
jmp 0x522c1c
jmp 0x522baf
lea esp, [esp]
lea esp, [esp + 3]
sub dl, 0x67
not ax
call fcn.00522c87
xor dword [ebp + reloc.WINMM.dll_midiStreamOut], esi
and dword [esi + reloc.WINMM.dll_midiStreamOut], esp
push edi
mov esi, 0xe24b2889
mov ah, bl
jmp 0x522bc6
jo 0x522bde
lea esp, [esp]
lea esp, [esp + 3]
call fcn.00522c06
loop 0x522c94
invalid
adc eax, 0xe824248a
adc dword [eax], eax
add byte [eax], al
cli
aad 0x44
div esi
not al
pop eax
not ah
xchg dword [esp], ebx
call fcn.00522c59
sets ah
mov byte [esp + 2], bh
jmp 0x522d57
neg dl
not eax
lea eax, [edx + esi]
not al
inc al
jmp 0x522cf9
sets ah
push esp
lea esp, [esp + 4]
jmp 0x522cd9
js 0x522d0f
not ax
jmp 0x522d12
not ax
add cl, dl
mov eax, dword [esp]
jmp 0x522d2c
jmp 0x522cef
neg edx
ja 0x522e1c
jbe 0x522e1c
neg ah
jp 0x522d7e
mov dx, 0x9ec3
mov edx, 0x39eb518c
setl al
setl al
clc
jmp 0x522db1
bswap eax
lea esp, [esp + 4]
not dl
clc
jns 0x522d2a
sets ah
push esp
jmp 0x522cf3
setl al
setl al
clc
jmp 0x522db1
mov dx, 0x9ec3
mov edx, 0x39eb518c
jmp 0x522d68
xor bl, 0x85
bswap edx
mov eax, 0x208ff685
bswap edx
mov ax, cx
shl ax, cl
jmp 0x522dc3
inc bl
lea edx, reloc.WINMM.dll_midiStreamOut
mov al, byte [esp]
mov eax, 0x36aacc4d
jmp 0x522d89
jge 0x522dd9
lea edx, reloc.WINMM.dll_midiStreamOut
stc
jmp 0x522de0
lea edx, reloc.WINMM.dll_midiStreamOut
stc
jmp 0x522df6
not bl
lea eax, [eax + ebp]
mov eax, dword [esp]
rdtsc
neg bl
jmp 0x522e6c
jmp 0x522e3e
neg dx
je 0x522e28
rdtsc
jmp 0x522e49
inc esi
lea edx, [edx + ebx]
mov edx, dword [esp]
jmp 0x522d3a
rdtsc
jmp 0x522e49
inc dx
not bl
mov dh, byte [esp]
bswap edx
jmp 0x522e06
mov edx, ebx
bswap eax
mov ax, word [esp]
bswap eax
sub esp, 0x1a
jmp 0x522e87
mov eax, dword [esp]
mov eax, 0x4129b166
lea edx, reloc.WINMM.dll_midiStreamOut
mov ax, 0xbaea
bt edx, ebp
jg 0x522e04
inc dx
jmp 0x522e40
jae 0x522e9d
lea esp, [esp + 2]
call fcn.00522eb7
sbb bh, byte [eax + 0x3fb8492e]
adc eax, 0x691e3784
lea esp, [esp + 2]
shl edx, 2
mov ax, dx
jmp 0x522f5c
xchg al, ah
call fcn.00522fd5
mov al, 0x34
stosb byte es:[edi], al
int 0x3c
clc
cmpsb byte [esi], byte es:[edi]
and dword [ecx - reloc.WINMM.dll_midiStreamOut], esi
and ebx, dword [edx + 0x66]
btr eax, ecx
btr ax, cx
jae 0x522f46
xchg al, ah
jmp 0x522670
bsr ax, cx
jmp 0x52300a
jmp 0x522fdc
mov ax, 0xcac4
jmp 0x52268d
mov edx, dword [edx + reloc.WINMM.dll_midiStreamOut]
dec ah
jo 0x522ff4
mov ax, 0xcac4
jmp 0x52268d
dec edi
salc
bswap eax
mov ax, sp
sub esp, 8
jle 0x522ff2
bsr ax, cx
jmp 0x52300a
jmp 0x524461
btr ax, bx
mov esp, edi
call fcn.005242ea
push edx
rcl dword [ecx + 0x30], 0xc3
jg 0x523030
inc edi
xlatb
mov dl, 0x41
invalid
dec eax
jne 0x523047
btr ax, bx
jmp 0x52304b