Function at 0x1001b3f0
Capabilities:
Log keystrokes via polling
Resolve function by parsing pe exports

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10059154
mov eax, dword fs:[0]
push eax
push ebx
mov eax, 0x62e0
call fcn.100571c0
mov eax, dword [0x1006a040]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [0x1006c354]
mov ecx, dword [ebx + 8]
mov dword [ebp - 0x49ac], ecx
mov ecx, dword [eax + 0x74]
test ecx, ecx
je 0x1001cbe6
call fcn.10002f70
test al, al
je 0x1001cbe6
mov eax, dword [0x1006c354]
cmp dword [eax + 0x78], 0
je 0x1001cbe6
mov eax, dword [0x1006c374]
cmp byte [eax], 0
je 0x1001cbe6
cmp byte [eax + 0x74], 0
je 0x1001cbe6
cmp byte [eax + 0x75], 0
je 0x1001b4c6
movzx eax, word [eax + 2]
test ax, ax
je 0x1001b4bc
push eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1001b4bc
cmp dword [0x1006ae88], 0
jne 0x1001bab3
push 0x1005d834
push 0
call dword [sym.imp.USER32.dll_FindWindowW]
mov dword [0x1006ae88], eax
xor al, al
test al, al
je 0x1001cbe6
mov eax, dword [0x1006c354]
mov ecx, dword [eax + 0x78]
mov eax, dword [ecx]
mov eax, dword [eax + 0x528]
call eax
cmp eax, 2
jne 0x1001cbe6
mov ecx, dword [0x1006c354]
mov ecx, dword [ecx + 0x74]
call fcn.1000da30
test al, al
jne 0x1001cbe6
xor ecx, ecx
mov dword [ebp - 0x187c], 0
xorps xmm0, xmm0
mov dword [ebp - 0x187c], ecx
movq qword [ebp - 0x1884], xmm0
mov dword [ebp - 0x1884], ecx
mov dword [ebp - 0x1880], ecx
mov dword [ebp - 4], ecx
mov eax, dword [0x1006c354]
mov esi, dword [eax + 0x98]
mov eax, dword [eax + 0x9c]
mov dword [ebp - 0x49b0], esi
mov dword [ebp - 0x4998], eax
cmp esi, eax
je 0x1001c4ee
mov ecx, eax
nop word [eax + eax]
mov esi, dword [esi]
mov dword [ebp - 0x499c], esi
test esi, esi
je 0x1001c4d1
mov eax, dword [0x1006c354]
cmp esi, dword [eax + 0x74]
je 0x1001c4d1
mov eax, dword [esi + 8]
lea edi, [esi + 8]
mov ecx, edi
mov dword [ebp - 0x49b4], edi
mov eax, dword [eax + 0x20]
call eax
test al, al
jne 0x1001c4cb
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 8]
call eax
cmp dword [eax + 0x14], 0xf7
jne 0x1001b5aa
mov ecx, esi
call fcn.10002f70
test al, al
je 0x1001c4cb
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 8]
call eax
cmp dword [eax + 0x14], 0xf7
jne 0x1001b6fa
mov ecx, esi
call fcn.10002e30
mov eax, dword [eax]
shr eax, 5
test al, 1
jne 0x1001c4cb
mov ecx, esi
call fcn.10002e30
mov eax, dword [eax]
shr eax, 0xe
test al, 1
jne 0x1001c4cb
mov ecx, esi
call fcn.1000d990
mov eax, dword [eax]
shr eax, 0xd
test al, 1
jne 0x1001c4cb
mov eax, dword [0x1006ad68]
mov ecx, dword fs:[0x2c]
mov ecx, dword [ecx + eax*4]
mov eax, dword [0x1006c62c]
cmp eax, dword [ecx + 4]
jle 0x1001b657
push 0x1006c62c
call fcn.10055f50
add esp, 4
cmp dword [0x1006c62c], 0xffffffff
jne 0x1001b657
mov edx, str.55_8B_EC_81_EC_________E8_________85_C0_74_7E_8B_4D_08_85_C9_74_77_A1_________83_78_08_00_74_6C_83_78_0C_00_74_66_A1_________83_C1_08_56_8B_30_8D_85_________50_8B_01
mov byte [ebp - 4], 1
mov ecx, str.client.dll
call fcn.1000d430
push 0x1006c62c
mov dword [0x1006c638], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
push esi
call dword [0x1006c638]
test al, al
je 0x1001b6fa
mov eax, dword [0x1006c374]
cmp byte [eax + 4], 0
je 0x1001b6fa
mov edi, dword fs:[0x2c]
mov edx, dword [0x1006ad68]
mov eax, dword [0x1006c354]
mov ecx, dword [edi + edx*4]
lea edi, [esi + 8]
mov eax, dword [eax + 0x78]
mov dword [ebp - 0x18a4], eax
mov eax, dword [0x1006adf8]
cmp eax, dword [ecx + 4]
jle 0x1001b6e2
push 0x1006adf8
call fcn.10055f50
add esp, 4
cmp dword [0x1006adf8], 0xffffffff
jne 0x1001b6e2
push str.m_iItemDefinitionIndex
push str.CEconEntity
mov byte [ebp - 4], 2
call fcn.10051f50
push 0x1006adf8
mov dword [0x1006ad80], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
mov eax, dword [0x1006ad80]
mov ecx, dword [ebp - 0x18a4]
cmp dword [ecx + eax], 0x1bf
jne 0x1001c4cb
mov eax, dword [0x1006c354]
lea ecx, [ebp - 0x4a44]
push ecx
mov ecx, dword [eax + 0x74]
call fcn.10002ac0
mov ecx, dword [0x1006c354]
mov dword [ebp - 0x49a0], eax
mov eax, dword [ecx + 0x74]
mov ecx, dword fs:[0x2c]
mov dword [ebp - 0x18a4], eax
mov eax, dword [0x1006ad68]
mov eax, dword [ecx + eax*4]
mov ecx, dword [0x1006ade0]
mov dword [ebp - 0x49a8], eax
cmp ecx, dword [eax + 4]
jle 0x1001b785
push 0x1006ade0
call fcn.10055f50
add esp, 4
cmp dword [0x1006ade0], 0xffffffff
jne 0x1001b785
push str.m_vecVelocity_0_
push str.CBasePlayer
mov byte [ebp - 4], 3
call fcn.10051f50
push 0x1006ade0
mov dword [0x1006adfc], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
mov eax, dword [0x1006c354]
mov ecx, dword [0x1006adfc]
mov eax, dword [eax + 0x2c]
movss xmm2, dword [eax + 0x1c]
mulss xmm2, dword [0x10062b10]
mov eax, dword [ebp - 0x18a4]
movaps xmm1, xmm2
movaps xmm0, xmm2
mulss xmm1, dword [eax + ecx]
mulss xmm0, dword [eax + ecx + 4]
mulss xmm2, dword [eax + ecx + 8]
mov ecx, esi
mov eax, dword [ebp - 0x49a0]
addss xmm1, dword [eax]
addss xmm0, dword [eax + 4]
addss xmm2, dword [eax + 8]
lea eax, [ebp - 0x4a80]
push eax
movss dword [ebp - 0x18a4], xmm1
movss dword [ebp - 0x49a0], xmm0
movss dword [ebp - 0x18a8], xmm2
call fcn.10002ac0
movss xmm1, dword [ebp - 0x18a4]
lea ecx, [ebp - 0x4a04]
movss xmm2, dword [ebp - 0x18a8]
movss xmm0, dword [ebp - 0x49a0]
subss xmm1, dword [eax]
subss xmm0, dword [eax + 4]
subss xmm2, dword [eax + 8]
movss dword [ebp - 0x4a04], xmm1
movss dword [ebp - 0x4a00], xmm0
movss dword [ebp - 0x49fc], xmm2
call fcn.10002550
mov eax, dword [0x1006c354]
mov ecx, dword [ebp - 0x49a8]
movss dword [ebp - 0x4994], xmm0
mov eax, dword [eax + 0x74]
mov dword [ebp - 0x18a4], eax
mov eax, dword [0x1006adc0]
cmp eax, dword [ecx + 4]
jle 0x1001b8a8
push 0x1006adc0
call fcn.10055f50
add esp, 4
cmp dword [0x1006adc0], 0xffffffff
jne 0x1001b8a8
push str.m_iClass
push str.CTFPlayer
mov byte [ebp - 4], 4
call fcn.10051f50
push 0x1006adc0
mov dword [0x1006adb8], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
mov eax, dword [0x1006adb8]
mov ecx, dword [ebp - 0x18a4]
cmp dword [eax + ecx], 8
jne 0x1001b92e
mov eax, dword [0x1006c354]
lea ecx, [ebp - 0x4a50]
push ecx
mov ecx, dword [eax + 0x74]
call fcn.10002ac0
mov ecx, dword [ebp - 0x499c]
mov esi, eax
lea eax, [ebp - 0x4a5c]
push eax
call fcn.10002ac0
movss xmm2, dword [esi]
lea ecx, [ebp - 0x4a10]
movss xmm1, dword [esi + 4]
movss xmm0, dword [esi + 8]
subss xmm2, dword [eax]
subss xmm1, dword [eax + 4]
subss xmm0, dword [eax + 8]
movss dword [ebp - 0x4a10], xmm2
movss dword [ebp - 0x4a0c], xmm1
movss dword [ebp - 0x4a08], xmm0
call fcn.10002550
mov esi, dword [ebp - 0x499c]
movss dword [ebp - 0x4994], xmm0
push 0x1860
lea eax, [ebp - 0x4988]
mov dword [ebp - 0x4990], 0
push 0
push eax
mov dword [ebp - 0x498c], 0
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x4988]
call fcn.10009a90
mov eax, dword [edi]
mov ecx, edi
mov dword [ebp - 0x3128], 0
mov eax, dword [eax + 8]
call eax
cmp dword [eax + 0x14], 0xf7
jne 0x1001c332
mov eax, dword [0x1006c354]
mov ecx, dword [ebp - 0x49a8]
mov eax, dword [eax + 0x78]
mov dword [ebp - 0x18a4], eax
mov eax, dword [0x1006adf8]
cmp eax, dword [ecx + 4]
jle 0x1001b9e3
push 0x1006adf8
call fcn.10055f50
add esp, 4
cmp dword [0x1006adf8], 0xffffffff
jne 0x1001b9e3
push str.m_iItemDefinitionIndex
push str.CEconEntity
mov byte [ebp - 4], 5
call fcn.10051f50
push 0x1006adf8
mov dword [0x1006ad80], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
mov eax, dword [0x1006ad80]
mov ecx, dword [ebp - 0x18a4]
cmp dword [ecx + eax], 0x1bf
jne 0x1001bacc
mov ecx, esi
call fcn.100464a0
test al, al
jne 0x1001bacc
mov eax, dword [0x1006c374]
cmp byte [eax + 0x78], 0
je 0x1001bacc
movss xmm0, dword [ebp - 0x4994]
movss xmm1, dword [0x10062b78]
comiss xmm1, xmm0
jb 0x1001bacc
push 0x1860
lea eax, [ebp - 0x1878]
movss dword [ebp - 0x4990], xmm0
push 0
push eax
mov dword [ebp - 0x3128], esi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x1878]
call fcn.10009a90
lea eax, [ebp - 0x1878]
push eax
lea ecx, [ebp - 0x4988]
call fcn.1000a180
mov eax, dword [ebp - 0x1880]
lea ecx, [ebp - 0x4990]
mov dword [ebp - 0x498c], 1
cmp eax, dword [ebp - 0x187c]
je 0x1001c4be
push 0x186c
push ecx
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add dword [ebp - 0x1880], 0x186c
jmp 0x1001c4cb
call dword [sym.imp.USER32.dll_GetForegroundWindow]
cmp eax, dword [0x1006ae88]
jne 0x1001b4bc
mov al, 1
jmp 0x1001b4be
mov eax, dword [edi]
mov ecx, edi
mov esi, dword [0x1006c360]
mov eax, dword [eax + 0x24]
call eax
lea eax, [eax + eax*4]
cmp dword [esi + eax*4 + 0x24], 2
jbe 0x1001c4cb
mov eax, dword [edi]
mov ecx, edi
mov esi, dword [0x1006c360]
mov dword [ebp - 0x4994], 2
mov eax, dword [eax + 0x24]
call eax
lea eax, [eax + eax*4]
cmp dword [esi + eax*4 + 0x24], 2
jbe 0x1001c4cb
mov eax, dword [edi]
mov ecx, edi
mov esi, dword [0x1006c360]
mov eax, dword [eax + 0x24]
call eax
lea edx, [eax + eax*4]
mov eax, dword [esi + edx*4 + 0x20]
mov ecx, dword [esi + edx*4 + 0x1c]
add eax, dword [ebp - 0x4994]
dec ecx
and ecx, eax
mov eax, dword [esi + edx*4 + 0x18]
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0x49a4], esi
movss xmm1, dword [esi + 0x184c]
call fcn.10008b40
test al, al
je 0x1001c305
mov eax, dword [0x1006c354]
lea ecx, [ebp - 0x4a68]
push ecx
mov ecx, dword [eax + 0x74]
call fcn.10002ac0
add esi, 0x3c
lea ecx, [ebp - 0x4a1c]
movss xmm2, dword [eax]
movss xmm1, dword [eax + 4]
movss xmm0, dword [eax + 8]
subss xmm2, dword [esi]
subss xmm1, dword [esi + 4]
subss xmm0, dword [esi + 8]
movss dword [ebp - 0x4a1c], xmm2
movss dword [ebp - 0x4a18], xmm1
movss dword [ebp - 0x4a14], xmm0
call fcn.10002550
mov eax, dword [0x1006c354]
mov ecx, dword fs:[0x2c]
movss dword [ebp - 0x49a8], xmm0
mov eax, dword [eax + 0x74]
mov dword [ebp - 0x18a4], eax
mov eax, dword [0x1006ad68]
mov ecx, dword [ecx + eax*4]
mov eax, dword [0x1006adc0]
cmp eax, dword [ecx + 4]
jle 0x1001bc24
push 0x1006adc0
call fcn.10055f50
add esp, 4
cmp dword [0x1006adc0], 0xffffffff
jne 0x1001bc1c
push str.m_iClass
push str.CTFPlayer
mov byte [ebp - 4], 6
call fcn.10051f50
push 0x1006adc0
mov dword [0x1006adb8], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
movss xmm0, dword [ebp - 0x49a8]
mov eax, dword [0x1006adb8]
mov ecx, dword [ebp - 0x18a4]
cmp dword [ecx + eax], 8
je 0x1001bd4a
mov eax, dword [0x1006c354]
lea ecx, [ebp - 0x4a74]
push ecx
mov ecx, dword [eax + 0x74]
call fcn.10002ac0
mov ecx, dword [0x1006c354]
mov edi, dword fs:[0x2c]
mov edx, dword [0x1006ad68]
mov dword [ebp - 0x49a0], eax
mov eax, dword [ecx + 0x74]
mov ecx, dword [0x1006ade0]
mov dword [ebp - 0x18a4], eax
mov eax, dword [edi + edx*4]
mov edi, dword [ebp - 0x49b4]
cmp ecx, dword [eax + 4]
jle 0x1001bcc5
push 0x1006ade0
call fcn.10055f50
add esp, 4
cmp dword [0x1006ade0], 0xffffffff
jne 0x1001bcc5
push str.m_vecVelocity_0_
push str.CBasePlayer
mov byte [ebp - 4], 7
call fcn.10051f50
push 0x1006ade0
mov dword [0x1006adfc], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
mov eax, dword [0x1006c354]
mov ecx, dword [0x1006adfc]
mov eax, dword [eax + 0x2c]
movss xmm2, dword [eax + 0x1c]
mulss xmm2, dword [0x10062b10]
mov eax, dword [ebp - 0x18a4]
movaps xmm1, xmm2
movaps xmm0, xmm2
mulss xmm1, dword [eax + ecx]
mulss xmm0, dword [eax + ecx + 4]
mulss xmm2, dword [eax + ecx + 8]
lea ecx, [ebp - 0x49f8]
mov eax, dword [ebp - 0x49a0]
addss xmm1, dword [eax]
addss xmm0, dword [eax + 4]
addss xmm2, dword [eax + 8]
subss xmm1, dword [esi]
subss xmm0, dword [esi + 4]
subss xmm2, dword [esi + 8]
movss dword [ebp - 0x49f8], xmm1
movss dword [ebp - 0x49f4], xmm0
movss dword [ebp - 0x49f0], xmm2
call fcn.10002550
movss dword [ebp - 0x49a8], xmm0
movss xmm1, dword [0x10062b78]
comiss xmm1, xmm0
jb 0x1001c305
mov eax, dword [0x1006c354]
push esi
push ecx
lea ecx, [ebp - 0x4a2c]
push ecx
mov ecx, dword [eax + 0x74]
call fcn.10003080
add esp, 4
lea ecx, [ebp - 0x18a0]
mov edx, eax
call fcn.100025a0
mov eax, dword [0x1006c374]
add esp, 4
cmp byte [eax + 0x76], 0
je 0x1001c292
mov edi, dword fs:[0x2c]
mov edx, dword [0x1006ad68]
mov eax, dword [0x1006c354]
mov ecx, dword [edi + edx*4]
mov eax, dword [eax + 0x74]
mov edi, dword [ebp - 0x49b4]
mov dword [ebp - 0x18a4], eax
mov eax, dword [0x1006adc0]
cmp eax, dword [ecx + 4]
jle 0x1001be03
push 0x1006adc0
call fcn.10055f50
add esp, 4
cmp dword [0x1006adc0], 0xffffffff
jne 0x1001be03
push str.m_iClass
push str.CTFPlayer
mov byte [ebp - 4], 8
call fcn.10051f50
push 0x1006adc0
mov dword [0x1006adb8], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
mov eax, dword [0x1006adb8]
mov ecx, dword [ebp - 0x18a4]
cmp dword [ecx + eax], 8
jne 0x1001c292
mov eax, dword [0x1006c354]
lea ecx, [ebp - 0x4a38]
push ecx
mov ecx, dword [eax + 0x74]
call fcn.10002ac0
movss xmm6, dword [esi]
movss xmm7, dword [esi + 4]
mov edx, dword [0x1006ad68]
mov esi, dword fs:[0x2c]
subss xmm6, dword [eax]
subss xmm7, dword [eax + 4]
mov eax, dword [0x1006ae58]
mov ecx, dword [esi + edx*4]
movss dword [ebp - 0x18a8], xmm6
movss dword [ebp - 0x49a0], xmm7
cmp eax, dword [ecx + 4]
jle 0x1001beba
push 0x1006ae58
call fcn.10055f50
add esp, 4
cmp dword [0x1006ae58], 0xffffffff
jne 0x1001beaa
push str.m_angEyeAngles_0_
push str.CTFPlayer
mov byte [ebp - 4], 9
call fcn.10051f50
push 0x1006ae58
mov dword [0x1006ae40], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
movss xmm7, dword [ebp - 0x49a0]
movss xmm6, dword [ebp - 0x18a8]
mov esi, dword [0x1006ae40]
lea ecx, [ebp - 0x1894]
movss dword [ebp - 0x1894], xmm6
movss dword [ebp - 0x1890], xmm7
mov dword [ebp - 0x188c], 0
call fcn.10002550
movss xmm5, dword [0x10062a28]
lea eax, [ebp - 0x49d8]
movss xmm1, dword [0x10062ac4]
addss xmm0, xmm5
mov dword [ebp - 0x18a8], eax
lea eax, [ebp - 0x4a20]
mov dword [ebp - 0x18ac], eax
divss xmm1, xmm0
movss xmm0, dword [ebp - 0x18a0]
mulss xmm6, xmm1
mulss xmm7, xmm1
mulss xmm1, dword [0x10062a18]
movss dword [ebp - 0x1894], xmm6
movss dword [ebp - 0x1890], xmm7
movss dword [ebp - 0x49a0], xmm1
movss dword [ebp - 0x188c], xmm1
movss xmm1, dword [0x10062a64]
mulss xmm0, xmm1
movss dword [ebp - 0x18a4], xmm0
fld dword [ebp - 0x18a4]
fsincos
mov edx, dword [ebp - 0x18a8]
mov eax, dword [ebp - 0x18ac]
fstp dword [edx]
fstp dword [eax]
movss xmm0, dword [ebp - 0x189c]
lea eax, [ebp - 0x49d4]
mulss xmm0, xmm1
mov dword [ebp - 0x18a4], eax
lea eax, [ebp - 0x49dc]
mov dword [ebp - 0x18a8], eax
movss dword [ebp - 0x18ac], xmm0
fld dword [ebp - 0x18ac]
fsincos
mov edx, dword [ebp - 0x18a4]
mov eax, dword [ebp - 0x18a8]
fstp dword [edx]
fstp dword [eax]
movss xmm3, dword [ebp - 0x49d4]
lea ecx, [ebp - 0x49c0]
movss xmm4, dword [ebp - 0x49dc]
mulss xmm3, dword [ebp - 0x49d8]
mov dword [ebp - 0x49b8], 0
mulss xmm4, dword [ebp - 0x49d8]
movss dword [ebp - 0x49c0], xmm3
movss dword [ebp - 0x49bc], xmm4
call fcn.10002550
movss xmm1, dword [0x10062ac4]
addss xmm0, xmm5
mov ecx, dword [ebp - 0x499c]
lea eax, [ebp - 0x49e4]
mov dword [ebp - 0x18a8], eax
lea eax, [ebp - 0x49d0]
mov dword [ebp - 0x1888], eax
divss xmm1, xmm0
movaps xmm0, xmm1
movaps xmm5, xmm1
mulss xmm1, dword [0x10062a18]
mulss xmm0, xmm3
movss dword [ebp - 0x18a4], xmm1
movss dword [ebp - 0x49b8], xmm1
movss xmm1, dword [0x10062a64]
movss dword [ebp - 0x49ec], xmm0
movss dword [ebp - 0x49c0], xmm0
movss xmm0, dword [esi + ecx]
mulss xmm5, xmm4
mulss xmm0, xmm1
movss dword [ebp - 0x49bc], xmm5
movss dword [ebp - 0x18ac], xmm0
fld dword [ebp - 0x18ac]
fsincos
mov edx, dword [ebp - 0x18a8]
mov eax, dword [ebp - 0x1888]
fstp dword [edx]
fstp dword [eax]
movss xmm0, dword [esi + ecx + 4]
lea eax, [ebp - 0x49e0]
mulss xmm0, xmm1
mov dword [ebp - 0x18ac], eax
lea eax, [ebp - 0x49e8]
mov dword [ebp - 0x18a8], eax
movss dword [ebp - 0x1888], xmm0
fld dword [ebp - 0x1888]
fsincos
mov edx, dword [ebp - 0x18ac]
mov eax, dword [ebp - 0x18a8]
fstp dword [edx]
fstp dword [eax]
movss xmm3, dword [ebp - 0x49e0]
movss xmm4, dword [ebp - 0x49e8]
mulss xmm3, dword [ebp - 0x49e4]
mov dword [ebp - 0x49c4], 0
mulss xmm4, dword [ebp - 0x49e4]
movss dword [ebp - 0x49cc], xmm3
movss dword [ebp - 0x49c8], xmm4
lea ecx, [ebp - 0x49cc]
call fcn.10002550
addss xmm0, dword [0x10062a28]
movss xmm2, dword [0x10062ac4]
movaps xmm1, xmm6
divss xmm2, xmm0
movaps xmm0, xmm2
mulss xmm0, xmm3
movss xmm3, dword [ebp - 0x49ec]
mulss xmm1, xmm3
movss dword [ebp - 0x1888], xmm0
movss dword [ebp - 0x49cc], xmm0
movaps xmm0, xmm2
mulss xmm2, dword [0x10062a18]
mulss xmm0, xmm4
movss dword [ebp - 0x49c4], xmm2
movss dword [ebp - 0x18a8], xmm0
movss dword [ebp - 0x49c8], xmm0
movaps xmm0, xmm5
mulss xmm0, xmm7
addss xmm1, xmm0
movss xmm0, dword [ebp - 0x18a4]
mulss xmm0, dword [ebp - 0x49a0]
addss xmm1, xmm0
movss xmm0, dword [0x10062ab8]
comiss xmm0, xmm1
jae 0x1001c217
movss xmm4, dword [ebp - 0x1888]
movss xmm1, dword [ebp - 0x18a8]
movaps xmm0, xmm4
mulss xmm0, xmm6
mulss xmm1, xmm7
addss xmm1, xmm0
movaps xmm0, xmm2
mulss xmm0, dword [ebp - 0x49a0]
addss xmm1, xmm0
movss xmm0, dword [0x10062a54]
comiss xmm0, xmm1
jae 0x1001c217
mulss xmm5, dword [ebp - 0x18a8]
mulss xmm2, dword [ebp - 0x18a4]
movss xmm0, dword [0x10062c2c]
mulss xmm3, xmm4
addss xmm5, xmm3
addss xmm5, xmm2
comiss xmm0, xmm5
jb 0x1001c292
push 0x1860
lea eax, [ebp - 0x62e8]
mov dword [ebp - 0x62f0], 0
push 0
push eax
mov dword [ebp - 0x62ec], 0
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x62e8]
call fcn.10009a90
mov eax, dword [ebp - 0x62ec]
lea ecx, [ebp - 0x4988]
movss xmm0, dword [ebp - 0x62f0]
mov dword [ebp - 0x498c], eax
lea eax, [ebp - 0x62e8]
push eax
mov dword [ebp - 0x4a88], 0
movss dword [ebp - 0x4990], xmm0
call fcn.1000a180
mov eax, dword [ebp - 0x4a88]
mov dword [ebp - 0x3128], eax
jmp 0x1001c305
movss xmm0, dword [ebp - 0x49a8]
lea ecx, [ebp - 0x4988]
mov eax, dword [ebp - 0x499c]
push dword [ebp - 0x49a4]
movss dword [ebp - 0x4990], xmm0
mov dword [ebp - 0x3128], eax
call fcn.1000a180
mov eax, dword [ebp - 0x1880]
lea ecx, [ebp - 0x4990]
mov dword [ebp - 0x498c], 1
cmp eax, dword [ebp - 0x187c]
je 0x1001c2f8
push 0x186c
push ecx
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add dword [ebp - 0x1880], 0x186c
jmp 0x1001c305
push ecx
push eax
lea ecx, [ebp - 0x1884]
call fcn.1001cc80
mov eax, dword [edi]
mov ecx, edi
inc dword [ebp - 0x4994]
mov esi, dword [0x1006c360]
mov eax, dword [eax + 0x24]
call eax
mov ecx, dword [ebp - 0x4994]
lea eax, [eax + eax*4]
cmp ecx, dword [esi + eax*4 + 0x24]
jb 0x1001bb10
jmp 0x1001c4cb
movss xmm0, dword [ebp - 0x4994]
comiss xmm0, dword [0x10062b78]
ja 0x1001c4cb
mov eax, dword [0x1006c374]
cmp byte [eax + 0x77], 0
jne 0x1001c361
mov ecx, esi
call fcn.100464a0
test al, al
je 0x1001c4cb
mov eax, dword [0x1006c354]
mov ecx, dword [ebp - 0x49a8]
mov edi, dword [eax + 0x74]
mov eax, dword [0x1006adc0]
cmp eax, dword [ecx + 4]
jle 0x1001c3c1
push 0x1006adc0
call fcn.10055f50
add esp, 4
cmp dword [0x1006adc0], 0xffffffff
jne 0x1001c3bb
push str.m_iClass
push str.CTFPlayer
mov byte [ebp - 4], 0xa
call fcn.10051f50
push 0x1006adc0
mov dword [0x1006adb8], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
mov ecx, dword [ebp - 0x49a8]
mov eax, dword [0x1006adb8]
cmp dword [edi + eax], 9
jne 0x1001c4cb
mov eax, dword [0x1006c354]
mov edi, dword [eax + 0x20]
mov eax, dword [edi]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x49a4], eax
mov eax, dword [0x1006aeb8]
cmp eax, dword [ecx + 4]
jle 0x1001c42f
push 0x1006aeb8
call fcn.10055f50
add esp, 4
cmp dword [0x1006aeb8], 0xffffffff
jne 0x1001c42f
push str.m_hBuilder
push str.CBaseObject
mov byte [ebp - 4], 0xb
call fcn.10051f50
push 0x1006aeb8
mov dword [0x1006aee4], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
mov eax, dword [0x1006aee4]
mov ecx, edi
push dword [eax + esi]
call dword [ebp - 0x49a4]
mov edi, eax
test edi, edi
je 0x1001c4cb
movss xmm0, dword [ebp - 0x4994]
lea eax, [ebp - 0x1878]
push 0x1860
push 0
push eax
movss dword [ebp - 0x4990], xmm0
mov dword [ebp - 0x3128], esi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x1878]
call fcn.10009a90
lea eax, [ebp - 0x1878]
push eax
lea ecx, [ebp - 0x4988]
call fcn.1000a180
mov eax, dword [0x1006c354]
xor ecx, ecx
cmp edi, dword [eax + 0x74]
mov eax, dword [ebp - 0x1880]
sete cl
inc ecx
mov dword [ebp - 0x498c], ecx
lea ecx, [ebp - 0x4990]
cmp eax, dword [ebp - 0x187c]
jne 0x1001ba95
push ecx
push eax
lea ecx, [ebp - 0x1884]
call fcn.1001cc80
mov ecx, dword [ebp - 0x4998]
mov esi, dword [ebp - 0x49b0]
add esi, 4
mov dword [ebp - 0x49b0], esi
cmp esi, ecx
jne 0x1001b550
mov ecx, dword [ebp - 0x1884]
mov esi, dword [ebp - 0x1880]
mov eax, 0x14f6fddf
push dword [ebp - 0x49d0]
sub esi, ecx
imul esi
sar edx, 9
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1880]
push eax
call fcn.1001ce40
mov esi, dword [ebp - 0x1884]
add esp, 8
cmp esi, dword [ebp - 0x1880]
je 0x1001cb99
push 0x186c
lea eax, [ebp - 0x3120]
push esi
push eax
call sub.VCRUNTIME140.dll_memcpy
mov ecx, dword [ebp - 0x18b8]
add esp, 0xc
test ecx, ecx
je 0x1001cb99
movss xmm0, dword [ebp - 0x18cc]
comiss xmm0, dword [0x10062a18]
jbe 0x1001c586
movq xmm0, qword [ebp - 0x30dc]
lea esi, [ebp - 0x18a0]
mov eax, dword [ebp - 0x30d4]
movq qword [ebp - 0x18a0], xmm0
mov dword [ebp - 0x1898], eax
jmp 0x1001c594
lea eax, [ebp - 0x4a38]
push eax
call fcn.10002ac0
mov esi, eax
mov ecx, dword [0x1006c354]
lea eax, [ebp - 0x4a2c]
push eax
mov ecx, dword [ecx + 0x74]
call fcn.10003080
push esi
mov edx, eax
lea ecx, [ebp - 0x1894]
call fcn.100025a0
add esp, 4
lea ecx, [ebp - 0x1894]
call fcn.100168e0
mov eax, dword [0x1006c354]
mov ecx, dword fs:[0x2c]
mov edi, dword [eax + 0x74]
mov eax, dword [0x1006ad68]
mov esi, dword [ecx + eax*4]
mov eax, dword [0x1006af04]
cmp eax, dword [esi + 4]
jle 0x1001c628
push 0x1006af04
call fcn.10055f50
add esp, 4
cmp dword [0x1006af04], 0xffffffff
jne 0x1001c628
push str.m_fFlags
push str.CBasePlayer
mov byte [ebp - 4], 0xc
call fcn.10051f50
push 0x1006af04
mov dword [0x1006af00], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
mov eax, dword [0x1006af00]
test byte [edi + eax], 1
jne 0x1001c6b3
mov eax, dword [0x1006c354]
mov edi, dword [eax + 0x74]
mov eax, dword [0x1006ad8c]
cmp eax, dword [esi + 4]
jle 0x1001c68b
push 0x1006ad8c
call fcn.10055f50
add esp, 4
cmp dword [0x1006ad8c], 0xffffffff
jne 0x1001c68b
push str.m_vecOrigin
push str.CBaseEntity
mov byte [ebp - 4], 0xd
call fcn.10051f50
push 0x1006ad8c
mov dword [0x1006adb4], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
mov eax, dword [0x1006adb4]
mov edx, dword [ebp - 0x49ac]
movss xmm0, dword [edi + eax + 8]
subss xmm0, dword [ebp - 0x3110]
comiss xmm0, dword [0x10062b64]
jbe 0x1001c6b9
or dword [edx + 0x24], 4
jmp 0x1001c6b9
mov edx, dword [ebp - 0x49ac]
or dword [edx + 0x24], 1
movss xmm0, dword [ebp - 0x1890]
movss xmm1, dword [ebp - 0x1894]
movss dword [edx + 0x10], xmm0
movss xmm0, dword [ebp - 0x188c]
movss dword [edx + 0xc], xmm1
movss dword [edx + 0x14], xmm0
mov ecx, dword [0x1006c354]
push edx
movss dword [ecx + 0x2bc], xmm1
mov eax, dword [edx + 0x10]
mov dword [ecx + 0x2c0], eax
mov eax, dword [edx + 0x14]
mov dword [ecx + 0x2c4], eax
mov eax, dword [0x1006c354]
mov dword [eax + 0x2c8], 0x94
mov eax, dword [0x1006c354]
mov ecx, dword [eax + 0x78]
call fcn.100486a0
test al, al
je 0x1001cb93
movss xmm0, dword [ebp - 0x18cc]
comiss xmm0, dword [0x10062a18]
jbe 0x1001ca29
mov eax, dword [0x1006ae58]
mov edi, dword [ebp - 0x18b8]
cmp eax, dword [esi + 4]
jle 0x1001c790
push 0x1006ae58
call fcn.10055f50
add esp, 4
cmp dword [0x1006ae58], 0xffffffff
jne 0x1001c790
push str.m_angEyeAngles_0_
push str.CTFPlayer
mov byte [ebp - 4], 0xe
call fcn.10051f50
push 0x1006ae58
mov dword [0x1006ae40], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
mov eax, dword [0x1006ae40]
movss xmm0, dword [ebp - 0x310c]
movss dword [eax + edi], xmm0
movss xmm0, dword [ebp - 0x3108]
movss dword [eax + edi + 4], xmm0
movss xmm0, dword [ebp - 0x3104]
movss dword [eax + edi + 8], xmm0
mov eax, dword [0x1006ad88]
mov edi, dword [ebp - 0x18b8]
cmp eax, dword [esi + 4]
jle 0x1001c810
push 0x1006ad88
call fcn.10055f50
add esp, 4
cmp dword [0x1006ad88], 0xffffffff
jne 0x1001c810
push str.m_vecMins
push str.CBaseEntity
mov byte [ebp - 4], 0xf
call fcn.10051f50
push 0x1006ad88
mov dword [0x1006adcc], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
mov eax, dword [0x1006adcc]
movss xmm0, dword [ebp - 0x3100]
movss dword [edi + eax], xmm0
movss xmm0, dword [ebp - 0x30fc]
movss dword [edi + eax + 4], xmm0
movss xmm0, dword [ebp - 0x30f8]
movss dword [edi + eax + 8], xmm0
mov eax, dword [0x1006adf4]
mov edi, dword [ebp - 0x18b8]
cmp eax, dword [esi + 4]
jle 0x1001c890
push 0x1006adf4
call fcn.10055f50
add esp, 4
cmp dword [0x1006adf4], 0xffffffff
jne 0x1001c890
push str.m_vecMaxs
push str.CBaseEntity
mov byte [ebp - 4], 0x10
call fcn.10051f50
push 0x1006adf4
mov dword [0x1006addc], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
mov eax, dword [0x1006addc]
movss xmm0, dword [ebp - 0x30f4]
movss dword [edi + eax], xmm0
movss xmm0, dword [ebp - 0x30f0]
movss dword [edi + eax + 4], xmm0
movss xmm0, dword [ebp - 0x30ec]
movss dword [edi + eax + 8], xmm0
mov eax, dword [0x1006ade0]
mov edi, dword [ebp - 0x18b8]
cmp eax, dword [esi + 4]
jle 0x1001c910
push 0x1006ade0
call fcn.10055f50
add esp, 4
cmp dword [0x1006ade0], 0xffffffff
jne 0x1001c910
push str.m_vecVelocity_0_
push str.CBasePlayer
mov byte [ebp - 4], 0x11
call fcn.10051f50
push 0x1006ade0
mov dword [0x1006adfc], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
mov eax, dword [0x1006adfc]
movss xmm0, dword [ebp - 0x30e8]
movss dword [edi + eax], xmm0
movss xmm0, dword [ebp - 0x30e4]
movss dword [edi + eax + 4], xmm0
movss xmm0, dword [ebp - 0x30e0]
movss dword [edi + eax + 8], xmm0
mov eax, dword [0x1006ae5c]
mov edi, dword [ebp - 0x18b8]
cmp eax, dword [esi + 4]
jle 0x1001c990
push 0x1006ae5c
call fcn.10055f50
add esp, 4
cmp dword [0x1006ae5c], 0xffffffff
jne 0x1001c990
push str.m_flCycle
push str.CBaseAnimating
mov byte [ebp - 4], 0x12
call fcn.10051f50
push 0x1006ae5c
mov dword [0x1006ae24], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
mov eax, dword [0x1006ae24]
movss xmm0, dword [ebp - 0x18c8]
movss dword [edi + eax], xmm0
mov eax, dword [0x1006c354]
mov ecx, dword [eax + 0x14]
mov eax, dword [ecx]
mov eax, dword [eax + 0x120]
call eax
push 1
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x24]
mov dword [ebp - 0x49a4], ecx
mov ecx, eax
call dword [ebp - 0x49a4]
push ecx
fstp dword [ebp - 0x49a4]
movss xmm0, dword [ebp - 0x49a4]
lea eax, [ebp - 0x4994]
movss dword [esp], xmm0
push eax
lea eax, [ebp - 0x499c]
mov dword [ebp - 0x4994], 0xffffffff
push eax
lea eax, [ebp - 0x30d0]
mov dword [ebp - 0x499c], 0xaffffff
push eax
push dword [ebp - 0x18d0]
push dword [ebp - 0x18b8]
call fcn.10038700
call fcn.10008690
addss xmm0, dword [ebp - 0x18cc]
jmp 0x1001cb71
mov ecx, dword [ebp - 0x18b8]
add ecx, 8
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
cmp dword [eax + 0x14], 0xf7
jne 0x1001cb93
push 0x1800
lea eax, [ebp - 0x1818]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov eax, dword [0x1006c354]
lea edx, [ebp - 0x1818]
mov ecx, dword [ebp - 0x18b8]
add esp, 8
add ecx, 4
mov eax, dword [eax + 0x2c]
movss xmm0, dword [eax + 0xc]
mov eax, dword [ecx]
movss dword [esp], xmm0
push 0x100
push 0x80
mov eax, dword [eax + 0x40]
push edx
call eax
mov eax, dword [0x1006c354]
mov ecx, dword [eax + 0x14]
mov eax, dword [ecx]
mov eax, dword [eax + 0x120]
call eax
push 1
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x24]
mov dword [ebp - 0x49a4], ecx
mov ecx, eax
call dword [ebp - 0x49a4]
mov ecx, dword [ebp - 0x18b8]
add ecx, 4
mov dword [ebp - 0x4994], 0xffffffff
mov dword [ebp - 0x499c], 0xaffffff
fstp dword [ebp - 0x49a4]
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
call eax
movss xmm0, dword [ebp - 0x49a4]
push ecx
movss dword [esp], xmm0
lea ecx, [ebp - 0x4994]
push ecx
lea ecx, [ebp - 0x499c]
push ecx
lea ecx, [ebp - 0x1818]
push ecx
push eax
push dword [ebp - 0x18b8]
call fcn.10038700
mov eax, dword [0x1006ae64]
mov edi, dword [ebp - 0x18b8]
cmp eax, dword [esi + 4]
jle 0x1001cb61
push 0x1006ae64
call fcn.10055f50
add esp, 4
cmp dword [0x1006ae64], 0xffffffff
jne 0x1001cb61
push str.m_flSimulationTime
push str.CBaseEntity
mov byte [ebp - 4], 0x13
call fcn.10051f50
push 0x1006ae64
mov dword [0x1006ae38], eax
mov byte [ebp - 4], 0
call fcn.10055eff
add esp, 4
mov esi, dword [0x1006ae38]
call fcn.10008690
addss xmm0, dword [edi + esi]
mov eax, dword [0x1006c354]
mov ecx, dword [ebp - 0x49ac]
mov eax, dword [eax + 0x2c]
divss xmm0, dword [eax + 0x1c]
addss xmm0, dword [0x10062ab8]
cvttss2si eax, xmm0
mov dword [ecx + 8], eax
mov esi, dword [ebp - 0x1884]
test esi, esi
je 0x1001cbe6
mov ecx, dword [ebp - 0x187c]
mov eax, 0x14f6fddf
sub ecx, esi
imul ecx
sar edx, 9
mov eax, edx
shr eax, 0x1f
add eax, edx
imul ecx, eax, 0x186c
mov eax, esi
cmp ecx, 0x1000
jb 0x1001cbdc
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1001cbdc
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push esi
call fcn.10056418
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.10055ec6
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4