Function at 0x419e90
Capabilities:
Encode data using xor
Generate random numbers using a mersenne twister
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x55fda0
mov eax, dword fs:[0]
push eax
mov eax, 0x13b0
call fcn.0055fbf0
mov eax, dword [0x8af4c0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x13b0], esi
test esi, esi
je 0x41a0fe
lea ecx, [ebp - 0x13b8]
call fcn.004181f0
mov dword [ebp - 0x18], 0xffffffff
mov ecx, 1
mov edx, dword [eax]
mov dword [ebp - 0x1398], edx
mov eax, edx
shr eax, 0x1e
xor eax, edx
imul edx, eax, 0x6c078965
add edx, ecx
mov dword [ebp + ecx*4 - 0x1398], edx
inc ecx
cmp ecx, 0x270
jb 0x419ef1
push esi
mov dword [ebp - 0x139c], 0x270
mov dword [ebp - 0x14], 0x90000
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
add esp, 4
mov dword [ebp - 0x13ac], eax
test eax, eax
je 0x41a0fe
mov ebx, dword [ebp - 0x13a4]
xor eax, eax
mov dword [ebp - 0x13a8], eax
mov dword [ebp - 0x13a0], ebx
lea edi, [eax + 0xa]
sub esi, eax
lea ecx, [ebp - 0x14]
lea eax, [ebp - 0x139c]
push eax
call fcn.004387b0
movzx eax, ax
cmp esi, 7
jb 0x419f8c
cmp ax, 7
jl 0x419f73
xor ebx, ebx
jmp 0x419fe9
cmp ax, 3
jl 0x419f80
mov ebx, 1
jmp 0x419fe9
test ax, ax
js 0x419ff5
mov ebx, 3
jmp 0x419fe9
cmp esi, 3
jb 0x41a0bc
cmp ax, 6
jl 0x419fa2
mov ebx, 2
jmp 0x419fe9
cmp ax, 5
jne 0x419faf
mov ebx, 5
jmp 0x419fe9
cmp ax, 4
jne 0x419fbc
mov ebx, 6
jmp 0x419fe9
cmp ax, 3
jne 0x419fc9
mov ebx, 7
jmp 0x419fe9
cmp ax, 2
jne 0x419fd6
mov ebx, 8
jmp 0x419fe9
cmp ax, 1
jne 0x419fe3
mov ebx, 9
jmp 0x419fe9
test ax, ax
cmove ebx, edi
mov dword [ebp - 0x13a4], ebx
mov dword [ebp - 0x13a0], ebx
movzx eax, bl
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
mov eax, ebx
sar eax, 8
movzx eax, al
xor ecx, eax
mov eax, ebx
sar eax, 0x10
imul ecx, ecx, 0x1000193
movzx eax, al
xor ecx, eax
mov eax, ebx
sar eax, 0x18
imul ecx, ecx, 0x1000193
movzx eax, al
xor ecx, eax
imul eax, ecx, 0x1000193
push eax
lea eax, [ebp - 0x13a4]
push eax
lea eax, [ebp - 0x13b8]
push eax
call fcn.0043c440
mov ebx, dword [ebp - 0x13b4]
test ebx, ebx
je 0x41a0b1
mov ecx, dword [ebp - 0x13a0]
mov bl, byte [ebx + 0xc]
call fcn.00419b30
mov ecx, dword [ebp - 0x13ac]
mov esi, eax
add ecx, dword [ebp - 0x13a8]
movsx edi, bl
push edi
push esi
push ecx
call sub.VCRUNTIME140.dll_memcpy
push esi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov eax, dword [ebp - 0x13a8]
add esp, 0x10
mov esi, dword [ebp - 0x13b0]
add eax, edi
mov ebx, dword [ebp - 0x13a0]
mov edi, 0xa
mov dword [ebp - 0x13a8], eax
cmp eax, esi
jb 0x419f50
mov eax, dword [ebp - 0x13ac]
jmp 0x41a100
push str.invalid_unordered_map_K__T__key
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__]
push esi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov edi, eax
add esp, 4
test edi, edi
je 0x41a11c
push esi
push 0x90
push edi
call sub.VCRUNTIME140.dll_memset
mov eax, dword [ebp - 0x13a8]
add eax, dword [ebp - 0x13ac]
push esi
push edi
push eax
call sub.VCRUNTIME140.dll_memcpy
push edi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 0x1c
mov eax, dword [ebp - 0x13ac]
jmp 0x41a100
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0055e764
mov esp, ebp
pop ebp
ret
lea ecx, [ebp - 0x13bc]
call fcn.004180e0
push 0x7a4bac
lea eax, [ebp - 0x13bc]
push eax
call sub.VCRUNTIME140.dll__CxxThrowException
int3