Function at 0x140092af0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 8], rcx
push rbx
push rbp
push r12
push r14
sub rsp, 0x48
mov rax, qword [rcx + 0x10]
mov r12, r9
mov r14, r8
mov rbx, rdx
mov rbp, rcx
cmp qword [rcx + 8], rax
jne 0x140092b1f
call fcn.140041540
mov qword [rsp + 0x40], rdi
call fcn.1400769d0
test al, al
je 0x140092b6c
cmp r12, 4
jb 0x140092b6c
mov rdi, r12
shr rdi, 2
imul rax, rdi, 0xfffffffffffffffc
add r12, rax
mov qword [rsp + 0x88], r12
nop dword [rax]
mov r8, r14
mov rdx, rbx
mov rcx, rbp
call fcn.1400aa5d0
add rbx, 0x40
add r14, 0x40
sub rdi, 1
jne 0x140092b50
test r12, r12
je 0x140092eea
mov qword [rsp + 0x78], rsi
lea rdi, [rbx + 8]
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r15
lea r15, [r14 + 8]
sub r14, rbx
mov qword [rsp + 0x28], r15
sub r14, 8
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x80], r14
nop word [rax + rax]
mov rcx, qword [rbp + 8]
lea r14, str.e6lM
mov r10d, dword [rdi - 8]
xor r13d, r13d
mov eax, dword [rdi - 4]
mov esi, dword [rdi]
mov ebx, dword [rdi + 4]
mov ebp, dword [rcx + 4]
mov r15d, dword [rcx + 0xc]
mov edi, dword [rcx + 8]
mov r12d, dword [rcx]
bswap r10d
bswap eax
bswap esi
bswap ebx
movzx ecx, byte [r14 + r13 - 1]
mov r8d, esi
xor r10d, ecx
xor r8d, r10d
mov edx, r8d
mov ecx, r8d
ror edx, 8
rol ecx, 8
xor edx, ecx
mov ecx, ebp
xor r8d, edx
xor ecx, r8d
xor eax, ecx
mov ecx, r15d
xor ecx, r8d
xor ebx, ecx
mov r8d, ebx
rol ebx, 2
xor r8d, eax
mov r9d, ebx
mov edx, r8d
rol eax, 1
ror edx, 8
mov ecx, r8d
rol ecx, 8
xor edx, ecx
mov ecx, ebx
xor r8d, edx
mov edx, edi
xor edx, r8d
xor edx, esi
rol edx, 5
or ecx, edx
mov r11d, edx
not ecx
xor eax, ecx
and r11d, eax
xor r11d, r12d
xor r11d, r8d
xor r11d, r10d
xor r9d, r11d
mov ecx, r11d
xor r9d, edx
ror r11d, 2
xor r9d, eax
xor r11d, r15d
or ecx, r9d
mov r10d, r9d
not ecx
ror r9d, 5
xor eax, ecx
mov r8d, r9d
movzx ecx, byte [r14 + r13]
and r10d, eax
ror eax, 1
xor r10d, ebx
xor r10d, ecx
xor eax, ebp
xor r8d, r10d
mov edx, r8d
mov ecx, r8d
ror edx, 8
rol ecx, 8
xor edx, ecx
xor r8d, edx
xor r11d, r8d
xor eax, r8d
mov r8d, r11d
rol r11d, 2
xor r8d, eax
mov edx, r8d
mov ecx, r8d
ror edx, 8
rol ecx, 8
xor edx, ecx
xor r8d, edx
mov edx, edi
xor edx, r8d
xor edx, r9d
rol edx, 5
rol eax, 1
mov ebx, edx
mov ecx, r11d
or ecx, edx
mov r9d, r11d
not ecx
xor eax, ecx
and ebx, eax
xor ebx, r12d
xor ebx, r8d
xor ebx, r10d
xor r9d, ebx
mov ecx, ebx
xor r9d, edx
ror ebx, 2
xor r9d, eax
xor ebx, r15d
or ecx, r9d
mov r10d, r9d
not ecx
ror r9d, 5
xor eax, ecx
mov r8d, r9d
movzx ecx, byte [r14 + r13 + 1]
and r10d, eax
xor r10d, r11d
ror eax, 1
xor r10d, ecx
xor eax, ebp
xor r8d, r10d
mov edx, r8d
mov ecx, r8d
rol ecx, 8
ror edx, 8
xor edx, ecx
xor r8d, edx
xor eax, r8d
xor ebx, r8d
mov r8d, ebx
rol ebx, 2
xor r8d, eax
rol eax, 1
mov edx, r8d
mov ecx, r8d
rol ecx, 8
ror edx, 8
xor edx, ecx
mov ecx, ebx
xor r8d, edx
mov edx, edi
xor edx, r8d
xor edx, r9d
mov r9d, ebx
rol edx, 5
or ecx, edx
mov r11d, edx
not ecx
xor eax, ecx
and r11d, eax
xor r11d, r12d
xor r11d, r8d
xor r11d, r10d
xor r9d, r11d
mov ecx, r11d
xor r9d, edx
xor r9d, eax
or ecx, r9d
mov r10d, r9d
not ecx
ror r9d, 5
xor eax, ecx
mov r8d, r9d
movzx ecx, byte [r14 + r13 + 2]
and r10d, eax
xor r10d, ebx
xor r10d, ecx
xor r8d, r10d
mov edx, r8d
mov ecx, r8d
ror edx, 8
rol ecx, 8
xor edx, ecx
xor r8d, edx
ror eax, 1
xor eax, ebp
ror r11d, 2
xor eax, r8d
xor r11d, r15d
xor r11d, r8d
add r13, 4
mov r8d, r11d
rol r11d, 2
xor r8d, eax
mov esi, r11d
rol eax, 1
mov edx, r8d
ror edx, 8
mov ecx, r8d
rol ecx, 8
xor edx, ecx
mov ecx, r11d
xor r8d, edx
mov edx, edi
xor edx, r8d
xor edx, r9d
rol edx, 5
or ecx, edx
mov ebx, edx
not ecx
xor eax, ecx
and ebx, eax
xor ebx, r12d
xor ebx, r8d
xor ebx, r10d
xor esi, ebx
mov ecx, ebx
xor esi, edx
ror ebx, 2
xor esi, eax
or ecx, esi
mov r10d, esi
not ecx
ror esi, 5
xor eax, ecx
and r10d, eax
ror eax, 1
xor r10d, r11d
cmp r13, 0x10
jne 0x140092be0
mov r15, qword [rsp + 0x28]
mov edx, esi
mov rdi, qword [rsp + 0x20]
xor edx, r10d
mov rbp, qword [rsp + 0x70]
xor edx, 0xd4
mov r14, qword [rsp + 0x80]
mov r8d, edx
ror r8d, 8
mov ecx, edx
rol ecx, 8
mov r9, qword [rbp + 8]
xor r8d, ecx
xor r8d, edx
mov ecx, r8d
xor ecx, dword [r9 + 4]
xor r8d, dword [r9 + 0xc]
xor eax, ecx
xor r10d, dword [r9]
xor ebx, r8d
mov r8d, ebx
xor r8d, eax
mov edx, r8d
mov ecx, r8d
rol ecx, 8
ror edx, 8
xor edx, ecx
xor r8d, edx
xor r10d, r8d
mov ecx, r8d
xor ecx, dword [r9 + 8]
xor r10d, 0xd4
xor ecx, esi
bswap ecx
bswap r10d
bswap eax
bswap ebx
mov dword [r15], ecx
mov dword [r14 + rdi], r10d
add rdi, r13
mov dword [r15 - 4], eax
mov dword [r15 + 4], ebx
add r15, r13
sub qword [rsp + 0x88], 1
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], r15
jne 0x140092bb0
mov r15, qword [rsp + 0x30]
mov r13, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x40]
add rsp, 0x48
pop r14
pop r12
pop rbp
pop rbx
ret