Function at 0x1400db370
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x50]
sub rsp, 0x150
movaps xmmword [rax - 0x48], xmm6
mov rsi, rcx
movaps xmmword [rax - 0x58], xmm7
movabs r12, 0x7ffffffffff0bdbe
movaps xmmword [rax - 0x68], xmm8
movabs r15, 0x7fffffffffffffff
movaps xmmword [rax - 0x78], xmm9
xorps xmm8, xmm8
movss xmm9, dword [0x1401127d0]
xor r14d, r14d
movaps xmmword [rax - 0x88], xmm10
movss xmm10, dword [0x1401128b0]
movaps xmmword [rax - 0x98], xmm11
movss xmm11, dword [0x140112780]
movaps xmmword [rax - 0xa8], xmm12
movss xmm12, dword [0x1401126d0]
lea rcx, [rbp - 0x68]
call fcn.140011640
mov rax, qword [rbp - 0x68]
cmp rax, r12
jg 0x1400db416
add rax, 0xf4240
mov qword [rbp + 0x98], rax
jmp 0x1400db41d
mov qword [rbp + 0x98], r15
lea rcx, [rbp + 0x98]
call fcn.140018df0
mov rax, qword [0x140132b48]
lea r8, [rsp + 0x70]
mov rcx, qword [0x140132b50]
add rax, 0x19a41c8
mov qword [rsp + 0x78], rax
mov r9d, 0x28
mov qword [rsp + 0x38], r14
lea rax, [rbp + 0x98]
mov qword [rbp - 0x80], rax
mov edx, 0x221a5c
lea rax, [rsp + 0x70]
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 0x28
mov qword [rsp + 0x20], rax
mov qword [rbp + 0x98], r14
mov qword [rbp - 0x78], 8
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
cmp qword [rbp + 0x98], r14
je 0x1400db3f5
mov rax, qword [0x140132b48]
lea r8, [rsp + 0x48]
mov rcx, qword [0x140132b50]
add rax, 0x19a41c8
mov qword [rsp + 0x50], rax
mov r9d, 0x28
mov qword [rsp + 0x38], r14
lea rax, [rsp + 0x40]
mov qword [rsp + 0x58], rax
mov edx, 0x221a5c
lea rax, [rsp + 0x48]
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 0x28
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x60], 8
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rax, qword [rsp + 0x40]
lea r8, [rsp + 0x70]
mov rcx, qword [0x140132b50]
add rax, 0x7ec
mov qword [rsp + 0x78], rax
mov r9d, 0x28
mov qword [rsp + 0x38], r14
lea rax, [rbp + 0x98]
mov qword [rbp - 0x80], rax
mov edx, 0x221a5c
lea rax, [rsp + 0x70]
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 0x28
mov qword [rsp + 0x20], rax
mov dword [rbp + 0x98], r14d
mov qword [rbp - 0x78], 4
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
cmp dword [rbp + 0x98], r14d
je 0x1400db3f5
call fcn.1400f4f50
test rax, rax
je 0x1400db3f5
call fcn.1400f5830
cmp eax, 1
jl 0x1400db3f5
call fcn.1400f5830
cmp eax, 0x64
jg 0x1400db3f5
cmp byte [rsi], r14b
je 0x1400db3f5
mov ebx, dword [0x140132b40]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
test rax, rax
je 0x1400db3f5
lea rdx, [rbp + 0xa0]
mov rcx, rax
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
test eax, eax
je 0x1400db3f5
cmp dword [rbp + 0xa0], ebx
jne 0x1400db3f5
call fcn.1400f4ac0
test al, al
je 0x1400db3f5
mov ecx, 0x41
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x1400db3f5
mov ecx, 0x44
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x1400db3f5
xorps xmm6, xmm6
xorps xmm7, xmm7
mov edi, 1
nop word [rax + rax]
mov edx, edi
call fcn.1400ed750
mov rbx, rax
call fcn.1400f4f50
cmp rbx, rax
jne 0x1400db6a8
xor eax, eax
mov edx, edi
mov qword [rbp + 0xa8], rax
call fcn.1400ed750
mov rcx, qword [0x140132b50]
lea r8, [rbp - 0x50]
add rax, 0x3e0
mov qword [rsp + 0x38], r14
mov qword [rbp - 0x48], rax
mov r9d, 0x28
lea rax, [rbp + 0xa8]
mov qword [rsp + 0x30], r14
mov qword [rbp - 0x40], rax
mov edx, 0x221a5c
lea rax, [rbp - 0x50]
mov dword [rsp + 0x28], 0x28
mov qword [rsp + 0x20], rax
mov qword [rbp - 0x38], 8
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movss xmm6, dword [rbp + 0xa8]
movss xmm7, dword [rbp + 0xac]
inc edi
cmp edi, 0x40
jle 0x1400db620
andps xmm6, xmm10
comiss xmm6, xmm11
jae 0x1400db6dd
andps xmm7, xmm10
comiss xmm7, xmm11
jae 0x1400db6dd
xor r9d, r9d
xor edx, edx
mov cl, 0x41
lea r8d, [r9 + 2]
call qword [sym.imp.USER32.dll_keybd_event]
jmp 0x1400db93a
mov rcx, qword [0x140132b50]
lea r8, [rsp + 0x48]
xor eax, eax
mov qword [rsp + 0x38], r14
mov qword [rbp + 0x98], rax
mov r9d, 0x28
mov rax, qword [0x140132b48]
mov edx, 0x221a5c
add rax, 0x19c5958
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x98]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x48]
mov dword [rsp + 0x28], 0x28
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x60], 8
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movss xmm0, dword [rbp + 0x9c]
subss xmm0, xmm8
comiss xmm0, xmm12
jae 0x1400db950
comiss xmm0, xmm9
jbe 0x1400db83f
mov rcx, qword [0x140132b50]
lea r8, [rsp + 0x70]
xor eax, eax
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rax
mov r9d, 0x28
mov rax, qword [0x140132b48]
mov edx, 0x221a5c
add rax, 0x19c5958
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x40]
mov qword [rbp - 0x80], rax
lea rax, [rsp + 0x70]
mov dword [rsp + 0x28], 0x28
mov qword [rsp + 0x20], rax
mov qword [rbp - 0x78], 8
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rcx, qword [0x140132b50]
lea r8, [rsp + 0x48]
movss xmm8, dword [rsp + 0x44]
xor eax, eax
mov qword [rbp + 0x98], rax
mov r9d, 0x28
mov rax, qword [0x140132b48]
mov edx, 0x221a5c
add rax, 0x19c5958
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x98]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 0x28
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x60], 8
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
jmp 0x1400db3f5
jae 0x1400dba61
xor r9d, r9d
xor edx, edx
mov cl, 0x41
lea r8d, [r9 + 2]
call qword [sym.imp.USER32.dll_keybd_event]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov cl, 0x44
call qword [sym.imp.USER32.dll_keybd_event]
mov eax, 0x64
cdq
idiv dword [rsi + 4]
mov ecx, eax
mov eax, 0xc350
cdq
idiv ecx
lea rcx, [rbp - 0x60]
movsxd rbx, eax
call fcn.140011640
mov rcx, qword [rbp - 0x60]
mov qword [rbp + 0x98], rcx
cmp rbx, 1
jl 0x1400db8bc
imul rdx, rbx, 0x3e8
mov rax, r15
sub rax, rdx
cmp rcx, rax
jge 0x1400db8b5
lea rax, [rcx + rdx]
mov qword [rbp + 0x98], rax
jmp 0x1400db8bc
mov qword [rbp + 0x98], r15
lea rcx, [rbp + 0x98]
call fcn.140018df0
mov rcx, qword [0x140132b50]
lea r8, [rsp + 0x48]
xor eax, eax
mov qword [rsp + 0x38], r14
mov qword [rbp + 0x98], rax
mov r9d, 0x28
mov rax, qword [0x140132b48]
mov edx, 0x221a5c
add rax, 0x19c5958
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x98]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x48]
mov dword [rsp + 0x28], 0x28
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x60], 8
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movss xmm8, dword [rbp + 0x9c]
xor r9d, r9d
xor edx, edx
mov cl, 0x44
lea r8d, [r9 + 2]
call qword [sym.imp.USER32.dll_keybd_event]
jmp 0x1400db3f5
jbe 0x1400dba61
xor r9d, r9d
xor edx, edx
mov cl, 0x44
lea r8d, [r9 + 2]
call qword [sym.imp.USER32.dll_keybd_event]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov cl, 0x41
call qword [sym.imp.USER32.dll_keybd_event]
mov eax, 0x64
cdq
idiv dword [rsi + 4]
mov ecx, eax
mov eax, 0xc350
cdq
idiv ecx
lea rcx, [rbp - 0x58]
movsxd rbx, eax
call fcn.140011640
mov rcx, qword [rbp - 0x58]
mov qword [rbp + 0x98], rcx
cmp rbx, 1
jl 0x1400db9cd
imul rdx, rbx, 0x3e8
mov rax, r15
sub rax, rdx
cmp rcx, rax
jge 0x1400db9c6
lea rax, [rcx + rdx]
mov qword [rbp + 0x98], rax
jmp 0x1400db9cd
mov qword [rbp + 0x98], r15
lea rcx, [rbp + 0x98]
call fcn.140018df0
mov rcx, qword [0x140132b50]
lea r8, [rsp + 0x48]
xor eax, eax
mov qword [rsp + 0x38], r14
mov qword [rbp + 0x98], rax
mov r9d, 0x28
mov rax, qword [0x140132b48]
mov edx, 0x221a5c
add rax, 0x19c5958
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x98]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x48]
mov dword [rsp + 0x28], 0x28
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x60], 8
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movss xmm8, dword [rbp + 0x9c]
xor r9d, r9d
xor edx, edx
mov cl, 0x41
lea r8d, [r9 + 2]
call qword [sym.imp.USER32.dll_keybd_event]
jmp 0x1400db3f5
mov rcx, qword [0x140132b50]
lea r8, [rsp + 0x70]
xor eax, eax
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rax
mov r9d, 0x28
mov rax, qword [0x140132b48]
mov edx, 0x221a5c
add rax, 0x19c5958
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x40]
mov qword [rbp - 0x80], rax
lea rax, [rsp + 0x70]
mov dword [rsp + 0x28], 0x28
mov qword [rsp + 0x20], rax
mov qword [rbp - 0x78], 8
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movss xmm8, dword [rsp + 0x44]
jmp 0x1400db3f5