Function at 0x1009efd0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10135f85
mov eax, dword fs:[0]
push eax
sub esp, 0x50
mov eax, dword [0x103b0024]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword fs:[0x30]
mov dword [ebp - 0x54], edi
mov dword [ebp - 0x4c], 0x515dc51c
mov esi, dword [0x103c648c]
push 0xe442c5c
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.1009f670
mov ecx, esi
mov eax, dword [eax + 4]
test eax, eax
cmovne ecx, eax
cmp ecx, esi
jne 0x1009f252
mov eax, dword [edi + 0xc]
add eax, 0xc
mov ecx, dword [eax]
mov dword [ebp - 0x48], ecx
cmp ecx, eax
je 0x1009f011
mov edx, dword [ecx + 0x30]
test edx, edx
je 0x1009f234
mov ecx, edx
mov dword [ebp - 0x30], 0
xorps xmm0, xmm0
mov dword [ebp - 0x2c], 0
movups xmmword [ebp - 0x40], xmm0
lea esi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1009f070
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x40]
call fcn.1005d120
mov dword [ebp - 4], 0
lea esi, [ebp - 0x40]
cmp dword [ebp - 0x2c], 8
lea edi, [ebp - 0x40]
mov eax, dword [ebp - 0x30]
xorps xmm0, xmm0
cmovae esi, dword [ebp - 0x40]
setae dl
test dl, dl
movups xmmword [ebp - 0x28], xmm0
cmovne edi, dword [ebp - 0x40]
lea eax, [esi + eax*2]
mov dword [ebp - 0x44], eax
cmp edi, eax
jne 0x1009f0d3
mov eax, 0xf
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], eax
mov byte [ebp - 0x28], 0
jmp 0x1009f168
sub eax, edi
xor edx, edx
sar eax, 1
mov esi, 0xf
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x14], esi
cmp eax, 0x7fffffff
ja 0x1009f277
cmp eax, 0x10
jb 0x1009f133
mov esi, eax
or esi, 0xf
cmp esi, 0x7fffffff
jbe 0x1009f108
mov esi, 0x7fffffff
jmp 0x1009f113
cmp esi, 0x16
mov eax, 0x16
cmovb esi, eax
xor ecx, ecx
mov eax, esi
add eax, 1
setb cl
neg ecx
or ecx, eax
push ecx
lea ecx, [ebp - 0x28]
call fcn.1003e460
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x14], esi
mov al, byte [edi]
lea ecx, [ebp - 0x28]
cmp esi, 0x10
cmovae ecx, dword [ebp - 0x28]
add edi, 2
mov byte [edx + ecx], al
mov edx, dword [ebp - 0x18]
inc edx
mov dword [ebp - 0x18], edx
cmp edi, dword [ebp - 0x44]
je 0x1009f156
mov esi, dword [ebp - 0x14]
jmp 0x1009f133
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
mov byte [eax + edx], 0
mov eax, dword [ebp - 0x14]
cmp eax, 0x10
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x48]
lea esi, [ebp - 0x28]
cmovae esi, dword [ebp - 0x28]
mov edi, 0x811c9dc5
mov ecx, esi
xor edx, edx
mov eax, dword [eax + 0x18]
mov dword [ebp - 0x50], eax
lea eax, [ecx + 1]
mov dword [ebp - 0x44], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1009f190
sub ecx, dword [ebp - 0x44]
je 0x1009f1c5
nop dword [eax]
movsx eax, byte [edx + esi]
xor eax, edi
imul eax, eax, 0x1000193
inc edx
mov dword [ebp - 0x44], eax
mov eax, esi
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1009f1b5
sub eax, edi
mov edi, dword [ebp - 0x44]
cmp edx, eax
jb 0x1009f1a0
lea eax, [ebp - 0x44]
mov dword [ebp - 0x44], edi
push eax
call fcn.1009f2b0
mov ecx, dword [ebp - 0x50]
mov byte [ebp - 4], 0
mov dword [eax], ecx
mov dword [eax + 4], esi
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x10
jb 0x1009f20d
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1009f203
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009f24c
push ecx
push edx
call fcn.10123f39
add esp, 8
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
mov dword [ebp - 4], 0xffffffff
call fcn.10041410
mov ecx, dword [ebp - 0x48]
mov edi, dword [ebp - 0x54]
mov eax, dword [edi + 0xc]
mov ecx, dword [ecx]
add eax, 0xc
mov dword [ebp - 0x48], ecx
cmp ecx, eax
jne 0x1009f044
jmp 0x1009f00b
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
cmp dword [0x103c6490], 0
setne al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.101238be
mov esp, ebp
pop ebp
ret
call fcn.10029f60
int3