Function at 0x140078a60
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov r14, qword [rbp + 0x50]
lea rcx, [rbp - 0x28]
movsxd rsi, r9d
mov rdi, r8
call fcn.140004fc0
mov edx, dword [0x1401282ec]
lea r8, [rbp - 0x30]
add rdx, qword [0x140129958]
xor r15d, r15d
mov dword [rbp - 0x30], r15d
call fcn.14001d940
test al, al
je 0x140078cc3
mov ebx, dword [rbp - 0x30]
cmp ebx, 0xffffffff
jne 0x140078acb
mov rax, qword [rbp - 0x28]
mov qword [0x140129d48], rax
jmp 0x140078cc3
mov eax, ebx
mov dword [rbp - 0x34], r15d
shr eax, 9
xorps xmm0, xmm0
mov ecx, 8
mov qword [rbp - 0x10], r15
movdqu xmmword [rbp - 0x20], xmm0
lea eax, [rax*8 + 0x10]
mov dword [rbp - 0x38], eax
call fcn.140081eb0
mov rcx, qword [rbp - 0x38]
lea r8, [rbp - 0x20]
mov qword [rbp - 0x20], rax
lea rdx, [rax + 8]
mov qword [rbp - 0x10], rdx
mov qword [rax], rcx
mov qword [rbp - 0x18], rdx
mov rdx, qword [0x140129840]
call fcn.140078880
nop dword [rax + rax]
test rax, rax
je 0x140078cc3
mov ecx, ebx
mov qword [rbp - 0x38], r15
and ecx, 0x1ff
lea r8, [rbp - 0x38]
imul rdx, rcx, 0x78
add rdx, rax
call fcn.140003b50
test al, al
je 0x140078cc3
mov edx, dword [0x1401282bc]
lea r8, [rbp - 0x30]
mov rbx, qword [rbp - 0x38]
add rdx, rbx
mov dword [rbp - 0x30], r15d
call fcn.14001b5f0
test rbx, rbx
je 0x140078b90
mov edx, dword [0x14012830c]
lea r8, [rbp - 0x40]
add rdx, rbx
call fcn.14001b560
mov edx, dword [0x1401282f0]
lea r8, [rbp - 0x38]
add rdx, rbx
call fcn.14001b5f0
mov edx, dword [rbp - 0x30]
movzx ecx, byte [rbp - 0x40]
test edx, edx
jle 0x140078ba3
test cl, cl
jne 0x140078ba3
mov al, 1
jmp 0x140078ba5
xor al, al
cmp byte [0x140128117], r15b
je 0x140078bd2
mov eax, dword [rbp - 0x38]
cmp dword [0x1401299b0], eax
je 0x140078cc3
nop dword [rax]
test edx, edx
jle 0x140078cc3
test cl, cl
jne 0x140078cc3
jmp 0x140078bda
test al, al
je 0x140078cc3
mov rbx, qword [rbp - 0x28]
imul rdx, rsi, 0xf4240
mov rcx, rbx
sub rcx, qword [0x140129d48]
cmp rcx, rdx
je 0x140078bfa
jl 0x140078cc3
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140078cbc
cmp byte [rbp + 0x40], r15b
je 0x140078c26
movd xmm0, dword [rbp + 0x48]
cvtdq2ps xmm0, xmm0
comiss xmm0, dword [rdi]
jb 0x140078cc3
cmp byte [0x14012a230], r15b
je 0x140078c8c
lea r8, [rbp - 0x38]
mov qword [rbp - 0x38], r15
mov rdx, r14
lea rcx, [0x140129888]
call fcn.140003370
mov rcx, qword [0x14012a258]
movss xmm2, dword [rcx + 0xec]
mulss xmm2, dword [0x14011193c]
movss xmm1, dword [rcx + 0xe8]
mulss xmm1, dword [0x14011193c]
subss xmm2, dword [rbp - 0x34]
subss xmm1, dword [rbp - 0x38]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm1, xmm2
comiss xmm1, dword [0x140111a88]
ja 0x140078cc3
xor edx, edx
mov qword [rsp + 0x20], r15
xor r9d, r9d
xor r8d, r8d
lea ecx, [rdx + 2]
call qword [sym.imp.USER32.dll_mouse_event]
xor edx, edx
mov qword [rsp + 0x20], r15
xor r9d, r9d
xor r8d, r8d
lea ecx, [rdx + 4]
call qword [sym.imp.USER32.dll_mouse_event]
mov qword [0x140129d48], rbx
lea r11, [rsp + 0x70]
mov al, 1
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret