Function at 0x1400532c0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], r14
push rbp
lea rbp, [rsp - 0x3b0]
sub rsp, 0x4b0
mov rax, qword [0x1401bce90]
xor rax, rsp
mov qword [rbp + 0x3a8], rax
cmp byte [0x1401c699e], 0
je 0x1400532fb
lea rax, [0x1401c03e8]
jmp 0x1400535ea
mov r8d, dword [0x1401c4d60]
mov qword [rsp + 0x4c0], rbx
xor ebx, ebx
lea eax, [r8 + 1]
lea ecx, [r8 + 2]
imul ecx, eax
mov eax, 0x38e38e39
imul ecx, r8d
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*8]
add eax, eax
sub ecx, eax
cmp ecx, 0xb
jne 0x140053359
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
call qword [sym.imp.KERNEL32.dll_PeekNamedPipe]
mov r8d, dword [0x1401c4d60]
mov dword [rbp + 0x370], 0x1e001c
mov dword [rbp + 0x374], 0x3c0000
mov dword [rbp + 0x378], 0xb0018
mov dword [rbp + 0x37c], 0x1d0002
mov dword [rbp + 0x380], 0xc001c
mov dword [rbp + 0x384], 0x100010
mov dword [rbp + 0x388], 0x140007
mov dword [rbp + 0x38c], 0xa002d
mov dword [rbp + 0x390], 0xa0010
mov dword [rbp + 0x394], 0x13000f
mov dword [rbp + 0x398], 0x2001b
mov dword [rbp + 0x39c], 0x70005
mov word [rbp + 0x3a0], bx
mov rdx, rbx
lea r14, [0x1401c03e8]
lea r9, [0x1401bfd91]
nop dword [rax]
movzx eax, byte [rdx + r9 - 1]
movzx ecx, word [rbp + rdx*2 + 0x372]
add rdx, 6
xor ax, word [rbp + rdx*2 + 0x364]
mov word [r14 + rdx*2 - 0xc], ax
movzx eax, byte [rdx + r9 - 6]
xor cx, ax
movzx eax, byte [rdx + r9 - 5]
xor ax, word [rbp + rdx*2 + 0x368]
mov word [r14 + rdx*2 - 0xa], cx
mov word [r14 + rdx*2 - 8], ax
movzx eax, byte [rdx + r9 - 4]
xor ax, word [rbp + rdx*2 + 0x36a]
mov word [r14 + rdx*2 - 6], ax
movzx eax, byte [rdx + r9 - 3]
xor ax, word [rbp + rdx*2 + 0x36c]
mov word [r14 + rdx*2 - 4], ax
movzx eax, byte [rdx + r9 - 2]
xor ax, word [rbp + rdx*2 + 0x36e]
mov word [r14 + rdx*2 - 2], ax
cmp rdx, 0x18
jl 0x1400533f0
imul r8d, r8d
mov eax, 0xb21642c9
mov byte [0x1401c699e], 1
imul r8d
add edx, r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x17
sub r8d, edx
cmp r8d, 0xa
jne 0x1400535df
mov qword [rsp + 0x4c8], rsi
mov qword [rsp + 0x4d0], rdi
mov rdi, rbx
lea esi, [r8 + 0x7e]
call fcn.1400cebc4
inc rdi
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [rsp + rdi*8 + 0x28], xmm0
cmp rdi, rsi
jb 0x1400534c0
mov rdi, qword [rsp + 0x4d0]
mov r9d, 0x87
nop dword [rax]
mov edx, 0x87
cmp rbx, rdx
jge 0x1400535c8
cmp r9, 4
jl 0x14005359d
mov r8d, 0x83
lea rcx, [rbp + 0x358]
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 0x14005354a
movsd qword [rcx + 0x10], xmm1
movsd qword [rcx + 8], xmm0
movsd xmm0, qword [rcx + 8]
movsd xmm1, qword [rcx]
comisd xmm0, xmm1
jbe 0x140053562
movsd qword [rcx + 8], xmm1
movsd qword [rcx], xmm0
movsd xmm0, qword [rcx]
movsd xmm1, qword [rcx - 8]
comisd xmm0, xmm1
jbe 0x14005357a
movsd qword [rcx], xmm1
movsd qword [rcx - 8], xmm0
movsd xmm0, qword [rcx - 8]
movsd xmm1, qword [rcx - 0x10]
comisd xmm0, xmm1
jbe 0x140053594
movsd qword [rcx - 8], xmm1
movsd qword [rcx - 0x10], xmm0
sub rcx, 0x20
dec r8
jne 0x140053530
cmp rdx, rbx
jle 0x1400535c8
movsd xmm0, qword [rsp + rdx*8 + 0x30]
movsd xmm1, qword [rsp + rdx*8 + 0x28]
comisd xmm0, xmm1
jbe 0x1400535c0
movsd qword [rsp + rdx*8 + 0x30], xmm1
movsd qword [rsp + rdx*8 + 0x28], xmm0
dec rdx
cmp rdx, rbx
jg 0x1400535a2
inc rbx
dec r9
dec rsi
jne 0x1400534f0
mov rsi, qword [rsp + 0x4c8]
mov rbx, qword [rsp + 0x4c0]
mov rax, r14
mov rcx, qword [rbp + 0x3a8]
xor rcx, rsp
call fcn.1400ce2d0
mov r14, qword [rsp + 0x4d8]
add rsp, 0x4b0
pop rbp
ret