Function at 0x1404fdca0
Capabilities:
Log keystrokes via polling

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xd8
movaps xmmword [rsp + 0xc0], xmm7
movaps xmmword [rsp + 0xb0], xmm6
mov ecx, dword [0x140b8530c]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1404fdcdf
cmp byte [0x140b852da], 0
jne 0x1404fdd11
jmp 0x1404fdcef
mov byte [0x140b84c78], 0
cmp byte [0x140b852da], 0
jne 0x1404fdd11
mov ecx, dword [0x140b8530c]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1404fe3e4
cmp byte [0x140b852d8], 0
je 0x1404fe3e4
movsxd rax, dword [0x140b74c10]
cmp rax, 0xffffffffffffffff
je 0x1404fe2f2
lea rcx, [0x140b84ed8]
mov qword [rsp + 0x38], rcx
mov ecx, dword [0x140b86ce8]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
sete cl
cmp dword [0x140b86cec], 0xa
setl dl
or dl, cl
mov ebx, 0xbd9ab3fb
mov ecx, 0x34151667
cmove ebx, ecx
mov edx, 0x172d957b
cmove edx, ecx
mov ecx, 0xc07a38f
nop word cs:[rax + rax]
cmp ecx, 0x172d957a
jle 0x1404fdda0
cmp ecx, 0x6a5e22a1
je 0x1404fddc7
cmp ecx, 0x34151667
je 0x1404fddb4
cmp ecx, 0x172d957b
jne 0x1404fdd70
mov rbp, qword [rsp + 0x38]
mov ecx, ebx
jmp 0x1404fdd70
cmp ecx, 0xbd9ab3fb
je 0x1404fddc0
cmp ecx, 0xc07a38f
jne 0x1404fdd70
mov ecx, edx
jmp 0x1404fdd70
mov rcx, qword [rsp + 0x38]
mov ecx, 0x172d957b
jmp 0x1404fdd70
mov ecx, 0x6a5e22a1
jmp 0x1404fdd70
mov qword [rsp + 0x80], rbp
mov rcx, qword [rsp + 0x80]
mov rcx, qword [rcx]
shl rax, 5
movups xmm0, xmmword [rcx + rax]
movups xmm1, xmmword [rcx + rax + 0x10]
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x90], xmm1
mov rsi, qword [rsp + 0x80]
test rsi, rsi
je 0x1404fe3e4
mov eax, dword [0x140b67de4]
add rax, rsi
mov ecx, 0xcef78ee4
nop word cs:[rax + rax]
cmp ecx, 0xcef78ee4
je 0x1404fde32
cmp ecx, 0x493929d6
jne 0x1404fde20
jmp 0x1404fde39
mov ecx, 0x493929d6
jmp 0x1404fde20
mov qword [rsp + 0x38], rax
mov rdx, qword [rsp + 0x38]
lea rcx, [0x140b84b98]
call fcn.1406267a0
mov qword [rsp + 0x88], rax
test rax, rax
je 0x1404fe3e4
lea rax, [rsp + 0x88]
mov qword [0x140b84c68], rsi
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov rax, qword [rax]
mov qword [0x140b84c70], rax
mov eax, dword [0x140b67e6c]
add rax, rsi
mov qword [rsp + 0x48], rax
mov eax, 0x1071a214
mov r12d, 0x3e89facf
lea rsi, [0x140b84b98]
mov r13d, 0x86380c9b
movss xmm7, dword [0x14070defc]
mov ebx, 0xcc99eccf
mov ebp, 0xe05ccc21
mov edi, 0xd8f60961
mov r14d, 0x2fac9dc3
jmp 0x1404fdee0
movzx eax, byte [rsp + 0x2f]
movzx eax, byte [rsp + 0x68]
mov eax, 0x2fac9dc3
nop word [rax + rax]
cmp eax, 0xd8f60960
jg 0x1404fdf20
cmp eax, 0xbdab702d
jle 0x1404fdf60
cmp eax, 0xc6b853fb
jle 0x1404fe065
cmp eax, 0xc6b853fc
je 0x1404fe178
cmp eax, 0xc85e8734
je 0x1404fe1a0
cmp eax, 0xcc99eccf
jne 0x1404fdee0
mov eax, 0x8faa8d8c
jmp 0x1404fdee0
cmp eax, 0x3e89face
jle 0x1404fdfa0
cmp eax, 0x6a07724a
jle 0x1404fe08b
cmp eax, 0x6e4f45ca
je 0x1404fe1b7
cmp eax, 0x710ca0c7
jne 0x1404fe283
mov rax, qword [rsp + 0x38]
mov eax, 0x86380c9b
jmp 0x1404fdee0
cmp eax, 0x8faa8d8b
jg 0x1404fe0ab
cmp eax, 0x86380c9b
je 0x1404fe1c1
cmp eax, 0x8f1ee860
jne 0x1404fdee0
cmp byte [rsp + 0x60], 0
mov eax, 0x6a07724b
cmovne eax, r12d
movzx r15d, byte [rsp + 0x78]
jmp 0x1404fdee0
cmp eax, 0x1071a213
jg 0x1404fe12d
cmp eax, 0xd8f60961
je 0x1404fe1f9
cmp eax, 0xe05ccc21
jne 0x1404fdee0
mov rdx, qword [rsp + 0x48]
mov r8d, 8
mov rcx, rsi
call fcn.14037a700
mov edx, dword [0x140b67e74]
add rdx, rax
mov r8d, 1
mov rcx, rsi
call fcn.14062ad50
mov byte [rsp + 0x2f], al
movzx eax, byte [rsp + 0x2f]
mov rax, qword [rsp + 0x20]
mov edx, dword [0x140b67e44]
add rdx, qword [rax]
mov r8d, 4
mov rcx, rsi
call fcn.14038cb70
movaps xmm6, xmm0
mov rax, qword [rsp + 0x20]
mov edx, dword [0x140b67e40]
add rdx, qword [rax]
mov r8d, 4
mov rcx, rsi
call fcn.14038cb70
movss dword [rsp + 0x58], xmm0
addss xmm6, xmm7
movss dword [rsp + 0x30], xmm6
mov eax, dword [0x140b86bf8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0x9bba9e45
cmove eax, ebx
cmp dword [0x140b86bfc], 0xa
cmovl eax, ebx
jmp 0x1404fdee0
cmp eax, 0xbdab702e
je 0x1404fdec8
cmp eax, 0xc01507aa
jne 0x1404fdee0
mov eax, 0x6a07724b
movzx r15d, byte [rsp + 0x70]
jmp 0x1404fdee0
cmp eax, 0x3e89facf
je 0x1404fe203
cmp eax, 0x417d3831
jne 0x1404fdee0
mov eax, 0x8f1ee860
jmp 0x1404fdee0
cmp eax, 0x8faa8d8c
je 0x1404fe22b
cmp eax, 0x9bba9e45
jne 0x1404fdee0
mov rdx, qword [rsp + 0x48]
mov r8d, 8
mov rcx, rsi
call fcn.14037a700
mov edx, dword [0x140b67e74]
add rdx, rax
mov r8d, 1
mov rcx, rsi
call fcn.14062ad50
mov rax, qword [rsp + 0x20]
mov edx, dword [0x140b67e44]
add rdx, qword [rax]
mov r8d, 4
mov rcx, rsi
call fcn.14038cb70
mov rax, qword [rsp + 0x20]
mov edx, dword [0x140b67e40]
add rdx, qword [rax]
mov r8d, 4
mov rcx, rsi
call fcn.14038cb70
mov eax, 0xe05ccc21
jmp 0x1404fdee0
cmp eax, 0x1071a214
je 0x1404fe25d
cmp eax, 0x2fac9dc3
jne 0x1404fdee0
movzx eax, byte [rsp + 0x2f]
and al, byte [rsp + 0x68]
and al, 1
mov byte [rsp + 0x70], al
mov eax, dword [0x140b86bf8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0xbdab702e
cmove eax, edi
cmp dword [0x140b86bfc], 0xa
cmovl eax, edi
jmp 0x1404fdee0
mov eax, dword [0x140b86bf8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0x710ca0c7
cmove eax, r13d
cmp dword [0x140b86bfc], 0xa
cmovl eax, r13d
jmp 0x1404fdee0
lea rax, [rsp + 0x98]
mov qword [rsp + 0x38], rax
mov eax, 0xc6b853fc
jmp 0x1404fdee0
mov eax, 0xc01507aa
jmp 0x1404fdee0
mov rax, qword [rsp + 0x38]
cmp dword [rax], 0x67
sete byte [rsp + 0x60]
mov eax, dword [0x140b86bf8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0x710ca0c7
mov ecx, 0x417d3831
cmove eax, ecx
cmp dword [0x140b86bfc], 0xa
cmovl eax, ecx
jmp 0x1404fdee0
mov eax, 0x6e4f45ca
jmp 0x1404fdee0
mov eax, dword [0x140b86bf8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0xbdab702e
cmove eax, r14d
cmp dword [0x140b86bfc], 0xa
cmovl eax, r14d
jmp 0x1404fdee0
movss xmm0, dword [rsp + 0x58]
movss xmm1, dword [rsp + 0x30]
ucomiss xmm1, xmm0
setae byte [rsp + 0x68]
movzx eax, byte [rsp + 0x68]
cmp byte [0x140b851c9], 0
mov byte [rsp + 0x78], al
mov eax, 0xc85e8734
cmove eax, r12d
jmp 0x1404fdee0
mov eax, dword [0x140b86bf8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0x9bba9e45
cmove eax, ebp
cmp dword [0x140b86bfc], 0xa
cmovl eax, ebp
jmp 0x1404fdee0
cmp eax, 0x6a07724b
jne 0x1404fdee0
test r15b, 1
jne 0x1404fe2a1
cmp byte [0x140b852e0], 0
jne 0x1404fe3e4
mov rdi, qword [rsp + 0x80]
mov ecx, 0x840d87ee
lea rsi, [0x140b84b98]
nop word cs:[rax + rax]
nop
cmp ecx, 0xef337c6
je 0x1404fe408
cmp ecx, 0x840d87ee
jne 0x1404fe2c0
mov edx, dword [0x140b67dfc]
add rdx, rdi
mov r8d, 4
mov rcx, rsi
call fcn.1404c9d20
mov ecx, 0xef337c6
jmp 0x1404fe2c0
mov byte [0x140b84c78], 0
lea rax, [rsp + 0x38]
mov qword [rsp + 0x80], rax
mov edx, 0x605a802c
mov eax, 0xf1c00c70
mov ecx, 0x4fa2e476
nop word cs:[rax + rax]
nop
cmp edx, 0x2a2c56cc
jle 0x1404fe370
cmp edx, 0x2a2c56cd
je 0x1404fe3a7
cmp edx, 0x4fa2e476
je 0x1404fe3d8
cmp edx, 0x605a802c
jne 0x1404fe320
mov rdx, qword [rsp + 0x80]
mov dword [rdx], 0
mov dword [rsp + 0x3c], 0
mov edx, 0xae3a98b5
jmp 0x1404fe320
cmp edx, 0xae3a98b5
je 0x1404fe3b1
cmp edx, 0xf1c00c70
jne 0x1404fe320
mov edx, dword [0x140b7e450]
lea ebp, [rdx - 1]
imul ebp, edx
test bpl, 1
mov edx, 0x2a2c56cd
cmove edx, ecx
cmp dword [0x140b7e454], 0xa
cmovl edx, ecx
jmp 0x1404fe320
mov edx, 0xf1c00c70
jmp 0x1404fe320
mov edx, dword [0x140b7e450]
lea ebp, [rdx - 1]
imul ebp, edx
test bpl, 1
mov edx, 0x2a2c56cd
cmove edx, eax
cmp dword [0x140b7e454], 0xa
cmovl edx, eax
jmp 0x1404fe320
mov rax, qword [rsp + 0x38]
mov qword [0x140b85038], rax
movaps xmm6, xmmword [rsp + 0xb0]
movaps xmm7, xmmword [rsp + 0xc0]
add rsp, 0xd8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x38]
cmp eax, 0xffffffff
jne 0x1404fe3e4
mov eax, dword [0x140b86cf8]
mov ecx, dword [0x140b86cfc]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete byte [rsp + 0x70]
cmp ecx, 0xa
setl byte [rsp + 0x58]
mov eax, 0x63fc9567
lea r14, [rsp + 0x80]
mov r15d, 0x4e2942c0
mov r12d, 0x28e96c3b
lea rsi, [0x140b84b98]
mov ebp, 0x7bd4cbfb
mov edi, 0xe50db829
jmp 0x1404fe4a0
mov rdx, qword [rsp + 0x48]
add rdx, qword [rsp + 0x38]
mov r8d, 1
mov rcx, rsi
call fcn.14062ad50
mov ebx, eax
mov eax, dword [0x140b86cf8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0x642796e3
cmove eax, ebp
cmp dword [0x140b86cfc], 0xa
cmovl eax, ebp
nop
cmp eax, 0x28e96c3a
jle 0x1404fe540
cmp eax, 0x63fc9566
jle 0x1404fe570
cmp eax, 0x63fc9567
je 0x1404fe5ca
cmp eax, 0x642796e3
jne 0x1404fe635
mov rax, qword [rsp + 0x48]
mov rax, qword [rsp + 0x38]
mov rax, qword [rsp + 0x48]
mov rax, qword [rsp + 0x38]
mov rax, qword [rsp + 0x48]
mov rax, qword [rsp + 0x38]
mov rax, qword [rsp + 0x48]
mov rax, qword [rsp + 0x38]
mov rax, qword [rsp + 0x48]
mov rax, qword [rsp + 0x38]
mov rax, qword [rsp + 0x38]
mov rax, qword [rsp + 0x48]
mov rax, qword [rsp + 0x38]
mov rax, qword [rsp + 0x38]
mov rax, qword [rsp + 0x48]
mov rax, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x48]
add rdx, qword [rsp + 0x38]
mov r8d, 1
mov rcx, rsi
call fcn.14062ad50
mov eax, 0x28e96c3b
jmp 0x1404fe4a0
cmp eax, 0xe50db828
jg 0x1404fe590
cmp eax, 0x988960a6
je 0x1404fe5e6
cmp eax, 0xa4268d30
jne 0x1404fe4a0
mov eax, 0xe50db829
jmp 0x1404fe4a0
cmp eax, 0x28e96c3b
je 0x1404fe463
cmp eax, 0x4e2942c0
jne 0x1404fe4a0
mov eax, 0x988960a6
jmp 0x1404fe4a0
cmp eax, 0xe50db829
je 0x1404fe608
cmp eax, 0xed1fe177
jne 0x1404fe4a0
mov eax, dword [0x140b86cf8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0x642796e3
cmove eax, r12d
cmp dword [0x140b86cfc], 0xa
cmovl eax, r12d
jmp 0x1404fe4a0
movzx ecx, byte [rsp + 0x70]
cmp byte [rsp + 0x58], 0
mov eax, 0xa4268d30
cmovne eax, edi
test cl, cl
cmovne eax, edi
jmp 0x1404fe4a0
mov rax, qword [rsp + 0x20]
mov rax, qword [rax]
mov qword [rsp + 0x48], rax
mov eax, dword [0x140b67dfc]
mov qword [rsp + 0x38], rax
mov eax, 0xed1fe177
jmp 0x1404fe4a0
mov qword [rsp + 0x20], r14
mov eax, dword [0x140b86cf8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0xa4268d30
cmove eax, r15d
cmp dword [0x140b86cfc], 0xa
cmovl eax, r15d
jmp 0x1404fe4a0
cmp eax, 0x7bd4cbfb
jne 0x1404fe4a0
and bl, 1
mov byte [rsp + 0x30], bl
mov al, byte [rsp + 0x30]
cmp al, 1
jne 0x1404fe3e4
mov edx, dword [0x140b67de8]
add rdx, qword [rsp + 0x80]
lea rsi, [0x140b84b98]
mov rcx, rsi
call fcn.1406267a0
mov ecx, dword [0x140b67e00]
add rcx, rax
mov qword [rsp + 0x38], rcx
mov eax, 0xf6e5dee3
xorps xmm6, xmm6
jmp 0x1404fe693
mov eax, 0x59ade210
cmp ecx, 0xa
cmovl eax, edx
cmp eax, 0x33e4a9a6
jle 0x1404fe6f0
cmp eax, 0x453f899a
jg 0x1404fe750
cmp eax, 0x33e4a9a7
je 0x1404fe79b
cmp eax, 0x380b19d4
je 0x1404fe7e9
cmp eax, 0x3d7e32e2
jne 0x1404fe693
mov byte [0x140b84c78], 0
mov eax, dword [0x140b86cf0]
mov ecx, dword [0x140b86cf4]
lea ebp, [rax - 1]
imul ebp, eax
mov edx, 0x1f7106a2
mov eax, 0x1f7106a2
test bpl, 1
je 0x1404fe68d
jmp 0x1404fe844
cmp eax, 0xff0722b6
jg 0x1404fe77b
cmp eax, 0xadc6cdb4
je 0x1404fe803
cmp eax, 0xe56f2554
je 0x1404fe814
cmp eax, 0xf6e5dee3
jne 0x1404fe693
mov eax, dword [0x140b86cf0]
mov ecx, dword [0x140b86cf4]
lea ebp, [rax - 1]
imul ebp, eax
mov edx, 0x33e4a9a7
mov eax, 0x33e4a9a7
test bpl, 1
je 0x1404fe68d
jmp 0x1404fe688
cmp eax, 0x453f899b
je 0x1404fe81e
cmp eax, 0x59ade210
je 0x1404fe84e
cmp eax, 0x7313f1fa
jne 0x1404fe693
mov eax, 0x380b19d4
jmp 0x1404fe693
cmp eax, 0xff0722b7
je 0x1404fe86b
cmp eax, 0x1f7106a2
jne 0x1404fe881
mov eax, 0xe56f2554
jmp 0x1404fe693
mov rdx, qword [rsp + 0x38]
mov r8d, 4
mov rcx, rsi
call fcn.14038cb70
movss dword [rsp + 0x48], xmm0
ucomiss xmm6, dword [rsp + 0x48]
setae byte [rsp + 0x30]
mov eax, dword [0x140b86cf0]
mov ecx, dword [0x140b86cf4]
lea ebp, [rax - 1]
imul ebp, eax
mov edx, 0x7313f1fa
mov eax, 0x7313f1fa
test bpl, 1
je 0x1404fe68d
jmp 0x1404fe688
cmp byte [rsp + 0x30], 0
mov eax, 0x453f899b
jne 0x1404fe693
mov eax, 0xff0722b7
jmp 0x1404fe693
mov byte [0x140b84c78], 0
mov eax, 0x3d7e32e2
jmp 0x1404fe693
mov eax, 0xff0722b7
jmp 0x1404fe693
mov eax, dword [0x140b86cf0]
mov ecx, dword [0x140b86cf4]
lea ebp, [rax - 1]
imul ebp, eax
mov edx, 0x3d7e32e2
mov eax, 0x3d7e32e2
test bpl, 1
je 0x1404fe68d
mov eax, 0xadc6cdb4
jmp 0x1404fe68d
mov rdx, qword [rsp + 0x38]
mov r8d, 4
mov rcx, rsi
call fcn.14038cb70
mov eax, 0x33e4a9a7
jmp 0x1404fe693
movss xmm0, dword [rsp + 0x48]
ucomiss xmm0, xmm6
seta bl
mov eax, 0x159e21db
jmp 0x1404fe693
cmp eax, 0x159e21db
jne 0x1404fe693
and bl, 1
mov byte [rsp + 0x20], bl
mov al, byte [rsp + 0x20]
cmp al, 1
jne 0x1404fe3e4
mov eax, dword [0x140b852e4]
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 + 0x38]
call fcn.14037cb80
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0xa0], rax
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0xa8], eax
lea rcx, [rsp + 0x48]
lea rdx, [rsp + 0xa0]
call fcn.14037fcd0
movss xmm0, dword [rsp + 0x4c]
addss xmm0, dword [0x140706ce4]
movss xmm2, dword [rsp + 0x48]
movss xmm1, dword [rsp + 0x50]
lea rax, [rsp + 0x20]
mov qword [rsp + 0x58], rax
mov ebp, 0x75ad5022
lea rax, [rsp + 0x28]
mov ecx, 0xe3e6a4f2
mov edx, 0xa301eedd
nop dword [rax]
cmp ebp, 0xbc49c7d5
jle 0x1404fe983
cmp ebp, 0xbc49c7d6
je 0x1404fe995
cmp ebp, 0xe3e6a4f2
je 0x1404fe9ac
cmp ebp, 0x75ad5022
jne 0x1404fe940
mov ebp, dword [0x140b7e408]
lea ebx, [rbp - 1]
imul ebx, ebp
test bl, 1
mov ebp, 0xbc49c7d6
cmove ebp, edx
cmp dword [0x140b7e40c], 0xa
cmovl ebp, edx
jmp 0x1404fe940
cmp ebp, 0xa301eedd
je 0x1404fe9b3
cmp ebp, 0xb02f5e52
jne 0x1404fe940
jmp 0x1404fe9ee
mov rbp, qword [rsp + 0x58]
movss dword [rbp], xmm2
movss dword [rsp + 0x24], xmm0
mov ebp, 0xa301eedd
jmp 0x1404fe940
mov ebp, 0xb02f5e52
jmp 0x1404fe940
mov rbp, qword [rsp + 0x58]
movss dword [rbp], xmm2
movss dword [rsp + 0x24], xmm0
mov qword [rsp + 0x30], rax
mov ebp, dword [0x140b7e408]
lea ebx, [rbp - 1]
imul ebx, ebp
test bl, 1
mov ebp, 0xbc49c7d6
cmove ebp, ecx
cmp dword [0x140b7e40c], 0xa
cmovl ebp, ecx
jmp 0x1404fe940
mov rax, qword [rsp + 0x30]
movss dword [rax], xmm1
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x48], rax
mov eax, dword [rsp + 0x28]
mov dword [rsp + 0x50], eax
movss xmm2, dword [0x140b852f4]
movss xmm0, dword [rsp + 0x48]
mov eax, dword [0x140b84c00]
cvtsi2ss xmm3, rax
movss xmm1, dword [rsp + 0x4c]
mov eax, dword [0x140b84c04]
movaps xmm5, xmm3
subss xmm5, xmm0
mov ecx, 0xcca0335a
nop word [rax + rax]
cmp ecx, 0xcca0335a
je 0x1404fea52
cmp ecx, 0xfbc0d0e6
jne 0x1404fea40
jmp 0x1404fea59
mov ecx, 0xfbc0d0e6
jmp 0x1404fea40
mov eax, eax
cvtsi2ss xmm4, rax
movss dword [rsp + 0x20], xmm5
movss xmm5, dword [rsp + 0x20]
movss xmm6, dword [0x14070753c]
ucomiss xmm6, xmm2
jbe 0x1404fea99
movaps xmm6, xmm4
subss xmm6, xmm1
mulss xmm5, xmm5
mulss xmm6, xmm6
addss xmm6, xmm5
mulss xmm2, xmm2
ucomiss xmm2, xmm6
jb 0x1404fe3e4
subss xmm0, xmm3
addss xmm1, dword [0x140b84f9c]
subss xmm1, xmm4
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov edx, 0x605a802c
mov eax, 0xf1c00c70
mov ecx, 0x4fa2e476
cmp edx, 0x2a2c56cc
jle 0x1404feafc
cmp edx, 0x2a2c56cd
je 0x1404feb30
cmp edx, 0x4fa2e476
je 0x1404feb5e
cmp edx, 0x605a802c
jne 0x1404feac2
mov rdx, qword [rsp + 0x20]
movss dword [rdx], xmm0
movss dword [rsp + 0x64], xmm1
mov edx, 0xae3a98b5
jmp 0x1404feac2
cmp edx, 0xae3a98b5
je 0x1404feb37
cmp edx, 0xf1c00c70
jne 0x1404feac2
mov edx, dword [0x140b7e450]
lea ebp, [rdx - 1]
imul ebp, edx
test bpl, 1
mov edx, 0x2a2c56cd
cmove edx, ecx
cmp dword [0x140b7e454], 0xa
cmovl edx, ecx
jmp 0x1404feac2
mov edx, 0xf1c00c70
jmp 0x1404feac2
mov edx, dword [0x140b7e450]
lea ebp, [rdx - 1]
imul ebp, edx
test bpl, 1
mov edx, 0x2a2c56cd
cmove edx, eax
cmp dword [0x140b7e454], 0xa
cmovl edx, eax
jmp 0x1404feac2
movss xmm1, dword [rsp + 0x60]
xorps xmm0, xmm0
ucomiss xmm1, xmm0
jne 0x1404feb7f
jp 0x1404feb7f
movss xmm1, dword [rsp + 0x64]
ucomiss xmm1, xmm0
jne 0x1404feb7f
jnp 0x1404fe3e4
cmp byte [0x140b852db], 0
movsd xmm0, qword [0x140707550]
je 0x1404feb9a
movsd xmm1, qword [0x14071c120]
jmp 0x1404febb2
movss xmm1, dword [0x140b852f8]
cvtss2sd xmm1, xmm1
mulsd xmm1, qword [str.ffffff]
addsd xmm1, xmm0
xorps xmm2, xmm2
movapd xmm6, xmm1
cmpnlesd xmm6, xmm2
andpd xmm1, xmm6
andnpd xmm6, xmm0
orpd xmm6, xmm1
mov ecx, dword [0x140b8530c]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1404fec96
cmp byte [0x140b852da], 0
je 0x1404fef8e
mov ecx, dword [0x140b84c00]
mov eax, dword [0x140b84c04]
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
movss xmm1, dword [rsp + 0x4c]
subss xmm0, dword [rsp + 0x48]
mov ecx, 0xcca0335a
cmp ecx, 0xcca0335a
je 0x1404fec23
cmp ecx, 0xfbc0d0e6
jne 0x1404fec11
jmp 0x1404fec2a
mov ecx, 0xfbc0d0e6
jmp 0x1404fec11
mov eax, eax
xorps xmm2, xmm2
cvtsi2ss xmm2, rax
subss xmm2, xmm1
movss dword [rsp + 0x20], xmm0
movss xmm0, dword [rsp + 0x20]
mulss xmm0, xmm0
mulss xmm2, xmm2
addss xmm2, xmm0
movss xmm0, dword [0x14071c148]
ucomiss xmm0, xmm2
jb 0x1404fe3e4
lea rcx, [rsp + 0x20]
call fcn.140408620
mov rax, qword [rsp + 0x20]
mov qword [0x140b84fc8], rax
mov eax, 0x62491ecd
cmp eax, 0x62491ecd
je 0x1404fec8f
cmp eax, 0x9b9dc05c
jne 0x1404fec7c
jmp 0x1404ff058
mov eax, 0x9b9dc05c
jmp 0x1404fec7c
lea rcx, [rsp + 0x20]
call fcn.140408620
mov rax, qword [rsp + 0x20]
mov qword [0x140b84fc8], rax
mov eax, 0x62491ecd
cmp eax, 0x62491ecd
je 0x1404fecc1
cmp eax, 0x9b9dc05c
jne 0x1404fecb1
jmp 0x1404fecc8
mov eax, 0x9b9dc05c
jmp 0x1404fecb1
lea rax, [rsp + 0x58]
mov qword [rsp + 0x30], rax
lea rax, [0x140b84fc0]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x20]
mov rcx, qword [rcx]
mov qword [rax], rcx
mov eax, 0x62491ecd
cmp eax, 0x62491ecd
je 0x1404fed03
cmp eax, 0x9b9dc05c
jne 0x1404fecf3
jmp 0x1404fed0a
mov eax, 0x9b9dc05c
jmp 0x1404fecf3
lea rsi, [rsp + 0x70]
mov qword [rsp + 0x30], rsi
lea rax, [0x140b84fc8]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x20]
mov rcx, qword [rcx]
mov qword [rax], rcx
lea rcx, [rsp + 0x68]
lea r8, [rsp + 0x58]
mov rdx, rsi
call fcn.14062f3c0
mov eax, 0xd1ea3326
cmp eax, 0xd1ea3326
je 0x1404fed57
cmp eax, 0x84985c3
jne 0x1404fed47
jmp 0x1404fed5e
mov eax, 0x84985c3
jmp 0x1404fed47
lea rdi, [rsp + 0x78]
mov qword [rsp + 0x58], rdi
lea rdx, [rsp + 0x68]
mov rcx, rsi
call fcn.14062f720
mov qword [rsp + 0x30], rsi
mov eax, dword [0x140b86b80]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x140b86b84], 0xa
setl cl
or cl, al
mov eax, 0xffc3a595
mov edx, 0x3a29716d
cmove eax, edx
mov ecx, 0xfbf4bf7c
cmove ecx, edx
mov edx, 0x7882f0d3
cmp edx, 0x3a29716c
jle 0x1404fedd6
cmp edx, 0x3a29716d
je 0x1404feded
cmp edx, 0x4ce7c263
je 0x1404fee0c
cmp edx, 0x7882f0d3
jne 0x1404fedb2
mov edx, ecx
jmp 0x1404fedb2
cmp edx, 0xfbf4bf7c
je 0x1404fedf9
cmp edx, 0xffc3a595
jne 0x1404fedb2
mov edx, 0x4ce7c263
jmp 0x1404fedb2
mov rdx, qword [rsp + 0x30]
mov edx, 0xfbf4bf7c
jmp 0x1404fedb2
mov rdx, qword [rsp + 0x30]
movsd xmm0, qword [rdx]
movsd qword [rsp + 0x20], xmm0
mov edx, eax
jmp 0x1404fedb2
movsd xmm0, qword [rsp + 0x20]
mov rax, qword [rsp + 0x58]
movsd qword [rax], xmm0
mov qword [rsp + 0x30], rdi
mov eax, dword [0x140b86b80]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x140b86b84], 0xa
setl cl
or cl, al
mov eax, 0xffc3a595
mov edx, 0x3a29716d
cmove eax, edx
mov ecx, 0xfbf4bf7c
cmove ecx, edx
mov edx, 0x7882f0d3
cmp edx, 0x3a29716c
jle 0x1404fee7c
cmp edx, 0x3a29716d
je 0x1404fee93
cmp edx, 0x4ce7c263
je 0x1404feeb2
cmp edx, 0x7882f0d3
jne 0x1404fee58
mov edx, ecx
jmp 0x1404fee58
cmp edx, 0xfbf4bf7c
je 0x1404fee9f
cmp edx, 0xffc3a595
jne 0x1404fee58
mov edx, 0x4ce7c263
jmp 0x1404fee58
mov rdx, qword [rsp + 0x30]
mov edx, 0xfbf4bf7c
jmp 0x1404fee58
mov rdx, qword [rsp + 0x30]
movsd xmm0, qword [rdx]
movsd qword [rsp + 0x20], xmm0
mov edx, eax
jmp 0x1404fee58
movsd xmm0, qword [rsp + 0x20]
ucomisd xmm0, xmm6
jb 0x1404fe3e4
lea rcx, [rsp + 0x20]
call fcn.140408620
mov rax, qword [rsp + 0x20]
mov qword [0x140b84fc0], rax
mov al, byte [0x140b852db]
test al, al
je 0x1404ff363
cmp byte [0x140b84c78], 0
jne 0x1404ff363
mov rdx, qword [rsp + 0x60]
lea rcx, [0x140b85038]
call fcn.1404fbd00
mov eax, dword [0x140b86d00]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x140b86d04], 0xa
setl cl
or cl, al
mov esi, 0xb72ca808
mov eax, 0x9d494a93
cmove esi, eax
movss xmm0, dword [0x140b85038]
mov edi, 0xed03f61f
cmove edi, eax
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mov eax, 0x6742093e
cmp eax, 0xed03f61e
jle 0x1404fef69
cmp eax, 0xed03f61f
je 0x1404fef7c
cmp eax, 0x6742093e
je 0x1404fef80
cmp eax, 0x5bb003bf
jne 0x1404fef49
mov eax, edi
jmp 0x1404fef49
cmp eax, 0x9d494a93
je 0x1404fef87
cmp eax, 0xb72ca808
jne 0x1404fef49
jmp 0x1404ff406
mov eax, esi
jmp 0x1404fef49
mov eax, 0x5bb003bf
jmp 0x1404fef49
mov eax, 0xed03f61f
jmp 0x1404fef49
mov byte [0x140b84c78], 0
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
mov edx, 0x605a802c
mov eax, 0xf1c00c70
mov ecx, 0x4fa2e476
cmp edx, 0x2a2c56cc
jle 0x1404fefec
cmp edx, 0x2a2c56cd
je 0x1404ff020
cmp edx, 0x4fa2e476
je 0x1404ff04e
cmp edx, 0x605a802c
jne 0x1404fefae
mov rdx, qword [rsp + 0x20]
mov dword [rdx], 0
mov dword [rsp + 0x34], 0
mov edx, 0xae3a98b5
jmp 0x1404fefae
cmp edx, 0xae3a98b5
je 0x1404ff027
cmp edx, 0xf1c00c70
jne 0x1404fefae
mov edx, dword [0x140b7e450]
lea ebp, [rdx - 1]
imul ebp, edx
test bpl, 1
mov edx, 0x2a2c56cd
cmove edx, ecx
cmp dword [0x140b7e454], 0xa
cmovl edx, ecx
jmp 0x1404fefae
mov edx, 0xf1c00c70
jmp 0x1404fefae
mov edx, dword [0x140b7e450]
lea ebp, [rdx - 1]
imul ebp, edx
test bpl, 1
mov edx, 0x2a2c56cd
cmove edx, eax
cmp dword [0x140b7e454], 0xa
cmovl edx, eax
jmp 0x1404fefae
mov rax, qword [rsp + 0x30]
jmp 0x1404fe3dd
lea rax, [rsp + 0x58]
mov qword [rsp + 0x30], rax
lea rax, [0x140b84fc0]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x20]
mov rcx, qword [rcx]
mov qword [rax], rcx
mov eax, 0x62491ecd
cmp eax, 0x62491ecd
je 0x1404ff093
cmp eax, 0x9b9dc05c
jne 0x1404ff083
jmp 0x1404ff09a
mov eax, 0x9b9dc05c
jmp 0x1404ff083
lea rsi, [rsp + 0x70]
mov qword [rsp + 0x30], rsi
lea rax, [0x140b84fc8]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x20]
mov rcx, qword [rcx]
mov qword [rax], rcx
lea rcx, [rsp + 0x68]
lea r8, [rsp + 0x58]
mov rdx, rsi
call fcn.14062f3c0
mov eax, 0xd1ea3326
cmp eax, 0xd1ea3326
je 0x1404ff0e7
cmp eax, 0x84985c3
jne 0x1404ff0d7
jmp 0x1404ff0ee
mov eax, 0x84985c3
jmp 0x1404ff0d7
lea rdi, [rsp + 0x78]
mov qword [rsp + 0x58], rdi
lea rdx, [rsp + 0x68]
mov rcx, rsi
call fcn.14062f720
mov qword [rsp + 0x30], rsi
mov eax, dword [0x140b86b80]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x140b86b84], 0xa
setl cl
or cl, al
mov eax, 0xffc3a595
mov edx, 0x3a29716d
cmove eax, edx
mov ecx, 0xfbf4bf7c
cmove ecx, edx
mov edx, 0x7882f0d3
cmp edx, 0x3a29716c
jle 0x1404ff166
cmp edx, 0x3a29716d
je 0x1404ff17d
cmp edx, 0x4ce7c263
je 0x1404ff19c
cmp edx, 0x7882f0d3
jne 0x1404ff142
mov edx, ecx
jmp 0x1404ff142
cmp edx, 0xfbf4bf7c
je 0x1404ff189
cmp edx, 0xffc3a595
jne 0x1404ff142
mov edx, 0x4ce7c263
jmp 0x1404ff142
mov rdx, qword [rsp + 0x30]
mov edx, 0xfbf4bf7c
jmp 0x1404ff142
mov rdx, qword [rsp + 0x30]
movsd xmm0, qword [rdx]
movsd qword [rsp + 0x20], xmm0
mov edx, eax
jmp 0x1404ff142
movsd xmm0, qword [rsp + 0x20]
mov rax, qword [rsp + 0x58]
movsd qword [rax], xmm0
mov qword [rsp + 0x30], rdi
mov eax, dword [0x140b86b80]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x140b86b84], 0xa
setl cl
or cl, al
mov eax, 0xffc3a595
mov edx, 0x3a29716d
cmove eax, edx
mov ecx, 0xfbf4bf7c
cmove ecx, edx
mov edx, 0x7882f0d3
cmp edx, 0x3a29716c
jle 0x1404ff20c
cmp edx, 0x3a29716d
je 0x1404ff223
cmp edx, 0x4ce7c263
je 0x1404ff242
cmp edx, 0x7882f0d3
jne 0x1404ff1e8
mov edx, ecx
jmp 0x1404ff1e8
cmp edx, 0xfbf4bf7c
je 0x1404ff22f
cmp edx, 0xffc3a595
jne 0x1404ff1e8
mov edx, 0x4ce7c263
jmp 0x1404ff1e8
mov rdx, qword [rsp + 0x30]
mov edx, 0xfbf4bf7c
jmp 0x1404ff1e8
mov rdx, qword [rsp + 0x30]
movsd xmm0, qword [rdx]
movsd qword [rsp + 0x20], xmm0
mov edx, eax
jmp 0x1404ff1e8
movsd xmm0, qword [rsp + 0x20]
ucomisd xmm0, xmm6
jb 0x1404fe3e4
lea rcx, [rsp + 0x20]
call fcn.140408620
mov rax, qword [rsp + 0x20]
mov qword [0x140b84fc0], rax
mov rdx, qword [rsp + 0x60]
lea rcx, [0x140b85038]
call fcn.1404fa940
mov eax, dword [0x140b86d00]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x140b86d04], 0xa
setl cl
or cl, al
mov esi, 0xb72ca808
mov eax, 0x9d494a93
cmove esi, eax
movss xmm0, dword [0x140b85038]
mov edi, 0xed03f61f
cmove edi, eax
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mov eax, 0x6742093e
cmp eax, 0xed03f61e
jle 0x1404ff2de
cmp eax, 0xed03f61f
je 0x1404ff2ee
cmp eax, 0x6742093e
je 0x1404ff2f2
cmp eax, 0x5bb003bf
jne 0x1404ff2be
mov eax, edi
jmp 0x1404ff2be
cmp eax, 0x9d494a93
je 0x1404ff2f9
cmp eax, 0xb72ca808
jne 0x1404ff2be
jmp 0x1404ff300
mov eax, esi
jmp 0x1404ff2be
mov eax, 0x5bb003bf
jmp 0x1404ff2be
mov eax, 0xed03f61f
jmp 0x1404ff2be
movss dword [rsp + 0x20], xmm0
movss xmm6, dword [rsp + 0x20]
movss xmm0, dword [0x140b8503c]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mov eax, 0x6742093e
cmp eax, 0xed03f61e
jle 0x1404ff33e
cmp eax, 0xed03f61f
je 0x1404ff351
cmp eax, 0x6742093e
je 0x1404ff355
cmp eax, 0x5bb003bf
jne 0x1404ff31e
mov eax, edi
jmp 0x1404ff31e
cmp eax, 0x9d494a93
je 0x1404ff35c
cmp eax, 0xb72ca808
jne 0x1404ff31e
jmp 0x1404ff50f
mov eax, esi
jmp 0x1404ff31e
mov eax, 0x5bb003bf
jmp 0x1404ff31e
mov eax, 0xed03f61f
jmp 0x1404ff31e
test al, al
jne 0x1404fe3e4
mov rdx, qword [rsp + 0x60]
lea rcx, [0x140b85038]
call fcn.1404fa940
mov eax, dword [0x140b86d00]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x140b86d04], 0xa
setl cl
or cl, al
mov esi, 0xb72ca808
mov eax, 0x9d494a93
cmove esi, eax
movss xmm0, dword [0x140b85038]
mov edi, 0xed03f61f
cmove edi, eax
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mov eax, 0x6742093e
cmp eax, 0xed03f61e
jle 0x1404ff3e1
cmp eax, 0xed03f61f
je 0x1404ff3f4
cmp eax, 0x6742093e
je 0x1404ff3f8
cmp eax, 0x5bb003bf
jne 0x1404ff3c1
mov eax, edi
jmp 0x1404ff3c1
cmp eax, 0x9d494a93
je 0x1404ff3ff
cmp eax, 0xb72ca808
jne 0x1404ff3c1
jmp 0x1404ff4af
mov eax, esi
jmp 0x1404ff3c1
mov eax, 0x5bb003bf
jmp 0x1404ff3c1
mov eax, 0xed03f61f
jmp 0x1404ff3c1
movss dword [rsp + 0x20], xmm0
movss xmm6, dword [rsp + 0x20]
movss xmm0, dword [0x140b8503c]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mov eax, 0x6742093e
cmp eax, 0xed03f61e
jle 0x1404ff444
cmp eax, 0xed03f61f
je 0x1404ff454
cmp eax, 0x6742093e
je 0x1404ff458
cmp eax, 0x5bb003bf
jne 0x1404ff424
mov eax, edi
jmp 0x1404ff424
cmp eax, 0x9d494a93
je 0x1404ff45f
cmp eax, 0xb72ca808
jne 0x1404ff424
jmp 0x1404ff466
mov eax, esi
jmp 0x1404ff424
mov eax, 0x5bb003bf
jmp 0x1404ff424
mov eax, 0xed03f61f
jmp 0x1404ff424
cvttss2si esi, xmm6
movss dword [rsp + 0x20], xmm0
cvttss2si edi, dword [rsp + 0x20]
lea rbx, [0x140b84b98]
mov rcx, rbx
mov edx, esi
mov r8d, edi
call fcn.1404ff560
mov rcx, rbx
call fcn.1404ff760
neg edi
neg esi
mov rcx, rbx
mov edx, esi
mov r8d, edi
call fcn.1404ff560
mov byte [0x140b84c78], 1
jmp 0x1404fe3e4
movss dword [rsp + 0x20], xmm0
movss xmm6, dword [rsp + 0x20]
movss xmm0, dword [0x140b8503c]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mov eax, 0x6742093e
cmp eax, 0xed03f61e
jle 0x1404ff4ed
cmp eax, 0xed03f61f
je 0x1404ff4fd
cmp eax, 0x6742093e
je 0x1404ff501
cmp eax, 0x5bb003bf
jne 0x1404ff4cd
mov eax, edi
jmp 0x1404ff4cd
cmp eax, 0x9d494a93
je 0x1404ff508
cmp eax, 0xb72ca808
jne 0x1404ff4cd
jmp 0x1404ff50f
mov eax, esi
jmp 0x1404ff4cd
mov eax, 0x5bb003bf
jmp 0x1404ff4cd
mov eax, 0xed03f61f
jmp 0x1404ff4cd
movss dword [rsp + 0x20], xmm0
cvttss2si esi, dword [rsp + 0x20]
cvttss2si edi, xmm6
cmp dword [0x140b852e4], 3
jne 0x1404ff53b
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 0x1404fe3e4
lea rcx, [0x140b84b98]
mov edx, edi
mov r8d, esi
call fcn.1404ff560
jmp 0x1404fe3e4