Function at 0x1400326a8
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x40
mov r14, r9
mov rdi, r8
mov ebx, edx
mov r12, rcx
call fcn.140015684
test rax, rax
je 0x140032bd3
call fcn.140015824
mov r15, rax
call fcn.140015684
test rax, rax
je 0x1400326fe
call fcn.140015824
mov rsi, qword [rax + 0x90]
jmp 0x140032700
xor esi, esi
mov edx, 0x20c
mov ebp, 1
lea eax, [rdx - 8]
lea r8d, [rdx - 7]
cmp ebx, eax
ja 0x140032aa2
je 0x14003292d
mov ecx, 0x100
lea eax, [rcx + 4]
cmp ebx, eax
ja 0x1400328f6
je 0x1400328ee
mov eax, ebx
sub eax, 7
je 0x1400328db
sub eax, ebp
je 0x1400328db
sub eax, 0x18
je 0x1400328bc
sub eax, 0xe0
je 0x140032784
sub eax, ebp
je 0x140032784
cmp eax, ebp
jne 0x140032bd3
lea rax, [rdi - 1]
cmp rax, 0xfffe
ja 0x140032bd3
movzx edx, di
mov rcx, r15
call fcn.14000fe8c
jmp 0x140032bd3
cmp ebx, ecx
je 0x1400328ee
xor sil, sil
cmp rdi, rcx
jae 0x140032bd3
call fcn.140015824
mov ecx, reloc.WS2_32.dll_recvfrom
mov rbx, rax
call qword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
mov edx, 0x281
and al, bpl
mov rcx, rbx
mov r8b, al
call fcn.140010058
mov ecx, reloc.WS2_32.dll_recv
call qword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
mov edx, 0x282
and al, bpl
mov rcx, rbx
mov r8b, al
call fcn.140010058
mov ecx, reloc.WS2_32.dll_select
call qword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
mov edx, 0x283
and al, bpl
mov rcx, rbx
mov r8b, al
call fcn.140010058
mov ecx, 0x5d
call qword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
mov edx, 0x284
and al, bpl
mov rcx, rbx
mov r8b, al
call fcn.140010058
cmp rdi, 0xd
jne 0x14003283e
mov rax, r14
shr rax, 0x10
bt ax, 8
mov eax, 0x10d
cmovb edi, eax
movsxd rcx, edi
call fcn.140032114
shr r14, 0x10
movzx ebx, r14b
test eax, eax
je 0x140032862
mov r9d, ebx
mov r8d, edi
mov dl, sil
mov ecx, eax
call fcn.1400316dc
cmp edi, 0x10
jne 0x1400329e7
mov edi, 0xa0
mov ecx, edi
call qword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
and al, bpl
cmp al, sil
jne 0x140032896
mov r9d, ebx
mov r8d, edi
mov dl, sil
mov ecx, 0x210
call fcn.1400316dc
mov edi, 0xa1
mov ecx, edi
call qword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
and al, bpl
cmp al, sil
jne 0x140032bd3
mov ecx, 0x214
jmp 0x140032a8f
cmp r14w, bp
jne 0x140032bd3
call fcn.140032064
test al, al
je 0x140032bd3
mov rax, rbp
jmp 0x140032bd5
cmp ebx, 7
mov rcx, r15
sete dl
call fcn.14000fe04
jmp 0x140032bd3
mov sil, bpl
jmp 0x14003278f
mov eax, ebx
sub eax, 0x105
je 0x14003278c
sub eax, 0xfb
je 0x140032994
sub eax, ebp
je 0x140032922
sub eax, ebp
je 0x140032b79
cmp eax, ebp
jne 0x140032bd3
xor r14d, r14d
cmp ebx, 0x206
jne 0x140032930
mov r14d, ebp
lea eax, [rbx - 0x207]
mov ecx, 0xfffffffd
test ecx, eax
mov ebp, 2
lea eax, [rbx - 0x20b]
cmove r14d, ebp
lea ebx, [rbp - 1]
test ecx, eax
jne 0x140032965
xor r14d, r14d
shr rdi, 0x10
cmp di, bx
setne r14b
add r14d, 3
cmp dword [rsi + 0x14], 0
jne 0x14003297f
call qword [sym.imp.USER32.dll_GetCapture]
test rax, rax
jne 0x14003297f
mov rcx, r12
call qword [sym.imp.USER32.dll_SetCapture]
mov eax, dword [rsi + 0x14]
mov r8b, bl
bts eax, r14d
mov edx, r14d
mov dword [rsi + 0x14], eax
jmp 0x140032bcb
cmp byte [rsi + 0x10], 0
mov qword [rsi + 8], r12
jne 0x1400329c8
and dword [rsp + 0x30], 0
lea rcx, [rsp + 0x20]
mov ebp, 2
mov dword [rsp + 0x20], Ordinal_26
mov dword [rsp + 0x24], ebp
mov qword [rsp + 0x28], r12
call qword [sym.imp.USER32.dll_TrackMouseEvent]
mov byte [rsi + 0x10], 1
mov rax, r14
shr rax, 0x10
cwde
movd xmm2, eax
movsx eax, r14w
cvtdq2ps xmm2, xmm2
movd xmm1, eax
cvtdq2ps xmm1, xmm1
jmp 0x140032b46
cmp edi, 0x11
jne 0x140032a3a
mov edi, 0xa2
mov ecx, edi
call qword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
and al, bpl
cmp al, sil
jne 0x140032a17
mov r9d, ebx
mov r8d, edi
mov dl, sil
mov ecx, 0x20f
call fcn.1400316dc
mov edi, 0xa3
mov ecx, edi
call qword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
and al, bpl
cmp al, sil
jne 0x140032bd3
mov ecx, 0x213
jmp 0x140032a8f
cmp edi, 0x12
jne 0x140032bd3
mov edi, 0xa4
mov ecx, edi
call qword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
and al, bpl
cmp al, sil
jne 0x140032a6e
mov r9d, ebx
mov r8d, edi
mov dl, sil
mov ecx, 0x211
call fcn.1400316dc
mov edi, 0xa5
mov ecx, edi
call qword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
and al, bpl
cmp al, sil
jne 0x140032bd3
mov ecx, 0x215
mov r9d, ebx
mov r8d, edi
mov dl, sil
call fcn.1400316dc
jmp 0x140032bd3
mov eax, 0x20b
cmp ebx, eax
ja 0x140032b0a
je 0x140032922
mov eax, ebx
sub eax, r8d
je 0x140032b79
sub eax, ebp
je 0x140032922
sub eax, ebp
je 0x140032922
sub eax, ebp
je 0x140032b79
sub eax, ebp
je 0x140032922
cmp eax, ebp
jne 0x140032bd3
shr rdi, 0x10
xorps xmm1, xmm1
movsx eax, di
movd xmm2, eax
cvtdq2ps xmm2, xmm2
divss xmm2, dword [0x1400c2a5c]
mov rcx, r15
call fcn.140010124
jmp 0x140032bd3
mov eax, ebx
sub eax, edx
je 0x140032b79
sub eax, ebp
je 0x140032922
sub eax, ebp
je 0x140032b5e
sub eax, 0xb
je 0x140032b53
cmp eax, 0x8a
jne 0x140032bd3
cmp qword [rsi + 8], r12
jne 0x140032b37
and qword [rsi + 8], 0
movss xmm1, dword [0x1400c292c]
movaps xmm2, xmm1
mov byte [rsi + 0x10], 0
mov rcx, r15
call fcn.1400100d8
jmp 0x140032bd3
cmp edi, 7
jne 0x140032bd3
mov byte [rsi + 0x2d], bpl
jmp 0x140032bd3
shr rdi, 0x10
xorps xmm2, xmm2
movsx eax, di
movd xmm1, eax
cvtdq2ps xmm1, xmm1
divss xmm1, dword [0x1400c2a5c]
jmp 0x140032afd
xor ebp, ebp
cmp ebx, r8d
sete bpl
cmp ebx, 0x208
jne 0x140032b91
mov ebp, 2
jmp 0x140032ba8
cmp ebx, edx
jne 0x140032ba8
xor ebp, ebp
shr rdi, 0x10
lea ebx, [rbp + 1]
cmp di, bx
setne bpl
add ebp, 3
mov eax, dword [rsi + 0x14]
btr eax, ebp
mov dword [rsi + 0x14], eax
test eax, eax
jne 0x140032bc6
call qword [sym.imp.USER32.dll_GetCapture]
cmp rax, r12
jne 0x140032bc6
call qword [sym.imp.USER32.dll_ReleaseCapture]
xor r8d, r8d
mov edx, ebp
mov rcx, r15
call fcn.140010084
xor eax, eax
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop r12
ret