Function at 0x1006ac20
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x44
mov eax, dword [0x10331c40]
xor eax, ebp
mov dword [ebp - 4], eax
cmp byte [section..data], 0
push ebx
mov ebx, ecx
mov dword [ebp - 0x24], ebx
jne 0x1006aed6
push esi
push edi
nop word [eax + eax]
mov esi, 1
push esi
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
movzx ecx, ax
mov eax, dword [ebx]
lea eax, [eax + esi*2]
xchg word [eax], cx
inc esi
cmp esi, 0xff
jl 0x1006ac55
mov ecx, dword [0x1020a01c]
test ecx, ecx
jle 0x1006aea8
mov eax, 0x3e8
cdq
idiv ecx
cdq
mov edi, eax
mov dword [ebp - 0x18], edx
lea eax, [ebp - 0x3c]
push eax
call fcn.1006aef0
mov ecx, dword [ebp - 0x18]
mov eax, edi
mov esi, dword [ebp - 0x3c]
add esp, 4
or eax, ecx
mov ebx, dword [ebp - 0x38]
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x1c], ebx
je 0x1006ad05
test ecx, ecx
jl 0x1006ad05
jg 0x1006acb7
test edi, edi
jb 0x1006ad05
push 0xffffffffffffffff
push 0xfff0bdc0
push ecx
push edi
call fcn.10155b50
add eax, 0xffffffff
adc edx, 0x7fffffff
cmp esi, eax
jne 0x1006acd6
cmp ebx, edx
je 0x1006acf7
cmp ebx, edx
jg 0x1006acf7
jl 0x1006ace0
cmp esi, eax
jae 0x1006acf7
mov edx, dword [ebp - 0x18]
push 0
push 0xf4240
push edx
push edi
call fcn.10155b50
add esi, eax
adc edx, ebx
jmp 0x1006acff
or esi, 0xffffffff
mov edx, 0x7fffffff
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x20], esi
call sub.MSVCP140.dll__Query_perf_frequency
mov edi, eax
mov esi, edx
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x34], esi
call sub.MSVCP140.dll__Query_perf_counter
mov ebx, eax
mov eax, edx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x28], eax
cmp edi, 0x989680
jne 0x1006ad46
test esi, esi
jne 0x1006ad46
mov ecx, 0x64
mul ecx
mov ebx, eax
mov eax, dword [ebp - 0x18]
mul ecx
add ebx, edx
mov esi, eax
jmp 0x1006adf6
cmp edi, 0x16e3600
jne 0x1006ada7
test esi, esi
jne 0x1006ada7
push esi
push edi
push eax
push ebx
call fcn.10155aa0
push 0
push 0x16e3600
mov esi, edx
mov edi, eax
push esi
push edi
call fcn.10155b50
sub ebx, eax
mov eax, dword [ebp - 0x28]
push 0
push 0x3b9aca00
sbb eax, edx
push eax
push ebx
call fcn.10155b50
push 0
push 0x16e3600
push edx
push eax
call fcn.10155aa0
mov dword [ebp - 0x28], eax
mov ecx, 0x3b9aca00
mov eax, esi
mov ebx, edx
mov esi, dword [ebp - 0x28]
mul ecx
mov ecx, eax
mov eax, edi
jmp 0x1006ade9
push ebx
push esi
push edi
push eax
push ebx
call fcn.10155e10
mov esi, ebx
pop ebx
nop
push 0
push 0x3b9aca00
push esi
push ecx
mov ebx, eax
mov edi, edx
call fcn.10155b50
push dword [ebp - 0x34]
push dword [ebp - 0x2c]
push edx
push eax
call fcn.10155aa0
mov esi, eax
mov dword [ebp - 0x2c], edx
mov ecx, 0x3b9aca00
mov eax, edi
mul ecx
mov ecx, eax
mov eax, ebx
mov ebx, dword [ebp - 0x2c]
mov edx, 0x3b9aca00
mul edx
add ecx, edx
add esi, eax
adc ebx, ecx
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
cmp eax, esi
jne 0x1006ae08
cmp ecx, ebx
je 0x1006aec4
cmp ecx, ebx
jl 0x1006aec4
jg 0x1006ae1a
cmp eax, esi
jb 0x1006aec4
sub eax, esi
mov esi, ecx
mov dword [ebp - 0x18], eax
sbb esi, ebx
mov dword [ebp - 0x2c], esi
call sub.MSVCP140.dll__Xtime_get_ticks
push 0
push 0x64
push edx
push eax
call fcn.10155b50
mov ecx, dword [ebp - 0x18]
mov ebx, edx
mov edx, esi
mov edi, eax
call fcn.101558c0
comisd xmm0, xmmword [0x101c8f08]
mov esi, edi
mov eax, ebx
jbe 0x1006ae68
add esi, 0xad160000
mov dword [ebp - 0x18], 0xad160000
mov ecx, 0x311cd
adc eax, ecx
jmp 0x1006ae70
add esi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x2c]
adc eax, ecx
add edi, dword [ebp - 0x18]
push 0
push 0x3b9aca00
adc ebx, ecx
mov dword [ebp - 0x2c], eax
push ebx
push edi
call fcn.10155aa0
mov dword [ebp - 0x14], eax
imul eax, eax, 0x3b9aca00
mov dword [ebp - 0x10], edx
sub esi, eax
lea eax, [ebp - 0x14]
push eax
mov dword [ebp - 0xc], esi
call sub.MSVCP140.dll__Thrd_sleep
add esp, 4
jmp 0x1006ad05
lea eax, [ebp - 0x44]
mov dword [ebp - 0x44], 0xf
push eax
mov dword [ebp - 0x40], 0
call fcn.1006a950
add esp, 4
jmp 0x1006aec7
mov ebx, dword [ebp - 0x24]
cmp byte [section..data], 0
je 0x1006ac50
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop ebx
call fcn.101556c2
mov esp, ebp
pop ebp
ret