Function at 0x1401dfc60
Capabilities:
Check for time delay via gettickcount
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x90
mov r10, qword [0x140698df0]
xor r13d, r13d
cmp edx, 0x7f0a
movaps xmmword [rax - 0x38], xmm6
mov rsi, r9
mov rbp, r8
cmove r10, r9
mov r12d, edx
mov qword [0x140698df0], r10
mov rbx, rcx
mov r15d, r13d
mov r14d, r13d
mov edi, 0x2710
test r10, r10
je 0x1401e02ee
mov eax, edx
sub eax, 0x7f0b
je 0x1401e0039
sub eax, 1
je 0x1401dfdda
sub eax, 1
je 0x1401dfcec
cmp eax, 1
jne 0x1401e013d
mov edi, 0x1388
jmp 0x1401e014b
cmp dword [r10 + 0x78], 2
jle 0x1401e02ee
mov rdx, qword [r10 + 0x80]
test rdx, rdx
je 0x1401e02ee
lea rcx, [r8 + 0x40]
shl rcx, 5
mov r8d, dword [rcx + rdx]
sub r8d, 1
je 0x1401dfd3e
cmp r8d, 1
jne 0x1401e013d
mov edi, 0x1388
mov qword [rbx + 0x180], r13
mov qword [rbx + 0x188], r13
mov r14d, r8d
jmp 0x1401e014b
movups xmm0, xmmword [rcx + rdx]
mov rax, rsi
mov dword [0x140698e0c], ebp
movups xmm1, xmmword [rcx + rdx + 0x10]
shr rax, 7
and eax, 1
mov dword [0x140698e04], eax
movups xmmword [0x140698e10], xmm0
movups xmmword [0x140698e20], xmm1
je 0x1401e014b
mov rax, qword [rbx + 0x180]
mov rdx, qword [0x140698e20]
mov qword [rbx + 0x88], rax
mov rax, qword [rbx + 0x188]
mov qword [rbx + 0x90], rax
mov eax, dword [rbx + 0x190]
mov dword [rbx + 0x98], eax
mov rax, qword [0x140698e10]
shr rax, 0x20
test eax, eax
jne 0x1401e008e
cmp edx, 1
jne 0x1401e008e
mov eax, dword [0x140698e18]
mov dword [0x140698df8], eax
mov rax, rdx
shr rax, 0x20
mov dword [0x140698dfc], eax
jmp 0x1401e008e
mov rax, qword gs:[0x58]
mov ecx, dword [0x1406bf258]
mov edx, 4
mov rcx, qword [rax + rcx*8]
mov eax, dword [rdx + rcx]
cmp dword [0x140698e38], eax
jg 0x1401e0367
jmp 0x1401dfe0a
mov r10, qword [0x140698df0]
cmp esi, 0x8ca0
ja 0x1401dffcf
lea ecx, [rsi + 0x8ca]
mov edi, r13d
cmp ecx, 0x8ca0
jae 0x1401dff1c
mov eax, 0xe90452d5
mul ecx
shr edx, 0xc
mov eax, edx
lea rdx, [0x140000000]
mov ecx, dword [rdx + rax*4 + 0x1e03a0]
add rcx, rdx
jmp rcx
mov qword [rbx + 0x180], r13
jmp 0x1401dff0b
movabs rax, 0x3ff0000000000000
mov edi, 1
mov qword [rbx + 0x180], rax
jmp 0x1401dff15
movabs rax, 0x3ff0000000000000
mov qword [rbx + 0x188], r13
mov qword [rbx + 0x180], rax
jmp 0x1401dff1c
movabs rax, 0x3ff0000000000000
mov edi, 1
mov qword [rbx + 0x180], rax
movabs rax, 0xbff0000000000000
jmp 0x1401dff15
mov qword [rbx + 0x180], r13
movabs rax, 0xbff0000000000000
jmp 0x1401dff15
movabs rax, 0xbff0000000000000
mov edi, 1
mov qword [rbx + 0x180], rax
jmp 0x1401dff15
movabs rax, 0xbff0000000000000
mov qword [rbx + 0x188], r13
mov qword [rbx + 0x180], rax
jmp 0x1401dff1c
movabs rax, 0xbff0000000000000
mov edi, 1
mov qword [rbx + 0x180], rax
movabs rax, 0x3ff0000000000000
mov qword [rbx + 0x188], rax
mov ecx, 0x11
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1401dff61
movsd xmm1, qword [rbx + 0x180]
movsd xmm0, qword [rbx + 0x188]
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2
movaps xmm6, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
movsd qword [rbx + 0x180], xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
movsd qword [rbx + 0x188], xmm0
test edi, edi
je 0x1401dffa4
movsd xmm0, qword [rbx + 0x180]
mov edi, r13d
movsd xmm1, qword [rbx + 0x188]
mov r14d, 1
mov r10, qword [0x140698df0]
movsd qword [0x140698e40], xmm0
movsd qword [0x140698e48], xmm1
mov dword [0x140698e3c], 1
jmp 0x1401e014b
mov dword [0x140698e30], 1
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r10, qword [0x140698df0]
mov edi, r13d
mov dword [0x140698e34], eax
mov r14d, 1
jmp 0x1401e014b
cmp dword [0x140698e3c], r13d
je 0x1401e001b
cmp dword [0x140698e30], r13d
je 0x1401e001b
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x140698e34]
mov r10, qword [0x140698df0]
cmp eax, 0xfa
jae 0x1401e001b
movsd xmm0, qword [0x140698e40]
movsd xmm1, qword [0x140698e48]
movsd qword [rbx + 0x180], xmm0
movsd qword [rbx + 0x188], xmm1
mov dword [0x140698e30], r13d
mov edi, 0x1388
mov dword [0x140698e3c], r13d
mov r14d, 1
jmp 0x1401e014b
cmp dword [0x140698e04], r13d
je 0x1401e02ee
movsxd rax, dword [0x140698e0c]
movzx ecx, byte [rax + r10 + 0x58]
cmp ecx, 0x80
jae 0x1401e0066
mov r15d, 1
mov eax, r13d
jmp 0x1401e006b
mov eax, 1
mov dword [0x140698e04], eax
jb 0x1401e013d
cmp ebp, dword [0x140698e14]
mov rdx, qword [0x140698e20]
je 0x1401e008e
cmp ebp, edx
jne 0x1401e013d
movsxd rax, dword [0x140698e14]
movd xmm0, dword [0x140698e1c]
cvtdq2ps xmm0, xmm0
mov ecx, dword [r10 + rax*4 + 0x28]
sub ecx, 0x8000
movsxd rax, edx
imul ecx, dword [0x140698e18]
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
divss xmm1, dword [0x140453a00]
addss xmm1, xmm0
divss xmm1, dword [0x140453a04]
cvtps2pd xmm0, xmm1
movsd qword [rbx + 0x180], xmm0
mov ecx, dword [r10 + rax*4 + 0x28]
movd xmm0, dword [0x140698e28]
sub ecx, 0x8000
imul ecx, dword [0x140698e24]
cvtdq2ps xmm0, xmm0
movd xmm1, ecx
mov rcx, rbx
cvtdq2ps xmm1, xmm1
divss xmm1, dword [0x140453a00]
addss xmm1, xmm0
divss xmm1, dword [0x140453a04]
cvtps2pd xmm0, xmm1
movsd qword [rbx + 0x188], xmm0
call fcn.1401dc8c0
mov r10, qword [0x140698df0]
test eax, eax
mov ecx, r13d
mov r14d, 1
cmovne ecx, edi
mov edi, ecx
test r15d, r15d
jne 0x1401e014b
test r14d, r14d
je 0x1401e02ee
test r10, r10
je 0x1401e0154
mov qword [r10 + 0x18], rbx
test byte [rbx], 0x80
movsd xmm6, qword [rbx + 0x180]
movaps xmmword [rsp + 0x70], xmm7
je 0x1401e01a9
movsd xmm7, qword [rbx + 0x188]
movaps xmm1, xmm6
mulsd xmm1, xmm6
movaps xmm0, xmm7
mulsd xmm0, xmm7
addsd xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
comisd xmm0, xmmword [0x1404538b8]
jbe 0x1401e01f0
divsd xmm6, xmm0
divsd xmm7, xmm0
movsd qword [rbx + 0x180], xmm6
movsd qword [rbx + 0x188], xmm7
jmp 0x1401e01f0
movsd xmm0, qword [0x140453a08]
comisd xmm0, xmm6
movsd xmm1, qword [0x1404538b8]
jbe 0x1401e01c4
movaps xmm2, xmm0
jmp 0x1401e01cb
movaps xmm2, xmm1
minsd xmm2, xmm6
movsd xmm3, qword [rbx + 0x188]
comisd xmm0, xmm3
movsd qword [rbx + 0x180], xmm2
ja 0x1401e01e8
minsd xmm1, xmm3
movaps xmm0, xmm1
movsd qword [rbx + 0x188], xmm0
mov r8d, edi
xor edx, edx
mov rcx, rbx
call fcn.1401dbfe0
mov edx, dword [0x140698e04]
movaps xmm7, xmmword [rsp + 0x70]
test edx, edx
je 0x1401e0252
cmp dword [0x140698e08], r13d
jne 0x1401e0252
mov ecx, dword [rbx + 8]
lea rdx, [rbx + 0xc]
mov r8, qword [rbx + 0x3c8]
mov eax, 1
shl eax, cl
mov r9d, 9
dec eax
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x28], eax
mov rcx, rbx
mov qword [rsp + 0x20], rdx
mov edx, dword [rbx + 0x48]
call qword [rbx + 0x3d0]
mov edx, dword [0x140698e04]
lea rdi, [rbx + 0xc]
test r14d, r14d
je 0x1401e029b
mov ecx, dword [rbx + 8]
mov r9d, r13d
mov r8, qword [rbx + 0x3c8]
mov eax, 1
shl eax, cl
mov rcx, rbx
dec eax
mov dword [rsp + 0x30], r13d
test edx, edx
mov dword [rsp + 0x28], eax
mov edx, dword [rbx + 0x48]
setne r9b
mov qword [rsp + 0x20], rdi
add r9d, 4
call qword [rbx + 0x3d0]
mov edx, dword [0x140698e04]
test edx, edx
jne 0x1401e02e1
cmp dword [0x140698e08], r13d
je 0x1401e02e1
mov ecx, dword [rbx + 8]
mov edx, 1
mov r8, qword [rbx + 0x3c8]
mov r9d, 8
shl edx, cl
mov rcx, rbx
dec edx
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x28], edx
mov edx, dword [rbx + 0x48]
mov qword [rsp + 0x20], rdi
call qword [rbx + 0x3d0]
mov edx, dword [0x140698e04]
mov dword [0x140698e08], edx
mov eax, 1
jmp 0x1401e0341
mov rax, qword [rbx + 0x50]
mov rcx, qword [rbx + 0x40]
mov r8d, dword [rbx + 0x48]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x48], r8
mov dword [rsp + 0x50], 0xffffff94
mov dword [rsp + 0x58], r12d
mov qword [rsp + 0x60], rbp
mov qword [rsp + 0x68], rsi
test rax, rax
jne 0x1401e032b
call qword [sym.imp.USER32.dll_GetParent]
mov r8, qword [rsp + 0x48]
lea r9, [rsp + 0x40]
mov edx, 0x4e
mov rcx, rax
call qword [sym.imp.USER32.dll_SendMessageW]
mov rax, r13
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
lea rcx, [0x140698e38]
call fcn.14039cb98
cmp dword [0x140698e38], 0xffffffff
jne 0x1401dfe03
call qword [sym.imp.KERNEL32.dll_GetTickCount]
lea rcx, [0x140698e38]
mov dword [0x140698e34], eax
call fcn.14039cb38
jmp 0x1401dfe03