Function at 0x1400311a0
Capabilities:
Encode data using xor

Disassembly:
xchg rcx, rdx
mov qword [rsp + 8], rdx
xchg rcx, rdx
push rbx
nop
sub rsp, 8
mov qword [rsp], rsi
push rdi
push r12
nop
mov qword [rsp - 8], r13
sub rsp, 8
push r14
nop
sub rsp, 8
mov qword [rsp], r15
sub rsp, 0x30
mov rbx, rdx
mov r14, rcx
mov rdx, qword [rcx]
xchg rbx, rsi
mov rbx, rsi
xchg rbx, rsi
sub rsi, rdx
mov rax, qword [rcx + 8]
sub rax, rdx
sar rax, 1
sar rax, 3
movabs rdi, 0xfffffff7cade0c0
xor rdi, 0x4f417c97
add rdi, 0x4567ce6c
sub rdi, 0x3e0ff7aa
add rdi, 0xd3d7362
add rdi, 0x7fffffff
add rdi, 0x377e1985
cmp rax, rdi
je 0x1400314ab
lea r13, [rax + 1]
mov rcx, qword [rcx + 0x10]
sub rcx, rdx
sar rcx, 3
sar rcx, 1
mov rdx, rcx
shr rdx, 1
xchg rdi, r11
mov rax, r11
xchg r11, rdi
sub rax, rdx
cmp rcx, rax
ja 0x140031269
lea rdi, [rdx + rcx]
cmp rdi, r13
cmovb rdi, r13
xchg rdi, rbx
mov qword [rsp + 0x88], rbx
xchg rbx, rdi
xchg rdi, r11
mov rdx, r11
xchg rdi, r11
xchg rcx, r14
mov r14, rcx
xchg r14, rcx
call fcn.1400538b0
xchg r15, rax
mov rax, r15
xchg r15, rax
mov qword [rsp + 0x28], rax
and rsi, 0xfffffffffffffff0
lea r12, [rsi + rax]
lea rcx, [r12 + 0x10]
xchg rcx, rbx
mov qword [rsp + 0x20], rbx
xchg rcx, rbx
mov byte [r12], 0x19
add byte [r12], 0x5a
xor byte [r12], 0x7c
add byte [r12], 0x6d
sub byte [r12], 0x21
sub byte [r12], 0x1e
xor byte [r12], 0x34
xor byte [r12], 9
lea rcx, [r12 + 8]
xor edx, edx
call fcn.14004bc20
nop
mov qword [rsp + 0x78], r12
xchg r9, rbx
mov rbx, qword [r14 + 8]
xchg rbx, r9
mov rax, qword [r14]
xchg rbp, r15
mov rdx, rbp
xchg r15, rbp
cmp rbx, r9
jne 0x140031361
cmp rax, r9
je 0x14003141a
xor r8d, r8d
nop dword [rax + rax]
movzx ecx, byte [rax]
mov byte [rdx], cl
xchg r10, rcx
mov r10, qword [rax + 8]
xchg rcx, r10
xchg rcx, rsi
mov qword [rdx + 8], rsi
xchg rsi, rcx
mov byte [rax], r8b
xchg r8, rcx
mov qword [rax + 8], rcx
xchg rcx, r8
lea rdx, [rdx + 0x10]
nop
add rax, 0x43875efb
sub rax, 0x43875eeb
cmp rax, r9
jne 0x14003131c
jmp 0x14003141a
xor r8d, r8d
cmp rax, rbx
je 0x1400313a6
nop dword [rax + rax]
movzx ecx, byte [rax]
mov byte [rdx], cl
xchg rcx, r8
mov r8, qword [rax + 8]
xchg rcx, r8
mov qword [rdx + 8], rcx
mov byte [rax], r8b
mov qword [rax + 8], r8
lea rdx, [rdx + 0x10]
nop
add rax, 0x4fde3c33
sub rax, 0x4fde3c23
cmp rax, rbx
jne 0x140031372
xchg r12, r15
mov qword [rsp + 0x78], r12
xchg r12, r15
mov rdx, qword [r14 + 8]
cmp rbx, rdx
je 0x14003141a
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 rdx, rax
mov rdx, qword [rcx]
xchg rdx, rax
mov qword [r9 + rcx + 0x10], rax
mov byte [rcx - 8], 0x2b
xor byte [rcx - 8], 0x2f
xor byte [rcx - 8], 0x63
xor byte [rcx - 8], 0x2a
sub byte [rcx - 8], 0x25
xor byte [rcx - 8], 0x35
sub byte [rcx - 8], 0x1d
xchg r11, r8
mov qword [rcx], r11
xchg r8, r11
lea rcx, [rcx + 0x10]
lea rax, [rcx - 8]
cmp rax, rdx
jne 0x1400313cf
xchg r9, rdi
mov rdi, r9
xchg rdi, r9
xchg r13, r9
mov r8, r9
xchg r9, r13
xchg rdx, r15
mov r15, rdx
xchg rdx, r15
xchg rcx, rsi
mov rsi, r14
xchg rcx, rsi
call fcn.140052a50
xchg r12, rax
mov r12, rax
xchg r12, rax
add rsp, 0x30
nop
add rsp, 8
xchg qword [rsp - 8], r15
push rcx
push rax
xchg qword [rsp + 0x10], r14
pop rax
pop rcx
add rsp, 8
nop
mov r13, qword [rsp]
add rsp, 8
push rcx
push rax
push rcx
push rcx
push rbx
xchg qword [rsp + 0x28], r12
pop rbx
pop rcx
pop rcx
pop rax
pop rcx
add rsp, 8
push rdx
push rbx
push rdx
xchg qword [rsp + 0x18], rdi
pop rdx
pop rbx
pop rdx
add rsp, 8
nop
mov rsi, qword [rsp]
add rsp, 8
nop
mov rbx, qword [rsp]
add rsp, 8
nop
add rsp, 8
jmp qword [rsp - 8]
call fcn.14002f980
int3