Function at 0x1400a6720
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x78
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], rcx
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x50], rax
add rax, 0x60
mov qword [rsp + 0x48], rax
mov qword [rcx], 0
mov qword [rcx + 8], 0
mov ecx, 8
call fcn.140094410
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x58], rax
mov al, 1
cmp byte [rcx + 0x60], 0
mov byte [rsp + 0x67], al
jne 0x1400a68a4
mov eax, dword [0x1402ac5d8]
xor eax, 0xf1739a8e
sub eax, dword [0x1402ac5dc]
and eax, 0xb5a2be5f
mov ecx, eax
xor ecx, 0x1be3e3ce
xor ecx, 0xffffffff
or eax, 0x1be3e3ce
and eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x2dc9a7cd
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x2dc9a7cd
or eax, 0x2dc9a7cd
imul eax, edx
add eax, ecx
cmp eax, 0x61a5a1b5
jae 0x1400a699a
mov eax, dword [0x1402ac5e0]
add eax, dword [0x1402ac5e4]
imul eax, eax, 0xc59c6913
mov ecx, 0xd116725d
xor ecx, 0xa14ade87
and eax, ecx
or eax, 0xdfda1700
mov dword [rsp + 0x28], eax
mov eax, 0xd7f5f5a6
xor eax, 0x5a6b2a2c
mov dword [rsp + 0x24], eax
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x30]
call fcn.1400a6665
mov rdx, qword [rsp + 0x48]
mov ecx, dword [rsp + 0x24]
mov eax, dword [rsp + 0x28]
cmp byte [rdx], 0
sete dl
mov byte [rsp + 0x2f], dl
cmp eax, ecx
je 0x1400a67e9
mov cl, byte [rsp + 0x2f]
mov al, 1
test cl, 1
mov byte [rsp + 0x67], al
jne 0x1400a6873
jmp 0x1400a68a4
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x58]
mov rdx, qword [rax + 0x58]
mov qword [rsp + 0x68], rdx
mov rax, qword [rax + 0x60]
mov qword [rsp + 0x70], rax
lea rdx, [rsp + 0x68]
call fcn.140030ffb
mov rax, qword [rsp + 0x48]
mov al, byte [rax]
mov byte [rsp + 0x67], al
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x58]
mov dl, byte [rsp + 0x67]
mov byte [rsp + 0x23], dl
mov byte [rax], 0
call fcn.140093eeb
mov rax, qword [rsp + 0x48]
cmp byte [rax], 0
jne 0x1400a68d7
mov rax, qword [rsp + 0x48]
mov cl, byte [rsp + 0x23]
mov byte [rax], cl
mov eax, dword [0x1402ac5e8]
xor eax, 0xb0cdff59
xor edx, edx
div dword [0x1402ac5ec]
add eax, 0xc383d750
mov edx, eax
xor edx, 0xffffffff
and edx, 0xca2b12fe
mov r8d, 0x19f5483e
xor r8d, 0xd3de5ac0
mov ecx, 0x357cc129
xor ecx, 0xca833ed6
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xca2b12fe
or eax, 0xca2b12fe
imul eax, edx
add eax, ecx
sub eax, 0x5e2f57ec
sub eax, 0x78d44f42
add eax, 0x5e2f57ec
cmp eax, 0x6cfc5153
jbe 0x1400a69a3
add byte [rbx + 0x205ca105], cl
add byte [rbx + 0x205c9f15], cl
add byte [rcx - 0x3e2ede3f], cl
loope 0x1400a695d
mov eax, dword [0x1402ac5f0]
mov edx, dword [0x1402ac5f4]
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
add eax, 0xc849cf0a
sub eax, 0xf2b61959
shr byte [rcx], 1
enter 0xa05, 0xffffffffffffffcf
enter 0x592d, 0x19
mov dh, 0xf2
sub eax, 0xc849cf0a
mov ecx, 0x8a8946f1
xor edx, edx
div ecx
and eax, 0x9ad59c51
mov ecx, 0x93f9e902
xor ecx, 0x730e88c2
cmp eax, ecx
ja 0x1400a6949
mov rax, qword [rsp + 0x38]
add rsp, 0x78
ret
rol byte [rdx + 0x46e9e77a], cl
invalid
jbe 0x1400a6948
insd dword [rdi], dx
movabs al, byte [0x401f0fffffff9de9]
add byte [rbp + 0x48], dl
push rbp
sub rsp, 0x40