Function at 0x1402b7ee0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x38
mov r12, qword [rsp + 0xa8]
lea r15, [rdx + 8]
mov rax, r8
mov qword [rsp + 0x20], 0
movabs rcx, 0x9e3779b185ebca87
mov qword [rsp + 0x28], 4
imul rax, rcx
mov r13, r9
mov qword [rsp + 0xa0], rax
sub r13, rdx
lea rcx, [r15 - 8]
call fcn.1402ba860
mov rcx, r15
mov rsi, rax
call fcn.1402ba860
lea rcx, [r15 + r13]
mov rbx, rax
call fcn.1402ba860
lea rcx, [r13 - 8]
mov rdi, rax
add rcx, r15
call fcn.1402ba860
sub rdi, r12
xor rdi, rbx
mov rdx, rdi
lea rcx, [rax + r12]
xor rcx, rsi
call fcn.1402b97f0
lea rcx, [r15 + 8]
mov rdi, rax
call fcn.1402ba860
lea rcx, [r15 + 0x10]
mov rbx, rax
call fcn.1402ba860
mov rdx, qword [rsp + 0xa0]
lea rcx, [r15 + 8]
add rdx, rdi
add rax, rbx
xor rax, rdx
mov qword [rsp + 0xa0], rax
call fcn.1402ba860
lea rcx, [r15 + 0x10]
mov rbp, rax
call fcn.1402ba860
lea rcx, [r13 + 0x10]
mov rbx, rax
add rcx, r15
call fcn.1402ba860
lea rcx, [r13 + 8]
mov rdi, rax
add rcx, r15
call fcn.1402ba860
sub rdi, r12
xor rdi, rbx
mov rdx, rdi
lea rcx, [rax + r12]
xor rcx, rbp
call fcn.1402b97f0
lea rcx, [r15 - 8]
mov rdi, rax
call fcn.1402ba860
mov rcx, r15
mov rbx, rax
call fcn.1402ba860
mov rdx, qword [rsp + 0x20]
add r15, 0x20
add rdx, rdi
lea r8, [rbx + rax]
xor r8, rdx
sub qword [rsp + 0x28], 1
mov qword [rsp + 0x20], r8
jne 0x1402b7f41
mov rcx, qword [rsp + 0xa0]
call fcn.1402b29b0
mov rcx, r8
mov qword [rsp + 0xa0], rax
call fcn.1402b29b0
mov qword [rsp + 0x20], rax
mov eax, 0xa0
mov qword [rsp + 0x28], rax
cmp qword [rsp + 0x90], rax
jb 0x1402b81b9
mov ecx, eax
nop word [rax + rax]
mov rax, qword [rsp + 0x88]
mov r14, qword [rsp + 0x98]
add r14, rcx
lea r13, [rcx + rax]
lea rbp, [rcx + rax]
lea rcx, [r13 - 0x20]
call fcn.1402ba860
lea rcx, [r13 - 0x18]
mov rsi, rax
call fcn.1402ba860
lea rcx, [r14 - 0x95]
mov rbx, rax
call fcn.1402ba860
lea rcx, [r14 - 0x9d]
mov rdi, rax
call fcn.1402ba860
sub rdi, r12
xor rdi, rbx
mov rdx, rdi
lea rcx, [rax + r12]
xor rcx, rsi
call fcn.1402b97f0
lea rcx, [rbp - 0x10]
mov rdi, rax
call fcn.1402ba860
lea rsi, [rbp - 8]
mov rbx, rax
mov rcx, rsi
call fcn.1402ba860
mov rdx, qword [rsp + 0xa0]
lea rcx, [rbp - 0x10]
add rdx, rdi
add rax, rbx
xor rax, rdx
mov qword [rsp + 0xa0], rax
call fcn.1402ba860
mov rcx, rsi
mov rbp, rax
call fcn.1402ba860
lea rcx, [r14 - 0x85]
mov rdi, rax
call fcn.1402ba860
lea rcx, [r14 - 0x8d]
mov rsi, rax
call fcn.1402ba860
sub rsi, r12
xor rsi, rdi
mov rdx, rsi
lea rcx, [rax + r12]
xor rcx, rbp
call fcn.1402b97f0
lea rcx, [r13 - 0x20]
mov rdi, rax
call fcn.1402ba860
lea rcx, [r13 - 0x18]
mov rbx, rax
call fcn.1402ba860
mov rcx, qword [rsp + 0x20]
add rax, rbx
add rcx, rdi
xor rax, rcx
mov rcx, qword [rsp + 0x28]
add ecx, 0x20
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rcx
cmp rcx, qword [rsp + 0x90]
jbe 0x1402b8080
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x88]
mov r15, qword [rsp + 0x98]
lea rbx, [rcx + rax]
lea r14, [rcx + rax]
lea rcx, [rbx - 0x10]
call fcn.1402ba860
lea r13, [rbx - 8]
mov rsi, rax
mov rcx, r13
call fcn.1402ba860
lea rcx, [r15 + 0x6f]
mov rbx, rax
call fcn.1402ba860
lea rcx, [r15 + 0x67]
lea rdi, [rax + r12]
xor rdi, rbx
call fcn.1402ba860
sub rax, r12
mov rdx, rdi
xor rax, rsi
mov rcx, rax
call fcn.1402b97f0
lea rcx, [r14 - 0x20]
mov rdi, rax
call fcn.1402ba860
lea rbp, [r14 - 0x18]
mov r12, rax
mov rcx, rbp
call fcn.1402ba860
mov rdx, qword [rsp + 0xa0]
lea rcx, [r14 - 0x20]
add rdx, rdi
add r12, rax
xor r12, rdx
call fcn.1402ba860
mov rcx, rbp
mov r14, rax
call fcn.1402ba860
lea rcx, [r15 + 0x7f]
mov rbx, rax
call fcn.1402ba860
mov rbp, qword [rsp + 0xa8]
lea rcx, [r15 + 0x77]
lea rdi, [rax + rbp]
xor rdi, rbx
call fcn.1402ba860
sub rax, rbp
mov rdx, rdi
xor rax, r14
mov rcx, rax
call fcn.1402b97f0
mov rcx, qword [rsp + 0x88]
mov rdi, rax
mov rsi, qword [rsp + 0x90]
add rcx, 0xfffffffffffffff0
add rcx, rsi
call fcn.1402ba860
mov rcx, r13
mov rbx, rax
call fcn.1402ba860
mov rcx, qword [rsp + 0x20]
add rcx, rdi
lea r8, [rbx + rax]
xor r8, rcx
lea rcx, [r8 + r12]
call fcn.1402b29b0
mov r9, qword [rsp + 0x80]
sub rsi, rbp
movabs rcx, 0xc2b2ae3d27d4eb4f
imul rcx, rsi
mov qword [r9], rax
movabs rax, 0x9e3779b185ebca87
imul r12, rax
movabs rax, 0x85ebca77c2b2ae63
imul r8, rax
add rcx, r12
add rcx, r8
call fcn.1402b29b0
neg rax
mov qword [r9 + 8], rax
mov rax, r9
add rsp, 0x38
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret