Function at 0x1800df760
Capabilities:
Log keystrokes via polling

Disassembly:
test cl, cl
je 0x1800dfbe0
mov r11, rsp
push rbp
push rbx
push rdi
lea rbp, [r11 - 0x78]
sub rsp, 0x160
movaps xmmword [r11 - 0x48], xmm8
mov rax, qword [0x1801be118]
xor rax, rsp
mov qword [rbp + 8], rax
mov rcx, qword [0x1801dc900]
movzx ebx, r9b
mov qword [r11 + 8], rsi
movaps xmm8, xmm2
mov qword [r11 + 0x10], r14
mov edi, edx
mov qword [r11 + 0x18], r15
movaps xmmword [r11 - 0x28], xmm6
movaps xmmword [r11 - 0x38], xmm7
movaps xmmword [r11 - 0x58], xmm14
movaps xmmword [r11 - 0x68], xmm15
call fcn.180013fd0
mov rcx, qword [0x1801dc900]
movabs rdx, 0x4f8644af03d0e0d6
call fcn.180014050
mov rcx, qword [0x1801dc900]
mov rax, qword [rcx]
mov esi, dword [rax]
call fcn.180013fd0
mov rcx, qword [0x1801dc900]
movabs rdx, 0xd80958fc74e988a6
call fcn.180014050
mov rax, qword [0x1801dc900]
movss xmm6, dword [0x180184e64]
movss xmm7, dword [0x180184d88]
movaps xmm3, xmm6
mov r14d, dword [rbp + 0xa0]
mov edx, r14d
mov rcx, qword [rax]
movss xmm2, dword [0x180185080]
movss dword [rsp + 0x20], xmm7
mov r15d, dword [rcx]
lea rcx, [rbp - 0x58]
mov dword [rbp - 0x10], 0
mov dword [rbp - 8], 0
mov dword [rbp], 0
mov dword [rbp - 0x28], 0
mov dword [rbp - 0x20], 0
mov dword [rbp - 0x18], 0
call fcn.180069590
movss xmm3, dword [rbp - 0x20]
lea rcx, [rbp - 0x70]
movss xmm2, dword [rbp - 0x28]
addss xmm3, xmm6
addss xmm2, dword [0x180184db8]
mov edx, r14d
movss dword [rsp + 0x20], xmm7
call fcn.180069590
movss xmm3, dword [rbp - 0x20]
lea rcx, [rbp - 0x40]
movss xmm2, dword [rbp - 0x28]
mov edx, r14d
addss xmm3, dword [0x180184fd4]
xorps xmm2, xmmword [0x1801852b0]
movss dword [rsp + 0x20], xmm7
call fcn.180069590
movss xmm3, dword [rbp - 0x20]
lea rcx, [rsp + 0x78]
addss xmm3, dword [0x180184fd4]
movss xmm2, dword [rbp - 0x28]
mov edx, r14d
movss dword [rsp + 0x20], xmm7
call fcn.180069590
movss xmm7, dword [rbp - 0x48]
movss xmm14, dword [rbp - 0x30]
movss xmm15, dword [rbp - 0x38]
test bl, bl
je 0x1800df99a
mov rax, qword [0x1801dc9a8]
movaps xmm2, xmm7
movss xmm3, dword [rbp - 0x40]
movss xmm1, dword [rbp - 0x50]
movss xmm0, dword [rbp - 0x58]
mov ecx, dword [rax + 0x161]
mov dword [rsp + 0x40], ecx
mov ecx, dword [rax + 0x15d]
mov dword [rsp + 0x38], ecx
mov ecx, dword [rax + 0x159]
mov dword [rsp + 0x30], ecx
movss dword [rsp + 0x28], xmm14
movss dword [rsp + 0x20], xmm15
call fcn.1800e3ab0
mov rax, qword [0x1801dc9a8]
movss xmm0, dword [rbp - 0x78]
movss xmm1, dword [rbp - 0x80]
movss xmm3, dword [rsp + 0x78]
mov ecx, dword [rax + 0x161]
movss xmm2, dword [rbp - 0x60]
mov dword [rsp + 0x40], ecx
mov ecx, dword [rax + 0x15d]
mov dword [rsp + 0x38], ecx
mov ecx, dword [rax + 0x159]
mov dword [rsp + 0x30], ecx
movss dword [rsp + 0x28], xmm0
movss xmm0, dword [rbp - 0x70]
movss dword [rsp + 0x20], xmm1
movss xmm1, dword [rbp - 0x68]
call fcn.1800e3ab0
mov rbx, qword [0x1801dc9c8]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rax, qword [rbx + 0x18]
jne 0x1800dfb87
mov ecx, reloc.WS2_32.dll_recvfrom
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1800dfb87
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, dword [0x180259a98]
add edx, dword [0x1801d9f84]
cmp edx, eax
jae 0x1800dfb87
mov rcx, qword [0x1801dc900]
call fcn.180013fd0
mov r8, qword [0x1801dc900]
mov qword [rsp + 0x70], 0
mov dword [rsp + 0x70], esi
mov rax, qword [rsp + 0x70]
mov edx, dword [r8 + 8]
mov qword [r8 + rdx*8 + 0x130], rax
movabs rdx, 0x49c32d60007afa47
inc dword [r8 + 8]
mov rcx, qword [0x1801dc900]
call fcn.180014050
mov rax, qword [0x1801dc900]
mov rdx, qword [rax]
cmp dword [rdx], 0
je 0x1800dfb87
mov ecx, r14d
call fcn.180068860
mov rcx, qword [0x1801dc900]
mov ebx, eax
call fcn.180013fd0
mov rdx, qword [0x1801dc900]
mov qword [rsp + 0x70], 0
mov dword [rsp + 0x70], ebx
mov rax, qword [rsp + 0x70]
mov ecx, dword [rdx + 8]
mov qword [rdx + rcx*8 + 0x130], rax
inc dword [rdx + 8]
lea rdx, [rbp - 0x10]
mov rcx, qword [0x1801dc900]
mov eax, dword [rcx + 8]
mov qword [rcx + rax*8 + 0x130], rdx
lea rdx, [rbp - 0x28]
inc dword [rcx + 8]
mov rcx, qword [0x1801dc900]
mov eax, dword [rcx + 8]
mov qword [rcx + rax*8 + 0x130], rdx
movabs rdx, 0x3e8d3d5f549087a
inc dword [rcx + 8]
mov rcx, qword [0x1801dc900]
call fcn.180014050
mov ecx, edi
call fcn.1800e3a40
movss xmm0, dword [rbp - 0x40]
movaps xmm3, xmm7
movss xmm6, dword [0x18018509c]
movss xmm2, dword [rbp - 0x50]
movss xmm1, dword [rbp - 0x58]
movss dword [rsp + 0x68], xmm6
mov byte [rsp + 0x60], 0
mov byte [rsp + 0x58], 1
mov dword [rsp + 0x50], r15d
mov dword [rsp + 0x48], edi
mov byte [rsp + 0x40], 1
cvttss2si ebx, xmm8
mov dword [rsp + 0x38], ebx
movss dword [rsp + 0x30], xmm14
movss dword [rsp + 0x28], xmm15
movss dword [rsp + 0x20], xmm0
call fcn.1800696b0
movss xmm0, dword [rbp - 0x78]
movss xmm3, dword [rbp - 0x60]
movss xmm2, dword [rbp - 0x68]
movss xmm1, dword [rbp - 0x70]
movss dword [rsp + 0x68], xmm6
mov byte [rsp + 0x60], 0
mov byte [rsp + 0x58], 1
mov dword [rsp + 0x50], r15d
mov dword [rsp + 0x48], edi
mov byte [rsp + 0x40], 1
mov dword [rsp + 0x38], ebx
movss dword [rsp + 0x30], xmm0
movss xmm0, dword [rbp - 0x80]
movss dword [rsp + 0x28], xmm0
movss xmm0, dword [rsp + 0x78]
movss dword [rsp + 0x20], xmm0
call fcn.1800696b0
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x180259a98], eax
movaps xmm14, xmmword [rsp + 0x120]
movaps xmm7, xmmword [rsp + 0x140]
movaps xmm6, xmmword [rsp + 0x150]
mov r15, qword [rsp + 0x190]
mov r14, qword [rsp + 0x188]
mov rsi, qword [rsp + 0x180]
movaps xmm15, xmmword [rsp + 0x110]
mov rcx, qword [rbp + 8]
xor rcx, rsp
call fcn.1801320c0
movaps xmm8, xmmword [rsp + 0x130]
add rsp, 0x160
pop rdi
pop rbx
pop rbp
ret