Function at 0x5cff66
Capabilities:
Execute anti-debugging instructions

Disassembly:
mov ax, word [esp]
mov ch, byte [esp]
lea ecx, [edx + edi]
mov ch, dl
call fcn.005cf5e7
jmp 0x5cf635
lea esp, [esp + 3]
lea esp, [esp + 0x18]
sub bl, 0x9c
sub ax, 0x299e
jmp 0x5cf692
rcr ax, 8
mov eax, dword [esp]
sub esp, 0x1b
jmp 0x5cf610
lea eax, [ecx + edx]
mov eax, 0xea172445
btc eax, esp
jmp 0x5cf69e
push 0xf05bcfe0
jmp 0x5cffac
btc eax, esp
jmp 0x5cf69e
jl 0x5cf641
lea eax, [ecx + edx]
mov eax, 0xea172445
jmp 0x5cf67c
and ebx, 0x3c
bts ecx, esp
jl 0x5cf6f6
lea ecx, [edx + edi]
lea ecx, reloc.MSVCRT.dll_strncpy
jmp 0x5cf6bd
bts cx, di
not ecx
jmp 0x5cf730
mov cx, 0x143a
jmp 0x5cf6dd
lea ecx, reloc.MSVCRT.dll_strncpy
mov cx, 0x143a
mov ecx, ebp
mov eax, dword [ecx]
dec cx
jmp 0x5cf6fb
lea ecx, [edx + edi]
jmp 0x5cf6d3
ja 0x5cf711
mov cl, ah
jmp 0x5cf713
mov cl, ah
mov ecx, esi
jmp 0x5cf81c
bts cx, di
not ecx
not bl
mov ax, word [esp]
jmp 0x5cf5fd
jmp 0x5cf762
add ebp, 4
shr cl, cl
jo 0x5cf73b
pushfd
jmp 0x5cf7cb
pushfd
jmp 0x5cf7cb
btc ebx, ecx
jb 0x5cf751
jae 0x5cf751
lea ecx, [ecx + ebx]
mov dword [ecx], eax
mov ax, 0x3729
mov ch, 0xf7
xchg al, cl
jmp 0x5cf78d
mov cx, 0xba23
mov ecx, dword [esp]
mov cl, al
btr ax, cx
je 0x5cf72a
jne 0x5cf6b5
pushal
sub esp, 6
lea ecx, [edi + edi]
bsf cx, bp
lea esp, [esp + 2]
jmp 0x5cfb2c
xchg dword [esp + 0x28], edi
rcr cl, cl
not ecx
setnp cl
not ch
mov ch, 0xf4
jmp 0x5cfc17
push dword [esp + 0x28]
ret 0x2c
mov ax, 0xdb90
mov cl, byte [esp]
rol bl, 0
jmp 0x5cfafb
bswap eax
jmp 0x5cfcd2
lea esp, [esp + 3]
pushfd
lea esp, [esp + 1]
mov dword [esp + 0x24], esi
jmp 0x5cffc2
jmp 0x5cffec
push bx
lea esp, [esp + 2]
mov dword [esp + 0x20], edi
lea esp, [esp + 0x20]
pushfd
jmp 0x5cf64e
lea ebp, [ebx*4]
xchg edi, ebp
jmp 0x5d0000
bsr esi, ebx
je 0x5cffd6
lea ebp, [ebx*4]
xchg edi, ebp
jmp 0x5d0501
dec cl
mov edi, dword [esp + 0x2c]
bswap esi
xor edx, 0xc4c0ca4d
ja 0x5d01dd
jbe 0x5d00e6
or al, 0x9f
not bl
bswap eax
bts ecx, eax
jae 0x5cfdb1
bswap eax
mov ax, 0xdb90
mov cl, byte [esp]
jmp 0x5cfcd9
sub esp, 0x11
lea esp, [esp + 1]
jmp 0x5d0054
sub esp, 0x11
lea esp, [esp + 1]
sub esp, 0xb0
jmp 0x5d00a3
mov eax, dword [esp]
lea ebx, [edi + ebp]
jmp 0x5d0082
neg ebx
jge 0x5d005c
mov eax, dword [esp]
lea ebx, [edi + ebp]
jmp 0x5d00ca
xchg bx, cx
mov ch, byte [esp]
setne bl
cmp ax, 0x7737
jmp 0x5d00b4
mov ebp, esp
mov cx, 0x91a3
rdtsc
rdtsc
mov edx, edi
setl ch
jmp 0x5d0072
add edi, 0x5c136cf3
xchg ecx, eax
mov cx, 0x2e14
clc
jmp 0x5d0110
xchg bx, cx
mov ch, byte [esp]
setne bl
jmp 0x5d008b
lea esi, [esp]
lea ebp, [ebx + ebx]
neg ah
jo 0x5d004d
jno 0x5d0037
setle ah
jmp 0x5d0185
jge 0x5d017e
not bl
not eax
jmp 0x5d00fa
not bl
not eax
setle ah
dec edi
lea eax, [ecx*4]
mov ebx, ebp
xchg bx, cx
call fcn.005d0147
lea esp, [esp + 0x34]
inc edi
dec ecx
jno 0x5d01b8
jo 0x5d01bf
sbb dword [edx + esi*4], 0xffffffd5
and al, 0x92
jmp 0x7e1facb4
clc
jmp 0x5d0467
clc
mov al, 0x50
sub esp, 7
mov ax, 0x528e
lea esp, [esp + 3]
call fcn.005d0211
cmp byte [edx + edi + 0x511bac5d], ah
rcl byte [ebx - 0x36]
jmp 0x5d00e6
jmp 0x5d00e6
btc ecx, edx
jmp 0x5d0219
lea ebx, [ebx + esi]
lea ecx, [ebx + edi]
lea eax, [eax + 0x75]
mov cx, word [esp]
neg ecx
lea ecx, [esp + ebp]
jmp 0x5d037a
lea esp, [esp + 3]
lea esp, [esp + 4]
dec edi
xchg ebx, eax
call 0x5d0269
call fcn.005d0278
mov ebp, 0x44b5d23c
cli
lea ecx, [ecx]
cdq
clc
or edi, dword [ebx + reloc.MSVCRT.dll_strncpy]
insb byte es:[edi], dx
jg 0x5d01ed
in al, dx
push cs
jl 0x5d0252
jge 0x5d0252
inc ebx
les ebx, [edx + 0x3d]
int3
push dword [esp + 4]
ret 8
mov bl, byte [esp]
xchg dword [esp + 4], eax
lea ebx, [edi + ebp]
xchg cx, bx
mov ebx, edi
setae bl
jmp 0x5d0297
mov al, 0x50
sub esp, 7
mov ax, 0x528e
jmp 0x5d0243
dec cl
jmp 0x5d0002