Function at 0x18000f4b0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x80
cmp byte [0x18036f169], 0
movabs rdi, 0x7fffffff0000
movaps xmmword [rsp + 0x50], xmm8
movss xmm8, dword [0x180073124]
movaps xmmword [rsp + 0x40], xmm9
xorps xmm9, xmm9
movaps xmmword [rsp + 0x30], xmm10
movss xmm10, dword [0x180073128]
je 0x18000f5ac
mov rbx, qword [0x18036ee10]
mov ecx, 0x20
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x18000f5ac
lea rcx, [rbx + 0x4e8]
cmp rcx, 0x400000
jbe 0x18000f5ac
lea rax, [rbx + 0x4f0]
cmp rax, rdi
jae 0x18000f5ac
mov rcx, qword [rcx]
mov rdx, rcx
lea r8, [rcx + 0xc8]
cmp r8, 0x400000
jbe 0x18000f575
lea rax, [rcx + 0xd4]
cmp rax, rdi
jae 0x18000f575
xorps xmm0, xmm0
mov dword [rsp + 0x28], 0
mov eax, dword [rsp + 0x28]
unpcklps xmm0, xmm10
movsd qword [r8], xmm0
mov dword [r8 + 8], eax
lea rcx, [rdx + 0xc4]
cmp rcx, 0x400000
jbe 0x18000f5ac
lea rax, [rdx + 0xd0]
cmp rax, rdi
jae 0x18000f5ac
movaps xmm0, xmm8
mov dword [rsp + 0x28], 0x47c34f80
mov eax, dword [rsp + 0x28]
unpcklps xmm0, xmm8
movsd qword [rcx], xmm0
mov dword [rcx + 8], eax
cmp byte [0x18036f176], 0
je 0x18000f620
mov rax, qword [0x18036ee10]
lea rcx, [rax + 0x72c]
add rax, 0x730
cmp rcx, 0x400000
jbe 0x18000f620
cmp rax, rdi
jae 0x18000f620
movss xmm0, dword [rcx]
ucomiss xmm0, xmm9
je 0x18000f60c
comiss xmm0, dword [0x180072f7c]
jbe 0x18000f5fb
comiss xmm0, dword [0x180072f90]
jae 0x18000f5fb
mov dword [rcx], 0x3e19999a
jmp 0x18000f620
comiss xmm0, dword [0x180072f94]
jbe 0x18000f620
mov dword [rcx], 0x3e800000
jmp 0x18000f620
cmp rcx, 0x400000
jbe 0x18000f620
cmp rax, rdi
jae 0x18000f620
mov dword [rcx], 0xbdcccccd
xor ebx, ebx
cmp byte [0x18036f137], bl
je 0x18000f68f
mov rax, qword [0x18036ee10]
lea rcx, [rax + 0x4e8]
cmp rcx, 0x400000
jbe 0x18000f68f
add rax, 0x4f0
cmp rax, rdi
jae 0x18000f68f
mov rcx, qword [rcx]
mov rdx, rcx
lea r8, [rcx + 0xc4]
cmp r8, 0x400000
jbe 0x18000f671
lea rax, [rcx + 0xc8]
cmp rax, rdi
jae 0x18000f671
mov dword [r8], ebx
lea rcx, [rdx + 0xc8]
cmp rcx, 0x400000
jbe 0x18000f68f
lea rax, [rdx + 0xcc]
cmp rax, rdi
jae 0x18000f68f
mov dword [rcx], ebx
cmp byte [0x18036f0ff], bl
je 0x18000f6a3
mov rcx, qword [0x18036ee10]
call fcn.18000fa10
cmp byte [0x18036f143], bl
je 0x18000f6e8
mov rax, qword [0x18036ee10]
lea rcx, [rax + 0x658]
lea rdx, [rax + 0x65c]
cmp rcx, 0x400000
jbe 0x18000f6e8
cmp rdx, rdi
jae 0x18000f6d2
mov eax, dword [rcx]
jmp 0x18000f6e2
cmp rcx, 0x400000
jbe 0x18000f6e8
mov eax, ebx
cmp rdx, rdi
jae 0x18000f6e8
bts eax, 0xb
mov dword [rcx], eax
cmp byte [0x18036f09c], bl
je 0x18000f733
mov rax, qword [0x18036ee10]
lea rcx, [rax + 0x5f0]
cmp rcx, 0x400000
jbe 0x18000f733
add rax, 0x5f8
cmp rax, rdi
jae 0x18000f733
mov rax, qword [rcx]
lea rcx, [rax + 0x2b0]
cmp rcx, 0x400000
jbe 0x18000f733
add rax, 0x2b1
cmp rax, rdi
jae 0x18000f733
mov byte [rcx], 1
cmp byte [0x18036f14e], bl
je 0x18000f79c
mov rax, qword [0x18036f520]
lea rcx, [rax + 0x32950d8]
cmp rcx, 0x400000
jbe 0x18000f79c
add rax, 0x32950e0
cmp rax, rdi
jae 0x18000f79c
mov rax, qword [rcx]
lea rcx, [rax + 0xb8]
cmp rcx, 0x400000
jbe 0x18000f79c
add rax, 0xc0
cmp rax, rdi
jae 0x18000f79c
mov rcx, qword [rcx]
cmp rcx, 0x400000
jbe 0x18000f79c
lea rax, [rcx + 4]
cmp rax, rdi
jae 0x18000f79c
movss xmm0, dword [0x180210714]
movss dword [rcx], xmm0
cmp byte [0x18036f0c6], bl
je 0x18000f95b
mov rax, qword [0x18036ee10]
movaps xmmword [rsp + 0x70], xmm6
movaps xmmword [rsp + 0x60], xmm7
lea rcx, [rax + 0x660]
cmp rcx, 0x400000
jbe 0x18000f7d7
add rax, 0x668
cmp rax, rdi
jae 0x18000f7d7
mov rbx, qword [rcx]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
imul ecx, eax, 0xf41e6
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
imul ecx, eax, 0xf41e6
movd xmm7, ecx
cvtdq2ps xmm7, xmm7
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
imul ecx, eax, 0xf41e6
movd xmm0, ecx
lea rcx, [rbx + 0x38]
cvtdq2ps xmm0, xmm0
cmp rcx, 0x400000
jbe 0x18000f834
lea rax, [rbx + 0x44]
cmp rax, rdi
jae 0x18000f834
movss dword [rcx], xmm0
movss dword [rcx + 4], xmm7
movss dword [rcx + 8], xmm6
mov rax, qword [0x18036f520]
movaps xmm7, xmmword [rsp + 0x60]
movaps xmm6, xmmword [rsp + 0x70]
lea rcx, [rax + 0x32950d8]
cmp rcx, 0x400000
jbe 0x18000f8c0
add rax, 0x32950e0
cmp rax, rdi
jae 0x18000f8c0
mov rax, qword [rcx]
lea rbx, [rax + 0xb8]
cmp rbx, 0x400000
jbe 0x18000f8c0
add rax, 0xc0
cmp rax, rdi
jae 0x18000f8c0
mov rbx, qword [rbx]
cmp rbx, 0x400000
jbe 0x18000f8c0
lea rax, [rbx + 4]
cmp rax, rdi
jae 0x18000f8c0
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0xd
sub r8d, ecx
movd xmm0, r8d
cvtdq2ps xmm0, xmm0
movss dword [rbx], xmm0
mov rax, qword [0x18036ee10]
lea rcx, [rax + 0x4e8]
cmp rcx, 0x400000
jbe 0x18000f95b
add rax, 0x4f0
cmp rax, rdi
jae 0x18000f95b
mov rcx, qword [rcx]
mov rdx, rcx
lea r8, [rcx + 0xc8]
cmp r8, 0x400000
jbe 0x18000f924
lea rax, [rcx + 0xd4]
cmp rax, rdi
jae 0x18000f924
xorps xmm0, xmm0
mov dword [rsp + 0x28], 0
mov eax, dword [rsp + 0x28]
unpcklps xmm0, xmm10
movsd qword [r8], xmm0
mov dword [r8 + 8], eax
lea rcx, [rdx + 0xc4]
cmp rcx, 0x400000
jbe 0x18000f95b
lea rax, [rdx + 0xd0]
cmp rax, rdi
jae 0x18000f95b
movaps xmm0, xmm8
mov dword [rsp + 0x28], 0x47c34f80
mov eax, dword [rsp + 0x28]
unpcklps xmm0, xmm8
movsd qword [rcx], xmm0
mov dword [rcx + 8], eax
mov rbx, qword [rsp + 0x90]
movaps xmm8, xmmword [rsp + 0x50]
movaps xmm9, xmmword [rsp + 0x40]
movaps xmm10, xmmword [rsp + 0x30]
add rsp, 0x80
pop rdi
ret