Function at 0x1004ebb0
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
movzx eax, word [ebx + 0x7e]
imul eax, eax, 0x74
cmp dword [eax + 0x10501d00], 0
je 0x1004efb9
mov ecx, dword [eax + 0x10501cd4]
mov dword [ebp - 8], 0x37
cmp ecx, 0x5f5e0ff
ja 0x1004ec85
mov edx, dword [eax + 0x10501ce0]
cmp edx, 0x5f5e0ff
ja 0x1004ec85
mov esi, dword [eax + 0x10501cdc]
cmp esi, 0x5f5e0ff
ja 0x1004ec85
mov eax, dword [eax + 0x10501cd8]
cmp eax, 0x5f5e0ff
ja 0x1004ec85
cmp ecx, 0x98967f
ja 0x1004ec7c
cmp edx, 0x98967f
ja 0x1004ec7c
cmp esi, 0x98967f
ja 0x1004ec7c
cmp eax, 0x98967f
ja 0x1004ec7c
cmp ecx, 0xf423f
ja 0x1004ec73
cmp edx, 0xf423f
ja 0x1004ec73
cmp esi, 0xf423f
ja 0x1004ec73
cmp eax, 0xf423f
ja 0x1004ec73
cmp ecx, 0x1869f
ja 0x1004ec73
cmp edx, 0x1869f
ja 0x1004ec73
cmp esi, 0x1869f
ja 0x1004ec73
cmp eax, 0x1869f
jbe 0x1004ec8c
mov dword [ebp - 8], 0x32
jmp 0x1004ec8c
mov dword [ebp - 8], 0x2d
jmp 0x1004ec8c
mov dword [ebp - 8], 0x28
fld qword [0x100e7120]
sub esp, 8
fstp qword [esp]
call fcn.100d7020
mov ecx, dword [ebp + 0xc]
add esp, 8
fstp qword [ebp - 0x14]
cvttsd2si eax, qword [ebp - 0x14]
sub ecx, eax
movd xmm0, ecx
mov ecx, dword [0x879340c]
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [0x100e6fd0]
cvttsd2si esi, xmm0
mov dword [ebp + 0xc], esi
lea eax, [esi + 0xa]
cmp ecx, eax
jl 0x1004efb9
movd xmm0, esi
cvtdq2ps xmm0, xmm0
movd xmm1, ecx
addss xmm0, dword [0x100e74c8]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
jb 0x1004efb9
mov edi, dword [ebp + 0x10]
mov ecx, dword [0x8793410]
lea eax, [edi - 0x29]
cmp ecx, eax
jl 0x1004efb9
lea eax, [edi + 0x45]
cmp ecx, eax
jge 0x1004efb9
push 0x12
call dword [sym.imp.USER32.dll_GetKeyState]
bt ax, 0xf
jae 0x1004efb9
push 1
mov eax, 0x635fd0
call eax
mov dword [esp], 0x3f19999a
sub esp, 0xc
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.OPENGL32.dll_glColor4f]
lea eax, [edi - 0x40]
movd xmm0, eax
mov eax, 0x6378a0
cvtdq2ps xmm0, xmm0
push 0
sub esp, 0x14
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x42a00000
mov dword [esp + 8], 0x42a40000
movss dword [esp + 4], xmm0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
subss xmm0, dword [0x100e6db4]
movss dword [esp], xmm0
call eax
add esp, 0x18
mov eax, 0x636070
call eax
cmp dword [0x102bc28c], 0
jne 0x1004edd8
lea eax, [ebx + 0x38]
push eax
push 0x100e3b78
push 3
push 0x50
lea eax, [edi - 0x3d]
push eax
lea eax, [esi + 1]
push eax
push 0xff19bdff
push 0x10501cc8
call fcn.1004efd0
add esp, 0x20
push 0xc17
mov eax, 0x402320
lea ebx, [edi - 0x28]
mov ecx, 0x8128adc
add esi, 7
call eax
push eax
push 1
push 0x28
push ebx
push esi
push 0xffffffffffffffff
push 0x10501cc8
call fcn.1004efd0
add esp, 0x1c
lea ebx, [edi - 0x1e]
mov ecx, 0x101a8848
push 0xbf
call fcn.1003fea0
push eax
push 1
push 0x28
push ebx
push esi
push 0xffffffffffffffff
push 0x10501cc8
call fcn.1004efd0
add esp, 0x1c
mov ecx, 0x101a8848
add edi, 0xffffffec
push 0xc0
call fcn.1003fea0
push eax
push 1
push 0x28
push edi
push esi
push 0xffffffffffffffff
push 0x10501cc8
call fcn.1004efd0
mov ebx, dword [ebp + 0x10]
add esp, 0x1c
mov ecx, 0x101a8848
add ebx, 0xfffffff6
push 0xc1
call fcn.1003fea0
push eax
push 1
push 0x28
push ebx
push esi
push 0xffffffffffffffff
push 0x10501cc8
call fcn.1004efd0
add esp, 0x1c
mov ecx, 0x101a8848
push 0xc2
call fcn.1003fea0
push eax
push 1
push 0x28
push dword [ebp + 0x10]
push esi
push 0xffffffffffffffff
push 0x10501cc8
call fcn.1004efd0
mov eax, dword [ebp + 8]
add esp, 0x1c
mov esi, dword [ebp - 8]
add esi, dword [ebp + 0xc]
movzx eax, word [eax + 0x7e]
imul eax, eax, 0x74
movzx eax, word [eax + 0x10501cce]
push eax
mov eax, dword [ebp + 0x10]
push 0x100e5094
push 1
push 0x32
add eax, 0xffffffd8
push eax
push esi
push 0xff19bdff
push 0x10501cc8
call fcn.1004efd0
mov eax, dword [ebp + 8]
movzx eax, word [eax + 0x7e]
imul eax, eax, 0x74
push dword [eax + 0x10501cd4]
mov eax, dword [ebp + 0x10]
push 0x100e5094
push 1
push 0x32
add eax, 0xffffffe2
push eax
push esi
push 0xff19bdff
push 0x10501cc8
call fcn.1004efd0
mov eax, dword [ebp + 8]
add esp, 0x40
movzx eax, word [eax + 0x7e]
imul eax, eax, 0x74
push dword [eax + 0x10501ce0]
push 0x100e5094
push 1
push 0x32
push edi
push esi
push 0xff19bdff
push 0x10501cc8
call fcn.1004efd0
mov edi, dword [ebp + 8]
movzx eax, word [edi + 0x7e]
imul eax, eax, 0x74
push dword [eax + 0x10501cdc]
push 0x100e5094
push 1
push 0x32
push ebx
push esi
push 0xff19bdff
push 0x10501cc8
call fcn.1004efd0
movzx eax, word [edi + 0x7e]
add esp, 0x40
imul eax, eax, 0x74
push dword [eax + 0x10501cd8]
push 0x100e5094
push 1
push 0x32
push dword [ebp + 0x10]
push esi
push 0xff19bdff
push 0x10501cc8
call fcn.1004efd0
mov eax, 0x635f50
call eax
add esp, 0x14
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call dword [sym.imp.OPENGL32.dll_glColor3f]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc