Function at 0x6d9d9780
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x30
lea rax, [r8 + r8*2]
mov rbp, rcx
mov qword [rsp + 0x20], r8
shl rax, 5
test r8, r8
lea r13, [rdx + rax - 0x60]
je 0x6d9d9a2f
mov rsi, qword [rcx]
mov qword [rsp + 0x18], 0
nop word [rax + rax]
mov qword [r13], rsi
mov rax, qword [rbp + 8]
sub r13, 0x60
mov qword [r13 + 0x68], rax
mov rax, qword [rbp + 0x10]
mov qword [r13 + 0x70], rax
mov rax, qword [rbp + 0x18]
mov qword [r13 + 0x78], rax
mov rax, qword [rbp + 0x20]
mov qword [r13 + 0x80], rax
mov rax, qword [rbp + 0x28]
mov qword [r13 + 0x88], rax
mov rax, qword [rbp + 0x30]
mov qword [r13 + 0x90], rax
mov rax, qword [rbp + 0x38]
mov qword [r13 + 0x98], rax
mov rax, qword [rbp + 0x40]
mov qword [r13 + 0xa0], rax
mov rax, qword [rbp + 0x48]
mov qword [r13 + 0xa8], rax
mov rax, qword [rbp + 0x50]
mov qword [r13 + 0xb0], rax
mov rax, qword [rbp + 0x58]
mov qword [r13 + 0xb8], rax
mov rax, qword [rbp + 0x20]
mov r11, qword [rbp + 0x28]
mov r9, qword [rbp + 0x30]
mov rsi, rax
add rsi, qword [rbp]
mov r14, r11
add r14, qword [rbp + 8]
mov r10, rsi
xor r10, qword [rbp + 0x60]
mov r8, r14
xor r8, qword [rbp + 0x68]
ror r10, 0x20
mov rdx, r10
add rdx, qword [rbp + 0x40]
ror r8, 0x20
xor rax, rdx
ror rax, 0x18
add rsi, rax
xor r10, rsi
ror r10, 0x10
lea rdi, [r10 + rdx]
mov rdx, r8
add rdx, qword [rbp + 0x48]
mov qword [rsp], rdi
xor rax, rdi
ror rax, 0x3f
xor r11, rdx
ror r11, 0x18
add r14, r11
xor r8, r14
ror r8, 0x10
lea rcx, [r8 + rdx]
mov rdx, r9
add rdx, qword [rbp + 0x10]
xor r11, rcx
mov qword [rsp + 8], rcx
ror r11, 0x3f
mov rcx, rdx
xor rdx, qword [rbp + 0x70]
ror rdx, 0x20
mov r15, rdx
add r15, qword [rbp + 0x50]
xor r9, r15
ror r9, 0x18
lea r12, [r9 + rcx]
xor rdx, r12
mov qword [rsp + 0x10], r12
mov rcx, qword [rbp + 0x38]
ror rdx, 0x10
add r15, rdx
xor r9, r15
mov rdi, rcx
ror r9, 0x3f
add rdi, qword [rbp + 0x18]
add rsi, r11
add r14, r9
xor r10, r14
ror r10, 0x20
mov rbx, rdi
xor rbx, qword [rbp + 0x78]
ror rbx, 0x20
mov r12, rbx
add r12, qword [rbp + 0x58]
xor rcx, r12
ror rcx, 0x18
add rdi, rcx
xor rbx, rdi
ror rbx, 0x10
add r12, rbx
xor rbx, rsi
ror rbx, 0x20
xor rcx, r12
add r12, r10
add r15, rbx
xor r9, r12
ror rcx, 0x3f
xor r11, r15
ror r9, 0x18
ror r11, 0x18
add r14, r9
add rsi, r11
mov qword [rbp + 8], r14
xor r14, r10
xor rbx, rsi
mov qword [rbp], rsi
ror rbx, 0x10
mov qword [rbp + 0x78], rbx
add rbx, r15
mov qword [rbp + 0x50], rbx
xor rbx, r11
ror rbx, 0x3f
ror r14, 0x10
add rdi, rax
mov qword [rbp + 0x60], r14
add r14, r12
mov r12, qword [rsp + 0x10]
xor r9, r14
mov qword [rbp + 0x28], rbx
mov rbx, qword [rsp]
ror r9, 0x3f
xor rdx, rdi
add qword [rsp + 0x18], 1
mov qword [rbp + 0x30], r9
lea r9, [rcx + r12]
ror rdx, 0x20
mov qword [rbp + 0x58], r14
xor r8, r9
ror r8, 0x20
lea r10, [r8 + rbx]
xor rcx, r10
ror rcx, 0x18
add r9, rcx
xor r8, r9
mov qword [rbp + 0x10], r9
ror r8, 0x10
mov qword [rbp + 0x68], r8
add r8, r10
xor rcx, r8
mov qword [rbp + 0x40], r8
ror rcx, 0x3f
mov qword [rbp + 0x38], rcx
mov rcx, qword [rsp + 8]
add rcx, rdx
xor rax, rcx
ror rax, 0x18
add rdi, rax
xor rdx, rdi
mov qword [rbp + 0x18], rdi
ror rdx, 0x10
mov qword [rbp + 0x70], rdx
add rdx, rcx
xor rax, rdx
mov qword [rbp + 0x48], rdx
ror rax, 0x3f
mov qword [rbp + 0x20], rax
mov rax, qword [rsp + 0x20]
cmp qword [rsp + 0x18], rax
jne 0x6d9d97c0
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret