Function at 0x180001df0
Capabilities:
Log keystrokes via polling

Disassembly:
push rbx
sub rsp, 0x30
lea rbx, [rcx + 0x6b8]
cmp rbx, 0x400000
jbe 0x180001ffc
mov qword [rsp + 0x48], rsi
lea rax, [rcx + 0x6c0]
movabs rsi, 0x7fffffff0000
cmp rax, rsi
jae 0x180001ff7
mov rbx, qword [rbx]
test rbx, rbx
je 0x180001ff7
mov rax, qword gs:[0x58]
mov ecx, dword [0x180080264]
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x50], rdi
mov ebp, 4
mov rdi, qword [rax + rcx*8]
movaps xmmword [rsp + 0x20], xmm6
mov eax, dword [rdi + rbp]
cmp dword [0x180082afc], eax
jg 0x180002002
mov eax, dword [rdi + rbp]
xorps xmm6, xmm6
cmp dword [0x180082b20], eax
jg 0x180002055
mov eax, dword [rdi + rbp]
cmp dword [0x180082b60], eax
jg 0x1800020ac
mov eax, dword [rdi + rbp]
cmp dword [0x180082bb8], eax
mov rdi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x40]
jg 0x180002103
movzx eax, byte [0x180080825]
movaps xmm6, xmmword [rsp + 0x20]
test al, al
je 0x180001ec7
mov ecx, 0x58
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movzx eax, byte [0x180080825]
lea rcx, [rbx + 0x149]
test al, al
je 0x180001f61
cmp rcx, 0x400000
jbe 0x180001eee
lea rax, [rbx + 0x14a]
cmp rax, rsi
jae 0x180001eee
mov byte [rcx], 1
lea rcx, [rbx + 0xc8]
xor edx, edx
cmp rcx, 0x400000
jbe 0x180001f0e
lea rax, [rbx + 0xcc]
cmp rax, rsi
jae 0x180001f0e
mov dword [rcx], edx
lea rcx, [rbx + 0x84]
cmp rcx, 0x400000
jbe 0x180001f2c
lea rax, [rbx + 0x88]
cmp rax, rsi
jae 0x180001f2c
mov dword [rcx], edx
lea rcx, [rbx + 0x88]
cmp rcx, 0x400000
jbe 0x180001ff7
lea rax, [rbx + 0x8c]
cmp rax, rsi
jae 0x180001ff7
mov rsi, qword [rsp + 0x48]
mov dword [rcx], 0x3f800000
add rsp, 0x30
pop rbx
ret
cmp rcx, 0x400000
jbe 0x180001f7f
lea rax, [rbx + 0x14a]
cmp rax, rsi
jae 0x180001f7f
movzx eax, byte [0x180082b70]
mov byte [rcx], al
lea rcx, [rbx + 0xc8]
cmp rcx, 0x400000
jbe 0x180001fa7
lea rax, [rbx + 0xcc]
cmp rax, rsi
jae 0x180001fa7
movss xmm0, dword [0x180082ba8]
movss dword [rcx], xmm0
lea rcx, [rbx + 0x84]
cmp rcx, 0x400000
jbe 0x180001fcf
lea rax, [rbx + 0x88]
cmp rax, rsi
jae 0x180001fcf
movss xmm0, dword [0x180082b30]
movss dword [rcx], xmm0
lea rcx, [rbx + 0x88]
cmp rcx, 0x400000
jbe 0x180001ff7
lea rax, [rbx + 0x8c]
cmp rax, rsi
jae 0x180001ff7
movss xmm0, dword [0x180082b08]
movss dword [rcx], xmm0
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rbx
ret
lea rcx, [0x180082afc]
call fcn.18004d598
cmp dword [0x180082afc], 0xffffffff
jne 0x180001e6b
lea rcx, [rbx + 0x149]
cmp rcx, 0x400000
jbe 0x18000203c
lea rax, [rbx + 0x14a]
cmp rax, rsi
jae 0x18000203c
movzx eax, byte [rcx]
jmp 0x18000203e
xor al, al
lea rcx, [0x180082afc]
mov byte [0x180082b70], al
call fcn.18004d52c
jmp 0x180001e6b
lea rcx, [0x180082b20]
call fcn.18004d598
cmp dword [0x180082b20], 0xffffffff
jne 0x180001e7d
lea rcx, [rbx + 0xc8]
cmp rcx, 0x400000
jbe 0x180002090
lea rax, [rbx + 0xcc]
cmp rax, rsi
jae 0x180002090
movss xmm0, dword [rcx]
jmp 0x180002093
xorps xmm0, xmm0
lea rcx, [0x180082b20]
movss dword [0x180082ba8], xmm0
call fcn.18004d52c
jmp 0x180001e7d
lea rcx, [0x180082b60]
call fcn.18004d598
cmp dword [0x180082b60], 0xffffffff
jne 0x180001e8c
lea rcx, [rbx + 0x84]
cmp rcx, 0x400000
jbe 0x1800020e7
lea rax, [rbx + 0x88]
cmp rax, rsi
jae 0x1800020e7
movss xmm0, dword [rcx]
jmp 0x1800020ea
xorps xmm0, xmm0
lea rcx, [0x180082b60]
movss dword [0x180082b30], xmm0
call fcn.18004d52c
jmp 0x180001e8c
lea rcx, [0x180082bb8]
call fcn.18004d598
cmp dword [0x180082bb8], 0xffffffff
jne 0x180001ea5
lea rcx, [rbx + 0x88]
cmp rcx, 0x400000
jbe 0x18000213c
lea rax, [rbx + 0x8c]
cmp rax, rsi
jae 0x18000213c
movss xmm6, dword [rcx]
lea rcx, [0x180082bb8]
movss dword [0x180082b08], xmm6
call fcn.18004d52c
jmp 0x180001ea5