Function at 0x10065ee0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100ed555
mov eax, dword fs:[0]
push eax
sub esp, 0x58
mov eax, dword [0x1011cfc0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword fs:[0x2c]
mov ecx, dword [0x10c98fa4]
mov esi, dword [ebp + 8]
mov edi, dword [ebp + 0x10]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x10c97e00]
cmp eax, dword [ecx + 4]
jg 0x10066771
mov edx, dword [esi + 0x28]
movzx eax, dl
xor eax, 0x811c9dc5
mov dword [ebp - 0x5c], edx
imul ecx, eax, 0x1000193
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, eax
mov eax, edx
shr eax, 0x10
imul ecx, ecx, 0x1000193
movzx eax, al
shr edx, 0x18
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, 0x10c97de0
xor eax, edx
imul eax, eax, 0x1000193
push eax
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.100037a0
mov eax, dword [eax + 4]
test eax, eax
je 0x10065f91
cmp eax, dword [0x10c97de4]
jne 0x10065fb4
lea eax, [ebp - 0x5c]
mov ecx, 0x10c97de0
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.10035100
push 0
push 0x100f4b48
mov ecx, dword [eax]
add ecx, 0xc
call fcn.100248f0
mov edx, dword [esi + 0x5c]
xorps xmm0, xmm0
mov ecx, edx
mov dword [ebp - 0x48], 0
movups xmmword [ebp - 0x58], xmm0
mov dword [ebp - 0x44], 0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10065fd1
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x58]
call fcn.10003670
lea eax, [ebp - 0x5c]
mov dword [ebp - 4], 3
push eax
lea eax, [ebp - 0x64]
mov ecx, 0x10c97de0
push eax
call fcn.10035100
lea ecx, [ebp - 0x58]
push ecx
mov eax, dword [eax]
add eax, 0xc
push eax
call fcn.1005ef00
add esp, 8
test al, al
jne 0x10066720
lea eax, [ebp - 0x5c]
mov ecx, 0x10c97de0
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.10035100
mov ecx, dword [eax]
lea eax, [ebp - 0x58]
add ecx, 0xc
cmp ecx, eax
je 0x10066046
cmp dword [ebp - 0x44], 0xf
push dword [ebp - 0x48]
cmova eax, dword [ebp - 0x58]
push eax
call fcn.100248f0
xorps xmm0, xmm0
mov dword [ebp - 0x30], 1
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x2c], 0xf
mov word [ebp - 0x40], 0xa
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x28], 0x6e5c6b5c
mov byte [ebp - 0x24], 0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.10082470
mov ecx, dword [ebp - 0x14]
add esp, 0xc
mov byte [ebp - 4], 4
cmp ecx, 0xf
jbe 0x100660ce
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100660c4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10066816
push ecx
push edx
call fcn.100be665
add esp, 8
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
mov byte [ebp - 4], 3
cmp ecx, 0xf
jbe 0x10066118
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006610e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10066816
push ecx
push edx
call fcn.100be665
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x30], 0
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
movups xmmword [ebp - 0x28], xmm0
mov eax, 0x6e5c
mov dword [ebp - 0x18], 2
mov dword [ebp - 0x14], 0xf
mov word [ebp - 0x28], ax
mov byte [ebp - 0x26], 0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 7
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.10082470
mov ecx, dword [ebp - 0x14]
add esp, 0xc
mov byte [ebp - 4], 6
cmp ecx, 0xf
jbe 0x100661a0
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10066196
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006681b
push ecx
push edx
call fcn.100be665
add esp, 8
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
mov byte [ebp - 4], 3
cmp ecx, 0xf
jbe 0x100661ea
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100661e0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006681b
push ecx
push edx
call fcn.100be665
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x30], 0
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
movups xmmword [ebp - 0x28], xmm0
mov eax, 0x6b5c
mov dword [ebp - 0x18], 2
mov dword [ebp - 0x14], 0xf
mov word [ebp - 0x28], ax
mov byte [ebp - 0x26], 0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 9
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.10082470
mov ecx, dword [ebp - 0x14]
add esp, 0xc
mov byte [ebp - 4], 8
cmp ecx, 0xf
jbe 0x10066272
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10066268
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10066820
push ecx
push edx
call fcn.100be665
add esp, 8
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
mov byte [ebp - 4], 3
cmp ecx, 0xf
jbe 0x100662bc
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100662b2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10066820
push ecx
push edx
call fcn.100be665
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x30], 0
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
movups xmmword [ebp - 0x28], xmm0
mov eax, 0x735c
mov dword [ebp - 0x18], 2
mov dword [ebp - 0x14], 0xf
mov word [ebp - 0x28], ax
mov byte [ebp - 0x26], 0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xb
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.10082470
mov ecx, dword [ebp - 0x14]
add esp, 0xc
mov byte [ebp - 4], 0xa
cmp ecx, 0xf
jbe 0x10066344
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006633a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10066825
push ecx
push edx
call fcn.100be665
add esp, 8
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
mov byte [ebp - 4], 3
cmp ecx, 0xf
jbe 0x1006638e
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10066384
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10066825
push ecx
push edx
call fcn.100be665
add esp, 8
push 1
push 0x100fa0d4
lea ecx, [ebp - 0x24]
call fcn.1000e7c0
push 0
push 0x100f6d6c
push eax
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 0xc
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.1000e0b0
mov esi, eax
add esp, 0x14
lea eax, [ebp - 0x58]
cmp eax, esi
je 0x1006642a
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x100663f6
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100663ec
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006682a
push ecx
push edx
call fcn.100be665
add esp, 8
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x58], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x48], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov ecx, dword [ebp - 0x2c]
cmp ecx, 0xf
jbe 0x1006645e
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10066454
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006682a
push ecx
push edx
call fcn.100be665
add esp, 8
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.10012c90
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x10066494
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x10066494
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
xorps xmm0, xmm0
mov dword [ebp - 0x30], 0
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x28], 0x3036463c
mov byte [ebp - 0x24], 0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xe
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.10082470
mov ecx, dword [ebp - 0x14]
add esp, 0xc
mov byte [ebp - 4], 0xd
cmp ecx, 0xf
jbe 0x1006651a
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10066510
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006682f
push ecx
push edx
call fcn.100be665
add esp, 8
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
mov byte [ebp - 4], 3
cmp ecx, 0xf
jbe 0x10066564
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006655a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006682f
push ecx
push edx
call fcn.100be665
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x30], 0
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
movups xmmword [ebp - 0x28], xmm0
mov eax, 0x523c
mov dword [ebp - 0x18], 2
mov dword [ebp - 0x14], 0xf
mov word [ebp - 0x28], ax
mov byte [ebp - 0x26], 0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x10
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.10082470
mov ecx, dword [ebp - 0x14]
add esp, 0xc
mov byte [ebp - 4], 0xf
cmp ecx, 0xf
jbe 0x100665ec
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100665e2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10066834
push ecx
push edx
call fcn.100be665
add esp, 8
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
mov byte [ebp - 4], 3
cmp ecx, 0xf
jbe 0x10066636
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006662c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10066834
push ecx
push edx
call fcn.100be665
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x30], 0
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x14], 0xf
mov word [ebp - 0x28], 0x3e
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x12
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.10082470
mov ecx, dword [ebp - 0x14]
add esp, 0xc
cmp ecx, 0xf
jbe 0x100666b3
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100666a9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10066839
push ecx
push edx
call fcn.100be665
add esp, 8
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp ecx, 0xf
jbe 0x100666f9
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100666ef
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10066839
push ecx
push edx
call fcn.100be665
add esp, 8
mov ecx, dword [ebp - 0x48]
mov eax, 0xb928
cmp ecx, eax
cmova ecx, eax
cmp dword [ebp - 0x44], 0xf
lea eax, [ebp - 0x58]
mov dword [edi + 4], ecx
cmova eax, dword [ebp - 0x58]
push ecx
push eax
push dword [edi]
call fcn.100c0230
add esp, 0xc
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x10066754
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006674a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006683e
push ecx
push edx
call fcn.100be665
add esp, 8
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.100be9a9
mov esp, ebp
pop ebp
ret 0x10
push 0x10c97e00
call fcn.100beaf8
add esp, 4
cmp dword [0x10c97e00], 0xffffffff
jne 0x10065f30
push 0x24
mov dword [ebp - 4], 0
call fcn.100be635
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [0x10c97de4], eax
mov dword [0x10c97dec], 0
mov dword [0x10c97df0], 0
mov dword [0x10c97df4], 0
push eax
push 0x10
mov ecx, 0x10c97dec
mov byte [ebp - 4], 2
mov dword [0x10c97df8], 7
mov dword [0x10c97dfc], 8
mov dword [0x10c97de0], 0x3f800000
call fcn.100069e0
push 0x100f36b0
call fcn.100be994
push 0x10c97e00
mov dword [ebp - 4], 0xffffffff
call fcn.100beaa7
add esp, 8
jmp 0x10065f30
call fcn.100ca86f
call fcn.100ca86f
call fcn.100ca86f
call fcn.100ca86f
call fcn.100ca86f
call fcn.100ca86f
call fcn.100ca86f
call fcn.100ca86f
call fcn.100ca86f
int3