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

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x12e0]
mov eax, 0x13e0
call fcn.140250630
sub rsp, rax
movaps xmmword [rsp + 0x13d0], xmm6
call sub.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_
mov dword [rsp + 0x44], eax
mov edx, 1
mov dword [rbp + 0x12c4], 0xffffffff
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x44], eax
inc rdx
cmp rdx, 0x270
jb 0x1400bb5a0
mov ecx, dword [0x1404d96a8]
lea rax, [rsp + 0x40]
mov qword [rbp + 0x1328], rax
mov edx, 0x80000000
cmp ecx, edx
mov dword [rsp + 0x40], 0x270
mov dword [rbp + 0x1320], 3
mov esi, 0x1f4
lea eax, [rcx - 0x80000000]
mov r12d, 0xffffffff
lea r14d, [rcx + rdx]
mov ecx, dword [0x1404d96b0]
cmovae r14d, eax
lea rax, [rsp + 0x40]
mov qword [rbp + 0x1330], rax
cmp ecx, edx
lea eax, [rcx - 0x80000000]
lea r15d, [rcx + rdx]
cmovae r15d, eax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x30], rax
nop dword [rax]
lea rcx, [rbp + 0x1328]
cmp r14d, 0x7fffffff
jne 0x1400bb659
call fcn.1400a90e0
mov ecx, eax
jmp 0x1400bb69a
lea edi, [r14 - 0x7fffffff]
mov ebx, edi
call fcn.1400a90e0
mov ecx, eax
imul rcx, rbx
cmp ecx, edi
jae 0x1400bb696
mov eax, edi
xor edx, edx
neg eax
div edi
mov edi, edx
cmp ecx, edx
jae 0x1400bb696
nop
lea rcx, [rbp + 0x1328]
call fcn.1400a90e0
mov ecx, eax
imul rcx, rbx
cmp ecx, edi
jb 0x1400bb680
shr rcx, 0x20
movd xmm6, ecx
lea rcx, [rbp + 0x1330]
cvtdq2ps xmm6, xmm6
cmp r15d, 0x7fffffff
jne 0x1400bb6ba
call fcn.1400a90e0
mov ecx, eax
jmp 0x1400bb6fa
lea edi, [r15 - 0x7fffffff]
mov ebx, edi
call fcn.1400a90e0
mov ecx, eax
imul rcx, rbx
cmp ecx, edi
jae 0x1400bb6f6
mov eax, edi
xor edx, edx
neg eax
div edi
mov edi, edx
cmp ecx, edx
jae 0x1400bb6f6
lea rcx, [rbp + 0x1330]
call fcn.1400a90e0
mov ecx, eax
imul rcx, rbx
cmp ecx, edi
jb 0x1400bb6e0
shr rcx, 0x20
mov rdx, qword [0x1404d9a00]
cmp rdx, qword [0x1404d9a08]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x133c], xmm6
movss dword [rbp + 0x1338], xmm0
je 0x1400bb73a
unpcklps xmm0, xmm6
movsd qword [rdx], xmm0
add qword [0x1404d9a00], 8
movsd qword [rbp + 0x1338], xmm0
jmp 0x1400bb74d
lea r8, [rbp + 0x1338]
lea rcx, [0x1404d99f8]
call fcn.1400891b0
lea rcx, [rsp + 0x28]
call fcn.1400a90e0
mov eax, eax
lea rcx, [rsp + 0x30]
add rax, rax
shr rax, 0x20
lea eax, [rax*2 - 1]
movd xmm6, eax
cvtdq2ps xmm6, xmm6
call fcn.1400a90e0
mov rdx, qword [0x1404d9a18]
mov ecx, eax
mov eax, 1
add rcx, rcx
movss dword [rsp + 0x24], xmm6
shr rcx, 0x20
test ecx, ecx
cmove eax, r12d
cmp rdx, qword [0x1404d9a20]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x20], xmm0
je 0x1400bb7c6
unpcklps xmm0, xmm6
movsd qword [rdx], xmm0
add qword [0x1404d9a18], 8
movsd qword [rsp + 0x20], xmm0
jmp 0x1400bb7d7
lea r8, [rsp + 0x20]
lea rcx, [0x1404d9a10]
call fcn.1400891b0
mov rdx, qword [0x1404d9a30]
cmp rdx, qword [0x1404d9a38]
je 0x1400bb7f7
mov dword [rdx], 3
add qword [0x1404d9a30], 4
jmp 0x1400bb80a
lea r8, [rbp + 0x1320]
lea rcx, [0x1404d9a28]
call fcn.140089010
sub rsi, 1
jne 0x1400bb640
movaps xmm6, xmmword [rsp + 0x13d0]
add rsp, 0x13e0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret