Function at 0x14009f440
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x70
lea rbp, [rsp + 0x70]
mov qword [rbp - 0x20], r8
mov qword [rbp - 0x18], rdx
mov qword [rbp - 0x10], rcx
mov qword [rbp - 8], rcx
mov ecx, dword [0x1401df908]
mov edx, dword [0x1401df90c]
mov eax, ecx
or eax, edx
mov r8d, 0xe032a28d
xor r8d, 0x1fcd5d72
xor eax, r8d
or ecx, edx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x7468d1da
xor ecx, 0x8b972e25
xor eax, ecx
add eax, 0x63baae37
xor eax, 0xe39dc82d
or eax, 0x157035e
cmp eax, 0x575257fe
jb 0x14009f7a8
mov ecx, dword [0x1401df910]
mov eax, dword [0x1401df914]
xor eax, ecx
xor eax, 0x91f1a922
imul ecx, eax, 0x160c6873
mov edx, ecx
not edx
mov eax, ecx
and eax, 0xe909d1e0
and edx, 0x16f62e1f
imul edx, eax
mov eax, ecx
and eax, 0x16f62e1f
or ecx, 0x16f62e1f
imul ecx, eax
mov eax, ecx
mov ecx, edx
lea eax, [rax + rcx - 0x7acd9f34]
mov dword [rbp - 0x34], eax
mov eax, 0xc62231e3
mov dword [rbp - 0x38], eax
mov eax, 0x10
mov qword [rbp - 0x50], rax
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp - 0x50]
mov rcx, rsp
mov qword [rbp - 0x48], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x40], rax
sub rsp, 0x20
call fcn.14009e710
mov r8, qword [rbp - 0x10]
mov rdx, qword [rbp - 0x18]
mov ecx, dword [rbp - 0x38]
add rsp, 0x20
mov r9, rax
mov eax, dword [rbp - 0x34]
add r9, 0x60
mov qword [rbp - 0x30], r9
mov qword [r8], 0
mov qword [r8 + 8], 0
cmp rdx, 0
sete dl
mov byte [rbp - 0x21], dl
cmp eax, ecx
je 0x14009f4a8
mov al, byte [rbp - 0x21]
test al, 1
jne 0x14009f79f
jmp 0x14009f57d
mov rdx, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x10]
sub rsp, 0x20
call fcn.14009d3b0
mov rax, qword [rbp - 0x30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14009f79f
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x10]
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.14009e7f0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x30]
mov qword [rbp - 0x58], rcx
cmp byte [rax], 0
jne 0x14009f79f
mov r8, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x20]
mov edx, 2
sub rsp, 0x20
call fcn.14009d601
add rsp, 0x20
test al, 1
jne 0x14009f5fd
jmp 0x14009f60f
sub rsp, 0x20
call fcn.1400067fe
add rsp, 0x20
jmp 0x14009f79f
mov rax, qword [rbp - 0x48]
mov rax, qword [rax]
mov qword [rbp - 0x60], rax
movabs rcx, 0xa1e0499c6843c2a4
movabs rdx, 0xa1e0499c6843c2a4
xor rcx, rdx
cmp rax, rcx
jge 0x14009f786
mov r8d, dword [0x1401df918]
imul r8d, dword [0x1401df91c]
mov eax, r8d
and eax, 0xe5edb5be
xor eax, 0xffffffff
add r8d, 0xe5edb5be
add r8d, 1
add r8d, eax
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x9710fd8b
mov edx, 0xf1a8b226
xor edx, 0x66b84fad
mov ecx, 0xce6e8600
xor ecx, 0x319179ff
xor edx, ecx
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x8dafa90d
and ecx, 0x9710fd8b
and edx, 0x8dafa90d
or eax, r8d
or ecx, edx
xor eax, ecx
xor eax, 0x9392c2da
mov ecx, 0x6a5ae5a2
xor ecx, 0x1ac879b0
cmp eax, ecx
je 0x14009f7b1
mov rcx, qword [rbp - 0x60]
mov edx, dword [0x1401df920]
mov r8d, dword [0x1401df924]
mov eax, 0x3bdc6b1c
xor eax, 0xc7caca22
xor r8d, eax
mov r9d, 0xf99c60dc
xor r9d, 0x6639f23
mov eax, edx
xor eax, r9d
mov r9d, edx
xor r9d, 0xffffffff
and eax, r9d
mov r9d, r8d
xor r9d, 0xffffffff
mov r10d, r8d
xor r10d, 0xffffffff
and r9d, r10d
mov r10d, 0x9d357723
xor r10d, 0x62ca88dc
xor eax, r10d
xor r9d, 0xffffffff
and eax, r9d
or edx, r8d
mov r8d, 0x96fa5b2
xor r8d, 0xf6905a4d
xor edx, r8d
or eax, edx
xor eax, 0xffffffff
mov r8d, 0x2bdcd3f0
xor edx, edx
div r8d
mov edx, 0x46c9f43f
xor edx, 0xa9a7f6
or eax, edx
xor eax, 0x8fcdb90f
mov dword [rbp - 0x64], eax
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000c499
mov eax, dword [rbp - 0x64]
add rsp, 0x20
cmp eax, 0x3a415e90
jb 0x14009f7b1
jmp 0x14009f79f
mov r8, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x58]
sub rsp, 0x20
call fcn.14009f7c0
add rsp, 0x20
mov rax, qword [rbp - 8]
mov rsp, rbp
pop rbp
ret
loopne 0x14009f7f3
jno 0x14009f7b2
invalid
jmp 0x14009f4a8
jno 0x14009f7ab
clc
fmul st(2), st(0)
jmp 0x14009f6be
enter 0xffffffffffff840f, 0x31
add byte [rax], al
add byte [rax - 0x75], cl
add al, 0x24