Function at 0x1401b8d90
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
push rbx
push rdi
push r14
push r15
mov eax, 0xa8
call fcn.1402807a0
sub rsp, rax
mov r15d, ecx
xor r14d, r14d
lea r8, [rsp + 0x88]
lea rdx, [rsp + 0x80]
xor ecx, ecx
mov edi, r14d
mov ebx, r14d
call fcn.1401a4a30
test eax, eax
je 0x1401b9081
nop dword [rax]
mov eax, dword [rsp + 0x80]
shl eax, 0xa
test r15d, eax
je 0x1401b8df1
inc edi
inc ebx
lea r8, [rsp + 0x88]
lea rdx, [rsp + 0x80]
mov ecx, ebx
call fcn.1401a4a30
test eax, eax
jne 0x1401b8de0
test edi, edi
je 0x1401b9081
mov ecx, dword [rsp + 0x130]
movsxd rbx, dword [rsp + 0x148]
mov qword [rsp + 0xd0], rbp
mov rbp, qword [rsp + 0x128]
mov eax, ecx
mov qword [rsp + 0xa0], rsi
mov rsi, qword [rsp + 0x138]
cdq
mov qword [rsp + 0x98], r12
idiv edi
cmp edi, 1
mov r8, rbx
cmove ecx, r14d
xor edx, edx
mov qword [rsp + 0x90], r13
mov dword [rsp + 0x130], ecx
mov rcx, rsi
movsxd r13, eax
call fcn.140283160
lea r8, [rsp + 0x88]
lea rdx, [rsp + 0x80]
xor ecx, ecx
call fcn.1401a4a30
test eax, eax
je 0x1401b9024
mov rdi, qword [rsp + 0x140]
nop
mov eax, dword [rsp + 0x80]
shl eax, 0xa
test r15d, eax
je 0x1401b9001
mov rcx, qword [rsp + 0x88]
test rcx, rcx
je 0x1401b9057
mov eax, dword [rsp + 0x120]
mov r8d, dword [rsp + 0x130]
mov r9, qword [rsp + 0xd8]
mov dword [rsp + 0x70], ebx
mov qword [rsp + 0x68], rdi
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x118]
and r8d, 1
mov rdx, rbp
mov qword [rsp + 0x58], rax
mov eax, dword [rsp + 0x110]
add r8d, r13d
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x48], rax
mov eax, dword [rsp + 0x100]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x38], rax
mov eax, dword [rsp + 0xf0]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0x20], eax
call fcn.1401b90c0
test eax, eax
je 0x1401b9079
xor eax, eax
add rbp, r13
mov r9d, eax
test ebx, ebx
jle 0x1401b8fdb
cmp ebx, 0x20
jb 0x1401b8fdb
mov edx, eax
lea eax, [rbx - 1]
movsxd rcx, eax
lea rax, [rcx + rdi]
lea r8, [rcx + rsi]
cmp rsi, rax
ja 0x1401b8f8a
cmp r8, rdi
jae 0x1401b8fdb
mov eax, ebx
and eax, 0x8000001f
jge 0x1401b8f9a
dec eax
or eax, 0xffffffe0
inc eax
mov r8d, ebx
sub r8d, eax
movsxd rax, edx
add r9, 0x20
movdqu xmm0, xmmword [rax + rsi]
movdqu xmm1, xmmword [rax + rdi]
pxor xmm1, xmm0
movdqu xmmword [rax + rsi], xmm1
lea eax, [rdx + 0x10]
add edx, 0x20
movsxd rcx, eax
movdqu xmm1, xmmword [rcx + rdi]
movdqu xmm0, xmmword [rcx + rsi]
pxor xmm1, xmm0
movdqu xmmword [rcx + rsi], xmm1
cmp edx, r8d
jl 0x1401b8fa0
cmp r9, rbx
jge 0x1401b9001
mov r8, rdi
mov rdx, rbx
lea rax, [r9 + rsi]
sub r8, rsi
sub rdx, r9
movzx ecx, byte [r8 + rax]
lea rax, [rax + 1]
xor byte [rax - 1], cl
dec rdx
jne 0x1401b8ff0
inc r14d
lea r8, [rsp + 0x88]
lea rdx, [rsp + 0x80]
mov ecx, r14d
call fcn.1401a4a30
test eax, eax
jne 0x1401b8ea0
mov eax, 1
mov r12, qword [rsp + 0x98]
mov rsi, qword [rsp + 0xa0]
mov rbp, qword [rsp + 0xd0]
mov r13, qword [rsp + 0x90]
add rsp, 0xa8
pop r15
pop r14
pop rdi
pop rbx
ret
mov edx, 0x11c
lea r9, [0x140380398]
mov ecx, shutdown
lea r8d, [rdx + 0x2a]
mov dword [rsp + 0x20], 0x114
call fcn.1401c3730
xor r14d, r14d
mov eax, r14d
jmp 0x1401b9029
mov ecx, shutdown
lea r9, [0x140380388]
mov edx, 0x11c
lea r8d, [rcx + 0x30]
mov dword [rsp + 0x20], 0x109
call fcn.1401c3730
mov eax, r14d
add rsp, 0xa8
pop r15
pop r14
pop rdi
pop rbx
ret