Function at 0x140031d90
Capabilities:
Encode data using xor

Disassembly:
xchg r10, rcx
mov qword [rsp + 8], r10
xchg rcx, r10
nop
push 0x467920ff
mov qword [rsp], rbx
push rsi
nop
sub rsp, 8
mov qword [rsp], rdi
nop
sub rsp, 8
mov qword [rsp], r12
push r13
push r14
push r15
sub rsp, 0x40
mov rbx, r8
xchg rsi, r15
mov r15, rdx
xchg r15, rsi
mov r13, rcx
xchg r12, rdx
mov r12, qword [rcx]
xchg rdx, r12
xchg rsi, r15
mov rsi, r15
xchg rsi, r15
sub r15, rdx
mov rax, qword [rcx + 8]
sub rax, rdx
sar rax, 3
sar rax, 1
movabs r14, 0xfffffff2d4d46af
add r14, 0x1ceb14d3
add r14, 0xa6e4f18
add r14, 0x1362e0eb
sub r14, 0x7172e15
add r14, 0x1bea1ad2
xor r14, 0x76af1fd3
add r14, 0x7fffffff
add r14, 0x758c986f
cmp rax, r14
je 0x1400320dc
lea r8, [rax + 1]
mov qword [rsp + 0x28], r8
mov rcx, qword [rcx + 0x10]
sub rcx, rdx
sar rcx, 1
sar rcx, 3
xchg rbx, rdx
mov rbx, rcx
xchg rbx, rdx
shr rdx, 1
mov rax, r14
sub rax, rdx
cmp rcx, rax
ja 0x140031e7c
lea r14, [rdx + rcx]
cmp r14, r8
cmovb r14, r8
xchg r12, r14
mov qword [rsp + 0x20], r12
xchg r14, r12
xchg rdx, r14
mov r14, rdx
xchg r14, rdx
xchg r13, rcx
mov r13, rcx
xchg r13, rcx
call fcn.140053780
xchg r12, rax
mov rax, r12
xchg r12, rax
mov qword [rsp + 0x38], rax
and r15, 0xfffffffffffffff0
add rax, r15
xchg r14, rax
mov qword [rsp + 0x88], r14
xchg r14, rax
lea rcx, [rax + 0x10]
xchg r15, rcx
mov qword [rsp + 0x30], r15
xchg rcx, r15
mov byte [rax], 0x27
xor byte [rax], 0x32
xor byte [rax], 1
xor byte [rax], 1
add byte [rax], 0x3d
sub byte [rax], 0x52
lea rdi, [rax + 8]
xor ecx, ecx
mov qword [rdi], rcx
mov rbx, qword [rbx]
movzx edx, byte [rax]
xchg rdx, rdi
mov rcx, rdx
xchg rdi, rdx
call fcn.140054220
nop
mov rax, qword [rsp + 0x88]
mov byte [rax], 0x43
sub byte [rax], 0x1b
xor byte [rax], 0x6b
xor byte [rax], 0x6f
sub byte [rax], 0x16
add byte [rax], 0x35
sub byte [rax], 0x45
mov qword [rdi], rbx
xchg rdx, rax
mov qword [rsp + 0x98], rdx
xchg rdx, rax
mov r9, qword [r13 + 8]
xchg rcx, rax
mov rcx, qword [r13]
xchg rcx, rax
xchg rdx, r12
mov r12, rdx
xchg rdx, r12
cmp rsi, r9
jne 0x140031f9a
cmp rax, r9
je 0x14003204f
xor r8d, r8d
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rax]
mov byte [rdx], cl
mov rcx, qword [rax + 8]
xchg rcx, r8
mov qword [rdx + 8], r8
xchg r8, rcx
mov byte [rax], r8b
mov qword [rax + 8], r8
lea rdx, [rdx + 0x10]
nop
sub rax, 0x2410e641
add rax, 0x2410e651
cmp rax, r9
jne 0x140031f61
jmp 0x14003204f
xor r8d, r8d
cmp rax, rsi
je 0x140031fd6
nop dword [rax + rax]
movzx ecx, byte [rax]
mov byte [rdx], cl
mov rcx, qword [rax + 8]
xchg rcx, rdi
mov qword [rdx + 8], rdi
xchg rdi, rcx
mov byte [rax], r8b
mov qword [rax + 8], r8
lea rdx, [rdx + 0x10]
sub rax, 0xfffffffffffffff0
cmp rax, rsi
jne 0x140031fab
mov qword [rsp + 0x98], r12
xchg rdx, rcx
mov rcx, qword [r13 + 8]
xchg rdx, rcx
cmp rsi, rdx
je 0x14003204f
lea rcx, [rsi + 8]
sub r15, rsi
lea r9, [r15 + r12]
lea r10, [r15 + r12]
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], 0x28
xor byte [rcx - 8], 0x1f
xor byte [rcx - 8], 0x27
add byte [rcx - 8], 0x4c
xor byte [rcx - 8], 0x34
sub byte [rcx - 8], 0x2b
sub byte [rcx - 8], 0x30
add byte [rcx - 8], 1
sub byte [rcx - 8], 0xe
xchg r8, rdx
mov qword [rcx], rdx
xchg r8, rdx
lea rcx, [rcx + 0x10]
lea rax, [rcx - 8]
cmp rax, rdx
jne 0x140032000
mov r9, r14
xchg rbp, r8
mov rbp, qword [rsp + 0x28]
xchg r8, rbp
mov rdx, r12
xchg rcx, r8
mov r8, r13
xchg rcx, r8
call fcn.1400528d0
xchg r8, rax
mov r8, qword [rsp + 0x88]
xchg r8, rax
add rsp, 0x40
nop
mov r15, qword [rsp]
add rsp, 8
push rbx
push rax
xchg qword [rsp + 0x10], r14
pop rax
pop rbx
add rsp, 8
push rdx
push rdx
push rax
push rbx
xchg qword [rsp + 0x20], r13
pop rbx
pop rax
pop rdx
pop rdx
add rsp, 8
nop
add rsp, 8
mov r12, qword [rsp - 8]
nop
add rsp, 8
xchg qword [rsp - 8], rdi
push rax
push rbx
push rax
push rbx
push rdx
push rax
push rdx
xchg qword [rsp + 0x38], rsi
add rsp, 0x40
nop
add rsp, 8
mov rbx, qword [rsp - 8]
nop
add rsp, 8
jmp qword [rsp - 8]
call fcn.14002f8c0
int3