Function at 0x14001d290
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0x90
mov rax, qword [0x1401973d0]
xor rax, rsp
mov qword [rbp + 0x4f], rax
mov rdi, rcx
mov qword [rbp + 0x2f], rcx
xor esi, esi
mov qword [rbp + 0x47], rsi
mov rcx, qword [rcx]
sub rcx, 0x18
call fcn.14000c810
add rax, 0x18
mov qword [rbp + 0x27], rax
lea rdx, [rbp + 0x27]
lea rcx, [rbp + 0x47]
call fcn.14001cfb0
nop
mov rcx, qword [rbp + 0x47]
add rcx, 0xffffffffffffffe8
call fcn.14000c810
add rax, 0x18
mov qword [rbp + 0x1f], rax
lea rcx, [rbp + 0x1f]
call fcn.140006800
lea rbx, [rsi - 1]
test al, al
jne 0x14001d4b5
lea rax, [rbp + 0x17]
mov qword [rbp + 0x37], rax
lea rax, [rbp + 0xf]
mov qword [rbp + 0x3f], rax
mov eax, 2
mov dword [rbp - 0x19], eax
mov dword [rbp - 0x15], 0x8bd69521
mov dword [rbp - 0x11], 0x3a
mov edx, esi
test eax, eax
je 0x14001d359
nop
mov eax, edx
lea rcx, [rbp - 0x15]
lea rcx, [rcx + rax*2]
lea eax, [rdx + 0x38]
xor word [rcx], ax
inc edx
mov eax, dword [rbp - 0x19]
cmp edx, eax
jb 0x14001d340
mov word [rbp + rax*2 - 0x15], si
call fcn.14000fb60
mov rcx, rax
test rax, rax
je 0x14001d51d
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0x17], rax
lea rax, [rbp - 0x15]
cmp rax, 0x10000
lea rax, [rbp - 0x15]
jae 0x14001d39b
movzx edx, ax
lea rcx, [rbp + 0x17]
call fcn.14000c690
jmp 0x14001d3b9
mov r8, rbx
nop
inc r8
cmp word [rax + r8*2], 0
jne 0x14001d3a0
lea rdx, [rbp - 0x15]
lea rcx, [rbp + 0x17]
call fcn.14000c910
nop
mov dword [rbp - 9], 7
mov dword [rbp - 5], 0x580050
mov dword [rbp - 1], 0x530049
mov dword [rbp + 3], 0x8bd29525
mov dword [rbp + 7], 0x3fff3f
mov edx, esi
nop
mov eax, edx
lea rcx, [rbp - 5]
lea rcx, [rcx + rax*2]
lea eax, [rdx + 0x38]
xor word [rcx], ax
inc edx
mov eax, dword [rbp - 9]
cmp edx, eax
jb 0x14001d3e0
mov word [rbp + rax*2 - 5], si
call fcn.14000fb60
mov rcx, rax
test rax, rax
je 0x14001d512
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0xf], rax
lea rax, [rbp - 5]
cmp rax, 0x10000
lea rax, [rbp - 5]
jae 0x14001d43b
movzx edx, ax
lea rcx, [rbp + 0xf]
call fcn.14000c690
jmp 0x14001d459
mov r8, rbx
nop
inc r8
cmp word [rax + r8*2], 0
jne 0x14001d440
lea rdx, [rbp - 5]
lea rcx, [rbp + 0xf]
call fcn.14000c910
nop
cmp dword [0x1401a2bb8], 0
jne 0x14001d47a
xor r9d, r9d
mov r8, qword [rbp + 0x17]
mov rdx, qword [rbp + 0xf]
mov rcx, qword [0x1401a2bb0]
call qword [sym.imp.USER32.dll_MessageBoxW]
mov rdx, qword [rbp + 0xf]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001d497
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rdx, qword [rbp + 0x17]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001d4b5
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rbp + 0x47]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001d4d3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rdi]
sub rdx, 0x18
lock xadd dword [rdx + 0x10], ebx
sub ebx, 1
jg 0x14001d4ed
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rcx, qword [rbp + 0x4f]
xor rcx, rsp
call fcn.14011e030
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
mov ecx, 0x80004005
call fcn.14000fc90
nop
mov ecx, 0x80004005
call fcn.14000fc90
int3