Function at 0x1400908f0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x170]
sub rsp, 0x270
mov rax, qword [0x140182f80]
xor rax, rsp
mov qword [rbp + 0x160], rax
xor edi, edi
mov rax, qword [0x140189410]
cmp byte [rax + 0x5fe8], dil
je 0x140090db3
xorps xmm0, xmm0
movups xmmword [rbp + 0x150], xmm0
xorps xmm1, xmm1
movups xmmword [rsp + 0x70], xmm1
movdqa xmmword [rbp - 0x80], xmm0
lea r8d, [rdi + 2]
lea rdx, [0x140140ce4]
lea rcx, [rsp + 0x70]
call fcn.140011c40
mov dword [rbp - reloc.WS2_32.dll_WSASetLastError], 0x70
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x58], rdi
mov qword [rbp - 0x50], rdi
lea r8d, [rdi + 2]
lea rdx, [0x140140cf4]
lea rcx, [rbp - 0x68]
call fcn.140011c40
mov dword [rbp - 0x48], WSACleanup
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp - 0x30], xmm1
lea r8d, [rdi + 2]
lea rdx, [0x140140d04]
lea rcx, [rbp - 0x40]
call fcn.140011c40
mov dword [rbp - 0x20], WSACleanup
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
mov qword [rbp - 8], rdi
mov qword [rbp], rdi
lea r8d, [rdi + 2]
lea rdx, [0x140140d14]
lea rcx, [rbp - 0x18]
call fcn.140011c40
mov dword [rbp + 8], reloc.WS2_32.dll_WSAStartup
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x20], xmm1
lea r8d, [rdi + 2]
lea rdx, [0x140140d24]
lea rcx, [rbp + 0x10]
call fcn.140011c40
mov dword [rbp + 0x30], reloc.WS2_32.dll_WSACleanup
xorps xmm0, xmm0
movups xmmword [rbp + 0x38], xmm0
mov qword [rbp + 0x48], rdi
mov qword [rbp + 0x50], rdi
lea r8d, [rdi + 2]
lea rdx, [0x140140d34]
lea rcx, [rbp + 0x38]
call fcn.140011c40
mov dword [rbp + 0x58], 0x75
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x70], xmm1
lea r8d, [rdi + 2]
lea rdx, [0x140140d44]
lea rcx, [rbp + 0x60]
call fcn.140011c40
mov dword [rbp + 0x80], 0x76
xorps xmm0, xmm0
movups xmmword [rbp + 0x88], xmm0
mov qword [rbp + 0x98], rdi
mov qword [rbp + 0xa0], rdi
lea r8d, [rdi + 2]
lea rdx, [0x140140d54]
lea rcx, [rbp + 0x88]
call fcn.140011c40
mov dword [rbp + 0xa8], 0x77
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xc0], xmm1
lea r8d, [rdi + 2]
lea rdx, [0x140140d64]
lea rcx, [rbp + 0xb0]
call fcn.140011c40
mov dword [rbp + 0xd0], 0x78
xorps xmm0, xmm0
movups xmmword [rbp + 0xd8], xmm0
mov qword [rbp + 0xe8], rdi
mov qword [rbp + 0xf0], rdi
lea r8d, [rdi + 3]
lea rdx, [0x140140d74]
lea rcx, [rbp + 0xd8]
call fcn.140011c40
mov dword [rbp + 0xf8], 0x79
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x110], xmm1
lea r8d, [rdi + 3]
lea rdx, [0x140140d84]
lea rcx, [rbp + 0x100]
call fcn.140011c40
mov dword [rbp + 0x120], 0x7a
xorps xmm0, xmm0
movups xmmword [rbp + 0x128], xmm0
mov qword [rbp + 0x138], rdi
mov qword [rbp + 0x140], rdi
lea r8d, [rdi + 3]
lea rdx, [0x140140d94]
lea rcx, [rbp + 0x128]
call fcn.140011c40
mov dword [rbp + 0x148], 0x7b
lea rax, [rsp + 0x70]
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x150]
mov qword [rsp + 0x58], rax
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x150]
call fcn.140077260
nop
lea r9, [fcn.140006e10]
lea edx, [rdi + 0x28]
lea r8d, [rdi + 0xc]
lea rcx, [rsp + 0x70]
call fcn.14011bcbc
mov r13, qword [rbp + 0x150]
mov rbx, qword [r13 + 8]
mov r14, r13
mov r15, qword [0x1401879d8]
mov rsi, qword [0x1401879d0]
mov r12, qword [0x1401879c0]
cmp byte [rbx + 0x19], dil
jne 0x140090c53
lea rcx, [rbx + 0x20]
lea rdx, [0x1401879c0]
cmp r15, 0xf
cmova rdx, r12
mov rdi, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0xf
jbe 0x140090c11
mov rcx, qword [rcx]
mov r8, rdi
cmp rsi, rdi
cmovb r8, rsi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140090c38
cmp rdi, rsi
jae 0x140090c30
mov eax, 0xffffffff
jmp 0x140090c38
xor eax, eax
cmp rdi, rsi
seta al
shr eax, 0x1f
test al, al
je 0x140090c45
mov rbx, qword [rbx + 0x10]
jmp 0x140090c4b
mov r14, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x140090bf0
xor edi, edi
cmp byte [r14 + 0x19], 0
jne 0x140090d8b
lea rdx, [r14 + 0x20]
mov rbx, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x140090c70
mov rdx, qword [rdx]
lea rcx, [0x1401879c0]
cmp r15, 0xf
cmova rcx, r12
mov r8, rsi
cmp rbx, rsi
cmovb r8, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140090ca3
cmp rsi, rbx
jae 0x140090c9e
mov eax, 0xffffffff
jmp 0x140090ca3
mov eax, edi
seta al
shr eax, 0x1f
test al, al
jne 0x140090d8b
cmp r14, r13
je 0x140090d8b
lea rdx, [0x1401879c0]
lea rcx, [rbp + 0x150]
call fcn.14007cce0
mov ecx, dword [rax]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x140090d84
lea rcx, [rsp + 0x50]
call fcn.14004dd30
movabs rcx, 0x7ffffffffd050f7f
movabs rbx, 0x7fffffffffffffff
mov rax, qword [rsp + 0x50]
cmp rax, rcx
jge 0x140090d10
add rax, 0x2faf080
mov qword [rsp + 0x50], rax
jmp 0x140090d15
mov qword [rsp + 0x50], rbx
lea rcx, [rsp + 0x50]
call fcn.14001a510
mov rcx, qword [0x140186fe8]
sub rbx, rcx
cmp rbx, 0x14
jb 0x140090de3
lea rax, [0x140186fd8]
cmp qword [0x140186ff0], 0xf
cmova rax, qword [0x140186fd8]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], reloc.WS2_32.dll_sendto
lea r9, str.actioninput_ntext_
lea r8, [0x140186fd8]
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x50]
call fcn.140006c00
lea rcx, [rsp + 0x50]
call fcn.14002c9d0
mov r13, qword [rbp + 0x150]
mov r8, qword [r13 + 8]
lea rdx, [rbp + 0x150]
lea rcx, [rbp + 0x150]
call fcn.1400710d0
mov edx, 0x48
mov rcx, qword [rbp + 0x150]
call fcn.14011bae4
mov rcx, qword [rbp + 0x160]
xor rcx, rsp
call fcn.14011bc00
lea r11, [rsp + 0x270]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140006f00
nop
int3