Function at 0x14006f06f
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], rcx
call fcn.14006611a
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x50], rax
call fcn.140068ccf
mov rax, qword [rsp + 0x50]
cmp byte [rax], 0
jne 0x14006f04f
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x48]
call fcn.14006b9e0
mov rax, qword [rsp + 0x50]
cmp byte [rax], 0
jne 0x14006f04f
mov eax, dword [0x1401cb438]
imul eax, dword [0x1401cb43c]
mov edx, eax
xor edx, 0xffffffff
and edx, 0xac5c0dff
mov r8d, 0xd3fd6b81
xor r8d, 0x7fa1667e
mov ecx, 0x56d85c5f
xor ecx, 0xa927a3a0
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xcd8b2181
xor r8d, 0x61d72c7e
mov edx, eax
and edx, r8d
mov r8d, 0xf1cf9b1a
xor r8d, 0x5d9396e5
or eax, r8d
imul eax, edx
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x792b4c
mov r8d, 0xde87753b
xor r8d, 0xdefe5e77
mov ecx, 0x7dbfa789
xor ecx, 0x82405876
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xc04d1730
xor r8d, 0xc0343c7c
mov edx, eax
and edx, r8d
or eax, 0x792b4c
imul eax, edx
add eax, ecx
imul eax, eax, 0xce96ebdd
mov ecx, 0x575e53c2
xor ecx, 0xe4331b74
cmp eax, ecx
ja 0x14006f054
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov eax, dword [0x1401cb440]
mov r9d, dword [0x1401cb444]
mov r8d, 0x7ed85eeb
xor r8d, 0xbd3f79c0
xor r9d, r8d
mov r8d, eax
xor r8d, 0xffffffff
mov r10d, r9d
xor r10d, 0xffffffff
or r8d, r10d
and eax, r9d
xor eax, 0xffffffff
xor r8d, 0xffffffff
xor eax, 0xffffffff
or r8d, eax
xor r8d, 0xffffffff
mov r9d, 0x53b15094
xor r9d, 0x6f11c9a2
mov eax, 0x14e7694a
xor eax, 0xeb1896b5
xor r9d, eax
mov eax, 0xd86bd9
xor eax, 0xd991b9a1
mov r10d, 0x887c45b3
xor r10d, 0x7783ba4c
xor eax, r10d
or r8d, r9d
or eax, 0xd949d278
xor r8d, 0xffffffff
and r8d, eax
mov eax, r8d
xor eax, 0xffffffff
mov r10d, 0x8d35141c
xor r10d, 0x72caebe3
mov r9d, r8d
xor r9d, r10d
and eax, r9d
mov r9d, 0xe9ebe081
or r9d, 0xe9ebe081
xor r9d, 0xffffffff
xor eax, 0xffffffff
mov r10d, 0xe8677d45
xor r10d, 0x179882ba
xor r9d, r10d
and eax, r9d
or r8d, 0xe9ebe081
xor r8d, 0xffffffff
or eax, r8d
mov r8d, 0x9953ecd2
xor r8d, 0x66ac132d
xor eax, r8d
and eax, 0x72176f7a
mov dword [rsp + 0x38], eax
mov eax, 0xec0e13c7
xor eax, 0xe9ab301
mov dword [rsp + 0x34], eax
add rdx, 0x10
call fcn.14006b9e0
mov rdx, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x34]
mov eax, dword [rsp + 0x38]
mov dl, byte [rdx]
mov r8b, 0xee
xor r8b, 0xee
cmp dl, r8b
sete dl
mov byte [rsp + 0x3f], dl
cmp eax, ecx
je 0x14006ed42
mov al, byte [rsp + 0x3f]
test al, 1
jne 0x14006ee8b
jmp 0x14006f04f
mov eax, dword [0x1401cb448]
sub eax, dword [0x1401cb44c]
mov ecx, 0xbaf2b492
xor ecx, 0x7de50c5a
xor eax, ecx
xor eax, 0x69b009e8
mov ecx, eax
and ecx, 0xa97272a2
shl ecx, 1
mov edx, 0x53c83869
xor edx, 0xfaba4acb
xor eax, edx
add eax, ecx
mov ecx, 0xdc91647f
xor ecx, 0x80f4488d
cmp eax, ecx
je 0x14006f05d
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov eax, dword [0x1401cb450]
and eax, dword [0x1401cb454]
mov r9d, eax
xor r9d, 0xffffffff
and r9d, 0xbcd633ea
mov r10d, 0xffffffff
xor r10d, 0xbcd633ea
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0xbcd633ea
or eax, 0xbcd633ea
imul eax, r9d
add eax, r8d
mov r8d, 0x1dcc5b5e
xor r8d, 0x5f4421bf
sub eax, r8d
mov r8d, eax
xor r8d, 0xfe21ef28
mov r9d, 0xd3227677
xor r9d, 0x2cdd8988
xor r8d, r9d
or eax, 0xfe21ef28
and eax, r8d
mov dword [rsp + 0x2c], eax
mov eax, 0xc6c3d272
xor eax, 0x91584d06
mov dword [rsp + 0x28], eax
add rdx, 0x20
call fcn.14006b671
mov rdx, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x28]
mov eax, dword [rsp + 0x2c]
cmp byte [rdx], 0
sete dl
mov byte [rsp + 0x33], dl
cmp eax, ecx
jb 0x14006eed6
mov al, byte [rsp + 0x33]
test al, 1
jne 0x14006efa4
jmp 0x14006f04f
mov eax, dword [0x1401cb458]
and eax, dword [0x1401cb45c]
mov ecx, eax
xor ecx, 0x8ce3e9a
mov edx, 0xffffffff
xor edx, 0x8ce3e9a
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0xd3290912
xor edx, edx
div ecx
mov ecx, 0xcbbcbb28
xor edx, edx
div ecx
mov ecx, 0xf038ee9a
xor ecx, 0x5b6d5128
cmp eax, ecx
je 0x14006f066
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov eax, dword [0x1401cb460]
sub eax, dword [0x1401cb464]
sub eax, 0xd063a8bd
mov r9d, 0xec8a0ff
xor r9d, 0x22c2a005
mov r8d, eax
and r8d, r9d
shl r8d, 1
add eax, 0x2c0a00fa
sub eax, r8d
xor eax, 0xb0f6f948
mov dword [rsp + 0x24], eax
add rdx, 0x24
call fcn.14006b671
mov eax, dword [rsp + 0x24]
cmp eax, 0x8db4a7dc
jae 0x14006efef
jmp 0x14006f04f
add rsp, 0x58
ret
mov dl, byte [rbp - 0x1a16a5a2]
cld
invalid
retf
invalid
sub rsp, 0x38
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
call fcn.14006611a
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
add rsp, 0x38
jmp 0x14006ec30