Function at 0x100944f0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x348
mov eax, dword [0x10269840]
xor eax, esp
mov dword [esp + 0x344], eax
mov eax, dword [ebp + 8]
push esi
push edi
mov dword [esp + 0x10], eax
mov edi, ecx
mov eax, dword [0x10269a24]
mov dword [esp + 0x44], edi
test al, 1
jne 0x100945a1
mov esi, dword [0x10269968]
lea ecx, [esp + 0x50]
push 0x16
or eax, 1
mov dword [esp + 0x64], 0
vpxor xmm0, xmm0, xmm0
push str.CBasePlayer__m_iHealth
mov dword [0x10269a24], eax
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
mov ecx, dword [esp + 0x64]
mov dword [0x10269a20], eax
cmp ecx, 0xf
jbe 0x100945a1
mov edx, dword [esp + 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10094597
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10095e16
push ecx
push edx
call fcn.101041cb
add esp, 8
mov eax, dword [0x10269a20]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 4]
cmp dword [eax + ecx], 0
jle 0x10096266
mov eax, dword [0x10269a1c]
test al, 1
jne 0x10094647
mov esi, dword [0x10269968]
lea ecx, [esp + 0x50]
push 0x18
or eax, 1
mov dword [esp + 0x64], 0
vpxor xmm0, xmm0, xmm0
push str.CBasePlayer__m_lifeState
mov dword [0x10269a1c], eax
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
mov ecx, dword [esp + 0x64]
mov dword [0x10269a18], eax
cmp ecx, 0xf
jbe 0x10094643
mov edx, dword [esp + 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10094639
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10095e16
push ecx
push edx
call fcn.101041cb
add esp, 8
mov ecx, dword [esp + 0x10]
mov eax, dword [0x10269a18]
mov eax, dword [eax + 4]
cmp byte [eax + ecx], 0
jne 0x10096266
mov eax, dword [0x102699d4]
cmp ecx, dword [eax]
je 0x10096266
mov eax, dword [ecx + 8]
add ecx, 8
mov dword [esp + 0x18], ecx
mov eax, dword [eax + 0x24]
call eax
mov byte [esp + 0xb], al
test al, al
jne 0x1009472e
cmp byte [edi + 0x1a4], al
je 0x10094738
mov ecx, dword [0x1026a06c]
test cl, 1
jne 0x1009471c
mov esi, dword [0x10269968]
or ecx, 1
push 0x17
mov dword [0x1026a06c], ecx
lea ecx, [esp + 0x54]
vpxor xmm0, xmm0, xmm0
push str.CBaseEntity__m_bSpotted
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
mov ecx, dword [esp + 0x64]
mov dword [0x1026a068], eax
cmp ecx, 0xf
jbe 0x1009471c
mov edx, dword [esp + 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10094712
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10095e16
push ecx
push edx
call fcn.101041cb
add esp, 8
mov eax, dword [0x1026a068]
mov edx, dword [esp + 0x10]
mov eax, dword [eax + 4]
mov byte [eax + edx], 1
jmp 0x10094738
cmp byte [edi + 0xd], 0
je 0x10096266
mov ecx, dword [0x10269df0]
test cl, 1
jne 0x100947cd
mov esi, dword [0x10269968]
or ecx, 1
push 0x17
mov dword [0x10269df0], ecx
lea ecx, [esp + 0x54]
vpxor xmm0, xmm0, xmm0
push str.CBaseEntity__m_iTeamNum
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
mov ecx, dword [esp + 0x64]
mov dword [0x10269dec], eax
cmp ecx, 0xf
jbe 0x100947c7
mov edx, dword [esp + 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100947bd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10095e16
push ecx
push edx
call fcn.101041cb
add esp, 8
mov ecx, dword [0x10269df0]
mov eax, dword [0x10269dec]
mov eax, dword [eax + 4]
add eax, dword [esp + 0x10]
mov dword [esp + 0x34], eax
mov eax, dword [0x102699d4]
mov eax, dword [eax]
mov dword [esp + 0xc], eax
test cl, 1
jne 0x10094871
mov esi, dword [0x10269968]
or ecx, 1
push 0x17
mov dword [0x10269df0], ecx
lea ecx, [esp + 0x54]
vpxor xmm0, xmm0, xmm0
push str.CBaseEntity__m_iTeamNum
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
mov ecx, dword [esp + 0x64]
mov dword [0x10269dec], eax
cmp ecx, 0xf
jbe 0x10094871
mov edx, dword [esp + 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10094867
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10095e16
push ecx
push edx
call fcn.101041cb
add esp, 8
mov eax, dword [0x10269dec]
mov ecx, dword [eax + 4]
mov eax, dword [esp + 0x34]
add ecx, dword [esp + 0xc]
mov eax, dword [eax]
cmp eax, dword [ecx]
jne 0x10094891
cmp byte [edi + 0xc], 0
je 0x10096266
mov eax, dword [0x10269e20]
test al, 1
jne 0x10094919
mov esi, dword [0x10269968]
lea ecx, [esp + 0x50]
push 0x25
or eax, 1
mov dword [esp + 0x64], 0
vpxor xmm0, xmm0, xmm0
push str.CBaseCombatCharacter__m_hActiveWeapon
mov dword [0x10269e20], eax
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
mov ecx, dword [esp + 0x64]
mov dword [0x10269e1c], eax
cmp ecx, 0xf
jbe 0x10094919
mov edx, dword [esp + 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1009490f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10095e16
push ecx
push edx
call fcn.101041cb
add esp, 8
mov eax, dword [0x10269e1c]
mov edx, dword [esp + 0x10]
mov eax, dword [eax + 4]
mov edx, dword [eax + edx]
cmp edx, 0xffffffff
jne 0x100949e0
mov dword [esp + 0x14], 0
mov dword [esp + 0x4c], 0
lea eax, [esp + 0x1c]
mov ecx, edi
push eax
push dword [esp + 0x14]
vxorps xmm0, xmm0, xmm0
vmovups xmmword [esp + 0x24], xmm0
call fcn.10092a20
test al, al
je 0x10096266
cmp byte [edi + 0xe], 0
je 0x10094b6c
vmovss xmm2, dword [esp + 0x28]
vmovss xmm1, dword [esp + 0x24]
vsubss xmm0, xmm2, dword [0x101252e8]
vsubss xmm1, xmm1, dword [0x101252e8]
vmovss dword [esp + 0x30], xmm0
vmovss xmm0, dword [0x10107b88]
push 0x96000000
lea eax, [esp + 0x30]
mov ecx, edi
push eax
vmovss dword [esp + 0x34], xmm1
vaddss xmm1, xmm0, dword [esp + 0x24]
vaddss xmm0, xmm0, dword [esp + 0x28]
lea eax, [esp + 0x44]
push eax
vmovss dword [esp + 0x48], xmm1
vmovss dword [esp + 0x4c], xmm0
call fcn.10092210
cmp byte [esp + 0xb], 0
je 0x10094ac0
mov ecx, 0xb4828282
jmp 0x10094afc
mov ecx, dword [0x10269978]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
call eax
mov dword [esp + 0x14], eax
test eax, eax
je 0x10094939
mov ecx, dword [0x10269964]
mov eax, dword [ecx + 0x50]
mov dword [esp + 0xc], eax
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
mov ecx, dword [0x102699e4]
mov dword [esp + 0x34], eax
test cl, 1
jne 0x10094a9f
mov esi, dword [0x10269968]
or ecx, 1
push 0x2d
mov dword [0x102699e4], ecx
lea ecx, [esp + 0x54]
vpxor xmm0, xmm0, xmm0
push str.CBaseAttributableItem__m_iItemDefinitionIndex
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
mov ecx, dword [esp + 0x64]
mov dword [0x102699e0], eax
cmp ecx, 0xf
jbe 0x10094a9f
mov edx, dword [esp + 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10094a95
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10095e16
push ecx
push edx
call fcn.101041cb
add esp, 8
mov eax, dword [0x102699e0]
mov ecx, dword [esp + 0xc]
mov eax, dword [eax + 4]
add eax, dword [esp + 0x14]
movzx eax, word [eax]
push eax
call dword [esp + 0x38]
mov dword [esp + 0x4c], eax
jmp 0x10094941
vmovss xmm1, dword [0x1012532c]
vmulss xmm0, xmm1, dword [edi + 0x44]
vcvttss2si eax, xmm0
vmulss xmm0, xmm1, dword [edi + 0x40]
movzx ecx, al
or ecx, 0xffffb400
vcvttss2si eax, xmm0
vmulss xmm0, xmm1, dword [edi + 0x3c]
shl ecx, 8
movzx eax, al
or ecx, eax
vcvttss2si eax, xmm0
shl ecx, 8
movzx eax, al
or ecx, eax
push ecx
lea eax, [esp + 0x28]
mov ecx, edi
push eax
lea eax, [esp + 0x24]
push eax
call fcn.10092210
vmovss xmm0, dword [0x101252e8]
vaddss xmm1, xmm0, dword [esp + 0x24]
vaddss xmm0, xmm0, dword [esp + 0x28]
vmovss xmm2, dword [esp + 0x20]
push 0x96000000
vmovss dword [esp + 0x30], xmm1
vmovss xmm1, dword [esp + 0x20]
vsubss xmm1, xmm1, dword [0x10107b88]
lea eax, [esp + 0x30]
mov ecx, edi
push eax
vmovss dword [esp + 0x38], xmm0
vsubss xmm0, xmm2, dword [0x10107b88]
lea eax, [esp + 0x44]
push eax
vmovss dword [esp + 0x48], xmm1
vmovss dword [esp + 0x4c], xmm0
call fcn.10092210
cmp byte [edi + 0xf], 0
je 0x10094ed6
vmovss xmm0, dword [esp + 0x28]
vaddss xmm0, xmm0, dword [0x101252e8]
vmovss xmm1, dword [0x101252f8]
vmovss dword [esp + 0x30], xmm0
vmovss xmm0, dword [esp + 0x1c]
push 0x96000000
vmovss dword [esp + 0x30], xmm1
vsubss xmm1, xmm0, dword [0x10125300]
vmovss xmm0, dword [esp + 0x24]
vsubss xmm0, xmm0, dword [0x10107b88]
lea eax, [esp + 0x30]
mov ecx, edi
push eax
lea eax, [esp + 0x44]
push eax
vmovss dword [esp + 0x48], xmm1
vmovss dword [esp + 0x4c], xmm0
call fcn.10092270
mov eax, dword [0x10269a24]
mov dword [esp + 0x34], 0x64
mov dword [esp + 0xc], 0
test al, 1
jne 0x10094c6e
mov esi, dword [0x10269968]
lea ecx, [esp + 0x50]
push 0x16
or eax, 1
mov dword [esp + 0x64], 0
vpxor xmm0, xmm0, xmm0
push str.CBasePlayer__m_iHealth
mov dword [0x10269a24], eax
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
mov ecx, dword [esp + 0x64]
mov dword [0x10269a20], eax
cmp ecx, 0xf
jbe 0x10094c6e
mov edx, dword [esp + 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10094c64
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10095e16
push ecx
push edx
call fcn.101041cb
add esp, 8
mov eax, dword [0x10269a20]
lea edx, [esp + 0xc]
vmovss xmm4, dword [esp + 0x28]
vxorps xmm0, xmm0, xmm0
mov eax, dword [eax + 4]
add eax, dword [esp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
cmovns edx, eax
cmp ecx, 0x64
lea eax, [esp + 0x34]
cmovle eax, edx
cmp byte [esp + 0xb], 0
vcvtsi2ss xmm0, xmm0, dword [eax]
vdivss xmm2, xmm0, dword [0x10125328]
vmulss xmm3, xmm2, xmm4
je 0x10094cb7
mov ecx, 0xb4828282
jmp 0x10094cec
vmulss xmm0, xmm2, dword [0x1012532c]
vcvttss2si eax, xmm0
vmovss xmm0, dword [0x10107b88]
movzx ecx, al
vsubss xmm0, xmm0, xmm2
vmulss xmm0, xmm0, dword [0x1012532c]
or ecx, 0xffb40000
vcvttss2si eax, xmm0
shl ecx, 8
movzx eax, al
or ecx, eax
vmovss xmm0, dword [0x101252e8]
vmovss dword [esp + 0x2c], xmm0
vmovss xmm0, dword [esp + 0x1c]
vsubss xmm1, xmm0, dword [0x101252fc]
vaddss xmm0, xmm4, dword [esp + 0x20]
push ecx
lea eax, [esp + 0x30]
mov ecx, edi
push eax
vsubss xmm0, xmm0, xmm3
lea eax, [esp + 0x44]
push eax
vmovss dword [esp + 0x3c], xmm3
vmovss dword [esp + 0x54], xmm1
vmovss dword [esp + 0x40], xmm0
vmovss dword [esp + 0x48], xmm1
vmovss dword [esp + 0x4c], xmm0
call fcn.10092270
mov edx, dword [0x10269a24]
test dl, 1
jne 0x10094dd7
mov esi, dword [0x10269968]
lea ecx, [esp + 0x50]
push 0x16
or edx, 1
mov dword [esp + 0x64], 0
vpxor xmm0, xmm0, xmm0
push str.CBasePlayer__m_iHealth
mov dword [0x10269a24], edx
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
mov ecx, dword [esp + 0x64]
mov dword [0x10269a20], eax
cmp ecx, 0xf
jbe 0x10094dd1
mov edx, dword [esp + 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10094dc7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10095e16
push ecx
push edx
call fcn.101041cb
add esp, 8
mov edx, dword [0x10269a24]
mov eax, dword [0x10269a20]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 4]
cmp dword [eax + ecx], 0x64
jge 0x10094ed6
mov eax, dword [edi + 0x360]
mov esi, 0xb4828282
cmp byte [esp + 0xb], 0
mov dword [esp + 0xc], eax
mov eax, 0xb4ffffff
cmovne eax, esi
push 1
push eax
test dl, 1
jne 0x10094e68
mov esi, dword [0x10269968]
lea ecx, [esp + 0x58]
push 0x16
or edx, 1
mov dword [esp + 0x6c], 0
vpxor xmm0, xmm0, xmm0
push str.CBasePlayer__m_iHealth
mov dword [0x10269a24], edx
vmovdqu xmmword [esp + 0x60], xmm0
mov dword [esp + 0x74], 0
call fcn.10002ab0
lea eax, [esp + 0x58]
mov ecx, esi
push eax
call fcn.10006660
lea ecx, [esp + 0x58]
mov dword [0x10269a20], eax
call fcn.100054d0
mov ecx, dword [esp + 0x18]
mov eax, dword [0x10269a20]
mov eax, dword [eax + 4]
push dword [eax + ecx]
lea eax, [esp + 0x7c]
push eax
call fcn.1009ed60
mov ecx, eax
add esp, 8
cmp dword [ecx + 0x14], 0xf
jbe 0x10094e8a
mov ecx, dword [ecx]
sub esp, 8
lea esi, [ecx + 1]
mov edx, esp
mov dword [edx], ecx
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10094e94
push dword [esp + 0x1c]
vmovss xmm0, dword [esp + 0x48]
vsubss xmm0, xmm0, dword [0x10125304]
vmovss xmm1, dword [esp + 0x5c]
sub esp, 8
sub ecx, esi
mov eax, esp
mov dword [edx + 4], ecx
mov ecx, edi
vmovss dword [eax], xmm1
vmovss dword [eax + 4], xmm0
call fcn.100926b0
lea ecx, [esp + 0x70]
call fcn.100054d0
cmp byte [edi + 0x10], 0
je 0x1009507e
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
mov edi, dword [0x10269974]
mov esi, eax
push 0x80
vpxor xmm0, xmm0, xmm0
lea eax, [esp + 0xa4]
push 0
push eax
vmovq qword [esp + 0x9c], xmm0
vmovlpd qword [esp + 0xa4], xmm0
call sub.VCRUNTIME140.dll_memset
xor eax, eax
mov dword [esp + 0x12c], 0
push 0x80
push eax
vpxor xmm0, xmm0, xmm0
mov word [esp + 0x159], ax
mov byte [esp + 0x15b], al
mov dword [esp + 0x15c], eax
lea eax, [esp + 0x160]
vmovdqu ymmword [esp + 0x138], ymm0
mov byte [esp + 0x158], 0
push eax
vzeroupper
call sub.VCRUNTIME140.dll_memset
mov eax, dword [edi]
lea ecx, [esp + 0xa8]
add esp, 0x18
mov word [esp + 0x1cc], 0
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [esp + 0x1d0], xmm0
mov byte [esp + 0x1e0], 0
mov eax, dword [eax + 0x20]
push ecx
push esi
mov ecx, edi
call eax
test al, al
je 0x1009507a
cmp byte [esp + 0xb], 0
lea esi, [esp + 0x90]
mov ecx, 0x56
lea edi, [esp + 0x1e8]
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x44]
mov byte [esp + 0x340], 1
je 0x10094fd6
mov ecx, 0xb4828282
jmp 0x10095012
vmovss xmm1, dword [0x1012532c]
vmulss xmm0, xmm1, dword [edi + 0x50]
vcvttss2si eax, xmm0
vmulss xmm0, xmm1, dword [edi + 0x4c]
movzx ecx, al
or ecx, 0xffffb400
vcvttss2si eax, xmm0
vmulss xmm0, xmm1, dword [edi + 0x48]
shl ecx, 8
movzx eax, al
or ecx, eax
vcvttss2si eax, xmm0
shl ecx, 8
movzx eax, al
or ecx, eax
mov esi, dword [edi + 0x34c]
lea eax, [esp + 0x1f8]
push 1
push ecx
sub esp, 8
mov ecx, eax
mov edx, esp
mov dword [edx], eax
lea eax, [ecx + 1]
mov dword [esp + 0x1c], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10095032
vmovss xmm0, dword [esp + 0x30]
vsubss xmm1, xmm0, dword [0x10128f2c]
vmovss xmm0, dword [esp + 0x34]
sub ecx, dword [esp + 0x1c]
vmulss xmm0, xmm0, dword [0x101252a8]
vaddss xmm0, xmm0, dword [esp + 0x2c]
push esi
sub esp, 8
mov dword [edx + 4], ecx
mov eax, esp
mov ecx, edi
vmovss dword [eax], xmm0
vmovss dword [eax + 4], xmm1
call fcn.100926b0
jmp 0x1009507e
mov edi, dword [esp + 0x44]
xor eax, eax
mov dword [esp + 0x18], eax
cmp byte [edi + 0x14], al
je 0x1009541e
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x1009541e
mov ecx, dword [eax + 0xc8]
test ecx, ecx
je 0x1009541e
cmp ecx, 7
jge 0x1009541e
cmp dword [eax + 0x14], 0xffffffff
je 0x1009541e
mov ecx, dword [esp + 0x10]
mov esi, dword [ecx + 0x2990]
vmovss xmm0, dword [esi + 0x58]
vucomiss xmm0, dword [0x10107b84]
lahf
test ah, 0x44
jnp 0x1009510a
mov eax, dword [ecx + 0x2950]
test eax, eax
je 0x1009510a
mov edx, dword [eax]
test edx, edx
je 0x1009510a
mov eax, dword [0x10269964]
push dword [esi + 0x50]
mov eax, dword [eax + 0x28]
call eax
cmp eax, 0x3c7
jne 0x1009510a
vmovss xmm0, dword [esi + 0x64]
mov byte [esp + 0x3b], 1
jmp 0x10095190
mov eax, dword [0x102699ec]
mov byte [esp + 0x3b], 0
test al, 1
jne 0x1009516a
mov esi, dword [0x10269968]
lea ecx, [esp + 0x50]
push 0x1b
or eax, 1
mov dword [esp + 0x64], 0
vpxor xmm0, xmm0, xmm0
push str.CBaseCombatWeapon__m_iClip1
mov dword [0x102699ec], eax
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
lea ecx, [esp + 0x50]
mov dword [0x102699e8], eax
call fcn.100054d0
mov eax, dword [0x102699e8]
mov ecx, dword [esp + 0x14]
vxorps xmm1, xmm1, xmm1
vxorps xmm0, xmm0, xmm0
mov eax, dword [eax + 4]
vcvtsi2ss xmm1, xmm1, dword [eax + ecx]
mov eax, dword [esp + 0x4c]
vcvtsi2ss xmm0, xmm0, dword [eax + 0x14]
vdivss xmm0, xmm1, xmm0
vmovss xmm1, dword [0x101252e8]
vmovss dword [esp + 0x18], xmm0
vaddss xmm0, xmm1, dword [esp + 0x24]
vmovss dword [esp + 0x2c], xmm0
vmovss xmm0, dword [0x101252f8]
vmovss dword [esp + 0x30], xmm0
vmovss xmm0, dword [esp + 0x20]
vaddss xmm0, xmm0, dword [esp + 0x28]
vaddss xmm1, xmm0, xmm1
vmovss xmm0, dword [esp + 0x1c]
vsubss xmm0, xmm0, dword [0x10107b88]
push 0x96000000
lea eax, [esp + 0x30]
mov ecx, edi
push eax
lea eax, [esp + 0x44]
push eax
vmovss dword [esp + 0x48], xmm0
vmovss dword [esp + 0x4c], xmm1
call fcn.10092270
cmp byte [esp + 0xb], 0
je 0x10095206
mov ecx, 0xb4828282
jmp 0x10095242
vmovss xmm1, dword [0x1012532c]
vmulss xmm0, xmm1, dword [edi + 0x68]
vcvttss2si eax, xmm0
vmulss xmm0, xmm1, dword [edi + 0x64]
movzx ecx, al
or ecx, 0xffffb400
vcvttss2si eax, xmm0
vmulss xmm0, xmm1, dword [edi + 0x60]
shl ecx, 8
movzx eax, al
or ecx, eax
vcvttss2si eax, xmm0
shl ecx, 8
movzx eax, al
or ecx, eax
vmovss xmm0, dword [esp + 0x18]
vmulss xmm0, xmm0, dword [esp + 0x24]
vmovss xmm1, dword [esp + 0x20]
vmovss dword [esp + 0x2c], xmm0
vmovss xmm0, dword [0x101252e8]
push ecx
vmovss dword [esp + 0x34], xmm0
vaddss xmm0, xmm1, dword [esp + 0x2c]
vaddss xmm0, xmm0, dword [0x101252f0]
vmovss xmm1, dword [esp + 0x20]
lea eax, [esp + 0x30]
mov ecx, edi
push eax
lea eax, [esp + 0x44]
push eax
vmovss dword [esp + 0x48], xmm1
vmovss dword [esp + 0x4c], xmm0
call fcn.10092270
cmp byte [esp + 0x3b], 0
jne 0x10095416
mov ecx, dword [0x102699ec]
test cl, 1
jne 0x10095309
mov esi, dword [0x10269968]
or ecx, 1
push 0x1b
mov dword [0x102699ec], ecx
lea ecx, [esp + 0x54]
vpxor xmm0, xmm0, xmm0
push str.CBaseCombatWeapon__m_iClip1
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
lea ecx, [esp + 0x50]
mov dword [0x102699e8], eax
call fcn.100054d0
mov ecx, dword [0x102699ec]
mov edx, dword [0x102699e8]
mov esi, dword [esp + 0x14]
mov eax, dword [edx + 4]
mov eax, dword [esi + eax]
mov esi, dword [esp + 0x4c]
cmp eax, dword [esi + 0x14]
jge 0x10095416
mov eax, dword [edi + 0x360]
mov dword [esp + 0xc], eax
test cl, 1
jne 0x1009538e
mov esi, dword [0x10269968]
or ecx, 1
push 0x1b
mov dword [0x102699ec], ecx
lea ecx, [esp + 0x54]
vpxor xmm0, xmm0, xmm0
push str.CBaseCombatWeapon__m_iClip1
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
lea ecx, [esp + 0x50]
mov dword [0x102699e8], eax
call fcn.100054d0
mov edx, dword [0x102699e8]
mov eax, dword [edx + 4]
add eax, dword [esp + 0x14]
push dword [eax]
lea eax, [esp + 0x74]
push eax
call fcn.1009ed60
mov edx, eax
add esp, 8
cmp dword [edx + 0x14], 0xf
jbe 0x100953ae
mov edx, dword [edx]
cmp byte [esp + 0xb], 0
lea esi, [edx + 1]
mov ecx, 0xb4ffffff
mov eax, 0xb4828282
cmovne ecx, eax
push 0
push ecx
sub esp, 8
mov ecx, esp
mov dword [ecx], edx
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x100953d0
push dword [esp + 0x1c]
vmovss xmm0, dword [esp + 0x40]
vaddss xmm0, xmm0, dword [esp + 0x30]
vmovss xmm1, dword [esp + 0x34]
sub esp, 8
sub edx, esi
mov eax, esp
mov dword [ecx + 4], edx
mov ecx, edi
vmovss dword [eax], xmm0
vaddss xmm0, xmm1, dword [esp + 0x44]
vmovss dword [eax + 4], xmm0
call fcn.100926b0
lea ecx, [esp + 0x70]
call fcn.100054d0
mov dword [esp + 0x18], 4
cmp byte [edi + 0x15], 0
je 0x100956be
mov ecx, dword [0x10269de0]
test cl, 1
jne 0x100954bd
mov esi, dword [0x10269968]
or ecx, 1
push 0x18
mov dword [0x10269de0], ecx
lea ecx, [esp + 0x54]
vpxor xmm0, xmm0, xmm0
push str.CBaseEntity__m_vecOrigin
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
mov ecx, dword [esp + 0x64]
mov dword [0x10269ddc], eax
cmp ecx, 0xf
jbe 0x100954b7
mov edx, dword [esp + 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100954ad
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10095e16
push ecx
push edx
call fcn.101041cb
add esp, 8
mov ecx, dword [0x10269de0]
mov eax, dword [0x10269ddc]
mov edx, dword [eax + 4]
mov eax, dword [0x102699d4]
add edx, dword [esp + 0x10]
mov dword [esp + 0x48], edx
mov eax, dword [eax]
mov dword [esp + 0xc], eax
test cl, 1
jne 0x10095565
mov esi, dword [0x10269968]
or ecx, 1
push 0x18
mov dword [0x10269de0], ecx
lea ecx, [esp + 0x54]
vpxor xmm0, xmm0, xmm0
push str.CBaseEntity__m_vecOrigin
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
mov ecx, dword [esp + 0x64]
mov dword [0x10269ddc], eax
cmp ecx, 0xf
jbe 0x10095561
mov edx, dword [esp + 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10095557
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10095e16
push ecx
push edx
call fcn.101041cb
add esp, 8
mov edx, dword [esp + 0x48]
mov eax, dword [0x10269ddc]
mov eax, dword [eax + 4]
add eax, dword [esp + 0xc]
vmovss xmm0, dword [eax]
vsubss xmm1, xmm0, dword [edx]
vmovss xmm0, dword [eax + 4]
vsubss xmm2, xmm0, dword [edx + 4]
vmovss xmm0, dword [eax + 8]
vsubss xmm3, xmm0, dword [edx + 8]
vmulss xmm1, xmm1, xmm1
vmulss xmm0, xmm2, xmm2
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm3, xmm3
vaddss xmm0, xmm1, xmm0
vcvtss2sd xmm0, xmm0, xmm0
vxorpd xmm1, xmm1, xmm1
vucomisd xmm1, xmm0
ja 0x100955b5
vsqrtsd xmm0, xmm0, xmm0
jmp 0x100955ba
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
mov esi, dword [edi + 0x360]
lea ecx, [esp + 0x2c]
vcvtsd2ss xmm0, xmm0, xmm0
vmulss xmm0, xmm0, dword [0x10173c80]
vmulss xmm0, xmm0, dword [0x10173c98]
vcvttss2si eax, xmm0
mov dword [esp + 0x30], eax
sub esp, 8
mov eax, esp
mov dword [esp + 0x34], 0x10000000
push 5
mov dword [eax], 1
mov dword [eax + 4], ecx
lea eax, [esp + 0x5c]
push str._FT
push eax
call fcn.10088070
add esp, 0x14
lea ecx, [esp + 0x50]
cmp dword [esp + 0x64], 0xf
mov edx, 0xb4828282
mov eax, 0xb4ffffff
cmova ecx, dword [esp + 0x50]
cmp byte [esp + 0xb], 0
push 1
cmovne eax, edx
push eax
sub esp, 8
lea eax, [ecx + 1]
mov edx, esp
mov dword [esp + 0x1c], eax
mov dword [edx], ecx
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10095640
vmovss xmm0, dword [esp + 0x30]
vaddss xmm0, xmm0, dword [esp + 0x38]
vaddss xmm1, xmm0, dword [0x101252e8]
sub ecx, dword [esp + 0x1c]
push esi
mov esi, dword [esp + 0x2c]
sub esp, 8
vxorps xmm0, xmm0, xmm0
vcvtsi2sd xmm0, xmm0, esi
mov eax, esi
mov dword [edx + 4], ecx
shr eax, 0x1f
mov ecx, edi
vaddsd xmm0, xmm0, qword [eax*8 + 0x101253b0]
vcvtsd2ss xmm0, xmm0, xmm0
vaddss xmm1, xmm1, xmm0
vmovss xmm0, dword [esp + 0x40]
vmulss xmm0, xmm0, dword [0x101252a8]
vaddss xmm0, xmm0, dword [esp + 0x38]
mov eax, esp
vmovss dword [eax], xmm0
vmovss dword [eax + 4], xmm1
call fcn.100926b0
lea ecx, [esp + 0x50]
call fcn.100054d0
add esi, 8
mov dword [esp + 0x18], esi
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x1009590e
mov edx, dword [eax + 0x88]
test edx, edx
je 0x1009590e
cmp byte [edi + 0x12], 0
je 0x1009590e
mov ecx, dword [0x102699c0]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov esi, eax
mov dword [esp + 0xc], eax
lea edx, [esi + 2]
nop dword [eax]
mov cx, word [esi]
add esi, 2
test cx, cx
jne 0x10095700
sub esi, edx
sar esi, 1
jne 0x1009573b
vpxor xmm0, xmm0, xmm0
mov eax, 0xf
mov dword [esp + 0x80], 0
vmovdqu xmmword [esp + 0x70], xmm0
mov dword [esp + 0x84], eax
mov byte [esp + 0x70], cl
jmp 0x100957d1
push 0
push 0
push 0
push 0
push esi
push eax
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov edi, eax
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0xf
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [esp + 0x50], xmm0
mov byte [esp + 0x50], 0
test edi, edi
jne 0x10095781
mov dword [esp + 0x60], edi
mov byte [esp + edi + 0x50], al
jmp 0x1009578d
push 0
push edi
lea ecx, [esp + 0x58]
call fcn.10013d20
cmp dword [esp + 0x64], 0xf
lea eax, [esp + 0x50]
push 0
cmova eax, dword [esp + 0x54]
push 0
push edi
push eax
push esi
push dword [esp + 0x20]
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
lea eax, [esp + 0x50]
push eax
lea ecx, [esp + 0x74]
call fcn.1008f960
lea ecx, [esp + 0x50]
call fcn.100054d0
mov eax, dword [esp + 0x84]
cmp eax, 0xf
lea edi, [esp + 0x70]
lea eax, [esp + 0x2c]
cmova edi, dword [esp + 0x70]
lea ecx, [esp + 0x70]
push eax
call fcn.10093720
push dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_toupper]
cmp dword [esp + 0x88], 0xf
lea ecx, [esp + 0x74]
push edi
push dword [eax]
cmova ecx, dword [esp + 0x7c]
lea eax, [esp + 0x48]
push ecx
push eax
call fcn.1008f910
mov edi, dword [esp + 0x58]
add esp, 0x14
cmp byte [esp + 0xb], 0
je 0x10095825
mov ecx, 0xb4828282
jmp 0x10095861
vmovss xmm1, dword [0x1012532c]
vmulss xmm0, xmm1, dword [edi + 0x5c]
vcvttss2si eax, xmm0
vmulss xmm0, xmm1, dword [edi + 0x58]
movzx ecx, al
or ecx, 0xffffb400
vcvttss2si eax, xmm0
vmulss xmm0, xmm1, dword [edi + 0x54]
shl ecx, 8
movzx eax, al
or ecx, eax
vcvttss2si eax, xmm0
shl ecx, 8
movzx eax, al
or ecx, eax
cmp dword [esp + 0x84], 0xf
mov esi, dword [edi + 0x360]
push 1
push ecx
lea ecx, [esp + 0x78]
cmova ecx, dword [esp + 0x78]
sub esp, 8
mov edx, esp
lea eax, [ecx + 1]
mov dword [edx], ecx
mov dword [esp + 0x1c], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10095890
vmovss xmm0, dword [esp + 0x30]
vaddss xmm0, xmm0, dword [esp + 0x38]
vaddss xmm1, xmm0, dword [0x101252e8]
sub ecx, dword [esp + 0x1c]
push esi
mov esi, dword [esp + 0x2c]
sub esp, 8
vxorps xmm0, xmm0, xmm0
vcvtsi2sd xmm0, xmm0, esi
mov eax, esi
mov dword [edx + 4], ecx
shr eax, 0x1f
mov ecx, edi
vaddsd xmm0, xmm0, qword [eax*8 + 0x101253b0]
vcvtsd2ss xmm0, xmm0, xmm0
vaddss xmm1, xmm1, xmm0
vmovss xmm0, dword [esp + 0x40]
vmulss xmm0, xmm0, dword [0x101252a8]
vaddss xmm0, xmm0, dword [esp + 0x38]
mov eax, esp
vmovss dword [eax], xmm0
vmovss dword [eax + 4], xmm1
call fcn.100926b0
add esi, 8
lea ecx, [esp + 0x70]
mov dword [esp + 0x18], esi
call fcn.100054d0
cmp dword [esp + 0x14], 0
je 0x10095a6c
cmp byte [edi + 0x13], 0
je 0x10095a6c
cmp byte [esp + 0xb], 0
je 0x10095931
mov ecx, 0xb4828282
jmp 0x1009596d
vmovss xmm1, dword [0x1012532c]
vmulss xmm0, xmm1, dword [edi + 0x5c]
vcvttss2si eax, xmm0
vmulss xmm0, xmm1, dword [edi + 0x58]
movzx ecx, al
or ecx, 0xffffb400
vcvttss2si eax, xmm0
vmulss xmm0, xmm1, dword [edi + 0x54]
shl ecx, 8
movzx eax, al
or ecx, eax
vcvttss2si eax, xmm0
shl ecx, 8
movzx eax, al
or ecx, eax
mov eax, dword [0x102699e4]
mov esi, dword [edi + 0x364]
mov dword [esp + 0xc], esi
push 1
push ecx
test al, 1
jne 0x100959d9
mov esi, dword [0x10269968]
lea ecx, [esp + 0x58]
push 0x2d
or eax, 1
mov dword [esp + 0x6c], 0
vpxor xmm0, xmm0, xmm0
push str.CBaseAttributableItem__m_iItemDefinitionIndex
mov dword [0x102699e4], eax
vmovdqu xmmword [esp + 0x60], xmm0
mov dword [esp + 0x74], 0
call fcn.10002ab0
lea eax, [esp + 0x58]
mov ecx, esi
push eax
call fcn.10006660
lea ecx, [esp + 0x58]
mov dword [0x102699e0], eax
call fcn.100054d0
mov esi, dword [esp + 0x14]
mov eax, dword [0x102699e0]
mov ecx, edi
mov eax, dword [eax + 4]
add eax, dword [esp + 0x1c]
movzx eax, word [eax]
push eax
call fcn.10092f40
mov ecx, eax
sub esp, 8
mov edx, esp
lea eax, [ecx + 1]
mov dword [edx], ecx
mov dword [esp + 0x1c], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10095a00
vmovss xmm0, dword [esp + 0x30]
vaddss xmm0, xmm0, dword [esp + 0x38]
vaddss xmm1, xmm0, dword [0x101252e8]
mov eax, dword [esp + 0x28]
sub ecx, dword [esp + 0x1c]
vxorps xmm0, xmm0, xmm0
vcvtsi2sd xmm0, xmm0, eax
shr eax, 0x1f
push esi
sub esp, 8
mov dword [edx + 4], ecx
mov ecx, edi
vaddsd xmm0, xmm0, qword [eax*8 + 0x101253b0]
vcvtsd2ss xmm0, xmm0, xmm0
vaddss xmm1, xmm1, xmm0
vmovss xmm0, dword [esp + 0x40]
vmulss xmm0, xmm0, dword [0x101252a8]
vaddss xmm0, xmm0, dword [esp + 0x38]
mov eax, esp
vmovss dword [eax], xmm0
vmovss dword [eax + 4], xmm1
call fcn.100926b0
cmp byte [edi + 0x1b], 0
mov dword [esp + 0x14], 0
je 0x10095be4
mov eax, dword [0x1026a0c4]
test al, 1
jne 0x10095b0c
mov esi, dword [0x10269968]
lea ecx, [esp + 0x50]
push 0x15
or eax, 1
mov dword [esp + 0x64], 0
vpxor xmm0, xmm0, xmm0
push str.CCSPlayer__m_iAccount
mov dword [0x1026a0c4], eax
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
mov ecx, dword [esp + 0x64]
mov dword [0x1026a0c0], eax
cmp ecx, 0xf
jbe 0x10095b0c
mov edx, dword [esp + 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10095b02
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10095b02
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.101041cb
add esp, 8
mov eax, dword [0x1026a0c0]
sub esp, 8
mov esi, dword [esp + 0x18]
mov ecx, dword [edi + 0x360]
mov dword [esp + 0x3c], ecx
lea ecx, [esp + 0x34]
mov eax, dword [eax + 4]
mov dword [esp + 0x34], 0x10000000
mov eax, dword [eax + esi]
mov dword [esp + 0x38], eax
mov eax, esp
push 3
push 0x10173774
mov dword [eax], 1
mov dword [eax + 4], ecx
lea eax, [esp + 0x80]
push eax
call fcn.10088070
add esp, 0x14
lea ecx, [esp + 0x70]
cmp dword [esp + 0x84], 0xf
mov edx, 0xb4828282
mov eax, 0xb43cc896
cmova ecx, dword [esp + 0x70]
cmp byte [esp + 0xb], 0
push 0
cmovne eax, edx
push eax
sub esp, 8
lea eax, [ecx + 1]
mov edx, esp
mov dword [esp + 0x1c], eax
mov dword [edx], ecx
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10095b90
push dword [esp + 0x44]
vmovss xmm0, dword [esp + 0x30]
vaddss xmm0, xmm0, dword [esp + 0x38]
sub ecx, dword [esp + 0x20]
sub esp, 8
vaddss xmm0, xmm0, dword [0x101252e8]
mov eax, esp
mov dword [edx + 4], ecx
mov ecx, edi
vmovss dword [eax], xmm0
vmovss xmm0, dword [esp + 0x3c]
vmovss dword [eax + 4], xmm0
call fcn.100926b0
lea ecx, [esp + 0x70]
call fcn.100054d0
mov dword [esp + 0x14], 9
jmp 0x10095be8
mov esi, dword [esp + 0x10]
cmp byte [edi + 0x11], 0
je 0x10095f46
mov eax, dword [0x10269f0c]
test al, 1
jne 0x10095c7e
mov esi, dword [0x10269968]
lea ecx, [esp + 0x50]
push 0x17
or eax, 1
mov dword [esp + 0x64], 0
vpxor xmm0, xmm0, xmm0
push str.CCSPlayer__m_ArmorValue
mov dword [0x10269f0c], eax
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
mov ecx, dword [esp + 0x64]
mov dword [0x10269f08], eax
cmp ecx, 0xf
jbe 0x10095c7e
mov edx, dword [esp + 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10095c74
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10095e16
push ecx
push edx
call fcn.101041cb
add esp, 8
mov eax, dword [0x10269f08]
mov edx, dword [esp + 0x10]
mov eax, dword [eax + 4]
cmp dword [eax + edx], 0
je 0x10095d98
mov eax, dword [0x10269f14]
test al, 1
jne 0x10095cf3
mov esi, dword [0x10269968]
lea ecx, [esp + 0x50]
push 0x17
or eax, 1
mov dword [esp + 0x64], 0
vpxor xmm0, xmm0, xmm0
push str.CCSPlayer__m_bHasHelmet
mov dword [0x10269f14], eax
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
lea ecx, [esp + 0x50]
mov dword [0x10269f10], eax
call fcn.100054d0
mov edx, dword [esp + 0x10]
mov eax, dword [0x10269f10]
mov esi, 0x10129760
mov ecx, 0x10173778
push 0
mov eax, dword [eax + 4]
cmp byte [edx + eax], 0
mov edx, 0xb4828282
mov eax, 0xb4ffffff
cmove ecx, esi
cmp byte [esp + 0xf], 0
mov esi, dword [edi + 0x360]
cmovne eax, edx
push eax
sub esp, 8
lea eax, [ecx + 1]
mov edx, esp
mov dword [esp + 0x1c], eax
mov dword [edx], ecx
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10095d35
sub ecx, dword [esp + 0x1c]
push esi
mov esi, dword [esp + 0x28]
sub esp, 8
vxorps xmm0, xmm0, xmm0
vcvtsi2sd xmm0, xmm0, esi
mov eax, esi
mov dword [edx + 4], ecx
shr eax, 0x1f
mov ecx, edi
vaddsd xmm0, xmm0, qword [eax*8 + 0x101253b0]
vcvtsd2ss xmm0, xmm0, xmm0
vaddss xmm1, xmm0, dword [esp + 0x3c]
vmovss xmm0, dword [esp + 0x38]
vaddss xmm0, xmm0, dword [esp + 0x40]
vaddss xmm0, xmm0, dword [0x101252e8]
mov eax, esp
vmovss dword [eax], xmm0
vmovss dword [eax + 4], xmm1
call fcn.100926b0
add esi, 9
mov dword [esp + 0x14], esi
mov eax, dword [0x10269e48]
test al, 1
jne 0x10095e26
mov esi, dword [0x10269968]
lea ecx, [esp + 0x50]
push 0x16
or eax, 1
mov dword [esp + 0x64], 0
vpxor xmm0, xmm0, xmm0
push str.CCSPlayer__m_bIsScoped
mov dword [0x10269e48], eax
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x6c], 0
call fcn.10002ab0
lea eax, [esp + 0x50]
mov ecx, esi
push eax
call fcn.10006660
mov ecx, dword [esp + 0x64]
mov dword [0x10269e44], eax
cmp ecx, 0xf
jbe 0x10095e26
mov edx, dword [esp + 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10095e1c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10095e1c
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.101041cb
add esp, 8
mov eax, dword [0x10269e44]
mov esi, dword [esp + 0x10]
mov eax, dword [eax + 4]
cmp byte [eax + esi], 0
je 0x10095eba
cmp byte [esp + 0xb], 0
mov edx, 0xb4828282
mov ecx, dword [edi + 0x360]
mov eax, 0xb4e1b43c
cmovne eax, edx
push 0
push eax
sub esp, 8
mov eax, esp
vxorps xmm0, xmm0, xmm0
push ecx
mov dword [eax], str.ZOOM
sub esp, 8
mov dword [eax + 4], 4
mov ecx, edi
mov eax, dword [esp + 0x30]
vcvtsi2sd xmm0, xmm0, eax
shr eax, 0x1f
vaddsd xmm0, xmm0, qword [eax*8 + 0x101253b0]
vcvtsd2ss xmm0, xmm0, xmm0
vaddss xmm1, xmm0, dword [esp + 0x3c]
vmovss xmm0, dword [esp + 0x38]
vaddss xmm0, xmm0, dword [esp + 0x40]
vaddss xmm0, xmm0, dword [0x101252e8]
mov eax, esp
vmovss dword [eax], xmm0
vmovss dword [eax + 4], xmm1
call fcn.100926b0
add dword [esp + 0x14], 9
mov eax, dword [0x10269964]
mov ecx, esi
mov eax, dword [eax + 0x88]
call eax
test al, al
je 0x10095f46
cmp byte [esp + 0xb], 0
mov edx, 0xb4828282
mov ecx, dword [edi + 0x360]
mov eax, 0xb40000ff
cmovne eax, edx
push 0
push eax
sub esp, 8
mov eax, esp
vxorps xmm0, xmm0, xmm0
push ecx
mov dword [eax], 0x10129740
sub esp, 8
mov dword [eax + 4], 1
mov ecx, edi
mov eax, dword [esp + 0x30]
vcvtsi2sd xmm0, xmm0, eax
shr eax, 0x1f
vaddsd xmm0, xmm0, qword [eax*8 + 0x101253b0]
vcvtsd2ss xmm0, xmm0, xmm0
vaddss xmm1, xmm0, dword [esp + 0x3c]
vmovss xmm0, dword [esp + 0x38]
vaddss xmm0, xmm0, dword [esp + 0x40]
vaddss xmm0, xmm0, dword [0x101252e8]
mov eax, esp
vmovss dword [eax], xmm0
vmovss dword [eax + 4], xmm1
call fcn.100926b0
cmp byte [esp + 0xb], 0
jne 0x10096266
cmp byte [edi + 0x1c], 0
je 0x10096266
mov eax, dword [esi + 0x2950]
mov dword [esp + 0x2c], eax
test eax, eax
je 0x10096266
mov ecx, dword [eax]
test ecx, ecx
je 0x10096266
vmovss xmm1, dword [0x1012532c]
vmulss xmm0, xmm1, dword [edi + 0xa0]
vcvttss2si eax, xmm0
vmulss xmm0, xmm1, dword [edi + 0x9c]
movzx edx, al
or edx, 0xffffb400
shl edx, 8
vcvttss2si eax, xmm0
vmulss xmm0, xmm1, dword [edi + 0x98]
movzx eax, al
or edx, eax
shl edx, 8
vcvttss2si eax, xmm0
movzx eax, al
or edx, eax
mov dword [esp + 0x3c], edx
xor edx, edx
mov dword [esp + 0x34], edx
cmp dword [ecx + 0x9c], edx
jbe 0x10096266
xor esi, esi
xor eax, eax
mov dword [esp + 0x44], esi
mov dword [esp + 0xc], eax
nop
mov edi, dword [ecx + 0xa0]
add edi, ecx
add edi, eax
je 0x1009623f
test dword [edi + 0xa0], 0x100
je 0x1009623f
cmp dword [edi + 4], 0xffffffff
je 0x1009623f
mov ecx, dword [0x10269974]
mov eax, dword [ecx]
mov eax, dword [eax + 0x94]
call eax
mov esi, eax
call fcn.10021970
mov edx, eax
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x2914]
mov eax, dword [esp + 0x44]
vmovss xmm4, dword [ecx + eax + 0xc]
vmovss xmm2, dword [ecx + eax + 0x1c]
vmulss xmm0, xmm4, dword [esi]
vmovss xmm3, dword [ecx + eax + 0x2c]
vmulss xmm1, xmm2, dword [esi + 4]
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm3, dword [esi + 8]
vaddss xmm0, xmm1, xmm0
vaddss xmm5, xmm0, dword [esi + 0xc]
vmulss xmm0, xmm4, dword [esi + 0x10]
vmulss xmm1, xmm2, dword [esi + 0x14]
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm3, dword [esi + 0x18]
vaddss xmm0, xmm1, xmm0
vaddss xmm6, xmm0, dword [esi + 0x1c]
vmulss xmm0, xmm4, dword [esi + 0x30]
vmulss xmm1, xmm2, dword [esi + 0x34]
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm3, dword [esi + 0x38]
vaddss xmm0, xmm1, xmm0
vaddss xmm4, xmm0, dword [esi + 0x3c]
vmovss xmm0, dword [0x1016f354]
vcomiss xmm0, xmm4
jbe 0x100960bc
vmulss xmm1, xmm5, dword [0x10173ccc]
vmulss xmm0, xmm6, dword [0x10173ccc]
vmovss dword [esp + 0x14], xmm1
jmp 0x100960f6
vmovss xmm3, dword [0x101252a8]
vdivss xmm0, xmm5, xmm4
vmulss xmm0, xmm0, dword [edx + 8]
vmulss xmm1, xmm0, xmm3
vmulss xmm0, xmm3, dword [edx + 8]
vaddss xmm0, xmm1, xmm0
vmulss xmm1, xmm3, dword [edx + 0xc]
vmovss dword [esp + 0x14], xmm0
vdivss xmm0, xmm6, xmm4
vmulss xmm0, xmm0, dword [edx + 0xc]
vmulss xmm0, xmm0, xmm3
vsubss xmm0, xmm1, xmm0
mov ecx, dword [0x10269974]
vmovss dword [esp + 0x18], xmm0
mov eax, dword [ecx]
mov eax, dword [eax + 0x94]
call eax
mov esi, eax
call fcn.10021970
mov ecx, dword [edi + 4]
add eax, 8
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x10]
lea edx, [ecx + ecx*2]
add edx, edx
mov ecx, dword [eax + 0x2914]
vmovss xmm4, dword [ecx + edx*8 + 0xc]
vmovss xmm2, dword [ecx + edx*8 + 0x1c]
vmulss xmm0, xmm4, dword [esi]
vmovss xmm3, dword [ecx + edx*8 + 0x2c]
vmulss xmm1, xmm2, dword [esi + 4]
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm3, dword [esi + 8]
vaddss xmm0, xmm1, xmm0
vaddss xmm5, xmm0, dword [esi + 0xc]
vmulss xmm0, xmm4, dword [esi + 0x10]
vmulss xmm1, xmm2, dword [esi + 0x14]
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm3, dword [esi + 0x18]
vaddss xmm0, xmm1, xmm0
vaddss xmm6, xmm0, dword [esi + 0x1c]
vmulss xmm0, xmm4, dword [esi + 0x30]
vmulss xmm1, xmm2, dword [esi + 0x34]
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm3, dword [esi + 0x38]
vaddss xmm0, xmm1, xmm0
vaddss xmm4, xmm0, dword [esi + 0x3c]
vmovss xmm0, dword [0x1016f354]
vcomiss xmm0, xmm4
jbe 0x100961b7
vmulss xmm1, xmm5, dword [0x10173ccc]
vmulss xmm0, xmm6, dword [0x10173ccc]
vmovss dword [esp + 0x4c], xmm1
jmp 0x100961f3
mov eax, dword [esp + 0x48]
vmovss xmm3, dword [0x101252a8]
vdivss xmm0, xmm5, xmm4
vmulss xmm0, xmm0, dword [eax]
vmulss xmm1, xmm0, xmm3
vmulss xmm0, xmm3, dword [eax]
vaddss xmm0, xmm1, xmm0
vmulss xmm1, xmm3, dword [eax + 4]
vmovss dword [esp + 0x4c], xmm0
vdivss xmm0, xmm6, xmm4
vmulss xmm0, xmm0, dword [eax + 4]
vmulss xmm0, xmm0, xmm3
vsubss xmm0, xmm1, xmm0
mov ecx, dword [0x102699b8]
push dword [esp + 0x3c]
vmovss dword [esp + 0x4c], xmm0
mov eax, dword [ecx]
mov eax, dword [eax + 0x38]
call eax
vcvttss2si eax, dword [esp + 0x48]
mov ecx, dword [0x102699b8]
push eax
vcvttss2si eax, dword [esp + 0x50]
push eax
vcvttss2si eax, dword [esp + 0x20]
mov edx, dword [ecx]
push eax
vcvttss2si eax, dword [esp + 0x20]
push eax
mov eax, dword [edx + 0x4c]
call eax
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x34]
mov esi, dword [esp + 0x44]
mov ecx, dword [esp + 0x2c]
inc edx
add eax, 0xd8
mov dword [esp + 0x34], edx
add esi, 0x30
mov dword [esp + 0xc], eax
mov dword [esp + 0x44], esi
mov ecx, dword [ecx]
cmp edx, dword [ecx + 0x9c]
jb 0x10095fe0
mov ecx, dword [esp + 0x34c]
pop edi
pop esi
xor ecx, esp
call fcn.101044f3
mov esp, ebp
pop ebp
ret 4