Function at 0x14016b450
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x68
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], rcx
mov eax, dword [0x14027be98]
xor eax, dword [0x14027be9c]
mov ecx, eax
xor ecx, 0x67447a04
xor ecx, 0xffffffff
mov edx, 0x473ddc82
xor edx, 0x2079a686
or eax, edx
and eax, ecx
and eax, 0x2de2d067
mov ecx, 0xdb76b0a
xor ecx, 0x245273c0
sub eax, ecx
mov ecx, 0x6271ed2
xor ecx, 0xfe3a35ae
cmp eax, ecx
je 0x14016b765
mov rcx, qword [rsp + 0x58]
mov eax, dword [0x14027bea0]
mov edx, 0x67259663
xor edx, 0x48a27c4f
xor eax, edx
mov r8d, dword [0x14027bea4]
mov edx, r8d
and edx, eax
mov r9d, 0x6fd30770
xor r9d, 0x902cf88f
xor edx, r9d
add eax, r8d
add eax, 1
add eax, edx
imul eax, eax, 0xaf8b8eac
xor eax, 0xeae3057e
sub eax, 0x878c5bf8
sub eax, 0x327035fc
add eax, 0x878c5bf8
mov rcx, qword [rcx]
mov qword [rsp + 0x48], rcx
cmp rcx, 0
setg cl
mov byte [rsp + 0x57], cl
cmp eax, 0xfea9feec
ja 0x14016b765
mov al, byte [rsp + 0x57]
test al, 1
jne 0x14016b52e
jmp 0x14016b760
mov rdx, qword [rsp + 0x48]
movabs rax, 0x2ec8806cb055052e
movabs rcx, 0x2ec8806cb055052f
xor rax, rcx
movabs rcx, 0xa30969e601bc3a8
movabs r8, 0xf5cf69619fe43c57
xor rcx, r8
xor rax, rcx
xor ecx, ecx
sub rcx, 1
sub rax, rcx
mov rcx, rdx
sub rcx, rax
mov qword [rsp + 0x40], rcx
movabs rax, 0x1b04dfe6cbe83c96
movabs r8, 0xe4fb20193417c369
xor rax, r8
xor rdx, rax
mov rax, rcx
xor rax, 0xffffffffffffffff
mov r8, rdx
xor r8, 0xffffffffffffffff
or rax, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0x9872c22061ff0ff6
movabs r9, 0x678d3ddf9e00f009
xor r8, r9
xor rdx, r8
or rcx, rdx
and rax, rcx
movabs rcx, 0xf0d6c0d156b52d04
movabs rdx, 0xf293f2ea94ad2fb
xor rcx, rdx
xor rax, rcx
cmp rax, 0
jge 0x14016b5f5
call fcn.14000f24b
jmp 0x14016b760
mov rax, qword [rsp + 0x40]
cmp rax, 0
jge 0x14016b641
mov rcx, qword [rsp + 0x40]
movabs rdx, 0x6f299cfac06acb0d
movabs rax, 0x6f299cfac06acb0d
xor rdx, rax
movabs r8, 0xc4be4f2552382068
movabs rax, 0xbb41b0daadc7df97
xor r8, rax
call fcn.14001a720
jmp 0x14016b760
mov rax, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rdx + 8]
add rcx, 8
add rcx, qword [rdx]
mov qword [rsp + 0x28], rcx
mov rax, qword [rax + 8]
add rax, 8
mov qword [rsp + 0x30], rax
xor eax, eax
mov qword [rsp + 0x38], rax
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
mov r8b, byte [r8 + rcx]
mov byte [rax + rcx], r8b
mov r8, rcx
and r8, 1
shl r8, 1
mov rax, rcx
xor rax, 1
add rax, r8
cmp rcx, rdx
mov qword [rsp + 0x38], rax
jne 0x14016b66f
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x60]
mov r9, qword [rcx]
mov rcx, qword [rax]
mov rdx, rcx
add rdx, r9
mov qword [rsp + 0x20], rdx
mov rax, rdx
xor rax, 0xffffffffffffffff
mov r8, rdx
xor r8, 0xffffffffffffffff
or rax, r8
movabs r8, 0x643665eca64efa76
movabs r10, 0x9bc99a1359b10589
xor r8, r10
xor rax, r8
mov r8, r9
xor r8, 0xffffffffffffffff
or rax, r8
and r9, r9
xor r9, 0xffffffffffffffff
mov r8, rdx
and r8, r9
xor r8, 0xffffffffffffffff
and rax, r8
xor rax, 0xffffffffffffffff
xor rdx, rcx
mov rcx, rax
xor rcx, rdx
movabs r8, 0xcde9bdb4fc2bed79
movabs r9, 0x3216424b03d41286
xor r8, r9
xor rcx, r8
or rax, rdx
and rax, rcx
cmp rax, 0
jge 0x14016b753
call fcn.14000f24b
jmp 0x14016b760
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x20]
mov qword [rax], rcx
add rsp, 0x68
ret
mov edi, 0xe98b6a58
cmp edi, ebp
invalid