Function at 0x1400097d0
Capabilities:
Log keystrokes via polling

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xa0
mov qword [rbp - 0x29], 0xfffffffffffffffe
mov rax, qword [0x140042010]
xor rax, rsp
mov qword [rbp + 0x17], rax
movsxd rsi, r9d
mov r14, r8
mov r12, rdx
mov r15, rcx
mov rcx, r8
call fcn.140007c00
mov edi, eax
cmp eax, 0xffffffff
jne 0x1400099c5
mov edx, 4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x140043e98], eax
jle 0x140009880
lea rcx, [0x140043e98]
call fcn.14001777c
cmp dword [0x140043e98], 0xffffffff
jne 0x140009880
call fcn.140014120
test al, al
je 0x14000986d
lea rcx, str.input
call fcn.1400141c0
test al, al
mov byte [0x140043e94], 1
jne 0x140009874
mov byte [0x140043e94], 0
lea rcx, [0x140043e98]
call fcn.14001771c
cmp byte [0x140043e94], 0
je 0x140009a8e
xor ebx, ebx
mov qword [rbp - 0x11], rbx
mov qword [rbp - 9], 0xf
mov byte [rbp - 0x21], bl
lea edx, [rbx + 0x40]
lea rcx, [rbp - 0x21]
call fcn.14000a470
nop
lea r8d, [rbx + 0x22]
lea rdx, str.Discarding_invalid_UTF_8_sequence:
lea rcx, [rbp - 0x21]
call fcn.140004db0
test rsi, rsi
jle 0x140009966
mov edi, ebx
lea r15, str.0123456789abcdefnewLength___1
mov rcx, qword [rbp - 0x11]
mov rdx, qword [rbp - 9]
cmp rcx, rdx
jae 0x1400098fb
lea rax, [rcx + 1]
mov qword [rbp - 0x11], rax
lea rax, [rbp - 0x21]
cmp rdx, 0x10
cmovae rax, qword [rbp - 0x21]
mov word [rax + rcx], 0x20
jmp 0x140009907
mov r9b, 0x20
lea rcx, [rbp - 0x21]
call fcn.140007810
movzx ecx, byte [r14 + rdi]
mov eax, ecx
shr rax, 4
movzx eax, byte [rax + r15]
mov byte [rbp - 0x41], al
and ecx, 0xf
movzx eax, byte [rcx + r15]
mov byte [rbp - 0x40], al
mov byte [rbp - 0x3f], 0
mov qword [rbp - 0x39], rbx
mov qword [rbp - 0x31], 2
movups xmm0, xmmword [rbp - 0x41]
movups xmmword [rbp - 1], xmm0
movsd xmm1, qword [rbp - 0x31]
movsd qword [rbp + 0xf], xmm1
mov r8d, 2
lea rdx, [rbp - 1]
lea rcx, [rbp - 0x21]
call fcn.140004db0
inc rdi
cmp rdi, rsi
jl 0x1400098d1
lea rdx, [rbp - 0x21]
cmp qword [rbp - 9], 0x10
cmovae rdx, qword [rbp - 0x21]
lea rcx, [0x140037894]
call fcn.1400146a0
nop
mov rdx, qword [rbp - 9]
cmp rdx, 0x10
jb 0x140009a8e
inc rdx
mov rcx, qword [rbp - 0x21]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400099bb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140009aac
call fcn.140017530
jmp 0x140009a8e
cmp edi, 0xffff
jbe 0x1400099d5
mov r8d, 0xffffffff
jmp 0x1400099e2
movzx ecx, di
call qword [sym.imp.USER32.dll_VkKeyScanW]
movzx r8d, ax
xor ebx, ebx
movzx esi, bx
movzx ecx, bx
mov r9d, edi
movzx r11d, byte [rbp + 0x7f]
cmp r8w, 0xffff
je 0x140009a52
movzx esi, r8w
mov eax, 0xff
and si, ax
movzx ecx, r8w
shr cx, 4
and cx, 0x10
movzx eax, r8w
mov edx, 0x200
and ax, dx
movzx edx, cx
or dx, 8
test ax, ax
cmove dx, cx
mov eax, 0x400
and r8w, ax
movzx eax, dx
or ax, 1
test r8w, r8w
cmove ax, dx
movzx ecx, ax
test r11b, r11b
je 0x140009a52
test al, 8
je 0x140009a52
mov r9d, ebx
movzx r10d, r11b
add r10w, r10w
movzx eax, cx
or ax, 2
test r11b, r11b
cmove ax, cx
cmove ebx, r9d
mov word [rsp + 0x38], r10w
mov dword [rsp + 0x30], edi
mov word [rsp + 0x28], ax
mov dword [rsp + 0x20], ebx
movzx r8d, si
mov rdx, r12
mov rcx, r15
call fcn.140009ac0
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.1400174d0
add rsp, 0xa0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.14001bb5c
int3