Function at 0x140031850
Capabilities:
Encode data using xor

Disassembly:
xchg rcx, rsi
mov qword [rsp + 8], rsi
xchg rcx, rsi
nop
mov qword [rsp - 8], rbx
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], rsi
nop
push 0x5298277c
mov qword [rsp], rdi
nop
sub rsp, 8
mov qword [rsp], r12
push r13
push r14
nop
sub rsp, 8
mov qword [rsp], r15
sub rsp, 0x30
xchg r13, r8
mov r12, r13
xchg r8, r13
xchg rbx, r11
mov r11, rdx
xchg r11, rbx
xchg r14, r12
mov r12, rcx
xchg r12, r14
mov rdx, qword [rcx]
xchg rsi, r15
mov r15, rbx
xchg r15, rsi
sub rsi, rdx
xchg rbp, rax
mov rbp, qword [rcx + 8]
xchg rbp, rax
sub rax, rdx
sar rax, 4
movabs rdi, 0xfffffff1f8ddbce
add rdi, 0x48e57574
add rdi, 0x31d6e64
sub rdi, 0xdee7f7b
sub rdi, 0x21774242
add rdi, 0x30f4e605
add rdi, 0x7fffffff
add rdi, 0x12e01c12
cmp rax, rdi
je 0x140031b55
lea r13, [rax + 1]
mov rcx, qword [rcx + 0x10]
sub rcx, rdx
sar rcx, 1
sar rcx, 3
mov rdx, rcx
shr rdx, 1
mov rax, rdi
sub rax, rdx
cmp rcx, rax
ja 0x140031941
lea rdi, [rdx + rcx]
cmp rdi, r13
cmovb rdi, r13
xchg rbx, rdi
mov qword [rsp + 0x88], rbx
xchg rbx, rdi
mov rdx, rdi
xchg rcx, r14
mov r14, rcx
xchg rcx, r14
call fcn.1400536d0
xchg rsi, rax
mov r15, rsi
xchg rsi, rax
xchg r14, rax
mov qword [rsp + 0x28], r14
xchg r14, rax
and rsi, 0xfffffffffffffff0
add rsi, rax
lea rcx, [rsi + 0x10]
xchg rcx, r10
mov qword [rsp + 0x20], r10
xchg r10, rcx
mov qword [rsp + 0x78], rcx
xchg r10, r12
mov rdx, r10
xchg r12, r10
xchg rsi, rbp
mov rcx, rbp
xchg rbp, rsi
call fcn.14002ff60
mov qword [rsp + 0x78], rsi
xchg r9, rbp
mov rbp, qword [r14 + 8]
xchg r9, rbp
mov rax, qword [r14]
xchg rdx, r14
mov r14, r15
xchg r14, rdx
cmp rbx, r9
jne 0x140031a14
cmp rax, r9
je 0x140031ac8
xor r8d, r8d
nop word [rax + rax]
movzx ecx, byte [rax]
mov byte [rdx], cl
xchg rcx, rbp
mov rbp, qword [rax + 8]
xchg rcx, rbp
xchg rcx, r9
mov qword [rdx + 8], r9
xchg r9, rcx
mov byte [rax], r8b
xchg r8, rdx
mov qword [rax + 8], rdx
xchg rdx, r8
lea rdx, [rdx + 0x10]
sub rax, 0xfffffffffffffff0
cmp rax, r9
jne 0x1400319d8
jmp 0x140031ac8
xor r8d, r8d
cmp rax, rbx
je 0x140031a59
nop dword [rax + rax]
movzx ecx, byte [rax]
mov byte [rdx], cl
xchg rcx, r12
mov r12, qword [rax + 8]
xchg r12, rcx
mov qword [rdx + 8], rcx
mov byte [rax], r8b
mov qword [rax + 8], r8
lea rdx, [rdx + 0x10]
nop
sub rax, 0x5377196a
add rax, 0x5377197a
cmp rax, rbx
jne 0x140031a25
mov qword [rsp + 0x78], r15
xchg r8, rdx
mov r8, qword [r14 + 8]
xchg rdx, r8
cmp rbx, rdx
je 0x140031ac8
lea rcx, [rbx + 8]
xchg rsi, r9
mov rax, r9
xchg r9, rsi
sub rax, rbx
lea r9, [rax + 0x10]
lea r10, [rax + 8]
movzx eax, byte [rcx - 8]
mov byte [r10 + rcx], al
xchg r9, rax
mov r9, qword [rcx]
xchg r9, rax
mov qword [r9 + rcx], rax
mov byte [rcx - 8], 0x67
sub byte [rcx - 8], 0x3e
xor byte [rcx - 8], 0x7d
sub byte [rcx - 8], 0x12
sub byte [rcx - 8], 0x10
xor byte [rcx - 8], 0x32
mov qword [rcx], r8
lea rcx, [rcx + 0x10]
lea rax, [rcx - 8]
cmp rax, rdx
jne 0x140031a89
xchg r9, r15
mov r15, rdi
xchg r9, r15
xchg r9, r13
mov r8, r9
xchg r9, r13
xchg rdx, r15
mov r15, rdx
xchg r15, rdx
xchg rbx, r14
mov rcx, rbx
xchg rbx, r14
call fcn.140052850
xchg rbp, rax
mov rbp, rsi
xchg rbp, rax
add rsp, 0x30
push rbx
push rcx
xchg qword [rsp + 0x10], r15
pop rcx
pop rbx
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], r14
nop
add rsp, 8
mov r13, qword [rsp - 8]
nop
mov r12, qword [rsp]
add rsp, 8
push rdx
push rbx
push rdx
push rcx
push rax
xchg qword [rsp + 0x28], rdi
pop rax
pop rcx
pop rdx
pop rbx
pop rdx
add rsp, 8
nop
mov rsi, qword [rsp]
add rsp, 8
push rax
xchg qword [rsp + 8], rbx
add rsp, 0x10
nop
add rsp, 8
jmp qword [rsp - 8]
call fcn.14002f9b0
int3