Function at 0x14006ba90
Capabilities:
Encode data using xor
Generate random numbers using a mersenne twister

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r12
push r14
push r15
mov eax, 0x13d0
call fcn.140163200
sub rsp, rax
mov rax, qword [0x1401cca00]
xor rax, rsp
mov qword [rsp + 0x13c0], rax
mov r14, rcx
mov qword [rsp + 0x28], rcx
xor eax, eax
mov dword [rsp + 0x24], eax
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], rax
mov qword [rcx + 0x18], rax
xor r8d, r8d
lea rdx, [0x1401980f9]
call fcn.140006df0
mov dword [rsp + 0x24], 1
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
mov dword [rsp + 0x13b4], 0xffffffff
mov dword [rsp + 0x34], eax
mov ecx, 1
mov eax, edx
shr eax, 0x1e
xor eax, edx
imul edx, eax, 0x6c078965
add edx, ecx
mov dword [rsp + rcx*4 + 0x34], edx
inc rcx
cmp rcx, 0x270
jb 0x14006bb10
mov dword [rsp + 0x30], 0x270
mov ebp, reloc.WLDAP32.dll_Ordinal_32
mov r12d, 0x80000000
movzx ebx, byte [rsp + 0x20]
movzx edi, byte [rsp + 0x20]
movzx esi, byte [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.14006cb60
mov ecx, eax
imul rcx, rcx, 0x1a
cmp ecx, 0x15
ja 0x14006bb7b
lea rcx, [rsp + 0x30]
call fcn.14006cb60
mov ecx, eax
imul rcx, rcx, 0x1a
cmp ecx, 0x16
jb 0x14006bb66
shr rcx, 0x20
add ecx, 0x80000041
lea eax, [rcx - 0x80000000]
lea r8d, [rcx + r12]
cmp ecx, r12d
cmovae r8d, eax
mov eax, 0x55555556
imul r8d
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
sub r8d, eax
lea rcx, [rsp + 0x30]
jne 0x14006bc0a
call fcn.14006cb60
mov ecx, eax
imul rax, rcx, 0x1a
cmp eax, 0x1a
jae 0x14006bbe5
cmp eax, 0x16
jae 0x14006bbe5
nop word [rax + rax]
lea rcx, [rsp + 0x30]
call fcn.14006cb60
mov ecx, eax
imul rax, rcx, 0x1a
cmp eax, 0x16
jb 0x14006bbd0
shr rax, 0x20
lea r9d, [rax - 0x7fffffbf]
mov rcx, qword [r14 + 0x10]
mov rdx, qword [r14 + 0x18]
cmp rcx, rdx
jb 0x14006bca0
movzx r8d, bl
jmp 0x14006bcc3
cmp r8d, 1
jne 0x14006bc58
call fcn.14006cb60
mov ecx, eax
imul rax, rcx, 0x1a
cmp eax, 0x1a
jae 0x14006bc3a
cmp eax, 0x16
jae 0x14006bc3a
lea rcx, [rsp + 0x30]
call fcn.14006cb60
mov ecx, eax
imul rax, rcx, 0x1a
cmp eax, 0x16
jb 0x14006bc25
shr rax, 0x20
lea r9d, [rax - 0x7fffff9f]
mov rcx, qword [r14 + 0x10]
mov rdx, qword [r14 + 0x18]
cmp rcx, rdx
jb 0x14006bca0
movzx r8d, dil
jmp 0x14006bcc3
call fcn.14006cb60
mov ecx, eax
lea rax, [rcx + rcx*4]
add rax, rax
cmp eax, 0xa
jae 0x14006bc88
cmp eax, 6
jae 0x14006bc88
lea rcx, [rsp + 0x30]
call fcn.14006cb60
mov ecx, eax
lea rax, [rcx + rcx*4]
add rax, rax
cmp eax, 6
jb 0x14006bc70
shr rax, 0x20
lea r9d, [rax - 0x7fffffd0]
mov rcx, qword [r14 + 0x10]
mov rdx, qword [r14 + 0x18]
cmp rcx, rdx
jae 0x14006bcbf
lea rax, [rcx + 1]
mov qword [r14 + 0x10], rax
mov rax, r14
cmp rdx, 0xf
jbe 0x14006bcb4
mov rax, qword [r14]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14006bcd0
movzx r8d, sil
mov edx, 1
mov rcx, r14
call fcn.140008f40
sub rbp, 1
jne 0x14006bb51
mov rax, r14
mov rcx, qword [rsp + 0x13c0]
xor rcx, rsp
call fcn.140162570
lea r11, [rsp + 0x13d0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret