Function at 0x1401b3290
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xb8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x30], 0xfffffffffffffffe
cmp qword [rcx + 0x18], 0
je 0x1401b34f6
mov rbx, r8
mov rsi, rcx
mov dword [rbp + 0x2c], edx
lea r15, [0x1404388f8]
movabs r12, 0xe1e732000bd72c01
movabs r13, 0x61e732000bd72c01
mov edi, 0x284d8aa9
lea r14, [0x1401b8cd0]
nop
mov qword [rbp - 0x18], 0
mov qword [rbp - 0x10], 0xf
mov byte [rbp - 0x28], 0
mov qword [rbp - 0x30], r15
mov qword [rbp + 0x20], 0
mov qword [rbp + 0x18], 0xf
mov rax, qword [0x140520b10]
mov rcx, rax
xor rcx, r12
and rax, r13
lea rax, [rcx + rax*2]
mov qword [rbp + 0x10], rax
mov byte [rbp], 0
mov qword [rbp - 8], r15
mov r8, qword [rsi + 0x18]
mov ecx, dword [0x140575e38]
mov r9d, dword [0x140520b08]
mov eax, ecx
sub eax, r9d
add eax, 0xd7b27583
imul eax, ecx
lea ecx, [r9 + 0x284d8a7e]
xor edx, edx
div ecx
mov eax, r9d
xor eax, 0x71c81da5
and r9d, 0x71c81da5
lea eax, [rax + r9*2]
add eax, 0xb6856cd7
cmp edx, eax
je 0x1401b33dc
mov rax, qword [0x140520b10]
add rax, r12
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x10], 0xf
mov byte [rbp - 0x28], 0
mov qword [rbp - 0x30], r15
mov qword [rbp + 0x20], 0
mov ecx, dword [0x140520b08]
add ecx, edi
call fcn.1403d5a14
mov qword [0x140575e18], rax
mov rcx, r14
call fcn.1403f5a50
mov qword [rbp + 0x18], 0xf
mov qword [rbp + 0x10], 0
mov byte [rbp], 0
mov qword [rbp - 8], r15
jmp 0x1401b32f0
mov qword [rsp + 0x40], rbx
lea rax, [rbp + 0x20]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x30], rax
mov eax, dword [rbp + 0x2c]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], 0
lea r9, [rbp - 8]
mov rcx, rsi
mov rdx, r8
xor r8d, r8d
call fcn.1401e5160
mov esi, eax
mov eax, dword [0x140520b08]
mov ecx, eax
xor ecx, 0x284d8a7d
and eax, 0x284d8a7d
lea eax, [rcx + rax*2]
lea rcx, [fcn.1401b3290]
add ecx, ecx
add ecx, 0x2100
mov edx, ecx
not edx
mov r8d, ecx
xor r8d, edx
and r8d, eax
xor r8d, edx
mov eax, r8d
not eax
xor r8d, ecx
and eax, edx
or eax, r8d
cmp eax, 0xffffffff
nop dword [rax + rax]
mov rax, qword [rbp + 0x18]
mov ecx, dword [0x140575e3c]
mov edx, dword [0x140520b08]
mov r8d, edx
xor r8d, 0x284d8aa9
and edx, 0x284d8aa9
lea edx, [r8 + rdx*2]
cmp ecx, edx
jge 0x1401b3460
cmp rax, 0x10
jb 0x1401b35c2
mov rdi, qword [rbp]
mov rcx, qword [0x140520b10]
add rcx, rax
movabs rbx, 0xe1e732000bd72c02
add rbx, rcx
cmp rbx, 0x1000
jb 0x1401b34d1
mov rcx, qword [rdi - 8]
sub rdi, rcx
add rdi, 0xfffffffffffffff8
cmp rdi, 0x20
jae 0x1401b34fd
add rax, 0x28
mov rbx, rax
mov rdi, rcx
mov ecx, dword [0x140575e38]
lea eax, [rcx - 1]
imul eax, ecx
mov r14d, 0x284d8a7e
mov ecx, dword [0x140520b08]
add ecx, r14d
xor edx, edx
div ecx
test edx, edx
jne 0x1401b3554
jmp 0x1401b3502
xor esi, esi
jmp 0x1401b3657
call fcn.1403d599c
mov eax, 0x571
add eax, dword [0x140520b20]
cdqe
add rax, qword [0x140520b38]
mov dword [rsp + 0x28], 0xd24ee343
mov dword [rsp + 0x20], 0x90665a0b
xor ecx, ecx
mov rdx, rdi
mov r8, rbx
xor r9d, r9d
call qword [case.0x14013cbc3.0]
mov ecx, dword [0x140575e38]
lea eax, [rcx - 1]
imul eax, ecx
mov ecx, dword [0x140520b08]
add ecx, r14d
xor edx, edx
div ecx
test edx, edx
je 0x1401b35c2
mov eax, dword [0x140520b20]
mov edx, dword [0x140520b08]
add eax, edx
add eax, 0x284d8fed
cdqe
add rax, qword [0x140520b38]
mov ecx, edx
xor ecx, 0x284d8a7c
mov r8d, edx
and r8d, 0x284d8a7c
lea ecx, [rcx + r8*2]
lea r9d, [rdx + 0x284d8a7c]
lea r8d, [rdx - 0x474c1b79]
mov r10d, edx
xor r10d, 0xfa9c6dbf
and edx, 0x7a9c6dbf
lea edx, [r10 + rdx*2]
mov dword [rsp + 0x28], edx
mov dword [rsp + 0x20], r8d
mov rdx, rdi
mov r8, rbx
call qword [case.0x14013cbc3.0]
jmp 0x1401b3502
mov rax, qword [rbp - 0x10]
movabs rcx, 0xe1e732000bd72c10
add rcx, qword [0x140520b10]
cmp rax, rcx
jbe 0x1401b3657
mov rdx, qword [rbp - 0x28]
lea r8, [rax + 1]
cmp r8, 0x1000
jb 0x1401b3628
mov rcx, qword [rdx - 8]
sub rdx, rcx
add rdx, 0xfffffffffffffff8
cmp rdx, 0x20
jae 0x1401b366d
movabs rdx, 0xe1e732000bd72c29
add rdx, qword [0x140520b10]
mov r8, rdx
xor r8, rdx
not r8
and r8, rax
xor r8, rdx
and rdx, rax
lea r8, [r8 + rdx*2]
mov rdx, rcx
mov eax, 0x571
add eax, dword [0x140520b20]
cdqe
add rax, qword [0x140520b38]
mov dword [rsp + 0x28], 0xd24ee343
mov dword [rsp + 0x20], 0x90665a0b
xor ecx, ecx
xor r9d, r9d
call qword [case.0x14013cbc3.0]
mov eax, esi
add rsp, 0xb8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.1403d599c
int3