Function at 0x1401f5e10
Capabilities:
Encode data using xor

Disassembly:
xchg r8, r15
mov qword [rsp + 0x18], r15
xchg r15, r8
mov qword [rsp + 0x10], rdx
xchg rcx, r15
mov qword [rsp + 8], r15
xchg rcx, r15
nop
mov qword [rsp - 8], rbp
sub rsp, 8
push rbx
nop
mov qword [rsp - 8], rsi
sub rsp, 8
push rdi
nop
sub rsp, 8
mov qword [rsp], r12
nop
push 0x4b9f5b82
mov qword [rsp], r13
nop
sub rsp, 8
mov qword [rsp], r14
nop
sub rsp, 8
mov qword [rsp], r15
lea rbp, [rsp - 0x48]
sub rsp, 0x148
xchg rcx, rdi
mov rcx, rdx
xchg rdi, rcx
xor eax, eax
mov r14, qword [rdi + 0x20]
lea r13, [rdi + 0x20]
mov rdx, qword [rdx]
xchg rsi, r12
mov r12, r8
xchg r12, rsi
xchg r13, r14
mov qword [rbp - 0x60], r13
xchg r13, r14
mov r8, qword [rdi + 8]
lea ebx, [rax + 1]
xchg r10, rbx
mov rbx, qword [rdi + 0x10]
xchg r10, rbx
xchg rbp, r11
mov rbp, qword [rdi + 0x18]
xchg rbp, r11
mov rcx, qword [rdi + 0x28]
xchg r8, r15
mov r8, qword [rdi + 0x30]
xchg r15, r8
xchg r12, r9
mov r9, qword [rdi + 0x38]
xchg r12, r9
xchg r12, rdx
mov qword [rsp + 0x60], r12
xchg r12, rdx
xchg rdi, r8
mov qword [rsp + 0x68], rdi
xchg rdi, r8
mov qword [rsp + 0x70], r10
mov qword [rsp + 0x78], r11
xchg rbx, r13
mov qword [rbp + 0xa8], rbx
xchg rbx, r13
mov qword [rbp - 0x58], rcx
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x48], r12
test r9, r9
je 0x1401f5f4a
mov rax, qword [r9]
xchg rdi, rax
mov qword [rsp + 0x20], rdi
xchg rdi, rax
xchg r15, rax
mov r15, qword [r9 + 8]
xchg r15, rax
xchg r11, rax
mov qword [rsp + 0x28], r11
xchg r11, rax
mov rax, qword [r9 + 0x10]
mov qword [rsp + 0x30], rax
mov rax, qword [r9 + 0x18]
jmp 0x1401f5f59
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x20], rbx
xchg r14, rdx
mov qword [rsp + 0x40], r14
xchg rdx, r14
lea rdx, [rbp - 0x60]
xchg r12, r8
mov qword [rsp + 0x48], r12
xchg r8, r12
lea r8, [rsp + 0x20]
xchg rcx, r12
mov qword [rbp - 0x78], r12
xchg r12, rcx
lea rcx, [rsp + 0x60]
xchg r13, rax
mov qword [rsp + 0x38], r13
xchg r13, rax
mov qword [rbp - 0x80], r14
mov qword [rsp + 0x50], r10
mov qword [rbp - 0x70], r15
xchg rdx, r11
mov qword [rsp + 0x58], rdx
xchg rdx, r11
mov qword [rbp - 0x68], r12
call fcn.1401f7cc0
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x60]
call 0x1401f5360
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x40]
call fcn.1401f7cc0
mov r12d, dword [rbp + 0xb0]
add r12d, 0xfffffffe
test r12d, r12d
jle 0x1401f6126
movsxd r13, r12d
xchg rdx, r13
mov rcx, rdx
xchg r13, rdx
rol rbx, cl
mov ecx, 0x64e46874
sub ecx, 0x20067aed
add ecx, 0x1e89c5c5
add ecx, 0x181b9162
xor ecx, 0x15a564b9
xor ecx, 0x6e262037
nop dword [rax]
nop word [rax + rax]
xchg r8, r13
mov rax, r8
xchg r13, r8
lea r14, [rbp - 0x80]
sar rax, 1
sar rax, 2
sar rax, 3
lea r15, [rsp + 0x40]
lea rdi, [rsp + 0x60]
test qword [rsi + rax*8], rbx
pushf
mov eax, 0x24926d7d
sub eax, 0x1de40cb5
xor eax, 0x1ad0241a
xor eax, 0x4680c1c6
xor eax, 0x423a2de4
add eax, 0x5bed2cb4
sub eax, 0x5f0cb661
sub eax, 0x15a51f43
popf
lea rsi, [rbp - 0x60]
cmove rax, rcx
add r14, rax
add r15, rax
sub rsi, rax
sub rdi, rax
mov r9, r14
mov r8, r15
mov rdx, rsi
mov rcx, rdi
call fcn.1401f6d80
xchg r9, rsi
mov rsi, r9
xchg r9, rsi
xchg r13, rdi
mov r8, r13
xchg r13, rdi
xchg rdx, r14
mov r14, rdx
xchg rdx, r14
xchg r14, r15
mov rcx, r14
xchg r14, r15
call fcn.1401f6540
xchg r13, rsi
mov r13, qword [rbp + 0xa0]
xchg r13, rsi
dec r12d
dec r13
ror rbx, 1
mov ecx, 0xb32ee55
add ecx, 0x9508663
add ecx, 0x5fae1275
sub ecx, 0x5c1b311e
xor ecx, 0x6e0437df
sub ecx, 0x5dd4a71d
xor ecx, 0x183dba93
test r12d, r12d
jg 0x1401f602a
xchg r14, rdi
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, 2
shl rax, 3
lea rsi, [rsp + 0x60]
add r14, rax
add r15, rax
sub rbx, rax
sub rsi, rax
xchg rsi, r9
mov rsi, r14
xchg rsi, r9
xchg r15, r12
mov r8, r12
xchg r15, r12
xchg r9, rbx
mov rdx, r9
xchg r9, rbx
xchg r11, rsi
mov rcx, r11
xchg r11, rsi
call fcn.1401f6d80
xchg rcx, r13
mov r13, qword [rsp + 0x60]
xchg r13, rcx
xor eax, eax
mov r9, rcx
sub r9, qword [rsp + 0x40]
cmp r9, rcx
je 0x1401f61a3
seta al
xchg rdx, rbx
mov rbx, qword [rsp + 0x68]
xchg rdx, rbx
xchg rcx, r11
mov r11, rdx
xchg rcx, r11
mov qword [rsp + 0x20], r9
sub rcx, qword [rsp + 0x48]
sub rcx, rax
cmp rcx, rdx
je 0x1401f61d5
xor eax, eax
cmp rcx, rdx
seta al
xchg r8, r14
mov r14, qword [rsp + 0x70]
xchg r8, r14
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 0x1401f6207
xor eax, eax
cmp rdx, r8
seta al
xchg r10, r8
mov r8, qword [rsp + 0x78]
xchg r10, r8
xchg r10, rbp
mov r8, rbp
xchg r10, rbp
xchg rcx, rdx
mov qword [rsp + 0x30], rcx
xchg rdx, rcx
sub r8, qword [rsp + 0x58]
sub r8, rax
cmp r8, r10
je 0x1401f623f
xor eax, eax
cmp r8, r10
seta al
xchg rdi, r8
mov qword [rsp + 0x38], rdi
xchg r8, rdi
test rax, rax
je 0x1401f630d
movabs r10, 0xfffffffe58938b34
sub r10, 0x551d4a00
xor r10, 0x3e473ed2
xor r10, 0x45049676
sub r10, 0x62549a4d
add r10, 0x13f98599
add r10, 0x8a0066
sub r10, 0x6f129ed
add r10, 0x7fffffff
xor r10, 0x5c8c577b
xor eax, eax
add r10, r9
cmp r10, r9
je 0x1401f62ad
setb al
lea r9, [rax - 1]
xchg rdx, r10
mov qword [rsp + 0x20], rdx
xchg r10, rdx
add r9, rcx
cmp r9, rcx
je 0x1401f62d0
xor eax, eax
cmp r9, rcx
setb al
lea rcx, [rax - 1]
xchg r9, rdi
mov qword [rsp + 0x28], rdi
xchg r9, rdi
add rcx, rdx
cmp rcx, rdx
je 0x1401f62f3
xor eax, eax
cmp rcx, rdx
setb al
dec rax
xchg r8, rcx
mov qword [rsp + 0x30], r8
xchg r8, rcx
add rax, r8
xchg r10, rax
mov qword [rsp + 0x38], r10
xchg r10, rax
mov r8, rbx
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401f9d20
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f8a60
xchg rdi, r8
mov rdi, r8
xchg r8, rdi
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401f9d20
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f8a60
lea r8, [0x140004958]
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x20]
call fcn.1401f8e20
xchg r13, r8
mov r13, r8
xchg r13, r8
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401f9d20
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f8a60
xchg r8, r13
mov r13, rsi
xchg r13, r8
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401f9d20
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f8a60
xchg r9, rbx
mov rbx, r9
xchg r9, rbx
xchg rsi, r8
mov rsi, r8
xchg r8, rsi
xchg rdx, r14
mov r14, rdx
xchg rdx, r14
xchg rcx, r15
mov r15, rcx
xchg rcx, r15
call fcn.1401f6540
lea rdx, [rsp + 0x20]
lea rcx, [rbp]
call fcn.1401fa390
lea rdx, [rbp]
lea rcx, [rbp - 0x40]
call fcn.1401f8a60
lea r8, [rbp - 0x40]
lea rdx, [rsp + 0x40]
lea rcx, [rbp]
call fcn.1401f9d20
lea rdx, [rbp]
lea rcx, [rsp + 0x40]
call fcn.1401f8a60
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x40]
lea rcx, [rbp]
call fcn.1401f9d20
lea rdx, [rbp]
lea rcx, [rbp - 0x40]
call fcn.1401f8a60
lea r8, [rbp - 0x40]
lea rdx, [rbp - 0x80]
lea rcx, [rbp]
call fcn.1401f9d20
lea rdx, [rbp]
lea rcx, [rbp - 0x80]
call fcn.1401f8a60
mov rcx, qword [rbp + 0x90]
mov rax, qword [rsp + 0x40]
mov qword [rcx], rax
mov rax, qword [rsp + 0x48]
xchg rdx, rax
mov qword [rcx + 8], rdx
xchg rdx, rax
xchg rbx, rax
mov rbx, qword [rsp + 0x50]
xchg rbx, rax
mov qword [rcx + 0x10], rax
mov rax, qword [rsp + 0x58]
xchg r10, rax
mov qword [rcx + 0x18], r10
xchg r10, rax
xchg r13, rax
mov r13, qword [rbp - 0x80]
xchg r13, rax
xchg r9, rax
mov qword [rcx + 0x20], r9
xchg r9, rax
mov rax, qword [rbp - 0x78]
xchg rsi, rax
mov qword [rcx + 0x28], rsi
xchg rsi, rax
mov rax, qword [rbp - 0x70]
mov qword [rcx + 0x30], rax
xchg r13, rax
mov r13, qword [rbp - 0x68]
xchg r13, rax
xchg rsi, rax
mov qword [rcx + 0x38], rsi
xchg rsi, rax
add rsp, 0x148
nop
mov r15, qword [rsp]
add rsp, 8
push rdx
push rdx
push rbx
push rcx
xchg qword [rsp + 0x20], r14
add rsp, 0x28
push rbx
push rax
push rcx
push rdx
push rdx
xchg qword [rsp + 0x28], r13
pop rdx
pop rdx
pop rcx
pop rax
pop rbx
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], r12
push rcx
push rbx
xchg qword [rsp + 0x10], rdi
add rsp, 0x18
push rcx
push rax
xchg qword [rsp + 0x10], rsi
pop rax
pop rcx
add rsp, 8
push rcx
push rcx
push rax
push rax
push rax
push rcx
push rax
push rcx
xchg qword [rsp + 0x40], rbx
add rsp, 0x48
nop
xchg qword [rsp], rbp
add rsp, 8
nop
add rsp, 8
jmp qword [rsp - 8]