Function at 0x10051ea0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100ecb35
mov eax, dword fs:[0]
push eax
sub esp, 0xa1c
push ebx
push esi
push edi
mov eax, dword [0x1011cfc0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x14], ecx
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 5]
lea edx, [ebx + 5]
cmp eax, 0x1fc45c6
je 0x10051ef0
cmp eax, 0x56184d8b
jne 0x10052151
mov edi, 2
jmp 0x10051f02
cmp dword [edx - 9], 0xd845c6
jne 0x10052151
mov edi, 1
movzx eax, dl
xor eax, 0x811c9dc5
mov dword [ebp - 0x10], edx
imul ecx, eax, 0x1000193
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, eax
mov eax, edx
imul ecx, ecx, 0x1000193
shr eax, 0x10
movzx eax, al
xor ecx, eax
mov eax, edx
imul ecx, ecx, 0x1000193
shr eax, 0x18
xor ecx, eax
lea eax, [ebp - 0x10]
imul esi, ecx, 0x1000193
mov ecx, 0x10c95c28
push esi
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100037a0
mov eax, dword [ebp - 0x18]
test eax, eax
jne 0x10052022
cmp dword [0x10c95c30], 0xfffffff
je 0x10052167
mov dword [ebp - 0x28], 0x10c95c2c
push 0x10
mov dword [ebp - 4], eax
mov dword [ebp - 0x24], eax
call fcn.100be635
mov dword [ebp - 0x24], eax
add esp, 4
lea ecx, [eax + 8]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x20], ecx
mov dword [ecx], eax
mov dword [ecx + 4], 0
mov eax, dword [0x10c95c30]
inc eax
mov dword [ebp - 4], 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x100f47c0]
mov eax, dword [0x10c95c44]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x100f47c0]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [0x10c95c28]
jbe 0x10052009
mov ecx, 0x10c95c28
call fcn.100526d0
push esi
push dword [ebp - 0x20]
lea eax, [ebp - 0x1c]
mov ecx, 0x10c95c28
push eax
call fcn.100037a0
mov ecx, dword [eax]
jmp 0x1005200c
mov ecx, dword [ebp - 0x1c]
push dword [ebp - 0x24]
push ecx
push esi
mov ecx, 0x10c95c28
call fcn.1001ccb0
mov dword [ebp - 4], 0xffffffff
push 0xa00
mov dword [eax + 0xc], edi
lea eax, [ebp - 0xa28]
push 0
push eax
call fcn.100bf9d0
add esp, 0xc
mov dword [ebp - 0xa28], ebx
mov ebx, dword [ebp - 0x14]
lea esi, [ebp - 0xa28]
mov ecx, 0x280
mov dword [ebp - 0xa24], 0
mov dword [ebp - 0x888], 0x100529b0
push str.EmbedMinori
mov ebx, dword [ebx]
sub esp, 0xa00
mov edi, esp
mov dword [ebp - 0x878], 0x10052d30
mov dword [ebp - 0x8a8], 0x31020
mov dword [ebp - 0x8a4], 0
mov dword [ebp - 0x870], 0x10
mov dword [ebp - 0x86c], 0
mov dword [ebp - 0x880], 0x10051e80
rep movsd dword es:[edi], dword [esi]
call fcn.10004fe0
or byte [ebx], al
lea eax, [ebp - 0xa20]
push 0x198
push 0
push eax
call fcn.100bf9d0
add esp, 0xa10
mov dword [ebp - 0x87c], 0
lea eax, [ebp - 0x874]
xorps xmm0, xmm0
movq qword [ebp - 0x884], xmm0
push 0x84c
push 0
push eax
call fcn.100bf9d0
mov eax, dword [ebp + 8]
lea esi, [ebp - 0xa28]
add esp, 0xc
mov dword [ebp - 0xa24], 0
add eax, 5
mov dword [ebp - 0x888], 0x10052980
mov dword [ebp - 0xa28], eax
mov ecx, 0x280
mov eax, dword [ebp - 0x14]
push str.EmbedMinori
sub esp, 0xa00
mov dword [ebp - 0x878], 0x10052d30
mov edi, esp
mov ebx, dword [eax]
rep movsd dword es:[edi], dword [esi]
call fcn.10004fe0
add esp, 0xa04
or byte [ebx], al
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push str.unordered_map_set_too_long
call fcn.100a706a
int3