Function at 0x14010cd10
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xc0
lea rbp, [rsp + 0x80]
mov qword [rbp + 8], r8
mov dword [rbp + 0x14], edx
mov qword [rbp + 0x20], rcx
mov eax, 0x10
call fcn.140271bb0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x18], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rcx, qword [rbp + 0x20]
add rsp, 0x20
add rax, 0x60
mov qword [rbp + 0x28], rax
cmp rcx, 1
jge 0x14010d445
mov rcx, qword [rbp + 0x18]
mov rax, qword [rbp + 8]
mov rdx, qword [rax]
xor eax, eax
sub rax, rdx
xor edx, edx
sub rdx, 0x1e
add rax, rdx
movabs rdx, 0x67b3ef293c7ec89c
movabs r8, 0x67b3ef293c7ec89c
xor rdx, r8
sub rdx, rax
sub rsp, 0x20
call fcn.140037460
mov rax, qword [rbp + 0x18]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp - 0x18], rcx
mov rax, qword [rax + 8]
mov qword [rbp - 0x10], rax
add rax, 8
add rax, rcx
mov qword [rbp - 8], rax
xor eax, eax
mov qword [rbp], rax
mov rcx, qword [rbp]
mov rax, qword [rbp - 8]
lea rdx, [0x14028a298]
mov dl, byte [rdx + rcx + 8]
mov byte [rax + rcx], dl
movabs rdx, 0xf7b8259bca2be609
movabs rax, 0xf7b8259bca2be608
xor rdx, rax
mov rax, rcx
add rax, rdx
movabs rdx, 0x522230c8e260e2ea
movabs r8, 0x522230c8e260e2f4
xor rdx, r8
cmp rcx, rdx
mov qword [rbp], rax
jne 0x14010cdcf
mov r8, qword [rbp - 0x18]
mov rax, r8
add rax, 0x1e
mov rcx, r8
and rcx, 0xffffffffffffffff
shl rcx, 1
add r8, 0xffffffffffffffff
sub r8, rcx
mov rcx, rax
and rcx, r8
xor rcx, 0xffffffffffffffff
movabs r9, 0x535c947e533a7671
movabs rdx, 0xaca36b81acc5898e
xor r9, rdx
mov rdx, rax
xor rdx, r9
xor r8, 0xffffffffffffffff
or rdx, r8
and rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0xeaba9e7f4418ca58
movabs r8, 0xeaba9e7f4418ca58
xor rdx, r8
cmp rcx, rdx
mov qword [rbp - 0x20], rax
jge 0x14010ceb1
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov qword [rbp - 0x20], rax
mov rdx, qword [rbp + 8]
mov rax, qword [rbp - 0x20]
mov qword [rbp - 0x40], rax
mov rcx, qword [rdx]
mov qword [rbp - 0x38], rcx
mov rdx, qword [rdx + 8]
mov qword [rbp - 0x30], rdx
movabs rdx, 0xe5e40b0df248d447
movabs r8, 0xe5e40b0df248d447
xor rdx, r8
cmp rcx, rdx
mov qword [rbp - 0x28], rax
jle 0x14010d2e5
mov rdx, qword [rbp - 0x38]
mov rax, rdx
add rax, 1
mov qword [rbp - 0x48], rax
xor rdx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
movabs rcx, 0x60e423425ec4114c
movabs r8, 0x9f1bdcbda13beeb3
xor rcx, r8
xor rdx, rcx
mov rcx, 0xffffffffffffffff
movabs r8, 0xfd0a947847297683
xor rcx, r8
or rax, rdx
movabs rdx, 0xfd0a947847297683
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x15b9425d3dcea6eb
movabs rdx, 0x15b9425d3dcea6eb
xor rcx, rdx
cmp rax, rcx
jge 0x14010cf86
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp - 0x40]
add rsp, 0x20
mov qword [rbp - 0x28], rax
jmp 0x14010d2e5
mov rax, qword [rbp - 0x48]
cmp rax, 0
jge 0x14010cfe0
mov rcx, qword [rbp - 0x48]
movabs rdx, 0x8c86aacf66fd1730
movabs rax, 0x8c86aacf66fd1730
xor rdx, rax
movabs r8, 0xdfce0d937322aeba
movabs rax, 0xa031f26c8cdd5145
xor r8, rax
sub rsp, 0x20
call fcn.14001a720
mov rax, qword [rbp - 0x40]
add rsp, 0x20
mov qword [rbp - 0x28], rax
jmp 0x14010d2e5
mov eax, dword [0x140279790]
mov edx, dword [0x140279794]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x70d81a9e
mov r8d, 0xffffffff
xor r8d, 0x70d81a9e
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x5ebc51d2
xor r8d, 0x2e644b4c
mov edx, eax
and edx, r8d
mov r8d, 0xb2a6c112
xor r8d, 0xc27edb8c
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x78e58935
xor ecx, 0x8315b0b8
xor edx, edx
div ecx
mov ecx, 0xfdaeac08
xor edx, edx
div ecx
cmp eax, 0xb4061b45
ja 0x14010d44b
mov r9, qword [rbp - 0x40]
mov r8, qword [rbp - 0x10]
mov eax, dword [0x140279798]
mov ecx, 0x538d0ae
xor ecx, 0x6e999b44
xor eax, ecx
mov ecx, dword [0x14027979c]
xor ecx, 0xba736a9
sub eax, 0x247488b7
add eax, ecx
add eax, 0x247488b7
mov ecx, 0x4dc76c4c
xor ecx, 0xd1646cf7
sub eax, ecx
mov ecx, 0xd133bd1a
xor ecx, 0x668b8cbb
sub eax, ecx
add eax, 0x9ca300bb
mov ecx, 0xc5e6df52
xor edx, edx
div ecx
mov rdx, qword [rbp - 0x30]
add eax, 0x9efd2697
mov ecx, 0xf06e1672
xor ecx, 0x4d7fb841
sub eax, ecx
sub eax, 0x9efd2697
mov ecx, 0xd0a33a63
xor ecx, 0x6ee5e8a3
add r8, 8
add r8, r9
mov qword [rbp - 0x58], r8
add rdx, 8
mov qword [rbp - 0x50], rdx
cmp eax, ecx
jae 0x14010d064
xor eax, eax
mov qword [rbp - 0x60], rax
jmp 0x14010d10b
mov rcx, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x38]
mov rax, qword [rbp - 0x58]
mov r8, qword [rbp - 0x50]
mov r8b, byte [r8 + rcx]
mov byte [rax + rcx], r8b
movabs r8, 0x3132d79f7436ec3
mov rax, rcx
add rax, r8
add rax, 1
movabs r8, 0x3132d79f7436ec3
sub rax, r8
cmp rcx, rdx
mov qword [rbp - 0x60], rax
jne 0x14010d10b
mov eax, dword [0x1402797a0]
mov edx, dword [0x1402797a4]
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, edx
and eax, ecx
sub eax, 0x84c3ec45
xor eax, 0x38d25e22
and eax, 0x9b9c5585
mov ecx, 0x87fb10fb
xor ecx, 0xd08fbac8
cmp eax, ecx
jbe 0x14010d454
mov rdx, qword [rbp - 0x38]
mov r9, qword [rbp - 0x40]
mov ecx, dword [0x1402797a8]
xor ecx, 0xcbf39088
sub ecx, dword [0x1402797ac]
or ecx, ecx
mov eax, 0x19882bf5
xor eax, 0xe677d40a
xor ecx, eax
mov eax, 0xffffffff
xor eax, 0x133c5906
mov r8d, 0xffffffff
xor r8d, 0x133c5906
and eax, r8d
or ecx, eax
mov eax, 0xe42042e2
xor eax, 0x1bdfbd1d
xor ecx, eax
mov eax, ecx
and eax, eax
mov r8d, 0x6efc4456
xor r8d, 0x9103bba9
xor eax, r8d
mov r8d, 0xb1ac6ebc
xor r8d, 0x537a2c95
and eax, r8d
mov r8d, 0x3dc6d552
xor r8d, 0xc2392aad
xor eax, r8d
mov r8d, 0xb51e68be
xor r8d, 0x57c82a97
mov r10d, 0x11176124
xor r10d, 0xeee89edb
xor r8d, r10d
mov r10d, 0xffffffff
xor r10d, 0xe2d64229
or r8d, r10d
xor ecx, 0xffffffff
xor r8d, 0xffffffff
or ecx, r8d
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
and eax, 0x2e8a030b
mov r8, rdx
add r8, r9
mov qword [rbp - 0x70], r8
mov rcx, r8
xor rcx, r9
xor r8, rdx
mov rdx, rcx
add rdx, 1
movabs r9, 0x7c57a611660ec3db
movabs r10, 0x83a859ee99f13c24
xor r9, r10
xor rcx, r9
or rcx, r8
add rcx, rdx
movabs rdx, 0xf6da1a51f359d226
movabs r8, 0xf6da1a51f359d226
xor rdx, r8
cmp rcx, rdx
setl cl
mov byte [rbp - 0x61], cl
cmp eax, 0x6d87cf4d
je 0x14010d454
mov rax, qword [rbp - 0x70]
mov cl, byte [rbp - 0x61]
test cl, 1
mov qword [rbp - 0x28], rax
jne 0x14010d2d0
jmp 0x14010d2e5
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp - 0x40]
add rsp, 0x20
mov qword [rbp - 0x28], rax
mov ecx, dword [rbp + 0x14]
mov rax, qword [rbp - 0x10]
mov rdx, qword [rbp - 0x28]
mov qword [rbp + 0x30], rdx
mov qword [rbp + 0x38], rax
lea rdx, [rbp + 0x30]
sub rsp, 0x20
call fcn.1400ef6b0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x28]
mov qword [rbp - 0x78], rcx
mov al, byte [rax]
mov cl, 0xf5
xor cl, 0xf5
cmp al, cl
jne 0x14010d3e9
mov eax, dword [0x1402797b0]
sub eax, dword [0x1402797b4]
imul eax, eax, 0xc7a0a2d9
sub eax, 0x5f4e398a
sub eax, 0x6c93cf73
mov ecx, 0x1ce0d1bf
xor ecx, 0xd3bdcf51
sub eax, ecx
add eax, 0x6c93cf73
cmp eax, 0xaac3f838
je 0x14010d45d
mov rcx, qword [rbp - 0x78]
mov eax, dword [0x1402797b8]
mov r8d, dword [0x1402797bc]
mov r9d, eax
xor r9d, r8d
xor r9d, 0xffffffff
mov edx, r8d
and edx, r9d
shl edx, 1
sub edx, r8d
sub eax, edx
mov r8d, 0x4a9c06a6
xor edx, edx
div r8d
mov r8d, 0xc0b026d6
xor r8d, 0x42b6682
xor edx, edx
div r8d
imul eax, eax, 0xd691f37f
mov dword [rbp - 0x7c], eax
lea rdx, [0x14028a11b]
lea r8, [0x14028a12a]
lea r9, [0x14028a0c3]
sub rsp, 0x30
mov qword [rsp + 0x20], 0x7b12c9da
call fcn.140028fa8
mov eax, dword [rbp - 0x7c]
add rsp, 0x30
cmp eax, 0x1586d58b
ja 0x14010d35c
jmp 0x14010d3e9
mov rax, qword [rbp - 0x10]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
movabs rcx, 0x7929423596da8d1a
movabs rdx, 0x7929423596da8d1a
xor rcx, rdx
cmp rax, rcx
jne 0x14010d445
mov rcx, qword [rbp - 0x10]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
lea rsp, [rbp + 0x40]
pop rbp
ret
imul ebx, dword [rdi], 0x10e952c6
cld
invalid
push rsp
mov esi, 0x2de9d9e5
std
invalid
cli
in eax, dx
mov r12d, 0xfffef6e9
jmp qword [rsi + 0x2e]