Function at 0x1011f520
Capabilities:
Hash data using fnv

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10178fe6
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x50
mov dword [ebp - 0x18], 0
lea ecx, [ebp - 0x60]
mov al, byte [0x1029c716]
push esi
mov byte [0x1029c717], al
mov al, byte [0x1029c715]
push edi
push 0
mov byte [0x1029c724], al
call fcn.10122c90
add esp, 4
mov dword [ebp - 4], 0
mov esi, str.default
cmp dword [0x1029937c], 0xf
mov eax, dword [0x10274478]
cmova esi, dword [str.default]
test al, al
jne 0x1011f5a3
mov edi, 0x811c9dc5
jmp 0x1011f5bd
movsx eax, al
mov ecx, 0x10274479
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.100de6f0
mov edi, eax
mov ecx, esi
call fcn.100de710
cmp eax, edi
jne 0x1011f7d5
cmp byte [0x102a0951], 0
je 0x1011f695
mov eax, dword [0x10274478]
xorps xmm0, xmm0
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x48], eax
mov ax, word [0x1027447c]
mov word [ebp - 0x44], ax
mov al, byte [0x1027447e]
mov dword [ebp - 0x38], 7
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x42], al
mov byte [ebp - 0x41], 0
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 1
push eax
mov ecx, 0x102a6610
mov dword [ebp - 0x18], 1
call fcn.100a3900
mov edx, dword [0x102a6608]
mov esi, eax
mov eax, dword [0x102a660c]
mov edi, edx
mov ecx, eax
shrd edi, ecx, 0x18
mov ecx, eax
mov dword [ebp - 0x2c], edi
mov edi, edx
shrd edi, ecx, 0x10
mov ecx, eax
mov dword [ebp - 0x24], edi
mov edi, edx
shrd edi, ecx, 8
mov dword [ebp - 0x1c], edi
cmp byte [esi], dl
jne 0x1011f68f
mov ecx, edi
cmp byte [esi + 1], cl
jne 0x1011f68f
mov ecx, dword [ebp - 0x24]
cmp byte [esi + 2], cl
jne 0x1011f68f
mov ecx, dword [ebp - 0x2c]
cmp byte [esi + 3], cl
jne 0x1011f68f
cmp byte [esi + 4], al
jne 0x1011f68f
mov ecx, eax
shr ecx, 8
cmp byte [esi + 5], cl
jne 0x1011f68f
mov ecx, eax
shr ecx, 0x10
cmp byte [esi + 6], cl
jne 0x1011f68f
shr eax, 0x18
cmp byte [esi + 7], al
je 0x1011f695
mov byte [ebp - 0x11], 1
jmp 0x1011f699
mov byte [ebp - 0x11], 0
mov dword [ebp - 4], 0
test byte [ebp - 0x18], 1
je 0x1011f6dc
mov ecx, dword [ebp - 0x34]
cmp ecx, 0xf
jbe 0x1011f6dc
mov edx, dword [ebp - 0x48]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1011f6d2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1011f6d2
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.101706c8
add esp, 8
cmp byte [ebp - 0x11], 0
je 0x1011f820
mov edi, dword [0x102a6614]
mov esi, dword [edi]
cmp esi, edi
je 0x1011f820
cmp dword [esi + 0x1c], 0xf
lea ecx, [esi + 8]
lea eax, [ecx + 0x18]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x2c], eax
jbe 0x1011f70d
mov ecx, dword [ecx]
mov dword [ebp - 0x18], ecx
mov eax, dword [0x10274478]
test al, al
jne 0x1011f71f
mov dword [ebp - 0x1c], 0x811c9dc5
jmp 0x1011f73d
movsx eax, al
mov ecx, 0x10274479
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.100de6f0
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x1c], eax
call fcn.100de710
cmp eax, dword [ebp - 0x1c]
je 0x1011f7bb
mov ecx, dword [ebp - 0x2c]
mov eax, dword [0x102a6608]
cmp byte [ecx], al
jne 0x1011f7bb
mov dword [ebp - 0x18], eax
mov eax, dword [0x102a660c]
mov edx, eax
shrd dword [ebp - 0x18], edx, 8
mov edx, dword [ebp - 0x18]
cmp byte [ecx + 1], dl
jne 0x1011f7bb
mov edx, dword [0x102a6608]
mov dword [ebp - 0x18], edx
mov edx, eax
shrd dword [ebp - 0x18], edx, 0x10
mov edx, dword [ebp - 0x18]
cmp byte [ecx + 2], dl
jne 0x1011f7bb
mov edx, dword [0x102a6608]
mov dword [ebp - 0x18], edx
mov edx, eax
shrd dword [ebp - 0x18], edx, 0x18
mov edx, dword [ebp - 0x18]
cmp byte [ecx + 3], dl
jne 0x1011f7bb
cmp byte [ecx + 4], al
jne 0x1011f7bb
mov edx, eax
shr edx, 8
cmp byte [ecx + 5], dl
jne 0x1011f7bb
mov edx, eax
shr edx, 0x10
cmp byte [ecx + 6], dl
jne 0x1011f7bb
shr eax, 0x18
cmp byte [ecx + 7], al
je 0x1011f7c7
mov esi, dword [esi]
cmp esi, edi
jne 0x1011f6f6
jmp 0x1011f820
mov esi, dword [ecx]
mov edi, dword [ecx + 4]
mov byte [0x1029c716], 1
jmp 0x1011f833
cmp dword [ebp - 0x4c], 0xf
lea eax, [ebp - 0x60]
push dword [ebp - 0x50]
cmova eax, dword [ebp - 0x60]
mov ecx, str.default
cmp dword [0x1029937c], 0xf
mov edx, dword [0x10299378]
cmova ecx, dword [str.default]
push eax
call fcn.100953e0
add esp, 8
test al, al
jne 0x1011f819
test byte [0x102a65fc], 6
mov byte [0x1029c715], 1
je 0x1011f820
mov byte [0x1029c715], 0
lea eax, [ebp - 0x60]
mov ecx, 0x102a6610
push eax
call fcn.100e4550
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov ecx, dword [ebp - 0x4c]
cmp ecx, 0xf
jbe 0x1011f869
mov edx, dword [ebp - 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1011f85f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1011f85f
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.101706c8
add esp, 8
mov ecx, dword [ebp - 0xc]
mov edx, edi
pop edi
mov eax, esi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret