Function at 0x10018740
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
cmp dword [0x1032c498], 0
xorps xmm0, xmm0
movss dword [ebp - 4], xmm0
je 0x1001877f
movd xmm0, dword [0xe61e58]
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0xe7c3d8]
mulss xmm0, dword [0x101a4880]
subss xmm0, dword [0x101a5788]
movss dword [ebp - 4], xmm0
cmp dword [0xe609e8], 4
jne 0x10018f60
push esi
mov eax, 0x482b70
call eax
mov esi, 0x637c60
cmp byte [eax + 0x849c], 0
jne 0x10018ca8
cmp dword [0xe60b4c], 4
push ebx
mov ebx, 0x6d6c20
ja 0x10018834
movss xmm1, dword [0x101b3cac]
comiss xmm1, dword [0x101a59a8]
movsd xmm2, qword [0x101a4de0]
jb 0x10018801
movss xmm0, dword [0x101a53cc]
comiss xmm0, xmm1
jb 0x10018801
cvtps2pd xmm0, xmm1
push 0
push 0
push 0x1b
addsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [0x101b3cac], xmm0
call ebx
movsd xmm2, qword [0x101a4de0]
add esp, 0xc
movss xmm1, dword [0x101b3ca8]
comiss xmm1, dword [0x101a5890]
jb 0x10018848
movss xmm0, dword [0x101a5910]
comiss xmm0, xmm1
jb 0x10018848
cvtps2pd xmm0, xmm1
subsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [0x101b3ca8], xmm0
jmp 0x10018848
mov dword [0x101b3cac], 0xc3040000
mov dword [0x101b3ca8], 0x44110000
push edi
push 0
mov edi, 0x402bc0
call edi
mov edx, 0x96a4c0
mov ecx, eax
call edx
cmp byte [eax + 0x30c], 0
je 0x100188c6
push 1
call edi
mov ecx, eax
mov eax, 0x96a4c0
call eax
cmp byte [eax + 0x30c], 0
je 0x100188c6
push 2
call edi
mov ecx, eax
mov eax, 0x96a4c0
call eax
cmp byte [eax + 0x30c], 0
je 0x100188c6
push 3
call edi
mov ecx, eax
mov eax, 0x96a4c0
call eax
cmp byte [eax + 0x30c], 0
je 0x100188c6
push 4
call edi
mov ecx, eax
mov eax, 0x96a4c0
call eax
cmp byte [eax + 0x30c], 0
je 0x100188c6
movss xmm1, dword [0x101a59ac]
jmp 0x10018906
movss xmm1, dword [0x101b3ca4]
comiss xmm1, dword [0x101a59ac]
jb 0x1001890e
movss xmm0, dword [0x101a53d8]
comiss xmm0, xmm1
jb 0x1001890e
push 0
push 0
push 0x1b
call ebx
movss xmm0, dword [0x101b3ca4]
add esp, 0xc
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x101a4da8]
cvtpd2ps xmm1, xmm0
movss dword [0x101b3ca4], xmm1
movss xmm0, dword [ebp - 4]
cvtps2pd xmm0, xmm0
push ecx
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
addsd xmm0, qword [0x101a5108]
mov dword [esp + 0x1c], 0x3f140000
mov dword [esp + 0x18], 0x3f2c0000
mov dword [esp + 0x14], 0
cvtpd2ps xmm0, xmm0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x43140000
mov dword [esp + 8], 0x432c0000
movss dword [esp + 4], xmm1
movss dword [esp], xmm0
push 0x10
call esi
movss xmm0, dword [ebp - 4]
add esp, 0x2c
addss xmm0, dword [0x101b3cac]
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3f740000
mov dword [esp + 0x18], 0x3f330000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x42740000
mov dword [esp + 8], 0x43330000
mov dword [esp + 4], 0x43040000
movss dword [esp], xmm0
push 0x12
call esi
movss xmm0, dword [ebp - 4]
add esp, 0x2c
addss xmm0, dword [0x101b3ca8]
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3f740000
mov dword [esp + 0x18], 0x3f330000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x42740000
mov dword [esp + 8], 0x43330000
mov dword [esp + 4], 0x43040000
movss dword [esp], xmm0
push 0x16
call esi
movss xmm0, dword [0x101b3ca4]
movss xmm1, dword [ebp - 4]
addss xmm0, dword [0x101a5530]
cvtps2pd xmm1, xmm1
push 0x17
push 0x70
cvttss2si eax, xmm0
addsd xmm1, qword [0x101a5158]
push eax
cvttsd2si eax, xmm1
movsd qword [ebp - 0x10], xmm1
push eax
mov eax, 0x790b10
call eax
mov edi, dword [sym.imp.USER32.dll_GetKeyState]
add esp, 0x40
test al, al
je 0x10018b22
push 1
call edi
test ax, ax
jns 0x10018ab8
push 0
push 0
push 0x19
call ebx
push 0
push 0
push 0x1b
call ebx
add esp, 0x18
mov eax, 0x482b70
call eax
lea esi, [eax + 0x8490]
mov eax, 0x482b70
call eax
push esi
mov edx, 0x483b20
mov ecx, eax
call edx
mov esi, 0x637c60
movss xmm0, dword [0x101b3ca4]
addss xmm0, dword [0x101a5530]
push ecx
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3f380000
mov dword [esp + 0x18], 0x3f600000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41b80000
mov dword [esp + 8], 0x42e00000
movss dword [esp + 4], xmm0
movsd xmm0, qword [ebp - 0x10]
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x11
call esi
add esp, 0x30
movss xmm0, dword [0x101b3ca8]
addss xmm0, dword [0x101a5390]
push 0x12
push 0x3c
push 0x92
addss xmm0, dword [ebp - 4]
cvttss2si eax, xmm0
push eax
mov eax, 0x790b10
call eax
add esp, 0x10
test al, al
je 0x10018be4
mov eax, dword [0xe60b4c]
push 1
mov dword [0xe61730], eax
call edi
test ax, ax
jns 0x10018b7c
push 0
push 0
push 0x19
call ebx
add esp, 0xc
mov eax, 0x4d6a60
call eax
movss xmm0, dword [0x101b3ca8]
addss xmm0, dword [0x101a5390]
push ecx
mov dword [esp], 0
push 1
push 1
addss xmm0, dword [ebp - 4]
sub esp, 0x20
mov dword [esp + 0x1c], 0x3f100000
mov dword [esp + 0x18], 0x3f700000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41900000
mov dword [esp + 8], 0x42700000
mov dword [esp + 4], 0x43120000
movss dword [esp], xmm0
push 0x15
call esi
add esp, 0x30
movss xmm0, dword [0x101b3cac]
addss xmm0, dword [0x101a5524]
push 0x12
push 0x3c
push 0x92
addss xmm0, dword [ebp - 4]
cvttss2si eax, xmm0
push eax
mov eax, 0x790b10
call eax
add esp, 0x10
test al, al
je 0x10018ca6
mov eax, dword [0xe60b4c]
push 1
mov dword [0xe61730], eax
call edi
test ax, ax
jns 0x10018c3e
push 0
push 0
push 0x19
call ebx
add esp, 0xc
mov eax, 0x405b10
call eax
movss xmm0, dword [0x101b3cac]
addss xmm0, dword [0x101a5524]
push ecx
mov dword [esp], 0
push 1
push 1
addss xmm0, dword [ebp - 4]
sub esp, 0x20
mov dword [esp + 0x1c], 0x3f100000
mov dword [esp + 0x18], 0x3f700000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41900000
mov dword [esp + 8], 0x42700000
mov dword [esp + 4], 0x43120000
movss dword [esp], xmm0
push 0x13
call esi
add esp, 0x30
pop edi
pop ebx
movss xmm1, dword [ebp - 4]
cvtps2pd xmm0, xmm1
push ecx
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
addsd xmm0, qword [0x101a5240]
mov dword [esp + 0x1c], 0x3f140000
mov dword [esp + 0x18], 0x3f400000
mov dword [esp + 0x14], 0
cvtpd2ps xmm0, xmm0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x42140000
mov dword [esp + 8], 0x43400000
mov dword [esp + 4], 0
movss dword [esp], xmm0
push 0xc
call esi
movss xmm0, dword [ebp - 4]
add esp, 0x2c
cvtps2pd xmm0, xmm0
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
addsd xmm0, qword [0x101a4708]
mov dword [esp + 0x1c], 0x3f140000
mov dword [esp + 0x18], 0xbf400000
cvtpd2ps xmm0, xmm0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0x3f400000
mov dword [esp + 0xc], 0x42140000
mov dword [esp + 8], 0x43400000
mov dword [esp + 4], 0
movss dword [esp], xmm0
push 0xc
movss dword [ebp - 8], xmm0
call esi
add esp, 0x30
cmp dword [0x1032c498], 0
jne 0x10018ef8
movss xmm0, dword [ebp - 4]
push ecx
mov dword [esp], 0
cvtps2pd xmm0, xmm0
push 1
push 1
sub esp, 0x20
addsd xmm0, qword [0x101a52b0]
mov dword [esp + 0x1c], 0x3f800000
mov dword [esp + 0x18], 0x3f540000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
cvtpd2ps xmm1, xmm0
mov dword [esp + 0xc], 0x43800000
mov dword [esp + 8], 0x42d40000
mov dword [esp + 4], 0x40400000
movss dword [esp], xmm1
push 0xd
movss dword [ebp - 0xc], xmm1
call esi
movss xmm0, dword [ebp - 8]
add esp, 0x2c
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3f800000
mov dword [esp + 0x18], 0xbf540000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0x3f540000
mov dword [esp + 0xc], 0x43800000
mov dword [esp + 8], 0x42d40000
mov dword [esp + 4], 0x40400000
movss dword [esp], xmm0
push 0xd
call esi
movss xmm0, dword [ebp - 0xc]
add esp, 0x2c
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3f5e0000
mov dword [esp + 0x18], 0x3f540000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x435e0000
mov dword [esp + 8], 0x42d40000
mov dword [esp + 4], 0x43818000
movss dword [esp], xmm0
push 0xe
call esi
movss xmm0, dword [ebp - 8]
add esp, 0x2c
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3f5e0000
mov dword [esp + 0x18], 0xbf540000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0x3f540000
mov dword [esp + 0xc], 0x435e0000
mov dword [esp + 8], 0x42d40000
mov dword [esp + 4], 0x43818000
movss dword [esp], xmm0
push 0xe
call esi
add esp, 0x30
movss xmm0, dword [ebp - 4]
push ecx
mov dword [esp], 0
cvtps2pd xmm0, xmm0
push 1
push 1
sub esp, 0x20
addsd xmm0, qword [0x101a50b8]
mov dword [esp + 0x1c], 0x3f0c0000
mov dword [esp + 0x18], 0x3f800000
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
cvtpd2ps xmm0, xmm0
mov dword [esp + 0xc], 0x428c0000
mov dword [esp + 8], 0x43800000
mov dword [esp + 4], 0
movss dword [esp], xmm0
push 0xf
call esi
add esp, 0x30
pop esi
mov esp, ebp
pop ebp
ret