Function at 0x14001b4c0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x78
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], rcx
mov rax, qword [rcx]
mov qword [rsp + 0x70], rax
cmp rax, rdx
jle 0x14001b4f3
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x68]
call fcn.14001b160
jmp 0x14001b90e
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
cmp rax, rcx
jge 0x14001b90e
mov rax, qword [rsp + 0x68]
mov rcx, rax
add rcx, 8
mov qword [rsp + 0x50], rcx
mov rax, qword [rax + 8]
mov qword [rsp + 0x58], rax
cmp rax, 0
je 0x14001b646
mov eax, dword [0x1401f3e08]
mov r8d, dword [0x1401f3e0c]
mov ecx, 0xe54a9c4f
xor ecx, 0x6b99e09d
xor r8d, ecx
mov edx, 0x878aa36c
xor edx, 0x78755c93
mov ecx, eax
xor ecx, edx
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x17b15d67
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
or eax, 0xc7b03d2b
mov ecx, 0xd8d73815
xor ecx, 0x3f0646d5
sub eax, ecx
mov ecx, 0x27bfe183
xor ecx, 0x63c67607
sub eax, ecx
mov ecx, 0xc73c8ef3
xor ecx, 0x20edf033
add eax, ecx
cmp eax, 0x96409526
jbe 0x14001b914
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
mov eax, dword [0x1401f3e10]
mov r8d, dword [0x1401f3e14]
mov r9d, 0x77a01142
xor r9d, 0x4a9d5dad
xor r8d, r9d
add eax, r8d
xor eax, 0x6ae60eb0
add eax, 0xe2b0c514
xor eax, 0x2f49d8d6
mov rcx, qword [rcx]
movabs r9, 0xbfffffffffffffff
mov r8, rcx
xor r8, r9
xor r8, 0xffffffffffffffff
movabs r9, 0xbfffffffffffffff
or rcx, r9
and rcx, r8
cmp rcx, rdx
setl cl
mov byte [rsp + 0x4f], cl
cmp eax, 0x2fa8732d
je 0x14001b914
mov al, byte [rsp + 0x4f]
test al, 1
jne 0x14001b646
jmp 0x14001b80b
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
movabs rax, 0xf02190f4ae8f23c2
mov rdx, rcx
sub rdx, rax
sub rdx, r8
movabs rax, 0xf02190f4ae8f23c2
add rdx, rax
mov qword [rsp + 0x40], rdx
mov rax, rdx
xor rax, rcx
movabs rcx, 0x2c73a1368ef31542
movabs r9, 0x2c73a1368ef31542
xor rcx, r9
cmp rax, rcx
setl al
movabs rcx, 0x660224031192f78f
movabs r9, 0x99fddbfcee6d0870
xor rcx, r9
mov r9, rdx
xor r9, rcx
mov rcx, r8
and rcx, r9
xor r8, 0xffffffffffffffff
and rdx, r8
or rcx, rdx
cmp rcx, 0xffffffffffffffff
setg cl
and al, cl
test al, 1
jne 0x14001b801
mov ecx, dword [0x1401f3e18]
xor ecx, 0x7cc61cc2
mov edx, dword [0x1401f3e1c]
xor edx, 0xffffffff
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0xeeea141c
xor edx, edx
div ecx
mov ecx, 0x36cb070
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xdf8e1554
xor edx, 0xe877d3f5
mov r8d, 0xd4d03dc2
xor r8d, 0x2b2fc23d
xor edx, r8d
or eax, edx
xor ecx, 0xffffffff
mov edx, 0x9d12c9e5
xor edx, 0xaaeb0f44
mov r8d, 0xc6a7b128
xor r8d, 0x39584ed7
xor edx, r8d
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xfa9808f3
xor ecx, 0x51778ed2
cmp eax, ecx
je 0x14001b91d
mov r8, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x70]
mov eax, dword [0x1401f3e20]
xor eax, 0xb7231212
sub eax, dword [0x1401f3e24]
mov r9d, 0x7c8f0cf9
xor edx, edx
div r9d
mov rdx, qword [rsp + 0x58]
add eax, 0x8ecfb7dd
xor eax, 0x207588d0
mov dword [rsp + 0x3c], eax
mov eax, 0x42147129
xor eax, 0xcaf7b081
mov dword [rsp + 0x38], eax
movabs r9, 0x8c2477b2da88b593
movabs rax, 0x8c2477b2da88b59b
xor r9, rax
movabs rax, 0xb3447958e2895e6c
movabs r10, 0xb3447958e2895e64
xor rax, r10
mov qword [rsp + 0x20], rax
call fcn.140011d20
mov rdx, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x38]
mov r8, rax
mov eax, dword [rsp + 0x3c]
mov qword [rdx], r8
cmp eax, ecx
jb 0x14001b762
jmp 0x14001b80b
call fcn.140009cc0
jmp 0x14001b90e
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x60]
mov qword [rcx], rdx
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x60]
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x28], rax
cmp rax, rcx
jge 0x14001b90e
mov rdx, qword [rsp + 0x28]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
mov qword [rax + rdx*8 + 8], 0
mov rax, rdx
add rax, 1
mov rcx, rdx
and rcx, 0xffffffffffffffff
shl rcx, 1
movabs r8, 0xcaf2909df62992d8
movabs r9, 0x350d6f6209d66d27
xor r8, r9
add rdx, r8
sub rdx, rcx
mov rcx, rax
xor rcx, 0xffffffffffffffff
movabs r9, 0x4ea8ced5c4641426
movabs r8, 0xb157312a3b9bebd9
xor r9, r8
mov r8, rax
xor r8, r9
and rcx, r8
or rdx, rdx
movabs r8, 0xda6fde857f1070d3
movabs r9, 0x2590217a80ef8f2c
xor r8, r9
xor rdx, r8
movabs r8, 0x12884267bfe01dfd
movabs r9, 0xed77bd98401fe202
xor r8, r9
xor rcx, r8
xor rdx, 0xffffffffffffffff
and rcx, rdx
movabs rdx, 0x55574fab6ddbc88e
movabs r8, 0x55574fab6ddbc88e
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0x30], rax
jge 0x14001b822
call fcn.140009cc0
nop
add rsp, 0x78
ret
scasd eax, dword [rdi]
fisubr word [0x13ca5a2b8]
invalid
lodsb al, byte [rsi]
insd dword [rdi], dx
mov cl, 0xe
jmp 0x14001b762