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

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x910]
sub rsp, 0xa10
mov ecx, 4
mov rax, qword gs:[0x58]
mov rax, qword [rax]
lea rsi, [0x1401d4300]
mov eax, dword [rcx + rax]
cmp dword [0x1401d5694], eax
jle 0x140085533
lea rcx, [0x1401d5694]
call fcn.1401271ac
cmp dword [0x1401d5694], 0xffffffff
jne 0x140085533
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x20]
mov qword [rbp + 0x938], rax
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov eax, eax
mov qword [rsp + 0x38], rax
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
mov r9, rax
cmp rbx, 0x989680
jne 0x140085340
imul rax, r9, 0x64
jmp 0x1400853b9
cmp rbx, 0x16e3600
jne 0x14008539e
movabs r10, 0xb2f4fc0794908cf3
mov rax, r10
imul r9
add rdx, r9
sar rdx, 0x18
mov rcx, rdx
shr rcx, 0x3f
add rdx, rcx
imul r8, rdx, 0x3b9aca00
imul rcx, rdx, 0x16e3600
sub r9, rcx
imul rcx, r9, 0x3b9aca00
mov rax, r10
imul rcx
add rdx, rcx
sar rdx, 0x18
mov rax, rdx
shr rax, 0x3f
add rax, rdx
add rax, r8
jmp 0x1400853b9
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x20], xmm0
xor edi, edi
mov ecx, edi
mov qword [rsp + 0x30], rcx
lea rbx, [rsp + 0x38]
mov rdx, qword [rsp + 0x28]
nop word [rax + rax]
mov eax, dword [rbx]
mov dword [rbp + 0x930], eax
cmp rdx, rcx
je 0x1400853ff
mov dword [rdx], eax
mov rdx, qword [rsp + 0x28]
add rdx, 4
mov qword [rsp + 0x28], rdx
jmp 0x140085415
lea r8, [rbp + 0x930]
lea rcx, [rsp + 0x20]
call fcn.14008f720
mov rdx, qword [rsp + 0x28]
add rbx, 8
lea rax, [rsp + 0x48]
cmp rbx, rax
je 0x14008542a
mov rcx, qword [rsp + 0x30]
jmp 0x1400853e0
mov dword [0x1401d5684], 0xffffffff
mov edx, 0x1571
mov dword [0x1401d4304], edx
mov ecx, 1
nop dword [rax]
nop dword [rax + rax]
mov eax, edx
shr eax, 0x1e
xor eax, edx
imul edx, eax, 0x6c078965
add edx, ecx
mov dword [rsi + rcx*4 + 4], edx
inc rcx
cmp rcx, 0x270
jb 0x140085450
mov dword [0x1401d4300], 0x270
lea r8, [rbp + 0x910]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x20]
call fcn.14008e180
mov rdx, rdi
nop dword [rax]
nop word [rax + rax]
mov ecx, dword [rsp + rdx*4 + 0x50]
mov dword [rsi + rdx*4 + 4], ecx
mov eax, ecx
or eax, edi
shr ecx, 0x1f
test rdx, rdx
cmovne ecx, eax
inc rdx
mov edi, ecx
cmp rdx, 0x270
jb 0x1400854a0
test ecx, ecx
jne 0x1400854d1
mov dword [0x1401d4304], 0x80000000
mov dword [0x1401d4300], 0x270
mov rcx, qword [rsp + 0x20]
test rcx, rcx
je 0x140085527
mov rax, qword [rsp + 0x30]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140085521
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140085521
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401270fc
nop
lea rcx, [0x1401d5694]
call fcn.140127140
mov rax, rsi
mov rbx, qword [rsp + 0xa40]
add rsp, 0xa10
pop rdi
pop rsi
pop rbp
ret