Function at 0x140001460
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
push rbp
mov rbp, rsp
sub rsp, 0x40
mov ebx, ecx
mov ecx, 0x10
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x1400016bf
add ebx, 0x46
cmp ebx, 0x7f
ja case.0x1400017bd.82
lea rdx, [0x140000000]
movsxd rax, ebx
movzx eax, byte [rdx + rax + 0x1994]
mov ecx, dword [rdx + rax*4 + 0x1934]
add rcx, rdx
jmp rcx
xorps xmm0, xmm0
mov qword [rbp - 0x10], 4
movups xmmword [rbp - 0x20], xmm0
mov dword [rbp - 0x20], 0x3e61643c
mov byte [rbp - 0x1c], 0
jmp 0x140001915
mov rax, qword [str._BKSPC_]
mov dword [rbp - 0x20], eax
movzx eax, word [0x14000553c]
mov word [rbp - 0x1c], ax
movzx eax, byte [0x14000553e]
mov byte [rbp - 0x1a], al
mov qword [rbp - 0x18], 0
mov qword [rbp - 0x10], 7
mov byte [rbp - 0x19], 0
jmp 0x140001915
xorps xmm0, xmm0
mov qword [rbp - 0x10], 8
movups xmmword [rbp - 0x20], xmm0
movabs rax, 0x3e5245544e453c0a
mov byte [rbp - 0x18], 0
mov qword [rbp - 0x20], rax
jmp 0x140001915
mov eax, dword [str._ESC_]
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov dword [rbp - 0x20], eax
movzx eax, byte [0x140005544]
mov byte [rbp - 0x1c], al
mov qword [rbp - 0x10], 5
mov byte [rbp - 0x1b], 0
jmp 0x140001915
xorps xmm0, xmm0
mov qword [rbp - 0x10], 8
movups xmmword [rbp - 0x20], xmm0
movabs rax, 0x3e4554454c45443c
mov byte [rbp - 0x18], 0
mov qword [rbp - 0x20], rax
jmp 0x140001915
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x29
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x21
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x40
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x23
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x24
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x25
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x5e
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x26
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x2a
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x28
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x7e
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x5f
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x2b
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x3a
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x22
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x3c
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x3e
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x3f
jmp 0x14000190d
lea eax, [rbx - 0x30]
lea rdx, [0x140000000]
cmp eax, 9
ja case.default.0x1400016de
cdqe
mov ecx, dword [rdx + rax*4 + 0x1a14]
add rcx, rdx
jmp rcx
xorps xmm0, xmm0
mov qword [rbp - 0x10], 1
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x30
mov qword [rbp - 8], 0xf
lea rcx, [rbp - 0x20]
call fcn.140001290
xor al, al
mov rbx, qword [rsp + 0x50]
add rsp, 0x40
pop rbp
ret
lea rdx, str.12345678
lea rcx, [rbp - 0x20]
call fcn.140002d90
mov rcx, rax
call fcn.140001290
xor al, al
mov rbx, qword [rsp + 0x50]
add rsp, 0x40
pop rbp
ret
lea rdx, [0x14000554c]
jmp 0x14000171a
lea rdx, [0x140005550]
jmp 0x14000171a
lea rdx, [0x140005554]
jmp 0x14000171a
lea rdx, [0x140005558]
jmp 0x14000171a
lea rdx, [0x14000555c]
jmp 0x14000171a
lea rdx, [0x140005560]
jmp 0x14000171a
lea rdx, [0x140005564]
jmp 0x14000171a
xorps xmm0, xmm0
mov qword [rbp - 0x10], 1
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x39
mov qword [rbp - 8], 0xf
jmp 0x1400016fd
add ebx, 0x60
cmp ebx, 0x8e
ja case.0x1400017bd.82
movsxd rax, ebx
movzx eax, byte [rdx + rax + 0x1a78]
mov ecx, dword [rdx + rax*4 + 0x1a3c]
add rcx, rdx
jmp rcx
mov eax, dword [0x140005568]
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov dword [rbp - 0x20], eax
movzx eax, byte [0x14000556c]
mov byte [rbp - 0x1c], al
mov qword [rbp - 0x10], 5
mov byte [rbp - 0x1b], 0
jmp 0x140001915
movzx eax, word [0x140005578]
movsd xmm0, qword [str._BACKSPACE_]
mov word [rbp - 0x18], ax
movzx eax, byte [0x14000557a]
mov byte [rbp - 0x16], al
mov dword [rbp - 0x14], 0
mov qword [rbp - 0x10], 0xb
movsd qword [rbp - 0x20], xmm0
mov byte [rbp - 0x15], 0
jmp 0x140001915
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x20
jmp 0x14000190d
mov rax, qword [str._SHIFT_]
mov dword [rbp - 0x20], eax
movzx eax, word [0x140005584]
mov word [rbp - 0x1c], ax
movzx eax, byte [0x140005586]
mov byte [rbp - 0x1a], al
mov qword [rbp - 0x18], 0
mov qword [rbp - 0x10], 7
mov byte [rbp - 0x19], 0
jmp 0x140001915
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x2e
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x2c
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x2d
jmp 0x14000190d
xorps xmm0, xmm0
mov qword [rbp - 0x10], 4
movups xmmword [rbp - 0x20], xmm0
mov dword [rbp - 0x20], 0x3e484b3c
mov byte [rbp - 0x1c], 0
jmp 0x140001915
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x3d
jmp 0x14000190d
mov eax, dword [str._DEL_]
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov dword [rbp - 0x20], eax
movzx eax, byte [0x14000558c]
mov byte [rbp - 0x1c], al
mov qword [rbp - 0x10], 5
mov byte [rbp - 0x1b], 0
jmp 0x140001915
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x3b
jmp 0x14000190d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x20], 0x27
mov qword [rbp - 0x10], 1
lea rcx, [rbp - 0x20]
mov qword [rbp - 8], 0xf
call fcn.140001290
mov rbx, qword [rsp + 0x50]
mov al, 1
add rsp, 0x40
pop rbp
ret