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

Disassembly:
push rsi
push r15
mov eax, 0x13d8
call fcn.1400c9790
sub rsp, rax
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov dword [rsp + 0x13a4], 0xffffffff
mov edx, 1
mov dword [rsp + 0x24], eax
nop dword [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x24], eax
inc rdx
cmp rdx, 0x270
jb 0x14005f840
mov r15, qword [0x1401ac848]
xor esi, esi
mov rax, qword [0x1401ac850]
sub rax, r15
mov dword [rsp + 0x20], 0x270
sar rax, 3
test rax, rax
je 0x14005fac0
mov rax, qword [0x1401acb28]
xorps xmm5, xmm5
movss xmm4, dword [0x1400eb9f0]
mov qword [rsp + 0x13f8], rbx
mov ebx, esi
mov qword [rsp + 0x1400], rbp
mov qword [rsp + 0x1408], rdi
mov rdi, qword [0x1401ac860]
mov qword [rsp + 0x13d0], r12
mov r12d, dword [0x1401ac840]
mov qword [rsp + 0x13c8], r13
mov r13d, dword [0x1401ac87c]
mov qword [rsp + 0x13c0], r14
mov r14d, esi
movaps xmmword [rsp + 0x13b0], xmm6
movsd xmm6, qword [0x1400eb788]
mov qword [rsp + 0x13f0], rax
nop dword [rax + rax]
movss xmm1, dword [rdi + rbx]
xorps xmm2, xmm2
mov ebp, dword [rax + r14]
movss xmm0, dword [r15 + rbx]
cvtps2pd xmm1, xmm1
cvtps2pd xmm0, xmm0
mulsd xmm1, xmm6
cvtsi2ss xmm2, ebp
addsd xmm1, xmm0
movss xmm0, dword [r15 + rbx + 4]
cvtps2pd xmm0, xmm0
cvtpd2ps xmm3, xmm1
movss dword [r15 + rbx], xmm3
movss xmm1, dword [rdi + rbx + 4]
cvtps2pd xmm1, xmm1
mulsd xmm1, xmm6
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movaps xmm1, xmm3
subss xmm1, xmm2
movss dword [r15 + rbx + 4], xmm0
comiss xmm5, xmm1
ja 0x14005f979
movd xmm0, r13d
addss xmm2, xmm3
cvtdq2ps xmm0, xmm0
comiss xmm2, xmm0
ja 0x14005f979
movss xmm2, dword [rdi + rbx + 4]
jmp 0x14005f9d3
movss xmm0, dword [rdi + rbx]
lea rcx, [rsp + 0x20]
xorps xmm0, xmm4
movss dword [rdi + rbx], xmm0
call fcn.1400662b0
mov ecx, eax
imul rax, rcx, 0x169
cmp eax, 0x77
ja 0x14005f9b8
nop
lea rcx, [rsp + 0x20]
call fcn.1400662b0
mov ecx, eax
imul rax, rcx, 0x169
cmp eax, 0x78
jb 0x14005f9a0
shr rax, 0x20
and eax, 1
lea eax, [rax*2 - 1]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movss dword [rdi + rbx + 4], xmm2
movss xmm3, dword [r15 + rbx + 4]
movd xmm0, ebp
movaps xmm1, xmm3
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
comiss xmm5, xmm1
ja 0x14005fa05
movd xmm1, ebp
cvtdq2ps xmm1, xmm1
movd xmm0, r12d
cvtdq2ps xmm0, xmm0
addss xmm1, xmm3
comiss xmm1, xmm0
jbe 0x14005fa58
xorps xmm2, xmm4
lea rcx, [rsp + 0x20]
movss dword [rdi + rbx + 4], xmm2
call fcn.1400662b0
mov ecx, eax
imul rax, rcx, 0x169
cmp eax, 0x77
ja 0x14005fa3e
lea rcx, [rsp + 0x20]
call fcn.1400662b0
mov ecx, eax
imul rax, rcx, 0x169
cmp eax, 0x78
jb 0x14005fa26
shr rax, 0x20
and eax, 1
lea eax, [rax*2 - 1]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rdi + rbx], xmm0
mov rcx, qword [0x1401ac850]
inc esi
sub rcx, qword [0x1401ac848]
add rbx, 8
movsxd rax, esi
add r14, 4
sar rcx, 3
cmp rax, rcx
mov rax, qword [rsp + 0x13f0]
jb 0x14005f900
movaps xmm6, xmmword [rsp + 0x13b0]
mov r14, qword [rsp + 0x13c0]
mov r13, qword [rsp + 0x13c8]
mov r12, qword [rsp + 0x13d0]
mov rdi, qword [rsp + 0x1408]
mov rbp, qword [rsp + 0x1400]
mov rbx, qword [rsp + 0x13f8]
add rsp, 0x13d8
pop r15
pop rsi
ret