Function at 0x1400ca600
Capabilities:
Encode data using xor

Disassembly:
test r9, r9
je 0x1400ca957
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x47]
sub rsp, 0xc0
mov rax, qword [0x1403291e8]
xor rax, rsp
mov qword [rbp + 0x37], rax
mov rsi, r9
xor edi, edi
test rcx, rcx
cmovne edi, edx
lea rbx, [rbp - 0x59]
cmovne rbx, rcx
cmp r8d, 1
je 0x1400ca92c
cmp r8d, 5
jne 0x1400ca679
lea rcx, [rbp - 0x49]
call fcn.140115bc0
nop
mov r9, rsi
mov r8d, edi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.140116590
nop
lea rcx, [rbp - 0x49]
call fcn.140115bf0
jmp 0x1400ca939
cmp r8d, 7
jne 0x1400ca691
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.140153ae0
jmp 0x1400ca939
cmp r8d, 2
jne 0x1400ca6a9
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.140154240
jmp 0x1400ca939
cmp r8d, 3
jne 0x1400ca6c1
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.1401549a0
jmp 0x1400ca939
cmp r8d, 0x14
jne 0x1400ca6d9
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.14015b650
jmp 0x1400ca939
cmp r8d, 0x15
jne 0x1400ca6f1
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.14015b7c0
jmp 0x1400ca939
cmp r8d, 0x16
jne 0x1400ca709
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.14015b940
jmp 0x1400ca939
cmp r8d, 0x13
jne 0x1400ca721
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.14015b4d0
jmp 0x1400ca939
cmp r8d, 0xf
je 0x1400ca92c
cmp r8d, 0x1d
jne 0x1400ca760
xor al, al
test edi, edi
je 0x1400ca758
mov edx, edi
lea r8, [0x140325b20]
movzx ecx, byte [rbx]
movzx eax, al
xor rcx, rax
movzx eax, byte [rcx + r8]
lea rbx, [rbx + 1]
sub rdx, 1
jne 0x1400ca740
mov byte [r9], al
jmp 0x1400ca939
cmp r8d, 0x1c
jne 0x1400ca7b8
xor r8d, r8d
mov edx, edi
mov rcx, rbx
call fcn.1400e45d0
mov edx, eax
mov r8d, eax
mov ecx, eax
cmp byte [0x14031ba31], 0
je 0x1400ca79d
shr edx, 0x18
shr ecx, 8
shr eax, 0x10
mov byte [rsi], dl
mov byte [rsi + 1], al
mov byte [rsi + 2], cl
mov byte [rsi + 3], r8b
jmp 0x1400ca939
shr r8d, 0x18
shr ecx, 0x10
shr eax, 8
mov byte [rsi], dl
mov byte [rsi + 1], al
mov byte [rsi + 2], cl
mov byte [rsi + 3], r8b
jmp 0x1400ca939
cmp r8d, 4
jne 0x1400ca7e9
lea rcx, [rbp - 0x49]
call fcn.14014b080
nop
mov r9, rsi
mov r8d, edi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.14014b5f0
nop
lea rcx, [rbp - 0x49]
call fcn.14014b090
jmp 0x1400ca939
cmp r8d, 8
jne 0x1400ca82c
lea rcx, [rbp - 0x49]
call fcn.140152310
nop
lea rcx, [rbp - 0x49]
call fcn.140116a50
mov r8d, edi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.140152cd0
mov rdx, rsi
lea rcx, [rbp - 0x49]
call fcn.1401524e0
nop
lea rcx, [rbp - 0x49]
call fcn.140152340
jmp 0x1400ca939
cmp r8d, 0x1e
jne 0x1400ca844
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.140153450
jmp 0x1400ca939
cmp r8d, 9
jne 0x1400ca875
lea rcx, [rbp - 0x49]
call fcn.14014b8c0
nop
mov r9, rsi
mov r8d, edi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.14014ce90
nop
lea rcx, [rbp - 0x49]
call fcn.14014b8e0
jmp 0x1400ca939
cmp r8d, 0xa
jne 0x1400ca8a6
lea rcx, [rbp - 0x49]
call fcn.14014cee0
nop
mov r9, rsi
mov r8d, edi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.14014ec20
nop
lea rcx, [rbp - 0x49]
call fcn.14014cf00
jmp 0x1400ca939
cmp r8d, 0xb
jne 0x1400ca8d4
lea rcx, [rbp - 0x49]
call fcn.14014ec80
nop
mov r9, rsi
mov r8d, edi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.140150360
nop
lea rcx, [rbp - 0x49]
call fcn.14014eca0
jmp 0x1400ca939
cmp r8d, 0xc
jne 0x1400ca902
lea rcx, [rbp - 0x49]
call fcn.1401503d0
nop
mov r9, rsi
mov r8d, edi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.140152290
nop
lea rcx, [rbp - 0x49]
call fcn.1401503f0
jmp 0x1400ca939
cmp r8d, 0x11
jne 0x1400ca917
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.140155240
jmp 0x1400ca939
cmp r8d, 0x12
jne 0x1400ca92c
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.140155330
jmp 0x1400ca939
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.14014ad40
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.1401feb70
mov rbx, qword [rsp + 0xf0]
add rsp, 0xc0
pop rdi
pop rsi
pop rbp
ret