Function at 0x52ba53
Capabilities:
Execute anti-debugging instructions

Disassembly:
movzx ecx, byte [ebp - 1]
mov dl, dh
mov dh, 0xc0
bsf dx, si
jmp 0x52b69a
rcr ax, cl
inc dh
mov al, 0x3e
lea eax, [ebx*4]
bswap edx
bts edx, edi
jmp 0x52b6cc
jl 0x52b640
rcr ax, cl
inc dh
jmp 0x52b6e5
xor dl, ch
jnp 0x52b78a
mov dh, ch
rcl dx, cl
sub esp, 0x16
jmp 0x52b857
mov al, 0x3e
lea eax, [ebx*4]
bswap edx
jmp 0x52b650
inc dx
lea esp, [esp + 2]
jmp 0x52b83e
mov dh, ch
rcl dx, cl
call fcn.0052b73b
mov ebx, 0x24247c87
pushal
xchg word [esp + 0x1d], dx
bsr dx, bp
clc
mov dx, cx
jmp 0x52b876
mov dx, 0x8087
mov edx, 0x1bd08c5a
not eax
jmp 0x52b7f9
mov dx, 0x8087
mov edx, 0x1bd08c5a
not eax
jmp 0x52b826
bswap edx
mov edx, 0x262f13b0
not dx
jmp 0x52b87d
not dx
setbe dh
mov dx, word [esp]
jmp 0x52b884
mov al, cl
lea edx, [ecx*4]
mov edx, dword [esp]
cmc
jmp 0x52b89d
lea esp, [esp + 0x34]
sub cl, bl
ror ah, 1
jne 0x52b7ee
je 0x52b7cd
jo 0x52b842
add edi, esi
dec ecx
invalid
mov dword [esp + 0xf], esi
pushal
jmp 0x52b762
push dword [esp + 0x44]
ret 0x48
setbe dh
mov dx, word [esp]
seto dh
mov dh, byte [esp]
jmp 0x52b8c4
jge 0x52b7fb
bswap edx
mov edx, 0x262f13b0
jmp 0x52b80b
neg dx
je 0x52bb9e
inc dx
setge dh
not dh
jmp 0x52b9f7
lea edx, [edi*4]
jmp 0x52b96b
mov dx, 0x26f
mov dx, 0x7d97
bsf dx, si
jb 0x52b8e9
lea edx, [edi*4]
lea edx, [ecx + edi]
mov dh, byte [esp]
jmp 0x52b971
lea edx, [ecx - 0xc3]
not edx
dec dx
inc edx
bswap edx
lea edx, reloc.WINMM.dll_midiStreamOut
jmp 0x52ba6e
lea edx, [eax + edx]
inc dl
jmp 0x52b91c
inc edx
jbe 0x52b935
lea edx, [eax + edx]
inc dl
lea edx, [ecx - 0xc3]
not edx
call fcn.0052b9cb
xchg esp, eax
pop es
lea edx, [ecx + edi]
mov dh, byte [esp]
ror al, 0
jmp 0x52b954
push dword [esp + 0x34]
ret 0x38
not dh
sub al, 5
setl dh
mov dh, bh
jmp 0x52b8ff
jge 0x52ba22
bsf dx, ax
bsr dx, cx
jmp 0x52ba48
bsf dx, ax
bsr dx, cx
bswap edx
mov dh, 0x28
xor al, 0x9b
btr edx, edx
ja 0x52baff
sub esp, 0x14
mov dword [esp + 0xf], esi
sbb edx, esi
jmp 0x52bae7
bswap edx
mov dh, 0x28
call 0x52ba53
dec ebx
loop 0x52b9df
adc al, 0x24
sub esp, 2
jmp 0x52bb1d
pushal
lea esp, [esp + 0x20]
xor al, 0x59
lea edx, [esp + esi]
shr edx, 0xb
jmp 0x52ba03
sub esp, 0x14
mov dword [esp + 0xf], esi
sbb edx, esi
jmp 0x52bb01
mov dl, 0x8c
btc edx, ebx
jmp 0x52bb06
jmp 0x52badc
mov dl, 0x8c
btc edx, ebx
lea esp, [esp + 0x14]
rol al, 0
jmp 0x52bb51
mov dx, word [esp]
btc edx, esp
lea edx, [esp + esi]
lea esp, [esp + 2]
xchg dword [esp], esi
call fcn.0052bad8
bsf dx, ax
jl 0x52bb87
jge 0x52bb87
xchg dh, al
mov dl, byte [esp]
jmp 0x52bb71
push edx
lea edx, [ecx*4]
not dh
pop edx
mov edx, dword [esp]
not dx
jmp 0x52bb33
jb 0x52bb3b
xchg dh, al
mov dl, byte [esp]
jmp 0x52bb71
dec ebp
sub dh, ah
js 0x52c16e
rdtsc
mov dh, byte [esp]
jmp 0x52be4b
sub bl, al
rdtsc
shl ax, cl
jmp 0x52bb64
inc dx
setge dh
jmp 0x52b9f5
mov ax, bx
call fcn.0052bbee
fistp dword [edx - 0x38]
scasd eax, dword es:[edi]
pop edx
call 0x4a827af9
mov ecx, 0x1c8d1270
bswap edx
mov eax, ecx
neg eax
jge 0x52bba8
mov ax, bx
jmp 0x52bbab
rdtsc
lea esp, [esp + 1]
lea esp, [esp + 8]
rol cl, 0
jmp 0x52bbbf
push word [esp + 1]
add esp, 9
bswap eax
jmp 0x52bbdf
lea eax, [ebp - 0xa7]
jmp 0x52bc09
mov dx, word [esp]
mov eax, 0xb976f8da
sub esp, 0x10
jo 0x52bc37
lea eax, [ebp - 0xa7]
push word [esp + 1]
add esp, 9
bswap eax
rdtsc
jmp 0x52bbe1
lea edx, [ecx - 0x5b]
setp ah
btr edx, edx
jmp 0x52bf44
mov dh, byte [esp]
lea edx, [ecx - 0x5b]
setp ah
btr edx, edx
add dx, 0xadae
jmp 0x52be12
rdtsc
jmp 0x52bf38