Function at 0x1400311c0
Capabilities:
Encode data using xor

Disassembly:
xchg rcx, rbx
mov qword [rsp + 8], rbx
xchg rcx, rbx
nop
push 0x7561c69e
mov qword [rsp], rbx
nop
sub rsp, 8
mov qword [rsp], rsi
push rdi
push r12
nop
sub rsp, 8
mov qword [rsp], r13
push r14
nop
mov qword [rsp - 8], r15
sub rsp, 8
sub rsp, 0x30
mov rbx, rdx
xchg r14, r15
mov r15, rcx
xchg r15, r14
xchg rdx, r14
mov r14, qword [rcx]
xchg rdx, r14
xchg rdi, rbx
mov rsi, rdi
xchg rbx, rdi
sub rsi, rdx
xchg r13, rax
mov r13, qword [rcx + 8]
xchg r13, rax
sub rax, rdx
sar rax, 3
sar rax, 1
movabs rdi, 0xfffffff5183a3e6
add rdi, 0x19d9626b
xor rdi, 0x2e3885c6
add rdi, 0x22bd96bf
sub rdi, 0x1d9c77ea
xor rdi, 0x2325706c
xor rdi, 0x4129134b
add rdi, 0x50abfd47
add rdi, 0x7fffffff
xor rdi, 0x6c9416e
cmp rax, rdi
je 0x1400314de
lea r13, [rax + 1]
mov rcx, qword [rcx + 0x10]
sub rcx, rdx
sar rcx, 4
xchg r13, rcx
mov rdx, r13
xchg r13, rcx
shr rdx, 1
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
sub rax, rdx
cmp rcx, rax
ja 0x1400312b8
lea rdi, [rdx + rcx]
cmp rdi, r13
cmovb rdi, r13
mov qword [rsp + 0x88], rdi
xchg rdx, rbp
mov rbp, rdi
xchg rdx, rbp
xchg rbp, rcx
mov rbp, r14
xchg rcx, rbp
call fcn.1400538e0
xchg r15, rax
mov rax, r15
xchg r15, rax
xchg rdx, rax
mov qword [rsp + 0x28], rdx
xchg rdx, rax
and rsi, 0xfffffffffffffff0
lea r12, [rsi + rax]
lea rcx, [r12 + 0x10]
mov qword [rsp + 0x20], rcx
mov byte [r12], 0x71
xor byte [r12], 7
sub byte [r12], 0x56
xor byte [r12], 0xe
add byte [r12], 0x41
xor byte [r12], 0x2d
xor byte [r12], 3
sub byte [r12], 0x28
sub byte [r12], 0x19
lea rcx, [r12 + 8]
xor edx, edx
call fcn.14004bac0
nop
xchg r12, r13
mov qword [rsp + 0x78], r13
xchg r12, r13
xchg r9, r10
mov r10, qword [r14 + 8]
xchg r10, r9
xchg rbx, rax
mov rbx, qword [r14]
xchg rbx, rax
xchg rdx, rdi
mov rdi, r15
xchg rdi, rdx
cmp rbx, r9
jne 0x1400313a5
cmp rax, r9
je 0x140031459
xor r8d, r8d
nop dword [rax + rax]
movzx ecx, byte [rax]
mov byte [rdx], cl
mov rcx, qword [rax + 8]
mov qword [rdx + 8], rcx
mov byte [rax], r8b
mov qword [rax + 8], r8
lea rdx, [rdx + 0x10]
nop
sub rax, 0x493bbbee
add rax, 0x493bbbfe
cmp rax, r9
jne 0x140031372
jmp 0x140031459
xor r8d, r8d
cmp rax, rbx
je 0x1400313e7
nop dword [rax + rax]
movzx ecx, byte [rax]
mov byte [rdx], cl
xchg r11, rcx
mov r11, qword [rax + 8]
xchg rcx, r11
mov qword [rdx + 8], rcx
mov byte [rax], r8b
xchg r8, r14
mov qword [rax + 8], r14
xchg r8, r14
lea rdx, [rdx + 0x10]
sub rax, 0xfffffffffffffff0
cmp rax, rbx
jne 0x1400313b6
mov qword [rsp + 0x78], r15
mov rdx, qword [r14 + 8]
cmp rbx, rdx
je 0x140031459
lea rcx, [rbx + 8]
sub rsi, rbx
lea r9, [rsi + r15]
lea r10, [rsi + r15]
nop
movzx eax, byte [rcx - 8]
mov byte [r10 + rcx + 8], al
xchg r13, rax
mov r13, qword [rcx]
xchg r13, rax
xchg rbx, rax
mov qword [r9 + rcx + 0x10], rbx
xchg rbx, rax
mov byte [rcx - 8], 0x52
xor byte [rcx - 8], 0x21
sub byte [rcx - 8], 0x28
add byte [rcx - 8], 0x24
sub byte [rcx - 8], 0x5a
xor byte [rcx - 8], 0x32
sub byte [rcx - 8], 0x27
xchg r13, r8
mov qword [rcx], r13
xchg r13, r8
lea rcx, [rcx + 0x10]
lea rax, [rcx - 8]
cmp rax, rdx
jne 0x14003140a
mov r9, rdi
xchg r8, rcx
mov rcx, r13
xchg r8, rcx
mov rdx, r15
mov rcx, r14
call fcn.140052a50
mov rax, r12
add rsp, 0x30
nop
xchg qword [rsp], r15
add rsp, 8
nop
add rsp, 8
mov r14, qword [rsp - 8]
nop
add rsp, 8
mov r13, qword [rsp - 8]
push rax
push rbx
push rbx
push rax
push rbx
push rax
push rbx
push rdx
xchg qword [rsp + 0x40], r12
pop rdx
pop rbx
pop rax
pop rbx
pop rax
pop rbx
pop rbx
pop rax
add rsp, 8
push rcx
push rax
push rbx
push rax
push rax
push rbx
xchg qword [rsp + 0x30], rdi
pop rbx
pop rax
pop rax
pop rbx
pop rax
pop rcx
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], rsi
nop
xchg qword [rsp], rbx
add rsp, 8
nop
add rsp, 8
jmp qword [rsp - 8]
call fcn.14002f9e0
int3