Function at 0x1400c9f30
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
xchg rdi, rbp
mov qword [rsp + 0x10], rdi
xchg rdi, rbp
mov qword [rsp + 0x18], rsi
push rdi
nop
sub rsp, 8
mov qword [rsp], r12
nop
mov qword [rsp - 8], r13
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], r14
push r15
sub rsp, 0x40
xchg r9, r12
mov r9, r12
xchg r9, r12
xchg rbp, rdi
mov rbp, r8
xchg rbp, rdi
mov r14, rdx
xchg rbp, rbx
mov rbx, rcx
xchg rbp, rbx
mov r8, qword [r8 + 0x10]
xchg rcx, rdi
mov rdi, rcx
xchg rdi, rcx
cmp qword [rdi + 0x18], 0x10
jb 0x1400c9fa7
xchg rdx, rcx
mov rdx, qword [rdi]
xchg rdx, rcx
movabs rbx, 0xcbf29ce4264bdde0
add rbx, 0x5dd64545
xor edx, edx
test r8, r8
je 0x1400ca017
movabs r9, 0x1000870f16a
xor r9, 0x870f0d9
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
push rbx
xor ebx, eax
push rbx
xor rbx, qword [rsp + 8]
shr rbx, 0x20
ror rax, 0x20
xor ebx, eax
ror rax, 0x20
shl rbx, 0x20
or rbx, qword [rsp]
add rsp, 0x10
imul rbx, r9
inc rdx
cmp rdx, r8
jb 0x1400c9fe0
mov r9, rbx
mov r8, rdi
lea rdx, [rsp + 0x20]
xchg rbp, r11
mov rcx, r11
xchg r11, rbp
call fcn.1400c90d0
xchg rcx, rax
mov rcx, qword [rsp + 0x28]
xchg rcx, rax
test rax, rax
je 0x1400ca058
xchg rdx, rax
mov qword [r14], rdx
xchg rdx, rax
mov byte [r14 + 8], 0x73
sub byte [r14 + 8], 0x73
jmp 0x1400ca350
movabs rax, 0x333333359a90add
xor rax, 0x6a9a39ee
cmp qword [rbp + 0x10], rax
je 0x1400ca3ae
lea r13, [rbp + 8]
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x38], 0x55bee325
sub qword [rsp + 0x38], 0x55bee325
mov ecx, 0x18d4d0eb
sub ecx, 0x18d4d09b
call fcn.140110294
xchg r12, rsi
mov r12, rax
xchg rsi, r12
mov qword [rsp + 0x38], rax
xor eax, eax
xchg r12, rax
mov qword [rsi + 0x10], r12
xchg r12, rax
xchg rdi, rax
mov qword [rsi + 0x20], rdi
xchg rdi, rax
xchg r15, rax
mov qword [rsi + 0x28], r15
xchg r15, rax
xchg r9, rdi
movups xmm0, xmmword [r9]
xchg rdi, r9
xchg rsi, r12
movups xmmword [r12 + 0x10], xmm0
xchg rsi, r12
xchg r13, rdi
movups xmm1, xmmword [r13 + 0x10]
xchg rdi, r13
xchg rsi, r9
movups xmmword [r9 + 0x20], xmm1
xchg rsi, r9
mov qword [rdi + 0x10], rax
mov qword [rdi + 0x18], 0x3ad931fc
sub qword [rdi + 0x18], 0x3ad931ed
mov byte [rdi], al
mov qword [rsi + 0x30], rax
mov qword [rsi + 0x40], rax
mov qword [rsi + 0x48], rax
xchg rsi, r12
movups xmm0, xmmword [rsi]
xchg r12, rsi
xchg r15, rsi
movups xmmword [r15 + 0x30], xmm0
xchg rsi, r15
movups xmm1, xmmword [r12 + 0x10]
movups xmmword [rsi + 0x40], xmm1
mov qword [r12 + 0x10], rax
mov qword [r12 + 0x18], 0x2d314397
sub qword [r12 + 0x18], 0x2d314388
mov byte [r12], al
mov r9, qword [rbp + 0x10]
lea rcx, [r9 + 1]
xchg rbp, rcx
movss xmm3, dword [rcx]
xchg rcx, rbp
xorps xmm0, xmm0
test rcx, rcx
js 0x1400ca174
cvtsi2ss xmm0, rcx
jmp 0x1400ca18f
xchg rcx, r14
mov rax, r14
xchg r14, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
xchg rdi, r12
mov r12, qword [rbp + 0x38]
xchg rdi, r12
xorps xmm2, xmm2
test rdi, rdi
js 0x1400ca1af
cvtsi2ss xmm2, rdi
jmp 0x1400ca1d3
xchg r15, rcx
mov r15, rdi
xchg r15, rcx
shr rcx, 1
xchg rdi, r13
mov rax, r13
xchg rdi, r13
and eax, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm1, xmm0
divss xmm1, xmm2
comiss xmm1, xmm3
seta al
test al, al
je 0x1400ca2b9
divss xmm0, xmm3
call sub.api_ms_win_crt_math_l1_1_0.dll_ceilf
xor ecx, ecx
movss xmm1, dword [0x1400015a0]
comiss xmm0, xmm1
jb 0x1400ca228
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1400ca228
movabs rax, 0x8000000062260f4a
xor rax, 0x62260f4a
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 0x4ccb984f
sub ecx, 0x4ccb9847
cmp rax, rcx
cmova rcx, rax
cmp rdi, rcx
jae 0x1400ca272
cmp rdi, 0x200
jae 0x1400ca269
lea rdi, [rdi*8]
cmp rdi, rcx
jae 0x1400ca272
xchg rdi, rcx
mov rcx, rdi
xchg rcx, rdi
mov rdx, rdi
xchg rcx, r8
mov r8, rbp
xchg r8, rcx
call fcn.1400d07c0
xchg r9, rbx
mov rbx, r9
xchg rbx, r9
lea r8, [rsi + 0x10]
lea rdx, [rsp + 0x30]
xchg r13, rcx
mov r13, rbp
xchg r13, rcx
call fcn.1400c90d0
xchg rdx, rax
movups xmm0, xmmword [rdx]
xchg rdx, rax
movups xmmword [rsp + 0x20], xmm0
xchg r10, r9
mov r10, qword [rbp + 0x10]
xchg r9, r10
xchg r11, rdx
mov r11, qword [rsp + 0x20]
xchg r11, rdx
mov r8, qword [rdx + 8]
lea rax, [r9 + 1]
mov qword [rbp + 0x10], rax
mov qword [rsi], rdx
xchg r8, r11
mov qword [rsi + 8], r11
xchg r11, r8
mov qword [r8], rsi
mov qword [rdx + 8], rsi
mov rcx, qword [rbp + 0x18]
mov rax, qword [rbp + 0x30]
and rax, rbx
add rax, rax
xchg r13, r9
mov r13, qword [rcx + rax*8]
xchg r9, r13
cmp r9, qword [r13]
jne 0x1400ca30f
mov qword [rcx + rax*8], rsi
jmp 0x1400ca332
cmp r9, rdx
jne 0x1400ca327
xchg r8, rsi
mov qword [rcx + rax*8], r8
xchg r8, rsi
jmp 0x1400ca33d
cmp qword [rcx + rax*8 + 8], r8
jne 0x1400ca33d
xchg rsi, r15
mov qword [rcx + rax*8 + 8], r15
xchg r15, rsi
xchg rsi, r10
mov qword [r14], r10
xchg rsi, r10
mov byte [r14 + 8], 0x5b
sub byte [r14 + 8], 0x5a
xchg r11, rax
mov r11, r14
xchg r11, rax
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
xchg rsi, r8
mov r8, qword [rsp + 0x80]
xchg r8, rsi
add rsp, 0x40
push rbx
push rbx
xchg qword [rsp + 0x10], r15
add rsp, 0x18
nop
mov r14, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r13, qword [rsp - 8]
nop
add rsp, 8
xchg qword [rsp - 8], r12
nop
add rsp, 8
mov rdi, qword [rsp - 8]
nop
add rsp, 8
jmp qword [rsp - 8]
lea rcx, [0x140001530]
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_
int3