Function at 0x1400b19c0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x50
mov r13, r8
mov r14, rdx
mov r15, rcx
lea r12, [rcx + 0x1e8]
mov eax, dword [rdx + 0x68]
shr eax, 1
test al, 1
je 0x1400b19ff
xor r9d, r9d
lea r8d, [r9 - 1]
mov rcx, r12
call fcn.1400a81b0
mov ecx, 0x10
call qword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
mov ecx, 0x11
test al, 1
je 0x1400b1a35
call qword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
and al, 1
movzx r8d, al
mov rdx, r14
mov rcx, r12
call fcn.1400a9700
jmp 0x1400b1c3c
call qword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
xor ebx, ebx
lea rsi, vtable.JRPointerArray_class_JRReportCtrlItem_.0
test al, 1
je 0x1400b1b35
cmp byte [r15 + 0x683], bl
jne 0x1400b1b1e
mov eax, dword [r14 + 0x68]
shr eax, 1
test al, 1
je 0x1400b1b1e
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x10], xmm0
mov dword [rbp - 0x14], ebx
mov dword [rbp - 0x10], 0xffffffff
mov edi, ebx
mov qword [rbp - 8], rbx
mov qword [rbp - 0x20], rsi
mov esi, ebx
mov dword [rbp - 0x18], ebx
mov rcx, qword [r12 + 0x18]
test rcx, rcx
je 0x1400b1aa3
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x30]
mov rbx, rax
test rbx, rbx
je 0x1400b1af6
nop dword [rax + rax]
mov eax, dword [rbx + 0x68]
shr eax, 1
test al, 1
je 0x1400b1ac5
mov rdx, rbx
lea rcx, [rbp - 0x20]
call fcn.140045170
mov rax, qword [rbx]
xor edx, edx
mov rcx, rbx
call qword [rax + 0x30]
test rax, rax
jne 0x1400b1ae7
test rbx, rbx
je 0x1400b1ae7
mov rax, qword [rbx + 0x10]
mov rbx, qword [rbx + 8]
test rax, rax
je 0x1400b1ad5
mov rbx, rax
test rax, rax
jne 0x1400b1ab0
mov rdi, qword [rbp - 8]
mov esi, dword [rbp - 0x18]
test rdi, rdi
je 0x1400b1b09
mov rcx, rdi
call fcn.1400025e0
xor ebx, ebx
mov edi, ebx
jmp 0x1400b1b0b
xor ebx, ebx
test rdi, rdi
je 0x1400b1b19
mov rcx, rdi
call fcn.1400025e0
nop
cmp esi, 1
je 0x1400b1b2e
mov rdx, r14
mov rcx, r12
call fcn.1400a9640
jmp 0x1400b1c3c
lea rsi, vtable.JRPointerArray_class_JRReportCtrlItem_.0
mov rax, qword [r15]
mov rdx, r14
mov rcx, r15
call qword [rax + 0x830]
test al, al
je 0x1400b1b7f
mov eax, dword [r13]
mov dword [rbp + 0x48], eax
mov eax, dword [r13 + 4]
mov dword [rbp + 0x4c], eax
mov rax, qword [r15]
lea rdx, [rbp + 0x48]
mov rcx, r15
call qword [rax + 0x4c0]
mov rax, qword [rbp + 0x48]
mov qword [rbp + 0x58], rax
lea rdx, [rbp + 0x58]
mov rcx, r15
call fcn.1400b16f0
jmp 0x1400b1c3c
test dword [r14 + 0x68], 0x500
jne 0x1400b1c3c
lea rcx, [r14 + 0x78]
test rcx, rcx
je 0x1400b1c3c
mov eax, dword [rcx]
cmp dword [rcx + 8], eax
jle 0x1400b1c3c
mov eax, dword [rcx + 4]
cmp dword [rcx + 0xc], eax
jle 0x1400b1c3c
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp - 0x18], 0
mov dword [rbp - 0x10], 0xffffffff
mov qword [rbp - 8], rbx
mov qword [rbp - 0x20], rsi
mov rdx, r14
lea rcx, [rbp - 0x20]
call fcn.140045170
mov rax, qword [r12]
mov dword [rsp + 0x28], ebx
mov byte [rsp + 0x20], 1
mov r9d, 1
xor r8d, r8d
lea rdx, [rbp - 0x20]
mov rcx, r12
call qword [rax + 0x38]
nop
lea rax, vtable.JRNumberArray_class_JRReportCtrlItem____ptr64_.0
mov qword [rbp - 0x20], rax
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x1400b1c23
call fcn.1400025e0
mov rcx, rbx
mov qword [rbp - 8], rbx
mov dword [rbp - 0x14], ebx
mov dword [rbp - 0x18], ebx
lea rax, vtable.JRCoreArray_class_JRReportCtrlItem____ptr64__class_JRReportCtrlItem____ptr64__1_.0
mov qword [rbp - 0x20], rax
test rcx, rcx
je 0x1400b1c3c
call fcn.1400025e0
nop
mov al, 1
mov rbx, qword [rsp + 0x90]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret