Function at 0x1400020c0
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0x100
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
mov rax, qword [0x14004e040]
xor rax, rsp
mov qword [rbp + 0x27], rax
xor ebx, ebx
xorps xmm7, xmm7
cmp byte [0x14004e0c8], bl
je 0x1400021c2
mov rdx, qword [0x140060dc0]
test rdx, rdx
je 0x1400021c2
cmp qword [0x140060db0], rbx
je 0x1400021c2
mov rcx, qword [0x140060d88]
lea rax, [rbp - 0x31]
add rdx, 0x760
mov qword [rsp + 0x20], rax
mov r9d, 4
mov dword [rbp - 0x59], ebx
lea r8, [rbp - 0x59]
mov qword [rbp - 0x31], rbx
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movss xmm0, dword [rbp - 0x59]
lea rax, [rbp - 0x19]
subss xmm0, dword [0x1400474f0]
mov rdx, qword [0x140060dc0]
lea r8, [rbp - 0x41]
mov rcx, qword [0x140060d88]
add rdx, 0x760
mov r9d, 4
mov qword [rbp - 0x19], rbx
mov qword [rsp + 0x20], rax
movss dword [rbp - 0x41], xmm0
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
mov rdx, qword [0x140060db0]
lea rax, [rbp - 0x31]
mov rcx, qword [0x140060d88]
lea r8, [rbp - 0x59]
add rdx, 0x9e0
mov dword [rbp - 0x59], 1
mov r9d, 4
mov qword [rbp - 0x31], rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x14004e0c1], bl
movss xmm6, dword [0x1400474dc]
mov rdx, qword [0x140060da0]
je 0x1400021f3
test rdx, rdx
je 0x1400021f3
mov dword [rbp - 0x41], 0xbf800000
lea rax, [rbp - 0x11]
mov qword [rbp - 0x11], rbx
lea r8, [rbp - 0x41]
jmp 0x140002206
mov dword [rbp - 0x19], 0x3f800000
lea rax, [rbp - 9]
mov qword [rbp - 9], rbx
lea r8, [rbp - 0x19]
mov rcx, qword [0x140060d88]
mov r9d, 4
add rdx, 0xc0
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x14004e0c0], bl
mov rdx, qword [0x140060dc0]
je 0x14000224e
test rdx, rdx
je 0x14000224e
mov dword [rbp - 0x59], 0x7f7fffff
lea rax, [rbp - 0x29]
mov qword [rbp - 0x29], rbx
lea r8, [rbp - 0x59]
jmp 0x14000225d
mov dword [rbp - 0x31], ebx
lea rax, [rbp - 0x39]
mov qword [rbp - 0x39], rbx
lea r8, [rbp - 0x31]
mov rcx, qword [0x140060d88]
mov r9d, 4
add rdx, 0xc0
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x14004e0bf], bl
mov rdx, qword [0x140060d98]
je 0x1400022a2
test rdx, rdx
je 0x1400022a2
mov byte [rbp - 0x51], 1
lea rax, [rbp - 9]
mov qword [rbp - 9], rbx
lea r8, [rbp - 0x51]
jmp 0x1400022b1
mov byte [rbp - 0x49], bl
lea rax, [rbp - 0x11]
mov qword [rbp - 0x11], rbx
lea r8, [rbp - 0x49]
mov rcx, qword [0x140060d88]
mov r9d, 1
add rdx, 0x24fd
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x140060dba], bl
mov rdx, qword [0x140060dc8]
je 0x140002387
test rdx, rdx
je 0x140002387
mov rax, qword gs:[0x58]
mov r8d, 4
mov rcx, qword [rax]
mov eax, dword [r8 + rcx]
cmp dword [0x140060edc], eax
jle 0x14000233f
lea rcx, [0x140060edc]
call fcn.14003e924
cmp dword [0x140060edc], 0xffffffff
jne 0x140002338
lea rcx, [0x140060edc]
mov qword [0x140060ed0], rbx
mov dword [0x140060ed8], ebx
call fcn.14003e8b8
mov rdx, qword [0x140060dc8]
movsd xmm0, qword [0x140060ed0]
lea r8, [rbp + 0x17]
movss xmm1, dword [0x140060ed4]
mov eax, dword [0x140060ed8]
addss xmm1, dword [0x140047530]
shufps xmm0, xmm0, 0xe1
mov dword [rbp + 0x1f], eax
lea rax, [rbp - 0x39]
mov qword [rbp - 0x39], rbx
movss xmm0, xmm1
shufps xmm0, xmm0, 0xe1
movsd qword [0x140060ed0], xmm0
movsd qword [rbp + 0x17], xmm0
jmp 0x1400023ab
movss xmm1, dword [0x1400475ac]
lea rax, [rbp - 0x29]
xorps xmm0, xmm0
movss dword [rbp + 0xf], xmm7
unpcklps xmm0, xmm1
lea r8, [rbp + 7]
movsd qword [rbp + 7], xmm0
mov qword [rbp - 0x29], rbx
mov rcx, qword [0x140060d88]
mov r9d, 0xc
add rdx, 0x170
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x14004e0bd], bl
je 0x1400023f0
cmp qword [0x140060dc8], rbx
je 0x1400023f0
mov dword [rbp - 0x31], 0x3f800000
lea rax, [rbp - 9]
mov qword [rbp - 9], rbx
lea r8, [rbp - 0x31]
jmp 0x1400023ff
mov dword [rbp - 0x19], ebx
lea rax, [rbp - 0x11]
mov qword [rbp - 0x11], rbx
lea r8, [rbp - 0x19]
mov rdx, qword [0x140060d98]
mov r9d, 4
mov rcx, qword [0x140060d88]
add rdx, 0x2178
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x14004e0be], bl
je 0x140002490
cmp qword [0x140060dc8], rbx
je 0x140002490
mov ecx, 0x10
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
mov rdx, qword [0x140060d98]
mov r9d, 4
mov rcx, qword [0x140060d88]
add rdx, 0xc0
test ax, ax
je 0x140002472
mov dword [rbp - 0x41], ebx
lea rax, [rbp - 0x39]
mov qword [rbp - 0x39], rbx
lea r8, [rbp - 0x41]
jmp 0x140002485
mov dword [rbp - 0x59], 0x3f800000
lea rax, [rbp - 0x29]
mov qword [rbp - 0x29], rbx
lea r8, [rbp - 0x59]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x140060db8], bl
mov rdx, qword [0x140060da8]
je 0x1400024ca
test rdx, rdx
je 0x1400024ca
movss xmm1, dword [0x14004e0c4]
lea rax, [rbp + 7]
movaps xmm0, xmm1
movss dword [rbp - 0x71], xmm1
unpcklps xmm0, xmm1
lea r8, [rbp - 0x79]
movsd qword [rbp - 0x79], xmm0
mov qword [rbp + 7], rbx
jmp 0x1400024e6
movaps xmm0, xmm6
movss dword [rbp - 0x61], xmm6
unpcklps xmm0, xmm6
lea rax, [rbp + 0x17]
movsd qword [rbp - 0x69], xmm0
lea r8, [rbp - 0x69]
mov qword [rbp + 0x17], rbx
mov rcx, qword [0x140060d88]
mov r9d, 0xc
add rdx, 0x17c
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x140060db9], bl
mov rdx, qword [0x140060dc8]
je 0x14000252e
test rdx, rdx
je 0x14000252e
movss xmm1, dword [0x14004e0cc]
movaps xmm0, xmm1
movss dword [rbp - 0x21], xmm1
unpcklps xmm0, xmm1
jmp 0x140002539
movaps xmm0, xmm6
movss dword [rbp - 0x21], xmm6
unpcklps xmm0, xmm6
mov rcx, qword [0x140060d88]
lea rax, [rbp - 0x39]
mov r9d, 0xc
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x29]
movsd qword [rbp - 0x29], xmm0
add rdx, 0x17c
mov qword [rbp - 0x39], rbx
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
mov al, 1
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.14003e5e0
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x10]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop rbp
ret