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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x388
mov eax, dword [0x10163040]
xor eax, esp
mov dword [esp + 0x384], eax
push esi
push edi
mov edi, ecx
mov dword [esp + 0x78], 0
mov ecx, dword [0x1028faa4]
mov dword [esp + 0x3c], edi
mov eax, dword [ecx]
mov eax, dword [eax + 0x68]
call eax
test al, al
je 0x100a390d
mov eax, dword [0x1028f9e0]
vmovss xmm1, dword [0x1015f018]
mov ecx, dword [0x1028fa94]
mov dword [esp + 0x7c], eax
vmulss xmm0, xmm1, dword [eax + 0x10]
vmovss dword [esp + 0x40], xmm0
vmulss xmm0, xmm1, dword [eax + 0x14]
mov eax, dword [0x10290054]
vmovss dword [esp + 0x20], xmm0
test al, 1
jne 0x100a167a
or eax, 1
mov dword [0x10290054], eax
mov eax, dword [ecx + 0x16c]
mov dword [0x10290058], eax
jmp 0x100a167f
mov eax, dword [0x10290058]
cmp byte [edi + 0x183], 0
je 0x100a1690
cmp dword [ecx + 0x16c], eax
je 0x100a16a1
lea ecx, [edi + 0x30c]
call fcn.100a9480
mov ecx, dword [0x1028fa94]
mov eax, dword [ecx + 0x16c]
xor esi, esi
mov ecx, dword [0x1028fad8]
mov dword [0x10290058], eax
mov dword [esp + 0x44], 0
mov dword [esp + 0x18], esi
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
test eax, eax
js 0x100a1778
nop
mov ecx, dword [0x1028fad8]
push esi
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov esi, eax
test esi, esi
je 0x100a175a
mov ecx, dword [esi]
mov edx, dword [ecx + 0x278]
mov ecx, esi
call edx
test al, al
je 0x100a16fe
push esi
mov ecx, edi
call fcn.1009d410
jmp 0x100a175a
mov eax, dword [esi + 8]
lea ecx, [esi + 8]
mov eax, dword [eax + 8]
call eax
mov dword [esp + 0x24], eax
test eax, eax
je 0x100a175a
mov ecx, dword [esi + 8]
mov edx, dword [ecx + 0x24]
lea ecx, [esi + 8]
call edx
test al, al
jne 0x100a175a
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 0x298]
call eax
test al, al
je 0x100a173a
push esi
mov ecx, edi
call fcn.100a0d50
jmp 0x100a175a
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x44]
mov eax, dword [eax + 0x14]
cmp eax, 0x81
push eax
cmove ecx, esi
mov dword [esp + 0x48], ecx
mov ecx, edi
push esi
call fcn.1009fff0
mov ecx, dword [0x1028fad8]
mov esi, dword [esp + 0x18]
inc esi
mov dword [esp + 0x18], esi
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
cmp esi, eax
jle 0x100a16d0
cmp byte [edi + 0x13], 0
je 0x100a1907
mov eax, dword [0x1028fa98]
vmovss xmm1, dword [0x1015f018]
vmovss xmm0, dword [eax + 0x10]
vsubss xmm0, xmm0, dword [edi + 0x298]
vandps xmm0, xmm0, xmmword [0x1015f680]
vcomiss xmm1, xmm0
jb 0x100a1907
vmovss xmm1, dword [0x1015f088]
mov ecx, dword [0x1028fab0]
vaddss xmm0, xmm0, xmm0
vsubss xmm0, xmm1, xmm0
vmulss xmm0, xmm0, dword [0x1015f2f8]
vcvttss2si eax, xmm0
movzx edx, al
mov eax, dword [ecx]
shl edx, 0x18
or edx, 0xc8c8c8
push edx
mov eax, dword [eax + 0x38]
mov dword [esp + 0x1c], edx
call eax
vmovss xmm2, dword [esp + 0x20]
vsubss xmm0, xmm2, dword [0x1015f0fc]
vmovss xmm3, dword [esp + 0x40]
mov ecx, dword [0x1028fab0]
vcvttss2si edx, xmm0
vsubss xmm0, xmm3, dword [0x1015f0fc]
mov dword [esp + 0x24], edx
push dword [esp + 0x24]
mov eax, dword [ecx]
vcvttss2si edx, xmm0
vsubss xmm0, xmm2, dword [0x1015f170]
vcvttss2si edi, xmm0
vsubss xmm0, xmm3, dword [0x1015f170]
mov eax, dword [eax + 0x4c]
push edx
vcvttss2si esi, xmm0
push edi
push esi
mov dword [esp + 0x90], edx
mov dword [esp + 0x20], edi
call eax
mov ecx, dword [0x1028fab0]
push dword [esp + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x38]
call eax
vmovss xmm1, dword [esp + 0x20]
vaddss xmm0, xmm1, dword [0x1015f0fc]
mov ecx, dword [0x1028fab0]
vcvttss2si edi, xmm0
vaddss xmm0, xmm1, dword [0x1015f170]
push edi
push dword [esp + 0x84]
mov eax, dword [ecx]
vcvttss2si edx, xmm0
push edx
push esi
mov eax, dword [eax + 0x4c]
mov dword [esp + 0x58], edi
mov dword [esp + 0x38], edx
call eax
mov ecx, dword [0x1028fab0]
push dword [esp + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x38]
call eax
vmovss xmm1, dword [esp + 0x40]
mov ecx, dword [0x1028fab0]
vaddss xmm0, xmm1, dword [0x1015f0fc]
push dword [esp + 0x48]
vcvttss2si edi, xmm0
mov eax, dword [ecx]
vaddss xmm0, xmm1, dword [0x1015f170]
push edi
push dword [esp + 0x30]
mov eax, dword [eax + 0x4c]
vcvttss2si esi, xmm0
push esi
call eax
mov ecx, dword [0x1028fab0]
push dword [esp + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x38]
call eax
mov ecx, dword [0x1028fab0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x4c]
push dword [esp + 0x24]
push edi
push dword [esp + 0x18]
push esi
call eax
mov edi, dword [esp + 0x3c]
cmp byte [edi + 0x18], 0
je 0x100a1e2d
mov eax, dword [0x1028fa98]
mov edx, 1
mov dword [esp + 0x24], edx
cmp dword [eax + 0x18], edx
jb 0x100a1e2d
nop dword [eax + eax]
mov ecx, dword [0x1028fad8]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov esi, eax
test esi, esi
je 0x100a1e16
mov edx, dword [esi + 8]
lea ecx, [esi + 8]
mov edx, dword [edx + 0x24]
call edx
test al, al
jne 0x100a1e16
mov eax, dword [0x1028fa80]
test al, 1
jne 0x100a1a6e
mov eax, dword [0x1028ff90]
lea ecx, [esp + 0x210]
or dword [0x1028fa80], 1
push 0x16
vpxor xmm0, xmm0, xmm0
push str.CBasePlayer__m_iHealth
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x218], xmm0
mov dword [esp + 0x228], 0
mov dword [esp + 0x22c], 0
call fcn.10005c60
cmp dword [esp + 0x224], 0xf
lea edi, [esp + 0x210]
mov eax, dword [esp + 0x210]
mov ecx, 0x811c9dc5
cmova edi, eax
mov dword [esp + 0x18], eax
xor edx, edx
cmp dword [esp + 0x220], edx
jbe 0x100a19f6
nop dword [eax + eax]
movzx eax, byte [edi + edx]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x220]
jb 0x100a19e0
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x214]
push eax
lea eax, [esp + 0x88]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x84]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fa70], eax
mov eax, dword [esp + 0x224]
cmp eax, 0xf
jbe 0x100a1a6a
lea ecx, [eax + 1]
mov eax, dword [esp + 0x18]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a1a60
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x18], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a2beb
mov eax, dword [esp + 0x18]
push ecx
push eax
call fcn.10117d22
add esp, 8
mov edi, dword [esp + 0x3c]
mov eax, dword [0x1028fa70]
mov eax, dword [eax + 4]
cmp dword [esi + eax], 0
jle 0x100a1e16
mov eax, dword [0x1028fa58]
test al, 1
jne 0x100a1b8a
mov eax, dword [0x1028ff90]
lea ecx, [esp + 0x210]
or dword [0x1028fa58], 1
push 0x18
vpxor xmm0, xmm0, xmm0
push str.CBasePlayer__m_lifeState
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x218], xmm0
mov dword [esp + 0x228], 0
mov dword [esp + 0x22c], 0
call fcn.10005c60
cmp dword [esp + 0x224], 0xf
lea edi, [esp + 0x210]
mov eax, dword [esp + 0x210]
mov ecx, 0x811c9dc5
cmova edi, eax
mov dword [esp + 0x18], eax
xor edx, edx
cmp dword [esp + 0x220], edx
jbe 0x100a1b16
movzx eax, byte [edi + edx]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x220]
jb 0x100a1b00
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x214]
push eax
lea eax, [esp + 0x90]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x8c]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fa68], eax
mov eax, dword [esp + 0x224]
cmp eax, 0xf
jbe 0x100a1b8a
lea ecx, [eax + 1]
mov eax, dword [esp + 0x18]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a1b80
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x18], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a2beb
mov eax, dword [esp + 0x18]
push ecx
push eax
call fcn.10117d22
add esp, 8
mov eax, dword [0x1028fa68]
mov eax, dword [eax + 4]
cmp byte [esi + eax], 0
jne 0x100a1e12
mov eax, dword [0x1028fad0]
cmp esi, dword [eax]
je 0x100a1e12
mov ecx, dword [0x1028fc30]
test cl, 1
jne 0x100a1cc0
mov eax, dword [0x1028ff90]
or ecx, 1
push 0x17
mov dword [0x1028fc30], ecx
lea ecx, [esp + 0x214]
vpxor xmm0, xmm0, xmm0
push str.CBaseEntity__m_iTeamNum
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x218], xmm0
mov dword [esp + 0x228], 0
mov dword [esp + 0x22c], 0
call fcn.10005c60
cmp dword [esp + 0x224], 0xf
lea edi, [esp + 0x210]
mov eax, dword [esp + 0x210]
mov ecx, 0x811c9dc5
cmova edi, eax
mov dword [esp + 0x18], eax
xor edx, edx
cmp dword [esp + 0x220], edx
jbe 0x100a1c46
nop dword [eax]
movzx eax, byte [edx + edi]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x220]
jb 0x100a1c30
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x214]
push eax
lea eax, [esp + 0x98]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x94]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fc24], eax
mov eax, dword [esp + 0x224]
cmp eax, 0xf
jbe 0x100a1cba
lea ecx, [eax + 1]
mov eax, dword [esp + 0x18]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a1cb0
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x18], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a2beb
mov eax, dword [esp + 0x18]
push ecx
push eax
call fcn.10117d22
add esp, 8
mov ecx, dword [0x1028fc30]
mov eax, dword [0x1028fc24]
mov eax, dword [eax + 4]
add eax, esi
mov dword [esp + 0x28], eax
mov eax, dword [0x1028fad0]
mov eax, dword [eax]
mov dword [esp + 0x48], eax
test cl, 1
jne 0x100a1ddb
mov eax, dword [0x1028ff90]
or ecx, 1
push 0x17
mov dword [0x1028fc30], ecx
lea ecx, [esp + 0x214]
vpxor xmm0, xmm0, xmm0
push str.CBaseEntity__m_iTeamNum
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x218], xmm0
mov dword [esp + 0x228], 0
mov dword [esp + 0x22c], 0
call fcn.10005c60
cmp dword [esp + 0x224], 0xf
lea edi, [esp + 0x210]
mov eax, dword [esp + 0x210]
mov ecx, 0x811c9dc5
cmova edi, eax
mov dword [esp + 0x18], eax
xor edx, edx
cmp dword [esp + 0x220], edx
jbe 0x100a1d6d
movzx eax, byte [edx + edi]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x220]
jb 0x100a1d57
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x214]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fc24], eax
mov eax, dword [esp + 0x224]
cmp eax, 0xf
jbe 0x100a1ddb
lea ecx, [eax + 1]
mov eax, dword [esp + 0x18]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a1dd1
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x18], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a2beb
mov eax, dword [esp + 0x18]
push ecx
push eax
call fcn.10117d22
add esp, 8
mov eax, dword [0x1028fc24]
mov edx, dword [esp + 0x48]
mov edi, dword [esp + 0x3c]
mov ecx, dword [eax + 4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
cmp eax, dword [edx + ecx]
jne 0x100a1dfc
cmp byte [edi + 8], 0
je 0x100a1e16
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 0x13c]
call eax
push eax
mov ecx, edi
call fcn.1009cdf0
jmp 0x100a1e16
mov edi, dword [esp + 0x3c]
mov edx, dword [esp + 0x24]
mov eax, dword [0x1028fa98]
inc edx
mov dword [esp + 0x24], edx
cmp edx, dword [eax + 0x18]
jbe 0x100a1930
mov eax, dword [0x1028fad0]
mov eax, dword [eax]
mov dword [esp + 0x18], eax
mov eax, dword [0x1028fa80]
test al, 1
jne 0x100a1f39
mov eax, dword [0x1028ff90]
lea ecx, [esp + 0x210]
or dword [0x1028fa80], 1
push 0x16
vpxor xmm0, xmm0, xmm0
push str.CBasePlayer__m_iHealth
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x218], xmm0
mov dword [esp + 0x228], 0
mov dword [esp + 0x22c], 0
call fcn.10005c60
cmp dword [esp + 0x224], 0xf
lea esi, [esp + 0x210]
mov ecx, 0x811c9dc5
cmova esi, dword [esp + 0x210]
xor edx, edx
cmp dword [esp + 0x220], edx
jbe 0x100a1ec8
movzx eax, byte [edx + esi]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x220]
jb 0x100a1eb2
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x214]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fa70], eax
mov eax, dword [esp + 0x224]
cmp eax, 0xf
jbe 0x100a1f39
lea ecx, [eax + 1]
mov eax, dword [esp + 0x210]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a1f2f
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x10], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a2beb
mov eax, dword [esp + 0x10]
push ecx
push eax
call fcn.10117d22
add esp, 8
mov eax, dword [0x1028fa70]
mov ecx, dword [esp + 0x18]
mov eax, dword [eax + 4]
cmp dword [ecx + eax], 0
jle 0x100a390d
mov eax, dword [0x1028fa58]
test al, 1
jne 0x100a205b
mov eax, dword [0x1028ff90]
lea ecx, [esp + 0x210]
or dword [0x1028fa58], 1
push 0x18
vpxor xmm0, xmm0, xmm0
push str.CBasePlayer__m_lifeState
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x218], xmm0
mov dword [esp + 0x228], 0
mov dword [esp + 0x22c], 0
call fcn.10005c60
cmp dword [esp + 0x224], 0xf
lea esi, [esp + 0x210]
mov ecx, 0x811c9dc5
cmova esi, dword [esp + 0x210]
xor edx, edx
cmp dword [esp + 0x220], edx
jbe 0x100a1fe6
nop dword [eax]
movzx eax, byte [edx + esi]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x220]
jb 0x100a1fd0
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x214]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fa68], eax
mov eax, dword [esp + 0x224]
cmp eax, 0xf
jbe 0x100a2057
lea ecx, [eax + 1]
mov eax, dword [esp + 0x210]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a204d
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x10], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a2beb
mov eax, dword [esp + 0x10]
push ecx
push eax
call fcn.10117d22
add esp, 8
mov ecx, dword [esp + 0x18]
mov eax, dword [0x1028fa68]
mov eax, dword [eax + 4]
cmp byte [ecx + eax], 0
jne 0x100a390d
cmp byte [edi + 0x182], 0
je 0x100a2086
push 0
lea eax, [edi + 0x2b8]
mov ecx, edi
push eax
call fcn.1009a390
cmp byte [edi + 0x17e], 0
je 0x100a24b5
mov eax, dword [0x1028ffa4]
mov eax, dword [eax + 0x1a8]
test eax, eax
je 0x100a24b5
mov eax, dword [eax + 0xc8]
test eax, eax
je 0x100a24b5
cmp eax, 7
jge 0x100a24b5
mov eax, dword [0x1028ff94]
vmovss xmm0, dword [eax + 0xd8]
vaddss xmm0, xmm0, dword [eax + 0xd4]
mov eax, dword [0x1028fad0]
vmulss xmm0, xmm0, dword [0x1015f328]
vmovss dword [esp + 0x28], xmm0
mov ecx, dword [eax]
mov eax, dword [ecx]
mov eax, dword [eax + 0x530]
mov dword [esp + 0x10], eax
call dword [esp + 0x10]
fstp dword [esp + 0x10]
vmovss xmm0, dword [esp + 0x10]
vmulss xmm0, xmm0, dword [0x1015ef84]
vmulss xmm0, xmm0, dword [0x1015f018]
vcvtss2sd xmm0, xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_tan_precise
cmp byte [edi + 0x17f], 0
mov eax, dword [0x1028f9e0]
vmovss xmm1, dword [esp + 0x28]
vcvtsd2ss xmm0, xmm0, xmm0
vaddss xmm0, xmm0, dword [0x1015ef54]
vdivss xmm1, xmm1, xmm0
vmovss xmm0, dword [eax + 0x14]
vmulss xmm0, xmm0, dword [0x1015ef6c]
vmulss xmm4, xmm1, xmm0
vmovss xmm0, dword [esp + 0x40]
vmovss dword [esp + 0x18], xmm0
vmovss xmm0, dword [esp + 0x20]
vmovss dword [esp + 0x24], xmm4
vmovss dword [esp + 0x1c], xmm0
je 0x100a242b
mov eax, dword [0x1028fad0]
mov ecx, dword [eax]
mov eax, dword [ecx]
mov eax, dword [eax + 0x530]
mov dword [esp + 0x10], eax
call dword [esp + 0x10]
mov eax, dword [esp + 0x7c]
mov ecx, dword [0x1028fbe0]
fstp dword [esp + 0x10]
vmovss xmm0, dword [eax + 0x10]
vdivss xmm0, xmm0, dword [esp + 0x10]
vmovss dword [esp + 0x48], xmm0
vmovss xmm0, dword [eax + 0x14]
mov eax, dword [0x1028fad0]
vdivss xmm0, xmm0, dword [esp + 0x10]
vmovss dword [esp + 0x80], xmm0
mov eax, dword [eax]
mov dword [esp + 0x28], eax
test cl, 1
jne 0x100a22cd
mov eax, dword [0x1028ff90]
or ecx, 1
push 0x1c
mov dword [0x1028fbe0], ecx
lea ecx, [esp + 0x214]
vpxor xmm0, xmm0, xmm0
push str.CBasePlayer__m_aimPunchAngle
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x218], xmm0
mov dword [esp + 0x228], 0
mov dword [esp + 0x22c], 0
call fcn.10005c60
cmp dword [esp + 0x224], 0xf
lea esi, [esp + 0x210]
mov ecx, 0x811c9dc5
cmova esi, dword [esp + 0x210]
xor edx, edx
cmp dword [esp + 0x220], edx
jbe 0x100a2256
nop
movzx eax, byte [edx + esi]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x220]
jb 0x100a2240
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x214]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fbdc], eax
mov eax, dword [esp + 0x224]
cmp eax, 0xf
jbe 0x100a22c7
lea ecx, [eax + 1]
mov eax, dword [esp + 0x210]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a22bd
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x10], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a2beb
mov eax, dword [esp + 0x10]
push ecx
push eax
call fcn.10117d22
add esp, 8
mov ecx, dword [0x1028fbe0]
mov eax, dword [0x1028fbdc]
mov edx, dword [esp + 0x28]
vmovss xmm1, dword [esp + 0x40]
mov eax, dword [eax + 4]
vmovss xmm0, dword [eax + edx + 4]
mov eax, dword [0x1028fad0]
vmulss xmm0, xmm0, dword [esp + 0x48]
vsubss xmm0, xmm1, xmm0
vmovss dword [esp + 0x18], xmm0
mov eax, dword [eax]
mov dword [esp + 0x28], eax
test cl, 1
jne 0x100a23ff
mov eax, dword [0x1028ff90]
or ecx, 1
push 0x1c
mov dword [0x1028fbe0], ecx
lea ecx, [esp + 0x214]
vpxor xmm0, xmm0, xmm0
push str.CBasePlayer__m_aimPunchAngle
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x218], xmm0
mov dword [esp + 0x228], 0
mov dword [esp + 0x22c], 0
call fcn.10005c60
cmp dword [esp + 0x224], 0xf
lea esi, [esp + 0x210]
mov ecx, 0x811c9dc5
cmova esi, dword [esp + 0x210]
xor edx, edx
cmp dword [esp + 0x220], edx
jbe 0x100a238e
movzx eax, byte [edx + esi]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x220]
jb 0x100a2378
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x214]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fbdc], eax
mov eax, dword [esp + 0x224]
cmp eax, 0xf
jbe 0x100a23ff
lea ecx, [eax + 1]
mov eax, dword [esp + 0x210]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a23f5
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x10], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a2beb
mov eax, dword [esp + 0x10]
push ecx
push eax
call fcn.10117d22
add esp, 8
mov eax, dword [0x1028fbdc]
mov ecx, dword [esp + 0x28]
vmovss xmm4, dword [esp + 0x24]
mov eax, dword [eax + 4]
vmovss xmm0, dword [eax + ecx]
vmulss xmm0, xmm0, dword [esp + 0x80]
vaddss xmm0, xmm0, dword [esp + 0x20]
vmovss dword [esp + 0x1c], xmm0
vmovss xmm1, dword [0x1015f308]
vmulss xmm0, xmm1, dword [edi + 0x1ac]
vmulss xmm2, xmm4, dword [0x1015f044]
vcvttss2si eax, xmm0
vmulss xmm0, xmm1, dword [edi + 0x1a8]
movzx edx, al
mov ecx, 0x10
vcvttss2si eax, xmm0
vmovss xmm0, dword [0x1015f6b0]
vandnps xmm1, xmm0, xmm2
vandps xmm3, xmm0, xmm2
vroundps xmm2, xmm1, 0
vsubss xmm0, xmm1, xmm2
vcmpeqss xmm0, xmm0, dword [0x1015f560]
vandps xmm0, xmm0, xmmword [0x1015f610]
or edx, 0xffb49b00
movzx eax, al
vaddss xmm0, xmm0, xmm2
shl edx, 8
or edx, eax
vorps xmm0, xmm0, xmm3
vcvttss2si eax, xmm0
cmp eax, ecx
push edx
cmovg ecx, eax
lea eax, [esp + 0x1c]
push ecx
push eax
vmovaps xmm2, xmm4
call fcn.1009cc20
mov ecx, dword [0x1028ffa4]
vmovss xmm1, dword [0x1015f3d4]
add ecx, 0x150
vmovq xmm0, qword [ecx]
mov eax, dword [ecx + 8]
vmovq qword [esp + 0x210], xmm0
vmovss xmm2, dword [esp + 0x210]
vcomiss xmm2, xmm1
mov dword [esp + 0x218], eax
jbe 0x100a2527
vmovss xmm0, dword [0x1015ef7c]
vcomiss xmm0, xmm2
jbe 0x100a2527
vmovss xmm2, dword [esp + 0x214]
vcomiss xmm2, xmm1
jbe 0x100a2527
vcomiss xmm0, xmm2
jbe 0x100a2527
vmovss xmm2, dword [esp + 0x218]
vcomiss xmm2, xmm1
jbe 0x100a2527
vcomiss xmm0, xmm2
ja 0x100a2537
vmovss xmm2, dword [0x1015f190]
push 0xffffffffffffffff
push ecx
call fcn.1009c830
cmp dword [esp + 0x44], 0
vmovss xmm1, dword [esp + 0x20]
vmulss xmm0, xmm1, dword [0x1015efe8]
vaddss xmm0, xmm0, xmm1
vmovss dword [esp + 0x20], xmm0
je 0x100a2f9e
mov eax, dword [0x1028fe5c]
test al, 1
jne 0x100a2662
or eax, 1
mov dword [esp + 0x220], 0
push 0x1a
mov dword [0x1028fe5c], eax
lea ecx, [esp + 0x214]
mov eax, dword [0x1028ff90]
vpxor xmm0, xmm0, xmm0
push str.CPlantedC4__m_bBombTicking
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x218], xmm0
mov dword [esp + 0x22c], 0
call fcn.10005c60
cmp dword [esp + 0x224], 0xf
lea esi, [esp + 0x210]
mov ecx, 0x811c9dc5
cmova esi, dword [esp + 0x210]
xor edx, edx
cmp dword [esp + 0x220], edx
jbe 0x100a25eb
movzx eax, byte [edx + esi]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x220]
jb 0x100a25d5
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x214]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fdbc], eax
mov eax, dword [esp + 0x224]
cmp eax, 0xf
jbe 0x100a265c
lea ecx, [eax + 1]
mov eax, dword [esp + 0x210]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a2652
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x10], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a2beb
mov eax, dword [esp + 0x10]
push ecx
push eax
call fcn.10117d22
add esp, 8
vmovss xmm0, dword [esp + 0x20]
mov eax, dword [0x1028fdbc]
mov edx, dword [esp + 0x44]
mov eax, dword [eax + 4]
cmp byte [edx + eax], 0
je 0x100a2f9e
cmp byte [edi + 0x181], 0
je 0x100a2f9e
mov eax, dword [0x1028fad0]
mov ecx, dword [0x1028fbfc]
mov eax, dword [eax]
mov dword [esp + 0x28], eax
test cl, 1
jne 0x100a279d
mov eax, dword [0x1028ff90]
or ecx, 1
push 0x18
mov dword [0x1028fbfc], ecx
lea ecx, [esp + 0x214]
vpxor xmm0, xmm0, xmm0
push str.CBaseEntity__m_vecOrigin
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x218], xmm0
mov dword [esp + 0x228], 0
mov dword [esp + 0x22c], 0
call fcn.10005c60
cmp dword [esp + 0x224], 0xf
lea esi, [esp + 0x210]
mov ecx, 0x811c9dc5
cmova esi, dword [esp + 0x210]
xor edx, edx
cmp dword [esp + 0x220], edx
jbe 0x100a2726
nop
movzx eax, byte [edx + esi]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x220]
jb 0x100a2710
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x214]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fbe4], eax
mov eax, dword [esp + 0x224]
cmp eax, 0xf
jbe 0x100a2797
lea ecx, [eax + 1]
mov eax, dword [esp + 0x210]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a278d
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x10], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a2beb
mov eax, dword [esp + 0x10]
push ecx
push eax
call fcn.10117d22
add esp, 8
mov ecx, dword [0x1028fbfc]
mov eax, dword [0x1028fbe4]
mov edx, dword [eax + 4]
add edx, dword [esp + 0x28]
mov dword [esp + 0x24], edx
test cl, 1
jne 0x100a28b0
mov eax, dword [0x1028ff90]
or ecx, 1
push 0x18
mov dword [0x1028fbfc], ecx
lea ecx, [esp + 0x214]
vpxor xmm0, xmm0, xmm0
push str.CBaseEntity__m_vecOrigin
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x218], xmm0
mov dword [esp + 0x228], 0
mov dword [esp + 0x22c], 0
call fcn.10005c60
cmp dword [esp + 0x224], 0xf
lea esi, [esp + 0x210]
mov ecx, 0x811c9dc5
cmova esi, dword [esp + 0x210]
xor edx, edx
cmp dword [esp + 0x220], edx
jbe 0x100a283b
movzx eax, byte [esi + edx]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x220]
jb 0x100a2825
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x214]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fbe4], eax
mov eax, dword [esp + 0x224]
cmp eax, 0xf
jbe 0x100a28ac
lea ecx, [eax + 1]
mov eax, dword [esp + 0x210]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a28a2
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x10], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a2beb
mov eax, dword [esp + 0x10]
push ecx
push eax
call fcn.10117d22
add esp, 8
mov edx, dword [esp + 0x24]
mov eax, dword [0x1028fbe4]
mov eax, dword [eax + 4]
add eax, dword [esp + 0x44]
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 0x100a2900
vsqrtsd xmm0, xmm0, xmm0
jmp 0x100a2905
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
vcvtsd2ss xmm1, xmm0, xmm0
vxorps xmm0, xmm1, xmmword [0x1015f6b0]
vmulss xmm0, xmm0, xmm1
vdivss xmm0, xmm0, dword [0x1015f3c0]
vcvtss2sd xmm0, xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_exp_precise
mov eax, dword [0x1028fad0]
vmovss xmm3, dword [0x1015f088]
vcvtsd2ss xmm0, xmm0, xmm0
vmulss xmm0, xmm0, dword [0x1015f374]
push 0
push ecx
vmovss dword [esp + 0x2c], xmm0
vxorps xmm0, xmm0, xmm0
vmovss dword [esp], xmm0
lea ecx, [esp + 0x2c]
push ecx
push dword [eax]
call fcn.10070340
mov eax, dword [0x1028fad0]
mov eax, dword [eax]
mov dword [esp + 0x28], eax
mov eax, dword [0x1028fa80]
test al, 1
jne 0x100a2a6a
or eax, 1
mov dword [esp + 0x220], 0
push 0x16
mov dword [0x1028fa80], eax
lea ecx, [esp + 0x214]
mov eax, dword [0x1028ff90]
vpxor xmm0, xmm0, xmm0
push str.CBasePlayer__m_iHealth
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x218], xmm0
mov dword [esp + 0x22c], 0
call fcn.10005c60
cmp dword [esp + 0x224], 0xf
lea esi, [esp + 0x210]
mov ecx, 0x811c9dc5
cmova esi, dword [esp + 0x210]
xor edx, edx
cmp dword [esp + 0x220], edx
jbe 0x100a29f9
movzx eax, byte [esi + edx]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x220]
jb 0x100a29e3
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x214]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fa70], eax
mov eax, dword [esp + 0x224]
cmp eax, 0xf
jbe 0x100a2a6a
lea ecx, [eax + 1]
mov eax, dword [esp + 0x210]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a2a60
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x10], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a2beb
mov eax, dword [esp + 0x10]
push ecx
push eax
call fcn.10117d22
add esp, 8
mov eax, dword [0x1028fa70]
mov ecx, dword [esp + 0x28]
vmovss xmm1, dword [esp + 0x24]
vmovss xmm4, dword [0x1015f088]
mov eax, dword [eax + 4]
vxorps xmm2, xmm2, xmm2
vxorps xmm3, xmm3, xmm3
vmovss dword [esp + 0x10], xmm3
vcvtsi2ss xmm2, xmm2, dword [eax + ecx]
vdivss xmm0, xmm1, xmm2
vcomiss xmm3, xmm0
lea eax, [esp + 0x28]
lea ecx, [esp + 0x10]
cmovbe ecx, eax
lea eax, [esp + 0x48]
vcomiss xmm0, xmm4
vmovss dword [esp + 0x48], xmm4
cmovbe eax, ecx
vcomiss xmm1, xmm4
vmovss dword [esp + 0x28], xmm0
vmovss xmm3, dword [eax]
vmovss dword [esp + 0x10], xmm3
jb 0x100a2c24
vcomiss xmm1, xmm2
jb 0x100a2ae2
mov ecx, str.FATAL
jmp 0x100a2b3b
vcvttss2si eax, xmm1
mov dword [esp + 0x2c], eax
lea ecx, [esp + 0x28]
sub esp, 8
mov dword [esp + 0x30], 0x10000000
mov eax, esp
push 6
mov dword [eax + 4], ecx
lea ecx, [esp + 0x5c]
push str.__HP
mov dword [eax], 1
call fcn.1008e1a0
vmovss xmm3, dword [esp + 0x20]
vmovss xmm4, dword [0x1015f088]
add esp, 0x10
mov dword [esp + 0x78], 1
cmp dword [esp + 0x64], 0xf
lea ecx, [esp + 0x50]
cmova ecx, dword [esp + 0x50]
vmovss xmm0, dword [0x1015f1d0]
mov esi, dword [edi + 0x26c]
lea eax, [ecx + 1]
sub esp, 8
mov dword [esp + 0x18], eax
mov edx, esp
vmovss dword [esp + 0x30], xmm0
vmovss xmm0, dword [esp + 0x28]
vmovss dword [esp + 0x34], xmm0
mov dword [edx], ecx
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100a2b70
sub ecx, dword [esp + 0x18]
push dword [esp + 0x34]
vsubss xmm0, xmm4, xmm3
vmulss xmm0, xmm0, dword [0x1015f308]
push dword [esp + 0x34]
mov dword [edx + 4], ecx
vcvttss2si eax, xmm0
vmulss xmm0, xmm3, dword [0x1015f308]
movzx ecx, al
or ecx, 0xffb40000
vcvttss2si eax, xmm0
shl ecx, 8
movzx eax, al
push 0
or ecx, eax
push ecx
push esi
call fcn.1009c610
test byte [esp + 0x78], 1
je 0x100a2c10
mov ecx, dword [esp + 0x64]
cmp ecx, 0xf
jbe 0x100a2bfb
mov edx, dword [esp + 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100a2bf1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100a2bf1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.10117d22
add esp, 8
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0xf
mov byte [esp + 0x50], 0
vmovss xmm0, dword [esp + 0x20]
vaddss xmm0, xmm0, dword [0x1015f1d0]
vmovss dword [esp + 0x20], xmm0
mov eax, dword [0x1028fe04]
test al, 1
jne 0x100a2d27
or eax, 1
mov dword [esp + 0x220], 0
push 0x16
mov dword [0x1028fe04], eax
lea ecx, [esp + 0x214]
mov eax, dword [0x1028ff90]
vpxor xmm0, xmm0, xmm0
push str.CPlantedC4__m_flC4Blow
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x218], xmm0
mov dword [esp + 0x22c], 0
call fcn.10005c60
cmp dword [esp + 0x224], 0xf
lea esi, [esp + 0x210]
mov ecx, 0x811c9dc5
cmova esi, dword [esp + 0x210]
xor edx, edx
cmp dword [esp + 0x220], edx
jbe 0x100a2cb6
nop
movzx eax, byte [esi + edx]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x220]
jb 0x100a2ca0
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x214]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fe08], eax
mov eax, dword [esp + 0x224]
cmp eax, 0xf
jbe 0x100a2d27
lea ecx, [eax + 1]
mov eax, dword [esp + 0x210]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a2d1d
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x10], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a2f51
mov eax, dword [esp + 0x10]
push ecx
push eax
call fcn.10117d22
add esp, 8
mov eax, dword [0x1028fe08]
mov ecx, dword [esp + 0x44]
mov eax, dword [eax + 4]
vmovss xmm0, dword [eax + ecx]
mov eax, dword [0x1028fa98]
vsubss xmm0, xmm0, dword [eax + 0x10]
mov eax, dword [0x1028fe58]
vmovss dword [esp + 0x28], xmm0
test al, 1
jne 0x100a2e4a
or eax, 1
mov dword [esp + 0x220], 0
push 0x17
mov dword [0x1028fe58], eax
lea ecx, [esp + 0x214]
mov eax, dword [0x1028ff90]
vpxor xmm0, xmm0, xmm0
push str.CPlantedC4__m_nBombSite
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x218], xmm0
mov dword [esp + 0x22c], 0
call fcn.10005c60
cmp dword [esp + 0x224], 0xf
lea esi, [esp + 0x210]
mov ecx, 0x811c9dc5
cmova esi, dword [esp + 0x210]
xor edx, edx
cmp dword [esp + 0x220], edx
jbe 0x100a2dd9
movzx eax, byte [esi + edx]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x220]
jb 0x100a2dc3
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x214]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fe54], eax
mov eax, dword [esp + 0x224]
cmp eax, 0xf
jbe 0x100a2e4a
lea ecx, [eax + 1]
mov eax, dword [esp + 0x210]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a2e40
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x10], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a2f51
mov eax, dword [esp + 0x10]
push ecx
push eax
call fcn.10117d22
add esp, 8
mov eax, dword [0x1028fe54]
mov ecx, 0x101593f8
mov edx, dword [esp + 0x44]
vmovss xmm0, dword [0x1015f1d0]
mov esi, dword [edi + 0x26c]
mov eax, dword [eax + 4]
vmovss dword [esp + 0x48], xmm0
vmovss xmm0, dword [esp + 0x20]
vmovss dword [esp + 0x4c], xmm0
cmp dword [edx + eax], 0
mov eax, 0x101593fc
vmovss xmm0, dword [esp + 0x28]
cmovne ecx, eax
mov dword [esp + 0x210], 0xb0000000
sub esp, 8
mov dword [esp + 0x220], ecx
mov eax, esp
mov dword [esp + 0x21c], 0x70000004
vmovss dword [esp + 0x224], xmm0
lea ecx, [esp + 0x218]
push 0xc
mov dword [eax + 4], ecx
lea ecx, [esp + 0xa4]
push str.___:.1fs
mov dword [eax], 2
call fcn.1008e1a0
cmp dword [esp + 0xbc], 0xf
lea ecx, [esp + 0xa8]
cmova ecx, dword [esp + 0xa8]
add esp, 8
mov edx, esp
lea eax, [ecx + 1]
mov dword [edx], ecx
mov dword [esp + 0x18], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100a2f00
push dword [esp + 0x54]
sub ecx, dword [esp + 0x1c]
push dword [esp + 0x54]
mov dword [edx + 4], ecx
push 0
push 0xb4ffffff
push esi
call fcn.1009c610
mov ecx, dword [esp + 0xac]
cmp ecx, 0xf
jbe 0x100a2f6c
mov edx, dword [esp + 0x98]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100a2f62
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100a2f62
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push str.invalid_unordered_map_K__T__key
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__]
push ecx
push edx
call fcn.10117d22
add esp, 8
vmovss xmm0, dword [esp + 0x20]
vsubss xmm0, xmm0, dword [0x1015f208]
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0xf
mov byte [esp + 0x98], 0
vmovss dword [esp + 0x20], xmm0
test byte [edi + 0x18c], 1
mov esi, 0xb40000ff
je 0x100a3189
mov eax, dword [0x1028ffa4]
cmp byte [eax + 0x190], 0
jne 0x100a3122
mov eax, dword [0x1028fad0]
mov eax, dword [eax]
mov dword [esp + 0x28], eax
mov eax, dword [0x1028fbf4]
test al, 1
jne 0x100a30d4
or eax, 1
mov dword [esp + 0x220], 0
push 0x1d
mov dword [0x1028fbf4], eax
lea ecx, [esp + 0x214]
mov eax, dword [0x1028ff90]
vpxor xmm0, xmm0, xmm0
push str.CBasePlayer__m_vecVelocity_0_
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x218], xmm0
mov dword [esp + 0x22c], 0
call fcn.10005c60
cmp dword [esp + 0x224], 0xf
lea esi, [esp + 0x210]
mov ecx, 0x811c9dc5
cmova esi, dword [esp + 0x210]
xor edx, edx
cmp dword [esp + 0x220], edx
jbe 0x100a305e
movzx eax, byte [esi + edx]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x220]
jb 0x100a3048
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x214]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fc0c], eax
mov eax, dword [esp + 0x224]
cmp eax, 0xf
jbe 0x100a30cf
lea ecx, [eax + 1]
mov eax, dword [esp + 0x210]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a30c5
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x10], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a2beb
mov eax, dword [esp + 0x10]
push ecx
push eax
call fcn.10117d22
add esp, 8
mov esi, 0xb40000ff
mov eax, dword [0x1028fc0c]
mov eax, dword [eax + 4]
add eax, dword [esp + 0x28]
vmovss xmm0, dword [eax]
vmovss xmm2, dword [eax + 4]
vmulss xmm1, xmm0, xmm0
vmulss xmm0, xmm2, xmm2
vaddss xmm0, xmm1, xmm0
vcvtss2sd xmm0, xmm0, xmm0
vxorpd xmm1, xmm1, xmm1
vucomisd xmm1, xmm0
ja 0x100a3109
vsqrtsd xmm0, xmm0, xmm0
jmp 0x100a310e
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
vcvtsd2ss xmm0, xmm0, xmm0
vcomiss xmm0, dword [0x1015f310]
vmovss xmm0, dword [esp + 0x20]
jbe 0x100a3189
mov eax, dword [0x1028ffa4]
mov ecx, 0xb415c27b
vmovss xmm1, dword [0x1015f1d0]
mov edx, esi
vmovss dword [esp + 0x14], xmm0
cmp byte [eax + 0x190], 0
vmovss dword [esp + 0x10], xmm1
cmovne edx, ecx
mov ecx, dword [edi + 0x26c]
sub esp, 8
mov eax, esp
push dword [esp + 0x1c]
mov dword [eax], 0x1015deb4
push dword [esp + 0x1c]
mov dword [eax + 4], 2
push 0
push edx
push ecx
call fcn.1009c610
vmovss xmm0, dword [esp + 0x20]
vmovss xmm1, dword [0x1015f1d0]
vsubss xmm0, xmm0, xmm1
jmp 0x100a3191
vmovss xmm1, dword [0x1015f1d0]
test byte [edi + 0x18c], 2
je 0x100a31f4
mov eax, dword [0x1028ffb4]
mov ecx, dword [eax + 0x38]
cmp ecx, 2
je 0x100a31b1
cmp ecx, 3
je 0x100a31b1
cmp ecx, 5
jne 0x100a31f4
cmp byte [eax + 0x1d], 0
mov ecx, 0xb4ffffff
mov edx, esi
cmovne edx, ecx
mov ecx, dword [edi + 0x26c]
sub esp, 8
mov eax, esp
vmovss dword [esp + 0x1c], xmm0
vmovss dword [esp + 0x18], xmm1
push dword [esp + 0x1c]
mov dword [eax], 0x1015deb0
push dword [esp + 0x1c]
mov dword [eax + 4], 2
push 0
push edx
push ecx
call fcn.1009c610
cmp byte [edi + 0x184], 0
je 0x100a3852
mov eax, dword [0x1028fa98]
xor esi, esi
mov edx, 1
mov dword [esp + 0x210], esi
mov dword [esp + 0x214], esi
mov dword [esp + 0x218], esi
mov dword [esp + 0x40], edx
cmp dword [eax + 0x18], edx
jl 0x100a36f8
nop
mov ecx, dword [0x1028fad8]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov edi, eax
test edi, edi
je 0x100a36d6
mov ecx, dword [0x1028fad0]
cmp edi, dword [ecx]
je 0x100a36d6
mov eax, dword [0x1028fa80]
test al, 1
jne 0x100a333b
or eax, 1
mov dword [esp + 0x60], 0
push 0x16
mov dword [0x1028fa80], eax
lea ecx, [esp + 0x54]
mov eax, dword [0x1028ff90]
vpxor xmm0, xmm0, xmm0
push str.CBasePlayer__m_iHealth
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x6c], 0
call fcn.10005c60
cmp dword [esp + 0x64], 0xf
lea esi, [esp + 0x50]
mov eax, dword [esp + 0x50]
mov ecx, 0x811c9dc5
cmova esi, eax
mov dword [esp + 0x18], eax
xor edx, edx
cmp dword [esp + 0x60], edx
jbe 0x100a32d3
nop
movzx eax, byte [edx + esi]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x60]
jb 0x100a32c0
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x54]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fa70], eax
mov eax, dword [esp + 0x64]
cmp eax, 0xf
jbe 0x100a333b
lea ecx, [eax + 1]
mov eax, dword [esp + 0x18]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a3331
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x18], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a3821
mov eax, dword [esp + 0x18]
push ecx
push eax
call fcn.10117d22
add esp, 8
mov eax, dword [0x1028fa70]
mov eax, dword [eax + 4]
cmp dword [edi + eax], 0
jle 0x100a3449
mov eax, dword [0x1028fa58]
test al, 1
jne 0x100a3437
or eax, 1
mov dword [esp + 0x60], 0
push 0x18
mov dword [0x1028fa58], eax
lea ecx, [esp + 0x54]
mov eax, dword [0x1028ff90]
vpxor xmm0, xmm0, xmm0
push str.CBasePlayer__m_lifeState
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x6c], 0
call fcn.10005c60
cmp dword [esp + 0x64], 0xf
lea esi, [esp + 0x50]
mov eax, dword [esp + 0x50]
mov ecx, 0x811c9dc5
cmova esi, eax
mov dword [esp + 0x18], eax
xor edx, edx
cmp dword [esp + 0x60], edx
jbe 0x100a33c9
movzx eax, byte [edx + esi]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x60]
jb 0x100a33b6
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x54]
push eax
lea eax, [esp + 0x98]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x94]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fa68], eax
mov eax, dword [esp + 0x64]
cmp eax, 0xf
jbe 0x100a3437
lea ecx, [eax + 1]
mov eax, dword [esp + 0x18]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a342d
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x18], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a3821
mov eax, dword [esp + 0x18]
push ecx
push eax
call fcn.10117d22
add esp, 8
mov eax, dword [0x1028fa68]
mov eax, dword [eax + 4]
cmp byte [edi + eax], 0
je 0x100a36d6
mov eax, dword [edi + 8]
lea ecx, [edi + 8]
mov eax, dword [eax + 0x24]
call eax
test al, al
jne 0x100a36d6
mov eax, dword [0x1028fe0c]
test al, 1
jne 0x100a3546
or eax, 1
mov dword [esp + 0x60], 0
push 0x1e
mov dword [0x1028fe0c], eax
lea ecx, [esp + 0x54]
mov eax, dword [0x1028ff90]
vpxor xmm0, xmm0, xmm0
push str.CBasePlayer__m_hObserverTarget
mov dword [esp + 0x18], eax
vmovdqu xmmword [esp + 0x58], xmm0
mov dword [esp + 0x6c], 0
call fcn.10005c60
cmp dword [esp + 0x64], 0xf
lea esi, [esp + 0x50]
mov eax, dword [esp + 0x50]
mov ecx, 0x811c9dc5
cmova esi, eax
mov dword [esp + 0x18], eax
xor edx, edx
cmp dword [esp + 0x60], edx
jbe 0x100a34d8
movzx eax, byte [edx + esi]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x60]
jb 0x100a34c5
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x54]
push eax
lea eax, [esp + 0x90]
push eax
call fcn.10009d90
mov eax, dword [esp + 0x8c]
test eax, eax
je 0x100a2f57
add eax, 0x20
mov dword [0x1028fdc8], eax
mov eax, dword [esp + 0x64]
cmp eax, 0xf
jbe 0x100a3546
lea ecx, [eax + 1]
mov eax, dword [esp + 0x18]
mov edx, eax
cmp ecx, 0x1000
jb 0x100a353c
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x18], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x100a3821
mov eax, dword [esp + 0x18]
push ecx
push eax
call fcn.10117d22
add esp, 8
mov eax, dword [0x1028fdc8]
mov ecx, dword [0x1028fad8]
mov eax, dword [eax + 4]
mov edx, dword [edi + eax]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 0x10]
call eax
mov edi, eax
test edi, edi
je 0x100a36d6
mov ecx, dword [0x1028fad0]
mov ecx, dword [ecx]
add ecx, 8
mov edx, dword [ecx]
mov edx, dword [edx + 0x28]
call edx
mov edx, dword [edi + 8]
lea ecx, [edi + 8]
mov esi, eax
mov edx, dword [edx + 0x28]
call edx
cmp eax, esi
jne 0x100a36d6
mov esi, dword [0x1028faa4]
lea eax, [esp + 0x240]
push 0x80
vpxor xmm0, xmm0, xmm0
push 0
push eax
vmovq qword [esp + 0x23c], xmm0
vmovlpd qword [esp + 0x244], xmm0
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [esp + 0x2c0], 0
xor eax, eax
mov byte [esp + 0x2e4], 0
vpxor xmm0, xmm0, xmm0
mov word [esp + 0x2e5], ax
push 0x80
push eax
mov byte [esp + 0x2ef], al
mov dword [esp + 0x2f0], eax
lea eax, [esp + 0x2f4]
vmovdqu ymmword [esp + 0x2cc], ymm0
push eax
vzeroupper
call sub.VCRUNTIME140.dll_memset
mov eax, dword [esi]
lea ecx, [esp + 0x23c]
add esp, 0xc
mov word [esp + 0x36c], 0
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [esp + 0x370], xmm0
mov byte [esp + 0x380], 0
mov eax, dword [eax + 0x20]
push ecx
push dword [esp + 0x44]
mov ecx, esi
call eax
test al, al
je 0x100a36d6
mov ecx, 0x56
lea esi, [esp + 0x230]
lea edi, [esp + 0xb0]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x214]
mov byte [esp + 0x208], 1
cmp ecx, dword [esp + 0x218]
je 0x100a36c1
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [ecx], xmm0
lea edx, [esp + 0xc0]
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
lea esi, [edx + 1]
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x100a36a0
sub edx, esi
lea eax, [esp + 0xc0]
push edx
push eax
call fcn.10005c60
add dword [esp + 0x214], 0x18
jmp 0x100a36d6
lea eax, [esp + 0xc0]
push eax
push ecx
lea ecx, [esp + 0x218]
call fcn.100aa220
mov edx, dword [esp + 0x40]
mov eax, dword [0x1028fa98]
inc edx
mov dword [esp + 0x40], edx
cmp edx, dword [eax + 0x18]
jle 0x100a3230
mov esi, dword [esp + 0x210]
mov edi, dword [esp + 0x3c]
mov eax, dword [esp + 0x214]
mov dword [esp + 0x80], eax
cmp esi, eax
je 0x100a37c6
mov edx, 0xa
mov dword [esp + 0x78], edx
nop word [eax + eax]
cmp dword [esi + 0x14], 0xf
mov ecx, esi
mov eax, dword [edi + 0x264]
mov dword [esp + 0x48], eax
jbe 0x100a3734
mov ecx, dword [esi]
sub esp, 8
mov eax, esp
mov dword [esp + 0x30], eax
mov dword [eax], ecx
lea eax, [ecx + 1]
mov dword [esp + 0x18], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100a3746
mov eax, dword [esp + 0x30]
sub esp, 8
sub ecx, dword [esp + 0x20]
mov dword [eax + 4], ecx
mov ecx, esp
mov eax, dword [esp + 0x8c]
push 4
push 0xb4ffffff
push dword [esp + 0x60]
vmovss xmm0, dword [eax + 0x10]
vsubss xmm0, xmm0, dword [0x1015f1b4]
vmovss dword [ecx], xmm0
mov eax, edx
vxorps xmm0, xmm0, xmm0
shr eax, 0x1f
vcvtsi2sd xmm0, xmm0, edx
vaddsd xmm0, xmm0, qword [eax*8 + 0x1015f650]
vcvtsd2ss xmm0, xmm0, xmm0
vmovss dword [ecx + 4], xmm0
call fcn.1009c610
mov edx, dword [esp + 0x78]
add esi, 0x18
add edx, 0x14
mov dword [esp + 0x78], edx
cmp esi, dword [esp + 0x80]
jne 0x100a3720
mov esi, dword [esp + 0x210]
test esi, esi
je 0x100a3852
mov edx, dword [esp + 0x214]
push ecx
mov ecx, esi
call fcn.100a9c00
mov ecx, dword [esp + 0x21c]
mov eax, 0x2aaaaaab
mov esi, dword [esp + 0x214]
add esp, 4
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*2]
mov eax, esi
shl ecx, 3
cmp ecx, 0x1000
jb 0x100a3827
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100a3827
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push esi
call fcn.10117d22
add esp, 8
mov dword [esp + 0x210], 0
mov dword [esp + 0x214], 0
mov dword [esp + 0x218], 0
cmp byte [edi + 0x185], 0
je 0x100a390d
cmp byte [edi + 0x2b4], 0
je 0x100a390d
cmp dword [edi + 0x2a0], 1
mov eax, dword [esp + 0x7c]
vmovss xmm2, dword [0x1015f018]
vmulss xmm1, xmm2, dword [eax + 0x10]
vmulss xmm2, xmm2, dword [eax + 0x14]
vmovss dword [esp + 0x28], xmm1
vmovss dword [esp + 0x10], xmm2
jge 0x100a38ad
cmp dword [edi + 0x2ac], 4
mov eax, 0xb400ff00
mov edx, 0xb40000ff
cmovne edx, eax
jmp 0x100a38b2
mov edx, 0xb4ff0000
mov ecx, dword [0x1028fab0]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x38]
call eax
vmovss xmm0, dword [esp + 0x10]
vsubss xmm1, xmm0, dword [0x1015f088]
vaddss xmm0, xmm1, dword [0x1015f0fc]
mov ecx, dword [0x1028fab0]
vcvttss2si eax, xmm0
vmovss xmm0, dword [esp + 0x28]
vsubss xmm2, xmm0, dword [0x1015f088]
vaddss xmm0, xmm2, dword [0x1015f0fc]
mov edx, dword [ecx]
push eax
vcvttss2si eax, xmm0
push eax
vcvttss2si eax, xmm1
push eax
vcvttss2si eax, xmm2
push eax
mov eax, dword [edx + 0x40]
call eax
mov ecx, dword [esp + 0x38c]
pop edi
pop esi
xor ecx, esp
call fcn.101179c5
mov esp, ebp
pop ebp
ret