Function at 0x1800a1b90
Capabilities:
Check for unmoving mouse cursor
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x108]
sub rsp, 0x1d0
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
movaps xmmword [rax - 0xa8], xmm12
movaps xmmword [rax - 0xb8], xmm13
movaps xmmword [rax - 0xc8], xmm14
mov rax, qword [0x18014f040]
xor rax, rsp
mov qword [rbp + 0x30], rax
mov r13, rdx
mov r14, rcx
mov r8d, dword [0x180151b50]
mov rax, qword gs:[0x58]
mov edi, 4
mov rbx, qword [rax + r8*8]
mov qword [rbp - 8], rbx
mov eax, dword [rbx + rdi]
cmp dword [0x180154d98], eax
jle 0x1800a1c53
lea rcx, [0x180154d98]
call fcn.1800d18d8
cmp dword [0x180154d98], 0xffffffff
jne 0x1800a1c53
mov eax, dword [0x18014f34c]
mov dword [0x180154d9c], eax
lea rcx, [0x180154d98]
call fcn.1800d186c
xor esi, esi
mov eax, dword [rbx + rdi]
cmp dword [0x180154da0], eax
jle 0x1800a1c9c
lea rcx, [0x180154da0]
call fcn.1800d18d8
cmp dword [0x180154da0], 0xffffffff
jne 0x1800a1c9c
mov qword [0x180154da8], rsi
lea rcx, [rsp + 0x38]
call fcn.18008ee80
mov rdx, qword [rax]
mov qword [0x180154da8], rdx
lea rcx, [0x180154da0]
call fcn.1800d186c
mov eax, dword [rbx + rdi]
cmp dword [0x180154db0], eax
jle 0x1800a1ce3
lea rcx, [0x180154db0]
call fcn.1800d18d8
cmp dword [0x180154db0], 0xffffffff
jne 0x1800a1ce3
mov qword [0x180154db8], rsi
lea rcx, [rsp + 0x30]
call fcn.18008ee80
mov rdx, qword [rax]
mov qword [0x180154db8], rdx
lea rcx, [0x180154db0]
call fcn.1800d186c
mov rax, qword [r14 + 0x78]
cmp byte [rax], sil
jne 0x1800a1cfd
mov qword [rbp - 8], 0xfa
lea rcx, [rbp - 8]
jmp 0x1800a2d7d
movzx eax, byte [0x1801520d5]
test al, al
je 0x1800a1d22
cmp dword [0x18014f350], 1
jne 0x1800a1d22
mov qword [rbp - 8], 0xa
lea rcx, [rbp - 8]
jmp 0x1800a2d7d
movzx eax, byte [0x1801520d5]
test al, al
jne 0x1800a1d35
cmp dword [0x18014f350], esi
je 0x1800a1d11
movabs r15, 0x431bde82d7b634db
cmp byte [0x180152287], sil
je 0x1800a1db2
lea rcx, [rsp + 0x68]
call fcn.18008ee80
mov rcx, qword [rax]
sub rcx, qword [0x180154da8]
mov rax, r15
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xorps xmm0, xmm0
cvtsi2ss xmm0, rdx
cvttss2si eax, xmm0
cmp eax, dword [0x180154d9c]
jl 0x1800a1db2
mov qword [rbp + 0x28], rsi
lea rcx, [rbp + 0x28]
call qword [sym.imp.USER32.dll_GetCursorPos]
movsxd r9, dword [rbp + 0x2c]
xor r8d, r8d
mov edx, 0x205
mov rcx, qword [0x1801520d8]
call qword [sym.imp.USER32.dll_PostMessageW]
mov byte [0x180152287], sil
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rax, qword [0x1801520d8]
jne 0x1800a2c73
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1800a2c73
lea rcx, [rsp + 0x70]
call fcn.18008ee80
mov rax, qword [rax]
mov qword [r14 + 0x198], rax
mov eax, dword [0x180152194]
mov dword [r14 + 0x1a8], eax
mov eax, dword [rbx + rdi]
cmp dword [0x180154dc0], eax
jle 0x1800a1e50
lea rcx, [0x180154dc0]
call fcn.1800d18d8
cmp dword [0x180154dc0], 0xffffffff
jne 0x1800a1e50
xorps xmm0, xmm0
movups xmmword [0x180154dc8], xmm0
lea rdx, [0x180154dc8]
mov rcx, qword [r14 + 0x180]
call fcn.18009ae50
lea rcx, [0x1800dbf00]
call fcn.1800d1ef4
nop
lea rcx, [0x180154dc0]
call fcn.1800d186c
xorps xmm14, xmm14
mov rcx, qword [0x180154dc8]
test rcx, rcx
jne 0x1800a1ed8
lea rdx, [rbp - 0x38]
mov rcx, qword [r14 + 0x180]
call fcn.18009ae50
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
mov qword [rax], rsi
mov qword [rax + 8], rsi
mov qword [0x180154dc8], rcx
mov rdi, qword [0x180154dd0]
mov qword [0x180154dd0], rdx
mov ebx, 0xffffffff
test rdi, rdi
je 0x1800a1ec6
mov eax, ebx
lock xadd dword [rdi + 8], eax
cmp eax, 1
jne 0x1800a1ec6
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
mov eax, ebx
lock xadd dword [rdi + 0xc], eax
cmp eax, 1
jne 0x1800a1ec6
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
mov rdi, qword [rbp - 0x30]
test rdi, rdi
je 0x1800a1ffe
jmp 0x1800a1fd7
lea rdx, [rsp + 0x40]
call fcn.180091af0
mov rbx, qword [r13]
movss xmm7, dword [rsp + 0x40]
subss xmm7, dword [rbx + 0x24]
movss xmm8, dword [rsp + 0x48]
subss xmm8, dword [rbx + 0x2c]
movaps xmm1, xmm7
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2f
movaps xmm1, xmm0
movss xmm9, dword [0x1801369f8]
mulss xmm1, xmm9
divss xmm1, dword [0x180136938]
subss xmm1, dword [0x1801369c8]
movss xmm0, dword [rbx + 0x48]
subss xmm0, xmm1
xorps xmm0, xmmword [0x180136c80]
addss xmm0, xmm9
movss xmm10, dword [0x180136a0c]
movaps xmm1, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_fmodf
movaps xmm6, xmm0
comiss xmm14, xmm6
jbe 0x1800a1f60
addss xmm6, xmm10
subss xmm6, xmm9
andps xmm6, xmmword [0x180136c50]
movss xmm1, dword [rsp + 0x44]
subss xmm1, dword [rbx + 0x28]
mulss xmm1, xmm1
mulss xmm7, xmm7
addss xmm1, xmm7
mulss xmm8, xmm8
addss xmm1, xmm8
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x1800a1f9e
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1800a1fa6
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm0, dword [0x180136944]
ja 0x1800a1fb8
comiss xmm6, dword [0x1801369e0]
jbe 0x1800a1ffe
mov qword [0x180154dc8], rsi
mov rdi, qword [0x180154dd0]
mov qword [0x180154dd0], rsi
test rdi, rdi
je 0x1800a1ffe
mov ebx, 0xffffffff
mov eax, ebx
lock xadd dword [rdi + 8], eax
cmp eax, 1
jne 0x1800a1ffe
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
lock xadd dword [rdi + 0xc], ebx
cmp ebx, 1
jne 0x1800a1ffe
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
lea rdx, [rbp + 8]
mov rcx, qword [r14 + 0x180]
call fcn.18009a310
nop
mov r12, qword [r13]
add r12, 0x68
movss xmm8, dword [0x180153804]
movss xmm9, dword [0x180153800]
cmp byte [0x180152286], 0
jne 0x1800a2053
movaps xmm7, xmm9
movss dword [0x180153808], xmm7
movaps xmm6, xmm8
movss dword [0x18015380c], xmm6
mov byte [0x180152286], 1
jmp 0x1800a2063
movss xmm6, dword [0x18015380c]
movss xmm7, dword [0x180153808]
lea r8, str.BLOCK
cmp byte [0x18015228d], 0
je 0x1800a21d7
cmp byte [0x180152285], 0
jne 0x1800a21d7
mov rsi, qword [rbp + 0x20]
mov r15, qword [rbp + 0x18]
mov rdi, qword [rbp + 8]
lea rdx, [rbp + 8]
cmp rsi, 0xf
cmova rdx, rdi
cmp r15, 5
jne 0x1800a21b3
xor ecx, ecx
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [r8 + rcx - 1]
jne 0x1800a20c8
cmp rcx, 5
jne 0x1800a20b0
xor eax, eax
jmp 0x1800a20cd
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1800a21b3
lea ecx, [rax + 1]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1800a21b3
mov qword [rsp + 0x30], 1
lea rcx, [rsp + 0x30]
call fcn.18008e7b0
lea rdx, [rbp - 0x28]
mov rcx, qword [r14 + 0x180]
call fcn.18009a310
mov rbx, rax
lea rax, [rbp + 8]
cmp rax, rbx
je 0x1800a2183
cmp rsi, 0xf
jbe 0x1800a2149
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x1800a2141
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a21ac
mov rcx, rdi
call fcn.1800d1f0c
movups xmm2, xmmword [rbx]
movups xmmword [rbp + 8], xmm2
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x18], xmm1
mov qword [rbx + 0x10], 0
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rsi, xmm0
movq r15, xmm1
movq rdi, xmm2
lea rcx, [rbp - 0x28]
call fcn.180065e60
lea rcx, [rsp + 0x78]
call fcn.18008ee80
mov rcx, qword [rax]
mov qword [r14 + 0x198], rcx
lea r8, str.BLOCK
jmp 0x1800a2090
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
movss xmm6, dword [0x18015380c]
movss xmm7, dword [0x180153808]
movss xmm8, dword [0x180153804]
movss xmm9, dword [0x180153800]
jmp 0x1800a21e3
mov rsi, qword [rbp + 0x20]
mov r15, qword [rbp + 0x18]
mov rdi, qword [rbp + 8]
cmp byte [0x18015228e], 0
je 0x1800a221f
mov rcx, r12
cmp qword [r12 + 0x18], 0xf
jbe 0x1800a21fb
mov rcx, qword [r12]
mov qword [rsp + 0x20], 5
lea r9, str.sword
mov rdx, qword [r12 + 0x10]
call fcn.18008eba0
cmp rax, 0xffffffffffffffff
je 0x1800a2c65
movss xmm11, dword [0x18013688c]
movss xmm10, dword [0x18013691c]
movss xmm12, dword [0x180136934]
movzx ebx, byte [0x18015228b]
test bl, bl
je 0x1800a2302
lea rcx, [rbp + 8]
cmp rsi, 0xf
cmova rcx, rdi
cmp r15, 6
jne 0x1800a22ae
mov r8, r15
lea rdx, str.ENTITY
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1800a22ae
movss xmm2, dword [r14 + 0x1a8]
mulss xmm2, xmm11
movaps xmm1, xmm9
subss xmm1, xmm10
movaps xmm0, xmm7
call fcn.1800a0200
movss dword [0x180153808], xmm0
movss xmm2, dword [r14 + 0x1a8]
divss xmm2, xmm12
movaps xmm1, xmm8
subss xmm1, xmm10
jmp 0x1800a22ec
movss xmm2, dword [r14 + 0x1a8]
divss xmm2, xmm12
movaps xmm1, xmm9
addss xmm1, xmm10
movaps xmm0, xmm7
call fcn.1800a0200
movss dword [0x180153808], xmm0
movss xmm2, dword [r14 + 0x1a8]
mulss xmm2, xmm11
movaps xmm1, xmm8
addss xmm1, xmm10
movaps xmm7, xmm0
movaps xmm0, xmm6
call fcn.1800a0200
movss dword [0x18015380c], xmm0
movaps xmm6, xmm0
movss xmm13, dword [0x180136a28]
cmp byte [0x18015228c], 0
je 0x1800a25b1
cmp qword [0x180154dc8], 0
je 0x1800a2539
cmp byte [0x18014f341], 0
je 0x1800a233b
mov byte [0x18014f341], 0
jmp 0x1800a2c65
cmp byte [0x180152284], 0
jne 0x1800a235e
lea rcx, [rbp - 0x80]
call fcn.18008ee80
mov rcx, qword [rax]
mov qword [0x180154db8], rcx
mov byte [0x180152284], 1
lea rcx, [rbp - 0x78]
call fcn.18008ee80
mov rcx, qword [rax]
sub rcx, qword [0x180154db8]
movabs rax, 0x431bde82d7b634db
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xorps xmm0, xmm0
cvtsi2ss xmm0, rdx
comiss xmm0, xmm13
jbe 0x1800a23ef
mov edx, dword [0x180152280]
mov ecx, edx
mov r8d, dword [0x18015227c]
sub ecx, r8d
mov eax, ecx
neg eax
cmovs eax, ecx
cmp eax, 2
jg 0x1800a23c8
cmp edx, r8d
cmovl edx, r8d
cmp edx, 3
jle 0x1800a23c8
mov al, 1
jmp 0x1800a23d6
xor eax, eax
mov dword [0x18015227c], eax
mov dword [0x180152280], eax
mov byte [0x180152278], al
lea rcx, [rbp - 0x70]
call fcn.18008ee80
mov rcx, qword [rax]
mov qword [0x180154db8], rcx
cmp byte [0x180152278], 0
je 0x1800a2459
movss xmm2, dword [r14 + 0x1a8]
mulss xmm2, xmm11
movss xmm1, dword [0x180153800]
subss xmm1, dword [0x18013696c]
movss xmm0, dword [0x180153808]
call fcn.1800a0200
movaps xmm7, xmm0
movss dword [0x180153808], xmm0
movss xmm2, dword [r14 + 0x1a8]
divss xmm2, xmm12
movss xmm1, dword [0x180153804]
subss xmm1, dword [0x18013696c]
movss xmm0, dword [0x18015380c]
jmp 0x1800a25a1
cmp byte [0x180152277], 0
jne 0x1800a24a5
mov rbx, qword [0x180154dc8]
mov r8, qword [rbx]
mov edx, 0x10
mov rcx, qword [rbx + 8]
call fcn.18009c600
test rax, rax
je 0x1800a249b
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov r9, qword [r8 + 0x320]
mov r8, rax
mov rdx, qword [rbx + 0x10]
call r9
cmp eax, 2
jg 0x1800a24a5
inc dword [0x180152280]
mov al, 1
jmp 0x1800a24a7
xor al, al
mov byte [0x180152277], al
cmp byte [0x180152276], 0
jne 0x1800a24ca
mov rax, qword [r13]
cmp dword [rax + 0x3c], 0
jle 0x1800a24ca
inc dword [0x18015227c]
mov al, 1
jmp 0x1800a24cc
xor al, al
mov byte [0x180152276], al
movss xmm2, dword [r14 + 0x1a8]
mulss xmm2, xmm11
movzx ebx, byte [0x18015228b]
movss xmm1, dword [0x180153800]
test bl, bl
je 0x1800a24f8
addss xmm1, xmm10
movss xmm0, dword [0x180153808]
call fcn.1800a0200
movaps xmm7, xmm0
movss dword [0x180153808], xmm0
movss xmm2, dword [r14 + 0x1a8]
divss xmm2, xmm12
movss xmm1, dword [0x180153804]
test bl, bl
je 0x1800a252f
addss xmm1, xmm10
movss xmm0, dword [0x18015380c]
jmp 0x1800a25a1
mov byte [0x18014f341], 1
mov byte [0x180152284], 0
xor eax, eax
mov dword [0x180152280], eax
mov dword [0x18015227c], eax
movss xmm2, dword [r14 + 0x1a8]
mulss xmm2, xmm11
test bl, bl
je 0x1800a256c
addss xmm9, xmm10
movaps xmm1, xmm9
movaps xmm0, xmm7
call fcn.1800a0200
movaps xmm7, xmm0
movss dword [0x180153808], xmm0
movss xmm2, dword [r14 + 0x1a8]
divss xmm2, xmm12
test bl, bl
je 0x1800a259a
addss xmm8, xmm10
movaps xmm1, xmm8
movaps xmm0, xmm6
call fcn.1800a0200
movaps xmm6, xmm0
movss dword [0x18015380c], xmm0
lea r13, [r14 + 0x190]
lea rcx, [0x1801523b0]
call fcn.180065ac0
mov eax, eax
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
subss xmm0, xmm14
addss xmm0, xmm14
movss xmm8, dword [0x180136814]
mulss xmm0, xmm8
subss xmm6, xmm7
mulss xmm0, xmm6
addss xmm0, xmm7
movss dword [0x180153810], xmm0
lea rdx, [0x180153818]
mov rcx, r13
call fcn.1800a1740
lea rcx, [rbp - 0x68]
call fcn.18008ee80
mov rcx, qword [rax]
mov qword [r13 + 0x10], rcx
sub rcx, qword [r13 + 8]
movabs rax, 0x20c49ba5e353f7cf
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xorps xmm1, xmm1
cvtsi2ss xmm1, rdx
divss xmm1, xmm13
movss dword [r13 + 0x1c], xmm1
movss xmm0, dword [0x180153814]
addss xmm0, dword [0x180153810]
subss xmm0, xmm1
divss xmm0, xmm13
cvtps2pd xmm0, xmm0
call fcn.1800a1930
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1800a2c65
mov qword [rbp], 0
lea rcx, [rbp]
call qword [sym.imp.USER32.dll_GetCursorPos]
movsxd r9, dword [rbp + 4]
mov edx, 0x201
mov r8d, 0x1000000
mov rcx, qword [0x1801520d8]
call qword [sym.imp.USER32.dll_PostMessageW]
lea rcx, [rbp - 0x60]
call fcn.18008ee80
mov rcx, qword [rax]
mov qword [r13 + 8], rcx
mov rcx, r13
call fcn.1800a1550
cmp byte [0x18015228a], 0
je 0x1800a2822
cmp byte [0x180152289], 0
je 0x1800a26fd
cmp byte [0x180152287], 0
je 0x1800a26fd
mov qword [rsp + 0x30], 1
lea rcx, [rsp + 0x30]
call fcn.18008e7b0
jmp 0x1800a2c65
mov rdx, qword [r12 + 0x10]
cmp qword [r12 + 0x18], 0xf
jbe 0x1800a270e
mov r12, qword [r12]
mov qword [rsp + 0x20], 5
lea r9, str.sword
mov rcx, r12
call fcn.18008eba0
cmp rax, 0xffffffffffffffff
je 0x1800a2822
lea rcx, [rbp + 8]
cmp rsi, 0xf
cmova rcx, rdi
cmp r15, 6
jne 0x1800a2822
mov r8, r15
lea rdx, str.ENTITY
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1800a2822
mov rbx, qword [0x180154dc8]
test rbx, rbx
je 0x1800a2822
mov r8, qword [rbx]
lea edx, [rax + 0x10]
mov rcx, qword [rbx + 8]
call fcn.18009c600
mov r8, rax
test rax, rax
je 0x1800a2798
mov rcx, qword [rbx]
mov rax, qword [rcx]
mov r9, qword [rax + 0x320]
mov rdx, qword [rbx + 0x10]
call r9
cmp byte [0x18014f340], 0
je 0x1800a2816
test eax, eax
jle 0x1800a2816
cmp byte [0x180152287], 0
jne 0x1800a2816
mov qword [rbp], 0
lea rcx, [rbp]
call qword [sym.imp.USER32.dll_GetCursorPos]
movsxd r9, dword [rbp + 4]
mov edx, 0x204
mov r8d, 0x2000000
mov rcx, qword [0x1801520d8]
call qword [sym.imp.USER32.dll_PostMessageW]
mov ecx, dword [0x18014f34c]
lea edx, [rcx + 5]
add ecx, 0xfffffffb
call fcn.180063c40
mov dword [0x180154d9c], eax
lea rcx, [rbp - 0x58]
call fcn.18008ee80
mov rcx, qword [rax]
mov qword [0x180154da8], rcx
mov byte [0x180152287], 1
mov byte [0x18014f340], 0
jmp 0x1800a2822
cmp eax, 1
jg 0x1800a2822
mov byte [0x18014f340], 1
mov byte [0x180152285], 1
cmp byte [0x18015228d], 0
je 0x1800a2b53
mov rax, qword [rbp - 8]
mov ecx, 4
mov eax, dword [rax + rcx]
cmp dword [0x180154dd8], eax
jle 0x1800a288a
lea rcx, [0x180154dd8]
call fcn.1800d18d8
xor r12d, r12d
cmp dword [0x180154dd8], 0xffffffff
jne 0x1800a288d
mov qword [0x180154de0], r12
lea rcx, [rbp - 0x50]
call fcn.18008ee80
mov rdx, qword [rax]
mov qword [0x180154de0], rdx
lea rcx, [0x180154dd8]
call fcn.1800d186c
jmp 0x1800a288d
xor r12d, r12d
lea rcx, [rbp + 8]
cmp rsi, 0xf
cmova rcx, rdi
cmp r15, 5
jne 0x1800a2b31
mov r8, r15
lea rbx, str.BLOCK
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1800a2b31
lea rcx, [rsp + 0x50]
cmp byte [0x180152275], al
jne 0x1800a28e2
call fcn.18008ee80
mov rcx, qword [rax]
mov qword [0x180154de0], rcx
mov byte [0x180152275], 1
jmp 0x1800a2940
mov ebx, dword [0x18014f348]
call fcn.18008ee80
mov rcx, qword [rax]
sub rcx, qword [0x180154de0]
movabs rax, 0x431bde82d7b634db
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xorps xmm0, xmm0
cvtsi2ss xmm0, rdx
lea edx, [rbx + 0x1e]
lea ecx, [rbx - 0xa]
call fcn.180063c40
cvttss2si ecx, xmm0
lea rbx, str.BLOCK
cmp ecx, eax
jle 0x1800a2940
mov byte [0x180152274], 1
nop dword [rax + rax]
lea rdx, [rbp + 8]
cmp rsi, 0xf
cmova rdx, rdi
cmp r15, 5
jne 0x1800a2a58
mov rcx, r12
nop dword [rax]
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [rbx + rcx - 1]
jne 0x1800a2978
cmp rcx, 5
jne 0x1800a2960
mov eax, r12d
jmp 0x1800a297d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1800a2a58
cmp byte [0x180152274], al
je 0x1800a2a58
mov qword [rsp + 0x30], 1
lea rcx, [rsp + 0x30]
call fcn.18008e7b0
lea rdx, [rbp - 0x28]
mov rcx, qword [r14 + 0x180]
call fcn.18009a310
mov rbx, rax
lea rax, [rbp + 8]
cmp rax, rbx
je 0x1800a2a29
cmp rsi, 0xf
jbe 0x1800a29f3
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x1800a29eb
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2a51
mov rcx, rdi
call fcn.1800d1f0c
movups xmm2, xmmword [rbx]
movups xmmword [rbp + 8], xmm2
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x18], xmm1
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rsi, xmm0
movq r15, xmm1
movq rdi, xmm2
lea rcx, [rbp - 0x28]
call fcn.180065e60
lea rcx, [rbp - 0x48]
call fcn.18008ee80
mov rcx, qword [rax]
mov qword [r14 + 0x198], rcx
lea rbx, str.BLOCK
jmp 0x1800a2940
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
lea rcx, [rbp + 8]
cmp rsi, 0xf
cmova rcx, rdi
cmp r15, 5
jne 0x1800a2a7d
mov r8, r15
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1800a2b53
cmp byte [0x180152274], 0
je 0x1800a2b53
lea rcx, [rsp + 0x58]
call fcn.18008ee80
mov rbx, qword [rax]
mov ecx, dword [0x18014f344]
lea edx, [rcx + 0x1e]
add ecx, 0xfffffff6
call fcn.180063c40
mov edi, eax
lea rcx, [rsp + 0x38]
call fcn.18008ee80
mov rcx, qword [rax]
sub rcx, rbx
movabs rsi, 0x431bde82d7b634db
mov rax, rsi
imul rcx
sar rdx, 0x12
mov rcx, rdx
shr rcx, 0x3f
add rdx, rcx
xorps xmm0, xmm0
cvtsi2ss xmm0, rdx
cvttss2si eax, xmm0
cmp eax, edi
jge 0x1800a2b53
mov qword [rsp + 0x30], 1
lea rcx, [rsp + 0x30]
call fcn.18008e7b0
lea rcx, [rsp + 0x38]
call fcn.18008ee80
mov rcx, qword [rax]
sub rcx, rbx
mov rax, rsi
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xorps xmm0, xmm0
cvtsi2ss xmm0, rdx
cvttss2si eax, xmm0
cmp eax, edi
jl 0x1800a2af1
jmp 0x1800a2b53
lea rcx, [rsp + 0x58]
call fcn.18008ee80
mov rdx, qword [rax]
mov qword [0x180154de0], rdx
mov byte [0x180152275], 1
mov byte [0x180152274], 0
movss xmm1, dword [0x18015380c]
lea rcx, [0x1801523b0]
call fcn.180065ac0
mov eax, eax
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
subss xmm0, xmm14
addss xmm0, xmm14
mulss xmm0, xmm8
subss xmm1, dword [0x180153808]
mulss xmm0, xmm1
addss xmm0, dword [0x180153808]
movss dword [0x180153810], xmm0
lea rdx, [0x180153830]
mov rcx, r13
call fcn.1800a1740
lea rcx, [rbp - 0x40]
call fcn.18008ee80
mov rcx, qword [rax]
mov qword [r13 + 0x10], rcx
sub rcx, qword [r13 + 8]
movabs rax, 0x20c49ba5e353f7cf
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xorps xmm1, xmm1
cvtsi2ss xmm1, rdx
divss xmm1, xmm13
movss dword [r13 + 0x1c], xmm1
movss xmm0, dword [0x180153814]
addss xmm0, dword [0x180153810]
subss xmm0, xmm1
divss xmm0, xmm13
cvtps2pd xmm0, xmm0
call fcn.1800a1930
mov qword [rbp - 8], 0
lea rcx, [rbp - 8]
call qword [sym.imp.USER32.dll_GetCursorPos]
movsxd r9, dword [rbp - 4]
xor r8d, r8d
mov edx, 0x202
mov rcx, qword [0x1801520d8]
call qword [sym.imp.USER32.dll_PostMessageW]
lea rcx, [rsp + 0x60]
call fcn.18008ee80
mov rdx, qword [rax]
mov qword [r13 + 8], rdx
cmp byte [0x180152288], 0
je 0x1800a2c5c
lea rcx, [r13 - 0x10]
call fcn.1800bb5f0
mov rcx, r13
call fcn.1800a1550
nop
lea rcx, [rbp + 8]
call fcn.180065e60
jmp 0x1800a2d82
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x1800a2c8a
mov byte [0x180152285], sil
cmp byte [0x180152287], sil
je 0x1800a2cfa
lea rcx, [rsp + 0x60]
call fcn.18008ee80
mov rcx, qword [rax]
sub rcx, qword [0x180154da8]
mov rax, r15
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xorps xmm0, xmm0
cvtsi2ss xmm0, rdx
cvttss2si eax, xmm0
cmp eax, 0xa
jl 0x1800a2cfa
mov qword [rbp - 8], rsi
lea rcx, [rbp - 8]
call qword [sym.imp.USER32.dll_GetCursorPos]
movsxd r9, dword [rbp - 4]
xor r8d, r8d
mov edx, 0x205
mov rcx, qword [0x1801520d8]
call qword [sym.imp.USER32.dll_PostMessageW]
mov byte [0x180152287], sil
cmp byte [0x180152286], sil
je 0x1800a2d6f
mov rdi, qword [0x180153850]
mov rbx, qword [0x180153848]
cmp rbx, rdi
je 0x1800a2d68
movss xmm2, dword [0x1801368ac]
nop
mov word [rbx], si
mov dword [rbx + 0x20], esi
mov edx, dword [rbx + 0x24]
movd xmm1, edx
cvtdq2ps xmm1, xmm1
movd xmm0, dword [rbx + 0x10]
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
mulss xmm1, xmm2
cvttss2si eax, xmm1
mov ecx, 1
sub ecx, eax
imul ecx, edx
mov dword [rbx + 0x24], ecx
mov edx, dword [rbx + 0x18]
mov ecx, dword [rbx + 0x14]
call fcn.180063c40
mov dword [rbx + 0x10], eax
add rbx, 0x28
cmp rbx, rdi
jne 0x1800a2d20
mov byte [0x180152286], sil
mov qword [rsp + 0x38], 0x32
lea rcx, [rsp + 0x38]
call fcn.18008e7b0
mov rcx, qword [rbp + 0x30]
xor rcx, rsp
call fcn.1800d1810
lea r11, [rsp + 0x1d0]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret