Function at 0x10004a00
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 4]
mov byte [eax + 1], 0
mov ecx, dword [ebp - 4]
movzx edx, byte [ecx]
test edx, edx
jne 0x10004a21
jmp 0x10004f8f
mov eax, dword [ebp - 4]
mov byte [eax + 1], 1
push 0x4000000
mov ecx, 0x648bb0
call ecx
movzx edx, al
test edx, edx
je 0x10004a97
push 0x2000000
mov eax, 0x648bb0
call eax
movzx ecx, al
test ecx, ecx
jne 0x10004a97
push 0x800
mov edx, 0x648bb0
call edx
movzx eax, al
test eax, eax
jne 0x10004a97
push 0x40
mov ecx, 0x648bb0
call ecx
movzx edx, al
test edx, edx
jne 0x10004a97
push 0x8000
mov eax, 0x648bb0
call eax
movzx ecx, al
test ecx, ecx
jne 0x10004a97
push 0x1b
call dword [sym.imp.USER32.dll_GetKeyState]
movsx edx, ax
and edx, 0x8000
je 0x10004ab7
push 0
push 2
push 0
push 0x1b
call dword [sym.imp.USER32.dll_keybd_event]
mov eax, dword [ebp - 4]
mov byte [eax + 1], 0
mov ecx, dword [ebp - 4]
mov byte [ecx], 0
jmp 0x10004f8f
movss xmm0, dword [0x10042450]
movss dword [ebp - 0xc], xmm0
movss xmm0, dword [0x1004244c]
movss dword [ebp - 8], xmm0
push 1
mov edx, 0x60cb90
call edx
movss xmm0, dword [0x10042314]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042314]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042314]
movss dword [esp], xmm0
call dword [sym.imp.OPENGL32.dll_glColor3f]
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push 1
push 1
push ecx
movss xmm0, dword [0x10042314]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042420]
movss dword [esp], xmm0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042430]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x1004233c]
movss dword [esp], xmm0
movss xmm0, dword [ebp - 8]
addss xmm0, dword [0x10042430]
push ecx
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0xc]
movss dword [esp], xmm0
push 0xf0
mov eax, 0x60dcf0
call eax
add esp, 0x30
push 0x100423a0
push 0
push 0
mov ecx, 0x5487e0
call ecx
add esp, 8
movss xmm0, dword [0x10042314]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042314]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042314]
movss dword [esp], xmm0
call dword [sym.imp.OPENGL32.dll_glColor3f]
push 0
push 0
push 0
push 0x100423a4
movss xmm0, dword [ebp - 8]
addss xmm0, dword [0x10042438]
cvttss2si edx, xmm0
push edx
movss xmm0, dword [ebp - 0xc]
addss xmm0, dword [0x1004232c]
cvttss2si eax, xmm0
push eax
mov ecx, 0x548620
call ecx
add esp, 0x18
push 0
push 0
push 0
push str.ITENS_N
movss xmm0, dword [ebp - 8]
addss xmm0, dword [0x1004243c]
cvttss2si edx, xmm0
push edx
movss xmm0, dword [ebp - 0xc]
addss xmm0, dword [0x1004242c]
cvttss2si eax, xmm0
push eax
mov ecx, 0x548620
call ecx
add esp, 0x18
push 0x100423a1
push 0
push 0
mov edx, 0x5487e0
call edx
add esp, 0xc
push 1
push 0x10
push 0x34
movss xmm0, dword [ebp - 8]
addss xmm0, dword [0x10042440]
cvttss2si eax, xmm0
push eax
movss xmm0, dword [ebp - 0xc]
addss xmm0, dword [0x10042424]
cvttss2si ecx, xmm0
push ecx
mov edx, 0x454a00
call edx
add esp, 0x14
test eax, eax
je 0x10004d4f
movzx eax, byte [0x7d17004]
test eax, eax
je 0x10004d4f
push str._clear
mov ecx, 0x59db90
call ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push 1
push 1
push ecx
movss xmm0, dword [0x1004241c]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042418]
movss dword [esp], xmm0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042428]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042434]
movss dword [esp], xmm0
movss xmm0, dword [ebp - 8]
addss xmm0, dword [0x10042440]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0xc]
addss xmm0, dword [0x10042424]
push ecx
movss dword [esp], xmm0
push 0xf1
mov edx, 0x60dcf0
call edx
add esp, 0x30
mov eax, dword [ebp - 4]
mov byte [eax], 0
mov byte [0x7d17004], 0
mov ecx, dword [ebp - 4]
mov byte [ecx + 1], 0
jmp 0x10004ddb
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push 1
push 1
push ecx
movss xmm0, dword [0x1004241c]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042418]
movss dword [esp], xmm0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042428]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042434]
movss dword [esp], xmm0
movss xmm0, dword [ebp - 8]
addss xmm0, dword [0x10042444]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0xc]
addss xmm0, dword [0x10042424]
push ecx
movss dword [esp], xmm0
push 0xf2
mov edx, 0x60dcf0
call edx
add esp, 0x30
push 1
push 0x10
push 0x34
movss xmm0, dword [ebp - 8]
addss xmm0, dword [0x10042440]
cvttss2si eax, xmm0
push eax
movss xmm0, dword [ebp - 0xc]
addss xmm0, dword [0x10042448]
cvttss2si ecx, xmm0
push ecx
mov edx, 0x454a00
call edx
add esp, 0x14
test eax, eax
je 0x10004ecb
movzx eax, byte [0x7d17004]
test eax, eax
je 0x10004ecb
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push 1
push 1
push ecx
movss xmm0, dword [0x1004241c]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042418]
movss dword [esp], xmm0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042428]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042434]
movss dword [esp], xmm0
movss xmm0, dword [ebp - 8]
addss xmm0, dword [0x10042440]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0xc]
addss xmm0, dword [0x10042448]
push ecx
movss dword [esp], xmm0
push 0xf3
mov ecx, 0x60dcf0
call ecx
add esp, 0x30
mov edx, dword [ebp - 4]
mov byte [edx], 0
mov byte [0x7d17004], 0
mov eax, dword [ebp - 4]
mov byte [eax + 1], 0
jmp 0x10004f57
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push 1
push 1
push ecx
movss xmm0, dword [0x1004241c]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042418]
movss dword [esp], xmm0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042428]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042434]
movss dword [esp], xmm0
movss xmm0, dword [ebp - 8]
addss xmm0, dword [0x10042444]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0xc]
addss xmm0, dword [0x10042448]
push ecx
movss dword [esp], xmm0
push 0xf4
mov ecx, 0x60dcf0
call ecx
add esp, 0x30
mov edx, 0x60cb10
call edx
push ecx
movss xmm0, dword [0x10042314]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042314]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10042314]
movss dword [esp], xmm0
call dword [sym.imp.OPENGL32.dll_glColor3f]
nop
mov esp, ebp
pop ebp
ret