Function at 0x140033860
Capabilities:
Encode data using xor

Disassembly:
xchg r12, rcx
mov qword [rsp + 8], r12
xchg r12, rcx
push rbx
push rsi
nop
sub rsp, 8
mov qword [rsp], rdi
push r12
push rdi
mov qword [rsp], r13
push r14
nop
sub rsp, 8
mov qword [rsp], r15
sub rsp, 0x40
mov r13, r8
xchg rbx, r9
mov r9, rdx
xchg r9, rbx
xchg r14, rcx
mov rcx, r14
xchg r14, rcx
mov rdx, qword [rcx]
xchg r14, rsi
mov r14, rbx
xchg rsi, r14
sub rsi, rdx
xchg r14, rax
mov r14, qword [rcx + 8]
xchg r14, rax
sub rax, rdx
sar rax, 4
movabs rdi, 0xfffffff6c348ee9
xor rdi, 0x7706819e
xor rdi, 0x488943a0
sub rdi, 0x1d26ce22
add rdi, 0xd2f9e23
sub rdi, 0x2b9c899e
add rdi, 0x4044ab08
add rdi, 0x7fffffff
xor rdi, 0x2793c1be
cmp rax, rdi
je 0x140033b63
lea r8, [rax + 1]
mov qword [rsp + 0x20], r8
mov rcx, qword [rcx + 0x10]
sub rcx, rdx
sar rcx, 3
sar rcx, 1
xchg rcx, rdx
mov rcx, rdx
xchg rcx, rdx
shr rdx, 1
xchg rdi, r14
mov rax, r14
xchg r14, rdi
sub rax, rdx
cmp rcx, rax
ja 0x14003394d
lea rdi, [rdx + rcx]
cmp rdi, r8
cmovb rdi, r8
mov qword [rsp + 0x98], rdi
xchg r14, rdi
mov rdx, r14
xchg rdi, r14
xchg rbp, rcx
mov rbp, r14
xchg rcx, rbp
call fcn.1400538f0
mov r15, rax
xchg r15, rax
mov qword [rsp + 0x30], r15
xchg r15, rax
and rsi, 0xfffffffffffffff0
lea r12, [rsi + rax]
lea rcx, [r12 + 0x10]
xchg rcx, r13
mov qword [rsp + 0x28], r13
xchg rcx, r13
xchg rcx, r11
mov qword [rsp + 0x88], r11
xchg r11, rcx
movzx edx, byte [r13]
mov byte [r12], dl
lea rcx, [r12 + 8]
call fcn.14004baf0
xchg r12, rsi
mov qword [rsp + 0x88], rsi
xchg r12, rsi
xchg rdx, r9
mov rdx, qword [r14 + 8]
xchg r9, rdx
mov rax, qword [r14]
mov rdx, r15
cmp rbx, r9
jne 0x140033a1b
cmp rax, r9
je 0x140033ad0
xor r8d, r8d
nop
movzx ecx, byte [rax]
mov byte [rdx], cl
xchg rcx, rsi
mov rsi, qword [rax + 8]
xchg rsi, rcx
mov qword [rdx + 8], rcx
mov byte [rax], r8b
xchg rbp, r8
mov qword [rax + 8], rbp
xchg r8, rbp
lea rdx, [rdx + 0x10]
sub rax, 0xfffffffffffffff0
cmp rax, r9
jne 0x1400339e5
jmp 0x140033ad0
xor r8d, r8d
cmp rax, rbx
je 0x140033a5d
nop dword [rax + rax]
movzx ecx, byte [rax]
mov byte [rdx], cl
xchg r14, rcx
mov r14, qword [rax + 8]
xchg r14, rcx
xchg r13, rcx
mov qword [rdx + 8], r13
xchg rcx, r13
mov byte [rax], r8b
mov qword [rax + 8], r8
lea rdx, [rdx + 0x10]
sub rax, 0xfffffffffffffff0
cmp rax, rbx
jne 0x140033a2c
mov qword [rsp + 0x88], r15
xchg rdx, r15
mov r15, qword [r14 + 8]
xchg rdx, r15
cmp rbx, rdx
je 0x140033ad0
lea rcx, [rbx + 8]
sub rsi, rbx
lea r9, [rsi + r15]
lea r10, [rsi + r15]
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
sub byte [rcx - 8], 0x26
add byte [rcx - 8], 0x45
xor byte [rcx - 8], 0x65
add byte [rcx - 8], 0x4b
sub byte [rcx - 8], 0x24
sub byte [rcx - 8], 0x49
add byte [rcx - 8], 0x49
xor byte [rcx - 8], 0x49
mov qword [rcx], r8
lea rcx, [rcx + 0x10]
lea rax, [rcx - 8]
cmp rax, rdx
jne 0x140033a87
xchg rdi, r10
mov r9, r10
xchg rdi, r10
xchg r8, rcx
mov rcx, qword [rsp + 0x20]
xchg rcx, r8
xchg rbp, r15
mov rdx, rbp
xchg rbp, r15
mov rcx, r14
call fcn.140052a00
xchg r12, rax
mov r12, rax
xchg r12, rax
add rsp, 0x40
push rbx
push rbx
push rcx
push rbx
push rcx
xchg qword [rsp + 0x28], r15
add rsp, 0x30
nop
add rsp, 8
xchg qword [rsp - 8], r14
push rcx
push rbx
push rax
push rax
push rdx
push rdx
xchg qword [rsp + 0x30], r13
pop rdx
pop rdx
pop rax
pop rax
pop rbx
pop rcx
add rsp, 8
push rbx
push rbx
push rdx
push rdx
push rbx
push rax
push rdx
push rax
xchg qword [rsp + 0x40], r12
add rsp, 0x48
nop
xchg qword [rsp], rdi
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], rsi
nop
mov rbx, qword [rsp]
add rsp, 8
nop
add rsp, 8
jmp qword [rsp - 8]
call fcn.14002f940
int3