Function at 0x10011660
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1007eb3d
mov eax, dword fs:[0]
push eax
sub esp, 0x174
mov eax, dword [0x101be008]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [0x101dae68]
test eax, eax
jne 0x100116ba
mov eax, dword [0x101daf68]
mov ecx, dword [0x101daf74]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 0x30]
mov ecx, dword [0x101daf68]
push eax
call esi
mov dword [0x101dae68], eax
mov ecx, eax
call fcn.1007a400
mov ecx, dword [0x101dad50]
mov esi, dword [0x101dae68]
mov dword [0x101dae6c], eax
mov eax, dword fs:[0x2c]
mov ebx, dword [eax + ecx*4]
mov eax, dword [0x101dafec]
mov dword [ebp - 0x134], ebx
cmp eax, dword [ebx + 4]
jle 0x10011733
push 0x101dafec
call fcn.1007d825
add esp, 4
cmp dword [0x101dafec], 0xffffffff
jne 0x10011733
mov edx, str.m_iTeamNum
mov dword [ebp - 4], 0
mov ecx, str.CBaseEntity
call fcn.10078300
push 0x101dafec
mov dword [0x101dafe8], eax
mov dword [ebp - 4], 0xffffffff
call fcn.1007d7db
add esp, 4
mov eax, dword [0x101dafe8]
mov edi, 1
mov ecx, dword [0x101daf68]
mov dword [ebp - 0x144], edi
mov eax, dword [esi + eax]
mov dword [ebp - 0x138], eax
mov eax, dword [ecx]
call dword [eax + 0x18]
cmp eax, edi
jle 0x10011e7b
nop
mov ecx, dword [0x101daf68]
push edi
mov eax, dword [ecx]
call dword [eax + 0xc]
mov edi, eax
mov dword [ebp - 0x12c], edi
test edi, edi
je case.0x10011978.90
mov edx, dword [edi + 8]
lea ecx, [edi + 8]
call dword [edx + 8]
test eax, eax
je case.0x10011978.90
mov esi, dword [eax + 0x14]
cmp esi, 0x56
jg 0x10011963
je case.0x10011978.88
sub esi, 1
jne case.0x10011978.90
mov eax, dword [0x101daf54]
lea ecx, [edi + 4]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 0x24]
mov ecx, dword [0x101daf54]
push eax
call esi
mov ecx, eax
mov dword [ebp - 0x130], eax
mov edx, 0x811c9dc5
xor ebx, ebx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100117d5
sub ecx, esi
je 0x1001184b
mov edi, dword [ebp - 0x130]
nop word [eax + eax]
movsx eax, byte [ebx + edi]
xor eax, edx
imul edx, eax, 0x1000193
mov eax, edi
inc ebx
lea ecx, [eax + 1]
mov esi, edx
mov dword [ebp - 0x130], ecx
nop word [eax + eax]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10011810
sub eax, dword [ebp - 0x130]
cmp ebx, eax
jb 0x100117f0
mov edi, dword [ebp - 0x12c]
mov edx, esi
cmp esi, 0x5978b32e
ja 0x10011882
je 0x10011892
cmp esi, 0x1b20e275
je 0x10011892
cmp esi, 0x3cb8abb3
je 0x10011892
cmp esi, 0x4c849f3c
je 0x10011892
cmp edx, 0x7c4a5426
ja 0x100118ca
je 0x1001192b
cmp edx, 0x19acc50e
je 0x1001192b
cmp edx, 0x43d6266e
je 0x1001192b
cmp edx, 0x4d7aa8c1
je 0x1001192b
jmp case.0x10011978.90
cmp edx, 0x97113ea7
je 0x10011892
cmp edx, 0xa8d619ea
jne 0x1001184b
mov eax, dword [0x101d84e4]
mov dword [ebp - 0x12c], edi
cmp eax, dword [0x101d84e8]
je 0x100118b3
mov dword [eax], edi
add dword [0x101d84e4], 4
jmp case.0x10011978.90
lea ecx, [ebp - 0x12c]
push ecx
push eax
mov ecx, 0x101d84e0
call fcn.10013680
jmp case.0x10011978.90
cmp edx, 0xc941ff64
ja 0x10011900
je 0x1001192b
cmp edx, 0x9d08c4c8
ja 0x100118f3
je 0x1001192b
cmp edx, 0x7f11af2d
je 0x1001192b
cmp edx, 0x84ea2fe5
je 0x1001192b
jmp case.0x10011978.90
cmp edx, 0xa7eab73f
je 0x1001192b
jmp case.0x10011978.90
cmp edx, 0xe80bc214
ja 0x1001191f
je 0x1001192b
cmp edx, 0xd614ea2e
je 0x1001192b
cmp edx, 0xe1525a25
je 0x1001192b
jmp case.0x10011978.90
cmp edx, 0xf8573d98
jne case.0x10011978.90
mov eax, dword [0x101d8510]
mov dword [ebp - 0x12c], edi
cmp eax, dword [0x101d8514]
je 0x1001194c
mov dword [eax], edi
add dword [0x101d8510], 4
jmp case.0x10011978.90
lea ecx, [ebp - 0x12c]
push ecx
push eax
mov ecx, 0x101d850c
call fcn.10013680
jmp case.0x10011978.90
lea eax, [esi - 0x58]
cmp eax, 0xe1
ja case.0x10011978.90
movzx eax, byte [eax + 0x10012004]
jmp dword [eax*4 + 0x10011fec]
mov dword [ebp - 0x130], edi
cmp edi, dword [0x101dae68]
je case.0x10011978.90
mov ecx, edi
call fcn.10011430
cmp dword [eax], 2
je 0x100119ad
mov ecx, edi
call fcn.10011430
cmp dword [eax], 3
jne case.0x10011978.90
lea eax, [ebp - 0x12c]
mov dword [ebp - 0x12c], 0
push eax
lea eax, [ebp - 0x160]
push eax
call fcn.10012d40
mov ecx, dword [eax]
mov eax, dword [ecx + 0x10]
add ecx, 0xc
cmp eax, dword [ecx + 8]
je 0x100119df
mov dword [eax], edi
add dword [ecx + 4], 4
jmp 0x100119ec
lea edx, [ebp - 0x130]
push edx
push eax
call fcn.10013680
mov ecx, dword [ebp - 0x134]
mov eax, dword [0x101dafec]
cmp eax, dword [ecx + 4]
jle 0x10011a44
push 0x101dafec
call fcn.1007d825
add esp, 4
cmp dword [0x101dafec], 0xffffffff
jne 0x10011a44
mov edx, str.m_iTeamNum
mov dword [ebp - 4], 1
mov ecx, str.CBaseEntity
call fcn.10078300
push 0x101dafec
mov dword [0x101dafe8], eax
mov dword [ebp - 4], 0xffffffff
call fcn.1007d7db
add esp, 4
mov eax, dword [0x101dafe8]
xor ecx, ecx
mov edx, dword [ebp - 0x138]
cmp edx, dword [eax + edi]
lea eax, [ebp - 0x13c]
push eax
sete cl
lea eax, [ebp - 0x168]
inc ecx
push eax
mov dword [ebp - 0x13c], ecx
call fcn.10012d40
mov ecx, dword [eax]
mov eax, dword [ecx + 0x10]
add ecx, 0xc
cmp eax, dword [ecx + 8]
je 0x10011a89
mov dword [eax], edi
add dword [ecx + 4], 4
jmp case.0x10011978.90
lea edx, [ebp - 0x130]
push edx
push eax
call fcn.10013680
jmp case.0x10011978.90
mov dword [0x101dad60], edi
jmp case.0x10011978.90
mov ebx, dword [ebp - 0x134]
mov eax, dword [0x101dc8a8]
mov dword [ebp - 0x130], edi
cmp eax, dword [ebx + 4]
jle 0x10011b04
push 0x101dc8a8
call fcn.1007d825
add esp, 4
cmp dword [0x101dc8a8], 0xffffffff
jne 0x10011b04
mov edx, str.m_bPlacing
mov dword [ebp - 4], 2
mov ecx, str.CBaseObject
call fcn.10078300
push 0x101dc8a8
mov dword [0x101daff0], eax
mov dword [ebp - 4], 0xffffffff
call fcn.1007d7db
add esp, 4
mov eax, dword [0x101daff0]
cmp byte [eax + edi], 0
jne case.0x10011978.90
mov ecx, edi
call fcn.10011430
cmp dword [eax], 2
je 0x10011b2f
mov ecx, edi
call fcn.10011430
cmp dword [eax], 3
jne case.0x10011978.90
lea eax, [ebp - 0x12c]
mov dword [ebp - 0x12c], 0
push eax
lea eax, [ebp - 0x170]
push eax
call fcn.10012a70
mov ecx, dword [eax]
mov eax, dword [ecx + 0x10]
add ecx, 0xc
cmp eax, dword [ecx + 8]
je 0x10011b61
mov dword [eax], edi
add dword [ecx + 4], 4
jmp 0x10011b6e
lea edx, [ebp - 0x130]
push edx
push eax
call fcn.10013680
mov eax, dword [0x101dafec]
cmp eax, dword [ebx + 4]
jle 0x10011bc0
push 0x101dafec
call fcn.1007d825
add esp, 4
cmp dword [0x101dafec], 0xffffffff
jne 0x10011bc0
mov edx, str.m_iTeamNum
mov dword [ebp - 4], 3
mov ecx, str.CBaseEntity
call fcn.10078300
push 0x101dafec
mov dword [0x101dafe8], eax
mov dword [ebp - 4], 0xffffffff
call fcn.1007d7db
add esp, 4
mov eax, dword [0x101dafe8]
xor ecx, ecx
mov edx, dword [ebp - 0x138]
cmp edx, dword [eax + edi]
lea eax, [ebp - 0x140]
push eax
sete cl
lea eax, [ebp - 0x178]
inc ecx
push eax
mov dword [ebp - 0x140], ecx
call fcn.10012a70
mov ecx, dword [eax]
mov eax, dword [ecx + 0x10]
add ecx, 0xc
cmp eax, dword [ecx + 8]
je 0x10011c05
mov dword [eax], edi
add dword [ecx + 4], 4
jmp case.0x10011978.90
lea edx, [ebp - 0x130]
push edx
push eax
call fcn.10013680
jmp case.0x10011978.90
mov eax, dword [0x101d84e4]
mov dword [ebp - 0x12c], edi
cmp eax, dword [0x101d84e8]
je 0x10011c38
mov dword [eax], edi
add dword [0x101d84e4], 4
jmp case.0x10011978.90
lea ecx, [ebp - 0x12c]
push ecx
push eax
call fcn.10013a20
jmp case.0x10011978.90
mov eax, dword [edi + 8]
lea ecx, [edi + 8]
mov dword [ebp - 0x130], edi
mov eax, dword [eax + 0x20]
call eax
test al, al
jne case.0x10011978.90
cmp esi, 0xd9
jne 0x10011d5f
cmp dword [0x101dae68], 0
mov dword [ebp - 0x12c], edi
je 0x10011d5f
cmp dword [edi + 0x8fc], 1
jne 0x10011d5f
mov ecx, dword [ebp - 0x134]
mov eax, dword [0x101daf38]
cmp eax, dword [ecx + 4]
jle 0x10011ce7
push 0x101daf38
call fcn.1007d825
add esp, 4
cmp dword [0x101daf38], 0xffffffff
jne 0x10011ce7
mov edx, str.m_hThrower
mov dword [ebp - 4], 4
mov ecx, str.CBaseGrenade
call fcn.10078300
push 0x101daf38
mov dword [0x101dae70], eax
mov dword [ebp - 4], 0xffffffff
call fcn.1007d7db
add esp, 4
mov eax, dword [0x101daf68]
mov esi, dword [0x101dae70]
push ecx
mov ecx, esp
mov eax, dword [eax]
mov edx, dword [eax + 0x10]
mov eax, dword [esi + edi]
mov dword [ecx], eax
mov ecx, dword [0x101daf68]
call edx
mov ebx, eax
test ebx, ebx
je 0x10011d5f
mov edx, dword [ebx + 8]
lea ecx, [ebx + 8]
call dword [edx + 0x24]
mov ecx, dword [0x101dae68]
mov esi, eax
add ecx, 8
mov edx, dword [ecx]
call dword [edx + 0x24]
cmp esi, eax
je 0x10011d32
cmp ebx, dword [0x101dae68]
jne 0x10011d5f
mov eax, dword [0x101d851c]
cmp eax, dword [0x101d8520]
je 0x10011d4d
mov dword [eax], edi
add dword [0x101d851c], 4
jmp case.0x10011978.90
lea ecx, [ebp - 0x12c]
push ecx
push eax
call fcn.100138a0
jmp case.0x10011978.90
lea eax, [ebp - 0x12c]
mov dword [ebp - 0x12c], 0
push eax
lea eax, [ebp - 0x180]
push eax
call fcn.100127a0
mov ecx, dword [eax]
mov eax, dword [ecx + 0x10]
add ecx, 0xc
cmp eax, dword [ecx + 8]
je 0x10011d91
mov dword [eax], edi
add dword [ecx + 4], 4
jmp 0x10011d9e
lea edx, [ebp - 0x130]
push edx
push eax
call fcn.10013680
mov ecx, edi
call fcn.10011430
cmp dword [eax], 2
je 0x10011dba
mov ecx, edi
call fcn.10011430
cmp dword [eax], 3
jne case.0x10011978.90
mov ecx, dword [ebp - 0x134]
mov eax, dword [0x101dafec]
cmp eax, dword [ecx + 4]
jle 0x10011e12
push 0x101dafec
call fcn.1007d825
add esp, 4
cmp dword [0x101dafec], 0xffffffff
jne 0x10011e12
mov edx, str.m_iTeamNum
mov dword [ebp - 4], 5
mov ecx, str.CBaseEntity
call fcn.10078300
push 0x101dafec
mov dword [0x101dafe8], eax
mov dword [ebp - 4], 0xffffffff
call fcn.1007d7db
add esp, 4
mov eax, dword [0x101dafe8]
xor ecx, ecx
mov edx, dword [ebp - 0x138]
cmp edx, dword [eax + edi]
lea eax, [ebp - 0x14]
push eax
sete cl
lea eax, [ebp - 0x154]
inc ecx
push eax
mov dword [ebp - 0x14], ecx
call fcn.100127a0
mov ecx, dword [eax]
mov eax, dword [ecx + 0x10]
add ecx, 0xc
cmp eax, dword [ecx + 8]
je 0x10011e4e
mov dword [eax], edi
add dword [ecx + 4], 4
jmp case.0x10011978.90
lea edx, [ebp - 0x130]
push edx
push eax
call fcn.10013680
mov ecx, dword [0x101daf68]
mov edi, dword [ebp - 0x144]
inc edi
mov dword [ebp - 0x144], edi
mov eax, dword [ecx]
call dword [eax + 0x18]
cmp edi, eax
jl 0x10011760
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0
push eax
lea eax, [ebp - 0x154]
push eax
call fcn.10012d40
mov eax, dword [eax]
mov ebx, dword [eax + 0x10]
sub ebx, dword [eax + 0xc]
sar ebx, 2
mov dword [ebp - 0x13c], ebx
cmp ebx, dword [0x101daff8]
je 0x10011fc8
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0
push eax
lea eax, [ebp - 0x154]
push eax
call fcn.10012d40
mov eax, dword [eax]
mov ecx, dword [eax + 0x10]
mov edi, dword [eax + 0xc]
mov dword [ebp - 0x140], ecx
cmp edi, ecx
je 0x10011fc8
nop dword [eax]
mov ecx, dword [edi]
add ecx, 8
mov eax, dword [ecx]
call dword [eax + 0x24]
mov ecx, dword [0x101daf74]
mov ebx, eax
mov ecx, dword [ecx]
mov esi, dword [ecx + 0x20]
mov ecx, dword [edi]
add ecx, 8
mov edx, dword [ecx]
call dword [edx + 0x24]
lea ecx, [ebp - 0xa0]
push ecx
mov ecx, dword [0x101daf74]
push eax
call esi
test al, al
je 0x10011f4e
mov esi, dword [ebp - 0x58]
test esi, esi
je 0x10011f4e
mov ecx, dword [0x101daf48]
mov byte [ebp - 0x145], 1
mov edx, dword [ebp - 0x148]
and edx, 0xff100001
mov eax, dword [ecx]
or edx, 0x100001
push 4
push edx
push esi
mov eax, dword [eax + 0x3c]
mov dword [ebp - 0x148], edx
call eax
jmp 0x10011f50
xor al, al
mov ecx, dword [0x101daf74]
lea edx, [ebp - 0x128]
mov byte [ebx + 0x101dade8], al
push edx
push ebx
mov eax, dword [ecx]
mov eax, dword [eax + 0x20]
call eax
test al, al
je 0x10011fac
mov esi, dword [ebp - 0xe0]
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x158]
mov dword [ebp - 0x14], esi
push eax
call fcn.10013850
mov eax, dword [ebp - 0x150]
mov ecx, dword [0x101de6a8]
cmp byte [eax + 0xd], 0
jne 0x10011f9f
cmp esi, dword [eax + 0x10]
jae 0x10011fa1
mov eax, ecx
cmp eax, ecx
setne al
mov byte [ebx + 0x101dad68], al
add edi, 4
cmp edi, dword [ebp - 0x140]
jne 0x10011ee0
mov eax, dword [ebp - 0x13c]
mov dword [0x101daff8], eax
jmp 0x10011fce
mov dword [0x101daff8], ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1007d6e4
mov esp, ebp
pop ebp
ret