Function at 0x10053d70
Capabilities:
Log keystrokes via polling

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 0x10073a91
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x10
push esi
push edi
mov eax, dword [0x1008d00c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
cmp byte [0x10092dc4], 0
je 0x100542bd
mov eax, dword fs:[0x2c]
mov ecx, dword [0x10091480]
mov edi, dword [eax + ecx*4]
mov eax, dword [0x10091558]
mov dword [ebp - 0x1c], edi
cmp eax, dword [edi + 4]
jle 0x10053e1c
push 0x10091558
call fcn.1006d9de
add esp, 4
cmp dword [0x10091558], 0xffffffff
jne 0x10053e1c
push str.deadflag
push str.CBasePlayer
mov dword [ebp - 4], 0
call fcn.1006ca60
push 0x10091558
mov dword [0x10091540], eax
mov dword [ebp - 4], 0xffffffff
call fcn.1006d994
add esp, 4
mov esi, dword [ebx + 8]
mov eax, dword [0x10091540]
cmp byte [eax + esi], 0
jne 0x100542bd
mov ecx, esi
call fcn.10067140
test al, al
jne 0x100542bd
mov ecx, esi
call fcn.10053b10
test al, al
jne 0x100542bd
mov ecx, esi
call fcn.10053a70
test al, al
jne 0x100542bd
mov ecx, esi
call fcn.100537b0
cmp dword [eax], 8
je 0x100542bd
mov ecx, esi
call fcn.100537b0
cmp dword [eax], 9
je 0x100542bd
mov ecx, esi
call fcn.100537b0
cmp dword [eax], 0xa
je 0x100542bd
mov eax, dword [0x10091548]
cmp eax, dword [edi + 4]
jle 0x10053edd
push 0x10091548
call fcn.1006d9de
add esp, 4
cmp dword [0x10091548], 0xffffffff
jne 0x10053edd
push str.m_vecVelocity_0_
push str.CBasePlayer
mov dword [ebp - 4], 1
call fcn.1006ca60
push 0x10091548
mov dword [0x1009160c], eax
mov dword [ebp - 4], 0xffffffff
call fcn.1006d994
add esp, 4
mov eax, dword [0x1009160c]
mov ecx, esi
movss xmm0, dword [eax + esi]
andps xmm0, xmmword [0x100841c0]
movss dword [ebp - 0x14], xmm0
call fcn.100538f0
movss xmm0, dword [eax]
comiss xmm0, dword [ebp - 0x14]
jbe 0x1005416e
mov eax, dword [0x10091548]
cmp eax, dword [edi + 4]
jle 0x10053f5a
push 0x10091548
call fcn.1006d9de
add esp, 4
cmp dword [0x10091548], 0xffffffff
jne 0x10053f5a
push str.m_vecVelocity_0_
push str.CBasePlayer
mov dword [ebp - 4], 2
call fcn.1006ca60
push 0x10091548
mov dword [0x1009160c], eax
mov dword [ebp - 4], 0xffffffff
call fcn.1006d994
add esp, 4
mov eax, dword [0x1009160c]
mov ecx, esi
movss xmm0, dword [eax + esi + 4]
andps xmm0, xmmword [0x100841c0]
movss dword [ebp - 0x14], xmm0
call fcn.100538f0
movss xmm0, dword [eax]
comiss xmm0, dword [ebp - 0x14]
jbe 0x1005416e
mov ecx, dword [0x10091548]
cmp ecx, dword [edi + 4]
jle 0x10053fe1
push 0x10091548
call fcn.1006d9de
mov ecx, dword [0x10091548]
add esp, 4
cmp ecx, 0xffffffff
jne 0x10053fe1
push str.m_vecVelocity_0_
push str.CBasePlayer
mov dword [ebp - 4], 3
call fcn.1006ca60
push 0x10091548
mov dword [0x1009160c], eax
mov dword [ebp - 4], 0xffffffff
call fcn.1006d994
mov ecx, dword [0x10091548]
add esp, 4
mov eax, dword [0x1009160c]
movss xmm1, dword [0x100841c0]
movss xmm0, dword [eax + esi]
andps xmm0, xmm1
movss dword [ebp - 0x14], xmm0
cmp ecx, dword [edi + 4]
jle 0x10054050
push 0x10091548
call fcn.1006d9de
add esp, 4
cmp dword [0x10091548], 0xffffffff
jne 0x10054048
push str.m_vecVelocity_0_
push str.CBasePlayer
mov dword [ebp - 4], 4
call fcn.1006ca60
push 0x10091548
mov dword [0x1009160c], eax
mov dword [ebp - 4], 0xffffffff
call fcn.1006d994
add esp, 4
movss xmm1, dword [0x100841c0]
mov eax, dword [0x1009160c]
mov ecx, esi
movss xmm0, dword [eax + esi + 4]
andps xmm0, xmm1
movss dword [ebp - 0x18], xmm0
call fcn.100538f0
movss xmm1, dword [ebp - 0x14]
addss xmm1, dword [ebp - 0x18]
movss xmm0, dword [eax]
mulss xmm0, dword [0x10083ed8]
comiss xmm0, xmm1
jbe 0x1005416e
mov ecx, esi
call fcn.10005e70
test byte [eax], 1
je 0x1005416e
cmp byte [0x10092dc5], 0
je 0x1005416e
mov esi, dword [ebx + 0x10]
push 0x20
and dword [esi + 0x24], 0xfffffffd
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x100542bd
cmp dword [0x1009161c], 0
push 0
jne 0x100540ec
push 0x1007bebc
push 2
push 0x1007bdec
push 0x1007bdf8
call fcn.10007790
add esp, 0x14
mov dword [0x1009161c], eax
jmp 0x100542bd
push 0x1007be04
push 0x1007bdf8
call fcn.10007790
add esp, 0xc
cmp eax, dword [0x1009161c]
jne 0x100542bd
mov ecx, dword [0x100915e4]
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test al, al
jne 0x100542bd
mov ecx, dword [0x100915fc]
mov eax, dword [ecx]
mov eax, dword [eax + 0xd4]
call eax
test al, al
jne 0x100542bd
mov eax, dword [esi + 0x24]
cmp eax, 8
je 0x100542bd
cmp eax, 0x10
je 0x100542bd
cmp eax, 0x80
je 0x100542bd
cmp eax, 0x100
je 0x100542bd
mov dword [esi + 0x18], 0x43e10000
jmp 0x100542bd
mov edi, dword [ebx + 0x10]
test byte [edi + 0x24], 2
je 0x100541e3
cmp byte [0x10092a1d], 0
jne 0x1005419a
mov ecx, esi
call fcn.10053990
test al, al
jne 0x10054191
and dword [edi + 0x24], 0xfffffffd
jmp 0x100541a1
cmp byte [0x10092a1d], 0
je 0x100541a1
mov byte [0x10092a1d], 0
cmp byte [0x10092dc6], 0
je 0x100541fb
mov ecx, dword [ebx + 0xc]
test ecx, ecx
je 0x100541fb
call fcn.10007810
cmp dword [eax], 0x1a8
jne 0x100541fb
mov ecx, esi
call fcn.10005e70
mov ecx, dword [edi + 0x24]
test byte [eax], 1
je 0x100541d8
or ecx, 0x800
mov dword [edi + 0x24], ecx
jmp 0x100541fb
and ecx, 0xfffff7ff
mov dword [edi + 0x24], ecx
jmp 0x100541fb
mov al, byte [0x10092a1d]
mov edx, 1
test al, al
movzx ecx, al
cmove ecx, edx
mov byte [0x10092a1d], cl
cmp byte [0x10092dc5], 0
je 0x100542bd
mov ecx, dword [ebp - 0x1c]
mov eax, dword [0x10093f4c]
cmp eax, dword [ecx + 4]
jle 0x1005425e
push 0x10093f4c
call fcn.1006d9de
add esp, 4
cmp dword [0x10093f4c], 0xffffffff
jne 0x1005425e
xorps xmm0, xmm0
lea ecx, [ebp - 0x20]
movlpd qword [0x10093f50], xmm0
call fcn.1003f5c0
push 0x10093f4c
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [0x10093f50], ecx
mov dword [0x10093f54], eax
call fcn.1006d994
add esp, 4
mov ecx, esi
call fcn.10053990
test al, al
jne 0x1005426d
or dword [edi + 0x24], 4
mov ecx, esi
call fcn.10053990
test al, al
jne 0x100542bd
lea ecx, [ebp - 0x20]
call fcn.1003f5c0
mov ecx, dword [ebp - 0x20]
sub ecx, dword [0x10093f50]
mov eax, dword [ebp - 0x1c]
sbb eax, dword [0x10093f54]
mov dword [ebp - 0x1c], eax
js 0x100542bd
jg 0x100542a1
cmp ecx, 0x1312d00
jb 0x100542bd
lea ecx, [ebp - 0x20]
call fcn.1003f5c0
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [0x10093f50], ecx
mov dword [0x10093f54], eax
and dword [edi + 0x24], 0xfffffffb
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 0xc