Function at 0x1400f7c48
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.14008f4d0
mov rcx, rax
mov rdx, qword [rax]
call qword [rdx + 0xb0]
mov rcx, qword [0x140147180]
mov rdx, rax
call fcn.1400ed5a4
mov rcx, rax
call fcn.140103ba8
mov ecx, dword [rbx + 0xb5c]
mov rsi, rax
sub ecx, 0xfffffffc
cmp dword [rbx + 0xb58], ecx
je 0x1400f7e82
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x1400f7e82
cmp byte [rcx + 0x310], r15b
je 0x1400f7e82
mov qword [rsp + 0x118], rdi
lea rdx, [rbp - 0x49]
mov qword [rsp + 0x120], r12
mov rcx, rbx
mov qword [rsp + 0xe0], r14
call fcn.1400f85c0
mov r9, qword [rbx + 0xb48]
lea rdx, [rbp - 9]
mov rdi, qword [rsi + 0x50]
lea rcx, [rbp - 0x49]
xor r8d, r8d
call fcn.140055c80
mov rdx, rax
mov rcx, rdi
call fcn.1400f34d4
mov rcx, qword [rbp - 9]
mov r12d, eax
lea rax, [rbp - 1]
cmp rcx, rax
jne 0x1400f7c48
lea rdi, [rbp - 1]
xor eax, eax
mov ecx, 0x73c75b05
xor ecx, 0x112a9c45
sub ecx, 0x3647c62b
sub ecx, 0x2ca600e5
rep stosb byte [rdi], al
jmp 0x1400f7c4d
call fcn.140099810
mov r14, qword [rbp - 0x11]
cmp qword [rbx + 0xb48], r14
je 0x1400f7d45
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.140017bb4
mov edx, 0x33790e83
sub edx, 0x6ae0846
add edx, 0x22bedf99
sub edx, 0x1f2bc38e
test r14, r14
je 0x1400f7cfe
mov rdi, rax
sub rsi, rax
mov r8, r14
mov r9d, 0x22aba9b
xor r9d, 0x1b857e0c
xor r9d, 0x19afc468
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 0x1400f7cdd
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.1400f375c
mov r13, qword [rsp + 0x128]
mov esi, eax
mov r15d, 0x1266d358
add r15d, 0x5ae5a8cd
xor r15d, 0x15f2d852
sub r15d, 0x78bea476
jmp 0x1400f7d48
mov esi, r15d
mov r14, qword [rsp + 0xe0]
test r15b, 1
je 0x1400f7d91
mov rcx, qword [rsp + 0x20]
lea rax, [rsp + 0x28]
cmp rcx, rax
jne 0x1400f7d8c
lea rdi, [rsp + 0x28]
xor eax, eax
mov ecx, 0x2c54d40a
add ecx, 0xf7564ac
sub ecx, 0x3bca3886
rep stosb byte [rdi], al
jmp 0x1400f7d91
call fcn.140099810
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.1400f0390
lea rdx, [rbp + 0x67]
mov rcx, rbx
mov edi, dword [rax]
sub edi, r12d
sub edi, dword [rbx + 0xb58]
call fcn.1400f0390
cmp esi, edi
cmovle edi, esi
mov ecx, dword [rax]
mov eax, dword [rbx + 0xb5c]
sub ecx, edi
sub ecx, r12d
sub eax, 0xfffffffc
mov dword [rbx + 0xb58], ecx
cmp ecx, eax
jle 0x1400f7de2
mov dword [rbx + 0xb58], eax
jmp 0x1400f7e38
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.1400f0390
mov ecx, dword [rbx + 0xb58]
add ecx, r12d
mov edx, dword [rax]
sub edx, dword [rbx + 0xb60]
nop
add edx, 0x3d231278
sub edx, 0x3d23127c
cmp ecx, edx
jle 0x1400f7e38
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.1400f0390
mov edx, dword [rax]
sub edx, dword [rbx + 0xb60]
sub edx, r12d
neg edx
sub edx, 0xfffffffc
neg edx
mov dword [rbx + 0xb58], edx
mov rcx, qword [rbp - 0x49]
lea rax, [rbp - 0x41]
mov r12, qword [rsp + 0x120]
cmp rcx, rax
jne 0x1400f7e75
lea rdi, [rbp - 0x41]
xor eax, eax
mov ecx, 0x4b93bc06
xor ecx, 0x296f81d0
xor ecx, 0x3a8ae95
xor ecx, 0x61549373
rep stosb byte [rdi], al
jmp 0x1400f7e7a
call fcn.140099810
mov rdi, qword [rsp + 0x118]
add rsp, 0xe8
pop r15
pop rsi
pop rbx
pop rbp
ret