Function at 0x140113630
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
mov rbp, rsp
sub rsp, 0x80
mov eax, r8d
mov rsi, rcx
sub eax, 0x87
je 0x14011378a
sub eax, 0x79
je 0x140113780
sub eax, 1
je 0x140113761
cmp eax, 0x109
je 0x14011368c
mov rax, qword [rbp + 0x30]
mov rcx, qword [rcx + 0x20]
mov qword [rsp + 0x20], rax
call qword [sym.imp.USER32.dll_CallWindowProcW]
jmp 0x1401138b0
shr r9, 0x10
test r9w, r9w
jle 0x1401136b1
movsxd rax, dword [rcx + 0x3c]
lea edi, [rax - 1]
test edi, edi
jns 0x1401136a6
mov edi, dword [rcx + 0x38]
dec edi
mov rcx, qword [rcx + 0x18]
xor edx, edx
mov r8, rax
jmp 0x1401136cb
movsxd rcx, dword [rcx + 0x3c]
xor edx, edx
mov eax, dword [rsi + 0x38]
mov r8, rcx
dec eax
lea edi, [rcx + 1]
mov rcx, qword [rsi + 0x18]
cmp edi, eax
cmovg edi, edx
mov dword [rbp - 0x44], edx
lea r9, [rbp - 0x50]
mov edx, 0x102b
mov dword [rbp - 0x40], 3
call qword [sym.imp.USER32.dll_SendMessageW]
movsxd r8, dword [rsi + 0x3c]
mov edx, 0x1015
mov rcx, qword [rsi + 0x18]
mov r9, r8
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, qword [rsi + 0x18]
call qword [sym.imp.USER32.dll_UpdateWindow]
mov rcx, qword [rsi + 0x18]
lea r9, [rbp - 0x50]
movsxd rbx, edi
mov edx, 0x102b
mov r8, rbx
mov dword [rbp - 0x40], 3
mov dword [rbp - 0x44], 3
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, qword [rsi + 0x18]
mov r9, rbx
mov r8, rbx
mov edx, 0x1015
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, qword [rsi + 0x18]
call qword [sym.imp.USER32.dll_UpdateWindow]
mov rcx, qword [rsi + 0x18]
mov edx, 0x1013
movsxd r8, edi
mov r9d, 1
mov dword [rsi + 0x3c], edi
jmp 0x14011377a
cmp r9, 0x11
jne 0x140113780
movsxd r9, dword [rcx + 0x3c]
mov edx, 0x111
mov rcx, qword [rcx + 0x10]
mov r8d, 0x993
call qword [sym.imp.USER32.dll_SendMessageW]
mov eax, 1
jmp 0x1401138b0
mov rbx, qword [rbp + 0x30]
test rbx, rbx
je 0x1401138ab
cmp dword [rbx + 8], 0x100
jne 0x140113780
mov ecx, reloc.COMCTL32.dll_InitCommonControls
call qword [sym.imp.USER32.dll_GetKeyState]
test al, al
jns 0x140113780
cmp qword [rbx + 0x10], 9
jne 0x1401137c5
mov ecx, InitCommonControls
call qword [sym.imp.USER32.dll_GetKeyState]
test al, al
js 0x1401137cf
mov rax, qword [rbx + 0x10]
cmp rax, 0x26
jne 0x1401137e6
movsxd rax, dword [rsi + 0x3c]
lea edi, [rax - 1]
test edi, edi
jns 0x1401137df
mov edi, dword [rsi + 0x38]
dec edi
xor edx, edx
mov r8, rax
jmp 0x14011380c
cmp rax, 9
je 0x1401137f6
cmp rax, 0x28
jne 0x140113892
movsxd rcx, dword [rsi + 0x3c]
xor edx, edx
mov eax, dword [rsi + 0x38]
mov r8, rcx
dec eax
lea edi, [rcx + 1]
cmp edi, eax
cmovg edi, edx
mov rcx, qword [rsi + 0x18]
lea r9, [rbp - 0x50]
mov dword [rbp - 0x44], edx
mov edx, 0x102b
mov dword [rbp - 0x40], 3
call qword [sym.imp.USER32.dll_SendMessageW]
movsxd r8, dword [rsi + 0x3c]
mov edx, 0x1015
mov rcx, qword [rsi + 0x18]
mov r9, r8
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, qword [rsi + 0x18]
call qword [sym.imp.USER32.dll_UpdateWindow]
mov rcx, qword [rsi + 0x18]
lea r9, [rbp - 0x50]
movsxd rbx, edi
mov edx, 0x102b
mov r8, rbx
mov dword [rbp - 0x40], 3
mov dword [rbp - 0x44], 3
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, qword [rsi + 0x18]
mov r9, rbx
mov r8, rbx
mov edx, 0x1015
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, qword [rsi + 0x18]
call qword [sym.imp.USER32.dll_UpdateWindow]
mov dword [rsi + 0x3c], edi
movsxd r8, dword [rsi + 0x3c]
mov edx, 0x1013
mov rcx, qword [rsi + 0x18]
mov r9d, 1
call qword [sym.imp.USER32.dll_SendMessageW]
mov eax, 4
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret