Function at 0x1400313d0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbx
push rsi
push rdi
nop
mov qword [rsp - 8], r12
sub rsp, 8
nop
mov qword [rsp - 8], r13
sub rsp, 8
nop
mov qword [rsp - 8], r14
sub rsp, 8
nop
mov qword [rsp - 8], r15
sub rsp, 8
sub rsp, 0x50
movaps xmmword [rsp + 0x40], xmm6
xchg rdx, rbx
mov rdi, rbx
xchg rbx, rdx
xchg r9, r12
mov r9, rcx
xchg r12, r9
xchg rdx, rsi
mov rsi, qword [rcx]
xchg rdx, rsi
xchg rdi, r14
mov rdi, r14
xchg rdi, r14
sub r14, rdx
xchg r13, rax
mov r13, qword [rcx + 8]
xchg r13, rax
sub rax, rdx
sar rax, 2
sar rax, 1
sar rax, 1
movabs rsi, 0xfffffff06b5d3f1
add rsi, 0x618481ea
sub rsi, 0x10af08b4
xor rsi, 0x18612f08
xor rsi, 0x5ea94531
add rsi, 0x3e4bee69
add rsi, 0x7fffffff
add rsi, 0x3070ea79
cmp rax, rsi
je 0x140031755
lea r8, [rax + 1]
xchg r12, r8
mov qword [rsp + 0x20], r12
xchg r8, r12
mov rcx, qword [rcx + 0x10]
sub rcx, rdx
sar rcx, 1
sar rcx, 1
sar rcx, 2
xchg rdx, rcx
mov rcx, rdx
xchg rcx, rdx
shr rdx, 1
mov rax, rsi
sub rax, rdx
cmp rcx, rax
ja 0x1400314d4
lea rsi, [rdx + rcx]
cmp rsi, r8
cmovb rsi, r8
mov qword [rsp + 0xa8], rsi
xchg r15, rdx
mov r15, rsi
xchg r15, rdx
xchg rcx, r12
mov r12, rcx
xchg rcx, r12
call fcn.1400538b0
xchg r13, r15
mov r13, rax
xchg r13, r15
xchg r10, rax
mov qword [rsp + 0x30], r10
xchg r10, rax
and r14, 0xfffffffffffffff0
lea r13, [r14 + rax]
lea rcx, [r13 + 0x10]
mov qword [rsp + 0x28], rcx
mov byte [r13], 0x2d
add byte [r13], 0x3e
xor byte [r13], 0x6e
add byte [r13], 0x17
add byte [r13], 0x39
xor byte [r13], 0x55
xor eax, eax
mov qword [r13 + 8], rax
xchg r8, rax
mov r8, qword [rsp + 0xa0]
xchg r8, rax
xchg r15, rax
movsd xmm6, qword [r15]
xchg r15, rax
movzx edx, byte [r13]
lea rcx, [r13 + 8]
call fcn.140054340
movsd qword [rsp + 0x98], xmm6
mov rax, qword [rsp + 0x98]
xchg r12, rax
mov qword [r13 + 8], r12
xchg r12, rax
mov byte [r13], 0x31
add byte [r13], 0x46
sub byte [r13], 0x58
xor byte [r13], 0x53
sub byte [r13], 0x18
add byte [r13], 0x25
xor byte [r13], 0x72
add byte [r13], 0x43
sub byte [r13], 0x67
xchg rdx, r13
mov qword [rsp + 0x98], rdx
xchg rdx, r13
xchg r9, r13
mov r13, qword [r12 + 8]
xchg r9, r13
mov rcx, qword [r12]
xchg r15, r9
mov rdx, r9
xchg r9, r15
cmp rdi, r9
jne 0x14003161d
cmp rcx, r9
je 0x1400316cb
xor r8d, r8d
nop dword [rax + rax]
movzx eax, byte [rcx]
mov byte [rdx], al
xchg r15, rax
mov r15, qword [rcx + 8]
xchg r15, rax
mov qword [rdx + 8], rax
mov byte [rcx], r8b
xchg r8, rsi
mov qword [rcx + 8], rsi
xchg rsi, r8
lea rdx, [rdx + 0x10]
neg rcx
add rcx, 0xfffffffffffffff0
neg rcx
cmp rcx, r9
jne 0x1400315e3
jmp 0x1400316cb
xor r8d, r8d
cmp rcx, rdi
je 0x140031657
nop dword [rax + rax]
movzx eax, byte [rcx]
mov byte [rdx], al
mov rax, qword [rcx + 8]
xchg r13, rax
mov qword [rdx + 8], r13
xchg r13, rax
mov byte [rcx], r8b
mov qword [rcx + 8], r8
lea rdx, [rdx + 0x10]
add rcx, 0x10
cmp rcx, rdi
jne 0x14003162e
mov qword [rsp + 0x98], r15
xchg rbx, rdx
mov rbx, qword [r12 + 8]
xchg rdx, rbx
cmp rdi, rdx
je 0x1400316cb
lea rcx, [rdi + 8]
sub r14, rdi
lea r9, [r14 + r15]
lea r10, [r14 + r15]
movzx eax, byte [rcx - 8]
mov byte [r10 + rcx + 8], al
mov rax, qword [rcx]
mov qword [r9 + rcx + 0x10], rax
mov byte [rcx - 8], 0x29
sub byte [rcx - 8], 0x22
add byte [rcx - 8], 0x3f
add byte [rcx - 8], 0x1c
sub byte [rcx - 8], 0x48
xor byte [rcx - 8], 0x3c
sub byte [rcx - 8], 0xe
add byte [rcx - 8], 0x56
sub byte [rcx - 8], 0x6e
mov qword [rcx], r8
lea rcx, [rcx + 0x10]
lea rax, [rcx - 8]
cmp rax, rdx
jne 0x140031682
xchg rsi, rdx
mov r9, rdx
xchg rdx, rsi
mov r8, qword [rsp + 0x20]
xchg r13, r15
mov rdx, r13
xchg r15, r13
xchg rsi, r12
mov rcx, rsi
xchg r12, rsi
call fcn.140052a50
xchg rdx, r13
mov rax, rdx
xchg r13, rdx
movaps xmm6, xmmword [rsp + 0x40]
add rsp, 0x50
push rdx
push rax
push rax
xchg qword [rsp + 0x18], r15
pop rax
pop rax
pop rdx
add rsp, 8
push rcx
push rcx
push rbx
push rdx
xchg qword [rsp + 0x20], r14
add rsp, 0x28
nop
mov r13, qword [rsp]
add rsp, 8
nop
mov r12, qword [rsp]
add rsp, 8
nop
mov rdi, qword [rsp]
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.14002f860
int3