Function at 0x14001aa20
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x88
mov rax, r8
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x70], rcx
xor ecx, ecx
test rax, rax
mov r8d, ecx
cmovg r8, rax
mov qword [rsp + 0x78], r8
mov rax, qword [rdx]
xor ecx, ecx
mov edx, ecx
sub rdx, 0xffffffffffffffff
mov rcx, rax
sub rcx, rdx
cmp rax, r9
cmovg rcx, r9
mov rdx, rcx
xor rdx, r8
movabs rax, 0xf1591580e9de0bf7
movabs r9, 0xea6ea7f1621f408
xor rax, r9
xor r8, rax
mov rax, rcx
and rax, r8
shl rax, 1
sub rax, rdx
mov qword [rsp + 0x80], rax
mov r8, rax
xor r8, rcx
xor r8, 0xffffffffffffffff
mov rdx, rcx
and rdx, r8
shl rdx, 1
sub rdx, rcx
mov rcx, rax
sub rcx, rdx
movabs rdx, 0x6056b455717b5cce
movabs r8, 0x6056b455717b5cce
xor rdx, r8
cmp rcx, rdx
setl dl
movabs rcx, 0x87805da825ad83a4
movabs r8, 0x787fa257da527c5b
xor rcx, r8
cmp rax, rcx
setg cl
xor dl, 0xff
mov al, cl
xor al, dl
and al, cl
test al, 1
jne 0x14001ab04
jmp 0x14001ab0e
call fcn.1400077a3
jmp 0x14001ad2b
mov rcx, qword [rsp + 0x80]
mov rax, rcx
add rax, 1
mov qword [rsp + 0x58], rax
movabs rdx, 0xbbd38061c641997b
movabs r8, 0x442c7f9e39be6684
xor rdx, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x14001ab53
call fcn.1400077a3
jmp 0x14001ad2b
mov rcx, qword [rsp + 0x68]
mov rax, qword [rsp + 0x58]
xor edx, edx
test rax, rax
cmovg rdx, rax
mov qword [rsp + 0x38], rdx
call fcn.140019790
mov rcx, qword [rsp + 0x60]
mov rax, qword [rsp + 0x68]
add rcx, 8
mov qword [rsp + 0x40], rcx
add rax, 8
mov qword [rsp + 0x48], rax
xor eax, eax
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x38]
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x30], rax
cmp rax, rcx
je 0x14001ad2b
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x68]
cmp rax, qword [rcx]
jl 0x14001abcb
mov rcx, rdx
call fcn.140013580
jmp 0x14001ad2b
mov rcx, qword [rsp + 0x68]
call fcn.14001adc7
mov rax, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x60]
add rax, rdx
mov qword [rsp + 0x28], rax
cmp rax, qword [rcx]
jl 0x14001ace4
mov ecx, dword [str.z75]
mov edx, dword [0x1401d5dbc]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
mov ecx, 0x2b521897
xor ecx, 0x98b10273
xor eax, ecx
or eax, 0x6f86d179
or eax, 0xbe88b182
cmp eax, 0x726ba1e7
jbe 0x14001adb5
mov eax, dword [0x1401d5dc0]
mov edx, dword [0x1401d5dc4]
mov ecx, 0xe9ed287b
xor ecx, 0xea546383
xor edx, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, edx
add eax, ecx
mov ecx, 0xad58d97f
xor edx, edx
div ecx
mov ecx, eax
add ecx, 0xd6230e6c
mov eax, 0x256793e8
xor eax, 0xb7c063b6
sub ecx, eax
mov eax, 0x6c90181
xor eax, 0xd0ea0fed
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xa896b979
xor ecx, 0x49b5c593
mov edx, 0xcf087f8f
xor edx, 0x30f78070
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xe1237cea
and ecx, edx
mov edx, 0x2cbe2fc5
xor edx, 0xd341d03a
xor eax, edx
mov edx, 0xdc113a6c
xor edx, 0x23eec593
xor ecx, edx
and eax, ecx
mov dword [rsp + 0x24], eax
mov rcx, rdx
call fcn.140013580
mov eax, dword [rsp + 0x24]
cmp eax, 0xc88c14f7
ja 0x14001ac2b
jmp 0x14001ad2b
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x40]
mov rdx, qword [rdx]
mov dl, byte [rdx + r8 + 8]
mov rcx, qword [rcx]
mov byte [rcx + rax + 8], dl
movabs rcx, 0x7f1d4e60ffa67a96
movabs rdx, 0x7f1d4e60ffa67a97
xor rcx, rdx
add rax, rcx
mov qword [rsp + 0x50], rax
jmp 0x14001ab93
mov ecx, dword [0x1401d5dc8]
mov edx, dword [0x1401d5dcc]
xor edx, 0xffffffff
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x3e3092aa
xor ecx, 0x9c688d43
imul eax, ecx
add eax, 0x423d43b9
mov ecx, 0x6af2dd81
xor ecx, 0xf92325e4
sub eax, ecx
sub eax, 0x423d43b9
add eax, 0xce0bde5
cmp eax, 0x6135e461
je 0x14001adbe
mov eax, dword [0x1401d5dd0]
or eax, dword [0x1401d5dd4]
mov ecx, 0x12f41311
xor edx, edx
div ecx
imul eax, eax, 0x57d99183
sub eax, 0x870dd0a
mov ecx, 0xfd6db33e
xor ecx, 0xa427f9b1
cmp eax, ecx
jbe 0x14001ad75
mov rax, qword [rsp + 0x70]
add rsp, 0x88
ret
fst dword [rdx + 0x6de96fae]
invalid
invalid