Function at 0x1404d05b5
Capabilities:
Encrypt data using rc4 prga
Execute anti-debugging instructions

Disassembly:
mov qword [rsp + 8], rbx
stc
mov qword [rsp + 0x10], rsi
clc
mov qword [rsp + 0x18], rdi
push rbp
shl bpl, cl
cmp r14w, r14w
push r12
mov r12w, 0x6d0b
adc r12b, 0x36
not bpl
push r13
btr r12w, 0xc4
push r14
shr r14b, 0xcb
push r15
movsx r12, di
mov rbp, rsp
bt r12d, r9d
ror r14b, 0x4d
neg r12b
sub rsp, 0x40
mov r14, qword [rdx + 0x150]
stc
mov r12, rcx
bt rcx, 0xea
xor ecx, 0x1ebf3329
xor esi, esi
not ch
mov qword [rbp - 0x10], rdx
movsxd rcx, r11d
mov rcx, r14
jmp 0x1404d062b
mov qword [rbp - 8], rsi
jmp 0x1404d0634
call fcn.1404ad92e
mov qword [r12 + 0x2b8], rax
ror cx, 0x57
adc cl, sil
lea r15d, [rsi + 0x31]
lea r13d, [rsi + 7]
lea ecx, [r15 - 0x30]
mov eax, 0x24924925
movzx r9w, r8b
sbb di, r13w
movzx rdi, r15w
mul ecx
movzx eax, di
mov eax, ecx
inc rdi
bsr r9w, r15w
mov r9d, r15d
sub eax, edx
adc dil, 0x83
movsx edi, r11w
sub r8, rax
mov r8, r14
stc
test r15b, 0xcc
cmc
shr eax, 1
movsx edi, r11w
bts rdi, rcx
rol edi, 0xca
add eax, edx
movsx dx, r11b
or dx, 0x5573
sub dh, 0x87
mov edx, 1
sub rdi, 0x326c2338
shr eax, 2
imul eax, eax, 7
test edx, 0x7924751e
movsx di, spl
sub ecx, eax
lea rdi, [r12 + rcx*8]
setge cl
movzx cx, r13b
movsx cx, bh
lea rcx, [rbp - 0x10]
jmp 0x1404d06e2
mov qword [rsp + 0x20], rdi
jmp 0x1404d06ec
call fcn.1404c9b47
or esi, eax
not r9b
lea r9d, [r15 - 7]
movsx edx, r13w
lea rax, [rdi + 0x38]
not dh
cmovae dx, r14w
movsxd rcx, esi
mov r8, r14
cmovne rcx, r13
cqo
movzx rdx, r12w
mov edx, 1
mov qword [rsp + 0x20], rax
movsx rcx, ax
cmovs cx, r10w
movzx cx, r8b
lea rcx, [rbp - 0x10]
jmp 0x1404d073a
call fcn.1404c9b47
or esi, eax
movzx r9d, r10w
lea rcx, [rbp - 0x10]
lea rax, [rdi + 0x160]
mov r9d, r15d
movzx r8w, dil
mov r8, r14
mov qword [rsp + 0x20], rax
cwd
movzx edx, si
mov dx, 0x5e56
mov edx, 2
jmp 0x1404d0773
call fcn.1404c9b47
or esi, eax
jmp 0x1404d077f
lea r9d, [r15 - 7]
lahf
movzx r8, r15w
lea rax, [rdi + 0x198]
movsxd rcx, r9d
movzx cx, bpl
movsx r8w, cl
mov r8, r14
not cl
movzx ecx, cx
setbe cl
mov edx, 2
movzx ecx, r9w
movzx rcx, di
mov qword [rsp + 0x20], rax
setnp cl
lea rcx, [rbp - 0x10]
call fcn.1404c9b47
or esi, eax
jmp 0x1404d07cc
inc r15d
sub r13, 1
jne 0x1404d0650
lea r15d, [r13 + 0x38]
not di
cdq
lea r13d, [r15 - 0x2c]
bswap eax
cwde
lea rdi, [r12 + 0xd0]
lea rax, [rdi - 0x60]
movzx r8d, r9w
mov r8, r14
lea r9d, [r15 + 0xc]
mov cx, si
bswap edx
mov qword [rsp + 0x20], rax
cwd
mov edx, 1
movsxd rcx, r9d
lea rcx, [rbp - 0x10]
jmp 0x1404d081c
call fcn.1404c9b47
mov r9d, r15d
cmp ch, 0xc9
bt rcx, 0x51
rcr dh, cl
mov qword [rsp + 0x20], rdi
xchg edx, edx
btr r8, 0x56
dec ch
mov r8, r14
lea rcx, [rbp - 0x10]
mov edx, 1
test bl, 0xf
cmp r9, r10
or esi, eax
jmp 0x1404d0855
call fcn.1404c9b47
or esi, eax
mov bh, 0x53
lea r9d, [r15 + 0xc]
lea rax, [rdi + 0x100]
mov ebx, 2
jmp 0x1404d0874
mov r8, r14
cdq
movsxd rdx, eax
mov qword [rsp + 0x20], rax
setl ch
cmovl cx, dx
mov rdx, 0x496421a
mov edx, ebx
jmp 0x1404d0895
lea rcx, [rbp - 0x10]
call fcn.1404c9b47
or esi, eax
movsx r9, r15w
movzx rcx, r15w
mov edx, r11d
lea rcx, [rbp - 0x10]
rdtsc
lea rax, [rdi + 0x160]
xchg r8w, r8w
mov r9d, r15d
setae r8b
movsx edx, r15w
movzx rdx, r9w
mov r8, r14
mov qword [rsp + 0x20], rax
mov edx, ebx
call fcn.1404c9b47
or esi, eax
cmp r10w, 0x5553
add rdi, 8
jmp 0x1404d08eb
inc r15d
jmp 0x1404d08fa
sub r13, 1
jne 0x1404d07f0
lea rax, [r12 + 0x130]
mov r8, r14
mov edi, ebp
lea edi, [rbx + 0x26]
movsxd rcx, edx
mov cx, 0x3bad
mov qword [rsp + 0x20], rax
setl dh
mov r9d, edi
mov cx, r13w
lea edx, [rbx - 1]
sets ch
movzx cx, r12b
movsxd rcx, ebx
lea rcx, [rbp - 0x10]
jmp 0x1404d0941
call fcn.1404c9b47
or esi, eax
lea ebx, [rdi + 1]
cqo
lea rax, [r12 + 0x138]
mov r9d, ebx
movzx dx, r13b
lea r13d, [rdi - 0x27]
movsx edx, r14w
setno r8b
mov qword [rsp + 0x20], rax
movzx r8d, r15w
movsx ecx, dx
mov r8, r14
xchg ch, dh
mov rcx, rcx
movsx edx, bp
lea rcx, [rbp - 0x10]
movzx rdx, r9w
movzx edx, dx
mov edx, r13d
jmp 0x1404d0993
call fcn.1404c9b47
mov r9d, edi
shl edx, cl
lea rcx, [rbp - 0x10]
movsx dx, r14b
sbb dl, dil
sub dil, 0x2f
or esi, eax
lea edi, [rbx - 0x27]
lea rax, [r12 + 0x290]
movsx r8w, al
movzx r8, di
mov edx, edi
movzx r8, r12w
mov r8w, si
setae r8b
mov r8, r14
jmp 0x1404d09d9
mov qword [rsp + 0x20], rax
jmp 0x1404d09e3
call fcn.1404c9b47
or esi, eax
movzx rax, cx
mov al, 0x56
lea rcx, [rbp - 0x10]
lea rax, [r12 + 0x298]
cdq
cwd
mov r9d, ebx
cmovns dx, r9w
mov r8, r14
mov qword [rsp + 0x20], rax
mov edx, edi
call fcn.1404c9b47
or esi, eax
bswap cx
movsx cx, dil
lea r15d, [rbx - 0xa]
mov al, r11b
movsx rcx, cx
cwde
lea rax, [r12 + 0x140]
setge r8b
movsx r8d, r12w
mov r9d, r15d
movzx rdx, r12w
cmovl r8w, bp
mov r8, r14
not rdx
cqo
mov rcx, r8
mov qword [rsp + 0x20], rax
mov edx, r13d
movsx ecx, r14w
lea rcx, [rbp - 0x10]
jmp 0x1404d0a68
call fcn.1404c9b47
or esi, eax
rdtsc
not r9
lea edi, [rbx - 9]
mov al, 0xac
lea rax, [r12 + 0x148]
movzx edx, cx
mov r9b, r9b
mov r9d, edi
mov r8w, 0x4835
mov r8, r14
mov qword [rsp + 0x20], rax
mov edx, r13d
xchg ecx, ecx
mov cx, dx
movsx ecx, sp
lea rcx, [rbp - 0x10]
jmp 0x1404d0aab
call fcn.1404c9b47
or esi, eax
rdtsc
movsxd rcx, r13d
not bl
lea rcx, [rbp - 0x10]
cdqe
lea rax, [r12 + 0x150]
cdq
cwd
mov ebx, 0x1003
movzx edx, r9w
mov r9d, ebx
mov qword [rsp + 0x20], rax
cdq
mov r8, r14
mov edx, r13d
call fcn.1404c9b47
or esi, eax
sal ch, 0x5d
lea r9d, [rbx + 6]
clc
setl ah
movsx cx, r10b
lea rax, [r12 + 0x158]
movsxd rcx, esp
mov r8, r14
cmp r15w, r9w
ror cl, cl
xor edx, edx
movzx rcx, dx
mov qword [rsp + 0x20], rax
lea rcx, [rbp - 0x10]
jmp 0x1404d0b21
call fcn.1404c9b47
mov r9d, r15d
lea rcx, [rbp - 0x10]
or esi, eax
lea r15d, [r13 + 1]
lea rax, [r12 + 0x2a0]
movsx r8, cx
movzx dx, r8b
mov edx, r15d
cmovb r8w, di
mov r8d, 0x4e033dad
movsx r8d, di
mov r8, r14
mov qword [rsp + 0x20], rax
jmp 0x1404d0b63
call fcn.1404c9b47
or esi, eax
lea rax, [r12 + 0x2a8]
cdq
mov r9d, edi
movsx ecx, cx
cmovle dx, bp
movzx cx, sil
mov qword [rsp + 0x20], rax
xchg r8b, dl
mov ecx, 0x3e8e3ffe
mov r8, r14
setae ch
movsx ecx, r11w
movzx rcx, di
lea rcx, [rbp - 0x10]
setg dh
movsx edx, r14w
movsxd rdx, ebp
mov edx, r15d
jmp 0x1404d0bb3
call fcn.1404c9b47
or esi, eax
cqo
mov r8, r10
cmovs rcx, rbp
lea rcx, [rbp - 0x10]
lahf
lea rax, [r12 + 0x2b0]
mov r9d, ebx
movsxd r8, edx
cdq
bswap r8w
mov r8, r14
movzx rdx, ax
mov dx, si
mov qword [rsp + 0x20], rax
movsxd rdx, edi
mov edx, r15d
jmp 0x1404d0bf5
call fcn.1404c9b47
lea r11, [rsp + 0x40]
movzx r15, si
shl bpl, cl
or eax, esi
mov dil, r8b
not al
xchg sil, bpl
mov rbx, qword [r11 + 0x30]
mov esi, 0x58f77130
mov rsi, qword [r11 + 0x38]
sete al
movsx edi, bx
cmove r14w, dx
movzx rdi, ax
mov rdi, qword [r11 + 0x40]
jmp 0x1404d0c3b
mov rsp, r11
jmp 0x1404d0c46
pop r15
movzx ebp, r14w
bswap r12
pop r14
pop r13
pop r12
movsx bp, r10b
mov bpl, 0x7c
movzx ebp, r11w
pop rbp
jmp 0x1404d0c67
ret