Function at 0x100df300
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100ef531
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.0x100df707.217
lea esi, [ebx + 8]
test esi, esi
je 0x100df38d
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x100df382
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
cmp dword [eax + 0x14], 0xf7
jne 0x100df382
push dword [ebp + 0x10]
mov esi, dword [ebp + 8]
mov ecx, ebx
push dword [ebp + 0xc]
push esi
call fcn.100ddbf0
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 0x100df38f
xor eax, eax
mov eax, dword [eax + 0x14]
sub eax, 0x56
je 0x100dfa9b
sub eax, 2
je 0x100dfa9b
sub eax, 1
je 0x100dfa9b
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 0x100df3d8
sub ecx, dword [ebp - 0x10]
je 0x100df41b
mov ebx, dword [ebp - 0x14]
mov esi, edi
nop dword [eax]
movsx eax, byte [edx + ebx]
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 0x100df402
sub ecx, edi
cmp edx, ecx
jb 0x100df3f0
mov ebx, dword [ebp - 0x18]
mov dword [ebp - 0x14], esi
mov edi, dword [ebp - 0x14]
lea esi, [ebx + 8]
push edi
call fcn.100dc660
test al, al
je 0x100df474
cmp byte [ebp + 0x10], 0
mov eax, dword [0x101178b0]
mov ecx, dword [eax]
je 0x100df453
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 0x100df4a0
sub ecx, dword [ebp - 0x18]
je 0x100df50c
mov esi, dword [ebp - 0x14]
nop
movsx eax, byte [edi + esi]
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 0x100df4c5
sub ecx, dword [ebp - 0x18]
cmp edi, ecx
jb 0x100df4b0
lea esi, [ebx + 8]
cmp edx, 0x5978b32e
ja 0x100df57f
je 0x100df593
cmp edx, 0x1b20e275
je 0x100df593
cmp edx, 0x3cb8abb3
je 0x100df593
cmp edx, 0x4c849f3c
je 0x100df593
test esi, esi
je 0x100df67b
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x100df603
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
cmp dword [eax + 0x14], 0xd5
je 0x100df54d
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
cmp dword [eax + 0x14], 0x11a
jne 0x100df603
cmp byte [ebp + 0x10], 0
mov eax, dword [0x101178b0]
mov ecx, dword [eax]
je 0x100df5e2
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 0x100df593
cmp edx, 0xa8d619ea
jne 0x100df50c
cmp byte [ebp + 0x10], 0
mov eax, dword [0x101178b0]
mov ecx, dword [eax]
je 0x100df5c1
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 0x100df636
mov eax, dword [esi]
mov eax, dword [eax + 8]
call eax
mov eax, dword [eax + 0x14]
add eax, 0xffffff27
cmp eax, 0x30
ja case.0x100df62d.218
movzx eax, byte [eax + 0x100dfae8]
jmp dword [eax*4 + 0x100dfae0]
mov ecx, esi
mov eax, dword [esi]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x100df658
test esi, esi
je 0x100df650
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
jmp 0x100df652
xor eax, eax
cmp dword [eax + 0x14], 0x1a
je case.0x100df62d.217
test esi, esi
je 0x100df67b
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x100df67b
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
cmp dword [eax + 0x14], 0x13c
je case.0x100df62d.217
mov ecx, ebx
call fcn.100dc6e0
test al, al
je case.0x100df707.217
mov ecx, ebx
call fcn.100dcb60
mov edi, eax
test edi, edi
jne case.0x100df707.218
test esi, esi
je 0x100df6d9
mov ecx, dword [esi]
mov edx, dword [ecx + 8]
mov ecx, esi
call edx
mov ecx, esi
test eax, eax
je 0x100df6df
mov eax, dword [esi]
mov eax, dword [eax + 8]
call eax
mov eax, dword [eax + 0x14]
add eax, 0xffffff27
cmp eax, 0x30
ja case.0x100df6c5.218
movzx eax, byte [eax + 0x100dfb24]
jmp dword [eax*4 + 0x100dfb1c]
mov ecx, ebx
call fcn.100dcaa0
mov edi, eax
test edi, edi
jne case.0x100df707.218
mov ecx, esi
test ecx, ecx
je case.0x100df707.218
mov eax, dword [esi]
mov eax, dword [eax + 8]
call eax
test eax, eax
je case.0x100df707.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.0x100df707.218
movzx eax, byte [eax + 0x100dfb60]
jmp dword [eax*4 + 0x100dfb58]
mov ecx, esi
jmp 0x100df6df
cmp edi, dword [0x10116080]
jne 0x100df769
cmp byte [ebp + 0x10], 0
mov eax, dword [0x101178b0]
mov ecx, dword [eax]
je 0x100df748
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 0x100df7c6
push 0x10116034
call fcn.100e1eb9
add esp, 4
cmp dword [0x10116034], 0xffffffff
jne 0x100df7c6
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.100235f0
push 0x10116034
mov dword [0x10116064], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e1e68
add esp, 4
mov eax, dword [0x10116064]
push edi
call eax
test al, al
je 0x100df7ee
cmp byte [ebp + 0x10], 0
mov eax, dword [0x101178b0]
mov ecx, dword [eax]
je 0x100df748
add ecx, 0x194
jmp 0x100df74e
cmp dword [ebp + 0xc], 0
mov eax, dword [esi + 4]
mov ecx, dword [0x10116100]
je 0x100df953
cmp ecx, eax
jle 0x100df855
push 0x10116100
call fcn.100e1eb9
mov ecx, dword [0x10116100]
add esp, 4
cmp ecx, 0xffffffff
jne 0x100df855
push str.m_iTeamNum
push str.CBaseEntity
mov dword [ebp - 4], 1
call fcn.100e1070
push 0x10116100
mov dword [0x101160fc], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e1e68
mov ecx, dword [0x10116100]
add esp, 4
mov eax, dword [0x101160fc]
cmp dword [eax + ebx], 2
jne 0x100df8af
cmp byte [ebp + 0x10], 0
mov eax, dword [0x101178b0]
mov ecx, dword [eax]
je 0x100df88e
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 0x100df8f5
push 0x10116100
call fcn.100e1eb9
add esp, 4
cmp dword [0x10116100], 0xffffffff
jne 0x100df8f5
push str.m_iTeamNum
push str.CBaseEntity
mov dword [ebp - 4], 2
call fcn.100e1070
push 0x10116100
mov dword [0x101160fc], eax
call fcn.100e1e68
add esp, 4
mov eax, dword [0x101160fc]
cmp dword [eax + ebx], 3
jne case.0x100df707.217
cmp byte [ebp + 0x10], 0
mov eax, dword [0x101178b0]
mov ecx, dword [eax]
je 0x100df932
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 0x100df9a4
push 0x10116100
call fcn.100e1eb9
mov ecx, dword [0x10116100]
add esp, 4
cmp ecx, 0xffffffff
jne 0x100df9a4
push str.m_iTeamNum
push str.CBaseEntity
mov dword [ebp - 4], 3
call fcn.100e1070
push 0x10116100
mov dword [0x101160fc], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e1e68
mov ecx, dword [0x10116100]
add esp, 4
mov edi, dword [0x101160fc]
add edi, ebx
mov ebx, dword [0x10116080]
cmp ecx, dword [esi + 4]
jle 0x100df9f8
push 0x10116100
call fcn.100e1eb9
add esp, 4
cmp dword [0x10116100], 0xffffffff
jne 0x100df9f8
push str.m_iTeamNum
push str.CBaseEntity
mov dword [ebp - 4], 4
call fcn.100e1070
push 0x10116100
mov dword [0x101160fc], eax
call fcn.100e1e68
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 0x100dfa53
cmp byte [ebp + 0x10], 0
je 0x100dfa32
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 0x100dfa7a
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.100de1d0
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