Function at 0x1400028b4
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x20
xor ebp, ebp
mov esi, r8d
mov rdi, rdx
cmp dword [0x1400a40a0], ebp
mov rbx, rcx
jne 0x1400028ef
call fcn.140002c30
mov dword [0x1400a40a0], 1
lea eax, [rsi - 0x10]
test eax, 0xffffffe7
jne 0x140002c12
cmp esi, 0x28
je 0x140002c12
mov dword [rbx], esi
mov eax, dword [rdi]
lea r10, [rbx + 8]
mov dword [rbx + 4], eax
mov eax, dword [rdi + 4]
mov dword [r10], eax
mov eax, dword [rdi + 8]
mov dword [rbx + 0xc], eax
mov edx, dword [rdi + 0xc]
mov dword [rbx + 0x10], edx
cmp esi, 0x10
je 0x140002ad7
cmp esi, 0x18
je 0x140002a35
cmp esi, 0x20
jne 0x140002b58
mov eax, dword [rdi + 0x10]
lea r14d, [rsi - 0x19]
lea r11, [0x1400a64e0]
mov dword [rbx + 0x14], eax
mov eax, dword [rdi + 0x14]
mov dword [rbx + 0x18], eax
mov eax, dword [rdi + 0x18]
mov dword [rbx + 0x1c], eax
mov ebp, dword [rdi + 0x1c]
lea rdi, [0x1400a44b0]
mov dword [rbx + 0x20], ebp
ror ebp, 8
mov eax, ebp
shr eax, 0x18
movzx edx, al
mov eax, ebp
mov r9d, dword [r11 + rdx*4 + 0xc00]
shr eax, 0x10
movzx ecx, al
mov eax, ebp
xor r9d, dword [r11 + rcx*4 + 0x800]
shr eax, 8
movzx ecx, al
movzx eax, bpl
xor r9d, dword [r11 + rcx*4 + 0x400]
xor r9d, dword [r11 + rax*4]
xor r9d, dword [r10 - 4]
xor r9d, dword [rdi]
lea rdi, [rdi + 4]
mov dword [r10 + 0x1c], r9d
xor r9d, dword [r10]
lea r10, [r10 + 0x20]
mov dword [r10], r9d
xor r9d, dword [r10 - 0x1c]
mov dword [r10 + 4], r9d
xor r9d, dword [r10 - 0x18]
mov eax, r9d
mov dword [r10 + 8], r9d
shr eax, 0x18
movzx edx, al
mov eax, r9d
mov ebp, dword [r11 + rdx*4 + 0xc00]
shr eax, 0x10
movzx ecx, al
mov eax, r9d
xor ebp, dword [r11 + rcx*4 + 0x800]
shr eax, 8
movzx ecx, al
movzx eax, r9b
xor ebp, dword [r11 + rcx*4 + 0x400]
xor ebp, dword [r11 + rax*4]
xor ebp, dword [r10 - 0x14]
mov dword [r10 + 0xc], ebp
xor ebp, dword [r10 - 0x10]
mov dword [r10 + 0x10], ebp
xor ebp, dword [r10 - 0xc]
mov dword [r10 + 0x14], ebp
xor ebp, dword [r10 - 8]
mov dword [r10 + 0x18], ebp
dec r14
jne 0x140002968
jmp 0x140002b58
mov eax, dword [rdi + 0x10]
mov r9d, 8
lea r11, [0x1400a64e0]
mov dword [rbx + 0x14], eax
mov edx, dword [rdi + 0x14]
lea rdi, [0x1400a44b0]
mov dword [rbx + 0x18], edx
ror edx, 8
mov r8d, edx
mov eax, edx
shr eax, 0x18
movzx edx, al
mov eax, r8d
mov edx, dword [r11 + rdx*4 + 0xc00]
shr eax, 0x10
movzx ecx, al
mov eax, r8d
xor edx, dword [r11 + rcx*4 + 0x800]
shr eax, 8
movzx ecx, al
movzx eax, r8b
xor edx, dword [r11 + rcx*4 + 0x400]
xor edx, dword [r11 + rax*4]
xor edx, dword [r10 - 4]
xor edx, dword [rdi]
lea rdi, [rdi + 4]
mov dword [r10 + 0x14], edx
xor edx, dword [r10]
lea r10, [r10 + 0x18]
mov dword [r10], edx
xor edx, dword [r10 - 0x14]
mov dword [r10 + 4], edx
xor edx, dword [r10 - 0x10]
mov dword [r10 + 8], edx
xor edx, dword [r10 - 0xc]
mov dword [r10 + 0xc], edx
xor edx, dword [r10 - 8]
mov dword [r10 + 0x10], edx
dec r9
jne 0x140002a55
jmp 0x140002b58
lea rdi, [0x1400a44b0]
mov r9d, 0xa
lea r11, [0x1400a64e0]
ror edx, 8
mov r8d, edx
mov eax, edx
shr eax, 0x18
movzx edx, al
mov eax, r8d
mov edx, dword [r11 + rdx*4 + 0xc00]
shr eax, 0x10
movzx ecx, al
mov eax, r8d
xor edx, dword [r11 + rcx*4 + 0x800]
shr eax, 8
movzx ecx, al
movzx eax, r8b
xor edx, dword [r11 + rcx*4 + 0x400]
xor edx, dword [r11 + rax*4]
xor edx, dword [r10 - 4]
xor edx, dword [rdi]
lea rdi, [rdi + 4]
mov dword [r10 + 0xc], edx
xor edx, dword [r10]
lea r10, [r10 + 0x10]
mov dword [r10], edx
xor edx, dword [r10 - 0xc]
mov dword [r10 + 4], edx
xor edx, dword [r10 - 8]
mov dword [r10 + 8], edx
dec r9
jne 0x140002aeb
lea rcx, [rbx + 0xf4]
mov edx, 4
mov eax, dword [rcx - 0xf0]
mov dword [rcx], eax
lea rcx, [rcx + 4]
dec rdx
jne 0x140002b64
lea eax, [rsi + 0x18]
cmp eax, 4
jbe 0x140002c0d
add rbx, 0x14
add eax, 0xfffffffc
mov edi, 0x1010101
mov r11d, eax
mov esi, 0xff7f7f7f
mov r9d, dword [rbx]
lea rbx, [rbx + 4]
mov eax, r9d
shr eax, 7
and eax, edi
imul r10d, eax, 0x1b
mov eax, r9d
and eax, esi
add eax, eax
xor r10d, eax
mov eax, r10d
shr eax, 7
and eax, edi
imul r8d, eax, 0x1b
mov eax, r10d
and eax, esi
add eax, eax
xor r8d, eax
mov eax, r8d
mov ecx, r8d
shr eax, 7
and eax, edi
imul edx, eax, 0x1b
mov eax, r8d
and eax, esi
add eax, eax
xor edx, eax
mov eax, r10d
xor r9d, edx
xor ecx, r9d
xor eax, r9d
ror r9d, 0x18
ror ecx, 0x10
ror eax, 8
xor ecx, eax
xor ecx, r9d
xor ecx, edx
xor ecx, r8d
xor ecx, r10d
mov dword [rbx + 0xec], ecx
dec r11
jne 0x140002b95
mov ebp, 1
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
mov eax, ebp
mov rbp, qword [rsp + 0x38]
add rsp, 0x20
pop r14
ret