Function at 0x140017920
Capabilities:
Log keystrokes via polling

Disassembly:
sub rsp, 0x68
mov rax, qword [0x140108788]
sub rax, qword [0x140108780]
test rax, 0xfffffffffffffff8
je 0x140017c30
movaps xmmword [rsp + 0x50], xmm6
movaps xmmword [rsp + 0x40], xmm7
call fcn.1400174b0
movsd xmm7, qword [0x1400f50b0]
movsd xmm6, qword [0x1400f50a8]
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov ecx, eax
imul rax, rcx, 0xc7
cmp eax, 0x2d
ja 0x140017985
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov ecx, eax
imul rax, rcx, 0xc7
cmp eax, 0x2e
jb 0x140017971
shr rax, 0x20
cdq
mov qword [rsp + 0x78], rbx
sub eax, edx
mov qword [rsp + 0x80], rbp
sar eax, 1
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x60], rdi
movd xmm0, eax
cvtdq2pd xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_round
cvttsd2si eax, xmm0
cmp dword [0x140109fb4], eax
jbe 0x140017aba
cmp byte [0x140109fb0], 0
je 0x1400179ec
mov ecx, dword [str.W_DSA]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400179ec
cmp byte [0x140109fb0], 0
jne 0x140017aba
cmp byte [0x140109e90], 0
je 0x140017aba
mov ecx, dword [0x140109fac]
mov ebp, 0x80000000
mov eax, dword [0x140109fa8]
cmp ecx, ebp
lea esi, [rcx + rbp]
lea edx, [rax + rax]
lea eax, [rcx - 0x80000000]
cmovae esi, eax
lea ecx, [rdx + rbp]
cmp edx, ebp
lea eax, [rdx - 0x80000000]
cmovae ecx, eax
sub ecx, esi
cmp ecx, 0xffffffff
jne 0x140017a3a
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov ecx, eax
jmp 0x140017a74
lea ebx, [rcx + 1]
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov ecx, eax
mov edi, ebx
imul rcx, rdi
cmp ecx, ebx
jae 0x140017a70
mov eax, ebx
xor edx, edx
neg eax
div ebx
mov ebx, edx
cmp ecx, edx
jae 0x140017a70
nop dword [rax]
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov ecx, eax
imul rcx, rdi
cmp ecx, ebx
jb 0x140017a60
shr rcx, 0x20
lea edx, [rsi + rcx]
cmp edx, ebp
lea ecx, [rdx + rbp]
lea eax, [rdx - 0x80000000]
cmovae eax, ecx
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_round
cvttsd2si eax, xmm0
movd xmm6, eax
cvtdq2pd xmm6, xmm6
divsd xmm6, qword [0x1400f50b8]
movaps xmm7, xmm6
mulsd xmm7, xmm6
addsd xmm6, qword [0x1400f50a0]
movsd xmm0, qword [0x140108860]
ucomisd xmm0, xmm6
jp 0x140017ace
je 0x140017c0c
movss xmm0, dword [0x140108868]
cvtps2pd xmm0, xmm0
ucomisd xmm0, xmm7
jp 0x140017ae5
je 0x140017c0c
mov rbx, qword [0x140108788]
xor ebp, ebp
sub rbx, qword [0x140108780]
xorps xmm0, xmm0
sar rbx, 3
movabs rsi, 0x1fffffffffffffff
mov qword [rsp + 0x30], rbp
movdqu xmmword [rsp + 0x20], xmm0
test rbx, rbx
je 0x140017b66
cmp rbx, rsi
ja 0x140017c3b
mov rdx, rbx
call fcn.140012750
mov rdx, qword [0x140108780]
mov rdi, rax
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rax
lea rcx, [rax + rbx*8]
mov rbx, qword [0x140108788]
sub rbx, rdx
mov qword [rsp + 0x30], rcx
mov r8, rbx
mov rcx, rax
call sub.VCRUNTIME140.dll_memmove
sar rbx, 3
lea rax, [rdi + rbx*8]
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x20]
movaps xmm0, xmm7
call fcn.14001a090
mov rbx, qword [0x1401087c0]
xorps xmm0, xmm0
sub rbx, qword [0x1401087b8]
sar rbx, 3
mov qword [rsp + 0x30], rbp
movdqu xmmword [rsp + 0x20], xmm0
test rbx, rbx
je 0x140017be8
cmp rbx, rsi
ja 0x140017c35
mov rdx, rbx
call fcn.140012750
mov rdx, qword [0x1401087b8]
mov rdi, rax
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rax
lea rcx, [rax + rbx*8]
mov rbx, qword [0x1401087c0]
sub rbx, rdx
mov qword [rsp + 0x30], rcx
mov r8, rbx
mov rcx, rax
call sub.VCRUNTIME140.dll_memmove
sar rbx, 3
lea rax, [rdi + rbx*8]
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x20]
movaps xmm0, xmm6
call fcn.14001a090
xorps xmm0, xmm0
movsd qword [0x140108860], xmm6
cvtsd2ss xmm0, xmm7
movss dword [0x140108868], xmm0
mov rbp, qword [rsp + 0x80]
mov rdi, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x78]
movaps xmm6, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x40]
add rsp, 0x68
ret
call fcn.140012100
int3
call fcn.140012100
int3