Function at 0x140031f20
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rcx
nop
mov qword [rsp - 8], rbx
sub rsp, 8
nop
push 0x622dbad2
mov qword [rsp], rsi
nop
mov qword [rsp - 8], rdi
sub rsp, 8
push r12
nop
mov qword [rsp - 8], r13
sub rsp, 8
nop
push 0x2c62954d
mov qword [rsp], r14
push r15
sub rsp, 0x40
mov rbx, r8
xchg rdx, rcx
mov rsi, rcx
xchg rcx, rdx
mov r13, rcx
mov rdx, qword [rcx]
mov r15, rsi
sub r15, rdx
xchg r9, rax
mov r9, qword [rcx + 8]
xchg r9, rax
sub rax, rdx
sar rax, 3
sar rax, 1
movabs r14, 0xfffffff23ee8af7
xor r14, 0x61e9259b
xor r14, 0x52d7c746
add r14, 0x2d66834e
add r14, 0x1d459e66
xor r14, 0x775780b9
sub r14, 0x1e567b25
add r14, 0x7fffffff
xor r14, 0x722b71be
cmp rax, r14
je 0x140032274
lea r8, [rax + 1]
mov qword [rsp + 0x28], r8
mov rcx, qword [rcx + 0x10]
sub rcx, rdx
sar rcx, 1
sar rcx, 1
sar rcx, 2
xchg rcx, rdx
mov rcx, rdx
xchg rdx, rcx
shr rdx, 1
xchg r14, rax
mov r14, rax
xchg r14, rax
sub rax, rdx
cmp rcx, rax
ja 0x140032018
lea r14, [rdx + rcx]
cmp r14, r8
cmovb r14, r8
mov qword [rsp + 0x20], r14
mov rdx, r14
mov rcx, r13
call fcn.140053af0
mov r12, rax
mov qword [rsp + 0x38], rax
and r15, 0xfffffffffffffff0
add rax, r15
xchg r11, rax
mov qword [rsp + 0x88], r11
xchg r11, rax
lea rcx, [rax + 0x10]
mov qword [rsp + 0x30], rcx
mov byte [rax], 0x28
sub byte [rax], 0x18
xor byte [rax], 0x62
sub byte [rax], 0x22
xor byte [rax], 0x1f
sub byte [rax], 0x3b
xor byte [rax], 0x20
xor byte [rax], 0x13
xor byte [rax], 0x27
lea rdi, [rax + 8]
xor ecx, ecx
xchg r14, rcx
mov qword [rdi], r14
xchg r14, rcx
mov rbx, qword [rbx]
movzx edx, byte [rax]
xchg rdi, rcx
mov rdi, rcx
xchg rdi, rcx
call fcn.140054540
nop
mov rax, qword [rsp + 0x88]
mov byte [rax], 0x2a
sub byte [rax], 1
xor byte [rax], 0x67
add byte [rax], 0xb
add byte [rax], 0
xor byte [rax], 0x5f
xchg rbx, r15
mov qword [rdi], r15
xchg r15, rbx
xchg r11, rax
mov qword [rsp + 0x98], r11
xchg r11, rax
mov r9, qword [r13 + 8]
xchg rbp, rax
mov rbp, qword [r13]
xchg rbp, rax
xchg rdx, rdi
mov rdi, r12
xchg rdx, rdi
cmp rsi, r9
jne 0x140032129
cmp rax, r9
je 0x1400321f0
xor r8d, r8d
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rax]
mov byte [rdx], cl
mov rcx, qword [rax + 8]
xchg r9, rcx
mov qword [rdx + 8], r9
xchg r9, rcx
mov byte [rax], r8b
xchg r8, rcx
mov qword [rax + 8], rcx
xchg rcx, r8
lea rdx, [rdx + 0x10]
add rax, 0x10
cmp rax, r9
jne 0x1400320f3
jmp 0x1400321f0
xor r8d, r8d
cmp rax, rsi
je 0x140032177
nop dword [rax + rax]
movzx ecx, byte [rax]
mov byte [rdx], cl
xchg r12, rcx
mov r12, qword [rax + 8]
xchg rcx, r12
xchg rcx, r9
mov qword [rdx + 8], r9
xchg rcx, r9
mov byte [rax], r8b
xchg rsi, r8
mov qword [rax + 8], rsi
xchg rsi, r8
lea rdx, [rdx + 0x10]
neg rax
add rax, 0xfffffffffffffff0
neg rax
cmp rax, rsi
jne 0x14003213a
xchg r13, r12
mov qword [rsp + 0x98], r13
xchg r13, r12
xchg rdx, rcx
mov rcx, qword [r13 + 8]
xchg rcx, rdx
cmp rsi, rdx
je 0x1400321f0
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 rdi, rax
mov rdi, qword [rcx]
xchg rdi, rax
mov qword [r9 + rcx + 0x10], rax
mov byte [rcx - 8], 0xb
add byte [rcx - 8], 0x4e
sub byte [rcx - 8], 0x35
add byte [rcx - 8], 0xe
add byte [rcx - 8], 0xa
sub byte [rcx - 8], 0x37
add byte [rcx - 8], 0x73
xor byte [rcx - 8], 0x78
mov qword [rcx], r8
lea rcx, [rcx + 0x10]
lea rax, [rcx - 8]
cmp rax, rdx
jne 0x1400321a7
xchg r9, r8
mov r8, r14
xchg r9, r8
xchg r8, rdx
mov rdx, qword [rsp + 0x28]
xchg r8, rdx
mov rdx, r12
mov rcx, r13
call fcn.140052cd0
xchg rdx, rax
mov rdx, qword [rsp + 0x88]
xchg rdx, rax
add rsp, 0x40
nop
add rsp, 8
xchg qword [rsp - 8], r15
push rax
push rbx
push rbx
push rax
xchg qword [rsp + 0x20], r14
pop rax
pop rbx
pop rbx
pop rax
add rsp, 8
nop
xchg qword [rsp], r13
add rsp, 8
nop
xchg qword [rsp], r12
add rsp, 8
push rdx
push rbx
push rbx
push rbx
xchg qword [rsp + 0x20], rdi
add rsp, 0x28
nop
mov rsi, qword [rsp]
add rsp, 8
nop
xchg qword [rsp], rbx
add rsp, 8
nop
add rsp, 8
jmp qword [rsp - 8]
call fcn.14002f9c0
int3