Function at 0x1401f5e50
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], r8
xchg rdx, r9
mov qword [rsp + 0x10], r9
xchg r9, rdx
xchg r9, rcx
mov qword [rsp + 8], r9
xchg rcx, r9
nop
sub rsp, 8
mov qword [rsp], rbp
nop
push 0x4b912738
mov qword [rsp], rbx
nop
mov qword [rsp - 8], rsi
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], rdi
push r12
nop
sub rsp, 8
mov qword [rsp], r13
nop
mov qword [rsp - 8], r14
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], r15
lea rbp, [rsp - 0x48]
sub rsp, 0x148
xchg rdi, rdx
mov rdx, rdi
xchg rdi, rdx
xor eax, eax
mov r14, qword [rdi + 0x20]
lea r13, [rdi + 0x20]
mov rdx, qword [rdx]
xchg r12, rsi
mov r12, r8
xchg r12, rsi
mov qword [rbp - 0x60], r14
mov r8, qword [rdi + 8]
lea ebx, [rax + 1]
xchg r10, r15
mov r15, qword [rdi + 0x10]
xchg r15, r10
xchg r10, r11
mov r10, qword [rdi + 0x18]
xchg r11, r10
mov rcx, qword [rdi + 0x28]
mov r15, qword [rdi + 0x30]
mov r12, qword [rdi + 0x38]
xchg rdx, r14
mov qword [rsp + 0x60], r14
xchg rdx, r14
xchg r8, rdx
mov qword [rsp + 0x68], rdx
xchg rdx, r8
xchg r10, r8
mov qword [rsp + 0x70], r8
xchg r10, r8
xchg r11, rdx
mov qword [rsp + 0x78], rdx
xchg r11, rdx
xchg r13, rcx
mov qword [rbp + 0xa8], rcx
xchg rcx, r13
mov qword [rbp - 0x58], rcx
xchg r15, rbx
mov qword [rbp - 0x50], rbx
xchg r15, rbx
mov qword [rbp - 0x48], r12
test r9, r9
je 0x1401f5f93
xchg r13, rax
mov r13, qword [r9]
xchg r13, rax
xchg rbx, rax
mov qword [rsp + 0x20], rbx
xchg rbx, rax
mov rax, qword [r9 + 8]
xchg rbx, rax
mov qword [rsp + 0x28], rbx
xchg rbx, rax
mov rax, qword [r9 + 0x10]
mov qword [rsp + 0x30], rax
mov rax, qword [r9 + 0x18]
jmp 0x1401f5fa8
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rax
xchg rbx, r9
mov qword [rsp + 0x20], r9
xchg rbx, r9
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 rcx, rax
mov qword [rsp + 0x38], rcx
xchg rcx, rax
mov qword [rbp - 0x80], r14
xchg r15, r10
mov qword [rsp + 0x50], r15
xchg r10, r15
mov qword [rbp - 0x70], r15
mov qword [rsp + 0x58], r11
xchg r12, r8
mov qword [rbp - 0x68], r8
xchg r8, r12
call fcn.1401f7d30
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x60]
call 0x1401f5390
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x40]
call fcn.1401f7d30
mov r12d, dword [rbp + 0xb0]
neg r12d
add r12d, 2
neg r12d
test r12d, r12d
jle 0x1401f617c
movsxd r13, r12d
mov rcx, r13
rol rbx, cl
mov ecx, 0x6c145448
sub ecx, 0x48066c5b
add ecx, 0x590f7f93
sub ecx, 0x3d36dfb3
add ecx, 0x2eb24ca9
sub ecx, 0x6d4d038c
add ecx, 0x4c1093be
xor ecx, 0x4d5c6488
nop dword [rax]
nop word [rax + rax]
xchg r13, rdx
mov rax, rdx
xchg rdx, r13
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, 0x6e0b75b0
sub eax, 0xad347a5
add eax, 0x9777fcf
xor eax, 0x304820b0
sub eax, 0x4648a71c
add eax, 0x3c62c6ac
sub eax, 0x3efcaa26
xor eax, 0x320586d9
sub eax, 0x2600840d
popf
lea rsi, [rbp - 0x60]
cmove rax, rcx
add r14, rax
add r15, rax
sub rsi, rax
sub rdi, rax
mov r9, r14
xchg r15, r8
mov r15, r8
xchg r8, r15
mov rdx, rsi
xchg rcx, r14
mov r14, rdi
xchg rcx, r14
call fcn.1401f6da0
xchg rbx, r9
mov rbx, rsi
xchg r9, rbx
mov r8, rdi
xchg rdx, r14
mov r14, rdx
xchg r14, rdx
xchg r15, rdi
mov rcx, rdi
xchg rdi, r15
call fcn.1401f6530
mov rsi, qword [rbp + 0xa0]
dec r12d
dec r13
ror rbx, 1
mov ecx, 0x28805119
xor ecx, 0x3cc407e9
xor ecx, 0x2857c40c
add ecx, 0x2efab5b2
xor ecx, 0x72c22f8c
sub ecx, 0x4552b2e
add ecx, 0x255f01aa
sub ecx, 0x3ad63d7e
test r12d, r12d
jg 0x1401f6079
xchg rsi, rdi
mov rsi, qword [rbp + 0x98]
xchg rsi, rdi
mov r13, qword [rbp + 0xa8]
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, 3
shl rax, 2
lea rsi, [rsp + 0x60]
add r14, rax
add r15, rax
sub rbx, rax
sub rsi, rax
mov r9, r14
xchg r8, r12
mov r12, r15
xchg r8, r12
xchg r12, rbx
mov rdx, r12
xchg rbx, r12
xchg rsi, rcx
mov rsi, rcx
xchg rsi, rcx
call fcn.1401f6da0
mov rcx, qword [rsp + 0x60]
xor eax, eax
xchg rcx, r14
mov r9, r14
xchg rcx, r14
sub r9, qword [rsp + 0x40]
cmp r9, rcx
je 0x1401f61f3
seta al
mov rdx, qword [rsp + 0x68]
xchg rcx, rdx
mov rdx, rcx
xchg rdx, rcx
mov qword [rsp + 0x20], r9
sub rcx, qword [rsp + 0x48]
sub rcx, rax
cmp rcx, rdx
je 0x1401f621f
xor eax, eax
cmp rcx, rdx
seta al
mov r8, qword [rsp + 0x70]
xchg r8, r14
mov rdx, r14
xchg r8, r14
xchg rbx, rcx
mov qword [rsp + 0x28], rbx
xchg rcx, rbx
sub rdx, qword [rsp + 0x50]
sub rdx, rax
cmp rdx, r8
je 0x1401f6251
xor eax, eax
cmp rdx, r8
seta al
xchg r11, r10
mov r11, qword [rsp + 0x78]
xchg r11, r10
mov r8, r10
xchg rdx, r15
mov qword [rsp + 0x30], r15
xchg rdx, r15
sub r8, qword [rsp + 0x58]
sub r8, rax
cmp r8, r10
je 0x1401f6283
xor eax, eax
cmp r8, r10
seta al
mov qword [rsp + 0x38], r8
test rax, rax
je 0x1401f6324
movabs r10, 0xfffffffe19630dc7
add r10, 0x46cf8e39
xor r10, 0x61ffc384
add r10, 0x7303069e
sub r10, 0x4e11d10
add r10, 0x7fffffff
add r10, 0x1010b31e
xor eax, eax
add r10, r9
cmp r10, r9
je 0x1401f62d6
setb al
lea r9, [rax - 1]
mov qword [rsp + 0x20], r10
add r9, rcx
cmp r9, rcx
je 0x1401f62f3
xor eax, eax
cmp r9, rcx
setb al
lea rcx, [rax - 1]
mov qword [rsp + 0x28], r9
add rcx, rdx
cmp rcx, rdx
je 0x1401f6310
xor eax, eax
cmp rcx, rdx
setb al
dec rax
mov qword [rsp + 0x30], rcx
add rax, r8
xchg r10, rax
mov qword [rsp + 0x38], r10
xchg r10, rax
xchg r10, rbx
mov r8, r10
xchg rbx, r10
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401f9cf0
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f8af0
xchg r8, rcx
mov rcx, rdi
xchg r8, rcx
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401f9cf0
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f8af0
lea r8, [0x140004958]
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x20]
call fcn.1401f8e50
mov r8, r13
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401f9cf0
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f8af0
xchg rcx, r8
mov rcx, rsi
xchg rcx, r8
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401f9cf0
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f8af0
xchg r9, r12
mov r12, rbx
xchg r9, r12
xchg r8, rsi
mov rsi, r8
xchg rsi, r8
xchg r11, r14
mov rdx, r11
xchg r14, r11
mov rcx, r15
call fcn.1401f6530
lea rdx, [rsp + 0x20]
lea rcx, [rbp]
call fcn.1401fa350
lea rdx, [rbp]
lea rcx, [rbp - 0x40]
call fcn.1401f8af0
lea r8, [rbp - 0x40]
lea rdx, [rsp + 0x40]
lea rcx, [rbp]
call fcn.1401f9cf0
lea rdx, [rbp]
lea rcx, [rsp + 0x40]
call fcn.1401f8af0
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x40]
lea rcx, [rbp]
call fcn.1401f9cf0
lea rdx, [rbp]
lea rcx, [rbp - 0x40]
call fcn.1401f8af0
lea r8, [rbp - 0x40]
lea rdx, [rbp - 0x80]
lea rcx, [rbp]
call fcn.1401f9cf0
lea rdx, [rbp]
lea rcx, [rbp - 0x80]
call fcn.1401f8af0
xchg r8, rcx
mov r8, qword [rbp + 0x90]
xchg r8, rcx
xchg r12, rax
mov r12, qword [rsp + 0x40]
xchg r12, rax
xchg r10, rax
mov qword [rcx], r10
xchg r10, rax
mov rax, qword [rsp + 0x48]
xchg r11, rax
mov qword [rcx + 8], r11
xchg r11, rax
mov rax, qword [rsp + 0x50]
mov qword [rcx + 0x10], rax
xchg rsi, rax
mov rsi, qword [rsp + 0x58]
xchg rsi, rax
xchg rdx, rax
mov qword [rcx + 0x18], rdx
xchg rdx, rax
mov rax, qword [rbp - 0x80]
xchg r9, rax
mov qword [rcx + 0x20], r9
xchg r9, rax
mov rax, qword [rbp - 0x78]
xchg rbp, rax
mov qword [rcx + 0x28], rbp
xchg rbp, rax
mov rax, qword [rbp - 0x70]
xchg r11, rax
mov qword [rcx + 0x30], r11
xchg r11, rax
mov rax, qword [rbp - 0x68]
mov qword [rcx + 0x38], rax
add rsp, 0x148
nop
add rsp, 8
xchg qword [rsp - 8], r15
nop
add rsp, 8
mov r14, qword [rsp - 8]
nop
add rsp, 8
mov r13, qword [rsp - 8]
push rdx
push rax
xchg qword [rsp + 0x10], r12
pop rax
pop rdx
add rsp, 8
nop
add rsp, 8
mov rdi, qword [rsp - 8]
nop
mov rsi, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rbx, qword [rsp - 8]
nop
add rsp, 8
xchg qword [rsp - 8], rbp
ret