Function at 0x1400468c0
Capabilities:
Log keystrokes via polling

Disassembly:
test rcx, rcx
je 0x140046c67
mov rax, rsp
mov dword [rax + 0x20], r9d
mov qword [rax + 0x10], rdx
push rbp
push rbx
push rdi
lea rbp, [rax - 0x57]
sub rsp, 0xe0
mov qword [rax + 8], rsi
mov rdi, r8
mov qword [rax + 0x18], r14
lea r8, [rbp - 0x41]
xor r14d, r14d
mov qword [rbp - 0x39], 0xb196a29
lea rax, [rcx + 0x19b0]
mov qword [rsp + 0x38], r14
mov qword [rbp - 0x31], rax
mov rbx, rcx
mov rcx, qword [0x1400eac68]
lea rax, [rbp + 0x77]
mov qword [rbp - 0x29], rax
lea r9d, [r14 + 0x28]
mov eax, dword [0x1400eac70]
xorps xmm0, xmm0
mov qword [rsp + 0x30], r14
mov edx, 0x30e254a8
mov dword [rsp + 0x28], r14d
mov dword [rbp - 0x3d], eax
movss dword [rbp + 0x77], xmm0
mov dword [rbp - 0x41], 0xf932b28
mov qword [rbp - 0x21], 4
mov qword [rsp + 0x20], r14
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movss xmm0, dword [rbp + 0x77]
lea rax, [rbx + 0x26a0]
mov rcx, qword [0x1400eac68]
lea r9d, [r14 + 0x28]
mov qword [rbp - 9], rax
lea r8, [rbp - 0x19]
lea rax, [rbp + 0x67]
mov qword [rsp + 0x38], r14
mov qword [rbp - 1], rax
mov edx, 0x30e254a8
mov eax, dword [0x1400eac70]
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov dword [rbp - 0x15], eax
movss dword [rdi + 0x2c], xmm0
mov dword [rbp + 0x67], r14d
mov qword [rbp - 0x11], 0xb196a29
mov dword [rbp - 0x19], 0xf932b28
mov qword [rbp + 7], 4
mov qword [rsp + 0x20], r14
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movsxd rsi, dword [rbp + 0x7f]
movss xmm0, dword [rdi + 0x2c]
ucomiss xmm0, dword [rdi + rsi*4 + 0x30]
jp 0x1400469e1
je 0x140046c39
mov dword [rdi + rsi*4 + 0x1c0], Ordinal_33
cmp dword [rbp + 0x67], r14d
jne 0x140046c32
movaps xmmword [rsp + 0xd0], xmm6
lea rcx, [rbp - 0x51]
movaps xmmword [rsp + 0xc0], xmm7
mov rdx, rbx
movaps xmmword [rsp + 0xb0], xmm8
call fcn.140046580
mov rax, qword [0x1400e9290]
lea r8, [rbp - 0x19]
mov rcx, qword [0x1400eac68]
add rax, 0x24e0
mov qword [rbp - 9], rax
mov r9d, Ordinal_41
lea rax, [rbp - 0x61]
mov qword [rsp + 0x38], r14
mov qword [rbp - 1], rax
mov edx, 0x30e254a8
mov eax, dword [0x1400eac70]
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov dword [rbp - 0x15], eax
mov qword [rbp - 0x11], 0xb196a29
mov dword [rbp - 0x19], 0xf932b28
mov qword [rbp + 7], recv
mov qword [rsp + 0x20], r14
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movss xmm3, dword [0x1400d77b8]
movss xmm7, dword [rbp - 0x51]
comiss xmm7, xmm3
movss xmm1, dword [0x1400d7878]
jbe 0x140046aa9
nop
addss xmm7, xmm1
comiss xmm7, xmm3
ja 0x140046aa0
movss xmm2, dword [0x1400d7870]
comiss xmm2, xmm7
movss xmm0, dword [0x1400d77e8]
jbe 0x140046ac9
nop
addss xmm7, xmm0
comiss xmm2, xmm7
ja 0x140046ac0
movss xmm6, dword [rbp - 0x4d]
comiss xmm6, xmm0
movss xmm4, dword [0x1400d787c]
jbe 0x140046ae9
nop dword [rax + rax]
addss xmm6, xmm4
comiss xmm6, xmm0
ja 0x140046ae0
comiss xmm1, xmm6
movss xmm5, dword [0x1400d77f8]
jbe 0x140046aff
addss xmm6, xmm5
comiss xmm1, xmm6
ja 0x140046af6
subss xmm7, dword [rbp - 0x61]
movss xmm8, dword [rbp - 0x49]
subss xmm6, dword [rbp - 0x5d]
subss xmm8, dword [rbp - 0x59]
comiss xmm7, xmm3
jbe 0x140046b29
nop word [rax + rax]
addss xmm7, xmm1
comiss xmm7, xmm3
ja 0x140046b20
comiss xmm2, xmm7
jbe 0x140046b39
nop
addss xmm7, xmm0
comiss xmm2, xmm7
ja 0x140046b30
comiss xmm6, xmm0
jbe 0x140046b49
nop
addss xmm6, xmm4
comiss xmm6, xmm0
ja 0x140046b40
comiss xmm1, xmm6
jbe 0x140046b59
nop
addss xmm6, xmm5
comiss xmm1, xmm6
ja 0x140046b50
movd xmm0, dword [rdi + 8]
mov ecx, dword [reloc.WS2_32.dll_accept]
cvtdq2ps xmm0, xmm0
divss xmm7, xmm0
divss xmm6, xmm0
addss xmm7, dword [rbp - 0x61]
addss xmm6, dword [rbp - 0x5d]
divss xmm8, xmm0
addss xmm8, dword [rbp - 0x59]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x140046ba0
mov ecx, dword [reloc.WS2_32.dll_getsockname]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x140046c19
mov rax, qword [0x1400e9290]
lea r8, [rbp - 0x19]
mov rcx, qword [0x1400eac68]
add rax, 0x24e0
mov qword [rbp - 9], rax
mov r9d, Ordinal_41
lea rax, [rbp - 0x51]
mov qword [rsp + 0x38], r14
mov qword [rbp - 1], rax
mov edx, 0x30e254a8
mov eax, dword [0x1400eac70]
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov dword [rbp - 0x15], eax
movss dword [rbp - 0x51], xmm7
movss dword [rbp - 0x4d], xmm6
movss dword [rbp - 0x49], xmm8
mov qword [rbp - 0x11], 0x4c1741a
mov dword [rbp - 0x19], 0xf932b28
mov qword [rbp + 7], recv
mov qword [rsp + 0x20], r14
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movaps xmm7, xmmword [rsp + 0xc0]
movaps xmm6, xmmword [rsp + 0xd0]
movaps xmm8, xmmword [rsp + 0xb0]
mov eax, dword [rdi + 0x2c]
mov dword [rdi + rsi*4 + 0x30], eax
mov eax, dword [rdi + rsi*4 + 0x1c0]
mov r14, qword [rsp + 0x110]
test eax, eax
js 0x140046c55
dec eax
mov dword [rdi + rsi*4 + 0x1c0], eax
mov rsi, qword [rsp + 0x100]
add rsp, 0xe0
pop rdi
pop rbx
pop rbp
ret