Function at 0x1400873a4
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x40
mov r14, r9
mov esi, r8d
mov rbp, rdx
mov rdi, rcx
mov qword [rsp + 0x30], rcx
xor ebx, ebx
test rcx, rcx
je 0x1400873d2
lock inc dword [rcx + 0x20]
cmp esi, 0x82
je 0x14017e90e
mov eax, 0x113
cmp esi, eax
ja 0x14008747a
je 0x14017eb36
cmp esi, 7
je 0x14017eb03
cmp esi, 8
je 0x14017eaf5
cmp esi, 0xf
je 0x14017eb4a
cmp esi, 0x3d
je 0x14017ea2b
cmp esi, 0x4e
je 0x14017ea05
cmp esi, 0xff
ja 0x14017e92b
mov rax, qword [0x14037a978]
cmp rax, 0xffffffffffffffff
je 0x14017ebce
test rax, rax
je 0x140087459
mov r9, qword [rsp + 0x80]
mov r8, r14
mov edx, esi
mov rcx, rbp
call qword [case.0x14006c37f.0]
mov rbx, rax
lea rcx, [rsp + 0x30]
call fcn.14008c6ec
mov rax, rbx
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
add rsp, 0x40
pop r14
pop rdi
pop rsi
ret
mov eax, esi
sub eax, 0x200
je 0x14017ebb9
sub eax, 1
je 0x14017eba8
sub eax, 1
je 0x14017eb97
sub eax, 2
je 0x14017eb80
sub eax, 1
je 0x14017eb6f
sub eax, 0x9e
je 0x14017eb5b
cmp eax, 0x75
jne 0x14008742a
jmp 0x14017eb4a
mov r8, qword [rsp + 0x88]
lea rdx, [0x140087370]
mov rcx, rbp
call fcn.140045f14
nop
jmp 0x1400873de
cmp esi, 0x102
jbe 0x14017e942
lea eax, [rsi - 0x104]
cmp eax, 2
ja 0x14008742a
cmp esi, 0x101
jne 0x14017e969
cmp r14, 0x20
je 0x14017e956
cmp r14, 0xd
jne 0x14017e9b5
mov edx, 1
mov rcx, rdi
call fcn.1401d5adc
nop
jmp 0x140087459
lea eax, [rsi - 0x100]
test eax, 0xfffffffb
jne 0x14017e9b5
cmp r14, 0x5d
je 0x14017e997
cmp r14, 0x79
jne 0x14017e9b5
lea ecx, [r14 - 0x69]
call qword [sym.imp.USER32.dll_GetKeyState]
nop dword [rax + rax]
test ax, ax
jns 0x14017e9b5
mov edx, 3
mov rcx, rdi
call fcn.1401d8128
mov rdx, rbp
mov rcx, rdi
call fcn.1401d7578
nop
jmp 0x140087459
mov rcx, qword [rdi + 8]
call qword [0x14039e7b0]
nop dword [rax + rax]
mov rcx, rax
mov r9, qword [rsp + 0x80]
mov r8, r14
mov edx, esi
call qword [case.0x14004551b.0]
nop dword [rax + rax]
test rax, rax
je 0x140087459
mov r9, qword [rsp + 0x80]
mov r8, r14
mov edx, esi
mov rcx, rbp
call fcn.140257b74
nop
jmp 0x140087456
mov rax, qword [rsp + 0x80]
cmp dword [rax + 0x10], 0xfffffdf7
jne 0x140087459
mov rdx, rbp
mov rcx, rdi
call fcn.1401d7bec
nop
jmp 0x140087456
cmp dword [rsp + 0x80], 0xfffffffc
jne 0x14008742a
lea rsi, [rdi + 0x140]
mov r8, qword [rsi]
test r8, r8
jne 0x14017ead9
mov qword [rsp + 0x60], rbx
lea rcx, [rsp + 0x60]
call fcn.14000bb34
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
lea r9, [0x140300470]
mov r8d, 0xfffffffc
lea rdx, str.Button
mov rcx, rbp
call qword [0x14039e0e0]
nop dword [rax + rax]
test eax, eax
js 0x14017eacc
lea rdx, [0x14037db18]
mov ecx, 0x48
call fcn.1400a294c
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14017eac0
mov r9d, 1
mov r8, rdi
mov rdx, qword [rsp + 0x60]
mov rcx, rax
call fcn.1401d58b4
mov rbx, rax
mov rdx, rbx
mov rcx, rsi
call fcn.1401d5a3c
nop
lea rcx, [rsp + 0x60]
call fcn.14000bb34
mov r8, qword [rsi]
mov rdx, r14
lea rcx, [0x1402fcad0]
call qword [case.0x1400044b7.0]
nop dword [rax + rax]
nop
jmp 0x140087456
mov rcx, rdi
call fcn.1401d5a70
nop
jmp 0x14008742a
mov rcx, rdi
call fcn.1401d5a70
mov byte [rdi + 0x77], 1
mov rdx, qword [rdi + 0x48]
mov rcx, rdi
call fcn.1401d74d0
xor r8d, r8d
xor edx, edx
mov rcx, qword [rdi + 0x48]
call qword [case.0x140032906.0]
nop dword [rax + rax]
nop
jmp 0x14008742a
mov r8, r14
mov rdx, rbp
mov rcx, rdi
call fcn.1401d7aa0
nop
jmp 0x140087456
mov rdx, rbp
mov rcx, rdi
call fcn.1401d7990
nop
jmp 0x140087456
mov byte [rdi + 0x78], bl
mov rdx, rbp
mov rcx, rdi
call fcn.1401d7430
nop
jmp 0x14008742a
mov rdx, rbp
mov rcx, rdi
call fcn.1401d7578
nop
jmp 0x140087456
mov edx, 3
mov rcx, rdi
call fcn.1401d8128
mov ebx, 1
jmp 0x140087459
mov rdx, rbp
mov rcx, rdi
call fcn.1401d73e8
nop
jmp 0x140087456
mov rdx, rbp
mov rcx, rdi
call fcn.1401d7318
nop
jmp 0x140087456
mov byte [rdi + 0x78], 1
mov rdx, rbp
mov rcx, rdi
call fcn.1401d74d0
nop
jmp 0x14008742a
mov edx, reloc.SHLWAPI.dll_Ordinal_413
lea rcx, [0x14037a978]
call fcn.140064fa0
mov rax, qword [0x14037a978]
jmp 0x14008743b