Function at 0x10011490
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x820
mov eax, dword [0x1014300c]
xor eax, ebp
mov dword [ebp - 8], eax
push esi
mov esi, dword [ebp + 0xc]
lea eax, [ebp - 0x80c]
push 0x7ff
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea eax, [ebp + 0x14]
push eax
push 0
push dword [ebp + 0x10]
lea eax, [ebp - 0x80c]
push 0x7ff
push eax
call sym.Main.dll__vsprintf_s_l
add esp, 0x14
lea eax, [ebp - 0x80c]
push eax
lea eax, [ebp - 0x81c]
push eax
call fcn.10011db0
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
mov ecx, 0x8000
test cx, ax
je 0x100115ee
movss xmm4, dword [esi + 0x18]
movd xmm2, dword [0x879340c]
movaps xmm0, xmm4
movss xmm1, dword [esi]
movss xmm3, dword [esi + 4]
addss xmm0, xmm1
cvtdq2ps xmm2, xmm2
comiss xmm0, xmm2
jb 0x1001157d
comiss xmm2, xmm1
jb 0x1001157d
movd xmm2, dword [0x8793410]
movss xmm0, dword [0x10546e48]
cvtdq2ps xmm2, xmm2
addss xmm0, xmm3
comiss xmm0, xmm2
jb 0x1001157d
comiss xmm2, xmm3
jb 0x1001157d
mov al, byte [esi + 0x2a]
test al, al
jne 0x10011584
mov byte [esi + 0x2a], 1
mov al, 1
movd xmm0, dword [0x879340c]
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10], xmm0
movd xmm0, dword [0x8793410]
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x14], xmm0
jmp 0x10011580
mov al, byte [esi + 0x2a]
test al, al
je 0x100115f8
xorps xmm2, xmm2
xorps xmm0, xmm0
cvtsi2ss xmm2, dword [0x879340c]
subss xmm2, dword [esi + 0x10]
addss xmm2, xmm1
xorps xmm1, xmm1
movss dword [esi], xmm2
addss xmm2, xmm4
cvtsi2ss xmm1, dword [0x8793410]
subss xmm1, dword [esi + 0x14]
addss xmm1, xmm3
movss dword [esi + 4], xmm1
cvtsi2ss xmm0, dword [0x879340c]
movss dword [esi + 0x10], xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [0x8793410]
movss dword [esi + 0x20], xmm2
movss dword [esi + 0x14], xmm0
movss xmm0, dword [esi + 0x1c]
addss xmm0, xmm1
movss dword [esi + 0x24], xmm0
jmp 0x100115f8
cmp byte [esi + 0x2a], 0
je 0x100115f8
mov byte [esi + 0x2a], 0
movss xmm5, dword [0x1013a320]
mov eax, 0x637c60
movss xmm1, dword [esi + 0x1c]
movaps xmm4, xmm5
divss xmm4, xmm1
push ecx
mov dword [esp], 0
push 1
push 0
sub esp, 0x20
movaps xmm7, xmm5
movss xmm0, dword [0xe7c3d8]
divss xmm7, dword [esi + 0x18]
mulss xmm1, dword [0x10139104]
movaps xmm2, xmm5
divss xmm7, dword [0xe7c3d4]
mulss xmm1, dword [0x10139f58]
movss xmm6, dword [esi + 4]
divss xmm4, xmm0
mulss xmm0, dword [0x10139ce8]
movss dword [0x10546e48], xmm1
addss xmm1, xmm6
divss xmm2, xmm7
subss xmm1, dword [ebp - 0x810]
movss dword [0x10546e50], xmm4
movss dword [0x10546e4c], xmm7
movss xmm3, dword [esi]
subss xmm1, xmm0
movaps xmm0, xmm5
divss xmm0, xmm2
movss dword [0x10546e54], xmm1
movaps xmm1, xmm5
divss xmm1, xmm4
divss xmm7, xmm0
divss xmm5, xmm1
divss xmm4, xmm5
movss dword [esp + 0x1c], xmm4
movss dword [esp + 0x18], xmm7
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
movss dword [esp + 0xc], xmm1
movss dword [esp + 8], xmm2
movss dword [esp + 4], xmm6
movss dword [esp], xmm3
push 0xf1007
call eax
lea eax, [ebp - 0x80c]
push eax
cvttss2si eax, dword [ebp - 0x810]
push 3
push eax
cvttss2si eax, dword [esi + 0x18]
push eax
cvttss2si eax, dword [0x10546e54]
push 0
push 0xffffffffffffffff
push eax
cvttss2si eax, dword [esi]
push eax
push dword [0x102fe644]
push 0x102fe640
call fcn.10042ee0
movd xmm2, dword [0x879340c]
add esp, 0x58
movss xmm1, dword [esi]
movss xmm0, dword [esi + 0x18]
cvtdq2ps xmm2, xmm2
addss xmm0, xmm1
comiss xmm0, xmm2
jb 0x1001177b
comiss xmm2, xmm1
jb 0x1001177b
movd xmm2, dword [0x8793410]
movss xmm1, dword [esi + 4]
movss xmm0, dword [esi + 0x1c]
cvtdq2ps xmm2, xmm2
addss xmm0, xmm1
comiss xmm0, xmm2
jb 0x1001177b
comiss xmm2, xmm1
jb 0x1001177b
mov al, 1
pop esi
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100db7c0
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 8]
xor al, al
xor ecx, ebp
pop esi
call fcn.100db7c0
mov esp, ebp
pop ebp
ret