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

Disassembly:
mov eax, 0x1478
call fcn.1800c5940
sub rsp, rax
mov rax, qword [0x180131038]
xor rax, rsp
mov qword [rsp + 0x1400], rax
cmp byte [0x1801323b9], 0
je 0x18005762a
cmp byte [0x1801323ba], 0
je 0x1800571d7
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
sub rax, qword [0x180139888]
cmp rax, 0x9c4
jbe 0x1800571d7
lea rax, vtable.std::_Func_impl_no_alloc_class__void___cdecl_plugins::spot_minimap_void_::_10::_lambda_1___void___.0
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x28]
lea rax, [rsp + 0x28]
mov qword [rsp + 0x60], rax
call fcn.1800b6520
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov qword [0x180139888], rax
movabs rax, 0x142670d80
mov rax, qword [rax]
test rax, rax
je 0x18005762a
mov qword [rsp + 0x1488], rbp
mov rbp, qword [rax + 0x60]
test rbp, rbp
je 0x180057622
mov qword [rsp + 0x1490], rsi
mov rsi, qword [rbp + 0x540]
mov qword [rsp + 0x1468], r14
movabs r14, 0xefffffffeffff
lea rax, [rsi - 0x10000]
cmp rax, r14
ja 0x180057612
mov rcx, qword [rsi]
lea rax, [rcx - 0x10000]
cmp rax, r14
ja 0x180057612
mov qword [rsp + 0x1470], r12
movabs r12, 0xfffffffebfffffff
lea rax, [rcx + r12]
cmp rax, 0xffffffd
ja 0x18005760a
mov qword [rsp + 0x1480], rbx
mov qword [rsp + 0x1498], rdi
mov qword [rsp + 0x1460], r15
movaps xmmword [rsp + 0x1450], xmm6
movaps xmmword [rsp + 0x1440], xmm7
movaps xmmword [rsp + 0x1430], xmm8
movaps xmmword [rsp + 0x1420], xmm9
movaps xmmword [rsp + 0x1410], xmm10
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov dword [rsp + 0x13f4], 0xffffffff
mov edx, 1
mov dword [rsp + 0x74], eax
nop word [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x74], eax
inc rdx
cmp rdx, 0x270
jb 0x1800572d0
movsd xmm8, qword [0x18011b6c8]
xor edi, edi
movsd xmm7, qword [0x18011b7a8]
mov r15d, 0x17a
movsd xmm10, qword [0x18011b6c0]
xorps xmm6, xmm6
mov dword [rsp + 0x70], 0x270
xorps xmm9, xmm9
cmp byte [0x180132438], 0
je 0x180057372
movaps xmm1, xmm6
movaps xmm2, xmm8
mov ebx, 2
lea rcx, [rsp + 0x70]
call fcn.180057830
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm6
mulsd xmm0, xmm2
mulsd xmm2, xmm7
addsd xmm1, xmm0
sub rbx, 1
jne 0x180057335
divsd xmm1, xmm2
addsd xmm1, xmm6
comisd xmm10, xmm1
ja 0x1800575ba
mov rax, qword [rbp + 0x548]
mov rbx, qword [rax + rdi*8]
lea rax, [rbx - 0x10000]
cmp rax, r14
ja 0x1800575ba
test rbx, rbx
je 0x1800575ba
mov rdx, qword [rbx]
lea rax, [rdx - 0x10000]
cmp rax, r14
ja 0x1800575ba
test rdx, rdx
je 0x1800575ba
lea rax, [rdx + r12]
cmp rax, 0xffffffd
ja 0x1800575ba
cmp rbx, rsi
je 0x1800575ba
mov eax, dword [rsi + 0x13cc]
cmp dword [rbx + 0x13cc], eax
je 0x1800575ba
mov rcx, rbx
call qword [rdx + 0x20]
test al, al
je 0x1800574e0
mov rdx, qword [rbx + 0x14c0]
lea rax, [rdx - 0x10000]
cmp rax, r14
ja 0x1800574e0
test rdx, rdx
je 0x1800574e0
mov rcx, qword [rdx]
lea rax, [rcx - 0x10000]
cmp rax, r14
ja 0x1800574e0
test rcx, rcx
je 0x1800574e0
lea rax, [rcx + r12]
cmp rax, 0xffffffd
ja 0x1800574e0
mov rdx, qword [rdx + 0x38]
lea rax, [rdx - 0x10000]
cmp rax, r14
ja 0x1800575ba
test rdx, rdx
je 0x1800575ba
movzx r8d, byte [rdx + 9]
lea rcx, [rdx + 0x10]
shl r8, 5
add r8, 0x30
add r8, rdx
cmp qword [rdx + 0x20], 0
je 0x1800575ba
cmp word [rcx], r15w
je 0x180057492
add rcx, 0x20
cmp rcx, r8
je 0x1800575ba
cmp qword [rcx + 0x10], 0
jne 0x180057473
jmp 0x1800575ba
mov rdx, qword [rcx + 0x10]
lea rax, [rdx - 0x10000]
cmp rax, r14
ja 0x1800575ba
test rdx, rdx
je 0x1800575ba
mov rcx, qword [rdx]
lea rax, [rcx - 0x10000]
cmp rax, r14
ja 0x1800575ba
test rcx, rcx
je 0x1800575ba
lea rax, [rcx + r12]
cmp rax, 0xffffffd
ja 0x1800575ba
jmp 0x1800575ac
mov rcx, rbx
call fcn.18004fea0
mov rdx, rax
lea rcx, [rax - 0x10000]
cmp rcx, r14
ja 0x1800575ba
test rax, rax
je 0x1800575ba
mov rax, qword [rax]
lea rcx, [rax - 0x10000]
cmp rcx, r14
ja 0x1800575ba
test rax, rax
je 0x1800575ba
add rax, r12
cmp rax, 0xffffffd
ja 0x1800575ba
mov rcx, qword [rdx + 0x140]
lea rax, [rcx - 0x10000]
cmp rax, r14
ja 0x1800575ba
test rcx, rcx
je 0x1800575ba
movss xmm0, dword [rcx + 0x20]
comiss xmm0, xmm9
seta al
test al, al
je 0x1800575ba
mov rdx, qword [rdx + 0x38]
lea rax, [rdx - 0x10000]
cmp rax, r14
ja 0x1800575ba
test rdx, rdx
je 0x1800575ba
movzx r8d, byte [rdx + 9]
lea rcx, [rdx + 0x10]
shl r8, 5
add r8, 0x30
add r8, rdx
cmp qword [rdx + 0x20], 0
je 0x1800575aa
nop word [rax + rax]
cmp word [rcx], r15w
je 0x180057642
add rcx, 0x20
cmp rcx, r8
je 0x1800575aa
cmp qword [rcx + 0x10], 0
jne 0x180057590
xor edx, edx
xor eax, eax
cmp byte [0x18013242c], al
setne al
mov dword [rdx + 0x50], eax
inc rdi
cmp rdi, 0x46
jl 0x180057320
movaps xmm10, xmmword [rsp + 0x1410]
movaps xmm9, xmmword [rsp + 0x1420]
movaps xmm8, xmmword [rsp + 0x1430]
movaps xmm7, xmmword [rsp + 0x1440]
movaps xmm6, xmmword [rsp + 0x1450]
mov r15, qword [rsp + 0x1460]
mov rdi, qword [rsp + 0x1498]
mov rbx, qword [rsp + 0x1480]
mov r12, qword [rsp + 0x1470]
mov rsi, qword [rsp + 0x1490]
mov r14, qword [rsp + 0x1468]
mov rbp, qword [rsp + 0x1488]
mov rcx, qword [rsp + 0x1400]
xor rcx, rsp
call fcn.1800c44a0
add rsp, 0x1478
ret
mov rdx, qword [rcx + 0x10]
lea rax, [rdx - 0x10000]
cmp rax, r14
ja 0x1800575ac
test rdx, rdx
je 0x1800575ac
mov rcx, qword [rdx]
lea rax, [rcx - 0x10000]
cmp rax, r14
ja 0x1800575ac
test rcx, rcx
je 0x1800575ac
lea rax, [rcx + r12]
cmp rax, 0xffffffd
ja 0x1800575ac
jmp 0x1800575ba