Function at 0x140074240
Capabilities:
Log keystrokes via polling

Disassembly:
mov r11, rsp
mov qword [r11 + 0x18], rsi
push rbp
lea rbp, [r11 - 0x2c8]
sub rsp, 0x3c0
movaps xmmword [r11 - 0x18], xmm6
movaps xmmword [r11 - 0x28], xmm7
movaps xmmword [r11 - 0x48], xmm9
movaps xmmword [r11 - 0x58], xmm10
movaps xmmword [r11 - 0x88], xmm13
movaps xmmword [r11 - 0x98], xmm14
mov rax, qword [0x14012c040]
xor rax, rsp
mov qword [rbp + 0x210], rax
movss xmm10, dword [0x1401166d4]
xor esi, esi
movss xmm6, dword [0x140116700]
movss xmm9, dword [0x1401167a0]
movss xmm13, dword [0x1401167ac]
movss xmm7, dword [0x1401167a8]
movss xmm14, dword [0x140116720]
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rdi
movaps xmmword [r11 - 0x38], xmm8
movaps xmmword [r11 - 0x68], xmm11
movaps xmmword [r11 - 0x78], xmm12
movaps xmmword [r11 - 0xa8], xmm15
mov edx, dword [0x1401459cc]
lea rcx, [rbp - 0x28]
call fcn.140073e00
lea rcx, [rbp + 0x130]
lea rcx, [rcx + 0x80]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx - 0x80], xmm0
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx - 0x70], xmm1
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx - 0x60], xmm0
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx - 0x50], xmm1
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx - 0x40], xmm0
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx - 0x30], xmm1
movups xmm1, xmmword [rax + 0x70]
sub rax, 0xffffffffffffff80
movups xmmword [rcx - 0x20], xmm0
movups xmmword [rcx - 0x10], xmm1
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx], xmm0
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x10], xmm1
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x20], xmm0
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x30], xmm1
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x40], xmm0
movups xmmword [rcx + 0x50], xmm1
mov ecx, dword [0x140197f88]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1400748d4
movsd xmm8, qword [rbp + 0x1a4]
xorps xmm0, xmm0
movss xmm12, dword [rbp + 0x1ac]
xorps xmm2, xmm2
xorps xmm11, xmm11
mov dword [rbp - 0x78], esi
unpcklps xmm0, xmm11
movsd xmm2, xmm0
movaps xmm0, xmm12
movlhps xmm8, xmm0
movss xmm0, dword [rbp - 0x78]
movlhps xmm2, xmm0
cmpeqps xmm2, xmm8
movmskps eax, xmm2
and eax, 7
cmp al, 7
je 0x1400748d4
mov rdx, qword [0x140197fd8]
lea r8, [rbp + 0x120]
add rdx, qword [0x140197fb0]
mov r9d, 8
mov rcx, qword [0x140197f48]
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rbx, qword [rbp + 0x120]
lea r8, [rbp + 0xf8]
mov rcx, qword [0x140197f48]
mov r9d, 0xc
mov qword [rbp + 0xf8], rsi
mov dword [rbp + 0x100], esi
lea rdx, [rbx + 0x3d0]
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x140197f48]
lea rdx, [rbx + 0x60]
mov r9d, 0xc
mov qword [rbp + 0xb8], rsi
lea r8, [rbp + 0xb8]
mov dword [rbp + 0xc0], esi
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov eax, dword [0x140197f94]
mov qword [rbp + 0xc8], rsi
mov dword [rbp + 0xd0], esi
test eax, eax
jne 0x140074515
xorps xmm2, xmm2
mov dword [rbp - 0x6c], esi
xorps xmm0, xmm0
unpcklps xmm0, xmm11
movsd xmm2, xmm0
movss xmm0, dword [rbp - 0x6c]
movlhps xmm2, xmm0
cmpeqps xmm2, xmm8
movmskps eax, xmm2
and eax, 7
cmp al, 7
je 0x140074b2d
movss xmm0, dword [rbp + 0xc0]
movss xmm15, dword [rbp + 0xb8]
subss xmm0, xmm12
movss xmm8, dword [rbp + 0x1a4]
movaps xmm1, xmm15
movss xmm2, dword [rbp + 0xbc]
subss xmm1, xmm8
movss xmm11, dword [rbp + 0x1a8]
subss xmm2, xmm11
mulss xmm0, xmm0
mulss xmm1, xmm1
mulss xmm2, xmm2
addss xmm2, xmm1
addss xmm2, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1400745c4
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400745cc
cmp eax, 1
jne 0x140074696
movsd xmm3, qword [rbp + 0x204]
xorps xmm0, xmm0
movss xmm12, dword [rbp + 0x20c]
xorps xmm2, xmm2
unpcklps xmm0, xmm11
movsd xmm2, xmm0
mov dword [rbp - 0x60], esi
movss xmm0, dword [rbp - 0x60]
movlhps xmm2, xmm0
movaps xmm0, xmm12
movlhps xmm3, xmm0
cmpeqps xmm2, xmm3
movmskps eax, xmm2
and eax, 7
cmp al, 7
je 0x140074b2d
movss xmm0, dword [rbp + 0xc0]
movss xmm15, dword [rbp + 0xb8]
subss xmm0, xmm12
movss xmm8, dword [rbp + 0x204]
movaps xmm1, xmm15
movss xmm2, dword [rbp + 0xbc]
subss xmm1, xmm8
movss xmm11, dword [rbp + 0x208]
subss xmm2, xmm11
mulss xmm0, xmm0
mulss xmm1, xmm1
mulss xmm2, xmm2
addss xmm2, xmm1
addss xmm2, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1400745c4
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400745cc
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
subss xmm11, dword [rbp + 0xbc]
subss xmm12, dword [rbp + 0xc0]
subss xmm8, xmm15
divss xmm11, xmm0
divss xmm8, xmm0
divss xmm12, xmm0
comiss xmm8, xmm10
movaps xmm0, xmm8
movss dword [rbp + 0xd0], xmm12
unpcklps xmm0, xmm11
movaps xmm1, xmm8
movsd qword [rbp + 0xc8], xmm0
movaps xmm2, xmm8
movaps xmm0, xmm8
jbe 0x14007463b
nop dword [rax]
movaps xmm0, xmm2
subss xmm0, xmm6
comiss xmm0, xmm10
movss dword [rbp + 0xc8], xmm0
movaps xmm2, xmm0
ja 0x140074620
movaps xmm1, xmm0
comiss xmm9, xmm0
jbe 0x140074653
addss xmm1, xmm6
comiss xmm9, xmm1
ja 0x140074641
movss dword [rbp + 0xc8], xmm1
movss xmm0, dword [rbp + 0xcc]
comiss xmm0, xmm6
jbe 0x140074672
addss xmm0, xmm13
comiss xmm0, xmm6
ja 0x140074660
movss dword [rbp + 0xcc], xmm0
comiss xmm7, xmm0
jbe 0x140074692
nop word [rax + rax]
addss xmm0, xmm14
comiss xmm7, xmm0
ja 0x140074680
movss dword [rbp + 0xcc], xmm0
xorps xmm11, xmm11
movsd xmm4, qword [rbp + 0xf8]
movss xmm0, dword [rbp + 0x100]
movsd xmm2, qword [rbp + 0xc8]
movlhps xmm4, xmm0
movss xmm0, dword [rbp + 0xd0]
movlhps xmm2, xmm0
subps xmm2, xmm4
comiss xmm2, xmm10
movaps xmm1, xmm2
movsd qword [rbp + 0xd8], xmm2
shufps xmm1, xmm2, 0xaa
movss dword [rbp + 0xe0], xmm1
jbe 0x1400746f2
nop dword [rax]
addss xmm2, xmm7
comiss xmm2, xmm10
movss dword [rbp + 0xd8], xmm2
ja 0x1400746e0
comiss xmm9, xmm2
jbe 0x140074712
nop dword [rax + rax]
addss xmm2, xmm6
comiss xmm9, xmm2
movss dword [rbp + 0xd8], xmm2
ja 0x140074700
movss xmm0, dword [rbp + 0xdc]
comiss xmm0, xmm6
jbe 0x140074732
nop
addss xmm0, xmm13
comiss xmm0, xmm6
ja 0x140074720
movss dword [rbp + 0xdc], xmm0
comiss xmm7, xmm0
jbe 0x140074752
nop word [rax + rax]
addss xmm0, xmm14
comiss xmm7, xmm0
ja 0x140074740
movss dword [rbp + 0xdc], xmm0
mov eax, dword [0x1401459f4]
test eax, eax
je 0x1400747a0
movsd xmm3, qword [rbp + 0xd8]
movss xmm0, dword [rbp + 0xe0]
movss xmm2, dword [0x1401165cc]
movlhps xmm3, xmm0
movd xmm0, eax
lea rax, [rsp + 0x40]
cvtdq2ps xmm0, xmm0
divss xmm2, xmm0
shufps xmm2, xmm2, 0
mulps xmm3, xmm2
movsd qword [rsp + 0x40], xmm3
shufps xmm3, xmm3, 0xaa
movss dword [rsp + 0x48], xmm3
jmp 0x1400747b9
movsd xmm0, qword [rbp + 0xd8]
lea rax, [rsp + 0x4c]
movsd qword [rsp + 0x4c], xmm0
movss dword [rsp + 0x54], xmm1
movsd xmm2, qword [rax]
movss xmm0, dword [rax + 8]
movlhps xmm2, xmm0
addps xmm2, xmm4
comiss xmm2, xmm10
movaps xmm8, xmm2
movsd qword [rbp + 0xe8], xmm2
shufps xmm8, xmm2, 0xaa
movss dword [rbp + 0xf0], xmm8
jbe 0x140074802
nop dword [rax + rax]
addss xmm2, xmm7
comiss xmm2, xmm10
movss dword [rbp + 0xe8], xmm2
ja 0x1400747f0
comiss xmm9, xmm2
jbe 0x140074822
nop dword [rax + rax]
addss xmm2, xmm6
comiss xmm9, xmm2
movss dword [rbp + 0xe8], xmm2
ja 0x140074810
movss xmm0, dword [rbp + 0xec]
comiss xmm0, xmm6
jbe 0x140074842
nop
addss xmm0, xmm13
comiss xmm0, xmm6
ja 0x140074830
movss dword [rbp + 0xec], xmm0
comiss xmm7, xmm0
jbe 0x140074862
nop word [rax + rax]
addss xmm0, xmm14
comiss xmm7, xmm0
ja 0x140074850
movss dword [rbp + 0xec], xmm0
movsd xmm5, qword [rbp + 0xe8]
xorps xmm3, xmm3
movaps xmm0, xmm5
mov dword [rbp - 0x54], esi
movaps xmm4, xmm0
movaps xmm0, xmm11
unpcklps xmm0, xmm11
movsd xmm3, xmm0
movss xmm0, dword [rbp - 0x54]
movlhps xmm3, xmm0
movss xmm0, dword [rbp + 0xf0]
movlhps xmm4, xmm0
cmpeqps xmm3, xmm4
movmskps eax, xmm3
and eax, 7
cmp al, 7
je 0x1400748d4
mov rcx, qword [0x140197f48]
lea r8, [rsp + 0x60]
mov r9d, 0xc
movss dword [rsp + 0x68], xmm8
lea rdx, [rbx + 0x3d0]
movsd qword [rsp + 0x60], xmm5
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x140197f81], sil
je 0x140074b16
mov edx, dword [0x1401459b8]
lea rcx, [rbp - 0x28]
call fcn.140073e00
lea rcx, [rbp + 0x130]
mov qword [rsp + 0x30], rsi
lea rcx, [rcx + 0x80]
mov dword [rsp + 0x38], esi
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx - 0x80], xmm0
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx - 0x70], xmm1
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx - 0x60], xmm0
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx - 0x50], xmm1
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx - 0x40], xmm0
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx - 0x30], xmm1
movups xmm1, xmmword [rax + 0x70]
sub rax, 0xffffffffffffff80
movups xmmword [rcx - 0x20], xmm0
movups xmmword [rcx - 0x10], xmm1
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx], xmm0
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x10], xmm1
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x20], xmm0
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x30], xmm1
movups xmm1, xmmword [rax + 0x50]
mov eax, dword [0x140197f90]
movups xmmword [rcx + 0x40], xmm0
movups xmmword [rcx + 0x50], xmm1
test eax, eax
jne 0x14007499d
movsd xmm8, qword [rbp + 0x1a4]
mov ebx, dword [rbp + 0x1ac]
movsd qword [rsp + 0x30], xmm8
jmp 0x140074adb
cmp eax, 1
jne 0x1400749bd
movsd xmm8, qword [rbp + 0x1f8]
mov ebx, dword [rbp + 0x200]
movsd qword [rsp + 0x30], xmm8
jmp 0x140074adb
cmp eax, 2
jne 0x140074ad0
cmp byte [0x140198278], sil
jne 0x1400749e6
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov ecx, eax
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_srand]
mov byte [0x140198278], 1
movdqa xmm0, xmmword [0x1401168a0]
mov ecx, 0x24
movdqu xmmword [rbp - 0x50], xmm0
mov dword [rbp - 0x30], 6
movdqa xmm0, xmmword [0x1401168c0]
movdqu xmmword [rbp - 0x40], xmm0
mov qword [rbp + 0x118], rsi
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x108], xmm0
call fcn.14007eff8
mov r8d, 0x24
mov qword [rbp + 0x108], rax
lea rdx, [rbp - 0x50]
mov qword [rbp + 0x110], rax
mov rcx, rax
lea rbx, [rax + 0x24]
mov qword [rbp + 0x118], rbx
call sub.VCRUNTIME140.dll_memmove
mov qword [rbp + 0x110], rbx
sub rbx, qword [rbp + 0x108]
sar rbx, 2
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
cdqe
xor edx, edx
div rbx
lea eax, [rdx - 1]
cdqe
lea rcx, [rax + rax*2]
movsd xmm8, qword [rbp + rcx*4 + 0x1a4]
mov ebx, dword [rbp + rcx*4 + 0x1ac]
mov rcx, qword [rbp + 0x108]
movsd qword [rsp + 0x30], xmm8
test rcx, rcx
je 0x140074adb
mov rdx, qword [rbp + 0x118]
mov rax, rcx
sub rdx, rcx
and rdx, 0xfffffffffffffffc
cmp rdx, 0x1000
jb 0x140074ac9
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140074b26
call fcn.14007eed0
jmp 0x140074adb
mov ebx, dword [rsp + 0x38]
movsd xmm8, qword [rsp + 0x30]
mov ecx, dword [0x140197f98]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x140074b11
lea rcx, [rsp + 0x70]
movsd qword [rsp + 0x70], xmm8
mov dword [rsp + 0x78], ebx
call fcn.1400737c0
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1400742e0
call fcn.140073c50
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1400742e0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
movaps xmm15, xmmword [rsp + 0x320]
movaps xmm12, xmmword [rsp + 0x350]
movaps xmm11, xmmword [rsp + 0x360]
movaps xmm8, xmmword [rsp + 0x390]
mov rdi, qword [rsp + 0x3d8]
mov rbx, qword [rsp + 0x3d0]
mov rcx, qword [rbp + 0x210]
xor rcx, rsp
call fcn.14007ec10
lea r11, [rsp + 0x3c0]
mov rsi, qword [r11 + 0x20]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
mov rsp, r11
pop rbp
ret