Function at 0x140005860
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
push rbx
push rbp
push rsi
push rdi
push r14
sub rsp, 0xd0
movsd xmm0, qword [0x1400809d8]
lea r14, [0x140000000]
movsxd rbx, dword [0x1400a5464]
xor edi, edi
movaps xmmword [rax - 0x38], xmm6
mov esi, edi
movaps xmmword [rax - 0x48], xmm7
mov ebp, edi
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movsd xmm9, qword [rsp + 0x100]
movaps xmmword [rax - 0x78], xmm10
movsd xmm10, qword [rsp + 0x100]
movaps xmmword [rsp + 0x70], xmm11
movsd xmm11, qword [rsp + 0x100]
movaps xmmword [rsp + 0x60], xmm12
xorps xmm12, xmm12
movaps xmmword [rsp + 0x50], xmm13
xorps xmm13, xmm13
movaps xmmword [rsp + 0x40], xmm14
movsd xmm14, qword [rsp + 0x100]
movaps xmmword [rsp + 0x30], xmm15
movsd xmm15, qword [rsp + 0x100]
movsd qword [rsp + 0x108], xmm0
mov dword [0x1400a54c0], 0xffffffff
nop
call fcn.140005630
test eax, eax
je 0x140005bc4
mov eax, dword [0x1400a54b8]
add eax, 0xfffffff8
cmp eax, 0xde
ja case.0x140005943.17
cdqe
movzx eax, byte [r14 + rax + 0x5c34]
mov ecx, dword [r14 + rax*4 + 0x5c0c]
add rcx, r14
jmp rcx
call fcn.1400040f0
mov dword [0x1400a54c0], eax
movsd xmm6, qword [rsp + 0x100]
movsd xmm7, qword [rsp + 0x108]
movsd xmm8, qword [rsp + 0x110]
cmp dword [0x1400a54b8], 0
jne 0x140005910
cmp esi, 1
jle 0x1400059ce
cmp edi, esi
jne 0x1400059ce
movaps xmm3, xmm15
movsd qword [rsp + 0x20], xmm9
movaps xmm2, xmm14
movaps xmm1, xmm10
movaps xmm0, xmm11
call fcn.140006280
test eax, eax
je 0x140005bc4
test ebp, ebp
je 0x1400059ce
movsd xmm2, qword [rsp + 0x118]
movaps xmm3, xmm8
movaps xmm1, xmm15
movsd qword [rsp + 0x20], xmm6
movaps xmm0, xmm14
call fcn.140006280
test eax, eax
je 0x140005bc4
movsd xmm0, qword [0x140080a08]
movsd xmm1, qword [0x1400a3020]
subsd xmm0, xmm1
comisd xmm7, xmm0
jbe 0x140005a67
movaps xmm0, xmm1
subsd xmm0, qword [0x1400809d8]
comisd xmm0, xmm7
jbe 0x140005a67
movsd xmm0, qword [0x140080a20]
andps xmm13, xmm0
comisd xmm1, xmm13
jbe 0x140005a67
andps xmm12, xmm0
comisd xmm1, xmm12
jbe 0x140005a67
cmp ebx, dword [0x1400a5464]
lea rcx, [rbx + rbx*4]
mov rax, qword [0x1400a5498]
lea rdx, [rax + rcx*8]
jge 0x140005a67
movsd xmm2, qword [0x140080a30]
nop word [rax + rax]
movsd xmm0, qword [rdx]
inc ebx
movsd xmm1, qword [rdx + 0x10]
lea rdx, [rdx + 0x28]
xorps xmm0, xmm2
xorps xmm1, xmm2
movsd qword [rdx - 0x28], xmm0
movsd qword [rdx - 0x18], xmm1
cmp ebx, dword [0x1400a5464]
jl 0x140005a40
mov eax, 1
jmp 0x140005bc6
mov esi, dword [0x1400a54bc]
jmp case.0x140005943.17
test byte [0x1400a54bc], 1
movsd xmm6, qword [rsp + 0x100]
movsd xmm7, qword [rsp + 0x108]
movsd xmm8, qword [rsp + 0x110]
je 0x14000596c
mov ebp, 1
jmp 0x14000596c
test edi, edi
jle 0x140005b12
cmp edi, 1
jle 0x140005ae4
cmp edi, esi
jge 0x140005bc4
movaps xmm3, xmm15
movsd qword [rsp + 0x20], xmm9
movaps xmm2, xmm14
movaps xmm1, xmm10
movaps xmm0, xmm11
call fcn.140006280
test eax, eax
je 0x140005bc4
movsd xmm9, qword [rsp + 0x100]
xorps xmm6, xmm6
movaps xmm11, xmm14
movsd qword [rsp + 0x100], xmm6
movsd xmm14, qword [0x1400a54c8]
movaps xmm10, xmm15
inc edi
jmp 0x140005959
movsd xmm14, qword [0x1400a54c8]
test edi, edi
jne 0x140005b29
movsd qword [rsp + 0x118], xmm14
xorps xmm6, xmm6
inc edi
movsd qword [rsp + 0x100], xmm6
jmp 0x140005959
movsd xmm15, qword [0x1400a54c8]
movsd xmm6, qword [rsp + 0x100]
movsd xmm7, qword [rsp + 0x108]
cmp edi, 1
jne 0x140005962
movsd qword [rsp + 0x110], xmm15
movaps xmm8, xmm15
jmp 0x14000596c
movsd xmm6, qword [0x1400a54c8]
movsd qword [rsp + 0x100], xmm6
jmp 0x140005959
movsd xmm13, qword [0x1400a54c8]
jmp case.0x140005943.17
movsd xmm12, qword [0x1400a54c8]
jmp case.0x140005943.17
movsd xmm7, qword [0x1400a54c8]
movsd xmm6, qword [rsp + 0x100]
movsd qword [rsp + 0x108], xmm7
jmp 0x140005962
xor eax, eax
movaps xmm14, xmmword [rsp + 0x40]
lea r11, [rsp + 0xd0]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm15, xmmword [rsp + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret