Function at 0x1411d0f10
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov ebx, r8d
mov r15, rcx
sub rdx, rcx
movabs rax, 0x4924924924924925
imul rdx
mov r13, rdx
sar r13, 4
mov rax, r13
shr rax, 0x3f
add r13, rax
mov rbp, r13
sar rbp, 1
test rbp, rbp
jle 0x1411d11d7
lea rsi, [r13 - 1]
mov r12, rsi
sar r12, 1
imul rdi, rbp, 0x38
add rdi, 0x28
add rdi, rcx
xor ecx, ecx
nop dword [rax]
dec rbp
lea rdi, [rdi - 0x38]
mov rax, qword [rdi - 0x28]
mov qword [rsp + 0x30], rax
mov rax, qword [rdi - 0x20]
mov qword [rsp + 0x38], rax
mov rax, qword [rdi - 0x18]
mov qword [rsp + 0x40], rax
mov qword [rdi - 0x28], rcx
mov qword [rdi - 0x20], rcx
mov qword [rdi - 0x18], rcx
mov rax, qword [rdi - 0x10]
mov qword [rsp + 0x48], rax
mov rax, qword [rdi - 8]
mov qword [rsp + 0x50], rax
mov rax, qword [rdi]
mov qword [rsp + 0x58], rax
mov qword [rdi - 0x10], rcx
mov qword [rdi - 8], rcx
mov qword [rdi], rcx
lea rdx, [rdi + 8]
lea rcx, [rsp + 0x60]
call fcn.1411d7850
nop
mov eax, ebx
mov dword [rsp + 0xa0], ebx
mov r14, rbp
mov r9, rbp
cmp rbp, r12
jge 0x1411d10bf
nop word [rax + rax]
lea rsi, [r9 + r9]
lea rax, [rsi + 2]
imul rdx, rax, 0x38
add rdx, r15
lea r8, [rdx - 0x38]
lea rcx, [rsp + 0xa0]
call fcn.1411d3750
movzx r9d, al
xor r9, 1
inc r9
add r9, rsi
imul r8, r9, 0x38
add r8, r15
imul rdx, r14, 0x38
add rdx, r15
mov rcx, qword [rdx]
mov rax, qword [r8]
mov qword [rdx], rax
mov qword [r8], rcx
mov rcx, qword [rdx + 8]
mov rax, qword [r8 + 8]
mov qword [rdx + 8], rax
mov qword [r8 + 8], rcx
mov rcx, qword [rdx + 0x10]
mov rax, qword [r8 + 0x10]
mov qword [rdx + 0x10], rax
mov qword [r8 + 0x10], rcx
mov rcx, qword [rdx + 0x18]
mov rax, qword [r8 + 0x18]
mov qword [rdx + 0x18], rax
mov qword [r8 + 0x18], rcx
mov rcx, qword [rdx + 0x20]
mov rax, qword [r8 + 0x20]
mov qword [rdx + 0x20], rax
mov qword [r8 + 0x20], rcx
mov rcx, qword [rdx + 0x28]
mov rax, qword [r8 + 0x28]
mov qword [rdx + 0x28], rax
mov qword [r8 + 0x28], rcx
mov rcx, qword [rdx + 0x30]
mov rax, qword [r8 + 0x30]
mov qword [rdx + 0x30], rax
mov qword [r8 + 0x30], rcx
mov r14, r9
cmp r9, r12
jl 0x1411d1000
mov eax, dword [rsp + 0xa0]
lea rsi, [r13 - 1]
cmp r14, r12
jne 0x1411d114d
test r13b, 1
jne 0x1411d114d
imul r9, r13, 0x38
add r9, r15
imul r8, r14, 0x38
add r8, r15
mov rdx, qword [r8]
mov rcx, qword [r9 - 0x38]
mov qword [r8], rcx
mov qword [r9 - 0x38], rdx
mov rdx, qword [r8 + 8]
mov rcx, qword [r9 - 0x30]
mov qword [r8 + 8], rcx
mov qword [r9 - 0x30], rdx
mov rdx, qword [r8 + 0x10]
mov rcx, qword [r9 - 0x28]
mov qword [r8 + 0x10], rcx
mov qword [r9 - 0x28], rdx
mov rdx, qword [r8 + 0x18]
mov rcx, qword [r9 - 0x20]
mov qword [r8 + 0x18], rcx
mov qword [r9 - 0x20], rdx
mov rdx, qword [r8 + 0x20]
mov rcx, qword [r9 - 0x18]
mov qword [r8 + 0x20], rcx
mov qword [r9 - 0x18], rdx
mov rdx, qword [r8 + 0x28]
mov rcx, qword [r9 - 0x10]
mov qword [r8 + 0x28], rcx
mov qword [r9 - 0x10], rdx
mov rdx, qword [r8 + 0x30]
mov rcx, qword [r9 - 8]
mov qword [r8 + 0x30], rcx
mov qword [r9 - 8], rdx
mov r14, rsi
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0x30]
mov r8, rbp
mov rdx, r14
mov rcx, r15
call fcn.1411d2230
nop
lea rcx, [rsp + 0x60]
call fcn.1411d7af0
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x1411d119c
mov eax, 0xffffffff
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x1411d119c
mov edx, 2
mov r8d, 8
mov rcx, qword [rsp + 0x48]
call fcn.1411dba10
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1411d11c9
mov eax, 0xffffffff
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x1411d11c9
mov edx, 2
mov r8d, 8
mov rcx, qword [rsp + 0x30]
call fcn.1411dba10
test rbp, rbp
mov ecx, 0
jg 0x1411d0f80
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret