Function at 0x1001af50
Capabilities:
Log keystrokes via polling

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1006a63d
mov eax, dword fs:[0]
push eax
push ebx
mov eax, 0x49e8
call fcn.100685f0
mov eax, dword [0x10080040]
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 [0x1014e68c]
mov esi, dword [ebx + 8]
mov dword [ebp - 0x3138], esi
cmp byte [eax], 0
je 0x1001bfdb
cmp byte [eax + 0x30], 0
je 0x1001bfdb
mov eax, dword [0x1014e66c]
mov ecx, dword [eax + 0x74]
test ecx, ecx
je 0x1001bfdb
call fcn.10003270
test al, al
je 0x1001bfdb
mov eax, dword [0x1014e66c]
mov ecx, dword [eax + 0x78]
test ecx, ecx
je 0x1001bfdb
call fcn.10008c60
test al, al
jne 0x1001bfdb
mov ecx, dword [0x1014e66c]
mov ecx, dword [ecx + 0x78]
call fcn.100045f0
test al, al
jne 0x1001bfdb
mov eax, dword [0x1014e66c]
mov ecx, dword [eax + 0x78]
mov eax, dword [ecx]
mov eax, dword [eax + 0x528]
call eax
cmp eax, 2
je 0x1001bfdb
mov eax, dword [0x1014e68c]
mov edi, dword [sym.imp.USER32.dll_GetForegroundWindow]
cmp byte [eax + 0x80], 0
je 0x1001b085
movzx eax, word [eax + 2]
test ax, ax
je 0x1001bfdb
push eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1001bfdb
cmp dword [0x1014d158], 0
jne 0x1001b072
push 0x10070874
push 0
call dword [sym.imp.USER32.dll_FindWindowW]
mov dword [0x1014d158], eax
jmp 0x1001bfdb
call edi
cmp eax, dword [0x1014d158]
jne 0x1001bfdb
mov eax, dword [0x1014e68c]
cmp byte [eax + 0x32], 0
je 0x1001b0a3
mov eax, dword [0x1014e66c]
mov ecx, dword [eax + 0x14]
lea eax, [esi + 0xc]
push eax
mov edx, dword [ecx]
mov eax, dword [edx + 0x50]
call eax
jmp 0x1001bfdb
lea eax, [ebp - 0x20]
mov dword [ebp - 0x18], 0
xorps xmm0, xmm0
push eax
movq qword [ebp - 0x20], xmm0
call fcn.10018860
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x1c]
je 0x1001bfa2
mov eax, dword [0x1014e68c]
movzx eax, word [eax + 2]
test ax, ax
je 0x1001b116
push eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1001b116
cmp dword [0x1014d158], 0
jne 0x1001b105
push 0x10070874
push 0
call dword [sym.imp.USER32.dll_FindWindowW]
mov dword [0x1014d158], eax
jmp 0x1001b116
call edi
mov byte [ebp - 0x3131], 1
cmp eax, dword [0x1014d158]
je 0x1001b11d
mov byte [ebp - 0x3131], 0
lea ecx, [ebp - 0x188c]
mov dword [ebp - 0x18a8], 0
mov dword [ebp - 0x18a4], 0
mov dword [ebp - 0x18a0], 0
mov dword [ebp - 0x189c], 0
mov word [ebp - 0x1898], 0
mov byte [ebp - 0x1896], 0
mov dword [ebp - 0x1894], 0xbf800000
mov dword [ebp - 0x1890], 0
call fcn.10009d00
mov eax, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x20]
mov dword [ebp - 0x3130], eax
cmp edi, eax
je 0x1001b50f
mov ecx, dword [edi]
add ecx, 8
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
cmp dword [eax + 0x14], 0xf7
je 0x1001b371
movups xmm0, xmmword [edi]
push 0x187c
lea eax, [ebp - 0x3128]
push 0
push eax
movups xmmword [ebp - 0x3170], xmm0
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x3128], 0
lea ecx, [ebp - 0x310c]
mov dword [ebp - 0x3124], 0
mov dword [ebp - 0x3120], 0
mov dword [ebp - 0x311c], 0
mov word [ebp - 0x3117], 0
mov dword [ebp - 0x3114], 0xbf800000
mov dword [ebp - 0x3110], 0
call fcn.10009d00
movups xmm0, xmmword [ebp - 0x3170]
lea eax, [ebp - 0x314c]
mov byte [ebp - 0x3118], 0
push eax
movd ecx, xmm0
movd dword [ebp - 0x312c], xmm0
call fcn.10002dc0
mov eax, dword [0x1014e66c]
lea ecx, [ebp - 0x3160]
push ecx
mov ecx, dword [eax + 0x74]
call fcn.10003380
movq xmm0, qword [ebp - 0x314c]
mov edx, dword [ebp - 0x3144]
mov ecx, dword [0x1014e66c]
push 0x4600400b
sub esp, 0xc
mov esi, esp
sub esp, 0xc
mov ecx, dword [ecx + 0x74]
movq qword [esi], xmm0
movq xmm0, qword [eax]
mov eax, dword [eax + 8]
mov dword [esi + 8], edx
mov edx, esp
mov esi, dword [ebp - 0x312c]
movq qword [edx], xmm0
mov dword [edx + 8], eax
mov edx, esi
call fcn.10004460
add esp, 0x1c
test al, al
lea eax, [ebp - 0x3128]
push 0x187c
push eax
lea eax, [ebp - 0x49f0]
push eax
je 0x1001b2ea
movss xmm0, dword [ebp - 0x314c]
movss dword [ebp - 0x3128], xmm0
movss xmm0, dword [ebp - 0x3148]
movss dword [ebp - 0x3124], xmm0
movss xmm0, dword [ebp - 0x3144]
mov dword [ebp - 0x311c], esi
mov byte [ebp - 0x3118], 1
movss dword [ebp - 0x3120], xmm0
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebp - 0x49e4]
add esp, 0xc
movss xmm0, dword [ebp - 0x49f0]
mov dword [ebp - 0x189c], eax
mov al, byte [ebp - 0x49e0]
mov byte [ebp - 0x1898], al
mov al, byte [ebp - 0x49df]
movss dword [ebp - 0x18a8], xmm0
movss xmm0, dword [ebp - 0x49ec]
mov byte [ebp - 0x1897], al
mov al, byte [ebp - 0x49de]
movss dword [ebp - 0x18a4], xmm0
movss xmm0, dword [ebp - 0x49e8]
mov byte [ebp - 0x1896], al
mov eax, dword [ebp - 0x49d8]
movss dword [ebp - 0x18a0], xmm0
movss xmm0, dword [ebp - 0x49dc]
mov dword [ebp - 0x1890], eax
lea eax, [ebp - 0x49d4]
jmp 0x1001b4de
mov eax, dword [0x1014e66c]
mov ecx, dword fs:[0x2c]
mov esi, dword [eax + 0x74]
mov eax, dword [0x1014d018]
mov ecx, dword [ecx + eax*4]
mov eax, dword [0x1014d070]
cmp eax, dword [ecx + 4]
jle 0x1001b3d4
push 0x1014d070
call fcn.1006737a
add esp, 4
cmp dword [0x1014d070], 0xffffffff
jne 0x1001b3d4
push str.m_iClass
push str.CTFPlayer
mov byte [ebp - 4], 1
call fcn.10063340
push 0x1014d070
mov dword [0x1014d068], eax
mov byte [ebp - 4], 0
call fcn.10067329
add esp, 4
mov eax, dword [0x1014d068]
mov eax, dword [esi + eax]
dec eax
cmp eax, 8
ja case.0x1001b3e6.4
jmp dword [eax*4 + 0x1001bffc]
movups xmm0, xmmword [edi]
sub esp, 0x10
mov eax, esp
movups xmmword [eax], xmm0
lea eax, [ebp - 0x49f0]
push eax
call fcn.1001a8d0
jmp 0x1001b481
mov eax, dword [0x1014e66c]
mov ecx, dword [eax + 0x78]
mov eax, dword [ecx]
mov eax, dword [eax + 0x5f4]
call eax
cmp eax, 0xf
je 0x1001b438
mov eax, dword [0x1014e66c]
mov ecx, dword [eax + 0x78]
mov eax, dword [ecx]
mov eax, dword [eax + 0x5f4]
call eax
cmp eax, 0xd
jne 0x1001bfa2
movups xmm0, xmmword [edi]
sub esp, 0x10
mov eax, esp
movups xmmword [eax], xmm0
lea eax, [ebp - 0x49f0]
push eax
call fcn.1001a8d0
jmp 0x1001b481
movups xmm0, xmmword [edi]
sub esp, 0x10
mov eax, esp
movups xmmword [eax], xmm0
lea eax, [ebp - 0x49f0]
push eax
call fcn.10019f50
jmp 0x1001b481
movups xmm0, xmmword [edi]
sub esp, 0x10
mov eax, esp
movups xmmword [eax], xmm0
lea eax, [ebp - 0x49f0]
push eax
call fcn.100196a0
mov edx, eax
mov al, byte [edx + 0x11]
movss xmm0, dword [edx]
mov ecx, dword [edx + 0xc]
movss dword [ebp - 0x18a8], xmm0
movss xmm0, dword [edx + 4]
mov byte [ebp - 0x1897], al
mov al, byte [edx + 0x12]
movss dword [ebp - 0x18a4], xmm0
movss xmm0, dword [edx + 8]
mov byte [ebp - 0x1896], al
mov eax, dword [edx + 0x18]
mov dword [ebp - 0x189c], ecx
mov cl, byte [edx + 0x10]
mov dword [ebp - 0x1890], eax
lea eax, [edx + 0x1c]
movss dword [ebp - 0x18a0], xmm0
movss xmm0, dword [edx + 0x14]
mov byte [ebp - 0x1898], cl
push eax
lea ecx, [ebp - 0x188c]
movss dword [ebp - 0x1894], xmm0
call fcn.1000a3b0
cmp byte [ebp - 0x1898], 0
jne 0x1001b51c
add edi, 0x10
cmp edi, dword [ebp - 0x3130]
jne 0x1001b188
jmp 0x1001bfa2
cmp byte [ebp - 0x1898], 0
je 0x1001bfa2
mov edi, dword [ebp - 0x189c]
test edi, edi
je 0x1001bfa2
cmp dword [0x1014d1d4], edi
je 0x1001b53f
mov dword [0x1014d1d4], edi
mov byte [0x1014d1c8], 0
mov eax, dword [0x1014d018]
mov ecx, dword fs:[0x2c]
movss xmm0, dword [edi + 0x1c0]
movss dword [ebp - 0x312c], xmm0
mov esi, dword [ecx + eax*4]
mov eax, dword [0x1014d114]
cmp eax, dword [esi + 4]
jle 0x1001b5aa
push 0x1014d114
call fcn.1006737a
add esp, 4
cmp dword [0x1014d114], 0xffffffff
jne 0x1001b5aa
push str.m_flSimulationTime
push str.CBaseEntity
mov byte [ebp - 4], 2
call fcn.10063340
push 0x1014d114
mov dword [0x1014d0e8], eax
mov byte [ebp - 4], 0
call fcn.10067329
add esp, 4
mov eax, dword [0x1014d0e8]
lea ecx, [ebp - 0x3150]
mov dword [ebp - 0x3154], 0x16
mov dword [ebp - 0x3150], 0
movss xmm0, dword [eax + edi]
mov eax, dword [0x1014e66c]
subss xmm0, dword [ebp - 0x312c]
mov edi, dword [ebp - 0x189c]
mov eax, dword [eax + 0x2c]
divss xmm0, dword [eax + 0x1c]
addss xmm0, dword [0x10076e18]
cvttss2si edx, xmm0
mov eax, edx
mov dword [ebp - 0x24], edx
shr eax, 0x1f
test al, al
lea eax, [ebp - 0x24]
cmove ecx, eax
cmp edx, 0x16
lea eax, [ebp - 0x3154]
cmovle eax, ecx
lea ecx, [edi + 8]
mov eax, dword [eax]
mov dword [ebp - 0x312c], eax
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
cmp dword [eax + 0x14], 0xf7
jne 0x1001b69c
cmp dword [ebp - 0x312c], 6
jle 0x1001b69c
mov eax, dword [0x1014d090]
cmp eax, dword [esi + 4]
jle 0x1001b681
push 0x1014d090
call fcn.1006737a
add esp, 4
cmp dword [0x1014d090], 0xffffffff
jne 0x1001b681
push str.m_vecVelocity_0_
push str.CBasePlayer
mov byte [ebp - 4], 3
call fcn.10063340
push 0x1014d090
mov dword [0x1014d0ac], eax
mov byte [ebp - 4], 0
call fcn.10067329
add esp, 4
mov ecx, dword [0x1014d0ac]
lea ecx, [ecx + edi]
call fcn.100027b0
comiss xmm0, dword [0x10076f24]
ja 0x1001bfa2
mov ecx, dword [0x1014e66c]
cmp dword [ecx + 0x164], 0x13
jge 0x1001ba79
cmp dword [ecx + 0x15c], 5
jle 0x1001ba79
mov eax, dword [edi + 8]
lea ecx, [edi + 8]
mov eax, dword [eax + 8]
call eax
cmp dword [eax + 0x14], 0xf7
jne 0x1001ba73
mov ecx, dword [0x1014e68c]
mov edi, dword [0x1014d018]
mov eax, dword [0x1014e66c]
mov esi, dword [ecx + 0x38]
mov ecx, dword fs:[0x2c]
mov eax, dword [eax + 0x74]
mov dword [ebp - 0x312c], eax
mov eax, dword [0x1014d070]
mov edx, dword [ecx + edi*4]
mov ecx, dword [0x1014e68c]
cmp eax, dword [edx + 4]
jle 0x1001b753
push 0x1014d070
call fcn.1006737a
add esp, 4
cmp dword [0x1014d070], 0xffffffff
jne 0x1001b74d
push str.m_iClass
push str.CTFPlayer
mov byte [ebp - 4], 4
call fcn.10063340
push 0x1014d070
mov dword [0x1014d068], eax
mov byte [ebp - 4], 0
call fcn.10067329
add esp, 4
mov ecx, dword [0x1014e68c]
mov eax, dword [0x1014d068]
mov edx, dword [ebp - 0x312c]
mov eax, dword [edx + eax]
add eax, 0xfffffffe
cmp eax, 7
ja case.0x1001b769.8
jmp dword [eax*4 + 0x1001c020]
mov esi, dword [ecx + 0x3c]
jmp case.0x1001b769.8
mov esi, dword [ecx + 0x40]
jmp case.0x1001b769.8
mov esi, dword [ecx + 0x44]
jmp case.0x1001b769.8
mov esi, dword [ecx + 0x48]
jmp case.0x1001b769.8
mov esi, dword [ecx + 0x4c]
jmp case.0x1001b769.8
mov esi, dword [ecx + 0x50]
jmp case.0x1001b769.8
mov esi, dword [ecx + 0x54]
movd xmm0, esi
sub esp, 8
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x10076f00]
mulss xmm0, dword [0x10076e94]
movss dword [ebp - 0x312c], xmm0
fld dword [ebp - 0x312c]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
mov eax, dword [0x1014e66c]
lea ecx, [ebp - 0x3160]
add esp, 8
fstp dword [ebp - 0x312c]
push ecx
mov ecx, dword [eax + 0x74]
call fcn.10003380
mov edx, dword [0x1014e66c]
mov edi, dword fs:[0x2c]
mov ecx, dword [0x1014d090]
mov dword [ebp - 0x3140], eax
mov eax, dword [edx + 0x74]
mov dword [ebp - 0x3130], eax
mov eax, dword [0x1014d018]
mov esi, dword [edi + eax*4]
mov edi, dword [ebp - 0x189c]
cmp ecx, dword [esi + 4]
jle 0x1001b85b
push 0x1014d090
call fcn.1006737a
add esp, 4
cmp dword [0x1014d090], 0xffffffff
jne 0x1001b855
push str.m_vecVelocity_0_
push str.CBasePlayer
mov byte [ebp - 4], 5
call fcn.10063340
push 0x1014d090
mov dword [0x1014d0ac], eax
mov byte [ebp - 4], 0
call fcn.10067329
add esp, 4
mov edx, dword [0x1014e66c]
cvttss2si eax, dword [ebp - 0x312c]
mov ecx, dword [0x1014d0ac]
movd xmm2, eax
mov eax, dword [edx + 0x2c]
cvtdq2ps xmm2, xmm2
mulss xmm2, dword [eax + 0x1c]
mov eax, dword [ebp - 0x3130]
xorps xmm2, xmmword [0x10077070]
movaps xmm1, xmm2
movaps xmm0, xmm2
mulss xmm1, dword [eax + ecx]
mulss xmm0, dword [eax + ecx + 4]
mulss xmm2, dword [eax + ecx + 8]
mov eax, dword [ebp - 0x3140]
mov ecx, dword [edx + 0x74]
addss xmm1, dword [eax]
addss xmm0, dword [eax + 4]
addss xmm2, dword [eax + 8]
lea eax, [ebp - 0x3160]
push eax
movss dword [ebp - 0x314c], xmm1
movss dword [ebp - 0x3148], xmm0
movss dword [ebp - 0x3144], xmm2
call fcn.10003380
mov dword [ebp - 0x3130], eax
mov eax, dword [0x1014e66c]
mov ecx, dword [eax + 0x74]
mov dword [ebp - 0x3140], ecx
mov ecx, dword [0x1014d090]
cmp ecx, dword [esi + 4]
jle 0x1001b93d
push 0x1014d090
call fcn.1006737a
add esp, 4
cmp dword [0x1014d090], 0xffffffff
jne 0x1001b938
push str.m_vecVelocity_0_
push str.CBasePlayer
mov byte [ebp - 4], 6
call fcn.10063340
push 0x1014d090
mov dword [0x1014d0ac], eax
mov byte [ebp - 4], 0
call fcn.10067329
add esp, 4
mov eax, dword [0x1014e66c]
cvttss2si edx, dword [ebp - 0x312c]
mov eax, dword [eax + 0x2c]
mov ecx, dword [0x1014d0ac]
mov esi, dword [ebp - 0x18a0]
push 0x4600400b
sub esp, 0xc
movd xmm2, edx
cvtdq2ps xmm2, xmm2
mulss xmm2, dword [eax + 0x1c]
mov eax, dword [ebp - 0x3140]
movaps xmm1, xmm2
movaps xmm0, xmm2
mulss xmm0, dword [eax + ecx + 4]
mulss xmm1, dword [eax + ecx]
mulss xmm2, dword [eax + ecx + 8]
mov eax, dword [ebp - 0x3130]
addss xmm0, dword [eax + 4]
addss xmm1, dword [eax]
addss xmm2, dword [eax + 8]
mov eax, esp
sub esp, 0xc
mov edx, esp
movss dword [ebp - 0x3140], xmm0
movq xmm0, qword [ebp - 0x18a8]
movq qword [eax], xmm0
movq xmm0, qword [ebp - 0x314c]
mov dword [eax + 8], esi
mov eax, dword [ebp - 0x3144]
movq qword [edx], xmm0
mov dword [edx + 8], eax
mov edx, edi
mov eax, dword [0x1014e66c]
movaps xmmword [ebp - 0x3170], xmm1
movss dword [ebp - 0x3158], xmm2
mov ecx, dword [eax + 0x74]
call fcn.10004460
movq xmm0, qword [ebp - 0x18a8]
add esp, 0x1c
movaps xmm1, xmmword [ebp - 0x3170]
mov edx, edi
mov byte [ebp - 0x3139], al
mov eax, dword [ebp - 0x3158]
push 0x4600400b
sub esp, 0xc
mov ecx, esp
sub esp, 0xc
movq qword [ecx], xmm0
movss xmm0, dword [ebp - 0x3140]
mov dword [ecx + 8], esi
mov ecx, esp
unpcklps xmm1, xmm0
movq qword [ecx], xmm1
mov dword [ecx + 8], eax
mov ecx, dword [0x1014e66c]
mov ecx, dword [ecx + 0x74]
call fcn.10004460
add esp, 0x1c
cmp byte [0x1014d1c8], 0
jne 0x1001ba73
mov ecx, dword [0x1014e66c]
cmp byte [ecx + 0x155], 0
jne 0x1001ba79
cmp byte [ecx + 0x156], 0
jne 0x1001ba79
cmp byte [ebp - 0x3139], 0
je 0x1001bfa2
jmp 0x1001ba79
mov ecx, dword [0x1014e66c]
cmp byte [ebp - 0x3131], 0
je 0x1001bb50
mov edi, dword fs:[0x2c]
mov esi, dword [0x1014d018]
mov eax, dword [ecx + 0x74]
mov dword [ebp - 0x3140], eax
mov eax, dword [0x1014d070]
mov edx, dword [edi + esi*4]
mov edi, dword [ebp - 0x189c]
cmp eax, dword [edx + 4]
jle 0x1001baf7
push 0x1014d070
call fcn.1006737a
add esp, 4
cmp dword [0x1014d070], 0xffffffff
jne 0x1001baf1
push str.m_iClass
push str.CTFPlayer
mov byte [ebp - 4], 7
call fcn.10063340
push 0x1014d070
mov dword [0x1014d068], eax
mov byte [ebp - 4], 0
call fcn.10067329
add esp, 4
mov ecx, dword [0x1014e66c]
mov eax, dword [0x1014d068]
mov edx, dword [ebp - 0x3140]
cmp dword [edx + eax], 2
jne 0x1001bb3e
cmp byte [ebp - 0x1897], 0
je 0x1001bb3e
mov ecx, dword [ecx + 0x74]
call fcn.10003130
mov eax, dword [eax]
shr eax, 1
test al, 1
jne 0x1001bb3e
mov eax, dword [0x1014e68c]
cmp byte [eax + 0x58], 0
je 0x1001bb3e
mov eax, dword [ebp - 0x3138]
or dword [eax + 0x24], 0x800
jmp 0x1001bfa2
mov esi, dword [ebp - 0x3138]
or dword [esi + 0x24], 1
mov ecx, dword [0x1014e66c]
jmp 0x1001bb56
mov esi, dword [ebp - 0x3138]
lea eax, [ebp - 0x18a8]
push eax
push ecx
mov ecx, dword [ecx + 0x74]
lea eax, [ebp - 0x3160]
push eax
call fcn.10003380
add esp, 4
lea ecx, [ebp - 0x314c]
mov edx, eax
call fcn.10002800
add esp, 4
lea ecx, [ebp - 0x314c]
call fcn.10018540
test byte [esi + 0x24], 1
je 0x1001bfa2
movss xmm0, dword [ebp - 0x314c]
movss dword [esi + 0xc], xmm0
movss xmm0, dword [ebp - 0x3148]
movss dword [esi + 0x10], xmm0
movss xmm0, dword [ebp - 0x3144]
movss dword [esi + 0x14], xmm0
mov ecx, dword [0x1014e66c]
mov ecx, dword [ecx + 0x78]
call fcn.10056120
test al, al
je 0x1001bfa2
mov ecx, dword [0x1014e66c]
mov eax, dword [esi + 0xc]
mov dword [ecx + 0x2bc], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x2c0], eax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x2c4], eax
lea ecx, [edi + 8]
mov eax, dword [0x1014e66c]
mov dword [eax + 0x2c8], 0xfa
mov eax, dword [edi + 8]
mov eax, dword [eax + 8]
call eax
mov eax, dword [eax + 0x14]
cmp eax, 0x58
je 0x1001bc23
cmp eax, 0x56
je 0x1001bc23
cmp eax, 0x59
je 0x1001bc23
xor al, al
jmp 0x1001bc25
mov al, 1
test al, al
jne 0x1001bf9b
push 0x1860
lea eax, [ebp - 0x188c]
push eax
lea eax, [ebp - 0x3110]
push eax
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebp - 0x18c8]
add esp, 0xc
push ecx
test eax, eax
jne 0x1001bcc5
mov eax, dword [0x1014e66c]
lea ecx, [edi + 4]
mov edx, dword [edi + 4]
mov eax, dword [eax + 0x2c]
movss xmm0, dword [eax + 0xc]
mov eax, dword [edx + 0x40]
movss dword [esp], xmm0
push pe_nt_image_headers32
push 0x80
push 0
call eax
mov dword [ebp - 0x3130], 0xffff00ff
lea ecx, [edi + 4]
mov dword [ebp - 0x312c], 0xaff00ff
mov eax, dword [edi + 4]
mov eax, dword [eax + 0x24]
call eax
push ecx
mov dword [esp], 0x3e4ccccd
lea ecx, [ebp - 0x3130]
push ecx
lea ecx, [ebp - 0x312c]
push ecx
push 0
push eax
push edi
call fcn.10044de0
mov esi, dword [ebp - 0x3138]
jmp 0x1001bf72
mov dword [esp], 0x3e4ccccd
lea ecx, [ebp - 0x3138]
push ecx
lea ecx, [ebp - 0x312c]
mov dword [ebp - 0x3138], 0xffff00ff
push ecx
lea ecx, [ebp - 0x30c8]
mov dword [ebp - 0x312c], 0xaff00ff
push ecx
push eax
push edi
call fcn.10044de0
mov ecx, dword [0x1014d018]
mov edx, dword fs:[0x2c]
mov eax, dword [edx + ecx*4]
mov dword [ebp - 0x3130], eax
mov ecx, eax
mov eax, dword [0x1014d108]
cmp eax, dword [ecx + 4]
jle 0x1001bd66
push 0x1014d108
call fcn.1006737a
add esp, 4
cmp dword [0x1014d108], 0xffffffff
jne 0x1001bd60
push str.m_angEyeAngles_0_
push str.CTFPlayer
mov byte [ebp - 4], 8
call fcn.10063340
push 0x1014d108
mov dword [0x1014d0f0], eax
mov byte [ebp - 4], 0
call fcn.10067329
add esp, 4
mov ecx, dword [ebp - 0x3130]
mov eax, dword [0x1014d0f0]
movss xmm0, dword [ebp - 0x3104]
movss dword [eax + edi], xmm0
movss xmm0, dword [ebp - 0x3100]
movss dword [eax + edi + 4], xmm0
movss xmm0, dword [ebp - 0x30fc]
movss dword [eax + edi + 8], xmm0
mov eax, dword [0x1014d038]
cmp eax, dword [ecx + 4]
jle 0x1001bde6
push 0x1014d038
call fcn.1006737a
add esp, 4
cmp dword [0x1014d038], 0xffffffff
jne 0x1001bde0
push str.m_vecMins
push str.CBaseEntity
mov byte [ebp - 4], 9
call fcn.10063340
push 0x1014d038
mov dword [0x1014d07c], eax
mov byte [ebp - 4], 0
call fcn.10067329
add esp, 4
mov ecx, dword [ebp - 0x3130]
mov eax, dword [0x1014d07c]
movss xmm0, dword [ebp - 0x30f8]
movss dword [eax + edi], xmm0
movss xmm0, dword [ebp - 0x30f4]
movss dword [eax + edi + 4], xmm0
movss xmm0, dword [ebp - 0x30f0]
movss dword [eax + edi + 8], xmm0
mov eax, dword [0x1014d0a4]
cmp eax, dword [ecx + 4]
jle 0x1001be66
push 0x1014d0a4
call fcn.1006737a
add esp, 4
cmp dword [0x1014d0a4], 0xffffffff
jne 0x1001be60
push str.m_vecMaxs
push str.CBaseEntity
mov byte [ebp - 4], 0xa
call fcn.10063340
push 0x1014d0a4
mov dword [0x1014d08c], eax
mov byte [ebp - 4], 0
call fcn.10067329
add esp, 4
mov ecx, dword [ebp - 0x3130]
mov eax, dword [0x1014d08c]
movss xmm0, dword [ebp - 0x30ec]
movss dword [eax + edi], xmm0
movss xmm0, dword [ebp - 0x30e8]
movss dword [eax + edi + 4], xmm0
movss xmm0, dword [ebp - 0x30e4]
movss dword [eax + edi + 8], xmm0
mov eax, dword [0x1014d090]
cmp eax, dword [ecx + 4]
jle 0x1001bee6
push 0x1014d090
call fcn.1006737a
add esp, 4
cmp dword [0x1014d090], 0xffffffff
jne 0x1001bee0
push str.m_vecVelocity_0_
push str.CBasePlayer
mov byte [ebp - 4], 0xb
call fcn.10063340
push 0x1014d090
mov dword [0x1014d0ac], eax
mov byte [ebp - 4], 0
call fcn.10067329
add esp, 4
mov ecx, dword [ebp - 0x3130]
mov eax, dword [0x1014d0ac]
movss xmm0, dword [ebp - 0x30e0]
movss dword [eax + edi], xmm0
movss xmm0, dword [ebp - 0x30dc]
movss dword [eax + edi + 4], xmm0
movss xmm0, dword [ebp - 0x30d8]
movss dword [eax + edi + 8], xmm0
mov eax, dword [0x1014d10c]
cmp eax, dword [ecx + 4]
jle 0x1001bf60
push 0x1014d10c
call fcn.1006737a
add esp, 4
cmp dword [0x1014d10c], 0xffffffff
jne 0x1001bf60
push str.m_flCycle
push str.CBaseAnimating
mov byte [ebp - 4], 0xc
call fcn.10063340
push 0x1014d10c
mov dword [0x1014d0d4], eax
mov byte [ebp - 4], 0
call fcn.10067329
add esp, 4
mov eax, dword [0x1014d0d4]
movss xmm0, dword [ebp - 0x18c0]
movss dword [eax + edi], xmm0
call fcn.10008900
mov eax, dword [0x1014e66c]
addss xmm0, dword [ebp - 0x1894]
mov eax, dword [eax + 0x2c]
divss xmm0, dword [eax + 0x1c]
addss xmm0, dword [0x10076e18]
cvttss2si eax, xmm0
mov dword [esi + 8], eax
mov byte [0x1014d1c8], 1
mov edx, dword [ebp - 0x20]
test edx, edx
je 0x1001bfdb
mov ecx, dword [ebp - 0x18]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffff0
cmp ecx, 0x1000
jb 0x1001bfd1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1001bfd1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.10067842
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.100672f0
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4