Function at 0x14008ce30
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xa8
mov rax, r8
mov qword [rsp + 0x80], rdx
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x90], rcx
mov r8, qword [rax]
mov qword [rsp + 0x98], r8
mov rcx, qword [rax + 8]
mov rdx, rcx
sub rdx, r8
mov qword [rsp + 0xa0], rdx
mov rax, rdx
xor rax, rcx
cmp rax, 0
setl cl
mov r9, rdx
xor r9, 0xffffffffffffffff
mov rax, r8
and rax, r9
xor r8, 0xffffffffffffffff
and rdx, r8
or rax, rdx
cmp rax, 0xffffffffffffffff
setg dl
xor dl, 0xff
mov al, cl
xor al, dl
and al, cl
test al, 1
jne 0x14008ceb0
jmp 0x14008ceba
call fcn.140007f57
jmp 0x14008d328
mov rcx, qword [rsp + 0xa0]
movabs rdx, 0x8a0b612ba074650a
movabs rax, 0x8a0b612ba074650b
xor rdx, rax
mov rax, rcx
and rax, rdx
mov rdx, rcx
or rdx, 1
add rax, rdx
mov qword [rsp + 0x78], rax
movabs rdx, 0x5d511d70e1730ea3
movabs r8, 0xa2aee28f1e8cf15c
xor rdx, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x14008cf1f
call fcn.140007f57
jmp 0x14008d328
mov rax, qword [rsp + 0x78]
movabs rcx, 0x7a3be8adcd66df9f
movabs rdx, 0x7a3be8adcd66df9f
xor rcx, rdx
cmp rax, rcx
jge 0x14008cf61
mov rcx, qword [rsp + 0x78]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000dc65
jmp 0x14008d328
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x78]
call fcn.14001a990
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x88]
mov rax, qword [rsp + 0x98]
mov r8, rax
xor r8, 0xffffffffffffffff
and r8, 0xffffffffffffffff
mov r10, 0xffffffffffffffff
xor r10, 0xffffffffffffffff
mov r9, rax
and r9, r10
or r8, r9
mov qword [rsp + 0x50], r8
add rdx, 8
mov qword [rsp + 0x58], rdx
add rcx, 8
mov qword [rsp + 0x60], rcx
cmp rax, 0xffffffffffffffff
setg al
mov byte [rsp + 0x6f], al
xor eax, eax
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x48], rax
mov eax, dword [0x140204548]
sub eax, dword [0x14020454c]
sub eax, 0x4417591b
mov r8d, 0xffffffff
xor r8d, 0xf091a445
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xf091a445
mov r8d, 0xc26e217e
xor r8d, 0x32ff853b
or eax, r8d
imul eax, edx
add eax, ecx
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xd1624607
mov edx, 0xdf57e6c4
xor edx, 0x8c842118
mov r8d, 0xa0a5981e
xor r8d, 0x5f5a67e1
xor edx, r8d
or eax, ecx
mov ecx, 0x4c7cd90
xor ecx, 0x57140a4c
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0xf5d27429
xor ecx, 0x1f24d89f
cmp eax, ecx
jae 0x14008d338
mov rdx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x78]
mov eax, dword [0x140204550]
and eax, dword [0x140204554]
mov ecx, 0xb212d984
xor ecx, 0xb212d984
mov r9d, 0x27f9dbe7
xor r9d, 0xa8f85209
sub ecx, r9d
add eax, ecx
add eax, 0x6daf171c
sub eax, 0x1c4b9fb0
sub eax, 0x6daf171c
add eax, 0xce21cea3
mov ecx, 0xb48c02f0
xor ecx, 0xa7190b5e
cmp rdx, r8
sete dl
mov byte [rsp + 0x47], dl
cmp eax, ecx
jb 0x14008d078
mov al, byte [rsp + 0x47]
test al, 1
jne 0x14008d328
jmp 0x14008d0ed
mov eax, dword [0x140204558]
xor eax, 0x2044e007
mov ecx, dword [0x14020455c]
xor ecx, 0xa63f932
xor edx, edx
div ecx
add eax, 0xb320d911
mov ecx, 0x5416e1f7
xor ecx, 0x5416e1f7
mov edx, 0x96bf8998
xor edx, 0x8dc9b483
sub ecx, edx
add eax, ecx
mov ecx, eax
xor ecx, 0x94c6d78b
xor ecx, 0xffffffff
or eax, 0x94c6d78b
and eax, ecx
cmp eax, 0xbb01d4e7
je 0x14008d341
mov rcx, qword [rsp + 0x48]
mov eax, dword [0x140204560]
mov edx, 0x592b7c14
xor edx, 0x966b5fda
xor eax, edx
mov r8d, dword [0x140204564]
mov edx, 0x5bbf3fd1
xor edx, 0x40f4ed52
xor r8d, edx
xor edx, edx
div r8d
xor eax, 0xff37f273
mov r8d, 0x73a83060
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x88]
mov r9d, eax
xor r9d, 0xffffffff
and r9d, 0x9cd7ef28
mov r10d, 0xffffffff
xor r10d, 0x9cd7ef28
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r10d, 0x9187d1be
xor r10d, 0xd503e96
mov r9d, eax
and r9d, r10d
or eax, 0x9cd7ef28
imul eax, r9d
add eax, r8d
mov rdx, qword [rdx]
mov qword [rsp + 0x38], rdx
cmp rcx, rdx
setl cl
mov byte [rsp + 0x46], cl
cmp eax, 0xdb2ec31b
jae 0x14008d341
mov al, byte [rsp + 0x46]
test al, 1
jne 0x14008d238
jmp 0x14008d200
mov rcx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x38]
movabs r8, 0x31b366766480a23f
movabs rdx, 0xce4c99899b7f5dc0
xor r8, rdx
mov rdx, rax
and rdx, r8
or rax, 0xffffffffffffffff
add rdx, rax
call fcn.140014583
jmp 0x14008d328
mov rcx, qword [rsp + 0x88]
call fcn.14008da45
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x50]
add rax, rcx
mov qword [rsp + 0x30], rax
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
or rax, rdx
and rax, rcx
cmp rax, 0
jge 0x14008d283
call fcn.140007f57
jmp 0x14008d328
mov al, byte [rsp + 0x6f]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x80]
mov rdx, qword [rdx]
mov qword [rsp + 0x28], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x14008d2d3
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x28]
xor eax, eax
sub rax, rdx
xor edx, edx
sub rdx, 0xffffffffffffffff
add rax, rdx
xor edx, edx
sub rdx, rax
call fcn.140014583
jmp 0x14008d328
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x58]
mov rdx, qword [rdx]
mov dl, byte [rdx + r8 + 8]
mov rcx, qword [rcx]
mov byte [rcx + rax + 8], dl
movabs rdx, 0x1ba4e02942152b65
movabs rcx, 0x1ba4e02942152b64
xor rdx, rcx
mov rcx, rax
and rcx, rdx
shl rcx, 1
xor rax, 1
add rax, rcx
mov qword [rsp + 0x70], rax
jmp 0x14008cfd3
mov rax, qword [rsp + 0x90]
add rsp, 0xa8
ret
rcr dword [rcx], 0x58
cmp ch, cl
invalid
push rax
invalid