Function at 0x1400335b0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xb8
mov rax, r8
mov r8, rdx
mov rdi, rcx
mov qword [rsp + 0x20], r9
lea rcx, [rsp + 0x50]
mov rdx, rdi
mov r9, rax
call fcn.1401bb970
cmp qword [rsp + 0x50], 0
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0xa0]
mov r9, qword [rsp + 0x60]
je 0x1400337cb
mov r8, qword [rsp + 0x80]
test r8, r8
je 0x1400337d2
mov qword [rsp + 0x28], rdi
mov rdi, qword [rsp + 0x88]
mov rbx, qword [rsp + 0xa8]
mov rax, qword [rsp + 0xb0]
mov r10, qword [rsp + 0x70]
mov qword [rsp + 0x48], r10
mov rbp, qword [rsp + 0x90]
mov r10, qword [rsp + 0x68]
mov qword [rsp + 0x30], r10
lea r10, [rbx - 1]
mov qword [rsp + 0x40], r10
mov r10, r8
jmp 0x140033674
cmp rdi, 0xffffffffffffffff
cmovne rbp, rax
mov r8, r10
test r10, r10
je 0x140033898
sub r10, rax
cmp r10, rdx
jae 0x14003389b
mov r11, r8
sub r11, qword [rsp + 0x30]
mov qword [rsp + 0x38], r11
mov rsi, r8
sub rsi, r9
mov r11, r8
jmp 0x1400336c7
mov r10, rsi
sub r10, r15
mov r11, rax
cmp rdi, 0xffffffffffffffff
je 0x1400336b2
mov rbp, r11
mov r11, r10
mov r14, r10
sub r14, rax
mov r10, r14
cmp r14, rdx
jae 0x14003389b
cmp r8, r11
jne 0x14003389b
movzx r11d, byte [rcx + r10]
mov r14, qword [rsp + 0x48]
bt r14, r11
jae 0x1400336a6
cmp r9, rbp
mov r13, rbp
cmovb r13, r9
cmp rdi, 0xffffffffffffffff
cmove r13, r9
lea r11, [r13 - 1]
cmp r11, rax
jae 0x14003374b
mov r15, r13
neg r15
mov r11, qword [rsp + 0x40]
lea r12, [r11 + r13]
lea r11, [r10 + r13]
dec r11
nop word cs:[rax + rax]
test r15, r15
je 0x140033760
cmp r11, rdx
jae 0x1400338ba
movzx r13d, byte [r12]
inc r15
dec r12
lea r14, [r11 - 1]
cmp r13b, byte [rcx + r11]
mov r11, r14
je 0x140033720
jmp 0x1400336a0
test r13, r13
jne 0x14003390f
nop word cs:[rax + rax]
cmp rdi, 0xffffffffffffffff
mov r11, rbp
cmove r11, rax
lea r15, [rcx + r10]
mov r12, r9
nop word cs:[rax + rax]
cmp r12, r11
jae 0x140033660
cmp r12, rax
jae 0x1400338c9
lea r14, [r10 + r12]
cmp r14, rdx
jae 0x1400338e2
movzx r14d, byte [rbx + r12]
lea r13, [r12 + 1]
cmp r14b, byte [r15 + r12]
mov r12, r13
je 0x140033780
mov r11, qword [rsp + 0x30]
mov r10, qword [rsp + 0x38]
cmp rdi, 0xffffffffffffffff
jne 0x1400336af
jmp 0x1400336b2
cmp byte [rsp + 0x6a], 0
je 0x1400337da
xor r8d, r8d
jmp 0x1400338a0
movzx eax, byte [rsp + 0x69]
test r9, r9
jne 0x140033816
xor r8d, r8d
test al, al
je 0x1400338a0
nop
xor al, 1
jne 0x1400337f0
jmp 0x1400338a0
and r10d, 0x1f
shl r10d, 6
and r8d, 0x3f
or r8d, r10d
mov r10d, eax
xor r10b, 1
test al, al
mov eax, r10d
je 0x140033886
cmp r9, rdx
jae 0x140033830
cmp byte [rcx + r9], 0xc0
jge 0x140033836
jmp 0x1400338fb
jne 0x1400338fb
movzx r8d, byte [rcx + r9 - 1]
movzx r8d, r8b
test r8b, r8b
jns 0x140033808
movzx r10d, byte [rcx + r9 - 2]
cmp r10b, 0xbf
jg 0x1400337f9
movzx r11d, byte [rcx + r9 - 3]
cmp r11b, 0xbf
jg 0x140033872
movzx esi, byte [rcx + r9 - 4]
and esi, 7
shl esi, 6
and r11d, 0x3f
or r11d, esi
jmp 0x140033876
and r11d, 0xf
shl r11d, 6
and r10d, 0x3f
or r10d, r11d
jmp 0x1400337fd
xor eax, eax
cmp r8d, 0x110000
cmove r9, rax
mov r8, r9
jmp 0x1400338a0
xor r8d, r8d
mov rdi, qword [rsp + 0x28]
mov rax, rdi
mov rdx, r8
add rsp, 0xb8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, [0x1401d00e8]
mov rcx, r11
call fcn.1401c8c10
cmp r9, rax
cmovbe r9, rax
lea r8, [0x1401d00a0]
mov rcx, r9
mov rdx, rax
call fcn.1401c8c10
add r10, r9
cmp rdx, r10
cmova r10, rdx
lea r8, [0x1401d00b8]
mov rcx, r10
call fcn.1401c8c10
lea rax, [0x1401d0160]
mov qword [rsp + 0x20], rax
xor r8d, r8d
call fcn.1401c9200
lea r8, [0x1401d00d0]
mov rcx, r11
mov rdx, rax
call fcn.1401c8c10
int3