Function at 0x1400f2bf0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xa0
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x40], rdx
mov qword [rbp - 0x38], rcx
mov eax, 0x10
call fcn.14023fff0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x30], rax
sub rsp, 0x20
call fcn.1400e33a2
add rsp, 0x20
mov qword [rbp - 0x28], rax
mov cx, 0xa60a
xor cx, 0xc007
mov dx, 0xeb9d
xor dx, 0x565f
sub rsp, 0x20
call fcn.140068d74
add rsp, 0x20
mov cx, ax
mov rax, qword [rbp - 0x28]
mov word [rbp - 0x1a], cx
cmp byte [rax], 0
jne 0x1400f2fa0
mov rcx, qword [rbp - 0x40]
mov ax, word [rbp - 0x1a]
mov dl, al
sub rsp, 0x20
call fcn.1400e5104
mov rcx, qword [rbp - 0x38]
mov rax, qword [rbp - 0x28]
add rsp, 0x20
mov rcx, qword [rcx]
test rcx, rcx
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp - 0x41], al
or al, cl
test al, 1
jne 0x1400f2f53
mov ecx, 0x2392
mov edx, 0xf81c
sub rsp, 0x20
call fcn.140068d74
mov rcx, qword [rbp - 0x28]
add rsp, 0x20
mov cl, byte [rcx]
cmp cl, 0
sete dl
mov byte [rbp - 0x43], dl
cmp cl, 0
mov byte [rbp - 0x42], al
je 0x1400f2cce
mov al, byte [rbp - 0x43]
mov cl, byte [rbp - 0x42]
mov byte [rbp - 0x44], cl
test al, 1
jne 0x1400f2ce4
jmp 0x1400f2f3b
mov eax, dword [0x140247c20]
mov ecx, dword [0x140247c24]
mov edx, 0xbe804ff8
xor edx, 0x24375677
xor ecx, edx
add eax, ecx
mov ecx, 0x9d280365
xor ecx, 0x669b592e
and eax, ecx
mov ecx, 0xc70e66bd
xor ecx, 0xb09af7ae
add eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x9c33af15
add eax, ecx
cmp eax, 0xdd1912f
je 0x1400f2fa6
mov eax, dword [0x140247c28]
and eax, dword [0x140247c2c]
and eax, 0xd7aab00c
or eax, 0xad8be14d
mov ecx, 0x37329073
xor ecx, 0xde405c0e
sub eax, ecx
mov dword [rbp - 0x54], eax
mov eax, 0xd7786cd2
xor eax, 0xd69126b1
mov dword [rbp - 0x58], eax
movabs rax, 0x300cb5211e23972f
movabs rcx, 0x300cb5211e23972f
xor rax, rcx
mov qword [rbp + 0x10], rax
lea rax, [rbp + 0x10]
add rax, 8
mov qword [rbp - 0x60], rax
mov qword [rbp + 0x18], 0
mov word [rbp + 0xe], 0x3b8
lea rcx, [rbp + 0xe]
sub rsp, 0x20
call fcn.140064b20
mov rdx, qword [rbp - 0x28]
mov ecx, dword [rbp - 0x58]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp - 0x54]
mov qword [rbp - 0x50], r8
cmp byte [rdx], 0
sete dl
mov byte [rbp - 0x45], dl
cmp eax, ecx
jbe 0x1400f2d33
mov al, byte [rbp - 0x45]
test al, 1
jne 0x1400f2dde
jmp 0x1400f2f3b
mov rax, qword [rbp - 0x50]
mov rdx, qword [rax]
movabs rax, 0x7163e735c258bfb
sub rdx, rax
add rdx, 1
movabs rax, 0xc7b0def25e92d0a3
movabs rcx, 0xc0a6e08102b75b58
xor rax, rcx
add rdx, rax
lea rcx, [rbp + 0x10]
sub rsp, 0x20
call fcn.140019920
mov rax, qword [rbp - 0x50]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp - 8], rcx
mov rax, qword [rax + 8]
mov qword [rbp], rax
lea rcx, [rbp + 0x10]
lea rdx, [rbp - 8]
sub rsp, 0x20
call fcn.1400ef6f0
mov dl, byte [rbp - 0x44]
add rsp, 0x20
lea rcx, [rbp + 0x10]
sub rsp, 0x20
call fcn.1400f25db
mov rax, qword [rbp - 0x60]
mov rcx, qword [rbp - 0x40]
add rsp, 0x20
mov rdx, qword [rbp + 0x10]
mov qword [rbp - 0x70], rdx
mov rax, qword [rax]
mov qword [rbp - 0x68], rax
sub rsp, 0x20
call fcn.14001a160
mov r8, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x68]
add rsp, 0x20
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1400ef6f0
mov rax, qword [rbp - 0x38]
mov rdx, qword [rbp - 0x40]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp - 0x18], rcx
mov rax, qword [rax + 8]
mov qword [rbp - 0x10], rax
lea rcx, [rbp - 0x18]
sub rsp, 0x20
call fcn.1400f26a0
mov rax, qword [rbp - 0x68]
add rsp, 0x20
cmp rax, 0
je 0x1400f2f40
mov rax, qword [rbp - 0x68]
mov rax, qword [rax]
or rax, rax
xor rax, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
and rcx, rdx
or rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jne 0x1400f2f40
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
jmp 0x1400f2f40
jmp 0x1400f2fa0
mov rax, qword [rbp - 0x28]
mov al, byte [rax]
cmp al, 0
je 0x1400f2f5e
jmp 0x1400f2fa0
mov al, byte [rbp - 0x41]
test al, 1
jne 0x1400f2fa0
mov ecx, 0xca0
mov edx, 0xd769
sub rsp, 0x20
call fcn.140068d74
add rsp, 0x20
mov cx, ax
mov rax, qword [rbp - 0x28]
mov word [rbp - 0x72], cx
cmp byte [rax], 0
jne 0x1400f2fa0
mov rcx, qword [rbp - 0x40]
mov ax, word [rbp - 0x72]
mov dl, al
sub rsp, 0x20
call fcn.1400e5104
add rsp, 0x20
lea rsp, [rbp + 0x20]
pop rbp
ret
xchg rbp, rax
xchg ecx, eax
jmp 0x1400f2d33