Function at 0x10003f80
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
mov eax, dword [0x10031018]
xor eax, ebp
mov dword [ebp - 4], eax
push 0x1003302c
call dword [sym.imp.USER32.dll_GetCursorPos]
push 0x1003302c
call dword [sym.imp.USER32.dll_GetActiveWindow]
push eax
call dword [sym.imp.USER32.dll_ScreenToClient]
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
test al, al
jns 0x1000454d
mov ecx, dword [0x10033030]
mov dl, byte [0x10031a91]
movss xmm7, dword [0x1002de88]
push ebx
mov bl, byte [0x10031a90]
cmp bl, 1
jne 0x1000430b
movd xmm2, dword [0x10031a64]
xorps xmm5, xmm5
movd xmm1, dword [0x10031a6c]
movq xmm0, qword [0x1002dda4]
movd xmm3, dword [0x1003302c]
movss xmm6, dword [0x1002de84]
cvtdq2ps xmm2, xmm2
movq qword [ebp - 0x10], xmm0
movaps xmm7, xmm2
addss xmm7, dword [ebp - 0x10]
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm3, xmm3
movaps xmm4, xmm1
comiss xmm3, xmm7
addss xmm4, dword [ebp - 0xc]
jbe 0x100040a2
movaps xmm0, xmm6
addss xmm0, xmm7
subss xmm0, xmm5
comiss xmm0, xmm3
jbe 0x100040a2
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm4
jbe 0x100040a2
addss xmm4, dword [0x1002de94]
subss xmm4, dword [0x1002de90]
comiss xmm4, xmm0
jbe 0x100040a2
movss dword [ebp - 0x1c], xmm5
movaps xmm0, xmm6
movss dword [ebp - 0x2c], xmm5
movaps xmm4, xmm6
movss dword [ebp - 0x28], xmm0
movaps xmm7, xmm6
movss dword [ebp - 0x18], xmm5
movss dword [ebp - 0x24], xmm0
movss dword [ebp - 0x14], xmm5
cmp dl, 1
je 0x100040c9
mov cl, 1
call fcn.10004560
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1000aed4
mov esp, ebp
pop ebp
ret
xorps xmm7, xmm7
movaps xmm4, xmm6
movss dword [ebp - 0x1c], xmm7
movss dword [ebp - 0x2c], xmm7
movss dword [ebp - 0x18], xmm7
movss dword [ebp - 0x14], xmm7
movaps xmm7, xmm4
movss dword [ebp - 0x28], xmm4
movss dword [ebp - 0x24], xmm4
movq xmm0, qword [0x1002dd68]
movq qword [ebp - 0x10], xmm0
movaps xmm0, xmm2
addss xmm0, dword [ebp - 0x10]
movss dword [ebp - 0x20], xmm0
movaps xmm0, xmm1
comiss xmm3, dword [ebp - 0x20]
addss xmm0, dword [ebp - 0xc]
jbe 0x1000413c
addss xmm7, dword [ebp - 0x20]
subss xmm7, dword [ebp - 0x14]
comiss xmm7, xmm3
jbe 0x1000413c
movd xmm7, ecx
cvtdq2ps xmm7, xmm7
comiss xmm7, xmm0
jbe 0x1000413c
addss xmm0, dword [0x1002de9c]
subss xmm0, dword [0x1002de98]
comiss xmm0, xmm7
jbe 0x1000413c
cmp dl, 2
je 0x1000413c
mov cl, 2
call fcn.10004560
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1000aed4
mov esp, ebp
pop ebp
ret
movq xmm0, qword [0x1002de1c]
movaps xmm7, xmm2
movq qword [ebp - 0x10], xmm0
movaps xmm0, xmm1
addss xmm7, dword [ebp - 0x10]
addss xmm0, dword [ebp - 0xc]
comiss xmm3, xmm7
movss dword [ebp - 0x14], xmm7
jbe 0x100041b3
movss xmm7, dword [ebp - 0x24]
addss xmm7, dword [ebp - 0x14]
subss xmm7, dword [ebp - 0x18]
comiss xmm7, xmm3
jbe 0x100041b3
movd xmm7, ecx
cvtdq2ps xmm7, xmm7
comiss xmm7, xmm0
jbe 0x100041b3
addss xmm0, dword [0x1002dea4]
subss xmm0, dword [0x1002dea0]
comiss xmm0, xmm7
jbe 0x100041b3
cmp dl, 3
je 0x100041b3
mov cl, 3
call fcn.10004560
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1000aed4
mov esp, ebp
pop ebp
ret
movq xmm0, qword [0x1002dd80]
movaps xmm7, xmm2
movq qword [ebp - 0x10], xmm0
movaps xmm0, xmm1
addss xmm7, dword [ebp - 0x10]
addss xmm0, dword [ebp - 0xc]
comiss xmm3, xmm7
movss dword [ebp - 0x18], xmm7
jbe 0x1000422a
movss xmm7, dword [ebp - 0x28]
addss xmm7, dword [ebp - 0x18]
subss xmm7, dword [ebp - 0x2c]
comiss xmm7, xmm3
jbe 0x1000422a
movd xmm7, ecx
cvtdq2ps xmm7, xmm7
comiss xmm7, xmm0
jbe 0x1000422a
addss xmm0, dword [0x1002deac]
subss xmm0, dword [0x1002dea8]
comiss xmm0, xmm7
jbe 0x1000422a
cmp dl, 4
je 0x1000422a
mov cl, 4
call fcn.10004560
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1000aed4
mov esp, ebp
pop ebp
ret
movq xmm0, qword [0x1002dcfc]
movaps xmm7, xmm2
movq qword [ebp - 0x10], xmm0
movaps xmm0, xmm1
addss xmm7, dword [ebp - 0x10]
addss xmm0, dword [ebp - 0xc]
comiss xmm3, xmm7
jbe 0x1000429a
addss xmm4, xmm7
movss xmm7, dword [ebp - 0x1c]
subss xmm4, xmm7
comiss xmm4, xmm3
jbe 0x1000429f
movd xmm4, ecx
cvtdq2ps xmm4, xmm4
comiss xmm4, xmm0
jbe 0x1000429f
addss xmm0, dword [0x1002deb4]
subss xmm0, dword [0x1002deb0]
comiss xmm0, xmm4
jbe 0x1000429f
cmp dl, 5
je 0x1000429f
mov cl, 5
call fcn.10004560
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1000aed4
mov esp, ebp
pop ebp
ret
movss xmm7, dword [ebp - 0x1c]
movq xmm0, qword [0x10034a04]
movq qword [ebp - 0x10], xmm0
addss xmm2, dword [ebp - 0x10]
addss xmm1, dword [ebp - 0xc]
comiss xmm3, xmm2
jbe 0x1000454c
addss xmm2, dword [0x1002de7c]
subss xmm2, xmm7
comiss xmm2, xmm3
jbe 0x1000454c
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x1000454c
movss xmm7, dword [0x1002de88]
addss xmm1, xmm7
subss xmm1, dword [0x1002de80]
comiss xmm1, xmm0
jbe 0x1000454c
mov bl, 2
mov byte [0x10031a90], bl
jmp 0x1000431f
cmp bl, 2
jne 0x1000454c
movss xmm6, dword [0x1002de84]
xorps xmm5, xmm5
movd xmm2, dword [0x10031a64]
movq xmm0, qword [0x1002dd2c]
movd xmm1, dword [0x10031a6c]
movd xmm3, dword [0x1003302c]
cvtdq2ps xmm2, xmm2
movq qword [ebp - 0x10], xmm0
movaps xmm4, xmm2
addss xmm4, dword [ebp - 0x10]
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm3, xmm3
movaps xmm0, xmm1
comiss xmm3, xmm4
addss xmm0, dword [ebp - 0xc]
jbe 0x100043ab
addss xmm4, xmm6
subss xmm4, xmm5
comiss xmm4, xmm3
jbe 0x100043ab
movd xmm4, ecx
cvtdq2ps xmm4, xmm4
comiss xmm4, xmm0
jbe 0x100043ab
addss xmm0, dword [0x1002dec0]
subss xmm0, dword [0x1002deb8]
comiss xmm0, xmm4
jbe 0x100043ab
cmp dl, 6
je 0x100043ab
mov cl, 6
call fcn.10004560
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1000aed4
mov esp, ebp
pop ebp
ret
movq xmm0, qword [0x1002ddec]
movaps xmm4, xmm2
movq qword [ebp - 0x10], xmm0
movaps xmm0, xmm1
addss xmm4, dword [ebp - 0x10]
addss xmm0, dword [ebp - 0xc]
comiss xmm3, xmm4
jbe 0x10004416
addss xmm4, xmm6
subss xmm4, xmm5
comiss xmm4, xmm3
jbe 0x10004416
movd xmm4, ecx
cvtdq2ps xmm4, xmm4
comiss xmm4, xmm0
jbe 0x10004416
addss xmm0, dword [0x1002decc]
subss xmm0, dword [0x1002dec4]
comiss xmm0, xmm4
jbe 0x10004416
cmp dl, 7
je 0x10004416
mov cl, 7
call fcn.10004560
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1000aed4
mov esp, ebp
pop ebp
ret
movq xmm0, qword [0x1002dd08]
movaps xmm4, xmm2
movq qword [ebp - 0x10], xmm0
movaps xmm0, xmm1
addss xmm4, dword [ebp - 0x10]
addss xmm0, dword [ebp - 0xc]
comiss xmm3, xmm4
jbe 0x10004481
addss xmm4, xmm6
subss xmm4, xmm5
comiss xmm4, xmm3
jbe 0x10004481
movd xmm4, ecx
cvtdq2ps xmm4, xmm4
comiss xmm4, xmm0
jbe 0x10004481
addss xmm0, dword [0x1002ded4]
subss xmm0, dword [0x1002ded0]
comiss xmm0, xmm4
jbe 0x10004481
cmp dl, 8
je 0x10004481
mov cl, 8
call fcn.10004560
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1000aed4
mov esp, ebp
pop ebp
ret
movq xmm0, qword [0x1002dd38]
movaps xmm4, xmm2
movq qword [ebp - 0x10], xmm0
movaps xmm0, xmm1
addss xmm4, dword [ebp - 0x10]
addss xmm0, dword [ebp - 0xc]
comiss xmm3, xmm4
jbe 0x100044f4
addss xmm4, dword [0x1002de8c]
subss xmm4, dword [0x1002de78]
comiss xmm4, xmm3
jbe 0x100044f4
movd xmm4, ecx
cvtdq2ps xmm4, xmm4
comiss xmm4, xmm0
jbe 0x100044f4
addss xmm0, dword [0x1002dec8]
subss xmm0, dword [0x1002debc]
comiss xmm0, xmm4
jbe 0x100044f4
cmp dl, 9
je 0x100044f4
mov cl, 9
call fcn.10004560
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1000aed4
mov esp, ebp
pop ebp
ret
movq xmm0, qword [0x10034a1c]
movq qword [ebp - 0x10], xmm0
addss xmm2, dword [ebp - 0x10]
addss xmm1, dword [ebp - 0xc]
comiss xmm3, xmm2
jbe 0x1000454c
addss xmm2, dword [0x1002de7c]
subss xmm2, xmm5
comiss xmm2, xmm3
jbe 0x1000454c
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x1000454c
addss xmm1, xmm7
movzx eax, bl
mov ecx, 1
subss xmm1, dword [0x1002de80]
comiss xmm1, xmm0
cmova eax, ecx
mov byte [0x10031a90], al
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1000aed4
mov esp, ebp
pop ebp
ret