Function at 0x1401f6990
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
nop
push r8
mov qword [rsp], rbp
nop
mov qword [rsp - 8], rbx
sub rsp, 8
push rdx
mov qword [rsp], rsi
nop
push r11
mov qword [rsp], rdi
nop
mov qword [rsp - 8], r12
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], r13
push rcx
mov qword [rsp], r14
push r15
lea rbp, [rsp - 0x48]
sub rsp, 0x148
xchg rdx, rbp
mov rdi, rbp
xchg rbp, rdx
xor eax, eax
xchg r14, r15
mov r15, qword [rdi + 0x20]
xchg r14, r15
lea r13, [rdi + 0x20]
mov rdx, qword [rdx]
mov rsi, r8
xchg r14, rcx
mov qword [rbp - 0x60], rcx
xchg r14, rcx
xchg r8, rcx
mov rcx, qword [rdi + 8]
xchg r8, rcx
lea ebx, [rax + 1]
mov r10, qword [rdi + 0x10]
xchg r11, rsi
mov rsi, qword [rdi + 0x18]
xchg rsi, r11
mov rcx, qword [rdi + 0x28]
mov r15, qword [rdi + 0x30]
mov r12, qword [rdi + 0x38]
xchg r11, rdx
mov qword [rsp + 0x60], r11
xchg r11, rdx
mov qword [rsp + 0x68], r8
xchg r10, rdi
mov qword [rsp + 0x70], rdi
xchg rdi, r10
mov qword [rsp + 0x78], r11
xchg r13, r10
mov qword [rbp + 0xa8], r10
xchg r10, r13
mov qword [rbp - 0x58], rcx
mov qword [rbp - 0x50], r15
xchg r12, rdi
mov qword [rbp - 0x48], rdi
xchg rdi, r12
test r9, r9
je 0x1401f6ab8
xchg rbp, rax
mov rbp, qword [r9]
xchg rbp, rax
xchg r15, rax
mov qword [rsp + 0x20], r15
xchg r15, rax
mov rax, qword [r9 + 8]
mov qword [rsp + 0x28], rax
xchg r10, rax
mov r10, qword [r9 + 0x10]
xchg r10, rax
mov qword [rsp + 0x30], rax
xchg r11, rax
mov r11, qword [r9 + 0x18]
xchg r11, rax
jmp 0x1401f6ad1
mov qword [rsp + 0x28], rax
xchg r11, rax
mov qword [rsp + 0x30], r11
xchg r11, rax
xchg rbx, r9
mov qword [rsp + 0x20], r9
xchg r9, rbx
mov qword [rsp + 0x40], rdx
lea rdx, [rbp - 0x60]
mov qword [rsp + 0x48], r8
lea r8, [rsp + 0x20]
mov qword [rbp - 0x78], rcx
lea rcx, [rsp + 0x60]
xchg r9, rax
mov qword [rsp + 0x38], r9
xchg r9, rax
xchg r14, rdx
mov qword [rbp - 0x80], rdx
xchg rdx, r14
xchg r10, r15
mov qword [rsp + 0x50], r15
xchg r15, r10
mov qword [rbp - 0x70], r15
xchg r11, rsi
mov qword [rsp + 0x58], rsi
xchg rsi, r11
mov qword [rbp - 0x68], r12
call fcn.1401f87f0
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x60]
call 0x1401f5f20
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x40]
call fcn.1401f87f0
mov r12d, dword [rbp + 0xb0]
sub r12d, 2
test r12d, r12d
jle 0x1401f6ca2
movsxd r13, r12d
mov rcx, r13
rol rbx, cl
mov ecx, 0x3043776b
sub ecx, 0x1292aada
add ecx, 0x44ba8408
add ecx, 0x130115ea
sub ecx, 0x8bf88df
sub ecx, 0x2e1d21b2
sub ecx, 0x224a106
sub ecx, 0x3c6b1acc
nop dword [rax]
nop word [rax + rax]
mov rax, r13
lea r14, [rbp - 0x80]
sar rax, 6
lea r15, [rsp + 0x40]
lea rdi, [rsp + 0x60]
test qword [rsi + rax*8], rbx
pushf
mov eax, 0x5b1510b0
sub eax, 0x4c9bf90a
xor eax, 0x2f78b14d
add eax, 0x12a3b61f
xor eax, 0x2d844c22
xor eax, 0x133a72e6
add eax, 0x395ca3aa
sub eax, 0x85df082
sub eax, 0x3e1a16f6
popf
lea rsi, [rbp - 0x60]
cmove rax, rcx
add r14, rax
add r15, rax
sub rsi, rax
sub rdi, rax
xchg rsi, r9
mov rsi, r14
xchg r9, rsi
xchg r15, r13
mov r8, r13
xchg r13, r15
mov rdx, rsi
xchg rdi, rcx
mov rdi, rcx
xchg rcx, rdi
call fcn.1401f78b0
xchg r10, r9
mov r10, rsi
xchg r10, r9
xchg rdx, r8
mov rdx, rdi
xchg r8, rdx
mov rdx, r14
xchg r15, rcx
mov r15, rcx
xchg r15, rcx
call fcn.1401f7090
mov rsi, qword [rbp + 0xa0]
dec r12d
dec r13
ror rbx, 1
mov ecx, 0x69d13f41
sub ecx, 0x12a6416d
xor ecx, 0x3c706c35
xor ecx, 0x4b549c80
add ecx, 0x55a57152
sub ecx, 0x3613c01e
sub ecx, 0x23b222df
sub ecx, 0x1bed9b96
test r12d, r12d
jg 0x1401f6ba2
mov rdi, qword [rbp + 0x98]
xchg r13, r10
mov r10, qword [rbp + 0xa8]
xchg r10, r13
xchg rcx, rax
mov rcx, qword [rsi]
xchg rcx, rax
lea r14, [rbp - 0x80]
not rax
lea r15, [rsp + 0x40]
and eax, 1
lea rbx, [rbp - 0x60]
shl rax, 5
lea rsi, [rsp + 0x60]
add r14, rax
add r15, rax
sub rbx, rax
sub rsi, rax
xchg r13, r9
mov r13, r14
xchg r13, r9
xchg r9, r15
mov r8, r9
xchg r15, r9
xchg rdx, r9
mov r9, rbx
xchg rdx, r9
xchg r14, rsi
mov rcx, r14
xchg r14, rsi
call fcn.1401f78b0
xchg rcx, rbp
mov rbp, qword [rsp + 0x60]
xchg rbp, rcx
xor eax, eax
xchg rcx, r8
mov r9, r8
xchg rcx, r8
sub r9, qword [rsp + 0x40]
cmp r9, rcx
je 0x1401f6d21
seta al
xchg rsi, rdx
mov rsi, qword [rsp + 0x68]
xchg rsi, rdx
xchg rcx, r12
mov r12, rdx
xchg rcx, r12
mov qword [rsp + 0x20], r9
sub rcx, qword [rsp + 0x48]
sub rcx, rax
cmp rcx, rdx
je 0x1401f6d53
xor eax, eax
cmp rcx, rdx
seta al
xchg rbp, r8
mov rbp, qword [rsp + 0x70]
xchg rbp, r8
xchg rdx, r8
mov r8, rdx
xchg r8, rdx
mov qword [rsp + 0x28], rcx
sub rdx, qword [rsp + 0x50]
sub rdx, rax
cmp rdx, r8
je 0x1401f6d85
xor eax, eax
cmp rdx, r8
seta al
mov r10, qword [rsp + 0x78]
xchg r8, r10
mov r10, r8
xchg r8, r10
xchg rdx, r13
mov qword [rsp + 0x30], r13
xchg r13, rdx
sub r8, qword [rsp + 0x58]
sub r8, rax
cmp r8, r10
je 0x1401f6db7
xor eax, eax
cmp r8, r10
seta al
xchg r13, r8
mov qword [rsp + 0x38], r13
xchg r8, r13
test rax, rax
je 0x1401f6e71
movabs r10, 0xfffffffe2d1d35d8
xor r10, 0x6b39161d
add r10, 0x2ffbb927
sub r10, 0x3013de6e
sub r10, 0x2440f475
add r10, 0x4881dc04
add r10, 0x7fffffff
add r10, 0x15b31623
xor eax, eax
add r10, r9
cmp r10, r9
je 0x1401f6e17
setb al
lea r9, [rax - 1]
xchg r8, r10
mov qword [rsp + 0x20], r8
xchg r8, r10
add r9, rcx
cmp r9, rcx
je 0x1401f6e3a
xor eax, eax
cmp r9, rcx
setb al
lea rcx, [rax - 1]
xchg r9, r12
mov qword [rsp + 0x28], r12
xchg r12, r9
add rcx, rdx
cmp rcx, rdx
je 0x1401f6e5d
xor eax, eax
cmp rcx, rdx
setb al
dec rax
mov qword [rsp + 0x30], rcx
add rax, r8
xchg r8, rax
mov qword [rsp + 0x38], r8
xchg r8, rax
xchg rbx, r8
mov rbx, r8
xchg r8, rbx
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401fa7a0
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f95a0
mov r8, rdi
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401fa7a0
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f95a0
lea r8, [0x140004958]
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x20]
call fcn.1401f9930
xchg r13, r9
mov r8, r9
xchg r13, r9
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401fa7a0
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f95a0
mov r8, rsi
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401fa7a0
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f95a0
mov r9, rbx
mov r8, rsi
xchg rdx, r14
mov r14, rdx
xchg r14, rdx
xchg rcx, r15
mov r15, rcx
xchg rcx, r15
call fcn.1401f7090
lea rdx, [rsp + 0x20]
lea rcx, [rbp]
call fcn.1401fae80
lea rdx, [rbp]
lea rcx, [rbp - 0x40]
call fcn.1401f95a0
lea r8, [rbp - 0x40]
lea rdx, [rsp + 0x40]
lea rcx, [rbp]
call fcn.1401fa7a0
lea rdx, [rbp]
lea rcx, [rsp + 0x40]
call fcn.1401f95a0
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x40]
lea rcx, [rbp]
call fcn.1401fa7a0
lea rdx, [rbp]
lea rcx, [rbp - 0x40]
call fcn.1401f95a0
lea r8, [rbp - 0x40]
lea rdx, [rbp - 0x80]
lea rcx, [rbp]
call fcn.1401fa7a0
lea rdx, [rbp]
lea rcx, [rbp - 0x80]
call fcn.1401f95a0
xchg rdx, rcx
mov rdx, qword [rbp + 0x90]
xchg rdx, rcx
xchg r10, rax
mov r10, qword [rsp + 0x40]
xchg r10, rax
mov qword [rcx], rax
xchg rcx, rax
mov rcx, qword [rsp + 0x48]
xchg rcx, rax
mov qword [rcx + 8], rax
xchg r11, rax
mov r11, qword [rsp + 0x50]
xchg r11, rax
mov qword [rcx + 0x10], rax
xchg r14, rax
mov r14, qword [rsp + 0x58]
xchg r14, rax
mov qword [rcx + 0x18], rax
xchg r8, rax
mov r8, qword [rbp - 0x80]
xchg r8, rax
xchg rbp, rax
mov qword [rcx + 0x20], rbp
xchg rbp, rax
mov rax, qword [rbp - 0x78]
xchg r9, rax
mov qword [rcx + 0x28], r9
xchg r9, rax
mov rax, qword [rbp - 0x70]
xchg r9, rax
mov qword [rcx + 0x30], r9
xchg r9, rax
mov rax, qword [rbp - 0x68]
xchg rdx, rax
mov qword [rcx + 0x38], rdx
xchg rdx, rax
add rsp, 0x148
nop
mov r15, qword [rsp]
add rsp, 8
nop
xchg qword [rsp], r14
add rsp, 8
nop
mov r13, qword [rsp]
add rsp, 8
nop
mov r12, qword [rsp]
add rsp, 8
push rbx
push rbx
push rdx
push rbx
push rcx
push rax
xchg qword [rsp + 0x30], rdi
add rsp, 0x38
push rdx
xchg qword [rsp + 8], rsi
add rsp, 0x10
push rcx
push rax
push rdx
push rdx
push rax
push rax
xchg qword [rsp + 0x30], rbx
pop rax
pop rax
pop rdx
pop rdx
pop rax
pop rcx
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], rbp
nop
add rsp, 8
invalid
invalid
invalid