Function at 0x100df570
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100ef7b1
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x10112040]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x18], ebx
test ebx, ebx
je case.0x100df977.217
lea esi, [ebx + 8]
test esi, esi
je 0x100df5fd
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x100df5f2
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
cmp dword [eax + 0x14], 0xf7
jne 0x100df5f2
push dword [ebp + 0x10]
mov esi, dword [ebp + 8]
mov ecx, ebx
push dword [ebp + 0xc]
push esi
call fcn.100dde60
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
jmp 0x100df5ff
xor eax, eax
mov eax, dword [eax + 0x14]
sub eax, 0x56
je 0x100dfd0b
sub eax, 2
je 0x100dfd0b
sub eax, 1
je 0x100dfd0b
mov eax, dword [ebx + 4]
lea ecx, [ebx + 4]
mov eax, dword [eax + 0x24]
call eax
mov ecx, dword [0x10116054]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
call edx
mov ecx, eax
mov dword [ebp - 0x14], eax
mov edi, 0x811c9dc5
xor edx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x10], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df648
sub ecx, dword [ebp - 0x10]
je 0x100df68b
mov ebx, dword [ebp - 0x14]
mov esi, edi
nop dword [eax]
movsx eax, byte [ebx + edx]
mov ecx, ebx
xor eax, esi
imul esi, eax, 0x1000193
inc edx
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df672
sub ecx, edi
cmp edx, ecx
jb 0x100df660
mov ebx, dword [ebp - 0x18]
mov dword [ebp - 0x14], esi
mov edi, dword [ebp - 0x14]
lea esi, [ebx + 8]
push edi
call fcn.100dc8e0
test al, al
je 0x100df6e4
cmp byte [ebp + 0x10], 0
mov eax, dword [0x101178b0]
mov ecx, dword [eax]
je 0x100df6c3
mov eax, dword [ebp + 8]
add ecx, 0x17c
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp + 8]
add ecx, 0x150
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebx + 4]
lea ecx, [ebx + 4]
mov eax, dword [eax + 0x24]
call eax
mov ecx, dword [0x10116054]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
call edx
mov ecx, eax
mov dword [ebp - 0x14], eax
mov edx, 0x811c9dc5
xor edi, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x18], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df710
sub ecx, dword [ebp - 0x18]
je 0x100df77c
mov esi, dword [ebp - 0x14]
nop
movsx eax, byte [esi + edi]
mov ecx, esi
xor eax, edx
imul edx, eax, 0x1000193
inc edi
lea eax, [ecx + 1]
mov dword [ebp - 0x18], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df735
sub ecx, dword [ebp - 0x18]
cmp edi, ecx
jb 0x100df720
lea esi, [ebx + 8]
cmp edx, 0x5978b32e
ja 0x100df7ef
je 0x100df803
cmp edx, 0x1b20e275
je 0x100df803
cmp edx, 0x3cb8abb3
je 0x100df803
cmp edx, 0x4c849f3c
je 0x100df803
test esi, esi
je 0x100df8eb
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x100df873
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
cmp dword [eax + 0x14], 0xd5
je 0x100df7bd
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
cmp dword [eax + 0x14], 0x11a
jne 0x100df873
cmp byte [ebp + 0x10], 0
mov eax, dword [0x101178b0]
mov ecx, dword [eax]
je 0x100df852
mov eax, dword [ebp + 8]
add ecx, 0x184
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp edx, 0x97113ea7
je 0x100df803
cmp edx, 0xa8d619ea
jne 0x100df77c
cmp byte [ebp + 0x10], 0
mov eax, dword [0x101178b0]
mov ecx, dword [eax]
je 0x100df831
mov eax, dword [ebp + 8]
add ecx, 0x180
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp + 8]
add ecx, 0x154
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp + 8]
add ecx, 0x158
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
mov ecx, esi
test eax, eax
je 0x100df8a6
mov eax, dword [esi]
mov eax, dword [eax + 8]
call eax
mov eax, dword [eax + 0x14]
add eax, 0xffffff27
cmp eax, 0x30
ja case.0x100df89d.218
movzx eax, byte [eax + 0x100dfd58]
jmp dword [eax*4 + 0x100dfd50]
mov ecx, esi
mov eax, dword [esi]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x100df8c8
test esi, esi
je 0x100df8c0
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
jmp 0x100df8c2
xor eax, eax
cmp dword [eax + 0x14], 0x1a
je case.0x100df89d.217
test esi, esi
je 0x100df8eb
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x100df8eb
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
cmp dword [eax + 0x14], 0x13c
je case.0x100df89d.217
mov ecx, ebx
call fcn.100dc960
test al, al
je case.0x100df977.217
mov ecx, ebx
call fcn.100dcde0
mov edi, eax
test edi, edi
jne case.0x100df977.218
test esi, esi
je 0x100df949
mov ecx, dword [esi]
mov edx, dword [ecx + 8]
mov ecx, esi
call edx
mov ecx, esi
test eax, eax
je 0x100df94f
mov eax, dword [esi]
mov eax, dword [eax + 8]
call eax
mov eax, dword [eax + 0x14]
add eax, 0xffffff27
cmp eax, 0x30
ja case.0x100df935.218
movzx eax, byte [eax + 0x100dfd94]
jmp dword [eax*4 + 0x100dfd8c]
mov ecx, ebx
call fcn.100dcd20
mov edi, eax
test edi, edi
jne case.0x100df977.218
mov ecx, esi
test ecx, ecx
je case.0x100df977.218
mov eax, dword [esi]
mov eax, dword [eax + 8]
call eax
test eax, eax
je case.0x100df977.218
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
mov eax, dword [eax + 0x14]
add eax, 0xffffff27
cmp eax, 0x30
ja case.0x100df977.218
movzx eax, byte [eax + 0x100dfdd0]
jmp dword [eax*4 + 0x100dfdc8]
mov ecx, esi
jmp 0x100df94f
cmp edi, dword [0x10116080]
jne 0x100df9d9
cmp byte [ebp + 0x10], 0
mov eax, dword [0x101178b0]
mov ecx, dword [eax]
je 0x100df9b8
mov eax, dword [ebp + 8]
add ecx, 0x190
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
add ecx, 0x164
mov eax, dword [ebp + 8]
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword fs:[0x2c]
mov ecx, dword [0x10115fb4]
mov esi, dword [eax + ecx*4]
mov eax, dword [0x10116034]
cmp eax, dword [esi + 4]
jle 0x100dfa36
push 0x10116034
call fcn.100e211f
add esp, 4
cmp dword [0x10116034], 0xffffffff
jne 0x100dfa36
push str.55_8B_EC_81_EC_________E8_________85_C0_74_7E_8B_4D_08_85_C9_74_77_A1_________83_78_08_00_74_6C_83_78_0C_00_74_66_A1_________83_C1_08_56_8B_30_8D_85_________50_8B_01
push ecx
mov dword [ebp - 4], 0
call fcn.100234e0
push 0x10116034
mov dword [0x10116064], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e20ce
add esp, 4
mov eax, dword [0x10116064]
push edi
call eax
test al, al
je 0x100dfa5e
cmp byte [ebp + 0x10], 0
mov eax, dword [0x101178b0]
mov ecx, dword [eax]
je 0x100df9b8
add ecx, 0x194
jmp 0x100df9be
cmp dword [ebp + 0xc], 0
mov eax, dword [esi + 4]
mov ecx, dword [0x10116100]
je 0x100dfbc3
cmp ecx, eax
jle 0x100dfac5
push 0x10116100
call fcn.100e211f
mov ecx, dword [0x10116100]
add esp, 4
cmp ecx, 0xffffffff
jne 0x100dfac5
push str.m_iTeamNum
push str.CBaseEntity
mov dword [ebp - 4], 1
call fcn.100e12d0
push 0x10116100
mov dword [0x101160fc], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e20ce
mov ecx, dword [0x10116100]
add esp, 4
mov eax, dword [0x101160fc]
cmp dword [eax + ebx], 2
jne 0x100dfb1f
cmp byte [ebp + 0x10], 0
mov eax, dword [0x101178b0]
mov ecx, dword [eax]
je 0x100dfafe
mov eax, dword [ebp + 8]
add ecx, 0x198
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp + 8]
add ecx, 0x16c
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp ecx, dword [esi + 4]
jle 0x100dfb65
push 0x10116100
call fcn.100e211f
add esp, 4
cmp dword [0x10116100], 0xffffffff
jne 0x100dfb65
push str.m_iTeamNum
push str.CBaseEntity
mov dword [ebp - 4], 2
call fcn.100e12d0
push 0x10116100
mov dword [0x101160fc], eax
call fcn.100e20ce
add esp, 4
mov eax, dword [0x101160fc]
cmp dword [eax + ebx], 3
jne case.0x100df977.217
cmp byte [ebp + 0x10], 0
mov eax, dword [0x101178b0]
mov ecx, dword [eax]
je 0x100dfba2
mov eax, dword [ebp + 8]
add ecx, 0x19c
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp + 8]
add ecx, 0x170
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp ecx, eax
jle 0x100dfc14
push 0x10116100
call fcn.100e211f
mov ecx, dword [0x10116100]
add esp, 4
cmp ecx, 0xffffffff
jne 0x100dfc14
push str.m_iTeamNum
push str.CBaseEntity
mov dword [ebp - 4], 3
call fcn.100e12d0
push 0x10116100
mov dword [0x101160fc], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e20ce
mov ecx, dword [0x10116100]
add esp, 4
mov edi, dword [0x101160fc]
add edi, ebx
mov ebx, dword [0x10116080]
cmp ecx, dword [esi + 4]
jle 0x100dfc68
push 0x10116100
call fcn.100e211f
add esp, 4
cmp dword [0x10116100], 0xffffffff
jne 0x100dfc68
push str.m_iTeamNum
push str.CBaseEntity
mov dword [ebp - 4], 4
call fcn.100e12d0
push 0x10116100
mov dword [0x101160fc], eax
call fcn.100e20ce
add esp, 4
mov eax, dword [0x101160fc]
mov ecx, dword [edi]
cmp ecx, dword [ebx + eax]
mov eax, dword [0x101178b0]
mov ecx, dword [eax]
jne 0x100dfcc3
cmp byte [ebp + 0x10], 0
je 0x100dfca2
mov eax, dword [ebp + 8]
add ecx, 0x1a4
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp + 8]
add ecx, 0x178
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp byte [ebp + 0x10], 0
je 0x100dfcea
mov eax, dword [ebp + 8]
add ecx, 0x1a0
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp + 8]
add ecx, 0x174
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push dword [ebp + 0x10]
mov esi, dword [ebp + 8]
mov ecx, ebx
push dword [ebp + 0xc]
push esi
call fcn.100de440
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp + 8]
mov dword [eax], 0xffffffff
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc