Function at 0x1401cbfe0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xb0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x20], rcx
mov qword [rbp + 0x28], rcx
mov eax, dword [0x140222c58]
mov r8d, dword [0x140222c5c]
mov ecx, 0xe3a2618b
xor ecx, 0x1c5d9e74
mov r9d, r8d
xor r9d, ecx
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x1f6ae8e1
xor edx, edx
div ecx
mov ecx, 0xaf781692
xor ecx, 0x615b75b9
xor edx, edx
div ecx
mov edx, eax
xor edx, 0xb5ba1b2a
xor edx, 0xffffffff
and edx, 0xb5ba1b2a
mov ecx, 0x6c13694a
xor ecx, 0x6c136948
imul ecx, edx
sub ecx, 0xb5ba1b2a
sub eax, ecx
cmp eax, 0x4b7cf4aa
jb 0x1401cc7b7
mov eax, dword [0x140222c60]
mov ecx, dword [0x140222c64]
xor ecx, 0x3ce6ef5
or eax, ecx
and eax, 0x1fffffff
xor eax, 0xe12c4a4
add eax, 0xbb3fbee0
or eax, 0xe6aaf4ce
mov dword [rbp + 4], eax
mov eax, 0x10
mov qword [rbp - 0x30], rax
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp - 0x30]
mov rcx, rsp
mov qword [rbp - 0x50], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp - 0x30]
mov rcx, rsp
mov qword [rbp - 0x10], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp - 0x30]
mov rcx, rsp
mov qword [rbp - 0x48], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp - 0x30]
mov rcx, rsp
mov qword [rbp - 0x40], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp - 0x30]
mov rcx, rsp
mov qword [rbp - 0x38], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp - 0x30]
mov rcx, rsp
mov qword [rbp - 0x28], rcx
call fcn.140215890
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x20], rax
sub rsp, 0x20
call fcn.1401d22f3
mov rcx, qword [rbp - 0x10]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x20]
mov qword [rbp - 8], rdx
add rdx, 0x50
mov qword [rbp - 0x18], rdx
mov qword [rax], 0
mov qword [rax + 8], 0
mov edx, 0x20
sub rsp, 0x20
call fcn.1400aca61
mov rdx, qword [rbp - 0x10]
mov rcx, qword [rbp - 8]
mov eax, dword [rbp + 4]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rbp + 8], r8
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x10], rdx
cmp byte [rcx + 0x50], 0
sete cl
mov byte [rbp + 0x1f], cl
cmp eax, 0x12387c1f
je 0x1401cc07d
mov al, byte [rbp + 0x1f]
test al, 1
jne 0x1401cc1b6
jmp 0x1401cc5da
mov rcx, qword [rbp - 0x48]
mov rax, qword [rbp + 0x10]
mov rdx, qword [rbp + 8]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1401cc7d2
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x18]
mov qword [rbp - 0x58], rcx
cmp byte [rax], 0
jne 0x1401cc5da
mov rax, qword [rbp - 0x58]
movabs rcx, 0xe9e893b77151c535
movabs rdx, 0x16176c48f151c535
xor rcx, rdx
add rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1401cc23e
mov rcx, qword [rbp - 0x58]
mov rdx, 0xffffffff80000000
mov r8d, 0x7fffffff
sub rsp, 0x20
call fcn.14000e6db
add rsp, 0x20
jmp 0x1401cc5da
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp + 0x10]
mov rdx, qword [rbp + 8]
mov r8, qword [rbp - 0x50]
mov r9, qword [rbp - 0x58]
mov dword [r8], r9d
mov qword [rcx], rdx
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1401cc857
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x18]
mov qword [rbp - 0x60], rcx
mov al, byte [rax]
mov cl, 0xff
xor cl, 0xff
cmp al, cl
jne 0x1401cc5da
mov rdx, qword [rbp - 0x50]
mov rcx, qword [rbp - 0x60]
sub rsp, 0x20
call fcn.1400b8dac
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp - 0x18]
mov dword [rbp - 0x64], ecx
cmp byte [rax], 0
jne 0x1401cc5da
mov eax, dword [rbp - 0x64]
cmp eax, 0
jne 0x1401cc313
mov rax, qword [rbp + 0x10]
mov rcx, qword [rbp + 0x20]
mov rdx, qword [0x14022d498]
mov qword [rcx], rdx
mov rdx, qword [0x14022d4a0]
mov qword [rcx + 8], rdx
cmp rax, 0
je 0x1401cc7ad
mov rcx, qword [rbp + 0x10]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0x5380198966949464
movabs rdx, 0x5380198966949464
xor rcx, rdx
cmp rax, rcx
je 0x1401cc79c
jmp 0x1401cc7ad
mov rcx, qword [rbp - 0x38]
mov rdx, qword [rbp - 0x28]
mov rax, qword [rbp + 0x10]
mov r8, qword [rbp + 8]
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1401cc889
mov rcx, qword [rbp - 0x38]
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp - 0x78], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x70], rcx
mov al, byte [rax]
mov cl, 0x7a
xor cl, 0x7a
cmp al, cl
jne 0x1401cc54a
mov rdx, qword [rbp - 0x20]
mov rcx, qword [rbp + 0x20]
mov rax, qword [rbp - 0x70]
mov r8, qword [rbp - 0x78]
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1401cca08
mov rax, qword [rbp - 0x18]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401cc54a
mov rax, qword [rbp - 0x70]
cmp rax, 0
je 0x1401cc3c8
mov rcx, qword [rbp - 0x70]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1401cc3c8
mov rcx, qword [rbp - 0x70]
sub rsp, 0x20
call fcn.140010918
add rsp, 0x20
mov eax, dword [0x140222c68]
xor eax, 0xc6ef587f
xor edx, edx
div dword [0x140222c6c]
mov r8d, eax
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x734ed04a
mov edx, 0xffffffff
xor edx, 0x734ed04a
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0xcf16e61e
and ecx, 0x734ed04a
and edx, 0xcf16e61e
or eax, r8d
or ecx, edx
xor eax, ecx
mov edx, 0x787b5178
xor edx, 0x59393864
mov ecx, eax
and ecx, edx
mov edx, 0x4189e7
xor edx, 0x4189e5
imul ecx, edx
xor eax, 0x2142691c
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x8e0c165c
mov r8d, 0xffffffff
xor r8d, 0x8e0c165c
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x8e0c165c
or eax, 0x8e0c165c
imul eax, edx
add eax, ecx
cmp eax, 0x61dd5612
je 0x1401cc7c0
mov rcx, qword [rbp + 0x10]
mov eax, dword [0x140222c70]
and eax, dword [0x140222c74]
mov r8d, 0x5e679701
xor edx, edx
div r8d
imul eax, eax, 0x1c060e97
mov r8d, 0x8d2f458d
xor edx, edx
div r8d
cmp rcx, 0
sete cl
mov byte [rbp - 0x79], cl
cmp eax, 0x12bcafd1
ja 0x1401cc476
mov al, byte [rbp - 0x79]
test al, 1
jne 0x1401cc7ad
jmp 0x1401cc4c7
mov rax, qword [rbp + 0x10]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
movabs rcx, 0xeb25d2065e2e34d2
movabs rdx, 0xab25d2065e2e34d2
xor rcx, rdx
movabs rdx, 0xf0b68f29f01500a7
movabs r8, 0xf4970d60feaff58
xor rdx, r8
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0xfbba9aebac2c85d3
xor rdx, r8
or rax, rcx
movabs rcx, 0x9fbdf5a4f22732e
movabs r8, 0xf24145b1e30ef6fd
xor rcx, r8
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
je 0x1401cc79c
jmp 0x1401cc7ad
mov rax, qword [rbp - 0x70]
cmp rax, 0
je 0x1401cc5da
mov rax, qword [rbp - 0x70]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
xor rdx, rcx
movabs rcx, 0x55022da71b59183e
movabs r8, 0xd25e79838c6d035
xor rcx, r8
movabs r8, 0x6d257ef293ddb916
movabs r9, 0x92da810d6c2246e9
xor r8, r9
xor rcx, r8
or rax, rdx
movabs rdx, 0x5827ca3f239fc80b
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x1401cc5da
mov rcx, qword [rbp - 0x70]
sub rsp, 0x20
call fcn.140010918
add rsp, 0x20
mov rax, qword [rbp + 0x10]
cmp rax, 0
je 0x1401cc7ad
mov ecx, dword [0x140222c78]
xor ecx, 0x3256d4e5
mov edx, dword [0x140222c7c]
mov r8d, ecx
xor r8d, 0xffffffff
mov eax, edx
and eax, r8d
mov r8d, 0x1e3cfc20
xor r8d, 0xe1c303df
xor edx, r8d
and ecx, edx
or eax, ecx
mov ecx, 0x8ddfc620
xor ecx, 0xe4669bcc
imul eax, ecx
mov ecx, 0xcbef3967
xor ecx, 0x3d76078d
xor edx, edx
div ecx
or eax, 0x5df263dd
cmp eax, 0xebb95f40
je 0x1401cc7c9
mov rdx, qword [rbp + 0x10]
mov ecx, dword [0x140222c80]
mov r8d, dword [0x140222c84]
mov eax, ecx
xor eax, 0xffffffff
mov r10d, 0x9d708ca5
xor r10d, 0x628f735a
mov r9d, ecx
xor r9d, r10d
and eax, r9d
mov r9d, r8d
or r9d, r9d
xor r9d, 0xffffffff
or eax, r9d
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov r9d, 0x2ab9b08e
xor r9d, 0xd5464f71
xor r8d, r9d
and ecx, r8d
or eax, ecx
xor eax, 0xffffffff
or eax, 0xf99506bc
mov ecx, 0x1af30bd2
xor ecx, 0x47e36d85
add eax, ecx
sub eax, 0xc62cf202
sub eax, 0x5d106657
mov r8d, 0x809b6ba3
xor r8d, 0x7f64945c
mov ecx, eax
xor ecx, r8d
mov r8d, 0xe87f455f
xor r8d, 0x6120b1e1
and r8d, ecx
mov r9d, 0xffffffff
xor r9d, 0x895ff4be
mov ecx, eax
and ecx, r9d
imul ecx, r8d
mov r8d, eax
and r8d, 0x895ff4be
mov r9d, 0x6aadb55e
xor r9d, 0xe3f241e0
or eax, r9d
imul eax, r8d
add eax, ecx
mov ecx, 0x53fe59af
xor ecx, 0x3be5dcbb
mov r8, qword [rdx]
mov rdx, r8
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
mov r8, 0xffffffffffffffff
movabs r9, 0x4000000000000000
xor r8, r9
mov r9, 0xffffffffffffffff
movabs r10, 0x4000000000000000
xor r9, r10
and r8, r9
movabs r9, 0x488761e0a040c690
movabs r10, 0xb7789e1f5fbf396f
xor r9, r10
xor rdx, r9
xor r8, 0xffffffffffffffff
and rdx, r8
cmp rdx, 0
sete dl
mov byte [rbp - 0x7a], dl
cmp eax, ecx
jbe 0x1401cc7c9
mov al, byte [rbp - 0x7a]
test al, 1
jne 0x1401cc79c
jmp 0x1401cc7ad
mov rcx, qword [rbp + 0x10]
sub rsp, 0x20
call fcn.140010918
add rsp, 0x20
mov rax, qword [rbp + 0x28]
lea rsp, [rbp + 0x30]
pop rbp
ret
invalid
hlt
scasd eax, dword [rdi]
or byte [rax], bl
sbb eax, 0xfffe75e9
dec dword [rax - 0x7d]
sub rsp, 0x38
mov rax, qword [rcx]
mov qword [rsp + 0x28], rax