Function at 0x140031800
Capabilities:
Encode data using xor

Disassembly:
xchg r9, rcx
mov qword [rsp + 8], r9
xchg r9, rcx
push rbx
push rax
mov qword [rsp], rsi
nop
sub rsp, 8
mov qword [rsp], rdi
push r12
push r13
nop
sub rsp, 8
mov qword [rsp], r14
push r15
sub rsp, 0x30
xchg r8, rbx
mov r12, rbx
xchg rbx, r8
xchg rbp, rbx
mov rbp, rdx
xchg rbp, rbx
xchg r14, rcx
mov rcx, r14
xchg r14, rcx
xchg rdx, r15
mov r15, qword [rcx]
xchg rdx, r15
xchg rsi, rbx
mov rbx, rsi
xchg rbx, rsi
sub rsi, rdx
xchg rdi, rax
mov rdi, qword [rcx + 8]
xchg rdi, rax
sub rax, rdx
sar rax, 2
sar rax, 2
movabs rdi, 0xfffffff0cc88b39
xor rdi, 0x70d348a
xor rdi, 0x748d0bcd
sub rdi, 0x6cdd809
sub rdi, 0x6aa11f59
add rdi, 0x6e31bc4f
add rdi, 0x7fffffff
add rdi, 0x3f48695
cmp rax, rdi
je 0x140031b06
lea r13, [rax + 1]
mov rcx, qword [rcx + 0x10]
sub rcx, rdx
sar rcx, 2
sar rcx, 1
sar rcx, 1
xchg rdx, r13
mov r13, rcx
xchg r13, rdx
shr rdx, 1
mov rax, rdi
sub rax, rdx
cmp rcx, rax
ja 0x1400318ef
lea rdi, [rdx + rcx]
cmp rdi, r13
cmovb rdi, r13
mov qword [rsp + 0x88], rdi
xchg rdx, rdi
mov rdi, rdx
xchg rdx, rdi
xchg rcx, r11
mov r11, r14
xchg r11, rcx
call fcn.140053570
xchg r15, rax
mov rax, r15
xchg r15, rax
xchg rbp, rax
mov qword [rsp + 0x28], rbp
xchg rbp, rax
and rsi, 0xfffffffffffffff0
add rsi, rax
lea rcx, [rsi + 0x10]
xchg rcx, rbp
mov qword [rsp + 0x20], rbp
xchg rbp, rcx
xchg rcx, r14
mov qword [rsp + 0x78], r14
xchg r14, rcx
xchg rsi, rdx
mov rsi, r12
xchg rdx, rsi
mov rcx, rsi
call fcn.14002fee0
mov qword [rsp + 0x78], rsi
xchg rdi, r9
mov rdi, qword [r14 + 8]
xchg rdi, r9
xchg rcx, rax
mov rcx, qword [r14]
xchg rcx, rax
xchg r15, rdx
mov r15, rdx
xchg rdx, r15
cmp rbx, r9
jne 0x1400319c9
cmp rax, r9
je 0x140031a7c
xor r8d, r8d
nop word [rax + rax]
movzx ecx, byte [rax]
mov byte [rdx], cl
mov rcx, qword [rax + 8]
xchg rcx, r9
mov qword [rdx + 8], r9
xchg r9, rcx
mov byte [rax], r8b
xchg r15, r8
mov qword [rax + 8], r15
xchg r15, r8
lea rdx, [rdx + 0x10]
nop
add rax, 0x681f6889
sub rax, 0x681f6879
cmp rax, r9
jne 0x14003198a
jmp 0x140031a7c
xor r8d, r8d
cmp rax, rbx
je 0x140031a05
nop dword [rax + rax]
movzx ecx, byte [rax]
mov byte [rdx], cl
xchg rcx, rsi
mov rsi, qword [rax + 8]
xchg rcx, rsi
mov qword [rdx + 8], rcx
mov byte [rax], r8b
mov qword [rax + 8], r8
lea rdx, [rdx + 0x10]
sub rax, 0xfffffffffffffff0
cmp rax, rbx
jne 0x1400319da
xchg r15, r13
mov qword [rsp + 0x78], r13
xchg r15, r13
xchg r9, rdx
mov r9, qword [r14 + 8]
xchg r9, rdx
cmp rbx, rdx
je 0x140031a7c
lea rcx, [rbx + 8]
xchg rsi, rax
mov rsi, rax
xchg rsi, rax
sub rax, rbx
lea r9, [rax + 0x10]
lea r10, [rax + 8]
movzx eax, byte [rcx - 8]
mov byte [r10 + rcx], al
xchg r14, rax
mov r14, qword [rcx]
xchg r14, rax
xchg rdi, rax
mov qword [r9 + rcx], rdi
xchg rdi, rax
mov byte [rcx - 8], 0x4d
sub byte [rcx - 8], 0x23
add byte [rcx - 8], 0x47
sub byte [rcx - 8], 0x5c
add byte [rcx - 8], 0x4f
xor byte [rcx - 8], 0x64
mov qword [rcx], r8
lea rcx, [rcx + 0x10]
lea rax, [rcx - 8]
cmp rax, rdx
jne 0x140031a39
xchg r9, r15
mov r15, rdi
xchg r9, r15
xchg rbp, r13
mov r8, rbp
xchg r13, rbp
xchg rdx, r15
mov r15, rdx
xchg rdx, r15
xchg rcx, r14
mov r14, rcx
xchg r14, rcx
call fcn.1400526c0
xchg rsi, r10
mov rax, r10
xchg rsi, r10
add rsp, 0x30
push rax
push rbx
push rdx
push rbx
xchg qword [rsp + 0x20], r15
pop rbx
pop rdx
pop rbx
pop rax
add rsp, 8
nop
add rsp, 8
mov r14, qword [rsp - 8]
nop
add rsp, 8
xchg qword [rsp - 8], r13
push rbx
push rbx
push rbx
xchg qword [rsp + 0x18], r12
add rsp, 0x20
nop
xchg qword [rsp], rdi
add rsp, 8
nop
add rsp, 8
mov rsi, qword [rsp - 8]
push rax
push rax
push rdx
push rdx
push rcx
push rax
xchg qword [rsp + 0x30], rbx
add rsp, 0x38
ret
call fcn.14002f970
int3