Function at 0x140055db0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
push rbp
mov rbp, rsp
sub rsp, 0x80
mov rax, qword [0x1401bce90]
xor rax, rsp
mov qword [rbp - 8], rax
mov ecx, dword [0x1401c4d60]
xor ebx, ebx
lea eax, [rcx + 1]
lea r8d, [rcx + 2]
imul r8d, eax
mov eax, 0x66666667
imul r8d, ecx
imul r8d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
shl eax, 2
sub r8d, eax
cmp r8d, 9
jne 0x140055e26
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 ecx, dword [0x1401c4d60]
lea r8d, [rcx + 1]
mov eax, 0x38e38e39
imul r8d, ecx
imul r8d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*8]
add eax, eax
sub r8d, eax
cmp r8d, 0xf
jne 0x140055e71
mov r8d, ebx
test ecx, ecx
je 0x140055e68
mov eax, ecx
and eax, 1
add r8d, eax
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
mov ecx, eax
jne 0x140055e55
mov ecx, r8d
mov dword [0x1401c4d60], ecx
cmp byte [0x1401c698e], bl
je 0x140055e85
lea rax, [0x1401c02f8]
jmp 0x140056045
mov r8d, ecx
mov eax, 0x2aaaaaab
imul r8d, ecx
imul r8d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 3
sub r8d, eax
cmp r8d, 0x11
jne 0x140055eda
mov qword [rsp + 0x30], rbx
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
call qword [sym.imp.KERNEL32.dll_CreateFileW]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
mov ecx, dword [0x1401c4d60]
mov r8d, ecx
mov eax, 0x66666667
mov dword [rbp - 0x40], 0x1e001c
mov dword [rbp - 0x3c], 0x3c0000
mov dword [rbp - 0x38], 0xb0018
mov dword [rbp - 0x34], 0x1d0002
imul r8d, ecx
imul r8d, ecx
imul r8d
sar edx, 3
mov dword [rbp - 0x30], 0xc001c
mov dword [rbp - 0x2c], 0x100010
mov eax, edx
mov dword [rbp - 0x28], 0x140007
mov dword [rbp - 0x24], 0x3002d
shr eax, 0x1f
mov dword [rbp - 0x20], 0xa0007
mov dword [rbp - 0x1c], 0xf000b
add edx, eax
mov dword [rbp - 0x18], 0x30030
mov dword [rbp - 0x14], 0x5000b
lea eax, [rdx + rdx*4]
mov dword [rbp - 0x10], 4
shl eax, 2
sub r8d, eax
cmp r8d, 0xa
jne 0x140055f7b
lea edx, [r8 + 0x38]
lea rcx, str._d__d_n
lea r8d, [rdx + 1]
call fcn.1400cf1dc
mov ecx, dword [0x1401c4d60]
lea r9, [0x1401c02f8]
lea r8, [0x1401bfd91]
nop dword [rax]
movzx eax, byte [rbx + r8 - 1]
movzx edx, word [rbp + rbx*2 - 0x3e]
add rbx, 5
xor ax, word [rbp + rbx*2 - 0x4a]
mov word [r9 + rbx*2 - 0xa], ax
movzx eax, byte [rbx + r8 - 5]
xor dx, ax
movzx eax, byte [rbx + r8 - 4]
xor ax, word [rbp + rbx*2 - 0x46]
mov word [r9 + rbx*2 - 8], dx
movzx edx, byte [rbx + r8 - 2]
xor dx, word [rbp + rbx*2 - 0x42]
mov word [r9 + rbx*2 - 6], ax
movzx eax, byte [rbx + r8 - 3]
xor ax, word [rbp + rbx*2 - 0x44]
mov word [r9 + rbx*2 - 2], dx
mov word [r9 + rbx*2 - 4], ax
cmp rbx, 0x19
jl 0x140055f90
lea r8d, [rcx + 1]
mov eax, 0x66666667
mov byte [0x1401c698e], 1
imul r8d, ecx
imul r8d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
shl eax, 2
sub r8d, eax
cmp r8d, 9
jne 0x140056042
mov ecx, 1
mov r8d, 0xe4
mov eax, ecx
nop
dec r8d
lea edx, [rax + rcx]
lea ecx, [rax]
mov eax, edx
jns 0x140056030
mov dword [0x1401c4d60], edx
mov rax, r9
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.1400ce2d0
mov rbx, qword [rsp + 0x90]
add rsp, 0x80
pop rbp
ret