Function at 0x1401f68b0
Capabilities:
Encode data using xor

Disassembly:
xchg rdx, r8
mov qword [rsp + 0x18], rdx
xchg r8, rdx
xchg r15, rdx
mov qword [rsp + 0x10], r15
xchg rdx, r15
mov qword [rsp + 8], rcx
nop
mov qword [rsp - 8], rbp
sub rsp, 8
push rbx
nop
mov qword [rsp - 8], rsi
sub rsp, 8
nop
mov qword [rsp - 8], rdi
sub rsp, 8
nop
mov qword [rsp - 8], r12
sub rsp, 8
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 r9, rdx
mov rdi, r9
xchg r9, rdx
xor eax, eax
mov r14, qword [rdi + 0x20]
lea r13, [rdi + 0x20]
mov rdx, qword [rdx]
xchg rsi, r8
mov r8, rsi
xchg rsi, r8
xchg rbx, r14
mov qword [rbp - 0x60], rbx
xchg rbx, r14
xchg r8, r13
mov r13, qword [rdi + 8]
xchg r13, r8
lea ebx, [rax + 1]
xchg rdx, r10
mov rdx, qword [rdi + 0x10]
xchg r10, rdx
mov r11, qword [rdi + 0x18]
mov rcx, qword [rdi + 0x28]
xchg r15, r13
mov r13, qword [rdi + 0x30]
xchg r13, r15
mov r12, qword [rdi + 0x38]
xchg rcx, rdx
mov qword [rsp + 0x60], rcx
xchg rcx, rdx
mov qword [rsp + 0x68], r8
xchg r10, r8
mov qword [rsp + 0x70], r8
xchg r10, r8
xchg r11, rbx
mov qword [rsp + 0x78], rbx
xchg rbx, r11
xchg r8, r13
mov qword [rbp + 0xa8], r8
xchg r8, r13
xchg rcx, r9
mov qword [rbp - 0x58], r9
xchg r9, rcx
mov qword [rbp - 0x50], r15
xchg r11, r12
mov qword [rbp - 0x48], r11
xchg r12, r11
test r9, r9
je 0x1401f6a00
xchg rbx, rax
mov rbx, qword [r9]
xchg rbx, rax
xchg r13, rax
mov qword [rsp + 0x20], r13
xchg r13, rax
xchg rdi, rax
mov rdi, qword [r9 + 8]
xchg rdi, rax
mov qword [rsp + 0x28], rax
mov rax, qword [r9 + 0x10]
mov qword [rsp + 0x30], rax
mov rax, qword [r9 + 0x18]
jmp 0x1401f6a13
xchg rsi, rax
mov qword [rsp + 0x28], rsi
xchg rsi, 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]
mov qword [rbp - 0x78], rcx
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x38], rax
xchg r11, r14
mov qword [rbp - 0x80], r11
xchg r14, r11
xchg r10, r14
mov qword [rsp + 0x50], r14
xchg r10, r14
xchg r13, r15
mov qword [rbp - 0x70], r13
xchg r15, r13
mov qword [rsp + 0x58], r11
mov qword [rbp - 0x68], r12
call fcn.1401f8780
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x60]
call fcn.1401f5e00
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x40]
call fcn.1401f8780
mov r12d, dword [rbp + 0xb0]
neg r12d
add r12d, 2
neg r12d
test r12d, r12d
jle 0x1401f6bbe
movsxd r13, r12d
mov rcx, r13
rol rbx, cl
mov ecx, 0xd794333
add ecx, 0xefb6e33
add ecx, 0x4a3bff1e
xor ecx, 0x11704686
xor ecx, 0x89431cf
sub ecx, 0x7f54c7ad
nop dword [rax]
nop word [rax + rax]
xchg r13, rdx
mov rax, rdx
xchg r13, rdx
lea r14, [rbp - 0x80]
sar rax, 1
sar rax, 4
sar rax, 1
lea r15, [rsp + 0x40]
lea rdi, [rsp + 0x60]
test qword [rsi + rax*8], rbx
pushf
mov eax, 0x12317e94
add eax, 0x824e187
add eax, 0x3c484a90
add eax, 0xc7cca36
sub eax, 0x3ead8a79
xor eax, 0x10bc47fb
xor eax, 0x34d1ad93
popf
lea rsi, [rbp - 0x60]
cmove rax, rcx
add r14, rax
add r15, rax
sub rsi, rax
sub rdi, rax
xchg r9, r14
mov r14, r9
xchg r14, r9
mov r8, r15
xchg rdx, rcx
mov rcx, rsi
xchg rdx, rcx
mov rcx, rdi
call fcn.1401f77e0
mov r9, rsi
xchg rdi, r15
mov r8, r15
xchg r15, rdi
mov rdx, r14
mov rcx, r15
call fcn.1401f6f80
mov rsi, qword [rbp + 0xa0]
dec r12d
dec r13
ror rbx, 1
mov ecx, 0x4776c3a7
sub ecx, 0x17359990
xor ecx, 0x3b22239
xor ecx, 0x733e53bd
sub ecx, 0x20942513
xor ecx, 0x203936a0
test r12d, r12d
jg 0x1401f6ada
xchg rdi, r9
mov r9, qword [rbp + 0x98]
xchg r9, rdi
mov r13, qword [rbp + 0xa8]
mov rax, qword [rsi]
lea r14, [rbp - 0x80]
not rax
lea r15, [rsp + 0x40]
and eax, 1
lea rbx, [rbp - 0x60]
shl rax, 4
shl rax, 1
lea rsi, [rsp + 0x60]
add r14, rax
add r15, rax
sub rbx, rax
sub rsi, rax
xchg rdi, r14
mov r9, rdi
xchg r14, rdi
xchg r15, r8
mov r15, r8
xchg r8, r15
xchg r8, rbx
mov rdx, r8
xchg r8, rbx
xchg r9, rcx
mov r9, rsi
xchg rcx, r9
call fcn.1401f77e0
mov rcx, qword [rsp + 0x60]
xor eax, eax
xchg r12, rcx
mov r9, r12
xchg rcx, r12
sub r9, qword [rsp + 0x40]
cmp r9, rcx
je 0x1401f6c36
seta al
xchg rdx, rbp
mov rbp, qword [rsp + 0x68]
xchg rbp, rdx
xchg r14, rdx
mov rcx, r14
xchg r14, rdx
xchg rcx, r9
mov qword [rsp + 0x20], rcx
xchg rcx, r9
sub rcx, qword [rsp + 0x48]
sub rcx, rax
cmp rcx, rdx
je 0x1401f6c6e
xor eax, eax
cmp rcx, rdx
seta al
mov r8, qword [rsp + 0x70]
xchg rdx, r8
mov r8, rdx
xchg rdx, r8
mov qword [rsp + 0x28], rcx
sub rdx, qword [rsp + 0x50]
sub rdx, rax
cmp rdx, r8
je 0x1401f6c9a
xor eax, eax
cmp rdx, r8
seta al
mov r10, qword [rsp + 0x78]
xchg r10, r8
mov r10, r8
xchg r10, r8
xchg rcx, rdx
mov qword [rsp + 0x30], rcx
xchg rcx, rdx
sub r8, qword [rsp + 0x58]
sub r8, rax
cmp r8, r10
je 0x1401f6ccc
xor eax, eax
cmp r8, r10
seta al
mov qword [rsp + 0x38], r8
test rax, rax
je 0x1401f6d7c
movabs r10, 0xfffffffe707d73ad
sub r10, 0x17c68433
sub r10, 0x3edcf489
add r10, 0x2d946564
add r10, 0x232f1874
sub r10, 0x5c50da78
add r10, 0x7fffffff
add r10, 0x71b35ddf
xor eax, eax
add r10, r9
cmp r10, r9
je 0x1401f6d26
setb al
lea r9, [rax - 1]
xchg r10, r11
mov qword [rsp + 0x20], r11
xchg r10, r11
add r9, rcx
cmp r9, rcx
je 0x1401f6d49
xor eax, eax
cmp r9, rcx
setb al
lea rcx, [rax - 1]
mov qword [rsp + 0x28], r9
add rcx, rdx
cmp rcx, rdx
je 0x1401f6d66
xor eax, eax
cmp rcx, rdx
setb al
dec rax
xchg rcx, r12
mov qword [rsp + 0x30], r12
xchg rcx, r12
add rax, r8
mov qword [rsp + 0x38], rax
xchg r8, rbx
mov rbx, r8
xchg r8, rbx
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401fa780
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f9540
xchg r8, rdi
mov rdi, r8
xchg r8, rdi
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401fa780
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f9540
lea r8, [0x140004958]
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x20]
call fcn.1401f98f0
xchg r8, r13
mov r13, r8
xchg r8, r13
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401fa780
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f9540
xchg r8, r14
mov r14, rsi
xchg r8, r14
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.1401fa780
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.1401f9540
xchg r8, rbx
mov r9, r8
xchg rbx, r8
xchg rsi, r8
mov rsi, r8
xchg r8, rsi
xchg r11, rdx
mov r11, r14
xchg r11, rdx
xchg r15, rcx
mov r15, rcx
xchg r15, rcx
call fcn.1401f6f80
lea rdx, [rsp + 0x20]
lea rcx, [rbp]
call fcn.1401fadd0
lea rdx, [rbp]
lea rcx, [rbp - 0x40]
call fcn.1401f9540
lea r8, [rbp - 0x40]
lea rdx, [rsp + 0x40]
lea rcx, [rbp]
call fcn.1401fa780
lea rdx, [rbp]
lea rcx, [rsp + 0x40]
call fcn.1401f9540
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x40]
lea rcx, [rbp]
call fcn.1401fa780
lea rdx, [rbp]
lea rcx, [rbp - 0x40]
call fcn.1401f9540
lea r8, [rbp - 0x40]
lea rdx, [rbp - 0x80]
lea rcx, [rbp]
call fcn.1401fa780
lea rdx, [rbp]
lea rcx, [rbp - 0x80]
call fcn.1401f9540
mov rcx, qword [rbp + 0x90]
mov rax, qword [rsp + 0x40]
mov qword [rcx], rax
mov rax, qword [rsp + 0x48]
xchg r15, rax
mov qword [rcx + 8], r15
xchg r15, rax
mov rax, qword [rsp + 0x50]
xchg rbp, rax
mov qword [rcx + 0x10], rbp
xchg rbp, rax
mov rax, qword [rsp + 0x58]
xchg rdx, rax
mov qword [rcx + 0x18], rdx
xchg rdx, rax
mov rax, qword [rbp - 0x80]
xchg r8, rax
mov qword [rcx + 0x20], r8
xchg r8, rax
mov rax, qword [rbp - 0x78]
mov qword [rcx + 0x28], rax
mov rax, qword [rbp - 0x70]
mov qword [rcx + 0x30], rax
xchg r15, rax
mov r15, qword [rbp - 0x68]
xchg r15, rax
mov qword [rcx + 0x38], rax
add rsp, 0x148
nop
mov r15, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r14, qword [rsp - 8]
nop
mov r13, qword [rsp]
add rsp, 8
push rbx
push rbx
push rdx
push rbx
push rdx
push rbx
push rdx
push rcx
xchg qword [rsp + 0x40], r12
add rsp, 0x48
nop
add rsp, 8
mov rdi, qword [rsp - 8]
nop
add rsp, 8
mov rsi, qword [rsp - 8]
nop
xchg qword [rsp], rbx
add rsp, 8
nop
xchg qword [rsp], rbp
add rsp, 8
ret