Function at 0x7ff762684560
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x40
mov rbx, r9
mov rdi, r8
mov ebp, edx
mov r15, rcx
call fcn.7ff762662be0
test rax, rax
je case.0x7ff7626847d6.527
call fcn.7ff762662df0
mov rsi, rax
call fcn.7ff762662be0
test rax, rax
je 0x7ff7626845b1
call fcn.7ff762662df0
mov r14, qword [rax + 0xe0]
jmp 0x7ff7626845b4
xor r14d, r14d
cmp ebp, 0x200
ja 0x7ff7626847ac
je 0x7ff76268476a
lea eax, [rbp - 7]
cmp eax, 0xfe
ja case.0x7ff7626847d6.527
lea rdx, [0x7ff762650000]
movzx eax, byte [rdx + rax + 0x34948]
mov ecx, dword [rdx + rax*4 + 0x34934]
add rcx, rdx
jmp rcx
lea eax, [rbp - 0x100]
test eax, 0xfffffffb
sete al
cmp rdi, 0x100
jae 0x7ff76268460d
mov byte [rsi + rdi + 0x13c], al
cmp rdi, 0x11
jne 0x7ff762684664
mov ecx, 0xa2
call qword [sym.imp.user32.dll_GetKeyState]
shr eax, 0xf
mov ecx, 0xa3
and al, 1
mov byte [rsi + 0x1de], al
call qword [sym.imp.user32.dll_GetKeyState]
shr eax, 0xf
and al, 1
cmp byte [rsi + 0x1de], 0
mov byte [rsi + 0x1df], al
jne 0x7ff762684657
test al, al
jne 0x7ff762684657
mov byte [rsi + 0x138], al
jmp case.0x7ff7626847d6.527
mov al, 1
mov byte [rsi + 0x138], al
jmp case.0x7ff7626847d6.527
cmp rdi, 0x10
jne 0x7ff7626846bb
mov ecx, 0xa0
call qword [sym.imp.user32.dll_GetKeyState]
shr eax, 0xf
mov ecx, 0xa1
and al, 1
mov byte [rsi + 0x1dc], al
call qword [sym.imp.user32.dll_GetKeyState]
shr eax, 0xf
and al, 1
cmp byte [rsi + 0x1dc], 0
mov byte [rsi + 0x1dd], al
jne 0x7ff7626846ae
test al, al
jne 0x7ff7626846ae
mov byte [rsi + 0x139], al
jmp case.0x7ff7626847d6.527
mov al, 1
mov byte [rsi + 0x139], al
jmp case.0x7ff7626847d6.527
cmp rdi, 0x12
jne case.0x7ff7626847d6.527
mov ecx, 0xa4
call qword [sym.imp.user32.dll_GetKeyState]
shr eax, 0xf
mov ecx, 0xa5
and al, 1
mov byte [rsi + 0x1e0], al
call qword [sym.imp.user32.dll_GetKeyState]
shr eax, 0xf
and al, 1
cmp byte [rsi + 0x1e0], 0
mov byte [rsi + 0x1e1], al
jne 0x7ff762684709
test al, al
jne 0x7ff762684709
mov byte [rsi + 0x13a], al
jmp case.0x7ff7626847d6.527
mov al, 1
mov byte [rsi + 0x13a], al
jmp case.0x7ff7626847d6.527
cmp ebp, 7
mov rcx, rsi
sete dl
call fcn.7ff76265c590
jmp case.0x7ff7626847d6.527
lea rax, [rdi - 1]
cmp rax, 0xfffe
ja case.0x7ff7626847d6.527
movzx edx, di
mov rcx, rsi
call fcn.7ff76265c5a0
jmp case.0x7ff7626847d6.527
cmp bx, 1
jne case.0x7ff7626847d6.527
call fcn.7ff7626843e0
test al, al
je case.0x7ff7626847d6.527
mov eax, 1
jmp 0x7ff76268491a
cmp byte [r14 + 0x10], 0
mov qword [r14 + 8], r15
jne case.0x7ff7626847d6.527
mov ebx, 2
mov dword [rsp + 0x20], 0x18
lea rcx, [rsp + 0x20]
mov dword [rsp + 0x24], ebx
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x30], 0
call qword [sym.imp.user32.dll_TrackMouseEvent]
mov byte [r14 + 0x10], 1
jmp case.0x7ff7626847d6.527
lea eax, [rbp - 0x201]
cmp eax, 0xa2
ja case.0x7ff7626847d6.527
lea rdx, [0x7ff762650000]
movzx eax, byte [rdx + rax + 0x34a64]
mov ecx, dword [rdx + rax*4 + 0x34a48]
add rcx, rdx
jmp rcx
cmp qword [r14 + 8], r15
jne 0x7ff7626847e6
mov qword [r14 + 8], 0
mov byte [r14 + 0x10], 0
jmp case.0x7ff7626847d6.527
cmp ebp, 0x204
je 0x7ff762684802
xor ebx, ebx
cmp ebp, 0x206
jne 0x7ff762684807
mov ebx, 1
cmp ebp, 0x207
je 0x7ff762684817
cmp ebp, 0x209
jne 0x7ff76268481c
mov ebx, 2
cmp ebp, 0x20b
je 0x7ff76268482c
cmp ebp, 0x20d
jne 0x7ff76268483d
xor ebx, ebx
shr rdi, 0x10
cmp di, 1
setne bl
add rbx, 3
call fcn.7ff7626645e0
test al, al
jne 0x7ff76268485a
call qword [sym.imp.user32.dll_GetCapture]
test rax, rax
jne 0x7ff76268485a
mov rcx, r15
call qword [sym.imp.user32.dll_SetCapture]
mov byte [rbx + rsi + 0x128], 1
jmp case.0x7ff7626847d6.527
xor ebx, ebx
cmp ebp, 0x205
sete bl
cmp ebp, 0x208
jne 0x7ff762684881
mov ebx, 2
jmp 0x7ff76268489a
cmp ebp, 0x20c
jne 0x7ff76268489a
xor ebx, ebx
shr rdi, 0x10
cmp di, 1
setne bl
add rbx, 3
mov byte [rbx + rsi + 0x128], 0
call fcn.7ff7626645e0
test al, al
jne case.0x7ff7626847d6.527
call qword [sym.imp.user32.dll_GetCapture]
cmp rax, r15
jne case.0x7ff7626847d6.527
call qword [sym.imp.user32.dll_ReleaseCapture]
jmp case.0x7ff7626847d6.527
shr rdi, 0x10
movsx eax, di
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x7ff76272400c]
addss xmm0, dword [rsi + 0x130]
movss dword [rsi + 0x130], xmm0
jmp case.0x7ff7626847d6.527
shr rdi, 0x10
movsx eax, di
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x7ff76272400c]
addss xmm0, dword [rsi + 0x134]
movss dword [rsi + 0x134], xmm0
jmp case.0x7ff7626847d6.527
cmp edi, 7
jne case.0x7ff7626847d6.527
mov byte [r14 + 0x2d], 1
xor eax, eax
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x40
pop r15
pop r14
pop rdi
ret