Function at 0x1401c1a50
Capabilities:
Encode data using xor

Disassembly:
push rsi
sub rsp, 0x70
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], rcx
mov rax, qword [rdx]
mov qword [rsp + 0x68], rax
cmp rax, 0
jle 0x1401c1d73
mov r9, qword [rsp + 0x68]
mov rax, r9
add rax, 1
mov qword [rsp + 0x50], rax
mov rdx, r9
xor rdx, 0xffffffffffffffff
movabs rcx, 0xec81bcc1caf852cc
movabs r8, 0x6c82796306924a51
xor rcx, r8
and rcx, rdx
mov r10, 0xffffffffffffffff
movabs rdx, 0x8003c5a2cc6a189d
xor r10, rdx
and r9, r10
mov rdx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
movabs r8, 0x8003c5a2cc6a189d
and rdx, r8
movabs r8, 0x878a65461afafc8e
movabs r11, 0x78759ab9e5050371
xor r8, r11
and r8, r10
or rcx, r9
or rdx, r8
xor rcx, rdx
and rax, rcx
movabs rcx, 0x84643289217b052a
movabs rdx, 0x84643289217b052a
xor rcx, rdx
cmp rax, rcx
jge 0x1401c1b22
call fcn.1400091c0
jmp 0x1401c1d73
mov rax, qword [rsp + 0x50]
movabs rcx, 0x59b79a3a34fadf74
movabs rdx, 0x59b79a3a34fadf74
xor rcx, rdx
cmp rax, rcx
jge 0x1401c1c37
mov eax, dword [0x1401fddb8]
xor eax, 0x5a42585d
mov ecx, dword [0x1401fddbc]
mov edx, 0x7a827176
xor edx, 0xe2bd9b58
xor ecx, edx
xor edx, edx
div ecx
sub eax, 0xc636f635
add eax, 0xeb3745b5
sub eax, 0xc1489a92
sub eax, 0xeb3745b5
mov edx, eax
xor edx, 0xffffffff
and edx, 0xd912c4c2
mov r8d, 0xffffffff
xor r8d, 0xd912c4c2
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xd912c4c2
or eax, 0xd912c4c2
imul eax, edx
add eax, ecx
cmp eax, 0x87959b82
jbe 0x1401c1d79
mov rcx, qword [rsp + 0x50]
mov eax, dword [0x1401fddc0]
or eax, dword [0x1401fddc4]
and eax, 0xe2305103
mov edx, 0x8d0b5bc2
xor edx, 0xbc81b3c3
or eax, edx
mov edx, eax
and edx, 0x69c8712
mov r8d, 0xb183722e
xor r8d, 0x4e7c8dd1
xor edx, r8d
add eax, 0x69c8712
mov r8d, 0x65beb7e3
xor r8d, 0x65beb7e2
add eax, r8d
add eax, edx
mov dword [rsp + 0x4c], eax
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000f6ec
mov eax, dword [rsp + 0x4c]
cmp eax, 0x65edf889
je 0x1401c1bba
jmp 0x1401c1d73
mov rax, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rdx + 8]
add rcx, 8
add rcx, qword [rdx]
mov qword [rsp + 0x30], rcx
mov rax, qword [rax + 8]
add rax, 8
mov qword [rsp + 0x38], rax
xor eax, eax
mov qword [rsp + 0x40], rax
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x28], rax
cmp rax, rcx
je 0x1401c1ca0
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
mov dl, byte [rdx + rax]
mov byte [rcx + rax], dl
add rax, 1
mov qword [rsp + 0x40], rax
jmp 0x1401c1c65
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x60]
mov r9, qword [rcx]
mov rcx, qword [rax]
mov rdx, rcx
and rdx, r9
mov rax, rcx
or rax, r9
add rdx, rax
mov qword [rsp + 0x20], rdx
movabs r8, 0xf2ca174f65f96bfd
movabs rax, 0xd35e8b09a069402
xor r8, rax
mov rax, rdx
xor rax, r8
movabs r8, 0xd80d0320733f591a
and rax, r8
mov r11, 0xffffffffffffffff
movabs r8, 0xd80d0320733f591a
xor r11, r8
mov r10, rdx
and r10, r11
movabs rsi, 0x7bc254b42a39fe23
movabs r8, 0x843dab4bd5c601dc
xor rsi, r8
mov r8, r9
xor r8, rsi
movabs rsi, 0xd80d0320733f591a
and r8, rsi
and r9, r11
or rax, r10
or r8, r9
xor rax, r8
xor rdx, rcx
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
or rax, rdx
add rax, rcx
cmp rax, 0
jge 0x1401c1d66
call fcn.1400091c0
jmp 0x1401c1d73
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x20]
mov qword [rax], rcx
add rsp, 0x70
pop rsi
ret
pop rsi
invalid