Function at 0x1404a9880
Capabilities:
Log keystrokes via polling

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xe0
movapd xmmword [rsp + 0xd0], xmm8
movaps xmmword [rsp + 0xc0], xmm7
movaps xmmword [rsp + 0xb0], xmm6
mov ecx, dword [0x140ae7d74]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1404a98c7
cmp byte [0x140ae7d42], 0
jne 0x1404a98f9
jmp 0x1404a98d7
mov byte [0x140ae76d8], 0
cmp byte [0x140ae7d42], 0
jne 0x1404a98f9
mov ecx, dword [0x140ae7d74]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1404aa02f
cmp byte [0x140ae7d40], 0
je 0x1404aa02f
movsxd r8, dword [0x140ad7690]
cmp r8, 0xffffffffffffffff
je 0x1404a9f33
mov eax, dword [0x140ae9550]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete byte [rsp + 0x20]
mov eax, dword [0x140ae9554]
sete cl
cmp eax, 0xa
setl al
setl byte [rsp + 0x38]
or al, cl
mov ecx, 0x80d00a0c
mov edx, 0x1d766c62
cmove ecx, edx
mov eax, 0xc47d1353
cmove eax, edx
mov ebp, 0x2eaf983b
mov edx, 0x2df64dc5
cmove ebp, edx
mov edx, 0xb4343df2
lea r9, [0x140ae7938]
mov edi, 0xa4b8111f
jmp 0x1404a9970
mov edx, 0xa4b8111f
nop
mov esi, edx
cmp edx, 0xdd958dc1
jle 0x1404a99a0
cmp esi, 0x2df64dc4
jle 0x1404a99d0
cmp esi, 0x2df64dc5
je 0x1404a9969
cmp esi, 0x2eaf983b
jne 0x1404a9a43
mov edx, 0xdd958dc2
jmp 0x1404a9970
cmp esi, 0xb4343df1
jg 0x1404a99f0
cmp esi, 0x80d00a0c
je 0x1404a9a1d
mov edx, esi
cmp esi, 0xa4b8111f
jne 0x1404a9970
mov qword [rsp + 0x50], r9
mov edx, ebp
jmp 0x1404a9970
mov edx, eax
cmp esi, 0xdd958dc2
je 0x1404a9970
mov edx, esi
cmp esi, 0x1d766c62
jne 0x1404a9970
mov rdx, qword [rsp + 0x50]
mov edx, 0xc47d1353
jmp 0x1404a9970
cmp esi, 0xb4343df2
je 0x1404a9a27
mov edx, esi
cmp esi, 0xc47d1353
jne 0x1404a9970
mov rdx, qword [rsp + 0x50]
mov rdx, qword [rdx]
mov qword [rsp + 0x80], rdx
mov edx, ecx
jmp 0x1404a9970
mov edx, 0x6b2314b5
jmp 0x1404a9970
movzx ebx, byte [rsp + 0x20]
cmp byte [rsp + 0x38], 0
mov edx, 0x2df64dc5
cmovne edx, edi
test bl, bl
cmovne edx, edi
jmp 0x1404a9970
mov edx, esi
cmp esi, 0x6b2314b5
jne 0x1404a9970
mov rax, qword [rsp + 0x80]
shl r8, 5
movups xmm0, xmmword [rax + r8]
movups xmm1, xmmword [rax + r8 + 0x10]
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x90], xmm1
mov rdi, qword [rsp + 0x80]
test rdi, rdi
je 0x1404aa02f
mov eax, dword [0x140aca864]
mov qword [rsp + 0x38], rax
mov ecx, 0x1bb3a24b
mov r15d, 0xf07e07ca
mov ebp, 0x281e1cb5
lea r14, [0x140ae75f8]
mov edx, dword [0x140ae9310]
lea esi, [rdx - 1]
imul esi, edx
test sil, 1
sete dl
cmp dword [0x140ae9314], 0xa
setl bl
or bl, dl
mov edx, 0xa87d3b74
cmovne edx, r15d
mov esi, 0xa87d3b74
cmovne esi, ebp
nop dword [rax + rax]
cmp ecx, 0x1bb3a24a
jle 0x1404a9b10
cmp ecx, 0x697413a4
je 0x1404a9b22
cmp ecx, 0x281e1cb5
je 0x1404a9b26
cmp ecx, 0x1bb3a24b
jne 0x1404a9ae0
jmp 0x1404a9b40
cmp ecx, 0xa87d3b74
je 0x1404a9b2a
cmp ecx, 0xf07e07ca
jne 0x1404a9ae0
jmp 0x1404a9b5a
mov ecx, esi
jmp 0x1404a9ae0
mov ecx, edx
jmp 0x1404a9ae0
mov ecx, 0x281e1cb5
jmp 0x1404a9ae0
mov rdx, qword [rsp + 0x38]
add rdx, rdi
mov rcx, r14
call fcn.1405a4120
mov ecx, 0x697413a4
jmp 0x1404a9aab
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x88], rax
test rax, rax
je 0x1404aa02f
lea rax, [rsp + 0x88]
mov qword [0x140ae76c8], rdi
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov qword [0x140ae76d0], rax
mov edx, dword [0x140aca8ec]
add rdx, rdi
lea r14, [0x140ae75f8]
mov r8d, 8
mov rcx, r14
call fcn.1403808d0
mov edx, dword [0x140aca8f4]
add rdx, rax
mov r8d, 1
mov rcx, r14
call fcn.1405a8290
mov byte [rsp + 0x2e], al
mov al, byte [rsp + 0x2e]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
mov eax, 0x6f36ab55
mov r15d, 0xa2f365cd
movss xmm6, dword [0x140675e60]
mov r12d, 0x8230697b
mov ebp, 0xb9d133e8
mov esi, 0x6a152e2d
mov edi, 0x1c42da65
jmp 0x1404a9c20
mov eax, 0x1c42da65
nop word cs:[rax + rax]
nop dword [rax + rax]
cmp eax, 0xd5d6c407
jle 0x1404a9c60
cmp eax, 0x61cec23c
jle 0x1404a9ca0
cmp eax, 0x6c3398a0
jg 0x1404a9d45
cmp eax, 0x61cec23d
je 0x1404a9ded
cmp eax, 0x6a152e2d
jne 0x1404a9c20
cmp byte [rsp + 0x70], 0
mov eax, 0x6634eeb
cmovne eax, r12d
movzx ebx, byte [rsp + 0x68]
jmp 0x1404a9c20
cmp eax, 0xc5dc64af
jle 0x1404a9cf0
cmp eax, 0xce05d392
jg 0x1404a9d9c
cmp eax, 0xc5dc64b0
je 0x1404a9dfc
cmp eax, 0xcb4dc6b6
jne 0x1404a9c20
mov eax, dword [rsp + 0x98]
mov dword [rsp + 0x48], eax
mov eax, 0xd123d11d
jmp 0x1404a9c20
cmp eax, 0x1c42da64
jle 0x1404a9dd8
cmp eax, 0x1c42da65
je 0x1404a9e44
cmp eax, 0x3947f6d1
jne 0x1404a9c20
mov eax, dword [0x140ae9468]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0x6c3398a1
cmove eax, edi
cmp dword [0x140ae946c], 0xa
cmovl eax, edi
jmp 0x1404a9c20
cmp eax, 0x8230697b
je 0x1404a9e6a
cmp eax, 0xa2f365cd
je 0x1404a9e83
cmp eax, 0xb9d133e8
jne 0x1404a9c20
mov eax, dword [rsp + 0x48]
cmp eax, 0x67
sete byte [rsp + 0x70]
mov eax, dword [0x140ae9468]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0xce05d393
cmove eax, r15d
cmp dword [0x140ae946c], 0xa
cmovl eax, r15d
jmp 0x1404a9c20
cmp eax, 0x6c3398a1
je 0x1404a9c0c
cmp eax, 0x6f36ab55
jne 0x1404a9c20
mov edx, dword [0x140aca8c4]
add rdx, qword [rsp + 0x20]
mov r8d, 4
mov rcx, r14
call fcn.1403881e0
movss dword [rsp + 0x78], xmm0
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov qword [rsp + 0x38], rax
mov eax, dword [0x140aca8c0]
mov qword [rsp + 0x50], rax
mov eax, 0xc5dc64b0
jmp 0x1404a9c20
cmp eax, 0xce05d393
je 0x1404a9e8d
cmp eax, 0xd123d11d
jne 0x1404a9c20
mov eax, dword [0x140ae9468]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0xce05d393
cmove eax, ebp
cmp dword [0x140ae946c], 0xa
cmovl eax, ebp
jmp 0x1404a9c20
cmp eax, 0xd5d6c408
jne 0x1404a9e9b
mov eax, 0x61cec23d
jmp 0x1404a9c20
mov eax, 0x6634eeb
movzx ebx, byte [rsp + 0x60]
jmp 0x1404a9c20
mov rdx, qword [rsp + 0x38]
add rdx, qword [rsp + 0x50]
mov r8d, 4
mov rcx, r14
call fcn.1403881e0
movss xmm1, dword [rsp + 0x78]
addss xmm1, xmm6
ucomiss xmm1, xmm0
setae byte [rsp + 0x2f]
movzx eax, byte [rsp + 0x2f]
cmp byte [0x140ae7c31], 0
mov byte [rsp + 0x68], al
mov eax, 0xcb4dc6b6
cmove eax, r12d
jmp 0x1404a9c20
mov eax, dword [0x140ae9468]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0x6c3398a1
cmove eax, esi
cmp dword [0x140ae946c], 0xa
cmovl eax, esi
jmp 0x1404a9c20
movzx eax, byte [rsp + 0x2e]
and al, byte [rsp + 0x2f]
and al, 1
mov byte [rsp + 0x60], al
mov eax, 0xd5d6c408
jmp 0x1404a9c20
mov eax, 0x3947f6d1
jmp 0x1404a9c20
mov eax, dword [rsp + 0x48]
mov eax, 0xb9d133e8
jmp 0x1404a9c20
cmp eax, 0x6634eeb
jne 0x1404a9c20
test bl, 1
jne 0x1404a9eb8
cmp byte [0x140ae7d48], 0
jne 0x1404aa02f
mov rcx, qword [0x140ae7980]
mov rdx, qword [rsp + 0x80]
call fcn.1404881a0
test al, al
je 0x1404aa02f
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x38], rax
mov eax, dword [0x140aca87c]
mov qword [rsp + 0x50], rax
mov ecx, 0x702366e8
lea rsi, [0x140ae75f8]
nop dword [rax + rax]
cmp ecx, 0x66ee083e
je 0x1404aa05a
cmp ecx, 0x702366e8
jne 0x1404a9f00
mov rdx, qword [rsp + 0x38]
add rdx, qword [rsp + 0x50]
mov r8d, 1
mov rcx, rsi
call fcn.1405a8290
mov ecx, 0x66ee083e
jmp 0x1404a9f00
mov byte [0x140ae76d8], 0
lea rax, [rsp + 0x38]
mov qword [rsp + 0x50], rax
mov ebp, 0xe8b13a1e
lea rax, [rsp + 0x3c]
mov ecx, 0xef5ea6e1
mov edx, 0xe481fd3d
nop dword [rax + rax]
cmp ebp, 0xe8b13a1d
jle 0x1404a9fa0
cmp ebp, 0x3cf96e32
je 0x1404a9fb2
cmp ebp, 0xef5ea6e1
je 0x1404a9fc8
cmp ebp, 0xe8b13a1e
jne 0x1404a9f60
mov rbp, qword [rsp + 0x50]
mov dword [rbp], 0
mov qword [rsp + 0x80], rax
mov ebp, 0xdce2d48c
jmp 0x1404a9f60
cmp ebp, 0xdce2d48c
je 0x1404a9ffd
cmp ebp, 0xe481fd3d
jne 0x1404a9f60
jmp 0x1404aa023
mov rbp, qword [rsp + 0x80]
mov dword [rbp], 0
mov ebp, 0xef5ea6e1
jmp 0x1404a9f60
mov rbp, qword [rsp + 0x80]
mov dword [rbp], 0
mov ebp, dword [0x140ae0d70]
lea ebx, [rbp - 1]
imul ebx, ebp
test bl, 1
mov ebp, 0x3cf96e32
cmove ebp, edx
cmp dword [0x140ae0d74], 0xa
cmovl ebp, edx
jmp 0x1404a9f60
mov ebp, dword [0x140ae0d70]
lea ebx, [rbp - 1]
imul ebx, ebp
test bl, 1
mov ebp, 0x3cf96e32
cmove ebp, ecx
cmp dword [0x140ae0d74], 0xa
cmovl ebp, ecx
jmp 0x1404a9f60
mov rax, qword [rsp + 0x38]
mov qword [0x140ae7aa0], rax
movaps xmm6, xmmword [rsp + 0xb0]
movaps xmm7, xmmword [rsp + 0xc0]
movaps xmm8, xmmword [rsp + 0xd0]
add rsp, 0xe0
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
and al, 1
mov byte [rsp + 0x20], al
mov al, byte [rsp + 0x20]
cmp al, 1
jne 0x1404aa02f
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x20], rax
mov eax, 0xc2410e1f
lea rsi, [0x140ae75f8]
mov r15d, 0x6c5fd3f7
xorps xmm6, xmm6
mov r12d, 0x8b035ab5
mov ebp, 0x1952fdb3
mov r14d, 0x8bdea081
mov edi, 0xa5d096b9
jmp 0x1404aa0b0
mov eax, 0x1952fdb3
nop word [rax + rax]
cmp eax, 0xc2410e1e
jle 0x1404aa110
cmp eax, 0xef17e0db
jg 0x1404aa160
cmp eax, 0xc2410e1f
je 0x1404aa1b7
cmp eax, 0xc4d6de96
je 0x1404aa1df
cmp eax, 0xca2c36e4
jne 0x1404aa0b0
mov eax, dword [0x140ae9558]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0xa4d9b0a1
cmove eax, ebp
cmp dword [0x140ae955c], 0xa
cmovl eax, ebp
jmp 0x1404aa0b0
cmp eax, 0xa4d9b0a0
jg 0x1404aa18b
cmp eax, 0x8b035ab5
je 0x1404aa1e9
cmp eax, 0x8bdea081
je 0x1404aa234
cmp eax, 0x90813e9a
jne 0x1404aa0b0
mov edx, dword [0x140aca868]
mov rax, qword [rsp + 0x20]
add rdx, qword [rsp + 0x20]
mov rcx, rsi
call fcn.1405a4120
mov eax, 0x8b035ab5
jmp 0x1404aa0b0
cmp eax, 0xef17e0dc
je 0x1404aa245
cmp eax, 0x1952fdb3
je 0x1404aa276
cmp eax, 0x6c5fd3f7
jne 0x1404aa0b0
mov eax, 0xef17e0dc
jmp 0x1404aa0b0
cmp eax, 0xa4d9b0a1
je 0x1404aa0a2
cmp eax, 0xad5f0200
jne 0x1404aa29c
movss xmm0, dword [rsp + 0x30]
ucomiss xmm0, xmm6
seta bl
mov eax, 0xca2c36e4
jmp 0x1404aa0b0
mov eax, dword [0x140ae9558]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0x90813e9a
cmove eax, r12d
cmp dword [0x140ae955c], 0xa
cmovl eax, r12d
jmp 0x1404aa0b0
mov eax, 0xad5f0200
jmp 0x1404aa0b0
mov edx, dword [0x140aca868]
add rdx, qword [rsp + 0x20]
mov rcx, rsi
call fcn.1405a4120
mov qword [rsp + 0x38], rax
mov eax, dword [0x140aca880]
mov qword [rsp + 0x50], rax
mov eax, dword [0x140ae9558]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0x90813e9a
cmove eax, r15d
cmp dword [0x140ae955c], 0xa
cmovl eax, r15d
jmp 0x1404aa0b0
mov byte [0x140ae76d8], 0
mov eax, 0xc4d6de96
jmp 0x1404aa0b0
mov rdx, qword [rsp + 0x38]
add rdx, qword [rsp + 0x50]
mov r8d, 4
mov rcx, rsi
call fcn.1403881e0
movss dword [rsp + 0x30], xmm0
ucomiss xmm6, dword [rsp + 0x30]
mov eax, 0xad5f0200
cmovae eax, r14d
jmp 0x1404aa0b0
mov eax, dword [0x140ae9558]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0xa4d9b0a1
cmove eax, edi
cmp dword [0x140ae955c], 0xa
cmovl eax, edi
jmp 0x1404aa0b0
cmp eax, 0xa5d096b9
jne 0x1404aa0b0
and bl, 1
mov byte [rsp + 0x48], bl
mov al, byte [rsp + 0x48]
cmp al, 1
jne 0x1404aa02f
mov eax, dword [0x140ae7d4c]
xor ecx, ecx
cmp eax, 2
setne cl
add ecx, ecx
add ecx, 6
cmp eax, 1
mov edx, 9
cmovne edx, ecx
test eax, eax
mov r8d, 8
cmovg r8d, edx
mov rdx, qword [rsp + 0x88]
lea rcx, [rsp + 0x50]
call fcn.140381140
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0xa0], rax
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0xa8], eax
lea rcx, [rsp + 0x38]
lea rdx, [rsp + 0xa0]
call fcn.140382240
movss xmm7, dword [rsp + 0x38]
movss xmm6, dword [rsp + 0x3c]
addss xmm6, dword [0x14066ec44]
mov eax, dword [0x140ae0d80]
mov ecx, dword [0x140ae0d84]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete byte [rsp + 0x30]
mov edx, 0xfd17c9fa
mov eax, 0xa48902e5
cmove eax, edx
cmp ecx, 0xa
setl byte [rsp + 0x20]
cmovl eax, edx
mov edx, 0x1d44077a
mov ecx, 0x64c51a5e
cmp edx, 0xfd17c9f9
jg 0x1404aa3a0
cmp edx, 0x933c2d37
je 0x1404aa3d1
cmp edx, 0xa48902e5
je 0x1404aa3d8
cmp edx, 0xda2046c0
jne 0x1404aa370
jmp 0x1404aa3ea
cmp edx, 0xfd17c9fa
je 0x1404aa3df
cmp edx, 0x64c51a5e
je 0x1404aa3e6
cmp edx, 0x1d44077a
jne 0x1404aa370
movzx ebx, byte [rsp + 0x30]
cmp byte [rsp + 0x20], 0
mov edx, 0xa48902e5
cmovne edx, ecx
test bl, bl
cmovne edx, ecx
jmp 0x1404aa370
mov edx, 0xda2046c0
jmp 0x1404aa370
mov edx, 0x64c51a5e
jmp 0x1404aa370
mov edx, 0x933c2d37
jmp 0x1404aa370
mov edx, eax
jmp 0x1404aa370
movss dword [rsp + 0x38], xmm7
movss dword [rsp + 0x3c], xmm6
mov eax, dword [0x140ae7664]
cvtsi2ss xmm0, rax
mov eax, dword [0x140ae7660]
cvtsi2ss xmm1, rax
movss xmm2, dword [0x140ae7d5c]
movaps xmm3, xmm1
subss xmm3, xmm7
movaps xmm4, xmm0
subss xmm4, xmm6
mov eax, dword [0x140ae9560]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x140ae9564], 0xa
setl cl
or cl, al
mov eax, 0xdc3350f7
mov edx, 0xbb3d9291
cmove eax, edx
mov ecx, 0x8bbfe66d
cmove ecx, edx
mov edx, 0xc355da17
nop word [rax + rax]
cmp edx, 0xc355da16
jle 0x1404aa490
cmp edx, 0xc355da17
je 0x1404aa4a7
cmp edx, 0xdc3350f7
je 0x1404aa4ab
cmp edx, 0x6a794e0d
jne 0x1404aa460
jmp 0x1404aa4b6
cmp edx, 0x8bbfe66d
je 0x1404aa4b2
cmp edx, 0xbb3d9291
jne 0x1404aa460
mov edx, 0x8bbfe66d
jmp 0x1404aa460
mov edx, ecx
jmp 0x1404aa460
mov edx, 0x6a794e0d
jmp 0x1404aa460
mov edx, eax
jmp 0x1404aa460
movss dword [rsp + 0x30], xmm3
movss dword [rsp + 0x20], xmm4
movss xmm4, dword [rsp + 0x30]
movss xmm3, dword [rsp + 0x20]
movss xmm5, dword [0x14066f4a0]
ucomiss xmm5, xmm2
jbe 0x1404aa4f4
mulss xmm4, xmm4
mulss xmm3, xmm3
addss xmm3, xmm4
mulss xmm2, xmm2
ucomiss xmm2, xmm3
jb 0x1404aa02f
movss xmm2, dword [0x140ae7a00]
addss xmm2, xmm6
subss xmm2, xmm0
movaps xmm0, xmm7
subss xmm0, xmm1
lea rax, [rsp + 0x60]
mov qword [rsp + 0x30], rax
mov ebp, 0xe8b13a1e
lea rax, [rsp + 0x64]
mov ecx, 0xef5ea6e1
mov edx, 0xe481fd3d
nop dword [rax]
cmp ebp, 0xe8b13a1d
jle 0x1404aa566
cmp ebp, 0x3cf96e32
je 0x1404aa578
cmp ebp, 0xef5ea6e1
je 0x1404aa589
cmp ebp, 0xe8b13a1e
jne 0x1404aa530
mov rbp, qword [rsp + 0x30]
movss dword [rbp], xmm0
mov qword [rsp + 0x20], rax
mov ebp, 0xdce2d48c
jmp 0x1404aa530
cmp ebp, 0xdce2d48c
je 0x1404aa5b9
cmp ebp, 0xe481fd3d
jne 0x1404aa530
jmp 0x1404aa5df
mov rbp, qword [rsp + 0x20]
movss dword [rbp], xmm2
mov ebp, 0xef5ea6e1
jmp 0x1404aa530
mov rbp, qword [rsp + 0x20]
movss dword [rbp], xmm2
mov ebp, dword [0x140ae0d70]
lea ebx, [rbp - 1]
imul ebx, ebp
test bl, 1
mov ebp, 0x3cf96e32
cmove ebp, edx
cmp dword [0x140ae0d74], 0xa
cmovl ebp, edx
jmp 0x1404aa530
mov ebp, dword [0x140ae0d70]
lea ebx, [rbp - 1]
imul ebx, ebp
test bl, 1
mov ebp, 0x3cf96e32
cmove ebp, ecx
cmp dword [0x140ae0d74], 0xa
cmovl ebp, ecx
jmp 0x1404aa530
movss xmm1, dword [rsp + 0x60]
xorps xmm0, xmm0
ucomiss xmm1, xmm0
jne 0x1404aa600
jp 0x1404aa600
movss xmm1, dword [rsp + 0x64]
ucomiss xmm1, xmm0
jne 0x1404aa600
jnp 0x1404aa02f
cmp byte [0x140ae7d43], 0
movsd xmm0, qword [0x14066f4b0]
je 0x1404aa61b
movsd xmm1, qword [0x140684180]
jmp 0x1404aa633
movss xmm1, dword [0x140ae7d60]
cvtss2sd xmm1, xmm1
mulsd xmm1, qword [str.ffffff]
addsd xmm1, xmm0
xorps xmm2, xmm2
movapd xmm8, xmm1
cmpnlesd xmm8, xmm2
andpd xmm1, xmm8
andnpd xmm8, xmm0
orpd xmm8, xmm1
mov ecx, dword [0x140ae7d74]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1404aa798
cmp byte [0x140ae7d42], 0
je 0x1404aa8e8
mov eax, dword [0x140ae7664]
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mov eax, dword [0x140ae7660]
xorps xmm1, xmm1
cvtsi2ss xmm1, rax
subss xmm1, xmm7
subss xmm0, xmm6
mov eax, dword [0x140ae9560]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x140ae9564], 0xa
setl cl
or cl, al
mov eax, 0xdc3350f7
mov edx, 0xbb3d9291
cmove eax, edx
mov ecx, 0x8bbfe66d
cmove ecx, edx
mov edx, 0xc355da17
cmp edx, 0xc355da16
jle 0x1404aa6f0
cmp edx, 0xc355da17
je 0x1404aa707
cmp edx, 0xdc3350f7
je 0x1404aa70b
cmp edx, 0x6a794e0d
jne 0x1404aa6ce
jmp 0x1404aa716
cmp edx, 0x8bbfe66d
je 0x1404aa712
cmp edx, 0xbb3d9291
jne 0x1404aa6ce
mov edx, 0x8bbfe66d
jmp 0x1404aa6ce
mov edx, ecx
jmp 0x1404aa6ce
mov edx, 0x6a794e0d
jmp 0x1404aa6ce
mov edx, eax
jmp 0x1404aa6ce
movss dword [rsp + 0x30], xmm1
movss dword [rsp + 0x20], xmm0
movss xmm0, dword [rsp + 0x30]
mulss xmm0, xmm0
movss xmm1, dword [rsp + 0x20]
mulss xmm1, xmm1
addss xmm1, xmm0
movss xmm0, dword [0x140684198]
ucomiss xmm0, xmm1
jb 0x1404aa02f
lea rcx, [rsp + 0x20]
call fcn.1403de590
mov rax, qword [rsp + 0x20]
mov qword [0x140ae7a30], rax
lea rdx, [0x140ae7a30]
lea r8, [0x140ae7a28]
lea rcx, [rsp + 0x68]
call fcn.14048f270
mov eax, 0xce707985
cmp eax, 0xce707985
je 0x1404aa791
cmp eax, 0x75c2ba99
jne 0x1404aa77e
jmp 0x1404aa9cc
mov eax, 0x75c2ba99
jmp 0x1404aa77e
lea rcx, [rsp + 0x20]
call fcn.1403de590
mov rax, qword [rsp + 0x20]
mov qword [0x140ae7a30], rax
lea rdx, [0x140ae7a30]
lea r8, [0x140ae7a28]
lea rcx, [rsp + 0x68]
call fcn.14048f270
mov eax, 0xce707985
cmp eax, 0xce707985
je 0x1404aa7db
cmp eax, 0x75c2ba99
jne 0x1404aa7cb
jmp 0x1404aa7e2
mov eax, 0x75c2ba99
jmp 0x1404aa7cb
lea rax, [rsp + 0x70]
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x78]
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x30]
lea rdx, [rsp + 0x68]
call fcn.1405a99c0
mov eax, 0x16178d65
movsd xmm0, qword [rsp + 0x78]
cmp eax, 0x16178d65
je 0x1404aa820
cmp eax, 0xc38dec3e
jne 0x1404aa810
jmp 0x1404aa827
mov eax, 0xc38dec3e
jmp 0x1404aa810
movsd qword [rsp + 0x20], xmm0
movsd xmm0, qword [rsp + 0x20]
mov rax, qword [rsp + 0x30]
mov rax, qword [rsp + 0x48]
movsd qword [rax], xmm0
mov eax, 0x16178d65
movsd xmm0, qword [rsp + 0x70]
cmp eax, 0x16178d65
je 0x1404aa85c
cmp eax, 0xc38dec3e
jne 0x1404aa84c
jmp 0x1404aa863
mov eax, 0xc38dec3e
jmp 0x1404aa84c
movsd qword [rsp + 0x20], xmm0
movsd xmm0, qword [rsp + 0x20]
ucomisd xmm0, xmm8
jb 0x1404aa02f
lea rcx, [rsp + 0x20]
call fcn.1403de590
mov rax, qword [rsp + 0x20]
mov qword [0x140ae7a28], rax
mov al, byte [0x140ae7d43]
test al, al
je 0x1404aabab
cmp byte [0x140ae76d8], 0
jne 0x1404aabab
mov rdx, qword [rsp + 0x60]
lea rcx, [0x140ae7aa0]
call fcn.1404a7990
movss xmm0, dword [0x140ae7aa0]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mov eax, 0x712871f8
cmp eax, 0x712871f8
je 0x1404aa8e1
cmp eax, 0x77be9b2c
jne 0x1404aa8ce
jmp 0x1404aabf0
mov eax, 0x77be9b2c
jmp 0x1404aa8ce
mov byte [0x140ae76d8], 0
lea rax, [rsp + 0x48]
mov qword [rsp + 0x30], rax
mov ebp, 0xe8b13a1e
lea rax, [rsp + 0x4c]
mov ecx, 0xef5ea6e1
mov edx, 0xe481fd3d
cmp ebp, 0xe8b13a1d
jle 0x1404aa945
cmp ebp, 0x3cf96e32
je 0x1404aa957
cmp ebp, 0xef5ea6e1
je 0x1404aa96a
cmp ebp, 0xe8b13a1e
jne 0x1404aa90d
mov rbp, qword [rsp + 0x30]
mov dword [rbp], 0
mov qword [rsp + 0x20], rax
mov ebp, 0xdce2d48c
jmp 0x1404aa90d
cmp ebp, 0xdce2d48c
je 0x1404aa99c
cmp ebp, 0xe481fd3d
jne 0x1404aa90d
jmp 0x1404aa9c2
mov rbp, qword [rsp + 0x20]
mov dword [rbp], 0
mov ebp, 0xef5ea6e1
jmp 0x1404aa90d
mov rbp, qword [rsp + 0x20]
mov dword [rbp], 0
mov ebp, dword [0x140ae0d70]
lea ebx, [rbp - 1]
imul ebx, ebp
test bl, 1
mov ebp, 0x3cf96e32
cmove ebp, edx
cmp dword [0x140ae0d74], 0xa
cmovl ebp, edx
jmp 0x1404aa90d
mov ebp, dword [0x140ae0d70]
lea ebx, [rbp - 1]
imul ebx, ebp
test bl, 1
mov ebp, 0x3cf96e32
cmove ebp, ecx
cmp dword [0x140ae0d74], 0xa
cmovl ebp, ecx
jmp 0x1404aa90d
mov rax, qword [rsp + 0x48]
jmp 0x1404aa028
lea rax, [rsp + 0x70]
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x78]
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x30]
lea rdx, [rsp + 0x68]
call fcn.1405a99c0
mov eax, 0x16178d65
movsd xmm0, qword [rsp + 0x78]
cmp eax, 0x16178d65
je 0x1404aaa0a
cmp eax, 0xc38dec3e
jne 0x1404aa9fa
jmp 0x1404aaa11
mov eax, 0xc38dec3e
jmp 0x1404aa9fa
movsd qword [rsp + 0x20], xmm0
movsd xmm0, qword [rsp + 0x20]
mov rax, qword [rsp + 0x30]
mov rax, qword [rsp + 0x48]
movsd qword [rax], xmm0
mov eax, 0x16178d65
movsd xmm0, qword [rsp + 0x70]
cmp eax, 0x16178d65
je 0x1404aaa46
cmp eax, 0xc38dec3e
jne 0x1404aaa36
jmp 0x1404aaa4d
mov eax, 0xc38dec3e
jmp 0x1404aaa36
movsd qword [rsp + 0x20], xmm0
movsd xmm0, qword [rsp + 0x20]
ucomisd xmm0, xmm8
jb 0x1404aa02f
lea rcx, [rsp + 0x20]
call fcn.1403de590
mov rax, qword [rsp + 0x20]
mov qword [0x140ae7a28], rax
mov rdx, qword [rsp + 0x60]
lea rcx, [0x140ae7aa0]
call fcn.1404a6600
movss xmm0, dword [0x140ae7aa0]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mov eax, 0x712871f8
cmp eax, 0x712871f8
je 0x1404aaaad
cmp eax, 0x77be9b2c
jne 0x1404aaa9d
jmp 0x1404aaab4
mov eax, 0x77be9b2c
jmp 0x1404aaa9d
movss dword [rsp + 0x20], xmm0
movss xmm6, dword [rsp + 0x20]
movss xmm0, dword [0x140ae7aa4]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mov eax, 0x712871f8
cmp eax, 0x712871f8
je 0x1404aaae2
cmp eax, 0x77be9b2c
jne 0x1404aaad2
jmp 0x1404aaae9
mov eax, 0x77be9b2c
jmp 0x1404aaad2
movss dword [rsp + 0x20], xmm0
cvttss2si esi, dword [rsp + 0x20]
cvttss2si edi, xmm6
cmp dword [0x140ae7d4c], 3
jne 0x1404aab15
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ecx, ecx
test ax, ax
cmovns esi, ecx
mov eax, edi
or eax, esi
je 0x1404aa02f
mov eax, 0xe3691785
lea rbx, [0x140ae75f8]
mov ebp, 0x67884d3c
cmp eax, 0x61b1d00a
jg 0x1404aab51
cmp eax, 0x82bb26ed
je 0x1404aab77
cmp eax, 0xe3691785
je 0x1404aab8e
cmp eax, 0x103b5353
jne 0x1404aab30
jmp 0x1404aa02f
cmp eax, 0x7c181b00
je 0x1404aab95
cmp eax, 0x67884d3c
je 0x1404aab9c
cmp eax, 0x61b1d00b
jne 0x1404aab30
cmp byte [0x140ae75f4], 0
mov eax, 0x82bb26ed
cmove eax, ebp
jmp 0x1404aab30
mov rcx, rbx
xor edx, edx
mov r8d, edi
mov r9d, esi
call fcn.1405b3cd0
mov eax, 0x103b5353
jmp 0x1404aab30
mov eax, 0x61b1d00b
jmp 0x1404aab30
mov eax, 0x82bb26ed
jmp 0x1404aab30
mov rcx, rbx
call fcn.1405b3aa0
mov eax, 0x7c181b00
jmp 0x1404aab30
test al, al
jne 0x1404aa02f
mov rdx, qword [rsp + 0x60]
lea rcx, [0x140ae7aa0]
call fcn.1404a6600
movss xmm0, dword [0x140ae7aa0]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mov eax, 0x712871f8
cmp eax, 0x712871f8
je 0x1404aabe9
cmp eax, 0x77be9b2c
jne 0x1404aabd6
jmp 0x1404aad5f
mov eax, 0x77be9b2c
jmp 0x1404aabd6
movss dword [rsp + 0x20], xmm0
movss xmm6, dword [rsp + 0x20]
movss xmm0, dword [0x140ae7aa4]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mov eax, 0x712871f8
cmp eax, 0x712871f8
je 0x1404aac1e
cmp eax, 0x77be9b2c
jne 0x1404aac0e
jmp 0x1404aac25
mov eax, 0x77be9b2c
jmp 0x1404aac0e
cvttss2si esi, xmm6
movss dword [rsp + 0x20], xmm0
cvttss2si edi, dword [rsp + 0x20]
mov eax, 0xe3691785
lea rbx, [0x140ae75f8]
mov ebp, 0x67884d3c
cmp eax, 0x61b1d00a
jg 0x1404aac64
cmp eax, 0x82bb26ed
je 0x1404aac8a
cmp eax, 0xe3691785
je 0x1404aaca1
cmp eax, 0x103b5353
jne 0x1404aac46
jmp 0x1404aacbe
cmp eax, 0x7c181b00
je 0x1404aaca8
cmp eax, 0x67884d3c
je 0x1404aacaf
cmp eax, 0x61b1d00b
jne 0x1404aac46
cmp byte [0x140ae75f4], 0
mov eax, 0x82bb26ed
cmove eax, ebp
jmp 0x1404aac46
mov rcx, rbx
xor edx, edx
mov r8d, esi
mov r9d, edi
call fcn.1405b3cd0
mov eax, 0x103b5353
jmp 0x1404aac46
mov eax, 0x61b1d00b
jmp 0x1404aac46
mov eax, 0x82bb26ed
jmp 0x1404aac46
mov rcx, rbx
call fcn.1405b3aa0
mov eax, 0x7c181b00
jmp 0x1404aac46
lea rbx, [0x140ae75f8]
mov rcx, rbx
call fcn.1404aae60
neg edi
neg esi
mov eax, 0xe3691785
mov ebp, 0x67884d3c
cmp eax, 0x61b1d00a
jg 0x1404aacf9
cmp eax, 0x82bb26ed
je 0x1404aad1f
cmp eax, 0xe3691785
je 0x1404aad36
cmp eax, 0x103b5353
jne 0x1404aacdb
jmp 0x1404aad53
cmp eax, 0x7c181b00
je 0x1404aad3d
cmp eax, 0x67884d3c
je 0x1404aad44
cmp eax, 0x61b1d00b
jne 0x1404aacdb
cmp byte [0x140ae75f4], 0
mov eax, 0x82bb26ed
cmove eax, ebp
jmp 0x1404aacdb
mov rcx, rbx
xor edx, edx
mov r8d, esi
mov r9d, edi
call fcn.1405b3cd0
mov eax, 0x103b5353
jmp 0x1404aacdb
mov eax, 0x61b1d00b
jmp 0x1404aacdb
mov eax, 0x82bb26ed
jmp 0x1404aacdb
mov rcx, rbx
call fcn.1405b3aa0
mov eax, 0x7c181b00
jmp 0x1404aacdb
mov byte [0x140ae76d8], 1
jmp 0x1404aa02f
movss dword [rsp + 0x20], xmm0
movss xmm6, dword [rsp + 0x20]
movss xmm0, dword [0x140ae7aa4]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mov eax, 0x712871f8
cmp eax, 0x712871f8
je 0x1404aad8d
cmp eax, 0x77be9b2c
jne 0x1404aad7d
jmp 0x1404aad94
mov eax, 0x77be9b2c
jmp 0x1404aad7d
movss dword [rsp + 0x20], xmm0
cvttss2si esi, dword [rsp + 0x20]
cvttss2si edi, xmm6
cmp dword [0x140ae7d4c], 3
jne 0x1404aadc0
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ecx, ecx
test ax, ax
cmovns esi, ecx
mov eax, edi
or eax, esi
je 0x1404aa02f
mov eax, 0xe3691785
lea rbx, [0x140ae75f8]
mov ebp, 0x67884d3c
cmp eax, 0x61b1d00a
jg 0x1404aadfc
cmp eax, 0x82bb26ed
je 0x1404aae22
cmp eax, 0xe3691785
je 0x1404aae40
cmp eax, 0x103b5353
jne 0x1404aaddb
jmp 0x1404aa02f
cmp eax, 0x7c181b00
je 0x1404aae39
cmp eax, 0x67884d3c
je 0x1404aae47
cmp eax, 0x61b1d00b
jne 0x1404aaddb
cmp byte [0x140ae75f4], 0
mov eax, 0x82bb26ed
cmove eax, ebp
jmp 0x1404aaddb
mov rcx, rbx
xor edx, edx
mov r8d, edi
mov r9d, esi
call fcn.1405b3cd0
mov eax, 0x103b5353
jmp 0x1404aaddb
mov eax, 0x82bb26ed
jmp 0x1404aaddb
mov eax, 0x61b1d00b
jmp 0x1404aaddb
mov rcx, rbx
call fcn.1405b3aa0
mov eax, 0x7c181b00
jmp 0x1404aaddb