Function at 0x1401f6290
Capabilities:
Encode data using xor

Disassembly:
xchg rdx, r8
mov qword [rsp + 0x18], rdx
xchg r8, rdx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
nop
push 0x12a2bced
mov qword [rsp], rbp
nop
mov qword [rsp - 8], rbx
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], rsi
nop
sub rsp, 8
mov qword [rsp], rdi
nop
sub rsp, 8
mov qword [rsp], r12
nop
mov qword [rsp - 8], r13
sub rsp, 8
push r14
nop
sub rsp, 8
mov qword [rsp], r15
lea rbp, [rsp - 0x48]
sub rsp, 0x148
mov rdi, rdx
xor eax, eax
mov r14, qword [rdi + 0x20]
lea r13, [rdi + 0x20]
mov rdx, qword [rdx]
xchg rsi, r15
mov r15, r8
xchg rsi, r15
xchg r14, r8
mov qword [rbp - 0x60], r8
xchg r14, r8
xchg r8, rdx
mov rdx, qword [rdi + 8]
xchg rdx, r8
lea ebx, [rax + 1]
mov r10, qword [rdi + 0x10]
xchg r11, rcx
mov rcx, qword [rdi + 0x18]
xchg r11, rcx
mov rcx, qword [rdi + 0x28]
xchg r15, r8
mov r8, qword [rdi + 0x30]
xchg r15, r8
xchg r12, r10
mov r10, qword [rdi + 0x38]
xchg r12, r10
xchg rdi, rdx
mov qword [rsp + 0x60], rdi
xchg rdi, rdx
mov qword [rsp + 0x68], r8
xchg r10, r14
mov qword [rsp + 0x70], r14
xchg r14, r10
mov qword [rsp + 0x78], r11
xchg r13, rcx
mov qword [rbp + 0xa8], rcx
xchg rcx, r13
xchg rcx, r9
mov qword [rbp - 0x58], r9
xchg r9, rcx
mov qword [rbp - 0x50], r15
xchg r12, rdx
mov qword [rbp - 0x48], rdx
xchg r12, rdx
test r9, r9
je 0x1401f63db
xchg r11, rax
mov r11, qword [r9]
xchg r11, rax
xchg r14, rax
mov qword [rsp + 0x20], r14
xchg r14, rax
mov rax, qword [r9 + 8]
xchg rcx, rax
mov qword [rsp + 0x28], rcx
xchg rcx, rax
mov rax, qword [r9 + 0x10]
xchg r10, rax
mov qword [rsp + 0x30], r10
xchg r10, rax
xchg rdi, rax
mov rdi, qword [r9 + 0x18]
xchg rdi, rax
jmp 0x1401f63ee
mov qword [rsp + 0x28], rax
xchg rbx, rax
mov qword [rsp + 0x30], rbx
xchg rbx, rax
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x40], rdx
lea rdx, [rbp - 0x60]
xchg r9, r8
mov qword [rsp + 0x48], r9
xchg r8, r9
lea r8, [rsp + 0x20]
mov qword [rbp - 0x78], rcx
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x38], rax
xchg r15, r14
mov qword [rbp - 0x80], r15
xchg r14, r15
mov qword [rsp + 0x50], r10
xchg r14, r15
mov qword [rbp - 0x70], r14
xchg r15, r14
xchg rdx, r11
mov qword [rsp + 0x58], rdx
xchg r11, rdx
xchg r12, rcx
mov qword [rbp - 0x68], rcx
xchg r12, rcx
call fcn.1401f81a0
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x60]
call fcn.1401f57f0
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x40]
call fcn.1401f81a0
mov r12d, dword [rbp + 0xb0]
sub r12d, 2
test r12d, r12d
jle 0x1401f65d0
movsxd r13, r12d
xchg r13, r10
mov rcx, r10
xchg r10, r13
rol rbx, cl
mov ecx, 0x26e0a7ab
add ecx, 0x1b5c17fe
sub ecx, 0x389207ef
xor ecx, 0x6cc112c9
sub ecx, 0x20e0be42
xor ecx, 0x448ae711
nop dword [rax]
nop word [rax + rax]
xchg rbp, rax
mov rbp, r13
xchg rbp, rax
lea r14, [rbp - 0x80]
sar rax, 2
sar rax, 2
sar rax, 1
sar rax, 1
lea r15, [rsp + 0x40]
lea rdi, [rsp + 0x60]
test qword [rsi + rax*8], rbx
pushf
mov eax, 0x221b4da2
add eax, 0x13b5ba9e
xor eax, 0x669075fd
xor eax, 0x74c782d
xor eax, 0x1ae5539d
sub eax, 0x47c0808f
add eax, 0x31524e60
xor eax, 0x387a23de
popf
lea rsi, [rbp - 0x60]
cmove rax, rcx
add r14, rax
add r15, rax
sub rsi, rax
sub rdi, rax
mov r9, r14
xchg r13, r8
mov r13, r15
xchg r8, r13
xchg r10, rdx
mov r10, rsi
xchg rdx, r10
xchg r14, rdi
mov rcx, r14
xchg rdi, r14
call fcn.1401f7240
xchg rsi, r9
mov rsi, r9
xchg r9, rsi
xchg rdi, r12
mov r8, r12
xchg r12, rdi
xchg rdx, r14
mov r14, rdx
xchg rdx, r14
xchg r15, rcx
mov r15, rcx
xchg r15, rcx
call fcn.1401f69d0
xchg r14, rsi
mov r14, qword [rbp + 0xa0]
xchg r14, rsi
dec r12d
dec r13
ror rbx, 1
mov ecx, 0x430eec8b
sub ecx, 0x3c556d25
add ecx, 0xed5fbb3
xor ecx, 0x31e86977
xor ecx, 0x4582612
sub ecx, 0x152a733b
xor ecx, 0xb14c161
test r12d, r12d
jg 0x1401f64c1
mov rdi, qword [rbp + 0x98]
xchg r11, r13
mov r11, qword [rbp + 0xa8]
xchg r13, r11
xchg rbp, rax
mov rbp, qword [rsi]
xchg rbp, rax
lea r14, [rbp - 0x80]
not rax
lea r15, [rsp + 0x40]
and eax, 1
lea rbx, [rbp - 0x60]
shl rax, 3
shl rax, 1
shl rax, 1
lea rsi, [rsp + 0x60]
add r14, rax
add r15, rax
sub rbx, rax
sub rsi, rax
xchg r9, r12
mov r12, r14
xchg r9, r12
xchg r8, r15
mov r15, r8
xchg r15, r8
xchg r12, rdx
mov r12, rbx
xchg r12, rdx
xchg rsi, rcx
mov rsi, rcx
xchg rcx, rsi
call fcn.1401f7240
xchg rcx, r12
mov r12, qword [rsp + 0x60]
xchg r12, rcx
xor eax, eax
xchg rcx, r10
mov r9, r10
xchg rcx, r10
sub r9, qword [rsp + 0x40]
cmp r9, rcx
je 0x1401f6655
seta al
xchg rdx, rbx
mov rbx, qword [rsp + 0x68]
xchg rdx, rbx
xchg rcx, r13
mov r13, rdx
xchg rcx, r13
xchg r9, rbx
mov qword [rsp + 0x20], rbx
xchg rbx, r9
sub rcx, qword [rsp + 0x48]
sub rcx, rax
cmp rcx, rdx
je 0x1401f668d
xor eax, eax
cmp rcx, rdx
seta al
xchg r8, r13
mov r13, qword [rsp + 0x70]
xchg r13, r8
xchg r8, rdi
mov rdx, rdi
xchg r8, rdi
mov qword [rsp + 0x28], rcx
sub rdx, qword [rsp + 0x50]
sub rdx, rax
cmp rdx, r8
je 0x1401f66bf
xor eax, eax
cmp rdx, r8
seta al
mov r10, qword [rsp + 0x78]
mov r8, r10
xchg r8, rdx
mov qword [rsp + 0x30], r8
xchg r8, rdx
sub r8, qword [rsp + 0x58]
sub r8, rax
cmp r8, r10
je 0x1401f66eb
xor eax, eax
cmp r8, r10
seta al
xchg r8, rdi
mov qword [rsp + 0x38], rdi
xchg rdi, r8
test rax, rax
je 0x1401f67a1
movabs r10, 0xfffffffe7d12e352
sub r10, 0x667cbdd3
add r10, 0x33fc8f7b
add r10, 0xcb17216
add r10, 0x19c0e1cc
xor r10, 0x5e34ef1f
add r10, 0x7fffffff
add r10, 0x50ce146d
xor eax, eax
add r10, r9
cmp r10, r9
je 0x1401f674b
setb al
lea r9, [rax - 1]
mov qword [rsp + 0x20], r10
add r9, rcx
cmp r9, rcx
je 0x1401f6768
xor eax, eax
cmp r9, rcx
setb al
lea rcx, [rax - 1]
xchg r11, r9
mov qword [rsp + 0x28], r11
xchg r9, r11
add rcx, rdx
cmp rcx, rdx
je 0x1401f678b
xor eax, eax
cmp rcx, rdx
setb al
dec rax
xchg rbx, rcx
mov qword [rsp + 0x30], rbx
xchg rcx, rbx
add rax, r8
mov qword [rsp + 0x38], rax
xchg rbx, r8
mov rbx, r8
xchg rbx, r8
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401fa110
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f8f40
xchg rdi, r9
mov r8, r9
xchg r9, rdi
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401fa110
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f8f40
lea r8, [0x140004958]
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x20]
call fcn.1401f9290
xchg r8, r13
mov r13, r8
xchg r13, r8
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401fa110
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f8f40
xchg r8, r12
mov r12, rsi
xchg r12, r8
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401fa110
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f8f40
xchg rbx, r11
mov r9, r11
xchg r11, rbx
xchg r12, r8
mov r12, rsi
xchg r8, r12
xchg rbx, rdx
mov rbx, r14
xchg rdx, rbx
xchg r8, rcx
mov r8, r15
xchg rcx, r8
call fcn.1401f69d0
lea rdx, [rsp + 0x20]
lea rcx, [rbp]
call fcn.1401fa760
lea rdx, [rbp]
lea rcx, [rbp - 0x40]
call fcn.1401f8f40
lea r8, [rbp - 0x40]
lea rdx, [rsp + 0x40]
lea rcx, [rbp]
call fcn.1401fa110
lea rdx, [rbp]
lea rcx, [rsp + 0x40]
call fcn.1401f8f40
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x40]
lea rcx, [rbp]
call fcn.1401fa110
lea rdx, [rbp]
lea rcx, [rbp - 0x40]
call fcn.1401f8f40
lea r8, [rbp - 0x40]
lea rdx, [rbp - 0x80]
lea rcx, [rbp]
call fcn.1401fa110
lea rdx, [rbp]
lea rcx, [rbp - 0x80]
call fcn.1401f8f40
xchg r9, rcx
mov r9, qword [rbp + 0x90]
xchg r9, rcx
mov rax, qword [rsp + 0x40]
xchg r9, rax
mov qword [rcx], r9
xchg r9, rax
xchg r14, rax
mov r14, qword [rsp + 0x48]
xchg r14, rax
xchg r13, rax
mov qword [rcx + 8], r13
xchg r13, rax
mov rax, qword [rsp + 0x50]
mov qword [rcx + 0x10], rax
xchg rdx, rax
mov rdx, qword [rsp + 0x58]
xchg rdx, rax
mov qword [rcx + 0x18], rax
mov rax, qword [rbp - 0x80]
mov qword [rcx + 0x20], rax
mov rax, qword [rbp - 0x78]
mov qword [rcx + 0x28], rax
mov rax, qword [rbp - 0x70]
xchg rbp, rax
mov qword [rcx + 0x30], rbp
xchg rbp, rax
mov rax, qword [rbp - 0x68]
mov qword [rcx + 0x38], rax
add rsp, 0x148
nop
add rsp, 8
mov r15, qword [rsp - 8]
nop
add rsp, 8
xchg qword [rsp - 8], r14
nop
add rsp, 8
mov r13, qword [rsp - 8]
push rcx
push rcx
push rdx
xchg qword [rsp + 0x18], r12
add rsp, 0x20
push rcx
push rdx
push rdx
push rcx
push rdx
push rdx
push rcx
push rbx
xchg qword [rsp + 0x40], rdi
pop rbx
pop rcx
pop rdx
pop rdx
pop rcx
pop rdx
pop rdx
pop rcx
add rsp, 8
nop
add rsp, 8
mov rsi, qword [rsp - 8]
nop
add rsp, 8
mov rbx, qword [rsp - 8]
push rcx
push rax
push rax
push rdx
push rax
xchg qword [rsp + 0x28], rbp
pop rax
pop rdx
pop rax
pop rax
pop rcx
add rsp, 8
nop
add rsp, 8
jmp qword [rsp - 8]