Function at 0x14007f860
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x78
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x70], rcx
mov eax, dword [0x14024eb48]
xor eax, 0xa5c70685
mov edx, dword [0x14024eb4c]
mov ecx, 0xcd5dcbf8
xor ecx, 0xcd5dcbf8
sub ecx, edx
add eax, ecx
or eax, 0xf9b6b31e
mov edx, 0x738238b6
xor edx, 0x8c7dc749
mov ecx, eax
xor ecx, edx
and ecx, 0xf287f5ae
mov edx, 0xffffffff
xor edx, 0xf287f5ae
and eax, edx
sub eax, ecx
sub eax, 0x234d2545
mov ecx, 0x9593055
xor ecx, 0x3ab75adb
sub eax, ecx
add eax, 0x234d2545
cmp eax, 0x43a4c167
je 0x14007fbbc
mov eax, dword [0x14024eb50]
mov edx, dword [0x14024eb54]
mov ecx, 0x200546f3
xor ecx, 0x7d6a5ee2
xor edx, ecx
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
mov r8d, edx
and r8d, ecx
mov ecx, 0x38891a15
xor ecx, 0x38891a17
imul ecx, r8d
sub ecx, edx
sub eax, ecx
mov ecx, 0xa9a2f223
xor ecx, 0x4a29801
xor edx, edx
div ecx
mov ecx, 0xaede7199
xor ecx, 0x35b11a8d
sub eax, ecx
mov ecx, 0x61cac674
xor ecx, 0xfd92b2f6
or eax, ecx
mov dword [rsp + 0x60], eax
call fcn.140067614
mov rcx, qword [rsp + 0x70]
mov rdx, rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x58], rdx
mov rdx, qword [rax]
call fcn.140067bb0
mov rcx, qword [rsp + 0x58]
mov eax, dword [rsp + 0x60]
cmp byte [rcx], 0
sete cl
mov byte [rsp + 0x67], cl
cmp eax, 0x6743d1a5
jbe 0x14007fbbc
mov al, byte [rsp + 0x67]
test al, 1
jne 0x14007f98d
jmp 0x14007fbb7
mov rax, qword [rsp + 0x68]
mov rdx, qword [rax]
movabs rcx, 0x67f80ac8d9c7f53
movabs rax, 0x101fea7e7ecb67ab
xor rcx, rax
mov rax, rdx
sub rax, rcx
movabs rcx, 0x7ce18b2ce7193959
movabs r8, 0x831e74d318e6c6a6
xor rcx, r8
add rax, rcx
movabs rcx, 0x66aeefbff8b7b062
movabs r8, 0x70ce856d0be0a89a
xor rcx, r8
add rax, rcx
mov qword [rsp + 0x50], rax
mov rcx, rax
xor rcx, rdx
cmp rcx, 0
setl cl
movabs rdx, 0x63ef51a187236907
movabs r8, 0x9c10ae5e78dc96f8
xor rdx, r8
cmp rax, rdx
setg al
and al, cl
test al, 1
jne 0x14007fa39
mov rax, qword [rsp + 0x68]
add rax, 8
mov qword [rsp + 0x40], rax
xor eax, eax
mov qword [rsp + 0x48], rax
jmp 0x14007fa43
call fcn.140008c92
jmp 0x14007fbb7
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x38], rax
cmp rax, rcx
jg 0x14007fbb7
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x68]
mov rcx, qword [rcx]
mov qword [rsp + 0x30], rcx
cmp rax, rcx
jl 0x14007fa9c
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x30]
mov rax, rdx
and rax, 0xffffffffffffffff
shl rax, 1
xor rdx, 0xffffffffffffffff
add rdx, rax
call fcn.14001284c
jmp 0x14007fbb7
mov eax, dword [0x14024eb58]
and eax, dword [0x14024eb5c]
or eax, 0x4662e652
sub eax, 0xc5b2fd88
mov ecx, 0x2f4c31a0
xor ecx, 0x4814466c
imul eax, ecx
cmp eax, 0x9e009980
jae 0x14007fbc5
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x38]
mov rax, qword [rsp + 0x40]
mov r9d, dword [0x14024eb60]
mov r8d, dword [0x14024eb64]
xor r8d, 0x1c649cac
sub r9d, 0xc56d4f5b
add r9d, r8d
add r9d, 0xc56d4f5b
mov r8d, r9d
and r8d, 0xfa7f33b
xor r9d, 0xfa7f33b
or r8d, r9d
imul r8d, r8d, 0x8d1ec207
xor r9d, r9d
sub r9d, r8d
xor r8d, r8d
sub r8d, 0xf1a2ef7b
add r9d, r8d
mov r8d, 0x8b73d1e5
xor r8d, 0x8b73d1e5
sub r8d, r9d
mov dword [rsp + 0x28], r8d
mov r8d, 0x5d6b0f74
xor r8d, 0x550487a2
mov dword [rsp + 0x24], r8d
mov rax, qword [rax]
mov edx, dword [rax + rdx*4 + 8]
call fcn.1400683a1
mov rdx, qword [rsp + 0x58]
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 0x14007facb
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x14007fb91
jmp 0x14007fbb7
mov rax, qword [rsp + 0x38]
mov rcx, 0xffffffffffffffff
xor rcx, 1
xor edx, edx
sub rdx, 1
sub rcx, rdx
sub rax, rcx
mov qword [rsp + 0x48], rax
jmp 0x14007fa43
add rsp, 0x78
ret
sub al, 0xea
ja 0x14007fc27
jmp 0x14007f8d9
push rbp
or dh, byte [rax]
jmp 0x14007facb
rol dword [rcx - 0x48], cl
sub eax, 0x81419436
invalid