Function at 0x1400f785d
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push r15
lea rbp, [rsp - 0x3f]
sub rsp, 0xe8
xor r15d, r15d
mov rbx, rcx
mov dword [rbp + 0x67], r15d
call fcn.1400efb00
mov rcx, rax
mov rdx, qword [rax]
call qword [rdx + 0xb0]
mov rcx, qword [0x140147180]
mov rdx, rax
call fcn.1400ed58c
mov rcx, rax
call fcn.1401038c0
mov ecx, dword [rbx + 0xb5c]
mov rsi, rax
neg ecx
add ecx, 0xfffffffc
neg ecx
cmp dword [rbx + 0xb58], ecx
je 0x1400f7af2
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x1400f7af2
cmp byte [rcx + 0x310], r15b
je 0x1400f7af2
mov qword [rsp + 0x118], rdi
lea rdx, [rbp - 0x49]
mov qword [rsp + 0x120], r12
mov rcx, rbx
mov qword [rsp + 0xe0], r14
call fcn.1400f8290
mov r9, qword [rbx + 0xb48]
lea rdx, [rbp - 9]
mov rdi, qword [rsi + 0x50]
lea rcx, [rbp - 0x49]
xor r8d, r8d
call fcn.140055920
mov rdx, rax
mov rcx, rdi
call fcn.1400f32a8
mov rcx, qword [rbp - 9]
mov r12d, eax
lea rax, [rbp - 1]
cmp rcx, rax
jne 0x1400f78c6
lea rdi, [rbp - 1]
xor eax, eax
mov ecx, 0x7c764505
sub ecx, 0x5cb486cf
sub ecx, 0x1fc1be06
rep stosb byte [rdi], al
jmp 0x1400f78cb
call fcn.140099230
mov r14, qword [rbp - 0x11]
cmp qword [rbx + 0xb48], r14
je 0x1400f79c3
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.140017954
mov edx, 0x8585981
sub edx, 0x3ce37e8
xor edx, 0xaa8507e
add edx, 0x548ed26e
test r14, r14
je 0x1400f797c
mov rdi, rax
sub rsi, rax
mov r8, r14
mov r9d, 0x338d2e5
add r9d, 0x789cf878
sub r9d, 0x7bd5ca5e
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 0x1400f795b
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.1400f3430
mov r13, qword [rsp + 0x128]
mov esi, eax
mov r15d, 0x59b7ebe6
sub r15d, 0x51ed73c2
xor r15d, 0x351ed50e
xor r15d, 0x32d4ad2b
jmp 0x1400f79c6
mov esi, r15d
mov r14, qword [rsp + 0xe0]
test r15b, 1
je 0x1400f7a15
mov rcx, qword [rsp + 0x20]
lea rax, [rsp + 0x28]
cmp rcx, rax
jne 0x1400f7a10
lea rdi, [rsp + 0x28]
xor eax, eax
mov ecx, 0x10e67d0b
add ecx, 0x69dfe742
sub ecx, 0x634b370f
xor ecx, 0x177b2d0e
rep stosb byte [rdi], al
jmp 0x1400f7a15
call fcn.140099230
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.1400f0300
lea rdx, [rbp + 0x67]
mov rcx, rbx
mov edi, dword [rax]
sub edi, r12d
sub edi, dword [rbx + 0xb58]
call fcn.1400f0300
cmp esi, edi
cmovle edi, esi
mov ecx, dword [rax]
mov eax, dword [rbx + 0xb5c]
sub ecx, edi
sub ecx, r12d
add eax, 4
mov dword [rbx + 0xb58], ecx
cmp ecx, eax
jle 0x1400f7a66
mov dword [rbx + 0xb58], eax
jmp 0x1400f7aae
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.1400f0300
mov ecx, dword [rbx + 0xb58]
add ecx, r12d
mov edx, dword [rax]
sub edx, dword [rbx + 0xb60]
sub edx, 4
cmp ecx, edx
jle 0x1400f7aae
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.1400f0300
mov edx, dword [rax]
sub edx, dword [rbx + 0xb60]
sub edx, r12d
sub edx, 4
mov dword [rbx + 0xb58], edx
mov rcx, qword [rbp - 0x49]
lea rax, [rbp - 0x41]
mov r12, qword [rsp + 0x120]
cmp rcx, rax
jne 0x1400f7ae5
lea rdi, [rbp - 0x41]
xor eax, eax
mov ecx, 0x12204e47
add ecx, 0xd1b6786
sub ecx, 0x1f3bb59d
rep stosb byte [rdi], al
jmp 0x1400f7aea
call fcn.140099230
mov rdi, qword [rsp + 0x118]
neg rsp
add rsp, 0xffffffffffffff18
neg rsp
pop r15
pop rsi
pop rbx
pop rbp
ret