Function at 0x14005bbc0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
lea rbp, [rsp - 0x4f]
sub rsp, 0x88
mov rax, qword [0x1401cee90]
xor rax, rsp
mov qword [rbp + 0x37], rax
cmp byte [0x1401d89a8], 0
je 0x14005bbf2
lea rax, [0x1401d25c0]
jmp 0x14005be91
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0xb0], r14
mov r14d, 0xa
xor ebx, ebx
mov qword [rsp + 0x80], r15
mov dword [rbp - 0x19], 0x30004
lea r15d, [r14 - 1]
mov dword [rbp - 0x15], 0x3e001d
mov dword [rbp - 0x11], 0xd001a
mov dword [rbp - 0xd], 0x80008
mov dword [rbp - 9], 0xa0018
mov dword [rbp - 5], 0x1d000c
mov dword [rbp - 1], 0xb0011
mov dword [rbp + 3], 0x1e003e
mov dword [rbp + 7], 0xb0001
mov dword [rbp + 0xb], 0xd0011
mov dword [rbp + 0xf], 0x1002e
mov dword [rbp + 0x13], 0x9000f
mov dword [rbp + 0x17], 0x1b
mov edx, ebx
lea rsi, [0x1401d25c0]
lea r8, [0x1401d1da1]
movzx eax, byte [rdx + r8 - 1]
movzx ecx, word [rbp + rdx*2 - 0x17]
add rdx, 5
xor ax, word [rbp + rdx*2 - 0x23]
mov word [rsi + rdx*2 - 0xa], ax
movzx eax, byte [rdx + r8 - 5]
xor cx, ax
movzx eax, byte [rdx + r8 - 4]
xor ax, word [rbp + rdx*2 - 0x1f]
mov word [rsi + rdx*2 - 8], cx
mov word [rsi + rdx*2 - 6], ax
movzx eax, byte [rdx + r8 - 3]
xor ax, word [rbp + rdx*2 - 0x1d]
mov word [rsi + rdx*2 - 4], ax
movzx eax, byte [rdx + r8 - 2]
xor ax, word [rbp + rdx*2 - 0x1b]
mov word [rsi + rdx*2 - 2], ax
cmp rdx, 0x19
jl 0x14005bc81
mov r8d, dword [0x1401d6d80]
mov eax, 0x2e8ba2e9
mov ecx, r8d
imul ecx, r8d
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x16
sub ecx, edx
cmp ecx, 0x11
jne 0x14005be2e
mov qword [rsp + 0xa8], rdi
mov rdi, rbx
call fcn.1400d57c0
inc rdi
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [rbp + rdi*8 - 0x21], xmm0
cmp rdi, r14
jb 0x14005bd16
mov rdi, qword [rsp + 0xa8]
mov r9, r15
nop dword [rax]
mov rdx, r15
cmp rbx, rdx
jge 0x14005be18
cmp r9, 4
jl 0x14005bded
mov r8d, 5
lea rcx, [rbp + 0x1f]
sub r8, rbx
shr r8, 2
inc r8
lea rax, [r8*4]
sub rdx, rax
nop word [rax + rax]
movsd xmm0, qword [rcx + 0x10]
movsd xmm1, qword [rcx + 8]
comisd xmm0, xmm1
jbe 0x14005bd9a
movsd qword [rcx + 0x10], xmm1
movsd qword [rcx + 8], xmm0
movsd xmm0, qword [rcx + 8]
movsd xmm1, qword [rcx]
comisd xmm0, xmm1
jbe 0x14005bdb2
movsd qword [rcx + 8], xmm1
movsd qword [rcx], xmm0
movsd xmm0, qword [rcx]
movsd xmm1, qword [rcx - 8]
comisd xmm0, xmm1
jbe 0x14005bdca
movsd qword [rcx], xmm1
movsd qword [rcx - 8], xmm0
movsd xmm0, qword [rcx - 8]
movsd xmm1, qword [rcx - 0x10]
comisd xmm0, xmm1
jbe 0x14005bde4
movsd qword [rcx - 8], xmm1
movsd qword [rcx - 0x10], xmm0
sub rcx, 0x20
dec r8
jne 0x14005bd80
cmp rdx, rbx
jle 0x14005be18
movsd xmm0, qword [rbp + rdx*8 - 0x19]
movsd xmm1, qword [rbp + rdx*8 - 0x21]
comisd xmm0, xmm1
jbe 0x14005be10
movsd qword [rbp + rdx*8 - 0x19], xmm1
movsd qword [rbp + rdx*8 - 0x21], xmm0
dec rdx
cmp rdx, rbx
jg 0x14005bdf2
inc rbx
dec r9
dec r14
jne 0x14005bd40
mov r8d, dword [0x1401d6d80]
mov r15, qword [rsp + 0x80]
mov r14, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0xa0]
lea eax, [r8 + 1]
lea ecx, [r8 + 2]
mov byte [0x1401d89a8], 1
imul ecx, eax
mov eax, 0xb21642c9
imul ecx, r8d
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x17
sub ecx, edx
cmp ecx, 4
jne 0x14005be8e
mov edx, 0xc0
lea rcx, [0x14015e184]
lea r8d, [rdx + 1]
call fcn.1400d5714
mov rax, rsi
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.1400d4e00
add rsp, 0x88
pop rsi
pop rbp
ret