Function at 0x140073660
Capabilities:
Encode data using xor

Disassembly:
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
jmp 0x140073660
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x10
cmp rdx, 0x20
ja 0x140073784
movabs rax, 0x9ae16a3b2f90404f
cmp rdx, 0x10
ja 0x140073718
cmp rdx, 8
jb 0x1400736ed
lea rbp, [rax + rdx*2]
add rax, qword [rcx]
mov rcx, qword [rcx + rdx - 8]
mov rdx, rcx
rol rdx, 0x1b
imul rdx, rbp
add rdx, rax
rol rax, 0x27
add rax, rcx
imul rax, rbp
xor rdx, rax
imul rdx, rbp
xor rax, rdx
shr rdx, 0x2f
xor rdx, rax
imul rdx, rbp
mov rax, rdx
shr rax, 0x2f
xor rax, rdx
imul rax, rbp
add rsp, 0x10
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp rdx, 4
jb 0x140073a8e
lea rbp, [rax + rdx*2]
mov eax, dword [rcx]
mov ecx, dword [rcx + rdx - 4]
lea rdx, [rdx + rax*8]
xor rdx, rcx
imul rdx, rbp
xor rcx, rdx
shr rdx, 0x2f
xor rdx, rcx
jmp 0x1400736ca
movabs rdi, 0xb492b66fbe98f273
imul rdi, qword [rcx]
lea r8, [rax + rdx*2]
mov rsi, qword [rcx + 8]
mov rbx, qword [rcx + rdx - 8]
lea rbp, [rsi + rax]
imul rax, qword [rcx + rdx - 0x10]
rol rbp, 0x2e
imul rbx, r8
add rbp, rdi
add rbp, rbx
add rdi, rsi
rol rdi, 0x15
rol rbx, 0x22
add rbx, rdi
add rbx, rax
xor rbx, rbp
imul rbx, r8
xor rbp, rbx
shr rbx, 0x2f
xor rbx, rbp
imul rbx, r8
mov rax, rbx
shr rax, 0x2f
xor rax, rbx
imul rax, r8
jmp 0x1400736dc
cmp rdx, 0x40
ja 0x140073859
movabs rax, 0x9ae16a3b2f90404f
lea r15, [rax + rdx*2]
mov rsi, qword [rcx]
imul rsi, rax
mov r8, qword [rcx + rdx - 0x20]
mov r9, qword [rcx + rdx - 0x18]
imul rax, qword [rcx + 0x10]
mov r10, qword [rcx + 8]
mov rbp, qword [rcx + 0x18]
lea r11, [rbp*8]
add r11, rbp
mov rdi, qword [rcx + rdx - 8]
mov rcx, qword [rcx + rdx - 0x10]
imul rcx, r15
add rsi, rdi
mov r14, rsi
rol r14, 0x15
add rax, r11
mov rbp, rax
add rax, r9
add rdi, rax
add rax, r10
rol r10, 0x22
add r10, r9
lea rdx, [r10 + r10*8]
add rdx, r14
xor rsi, r8
lea rbx, [r11 + rsi]
add rsi, r11
inc rsi
add rsi, rdx
imul rsi, r15
bswap rsi
rol rbp, 0x16
add rbp, r9
lea rdx, [rcx + rbx]
inc rdx
add rdx, rsi
imul rdx, r15
bswap rdx
add rdi, rbp
add rdi, rdx
imul rdi, r15
bswap rdi
add rax, rdi
imul rax, r15
add rcx, r8
add rcx, rax
mov rax, rcx
shr rax, 0x2f
xor rax, rcx
imul rax, r15
add rax, rbp
jmp 0x1400736dc
movabs r10, 0xb492b66fbe98f273
movabs r9, 0x9ddfea08eb382d69
mov rdi, qword [rcx + rdx - 0x28]
mov r8, qword [rcx + rdx - 0x10]
mov r14, qword [rcx + rdx - 0x38]
mov rbx, qword [rcx + rdx - 0x30]
lea r11, [r14 + r8]
mov rax, qword [rcx + rdx - 0x18]
lea rsi, [rbx + rdx]
xor rsi, rax
imul rsi, r9
mov rbp, rax
xor rbp, rsi
shr rsi, 0x2f
xor rsi, rbp
imul rsi, r9
mov r13, rsi
shr r13, 0x2f
xor r13, rsi
imul r13, r9
mov rbp, qword [rcx + rdx - 0x40]
add rbp, rdx
lea rsi, [rdi + rbp]
add rsi, r13
rol rsi, 0x2b
add r14, rbx
add r14, rbp
mov rbx, r14
rol rbx, 0x14
add rbx, rbp
add rbx, rsi
add r14, rdi
mov rbp, qword [rcx + rdx - 0x20]
add rbp, r11
mov r9, qword [rcx + rdx - 8]
add rbp, r10
lea r15, [r9 + rdi]
add r15, rbp
rol r15, 0x2b
add rax, r8
add rax, rbp
mov rsi, rax
rol rsi, 0x14
add rsi, rbp
add rsi, r15
imul rdi, r10
add rdi, qword [rcx]
add rax, r9
dec rdx
and rdx, 0xffffffffffffffc0
xor r15d, r15d
mov qword [rsp], r13
add rdi, r14
add rdi, r11
mov r8, qword [rcx + r15 + 8]
mov r12, qword [rcx + r15 + 0x10]
add rdi, r8
rol rdi, 0x1b
add r11, rbx
mov rbp, qword [rcx + r15 + 0x30]
mov qword [rsp + 8], rbp
add r11, rbp
rol r11, 0x16
movabs rbp, 0xb492b66fbe98f273
imul rdi, rbp
mov r10, r11
imul r10, rbp
mov r13, rdi
xor r13, rsi
mov r9, qword [rcx + r15 + 0x28]
add r14, r9
mov r11, r14
add r11, r10
mov rbp, qword [rsp]
add rbp, rax
movabs rdi, 0xb492b66fbe98f273
imul rbx, rdi
mov r10, qword [rcx + r15 + 0x18]
add rbx, qword [rcx + r15]
add rax, r10
add rax, r13
add rax, rbx
rol rax, 0x2b
add r8, r12
add r8, rbx
mov rdi, r8
rol rdi, 0x14
add rbx, rdi
add rbx, rax
mov rdi, rbp
rol rdi, 0x1f
mov r14, r8
movabs rax, 0xb492b66fbe98f273
imul rdi, rax
add r14, r10
add r12, r11
add rsi, rdi
add rsi, qword [rcx + r15 + 0x20]
mov rbp, qword [rcx + r15 + 0x38]
add r12, rbp
add r12, rsi
add r9, qword [rsp + 8]
add r9, rsi
mov rax, r9
rol rax, 0x14
add rsi, rax
rol r12, 0x2b
add rsi, r12
mov rax, r9
add rax, rbp
add r15, 0x40
cmp rdx, r15
jne 0x14007391f
xor rbx, rsi
movabs rbp, 0x9ddfea08eb382d69
imul rbx, rbp
mov rdx, rbx
shr rdx, 0x2f
xor rdx, rsi
xor rdx, rbx
imul rdx, rbp
mov rcx, rdx
shr rcx, 0x2f
xor rcx, rdx
imul rcx, rbp
add rcx, rdi
xor r14, rax
imul r14, rbp
mov rdx, r14
shr rdx, 0x2f
xor rdx, rax
xor rdx, r14
imul rdx, rbp
mov rax, rdx
shr rax, 0x2f
xor rax, rdx
imul rax, rbp
mov rdx, r11
shr rdx, 0x2f
xor rdx, r11
movabs rbx, 0xb492b66fbe98f273
imul rdx, rbx
add rdx, r13
add rdx, rax
jmp 0x140073705
test rdx, rdx
je 0x1400736dc
movzx ebp, byte [rcx]
mov rbx, rdx
shr rbx, 1
movzx ebx, byte [rcx + rbx]
movzx ecx, byte [rdx + rcx - 1]
shl rbx, 8
or rbx, rbp
lea rcx, [rdx + rcx*4]
imul rbx, rax
movabs rdx, 0xc3a5c85c97cb3127
imul rdx, rcx
xor rdx, rbx
mov rcx, rdx
shr rcx, 0x2f
xor rcx, rdx
imul rax, rcx
jmp 0x1400736dc