Function at 0x10001a14
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
push 0x10011421
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x10]
cmp dword [0x10011425], 0
jne 0x10001a4f
mov eax, dword [ebp + 8]
mov dword [0x10011425], eax
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 5
jg 0x10001ab8
fild dword [ebp - 4]
fstp qword [ebp - 0x10]
fld qword [ebp - 0x10]
fmul qword [0x100112db]
fstp qword [ebp - 0x18]
fld qword [ebp - 0x18]
fadd qword [0x100112e3]
fstp qword [ebp - 0x20]
mov dword [ebp - 0x24], 0
push 0
push dword [ebp - 0x24]
push 0x808000
fild dword [ebp - 4]
fstp dword [ebp - 0x28]
push dword [ebp - 0x28]
push 0x42c80000
fld qword [ebp - 0x20]
fstp dword [ebp - 0x2c]
push dword [ebp - 0x2c]
push 0x42480000
call fcn.10001ee5
pop ebx
pop ecx
jmp 0x10001a56
add esp, 8
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 5
jg 0x10001b24
fild dword [ebp - 4]
fstp qword [ebp - 0x10]
fld qword [ebp - 0x10]
fmul qword [0x100112db]
fstp qword [ebp - 0x18]
fld qword [ebp - 0x18]
fadd qword [0x100112eb]
fstp qword [ebp - 0x20]
mov dword [ebp - 0x24], 0
push 0
push dword [ebp - 0x24]
push 0x8000
fild dword [ebp - 4]
fstp dword [ebp - 0x28]
push dword [ebp - 0x28]
push 0x42c80000
push 0x439b0000
fld qword [ebp - 0x20]
fstp dword [ebp - 0x2c]
push dword [ebp - 0x2c]
call fcn.1000232f
pop ebx
pop ecx
jmp 0x10001ac2
add esp, 8
mov dword [ebp - 0xc], 0
push 0
push dword [ebp - 0xc]
push 0xff
push 0x40000000
push 0x42c80000
push 0x42480000
push 0x43d70000
push 0x42c80000
call fcn.1000240c
mov dword [ebp - 0xc], 0
push 0
push dword [ebp - 0xc]
push 0xff
push 0x3f800000
push 0x42b40000
push 0x43340000
push 0x43960000
push 0x43c80000
call fcn.1000249d
mov dword [ebp - 0xc], 0
push 0
push dword [ebp - 0xc]
push 0xff
push 0x40000000
push 0x42c80000
push 0x43960000
push 0x43af0000
call fcn.10001ee5
mov dword [ebp - 0xc], 0
push 0
push dword [ebp - 0xc]
push 0xff
push 0x40000000
push 0x42c80000
push 0x437a0000
push 0x43c80000
call fcn.1000232f
mov dword [ebp - 0xc], esp
push 0x24
xor eax, eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
nop
nop
cmp dword [ebp - 0xc], esp
je 0x10001c07
push 0x454
push 0x4012e15
push 6
call fcn.100031eb
add esp, 0xc
mov dword [ebp - 0x10], eax
push 0x80000301
push 0
push 1
push 0x80000301
push 0
push dword [ebp - 0x10]
push 2
mov ebx, 0xc4
call fcn.10003a30
add esp, 0x1c
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 1
jne 0x10001c45
inc dword [0x10011429]
push 0x80000601
push 0x40000000
push 0
fild dword [0x10011429]
fstp qword [ebp - 0x10]
push 0x80000601
push dword [ebp - 0xc]
push dword [ebp - 0x10]
push 2
mov ebx, 0x48
call fcn.10003a00
add esp, 0x1c
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
fld qword [ebp - 0x20]
ftst
fnstsw ax
test ah, 1
je 0x10001c8e
fchs
fcomp qword [0x100112d1]
fnstsw ax
test ah, 0x41
je 0x10001e65
push 0x800080
push 0xf
mov eax, 0x100112f3
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
push 0x1e
push 0x32
call fcn.100026d5
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x10001cd4
push ebx
call fcn.100031e5
add esp, 4
push 0x80
push 0xf
mov eax, 0x10011307
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
push 0x46
push 0x32
call fcn.100026d5
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x10001d09
push ebx
call fcn.100031e5
add esp, 4
push 0xff00
push 0
push 0xf
mov eax, 0x10011307
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
push 0x42dc0000
push 0x42480000
call fcn.10002913
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x10001d43
push ebx
call fcn.100031e5
add esp, 4
push 0xffff
push 0
push 0xf
mov eax, 0x10011307
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
push 0x43020000
push 0x42480000
call fcn.10002913
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x10001d7d
push ebx
call fcn.100031e5
add esp, 4
push 0xff0000
push 0
push 0xf
mov eax, 0x10011307
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
push 0x43160000
push 0x42480000
call fcn.10002913
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x10001db7
push ebx
call fcn.100031e5
add esp, 4
push 0xffa8ff
push 0
push 0xf
mov eax, 0x10011307
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
push 0x432a0000
push 0x42480000
call fcn.10002913
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x10001df1
push ebx
call fcn.100031e5
add esp, 4
push 0x800080
push 0
push 0xf
mov eax, 0x10011307
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
push 0x433e0000
push 0x42480000
call fcn.10002913
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x10001e2b
push ebx
call fcn.100031e5
add esp, 4
push 0xffffff
push 0
push 0xf
mov eax, 0x10011307
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
push 0x43520000
push 0x42480000
call fcn.10002913
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x10001e65
push ebx
call fcn.100031e5
add esp, 4
mov dword [ebp - 0xc], 0
push 0
push dword [ebp - 0xc]
mov dword [ebp - 0x10], 0
push 0
push dword [ebp - 0x10]
mov dword [ebp - 0x14], 0
push 0
push dword [ebp - 0x14]
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
mov dword [ebp - 0x1c], 0
push 0
push dword [ebp - 0x1c]
push 1
push dword [ebp + 0x18]
push 1
push dword [ebp + 0x14]
push 1
push dword [ebp + 0x10]
push 1
push dword [ebp + 0xc]
push 1
push dword [ebp + 8]
push dword [0x1001141d]
call fcn.100029f2
mov dword [ebp - 8], eax
push 0x10011421
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0xc]
mov eax, dword [ebp - 8]
jmp 0x10001edf
mov esp, ebp
pop ebp
ret 0x14