Function at 0x1800175d0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x30
mov rcx, qword [0x180202080]
call fcn.18001a600
xor esi, esi
movabs rdi, 0x7fffffff0000
cmp byte [0x1802024de], sil
je 0x180017661
mov rcx, qword [0x180202080]
add rcx, 0x4b0
cmp rcx, 0x40000
jbe 0x180017661
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180017661
mov rcx, qword [rcx]
mov rdx, rcx
lea r8, [rcx + 0xa4]
cmp r8, 0x40000
jbe 0x180017646
lea rax, [r8 + 4]
cmp rax, rdi
jae 0x180017646
mov dword [r8], esi
lea rcx, [rdx + 0xa8]
cmp rcx, 0x40000
jbe 0x180017661
lea rax, [rcx + 4]
cmp rax, rdi
jae 0x180017661
mov dword [rcx], esi
cmp byte [0x1802024dc], sil
je 0x180017676
mov rcx, qword [0x180202080]
call fcn.18001a600
cmp byte [0x1802024dd], sil
lea rbp, str.user32
je 0x180017795
mov rax, qword [0x180202810]
test rax, rax
jne 0x1800176ce
mov dword [rsp + 0x20], 0xe000c
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x28], rbp
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
call fcn.1800173f0
mov rcx, rax
lea rdx, [0x18006c888]
call fcn.180011310
mov qword [0x180202810], rax
mov ecx, dword [0x1802024e0]
call rax
mov rcx, qword [0x1802027d0]
add rcx, 0x23f7490
test ax, ax
je 0x180017742
cmp rcx, 0x40000
jbe 0x180017795
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180017795
mov rcx, qword [rcx]
add rcx, 0xb8
cmp rcx, 0x40000
jbe 0x180017795
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180017795
mov rcx, qword [rcx]
add rcx, 0x18
cmp rcx, 0x40000
jbe 0x180017795
lea rax, [rcx + 4]
cmp rax, rdi
jae 0x180017795
movss xmm0, dword [0x180200dbc]
jmp 0x180017791
cmp rcx, 0x40000
jbe 0x180017795
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180017795
mov rcx, qword [rcx]
add rcx, 0xb8
cmp rcx, 0x40000
jbe 0x180017795
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180017795
mov rcx, qword [rcx]
add rcx, 0x18
cmp rcx, 0x40000
jbe 0x180017795
lea rax, [rcx + 4]
cmp rax, rdi
jae 0x180017795
movss xmm0, dword [0x180200db8]
movss dword [rcx], xmm0
cmp byte [0x1802024af], sil
je 0x180017828
mov ecx, 0x20
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180017828
mov rcx, qword [0x180202080]
add rcx, 0x4b0
cmp rcx, 0x40000
jbe 0x180017828
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180017828
mov rdx, qword [rcx]
mov r8, rdx
lea rcx, [rdx + 0xa8]
cmp rcx, 0x40000
jbe 0x1800177fb
lea rax, [rcx + 0xc]
cmp rax, rdi
jae 0x1800177fb
mov dword [rcx], esi
mov qword [rcx + 4], 0x49742400
lea rcx, [r8 + 0xa4]
cmp rcx, 0x40000
jbe 0x180017828
lea rax, [rcx + 0xc]
cmp rax, rdi
jae 0x180017828
mov dword [rcx], 0x4b18967f
mov dword [rcx + 4], 0x4b18967f
mov dword [rcx + 8], 0x4b18967f
cmp byte [0x1802024ea], sil
je 0x18001788e
mov rcx, qword [0x1802027d0]
add rcx, 0x31badf8
cmp rcx, 0x40000
jbe 0x18001788e
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x18001788e
mov rcx, qword [rcx]
add rcx, 0xb8
cmp rcx, 0x40000
jbe 0x18001788e
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x18001788e
mov rcx, qword [rcx]
cmp rcx, 0x40000
jbe 0x18001788e
lea rax, [rcx + 4]
cmp rax, rdi
jae 0x18001788e
movss xmm0, dword [0x180200dc8]
movss dword [rcx], xmm0
cmp byte [0x180202407], sil
je 0x1800178bd
mov rcx, qword [0x180202080]
add rcx, 0x510
cmp rcx, 0x40000
jbe 0x1800178bd
lea rax, [rcx + 4]
cmp rax, rdi
jae 0x1800178bd
mov dword [rcx], 0x3f800000
cmp byte [0x1802024e9], sil
je 0x180017903
mov rcx, qword [0x180202080]
add rcx, 0x480
cmp rcx, 0x40000
jbe 0x180017903
lea rax, [rcx + 4]
cmp rax, rdi
jae 0x1800178ea
mov edx, dword [rcx]
jmp 0x1800178fe
cmp rcx, 0x40000
jbe 0x180017903
lea rax, [rcx + 4]
mov edx, esi
cmp rax, rdi
jae 0x180017903
or edx, 4
mov dword [rcx], edx
cmp byte [0x180202395], sil
xorps xmm0, xmm0
je 0x180017951
mov rcx, qword [0x180202080]
add rcx, 0x4a8
cmp rcx, 0x40000
jbe 0x180017951
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180017951
mov rcx, qword [rcx]
add rcx, 0x64
cmp rcx, 0x40000
jbe 0x180017951
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180017951
movss dword [rcx], xmm0
movss dword [rcx + 4], xmm0
cmp byte [0x1802023fa], sil
je 0x18001799c
mov rcx, qword [0x180202080]
add rcx, 0x4a8
cmp rcx, 0x40000
jbe 0x18001799c
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x18001799c
mov rcx, qword [rcx]
add rcx, 0x64
cmp rcx, 0x40000
jbe 0x18001799c
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x18001799c
movss dword [rcx], xmm0
movss dword [rcx + 4], xmm0
cmp byte [0x1802024be], sil
je 0x1800179f9
mov ecx, dword [0x1802024c0]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1800179f9
mov rcx, qword [0x180202080]
add rcx, 0x488
cmp rcx, 0x40000
jbe 0x1800179f9
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x1800179f9
mov rcx, qword [rcx]
add rcx, 0x38
cmp rcx, 0x40000
jbe 0x1800179f9
lea rax, [rcx + 0xc]
cmp rax, rdi
jae 0x1800179f9
mov dword [rcx], esi
mov qword [rcx + 4], 0x3fc00000
cmp byte [0x1802024c9], sil
mov qword [rsp + 0x50], rbx
je 0x180017ab4
mov ecx, dword [0x1802024d0]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180017ab4
mov rax, qword [0x180202820]
mov rbx, qword [0x180202080]
test rax, rax
jne 0x180017a6b
mov dword [rsp + 0x20], 0xe000c
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x28], rbp
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
call fcn.1800173f0
mov rcx, rax
lea rdx, [0x18006c888]
call fcn.180011310
mov qword [0x180202820], rax
mov ecx, dword [0x1802024d0]
call rax
test ax, ax
je 0x180017ab4
lea rcx, [rbx + 0x488]
cmp rcx, 0x40000
jbe 0x180017ab4
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180017ab4
mov rcx, qword [rcx]
add rcx, 0x38
cmp rcx, 0x40000
jbe 0x180017ab4
lea rax, [rcx + 0xc]
cmp rax, rdi
jae 0x180017ab4
mov qword [rcx], 0x3f800000
mov dword [rcx + 8], esi
cmp byte [0x1802024c8], sil
je 0x180017b6a
mov ecx, dword [0x1802024cc]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180017b6a
mov rax, qword [0x180202818]
mov rbx, qword [0x180202080]
test rax, rax
jne 0x180017b21
mov dword [rsp + 0x20], 0xe000c
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x28], rbp
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
call fcn.1800173f0
mov rcx, rax
lea rdx, [0x18006c888]
call fcn.180011310
mov qword [0x180202818], rax
mov ecx, dword [0x1802024cc]
call rax
test ax, ax
je 0x180017b6a
lea rcx, [rbx + 0x488]
cmp rcx, 0x40000
jbe 0x180017b6a
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180017b6a
mov rcx, qword [rcx]
add rcx, 0x38
cmp rcx, 0x40000
jbe 0x180017b6a
lea rax, [rcx + 0xc]
cmp rax, rdi
jae 0x180017b6a
mov dword [rcx], 0xbf800000
mov qword [rcx + 4], rsi
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x30
pop r15
pop r14
pop rdi
ret