Function at 0x18000d840
Capabilities:
Log keystrokes via polling

Disassembly:
push rbp
push rbx
push r12
lea rbp, [rsp - 0x2e0]
sub rsp, 0x3e0
mov r12, rcx
call fcn.1800043a0
mov rbx, rax
test rax, rax
je 0x18000e7e7
mov rax, qword [rax + 0x180]
test rax, rax
je 0x18000e7e7
mov qword [rsp + 0x3c0], r15
xor r15d, r15d
mov qword [rbp + 0x10], r15
mov qword [rbp + 0x18], r15
mov rax, qword [rax + 0x38]
mov rcx, qword [rax]
test rcx, rcx
je 0x18000e7df
mov qword [rsp + 0x3c8], r14
mov r14, qword [rcx + 0x30]
test r14, r14
je 0x18000e7d7
cmp qword [r14 + 0x2b8], r15
je 0x18000e7d7
mov qword [rsp + 0x3d0], r13
mov r13, qword [r14 + 0x2a0]
test r13, r13
je 0x18000e7cf
cmp qword [r14 + 0x228], r15
je 0x18000e7cf
mov qword [rsp + 0x400], rsi
movaps xmmword [rsp + 0x330], xmm14
movss xmm14, dword [0x180088014]
mov qword [rsp + 0x3d8], rdi
movaps xmmword [rsp + 0x3b0], xmm6
movaps xmmword [rsp + 0x3a0], xmm7
movaps xmmword [rsp + 0x390], xmm8
movaps xmmword [rsp + 0x380], xmm9
movaps xmmword [rsp + 0x370], xmm10
movaps xmmword [rsp + 0x360], xmm11
movaps xmmword [rsp + 0x350], xmm12
movaps xmmword [rsp + 0x340], xmm13
movaps xmmword [rsp + 0x320], xmm15
mov qword [0x18008b740], r14
mov qword [0x18008b738], r15
call fcn.1800074b0
lea r8, [rbp + 0x10]
mov rdx, rax
mov rcx, rbx
call fcn.180003520
lea rsi, str.Head
cmp dword [rbp + 0x18], r15d
jle 0x18000e461
movdqa xmm15, xmmword [0x180034ed0]
xorps xmm12, xmm12
movss xmm9, dword [0x180034e0c]
movss xmm13, dword [0x180034e10]
movss xmm11, dword [0x180034e14]
nop
test r15d, r15d
js 0x18000e454
mov rax, qword [rbp + 0x10]
mov ecx, r15d
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je 0x18000e454
cmp rdi, r13
je 0x18000e454
cmp qword [rdi + 0x130], 0
je 0x18000e454
mov rbx, qword [rdi + 0x280]
lea rcx, [rbp + 0x100]
mov dword [rbp + 0x108], 5
mov dword [rbp + 0x10c], 5
mov qword [rbp + 0x100], rsi
call fcn.180003120
mov rdx, rax
mov rcx, rbx
call fcn.180003720
mov r8d, eax
lea rdx, [rbp + 0x150]
mov rcx, rbx
call fcn.1800038e0
lea rdx, [rsp + 0x70]
mov rcx, rbx
mov r8, qword [rax]
call fcn.1800041b0
mov rbx, qword [rdi + 0x280]
lea rax, str.Root
lea rcx, [rbp + 0x110]
mov qword [rbp + 0x110], rax
mov dword [rbp + 0x118], 5
mov dword [rbp + 0x11c], 5
call fcn.180003120
mov rdx, rax
mov rcx, rbx
call fcn.180003720
mov r8d, eax
lea rdx, [rbp + 0x168]
mov rcx, rbx
call fcn.1800038e0
lea rdx, [rbp + 0xc8]
mov rcx, rbx
mov r8, qword [rax]
call fcn.1800041b0
xor r9d, r9d
lea r8, [rbp + 0x310]
lea rdx, [rbp + 0xc8]
mov rcx, r14
call fcn.180004bd0
test al, al
je 0x18000e454
movss xmm0, dword [rsp + 0x70]
lea r8, [rbp + 0x308]
movss xmm1, dword [rsp + 0x74]
lea rdx, [rbp + 0xb8]
movss dword [rbp + 0xb8], xmm0
xor r9d, r9d
movss xmm0, dword [rsp + 0x78]
mov rcx, r14
addss xmm0, dword [0x180034e6c]
movss dword [rbp + 0xbc], xmm1
movss dword [rbp + 0xc0], xmm0
call fcn.180004bd0
test al, al
je 0x18000e454
mov rsi, qword [rdi + 0x558]
test rsi, rsi
je 0x18000e44d
mov rcx, rsi
call fcn.1800051a0
comiss xmm12, xmm0
jae 0x18000e44d
movss xmm0, dword [rsp + 0x70]
movss xmm2, dword [rsp + 0x74]
mov rax, qword [r14 + 0x2b8]
movss xmm10, dword [rbp + 0x314]
movss xmm8, dword [rbp + 0x30c]
subss xmm10, xmm8
movsd xmm3, qword [rax + 0x1bb0]
movaps xmm1, xmm3
movsd qword [rbp + 0x80], xmm3
shufps xmm1, xmm1, 0x55
subss xmm0, xmm3
subss xmm2, xmm1
movss xmm1, dword [rsp + 0x78]
subss xmm1, dword [rax + 0x1bb8]
mulss xmm10, xmm9
cvtps2pd xmm4, xmm0
cvtps2pd xmm5, xmm2
cvtps2pd xmm2, xmm1
mulsd xmm5, xmm5
xorps xmm0, xmm0
mulsd xmm4, xmm4
mulsd xmm2, xmm2
addsd xmm5, xmm4
addsd xmm5, xmm2
ucomisd xmm0, xmm5
ja 0x18000dbc1
sqrtpd xmm0, xmm5
jmp 0x18000dbc9
movaps xmm0, xmm5
call fcn.180020dc8
divsd xmm0, qword [0x180034e38]
mov rbx, qword [rdi + 0x240]
xorps xmm7, xmm7
cvtsd2ss xmm7, xmm0
test rbx, rbx
je 0x18000e44d
cmp byte [0x180088028], 0
movdqa xmm0, xmmword [0x180034ee0]
movups xmmword [rbp - 0x70], xmm0
je 0x18000dd5f
movss xmm1, dword [rbp + 0x308]
lea rax, [rbp - 0x70]
movaps xmm6, xmm10
movss dword [rbp + 0x74], xmm8
mulss xmm6, xmm9
lea r8, [rbp + 0x70]
lea rdx, [rbp + 0x90]
mov rcx, r12
movaps xmm3, xmm13
movss dword [rbp + 0x94], xmm8
mov qword [rsp + 0x20], rax
movaps xmm0, xmm6
addss xmm0, xmm1
subss xmm1, xmm6
movss dword [rbp + 0x70], xmm0
movss dword [rbp + 0x90], xmm1
call fcn.1800043d0
movss xmm2, dword [rbp + 0x308]
lea rax, [rbp - 0x70]
movss xmm1, dword [rbp + 0x314]
lea r8, [rbp + 0x98]
movaps xmm0, xmm6
movss dword [rbp + 0x9c], xmm1
addss xmm0, xmm2
movss dword [rbp + 0xa4], xmm1
subss xmm2, xmm6
mov qword [rsp + 0x20], rax
movaps xmm3, xmm13
lea rdx, [rbp + 0xa0]
mov rcx, r12
movss dword [rbp + 0x98], xmm0
movss dword [rbp + 0xa0], xmm2
call fcn.1800043d0
movss xmm1, dword [rbp + 0x308]
lea rax, [rbp - 0x70]
movss xmm0, dword [rbp + 0x314]
subss xmm1, xmm6
movaps xmm3, xmm13
movss dword [rbp + 0xac], xmm0
lea r8, [rbp + 0xa8]
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0xb0]
mov rcx, r12
movss dword [rbp + 0xa8], xmm1
movss dword [rbp + 0xb0], xmm1
movss xmm1, dword [rbp + 0x30c]
movss dword [rbp + 0xb4], xmm1
call fcn.1800043d0
addss xmm6, dword [rbp + 0x308]
movss xmm0, dword [rbp + 0x314]
lea rax, [rbp - 0x70]
movss xmm1, dword [rbp + 0x30c]
lea r8, [rbp + 0x20]
movaps xmm3, xmm13
movss dword [rbp + 0x24], xmm0
lea rdx, [rbp + 0x28]
movss dword [rbp + 0x2c], xmm1
mov rcx, r12
movss dword [rbp + 0x20], xmm6
movss dword [rbp + 0x28], xmm6
mov qword [rsp + 0x20], rax
call fcn.1800043d0
cmp byte [0x180088029], 0
je 0x18000dd8c
movups xmm0, xmmword [rbp - 0x70]
mov r8, qword [rdi + 0x280]
lea r9, [rbp + 0xf0]
mov rdx, r14
mov rcx, r12
movaps xmmword [rbp + 0xf0], xmm0
call fcn.18000c130
cmp byte [0x18008802c], 0
je 0x18000df37
cvttss2si edx, xmm7
lea rcx, [rbp + 0x130]
call fcn.18000e9e0
mov rdx, rax
lea r8, [0x180034b80]
lea rcx, [rbp - 0x30]
call fcn.180005e50
mov rdx, qword [rbp + 0x148]
cmp rdx, 7
jbe 0x18000de02
mov rcx, qword [rbp + 0x130]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000ddfd
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000e7ff
call fcn.180013880
cmp qword [rbp - 0x18], 7
lea rdx, [rbp - 0x30]
movss xmm1, dword [rbp + 0x314]
xorps xmm0, xmm0
cmova rdx, qword [rbp - 0x30]
xor eax, eax
addss xmm1, dword [0x180034e44]
movups xmmword [rbp + 0x130], xmm0
mov dword [rbp + 0x30], 0x40000000
movss xmm0, dword [rbp + 0x310]
movss dword [rbp + 0x40], xmm0
movss dword [rbp + 0x44], xmm1
movups xmmword [rbp + 0x80], xmm15
mov dword [rbp + 0x34], 0x40000000
mov dword [rbp + 0x38], 0x3f800000
mov dword [rbp + 0x3c], 0x3f800000
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rax
cmp word [rdx], ax
je 0x18000de84
mov rcx, 0xffffffffffffffff
inc rcx
cmp word [rdx + rcx*2], ax
jne 0x18000de76
inc rcx
jmp 0x18000de87
mov rcx, rax
test ecx, ecx
mov dword [rbp - 8], ecx
mov dword [rbp - 4], ecx
lea r9, [rbp + 0x40]
cmovne rax, rdx
lea r8, [rbp - 0x10]
mov rdx, qword [0x18008b2d0]
mov rcx, r12
mov qword [rbp - 0x10], rax
lea rax, [rbp + 0x80]
mov qword [rsp + 0x60], rax
lea rax, [rbp + 0x30]
mov byte [rsp + 0x58], 1
mov byte [rsp + 0x50], 1
mov byte [rsp + 0x48], 1
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x130]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x70]
movss dword [rsp + 0x30], xmm13
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x38]
mov qword [rsp + 0x20], rax
call fcn.1800045c0
mov rdx, qword [rbp - 0x18]
cmp rdx, 7
jbe 0x18000df37
mov rcx, qword [rbp - 0x30]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000df32
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000e7f3
call fcn.180013880
cmp byte [0x18008802a], 0
je 0x18000e0c9
lea rdx, [rbp + 0x170]
mov rcx, rbx
call fcn.180003ff0
mov rdx, qword [rbp + 0x170]
test rdx, rdx
je 0x18000e0c9
xor ebx, ebx
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], rbx
mov r8, 0xffffffffffffffff
mov qword [rbp - 0x18], rbx
nop dword [rax + rax]
inc r8
cmp word [rdx + r8*2], bx
jne 0x18000df80
lea rcx, [rbp - 0x30]
call fcn.180001d50
cmp qword [rbp - 0x18], 7
lea rdx, [rbp - 0x30]
movss xmm1, dword [rbp + 0x30c]
xorps xmm0, xmm0
subss xmm1, dword [0x180034e60]
cmova rdx, qword [rbp - 0x30]
movups xmmword [rbp + 0x80], xmm0
mov dword [rbp + 0x48], 0x40000000
movss xmm0, dword [rbp + 0x308]
movss dword [rbp + 0x5c], xmm1
movss dword [rbp + 0x58], xmm0
movups xmmword [rbp + 0x130], xmm15
mov dword [rbp + 0x4c], 0x40000000
mov dword [rbp + 0x50], 0x3f800000
mov dword [rbp + 0x54], 0x3f800000
mov qword [rbp], rbx
mov qword [rbp + 8], rbx
cmp word [rdx], bx
je 0x18000e013
mov rcx, 0xffffffffffffffff
inc rcx
cmp word [rdx + rcx*2], bx
jne 0x18000e005
inc rcx
jmp 0x18000e016
mov rcx, rbx
test ecx, ecx
mov dword [rbp + 8], ecx
mov dword [rbp + 0xc], ecx
lea r9, [rbp + 0x58]
mov rax, rbx
lea r8, [rbp]
cmovne rax, rdx
mov rcx, r12
mov rdx, qword [0x18008b2d0]
mov qword [rbp], rax
lea rax, [rbp + 0x130]
mov qword [rsp + 0x60], rax
lea rax, [rbp + 0x48]
mov byte [rsp + 0x58], 1
mov byte [rsp + 0x50], 1
mov byte [rsp + 0x48], 1
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x80]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x70]
movss dword [rsp + 0x30], xmm13
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x50]
mov qword [rsp + 0x20], rax
call fcn.1800045c0
mov rdx, qword [rbp - 0x18]
cmp rdx, 7
jbe 0x18000e0c9
mov rcx, qword [rbp - 0x30]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000e0c4
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000e7f9
call fcn.180013880
cmp byte [0x18008802d], 0
je 0x18000e166
mov rcx, rsi
call fcn.1800051a0
movaps xmm6, xmm0
mov rcx, rsi
mulss xmm6, dword [0x180034e94]
call fcn.180005510
movss xmm5, dword [rbp + 0x314]
movaps xmm4, xmm11
movss xmm2, dword [rbp + 0x30c]
mov rcx, r12
movss xmm3, dword [0x180034e2c]
subss xmm5, xmm2
divss xmm6, xmm0
mov byte [rsp + 0x30], 1
xorps xmm0, xmm0
cvtss2sd xmm0, xmm10
mulss xmm10, xmm9
divsd xmm0, qword [0x180034e20]
cvttss2si eax, xmm6
cvtpd2ps xmm1, xmm0
mov dword [rsp + 0x28], eax
movss dword [rsp + 0x20], xmm5
maxss xmm4, xmm1
movss xmm1, dword [rbp + 0x308]
subss xmm1, xmm10
minss xmm3, xmm4
subss xmm1, dword [0x180034e50]
call fcn.180009100
cmp byte [0x18008b2af], 0
je 0x18000e208
mov ecx, dword [0x180088030]
test ecx, ecx
je 0x18000e1c0
sub ecx, 1
je 0x18000e19e
cmp ecx, 1
jne 0x18000e767
movss xmm0, dword [0x18008b7ac]
mulss xmm0, xmm9
unpcklps xmm0, xmm12
jmp 0x18000e1dd
movss xmm1, dword [0x18008b7ac]
movss xmm0, dword [0x18008b7a8]
mulss xmm1, xmm9
unpcklps xmm1, xmm0
movsd qword [rbp + 0x318], xmm1
jmp 0x18000e1e5
movss xmm0, dword [0x18008b7ac]
movss xmm1, dword [0x18008b7a8]
mulss xmm0, xmm9
mulss xmm1, xmm9
unpcklps xmm0, xmm1
movsd qword [rbp + 0x318], xmm0
lea rax, [rbp - 0x70]
movaps xmm3, xmm13
lea r8, [rbp + 0x318]
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0x308]
mov rcx, r12
call fcn.1800043d0
mov rbx, qword [rdi + 0x280]
lea rsi, str.Head
lea rcx, [rbp + 0x120]
mov qword [rbp + 0x120], rsi
mov dword [rbp + 0x128], 5
mov dword [rbp + 0x12c], 5
call fcn.180003120
mov rdx, rax
mov rcx, rbx
call fcn.180003720
mov r8d, eax
lea rdx, [rbp + 0x160]
mov rcx, rbx
call fcn.1800038e0
lea rdx, [rbp - 0x40]
mov rcx, rbx
mov r8, qword [rax]
call fcn.1800041b0
movsd xmm0, qword [rbp - 0x40]
lea r8, [rbp + 0x60]
mov eax, dword [rbp - 0x38]
lea rdx, [rbp - 0x80]
xor r9d, r9d
movsd qword [rbp - 0x80], xmm0
mov rcx, r14
mov dword [rbp - 0x78], eax
call fcn.180004bd0
movss xmm7, dword [rbp + 0x60]
comiss xmm12, xmm7
movss xmm1, dword [rbp + 0x64]
jbe 0x18000e2ac
comiss xmm12, xmm1
jbe 0x18000e2ac
movss xmm0, dword [0x180034ec0]
jmp 0x18000e300
movss xmm0, dword [0x18008b7a8]
mulss xmm0, xmm9
subss xmm0, xmm1
movaps xmm1, xmm11
call fcn.18001f800
movaps xmm6, xmm0
movaps xmm1, xmm11
movss xmm0, dword [0x18008b7ac]
mulss xmm0, xmm9
subss xmm0, xmm7
call fcn.18001f800
addss xmm6, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm6
ja 0x18000e2f8
xorps xmm0, xmm0
sqrtss xmm0, xmm6
jmp 0x18000e300
movaps xmm0, xmm6
call fcn.180020e94
comiss xmm14, xmm0
jbe 0x18000e33d
movss xmm1, dword [0x180034e8c]
comiss xmm1, xmm0
jb 0x18000e33d
cmp byte [0x18008b2c0], 0
je 0x18000e33d
mov ecx, dword [0x180088018]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x18000e33d
mov rcx, qword [0x18008b740]
lea rdx, [rbp - 0x40]
call fcn.180005870
cmp byte [0x18008b29e], 0
je 0x18000e36f
xor r9d, r9d
mov qword [rbp - 0x50], 0
lea r8, [rbp - 0x50]
mov dword [rbp - 0x48], 0
mov rdx, rdi
mov rcx, r14
call fcn.1800049f0
test al, al
je 0x18000e454
mov rbx, qword [rdi + 0x280]
lea rcx, [rbp - 0x60]
mov dword [rbp - 0x58], 5
mov dword [rbp - 0x54], 5
mov qword [rbp - 0x60], rsi
call fcn.180003120
mov rdx, rax
mov rcx, rbx
call fcn.180003720
mov r8d, eax
lea rdx, [rbp + 0x158]
mov rcx, rbx
call fcn.1800038e0
lea rdx, [rbp + 0xd8]
mov rcx, rbx
mov r8, qword [rax]
call fcn.1800041b0
xor r9d, r9d
lea r8, [rbp + 0x68]
lea rdx, [rbp + 0xd8]
mov rcx, r14
call fcn.180004bd0
test al, al
jne 0x18000e3e4
movss xmm0, dword [0x180034eb8]
jmp 0x18000e43a
movss xmm0, dword [0x18008b7a8]
movaps xmm1, xmm11
mulss xmm0, xmm9
subss xmm0, dword [rbp + 0x6c]
call fcn.18001f800
movaps xmm6, xmm0
movaps xmm1, xmm11
movss xmm0, dword [0x18008b7ac]
mulss xmm0, xmm9
subss xmm0, dword [rbp + 0x68]
call fcn.18001f800
addss xmm6, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm6
ja 0x18000e432
xorps xmm0, xmm0
sqrtss xmm0, xmm6
jmp 0x18000e43a
movaps xmm0, xmm6
call fcn.180020e94
comiss xmm14, xmm0
jbe 0x18000e454
movaps xmm14, xmm0
mov qword [0x18008b738], rdi
jmp 0x18000e454
lea rsi, str.Head
inc r15d
cmp r15d, dword [rbp + 0x18]
jl 0x18000d9b0
mov rcx, qword [0x18008b740]
call fcn.180005350
mov rdi, rax
test rax, rax
je 0x18000e696
mov rcx, rax
call fcn.1800056b0
test rax, rax
je 0x18000e4ad
cmp byte [0x18008b2be], 0
je 0x18000e4ad
mov dword [rax + 0x144], 0x461c3c00
mov dword [rax + 0xc4], 0x461c3c00
mov dword [rax + 0xc8], 0x461c3c00
cmp byte [0x18008b29d], 0
mov rsi, qword [0x18008b738]
je 0x18000e604
test rsi, rsi
je 0x18000e604
mov rbx, qword [rsi + 0x280]
lea rax, str.Head
lea rcx, [rbp - 0x60]
mov qword [rbp - 0x60], rax
mov dword [rbp - 0x58], 5
mov dword [rbp - 0x54], 5
call fcn.180003120
mov rdx, rax
mov rcx, rbx
call fcn.180003720
mov r8d, eax
lea rdx, [rbp + 0x308]
mov rcx, rbx
call fcn.1800038e0
lea rdx, [rbp - 0x50]
mov rcx, rbx
mov r8, qword [rax]
call fcn.1800041b0
mov rcx, qword [r14 + 0x2b8]
lea rdx, [rsp + 0x70]
call fcn.180003ac0
movss xmm0, dword [rbp - 0x50]
lea rcx, [rbp - 0x40]
subss xmm0, dword [rsp + 0x70]
movss xmm1, dword [rbp - 0x4c]
subss xmm1, dword [rsp + 0x74]
movss dword [rbp - 0x40], xmm0
movss xmm0, dword [rbp - 0x48]
subss xmm0, dword [rsp + 0x78]
movss dword [rbp - 0x3c], xmm1
movss dword [rbp - 0x38], xmm0
call fcn.18000b2f0
lea r9, [rsp + 0x70]
mov r8, rsi
mov rdx, rdi
mov rcx, rdi
movsd xmm0, qword [rax]
movsd qword [rbp - 0x80], xmm0
xorps xmm0, xmm0
mov eax, dword [rax + 8]
mov dword [rbp - 0x78], eax
xor eax, eax
mov qword [rbp + 0x200], rax
mov dword [rbp + 0x208], eax
lea rax, [rbp + 0x180]
movups xmmword [rbp + 0x180], xmm0
movups xmmword [rbp + 0x190], xmm0
movups xmmword [rbp + 0x1a0], xmm0
movups xmmword [rbp + 0x1b0], xmm0
movups xmmword [rbp + 0x1c0], xmm0
movups xmmword [rbp + 0x1d0], xmm0
movups xmmword [rbp + 0x1e0], xmm0
movups xmmword [rbp + 0x1f0], xmm0
movss xmm0, dword [0x180034ebc]
movss dword [rsp + 0x40], xmm0
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x80]
movss dword [rsp + 0x30], xmm0
movss dword [rsp + 0x28], xmm0
mov qword [rsp + 0x20], rax
call fcn.180005a60
mov ecx, 0x58
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
lea rax, [rdi + 0xc90]
movups xmm0, xmmword [rax]
lea rcx, [rbp + 0x180]
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 xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x50], xmm1
movups xmm1, xmmword [rax + 0x80]
movups xmmword [rcx + 0x60], xmm0
movups xmm0, xmmword [rax + 0x70]
movups xmmword [rcx + 0x70], xmm0
movups xmm0, xmmword [rax + 0x90]
movups xmmword [rcx + 0x80], xmm1
movups xmmword [rcx + 0x90], xmm0
mov rax, qword [rbp + 0x1b8]
test rax, rax
je 0x18000e696
cmp byte [0x18008b2bd], 0
je 0x18000e696
mov dword [rax + 0xcd8], 0x3e7
cmp byte [0x180088012], 0
mov rbx, qword [0x18008b738]
je 0x18000e767
test rbx, rbx
je 0x18000e767
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x18000e767
mov rbx, qword [rbx + 0x280]
lea rax, str.Neck
lea rcx, [rbp - 0x60]
mov qword [rbp - 0x60], rax
mov dword [rbp - 0x58], 5
mov dword [rbp - 0x54], 5
call fcn.180003120
mov rdx, rax
mov rcx, rbx
call fcn.180003720
mov r8d, eax
lea rdx, [rbp + 0x308]
mov rcx, rbx
call fcn.1800038e0
lea rdx, [rbp + 0xd8]
mov rcx, rbx
mov r8, qword [rax]
call fcn.1800041b0
mov rcx, qword [r14 + 0x2b8]
lea rdx, [rbp + 0xc8]
call fcn.180003ac0
lea r8, [rbp + 0xd8]
lea rdx, [rbp + 0xc8]
lea rcx, [rbp + 0x80]
call fcn.180003300
lea rdx, [rbp - 0x80]
mov rcx, r14
movsd xmm0, qword [rax]
movsd qword [rbp - 0x80], xmm0
mov eax, dword [rax + 8]
mov dword [rbp - 0x78], eax
call fcn.180004dd0
mov rdi, qword [rsp + 0x3d8]
movaps xmm13, xmmword [rsp + 0x340]
movaps xmm12, xmmword [rsp + 0x350]
movaps xmm11, xmmword [rsp + 0x360]
movaps xmm10, xmmword [rsp + 0x370]
movaps xmm9, xmmword [rsp + 0x380]
movaps xmm8, xmmword [rsp + 0x390]
movaps xmm7, xmmword [rsp + 0x3a0]
movaps xmm6, xmmword [rsp + 0x3b0]
movaps xmm15, xmmword [rsp + 0x320]
mov rsi, qword [rsp + 0x400]
movaps xmm14, xmmword [rsp + 0x330]
mov r13, qword [rsp + 0x3d0]
mov r14, qword [rsp + 0x3c8]
mov r15, qword [rsp + 0x3c0]
add rsp, 0x3e0
pop r12
pop rbx
pop rbp
ret
call fcn.18001cc24
int3
call fcn.18001cc24
int3
call fcn.18001cc24
int3