Function at 0x1400a1ea0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1c0]
sub rsp, 0x2c0
mov rax, qword [0x140185220]
xor rax, rsp
mov qword [rbp + 0x1b0], rax
mov r13, rdx
mov r14, rcx
cmp dword [rdx + 8], 0x100
jne case.0x1400a1f68.14
mov edx, 0x3f6
mov rcx, qword [rcx + 0x10]
call qword [sym.imp.USER32.dll_GetDlgItem]
mov rsi, rax
mov ecx, 0x11
call qword [sym.imp.USER32.dll_GetKeyState]
movzx r15d, ax
shr r15d, 0xf
and r15b, 1
mov ecx, 0x10
call qword [sym.imp.USER32.dll_GetKeyState]
movzx edi, ax
shr edi, 0xf
and dil, 1
mov ecx, 0x12
call qword [sym.imp.USER32.dll_GetKeyState]
movzx ebx, ax
shr ebx, 0xf
and bl, 1
mov rcx, qword [r13 + 0x10]
add rcx, 0xfffffffffffffff3
cmp rcx, 0x46
ja case.0x1400a1f68.14
lea rax, [0x140000000]
movzx ecx, byte [rax + rcx + 0xa246c]
mov edx, dword [rax + rcx*4 + 0xa244c]
add rdx, rax
jmp rdx
call qword [sym.imp.USER32.dll_GetFocus]
cmp rax, rsi
jne case.0x1400a1f68.14
mov edx, 0x100c
mov r9d, 2
lea r8, [r9 - 3]
mov rcx, rsi
call qword [sym.imp.USER32.dll_SendMessageW]
mov rbx, rax
cmp eax, 0xffffffff
je 0x1400a1ff5
nop dword [rax]
xorps xmm0, xmm0
xor eax, eax
movaps xmmword [rsp + 0x20], xmm0
movaps xmmword [rsp + 0x30], xmm0
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], rax
mov dword [rsp + 0x30], 0xfffffffd
mov dword [rsp + 0x38], ebx
lea rdx, [rsp + 0x20]
mov rcx, r14
call fcn.1400a24c0
movsxd r8, ebx
mov edx, 0x100c
mov r9d, 2
mov rcx, rsi
call qword [sym.imp.USER32.dll_SendMessageW]
mov ebx, eax
cmp eax, 0xffffffff
jne 0x1400a1fa0
mov al, 1
jmp 0x1400a241c
call qword [sym.imp.USER32.dll_GetFocus]
cmp rax, rsi
jne case.0x1400a1f68.14
test r15b, r15b
je case.0x1400a1f68.14
test dil, dil
jne case.0x1400a1f68.14
test bl, bl
jne case.0x1400a1f68.14
mov byte [r14 + 0x50], 1
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0xb]
mov rcx, rsi
call qword [sym.imp.USER32.dll_SendMessageW]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1004
mov rcx, rsi
call qword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
jle 0x1400a208f
xor edi, edi
mov ebx, eax
nop dword [rax]
mov dword [rsp + 0x30], 2
mov dword [rsp + 0x2c], 2
lea r9, [rsp + 0x20]
mov r8, rdi
mov edx, 0x102b
mov rcx, rsi
call qword [sym.imp.USER32.dll_SendMessageW]
inc rdi
sub rbx, 1
jne 0x1400a2060
xor r9d, r9d
lea edx, [r9 + 0xb]
lea r8d, [r9 + 1]
mov rcx, rsi
call qword [sym.imp.USER32.dll_SendMessageW]
mov byte [r14 + 0x50], 0
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1032
mov rcx, rsi
call qword [sym.imp.USER32.dll_SendMessageW]
mov dword [r14 + 0x1cc], eax
mov rcx, r14
call fcn.14009fab0
mov al, 1
jmp 0x1400a241c
call qword [sym.imp.USER32.dll_GetFocus]
cmp rax, rsi
jne case.0x1400a1f68.14
test r15b, r15b
je case.0x1400a1f68.14
test dil, dil
jne case.0x1400a1f68.14
test bl, bl
jne case.0x1400a1f68.14
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
movdqa xmm1, xmmword [0x140169d90]
movdqu xmmword [rbp - 0x70], xmm1
xor edi, edi
mov word [rbp - 0x80], di
xor r9d, r9d
xor r8d, r8d
mov edx, 0x101f
mov rcx, rsi
call qword [sym.imp.USER32.dll_SendMessageW]
mov r13, rax
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1200
mov rcx, rax
call qword [sym.imp.USER32.dll_SendMessageW]
mov r15, rax
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x60]
call fcn.140118720
mov ebx, edi
test r15d, r15d
jle 0x1400a21e0
mov r12d, edi
mov qword [rsp + 0x20], 2
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x3c], rdi
mov qword [rsp + 0x44], rdi
mov qword [rsp + 0x4c], rdi
mov qword [rsp + 0x54], rdi
mov qword [rsp + 0x5c], rdi
mov dword [rsp + 0x64], edi
lea rax, [rbp - 0x60]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x38], 0x104
lea r9, [rsp + 0x20]
mov r8, r12
mov edx, 0x120b
mov rcx, r13
call qword [sym.imp.USER32.dll_SendMessageW]
test ebx, ebx
je 0x1400a21c8
lea rdx, [0x140168330]
lea rcx, [rbp - 0x80]
call fcn.14004ef90
mov rdx, qword [rsp + 0x28]
lea rcx, [rbp - 0x80]
call fcn.14004ef90
inc ebx
inc r12
cmp ebx, r15d
jl 0x1400a2162
lea rdx, [0x14016800c]
lea rcx, [rbp - 0x80]
call fcn.14004ef90
mov edx, 0x100c
mov r9d, 2
lea r8, [r9 - 3]
mov rcx, rsi
call qword [sym.imp.USER32.dll_SendMessageW]
cmp eax, 0xffffffff
je 0x1400a22a3
mov ebx, edi
movsxd r12, eax
test r15d, r15d
jle 0x1400a2273
nop dword [rax + rax]
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x40], 0x104
lea rax, [rbp - 0x60]
mov qword [rsp + 0x38], rax
lea r9, [rsp + 0x20]
mov r8, r12
mov edx, 0x1073
mov rcx, rsi
call qword [sym.imp.USER32.dll_SendMessageW]
test ebx, ebx
je 0x1400a225f
lea rdx, [0x140168330]
lea rcx, [rbp - 0x80]
call fcn.14004ef90
lea rdx, [rbp - 0x60]
lea rcx, [rbp - 0x80]
call fcn.14004ef90
inc ebx
cmp ebx, r15d
jl 0x1400a2220
lea rdx, [0x14016800c]
lea rcx, [rbp - 0x80]
call fcn.14004ef90
mov r9d, 2
mov r8, r12
mov edx, 0x100c
mov rcx, rsi
call qword [sym.imp.USER32.dll_SendMessageW]
cmp eax, 0xffffffff
jne 0x1400a2211
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 8
cmovae rcx, qword [rbp - 0x80]
mov rdx, qword [r14 + 0x10]
call fcn.140062e10
nop
lea rcx, [rbp - 0x80]
call fcn.14004b2f0
jmp case.0x1400a1f68.14
lea rcx, [r14 + 0x290]
call fcn.14004a610
lea rcx, [r14 + 0x3a0]
call fcn.14004a610
lea rcx, [r14 + 0x428]
call fcn.14004a610
lea rcx, [r14 + 0x4b0]
call fcn.14004a610
jmp case.0x1400a1f68.14
test r15b, r15b
je case.0x1400a1f68.14
test dil, dil
jne case.0x1400a1f68.14
test bl, bl
jne case.0x1400a1f68.14
mov edx, 0x3e8
mov rcx, qword [r14 + 0x10]
call qword [sym.imp.USER32.dll_GetDlgItem]
mov rcx, rax
call qword [sym.imp.USER32.dll_SetFocus]
jmp case.0x1400a1f68.14
test r15b, r15b
je case.0x1400a1f68.14
test dil, dil
jne case.0x1400a1f68.14
test bl, bl
jne case.0x1400a1f68.14
mov edx, 0x410
jmp 0x1400a231d
test r15b, r15b
je case.0x1400a1f68.14
test dil, dil
jne case.0x1400a1f68.14
test bl, bl
jne case.0x1400a1f68.14
mov edx, 0x423
mov rcx, qword [r14 + 0x10]
call qword [sym.imp.USER32.dll_IsDlgButtonChecked]
cmp eax, 1
sete dil
mov edx, 0x100c
mov r9d, 2
lea r8, [r9 - 3]
mov rcx, rsi
call qword [sym.imp.USER32.dll_SendMessageW]
mov r8, rax
cmp eax, 0xffffffff
je case.0x1400a1f68.14
movabs r15, 0x4924924924924925
movsxd rbx, r8d
test dil, dil
jne 0x1400a23c4
mov rax, qword [r14 + 0x198]
mov r8d, dword [rax + rbx*8 + 4]
test r8d, r8d
js 0x1400a23fb
mov rcx, qword [r14 + 0x188]
sub rcx, qword [r14 + 0x180]
mov rax, r15
imul rcx
sar rdx, 5
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r8d, edx
jge 0x1400a23fb
mov edx, r8d
mov rcx, r14
call fcn.1400a4140
mov r9d, 2
mov r8, rbx
mov edx, 0x100c
mov rcx, rsi
call qword [sym.imp.USER32.dll_SendMessageW]
mov r8d, eax
cmp eax, 0xffffffff
jne 0x1400a23b0
xor al, al
mov rcx, qword [rbp + 0x1b0]
xor rcx, rsp
call fcn.1401145b0
lea r11, [rsp + 0x2c0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret