Function at 0x1400f8952
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push r15
lea rbp, [rsp - 0x3f]
add rsp, 0xffffffffffffff18
xor r15d, r15d
mov rbx, rcx
mov dword [rbp + 0x67], r15d
call fcn.1400f0a00
mov rcx, rax
mov rdx, qword [rax]
call qword [rdx + 0xb8]
mov rcx, qword [0x1401485f0]
mov rdx, rax
call fcn.1400ee3f0
mov rcx, rax
call fcn.140104a70
mov ecx, dword [rbx + 0xb5c]
mov rsi, rax
nop
add ecx, 0x4f000e1f
sub ecx, 0x4f000e1b
cmp dword [rbx + 0xb58], ecx
je 0x1400f8c00
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x1400f8c00
cmp byte [rcx + 0x310], r15b
je 0x1400f8c00
mov qword [rsp + 0x118], rdi
lea rdx, [rbp - 0x49]
mov qword [rsp + 0x120], r12
mov rcx, rbx
mov qword [rsp + 0xe0], r14
call fcn.1400f9370
mov r9, qword [rbx + 0xb48]
lea rdx, [rbp - 9]
mov rdi, qword [rsi + 0x50]
lea rcx, [rbp - 0x49]
xor r8d, r8d
call fcn.140055d30
mov rdx, rax
mov rcx, rdi
call fcn.1400f4350
mov rcx, qword [rbp - 9]
mov r12d, eax
lea rax, [rbp - 1]
cmp rcx, rax
jne 0x1400f89d2
lea rdi, [rbp - 1]
xor eax, eax
mov ecx, 0x3f42fccc
xor ecx, 0x6277c7fd
add ecx, 0x3ad8c88
sub ecx, 0x60e2c789
rep stosb byte [rdi], al
jmp 0x1400f89d7
call fcn.1400999a0
mov r14, qword [rbp - 0x11]
cmp qword [rbx + 0xb48], r14
je 0x1400f8acf
xorps xmm0, xmm0
mov qword [rsp + 0x128], r13
mov r13, qword [rsi + 0x50]
lea rax, [rsp + 0x28]
mov rsi, qword [rbp - 0x49]
lea rdx, [r14 + 1]
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x20], rax
movups xmmword [rsp + 0x28], xmm0
movups xmmword [rbp - 0x71], xmm0
movups xmmword [rbp - 0x61], xmm0
call fcn.140017bbc
mov edx, 0x46499b20
add edx, 0x18c661a9
xor edx, 0x6c8e7f3
sub edx, 0x1e130096
test r14, r14
je 0x1400f8a8f
mov rdi, rax
sub rsi, rax
mov r8, r14
mov r9d, 0x41b49c77
xor r9d, 0x24b7223f
sub r9d, 0x2b3f0c7
xor r9d, 0x624fcd7e
nop word [rax + rax]
movzx ecx, dx
lea rdi, [rdi + 2]
and cx, r9w
ror edx, 8
xor cx, word [rsi + rdi - 2]
mov word [rdi - 2], cx
sub r8, 1
jne 0x1400f8a6e
mov word [rax + r14*2], r15w
mov rcx, r13
mov rdx, qword [rbx + 0xb48]
mov rax, qword [rsp + 0x20]
lea rdx, [rax + rdx*2]
call fcn.1400f45e0
mov r13, qword [rsp + 0x128]
mov esi, eax
mov r15d, 0x48f5d59a
xor r15d, 0x1c54a100
xor r15d, 0x54a1749b
jmp 0x1400f8ad2
mov esi, r15d
mov r14, qword [rsp + 0xe0]
test r15b, 1
je 0x1400f8b1b
mov rcx, qword [rsp + 0x20]
lea rax, [rsp + 0x28]
cmp rcx, rax
jne 0x1400f8b16
lea rdi, [rsp + 0x28]
xor eax, eax
mov ecx, 0x3f449dc0
sub ecx, 0x3038acd9
sub ecx, 0xf0bf0b7
rep stosb byte [rdi], al
jmp 0x1400f8b1b
call fcn.1400999a0
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.1400f1350
lea rdx, [rbp + 0x67]
mov rcx, rbx
mov edi, dword [rax]
sub edi, r12d
sub edi, dword [rbx + 0xb58]
call fcn.1400f1350
cmp esi, edi
cmovle edi, esi
mov ecx, dword [rax]
mov eax, dword [rbx + 0xb5c]
sub ecx, edi
sub ecx, r12d
nop
sub eax, 0x749c782b
add eax, 0x749c782f
mov dword [rbx + 0xb58], ecx
cmp ecx, eax
jle 0x1400f8b74
mov dword [rbx + 0xb58], eax
jmp 0x1400f8bbc
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.1400f1350
mov ecx, dword [rbx + 0xb58]
add ecx, r12d
mov edx, dword [rax]
sub edx, dword [rbx + 0xb60]
add edx, 0xfffffffc
cmp ecx, edx
jle 0x1400f8bbc
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.1400f1350
mov edx, dword [rax]
sub edx, dword [rbx + 0xb60]
sub edx, r12d
add edx, 0xfffffffc
mov dword [rbx + 0xb58], edx
mov rcx, qword [rbp - 0x49]
lea rax, [rbp - 0x41]
mov r12, qword [rsp + 0x120]
cmp rcx, rax
jne 0x1400f8bf3
lea rdi, [rbp - 0x41]
xor eax, eax
mov ecx, 0xd0261ec
add ecx, 0x394e4972
xor ecx, 0x4650ab6e
rep stosb byte [rdi], al
jmp 0x1400f8bf8
call fcn.1400999a0
mov rdi, qword [rsp + 0x118]
sub rsp, 0xffffffffffffff18
pop r15
pop rsi
pop rbx
pop rbp
ret