Function at 0x10014b60
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
cmp dword [0x102c32f0], 0
xorps xmm0, xmm0
movss dword [ebp - 4], xmm0
je 0x10014b9f
movd xmm0, dword [0xe61e58]
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0xe7c3d8]
mulss xmm0, dword [0x101430a0]
subss xmm0, dword [0x10143f9c]
movss dword [ebp - 4], xmm0
cmp dword [0xe609e8], 4
jne 0x10015380
push esi
mov eax, 0x482b70
call eax
mov esi, 0x637c60
cmp byte [eax + 0x849c], 0
jne 0x100150c8
cmp dword [0xe60b4c], 4
push ebx
mov ebx, 0x6d6c20
ja 0x10014c54
movss xmm1, dword [0x1014c25c]
comiss xmm1, dword [0x101441b0]
movsd xmm2, qword [0x10143600]
jb 0x10014c21
movss xmm0, dword [0x10143bec]
comiss xmm0, xmm1
jb 0x10014c21
cvtps2pd xmm0, xmm1
push 0
push 0
push 0x1b
addsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [0x1014c25c], xmm0
call ebx
movsd xmm2, qword [0x10143600]
add esp, 0xc
movss xmm1, dword [0x1014c258]
comiss xmm1, dword [0x101440a4]
jb 0x10014c68
movss xmm0, dword [0x10144124]
comiss xmm0, xmm1
jb 0x10014c68
cvtps2pd xmm0, xmm1
subsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [0x1014c258], xmm0
jmp 0x10014c68
mov dword [0x1014c25c], 0xc3040000
mov dword [0x1014c258], 0x44110000
push edi
push 0
mov edi, 0x402bc0
call edi
mov edx, 0x96a4c0
mov ecx, eax
call edx
cmp byte [eax + 0x30c], 0
je 0x10014ce6
push 1
call edi
mov ecx, eax
mov eax, 0x96a4c0
call eax
cmp byte [eax + 0x30c], 0
je 0x10014ce6
push 2
call edi
mov ecx, eax
mov eax, 0x96a4c0
call eax
cmp byte [eax + 0x30c], 0
je 0x10014ce6
push 3
call edi
mov ecx, eax
mov eax, 0x96a4c0
call eax
cmp byte [eax + 0x30c], 0
je 0x10014ce6
push 4
call edi
mov ecx, eax
mov eax, 0x96a4c0
call eax
cmp byte [eax + 0x30c], 0
je 0x10014ce6
movss xmm1, dword [0x101441b4]
jmp 0x10014d26
movss xmm1, dword [0x1014c254]
comiss xmm1, dword [0x101441b4]
jb 0x10014d2e
movss xmm0, dword [0x10143bf8]
comiss xmm0, xmm1
jb 0x10014d2e
push 0
push 0
push 0x1b
call ebx
movss xmm0, dword [0x1014c254]
add esp, 0xc
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x101435c8]
cvtpd2ps xmm1, xmm0
movss dword [0x1014c254], 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 [0x10143928]
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 [0x1014c25c]
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 [0x1014c258]
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 [0x1014c254]
movss xmm1, dword [ebp - 4]
addss xmm0, dword [0x10143d44]
cvtps2pd xmm1, xmm1
push 0x17
push 0x70
cvttss2si eax, xmm0
addsd xmm1, qword [0x10143978]
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 0x10014f42
push 1
call edi
test ax, ax
jns 0x10014ed8
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 [0x1014c254]
addss xmm0, dword [0x10143d44]
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 [0x1014c258]
addss xmm0, dword [0x10143bb0]
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 0x10015004
mov eax, dword [0xe60b4c]
push 1
mov dword [0xe61730], eax
call edi
test ax, ax
jns 0x10014f9c
push 0
push 0
push 0x19
call ebx
add esp, 0xc
mov eax, 0x4d6a60
call eax
movss xmm0, dword [0x1014c258]
addss xmm0, dword [0x10143bb0]
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 [0x1014c25c]
addss xmm0, dword [0x10143d38]
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 0x100150c6
mov eax, dword [0xe60b4c]
push 1
mov dword [0xe61730], eax
call edi
test ax, ax
jns 0x1001505e
push 0
push 0
push 0x19
call ebx
add esp, 0xc
mov eax, 0x405b10
call eax
movss xmm0, dword [0x1014c25c]
addss xmm0, dword [0x10143d38]
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 [0x10143a60]
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 [0x10142f30]
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 [0x102c32f0], 0
jne 0x10015318
movss xmm0, dword [ebp - 4]
push ecx
mov dword [esp], 0
cvtps2pd xmm0, xmm0
push 1
push 1
sub esp, 0x20
addsd xmm0, qword [0x10143ad0]
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 [0x101438d8]
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