Function at 0x140031ec0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rcx
nop
push r14
mov qword [rsp], rbx
nop
sub rsp, 8
mov qword [rsp], rsi
nop
sub rsp, 8
mov qword [rsp], rdi
nop
push 0x558cbc07
mov qword [rsp], r12
push r13
push r14
push r15
sub rsp, 0x40
xchg r8, rdx
mov rbx, rdx
xchg rdx, r8
mov rsi, rdx
mov r13, rcx
xchg r9, rdx
mov r9, qword [rcx]
xchg rdx, r9
xchg rsi, r9
mov r15, r9
xchg rsi, r9
sub r15, rdx
mov rax, qword [rcx + 8]
sub rax, rdx
sar rax, 4
movabs r14, 0xfffffff7de126a5
sub r14, 0x429c4c5e
add r14, 0x152e2de6
xor r14, 0x74c6091a
sub r14, 0x496beac
sub r14, 0x155b5581
add r14, 0x294d9f56
xor r14, 0x3a68c0b2
add r14, 0x7fffffff
add r14, 0x7187b32e
cmp rax, r14
je 0x140032212
lea r8, [rax + 1]
xchg rbp, r8
mov qword [rsp + 0x28], rbp
xchg r8, rbp
mov rcx, qword [rcx + 0x10]
sub rcx, rdx
sar rcx, 2
sar rcx, 1
sar rcx, 1
xchg r12, rdx
mov r12, rcx
xchg rdx, r12
shr rdx, 1
xchg rsi, rax
mov rsi, r14
xchg rsi, rax
sub rax, rdx
cmp rcx, rax
ja 0x140031fbd
lea r14, [rdx + rcx]
cmp r14, r8
cmovb r14, r8
xchg r11, r14
mov qword [rsp + 0x20], r11
xchg r14, r11
xchg rbp, r14
mov rdx, rbp
xchg r14, rbp
xchg rcx, r13
mov r13, rcx
xchg r13, rcx
call fcn.1400537f0
xchg r12, rax
mov rax, r12
xchg r12, rax
mov qword [rsp + 0x38], rax
and r15, 0xfffffffffffffff0
add rax, r15
mov qword [rsp + 0x88], rax
lea rcx, [rax + 0x10]
mov qword [rsp + 0x30], rcx
mov byte [rax], 3
add byte [rax], 0x2c
add byte [rax], 0x26
xor byte [rax], 0x76
xor byte [rax], 0x2d
xor byte [rax], 0xe
lea rdi, [rax + 8]
xor ecx, ecx
mov qword [rdi], rcx
mov rbx, qword [rbx]
movzx edx, byte [rax]
xchg r12, rcx
mov r12, rdi
xchg rcx, r12
call fcn.140054260
nop
xchg rbp, rax
mov rbp, qword [rsp + 0x88]
xchg rbp, rax
mov byte [rax], 0x1e
add byte [rax], 0x3a
sub byte [rax], 0x48
xor byte [rax], 0x71
xor byte [rax], 0x70
add byte [rax], 0x30
sub byte [rax], 0x3b
xchg r8, rbx
mov qword [rdi], r8
xchg rbx, r8
xchg r9, rax
mov qword [rsp + 0x98], r9
xchg r9, rax
mov r9, qword [r13 + 8]
xchg rcx, rax
mov rcx, qword [r13]
xchg rcx, rax
xchg r12, rdx
mov r12, rdx
xchg r12, rdx
cmp rsi, r9
jne 0x1400320cc
cmp rax, r9
je 0x140032192
xor r8d, r8d
nop dword [rax]
nop word [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]
sub rax, 0xfffffffffffffff0
cmp rax, r9
jne 0x1400320a2
jmp 0x140032192
xor r8d, r8d
cmp rax, rsi
je 0x140032111
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
xchg r8, r11
mov qword [rax + 8], r11
xchg r8, r11
lea rdx, [rdx + 0x10]
nop
add rax, 0x62913f40
sub rax, 0x62913f30
cmp rax, rsi
jne 0x1400320dd
mov qword [rsp + 0x98], r12
xchg r14, rdx
mov r14, qword [r13 + 8]
xchg r14, rdx
cmp rsi, rdx
je 0x140032192
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
xchg r9, rax
mov r9, qword [rcx]
xchg r9, rax
xchg r8, rax
mov qword [r9 + rcx + 0x10], r8
xchg r8, rax
mov byte [rcx - 8], 0x5d
add byte [rcx - 8], 0xa
xor byte [rcx - 8], 0x32
add byte [rcx - 8], 0x18
xor byte [rcx - 8], 3
sub byte [rcx - 8], 0x3f
xor byte [rcx - 8], 0x74
sub byte [rcx - 8], 0x32
sub byte [rcx - 8], 0x29
xchg r8, r13
mov qword [rcx], r13
xchg r13, r8
lea rcx, [rcx + 0x10]
lea rax, [rcx - 8]
cmp rax, rdx
jne 0x14003213b
mov r9, r14
xchg rdx, r8
mov rdx, qword [rsp + 0x28]
xchg r8, rdx
xchg rdx, r10
mov r10, r12
xchg rdx, r10
mov rcx, r13
call fcn.140052940
mov rax, qword [rsp + 0x88]
add rsp, 0x40
nop
add rsp, 8
xchg qword [rsp - 8], r15
push rax
push rax
push rdx
push rdx
push rdx
xchg qword [rsp + 0x28], r14
add rsp, 0x30
nop
add rsp, 8
xchg qword [rsp - 8], r13
nop
add rsp, 8
xchg qword [rsp - 8], r12
nop
mov rdi, qword [rsp]
add rsp, 8
nop
xchg qword [rsp], rsi
add rsp, 8
push rcx
push rdx
push rdx
push rdx
push rax
xchg qword [rsp + 0x28], rbx
add rsp, 0x30
nop
add rsp, 8
jmp qword [rsp - 8]
call fcn.14002f940
int3