Function at 0x14005e5d0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
mov dword [rsp - 0x3c], edi
push rdi
push r14
push r15
mov rdx, rdx
sub rsp, 0x60
mov rsi, qword [rcx + 8]
lea r14, [rcx + 8]
mov rdx, rdx
mov byte [rsp + 0x90], 6
add byte [rsp + 0x90], 0x66
add byte [rsp + 0x90], 0xe
add byte [rsp + 0x90], 1
xchg r8, r8
sub byte [rsp + 0x90], 0x7b
mov rdi, rcx
cmp rsi, 4
mov dword [rsp - 0x18], esi
jbe 0x14005e62d
mov rdi, qword [rcx]
lea rcx, [rsi + 1]
mov eax, 0x17d2cc0d
xchg r15, r15
xor eax, 0x7ea2a953
sub eax, 0x20f7e3f4
xor eax, 0x7e023d15
sub eax, 0x15309fcc
xchg rbx, rbx
sub eax, 0x188db7f6
sub eax, 0x8bc64bb
mul rcx
mov dword [rsp - 0x2c], esp
pushf
movabs rcx, 0xffffffff2e539c51
add rcx, 0x45ceafc8
xor rcx, 0x3a38f22e
xchg rcx, rcx
xor rcx, 0x6212389d
xor rcx, 0x6a941ffb
add rcx, 0x18bd86f6
add rcx, 0x7fffffff
mov dword [rsp - 0x28], 0x601be66f
add rcx, 0x20a5dfb9
popf
cmovo rax, rcx
mov dword [rsp - 0xc], ebp
mov rcx, rax
call fcn.140072200
xor r15d, r15d
mov rbx, rax
mov dword [rsp - 0x24], 0x7526f158
mov r8d, r15d
test rsi, rsi
je 0x14005e734
mov dword [rsp - 0x20], esi
mov rdx, rax
sub rdi, rax
nop
mov dword [rsp - 0x30], 0x843c3bd
movzx ecx, r8b
lea rdx, [rdx + 2]
and cl, 3
mov eax, 0x304508b1
mov dword [rsp - 0x3c], 0x11131809
add eax, 0x1a6ecc6a
add eax, 0x1907b5e0
sub eax, 0x2561c539
xchg rbx, rbx
add eax, 0x12c798a3
shl cl, 3
inc r8
mov dword [rsp - 0x34], ebp
sar eax, cl
movsx eax, al
xor ax, word [rdi + rdx - 2]
mov dword [rsp - 0x24], esp
mov word [rdx - 2], ax
cmp r8, rsi
jb 0x14005e6e4
mov word [rbx + rsi*2], r15w
xchg rcx, rcx
mov r8, rbx
mov rax, qword [0x1400a2ec0]
xor edx, edx
mov dword [rsp - 0x3c], 0x18d0ab1e
mov r14d, dword [r14]
mov ecx, 0x62738843
sub ecx, 0x124d0afd
sub ecx, 0x2a669e9
mov dword [rsp - 0x3c], esi
xor ecx, 0xb718100
xor ecx, 0x46f16fb4
xor rax, qword [0x1400a2a90]
mov r9d, r14d
mov dword [rsp - 0x40], edx
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], r15d
xchg rcx, rcx
mov qword [rsp + 0x20], r15
call rax
movsxd rbp, eax
lea edi, [rbp + 1]
mov dword [rsp - 0x38], 0xfc48261
movsxd rcx, edi
call fcn.140072200
mov r10, qword [0x1400a2ec0]
mov r9d, r14d
xchg r10, r10
xor r10, qword [0x1400a2a90]
mov r8, rbx
mov qword [rsp + 0x38], r15
mov rdi, rdi
xor edx, edx
mov qword [rsp + 0x30], r15
mov ecx, 0x7fcfaeb6
xor ecx, 0xf4ca07b
xchg rsp, rsp
add ecx, 0x2ee4de3
sub ecx, 0x22b0cf22
xor ecx, 0x6947700
sub ecx, 0x389bea10
xchg rbp, rbp
xor ecx, 0x1db9ed97
mov dword [rsp + 0x28], edi
mov rsi, rax
mov qword [rsp + 0x20], rax
xchg rsi, rsi
call r10
mov byte [rbp + rsi], r15b
mov rcx, rbx
mov qword [rsp + 0x40], rsi
xchg r9, r9
call fcn.140072210
lea rax, [rsp + 0x40]
mov byte [rsp + 0x48], 0x58
mov dword [rsp - 0x34], 0x4370828f
xor byte [rsp + 0x48], 0x32
sub byte [rsp + 0x48], 0x3c
add byte [rsp + 0x48], 0x21
add byte [rsp + 0x48], 0x26
xchg r12, r12
sub byte [rsp + 0x48], 0x74
mov qword [rsp + 0x50], rax
mov ecx, 0x56a2c850
xchg rcx, rcx
xor ecx, 0x746a7cf4
add ecx, 0x3e1099cb
xor ecx, 0x7dc8cc47
mov r12, r12
xor ecx, 0x1d118230
lea rax, [rsp + 0x90]
mov qword [rsp + 0x58], rax
xchg rcx, rcx
call fcn.140072200
mov rdi, rax
test rax, rax
xchg rdi, rdi
je 0x14005e8bb
movups xmm0, xmmword [rsp + 0x50]
lea rax, [0x1400026c0]
mov rdx, rdx
mov qword [rdi], rax
movups xmmword [rdi + 8], xmm0
jmp 0x14005e8be
mov rdi, r15
mov ecx, 0x3e7e9480
xor ecx, 0x6cce9fd5
mov dword [rsp - 0x34], ebp
add ecx, 0x117dd047
sub ecx, 0xdd0857c
sub ecx, 0x565d54f0
xchg r9, r9
mov dword [rsp + 0x98], 0x2d9e18ac
xor dword [rsp + 0x98], 0x121aa8b2
sub dword [rsp + 0x98], 0xdcf5557
add dword [rsp + 0x98], 0x8c03ee
mov dword [rsp - 0x44], 0x59e4fd1f
add dword [rsp + 0x98], 0x128d2ed
xor dword [rsp + 0x98], 0x336a3092
call fcn.140072520
mov rbx, rax
mov dword [rsp - 0x3c], 0x5084f8f7
test rax, rax
je 0x14005ea1d
nop dword [rax]
mov r8d, dword [rsp + 0x98]
xchg r14, r14
lea r9, [rsp + 0x98]
mov rdx, rbx
mov ecx, 0x691604d8
mov dword [rsp - 0x40], ebx
sub ecx, 0xda69e7a
sub ecx, 0xe2fc71e
xor ecx, 0x6ded48e2
mov dword [rsp - 0x14], 0x7bf45b65
add ecx, 0x10d6e5a4
add ecx, 0x301f66d6
sub ecx, 0x61c92411
mov r9, r9
call fcn.14005c310
test eax, eax
jns 0x14005e9d7
mov rcx, rbx
mov dword [rsp - 0x20], 0x7e5bb57c
cmp eax, 0xc0000004
jne 0x14005ea18
call fcn.140072400
mov ecx, dword [rsp + 0x98]
mov dword [rsp - 0x18], esi
call fcn.140072520
mov rbx, rax
test rax, rax
xchg r13, r13
jne 0x14005e948
jmp 0x14005ea1d
cmp dword [rbx], r15d
jbe 0x14005ea15
mov dword [rsp - 0x3c], ecx
nop dword [rax + rax]
mov r8, qword [rdi]
mov rcx, rdi
mov eax, r15d
mov rcx, rcx
imul rdx, rax, 0x128
add rdx, 8
add rdx, rbx
call qword [r8]
mov dword [rsp - 0x40], esi
test al, al
je 0x14005ea15
inc r15d
cmp r15d, dword [rbx]
mov r15, r15
jb 0x14005e9e5
mov rcx, rbx
call fcn.140072400
test rdi, rdi
mov rsp, rsp
je 0x14005ea64
mov rax, qword [rdi]
mov edx, 0x1dff937e
mov r10, r10
xor edx, 0x2a1aea8b
sub edx, 0x418882f
xor edx, 0x7ad69e8d
xor edx, 0x610851f5
mov dword [rsp - 0x3c], 0x635af529
sub edx, 0x28123ebd
mov rcx, rdi
call qword [rax + 0x10]
mov dword [rsp - 0x3c], 0x5c8479a9
cmp byte [rsp + 0x48], 0
movzx ebx, byte [rsp + 0x90]
je 0x14005ea80
mov rcx, qword [rsp + 0x40]
mov r10, r10
call fcn.140072210
movzx eax, bl
mov rbx, qword [rsp + 0xa0]
mov r11, r11
add rsp, 0x60
pop r15
pop r14
pop rdi
mov dword [rsp - 0x38], edi
pop rsi
pop rbp
ret