Function at 0x1401f6850
Capabilities:
Encode data using xor

Disassembly:
xchg r11, r8
mov qword [rsp + 0x18], r11
xchg r11, r8
xchg r11, rdx
mov qword [rsp + 0x10], r11
xchg rdx, r11
xchg rcx, rsi
mov qword [rsp + 8], rsi
xchg rsi, rcx
push rbp
nop
mov qword [rsp - 8], rbx
sub rsp, 8
push rsi
nop
sub rsp, 8
mov qword [rsp], rdi
nop
sub rsp, 8
mov qword [rsp], r12
push r13
nop
sub rsp, 8
mov qword [rsp], r14
nop
sub rsp, 8
mov qword [rsp], r15
lea rbp, [rsp - 0x48]
sub rsp, 0x148
mov rdi, rdx
xor eax, eax
xchg r14, rbp
mov rbp, qword [rdi + 0x20]
xchg r14, rbp
lea r13, [rdi + 0x20]
mov rdx, qword [rdx]
xchg r8, rsi
mov r8, rsi
xchg r8, rsi
xchg r14, r13
mov qword [rbp - 0x60], r13
xchg r14, r13
mov r8, qword [rdi + 8]
lea ebx, [rax + 1]
xchg r12, r10
mov r12, qword [rdi + 0x10]
xchg r12, r10
mov r11, qword [rdi + 0x18]
mov rcx, qword [rdi + 0x28]
mov r15, qword [rdi + 0x30]
xchg r12, r14
mov r14, qword [rdi + 0x38]
xchg r14, r12
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], r8
xchg rcx, r10
mov qword [rsp + 0x70], rcx
xchg rcx, r10
xchg r11, rbx
mov qword [rsp + 0x78], rbx
xchg rbx, r11
mov qword [rbp + 0xa8], r13
mov qword [rbp - 0x58], rcx
xchg rbx, r15
mov qword [rbp - 0x50], rbx
xchg r15, rbx
xchg r8, r12
mov qword [rbp - 0x48], r8
xchg r8, r12
test r9, r9
je 0x1401f6981
mov rax, qword [r9]
xchg r10, rax
mov qword [rsp + 0x20], r10
xchg r10, rax
xchg rbp, rax
mov rbp, qword [r9 + 8]
xchg rbp, rax
mov qword [rsp + 0x28], rax
mov rax, qword [r9 + 0x10]
mov qword [rsp + 0x30], rax
xchg r8, rax
mov r8, qword [r9 + 0x18]
xchg r8, rax
jmp 0x1401f6990
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x40], rdx
lea rdx, [rbp - 0x60]
mov qword [rsp + 0x48], r8
lea r8, [rsp + 0x20]
xchg r10, rcx
mov qword [rbp - 0x78], r10
xchg rcx, r10
lea rcx, [rsp + 0x60]
xchg r13, rax
mov qword [rsp + 0x38], r13
xchg r13, rax
xchg r14, r13
mov qword [rbp - 0x80], r13
xchg r13, r14
xchg r10, r11
mov qword [rsp + 0x50], r11
xchg r11, r10
mov qword [rbp - 0x70], r15
xchg rbx, r11
mov qword [rsp + 0x58], rbx
xchg rbx, r11
mov qword [rbp - 0x68], r12
call fcn.1401f8680
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x60]
call fcn.1401f5db0
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x40]
call fcn.1401f8680
mov r12d, dword [rbp + 0xb0]
add r12d, 0xfffffffe
test r12d, r12d
jle 0x1401f6b4c
movsxd r13, r12d
xchg rbx, r13
mov rcx, rbx
xchg r13, rbx
rol rbx, cl
mov ecx, 0x6844c2e1
sub ecx, 0x3d5044c0
add ecx, 0x2e592bd0
xor ecx, 0x161191e
xor ecx, 0x6bce13f2
sub ecx, 0x33e2a2fd
nop dword [rax]
nop word [rax + rax]
xchg r8, rax
mov r8, r13
xchg r8, rax
lea r14, [rbp - 0x80]
sar rax, 5
sar rax, 1
lea r15, [rsp + 0x40]
lea rdi, [rsp + 0x60]
test qword [rsi + rax*8], rbx
pushf
mov eax, 0x5112a912
xor eax, 0x1caa448c
xor eax, 0x640ca2c4
add eax, 0x29e8cd69
sub eax, 0xc497248
xor eax, 0x7450ebf
sub eax, 0x4016a4c4
popf
lea rsi, [rbp - 0x60]
cmove rax, rcx
add r14, rax
add r15, rax
sub rsi, rax
sub rdi, rax
xchg r14, r9
mov r14, r9
xchg r9, r14
xchg r8, r15
mov r15, r8
xchg r15, r8
mov rdx, rsi
mov rcx, rdi
call fcn.1401f7760
xchg r9, r13
mov r13, rsi
xchg r13, r9
xchg rdi, r8
mov rdi, r8
xchg rdi, r8
mov rdx, r14
mov rcx, r15
call fcn.1401f6f30
mov rsi, qword [rbp + 0xa0]
dec r12d
dec r13
ror rbx, 1
mov ecx, 0x682a3b
add ecx, 0x373989c0
xor ecx, 0x1e54d52b
sub ecx, 0xc079e69
xor ecx, 0x33bf47e8
xor ecx, 0x2d027460
sub ecx, 0x350fbcf
test r12d, r12d
jg 0x1401f6a61
xchg rdi, r14
mov r14, qword [rbp + 0x98]
xchg r14, rdi
mov r13, qword [rbp + 0xa8]
xchg rdi, rax
mov rdi, qword [rsi]
xchg rdi, rax
lea r14, [rbp - 0x80]
not rax
lea r15, [rsp + 0x40]
and eax, 1
lea rbx, [rbp - 0x60]
shl rax, 1
shl rax, 3
shl rax, 1
lea rsi, [rsp + 0x60]
add r14, rax
add r15, rax
sub rbx, rax
sub rsi, rax
mov r9, r14
xchg r8, r15
mov r15, r8
xchg r8, r15
xchg rbx, r8
mov rdx, r8
xchg rbx, r8
xchg rcx, r12
mov r12, rsi
xchg r12, rcx
call fcn.1401f7760
xchg rcx, r8
mov r8, qword [rsp + 0x60]
xchg r8, rcx
xor eax, eax
xchg rcx, rdx
mov r9, rdx
xchg rdx, rcx
sub r9, qword [rsp + 0x40]
cmp r9, rcx
je 0x1401f6bcb
seta al
mov rdx, qword [rsp + 0x68]
xchg rcx, r14
mov r14, rdx
xchg rcx, r14
xchg r9, rdi
mov qword [rsp + 0x20], rdi
xchg rdi, r9
sub rcx, qword [rsp + 0x48]
sub rcx, rax
cmp rcx, rdx
je 0x1401f6bfd
xor eax, eax
cmp rcx, rdx
seta al
xchg r8, r9
mov r9, qword [rsp + 0x70]
xchg r9, r8
xchg r8, rdx
mov r8, rdx
xchg rdx, r8
mov qword [rsp + 0x28], rcx
sub rdx, qword [rsp + 0x50]
sub rdx, rax
cmp rdx, r8
je 0x1401f6c2f
xor eax, eax
cmp rdx, r8
seta al
xchg r8, r10
mov r8, qword [rsp + 0x78]
xchg r10, r8
xchg r10, r8
mov r10, r8
xchg r8, r10
mov qword [rsp + 0x30], rdx
sub r8, qword [rsp + 0x58]
sub r8, rax
cmp r8, r10
je 0x1401f6c61
xor eax, eax
cmp r8, r10
seta al
mov qword [rsp + 0x38], r8
test rax, rax
je 0x1401f6d02
movabs r10, 0xfffffffe0e0117ad
add r10, 0x362b343
xor r10, 0x5b7fcba1
sub r10, 0x1498875e
xor r10, 0x3d78d0f6
add r10, 0x7fffffff
xor r10, 0x7704552b
xor eax, eax
add r10, r9
cmp r10, r9
je 0x1401f6cb4
setb al
lea r9, [rax - 1]
mov qword [rsp + 0x20], r10
add r9, rcx
cmp r9, rcx
je 0x1401f6cd1
xor eax, eax
cmp r9, rcx
setb al
lea rcx, [rax - 1]
mov qword [rsp + 0x28], r9
add rcx, rdx
cmp rcx, rdx
je 0x1401f6cee
xor eax, eax
cmp rcx, rdx
setb al
dec rax
mov qword [rsp + 0x30], rcx
add rax, r8
xchg r13, rax
mov qword [rsp + 0x38], r13
xchg r13, rax
mov r8, rbx
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401fa620
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f9450
xchg r8, r14
mov r14, rdi
xchg r14, r8
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401fa620
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f9450
lea r8, [0x140004958]
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x20]
call fcn.1401f97d0
xchg r12, r13
mov r8, r12
xchg r12, r13
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401fa620
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f9450
xchg rsi, r8
mov rsi, r8
xchg rsi, r8
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401fa620
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f9450
xchg rbx, rdx
mov r9, rdx
xchg rdx, rbx
xchg rsi, r8
mov rsi, r8
xchg r8, rsi
xchg r9, r14
mov rdx, r9
xchg r14, r9
xchg rcx, r15
mov r15, rcx
xchg rcx, r15
call fcn.1401f6f30
lea rdx, [rsp + 0x20]
lea rcx, [rbp]
call fcn.1401fac90
lea rdx, [rbp]
lea rcx, [rbp - 0x40]
call fcn.1401f9450
lea r8, [rbp - 0x40]
lea rdx, [rsp + 0x40]
lea rcx, [rbp]
call fcn.1401fa620
lea rdx, [rbp]
lea rcx, [rsp + 0x40]
call fcn.1401f9450
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x40]
lea rcx, [rbp]
call fcn.1401fa620
lea rdx, [rbp]
lea rcx, [rbp - 0x40]
call fcn.1401f9450
lea r8, [rbp - 0x40]
lea rdx, [rbp - 0x80]
lea rcx, [rbp]
call fcn.1401fa620
lea rdx, [rbp]
lea rcx, [rbp - 0x80]
call fcn.1401f9450
mov rcx, qword [rbp + 0x90]
xchg rdx, rax
mov rdx, qword [rsp + 0x40]
xchg rdx, rax
mov qword [rcx], rax
xchg rbp, rax
mov rbp, qword [rsp + 0x48]
xchg rbp, rax
xchg rsi, rax
mov qword [rcx + 8], rsi
xchg rsi, rax
xchg rbp, rax
mov rbp, qword [rsp + 0x50]
xchg rbp, rax
mov qword [rcx + 0x10], rax
mov rax, qword [rsp + 0x58]
xchg r11, rax
mov qword [rcx + 0x18], r11
xchg r11, rax
xchg r8, rax
mov r8, qword [rbp - 0x80]
xchg r8, rax
xchg r13, rax
mov qword [rcx + 0x20], r13
xchg r13, rax
xchg r14, rax
mov r14, qword [rbp - 0x78]
xchg r14, rax
mov qword [rcx + 0x28], rax
xchg r11, rax
mov r11, qword [rbp - 0x70]
xchg r11, rax
mov qword [rcx + 0x30], rax
mov rax, qword [rbp - 0x68]
xchg rsi, rax
mov qword [rcx + 0x38], rsi
xchg rsi, rax
add rsp, 0x148
push rdx
push rax
push rcx
push rbx
push rcx
push rcx
push rax
push rbx
xchg qword [rsp + 0x40], r15
pop rbx
pop rax
pop rcx
pop rcx
pop rbx
pop rcx
pop rax
pop rdx
add rsp, 8
push rax
push rax
push rcx
push rcx
push rax
push rax
push rax
xchg qword [rsp + 0x38], r14
add rsp, 0x40
push rcx
xchg qword [rsp + 8], r13
pop rcx
add rsp, 8
push rdx
xchg qword [rsp + 8], r12
pop rdx
add rsp, 8
nop
mov rdi, qword [rsp]
add rsp, 8
nop
mov rsi, qword [rsp]
add rsp, 8
nop
mov rbx, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rbp, qword [rsp - 8]
nop
add rsp, 8
jmp qword [rsp - 8]