Function at 0x1800297a0
Capabilities:
Log keystrokes via polling

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x288
movaps xmmword [rsp + 0x270], xmm15
movaps xmmword [rsp + 0x260], xmm14
movaps xmmword [rsp + 0x250], xmm13
movaps xmmword [rsp + 0x240], xmm12
movaps xmmword [rsp + 0x230], xmm11
movaps xmmword [rsp + 0x220], xmm10
movaps xmmword [rsp + 0x210], xmm9
movaps xmmword [rsp + 0x200], xmm8
movaps xmmword [rsp + 0x1f0], xmm7
movdqa xmmword [rsp + 0x1e0], xmm6
mov rbx, r9
mov r14, r8
mov rsi, rdx
mov rdi, rcx
movaps xmm11, xmmword [0x18004c350]
movaps xmmword [rsp + 0x80], xmm11
movaps xmm12, xmmword [0x18004c340]
movaps xmmword [rsp + 0x30], xmm12
lea r15, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r15
call fcn.180007b70
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.180007b70
movaps xmmword [rsp + 0x80], xmm11
movaps xmm13, xmmword [0x18004c360]
movaps xmmword [rsp + 0x30], xmm13
lea r15, [rsp + 0x70]
lea rdx, [rsp + 0x80]
mov rcx, r15
call fcn.180007b70
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.180007b70
movzx ebp, byte [rdi + 0xb0]
movaps xmmword [rsp + 0x80], xmm11
movaps xmmword [rsp + 0x30], xmm12
lea r15, [rsp + 0x60]
lea rdx, [rsp + 0x80]
mov rcx, r15
call fcn.180007b70
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.180007b70
and bpl, 1
movzx eax, word [rdi + 0xb8]
mov word [rsp + 0x80], 0
mov ecx, ebp
rol ax, cl
cmp al, 0xff
je 0x18002af70
mov r15, qword [r14]
test r15, r15
je 0x18002af70
movaps xmm0, xmmword [0x18004c6c0]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c6d0]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r12, qword [rax + r15]
test r12, r12
je 0x18002af70
movaps xmm9, xmmword [0x18004c210]
movaps xmmword [rsp + 0x80], xmm9
movaps xmm10, xmmword [0x18004c220]
movaps xmmword [rsp + 0x30], xmm10
lea r15, [rsp + 0x20]
lea r14, [rsp + 0x80]
mov rcx, r15
mov rdx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r13, qword [rax + rsi]
test r13, r13
je 0x18002af70
mov qword [rsp + 0x190], r12
movabs rax, 0x13d69b7f6ebbcaa0
mov qword [rsp + 0x1d0], rax
mov qword [rsp + 0x20], rax
movabs rax, 0x230f7b5fa366f952
mov qword [rsp + 0x1c0], rax
mov qword [rsp + 0x28], rax
movabs rax, 0x76a2f81e1cdaa2e3
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0x80], rax
movabs rax, 0x236a172bd707bb20
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x88], rax
mov rax, r14
movdqa xmm0, xmmword [rsp + 0x20]
pxor xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x20], xmm0
movd ebp, xmm0
movaps xmm7, xmmword [0x18004c230]
movaps xmm8, xmmword [0x18004c240]
lea r15, [rsp + 0x70]
lea r12, [rsp + 0x30]
xorps xmm14, xmm14
jmp 0x180029ab2
movaps xmm0, xmmword [0x18004c5c0]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c5d0]
movdqa xmmword [rsp + 0x30], xmm0
mov rcx, r15
mov rdx, r14
call fcn.180007b70
movdqa xmm6, xmm0
mov rcx, r15
mov rdx, r12
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r13, qword [rax + r13]
test r13, r13
je 0x18002af70
movaps xmmword [rsp + 0x80], xmm7
movaps xmmword [rsp + 0x30], xmm8
mov rcx, r15
mov rdx, r14
call fcn.180007b70
movdqa xmm6, xmm0
mov rcx, r15
mov rdx, r12
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rcx, xmm0
add rcx, r13
movaps xmmword [rsp + 0x170], xmm14
movaps xmmword [rsp + 0x160], xmm14
movaps xmmword [rsp + 0x150], xmm14
movaps xmmword [rsp + 0x140], xmm14
movaps xmmword [rsp + 0x130], xmm14
movaps xmmword [rsp + 0x120], xmm14
movaps xmmword [rsp + 0x110], xmm14
movaps xmmword [rsp + 0x100], xmm14
movaps xmmword [rsp + 0xf0], xmm14
movaps xmmword [rsp + 0xe0], xmm14
movaps xmmword [rsp + 0xd0], xmm14
movaps xmmword [rsp + 0xc0], xmm14
movaps xmmword [rsp + 0xb0], xmm14
movaps xmmword [rsp + 0xa0], xmm14
movaps xmmword [rsp + 0x90], xmm14
movaps xmmword [rsp + 0x80], xmm14
mov rdx, r14
call fcn.180008580
cmp byte [rsp + 0x80], bpl
jne 0x180029a60
mov eax, 1
mov ecx, ebp
nop dword [rax + rax]
test cl, cl
je 0x180029bbe
movzx ecx, byte [rsp + rax + 0x80]
lea rdx, [rax + 1]
cmp cl, byte [rsp + rax + 0x20]
mov rax, rdx
je 0x180029ba0
jmp 0x180029a60
mov r15, qword [0x18006e780]
test r15, r15
je 0x18002af70
movaps xmm14, xmmword [0x18004c0d0]
movaps xmmword [rsp + 0x80], xmm14
movaps xmm15, xmmword [0x18004c0e0]
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
cmp qword [rax + r15], 0
je 0x18002af70
mov r15, qword [0x18006e780]
test r15, r15
je 0x180029c81
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r15, qword [rax + r15]
jmp 0x180029c84
xor r15d, r15d
movaps xmm0, xmmword [0x18004c370]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c380]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
cmp qword [rax + r15], 0
je 0x18002af70
mov r15, qword [0x18006e780]
test r15, r15
je 0x180029d8f
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
cmp qword [rax + r15], 0
je 0x180029d8f
mov r15, qword [0x18006e780]
test r15, r15
je 0x180029d94
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r15, qword [rax + r15]
jmp 0x180029d97
xor r15d, r15d
jmp 0x180029dec
xor r15d, r15d
movaps xmm0, xmmword [0x18004c370]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c380]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r15, qword [rax + r15]
movaps xmm0, xmmword [0x18004c390]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c3a0]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq r12, xmm0
add r12, r15
movaps xmm0, xmmword [0x18004c3b0]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c3c0]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov rax, qword [rax + r12]
cmp qword [rax], 0
je 0x18002af70
mov r15, qword [0x18006e780]
test r15, r15
je 0x18002a060
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
cmp qword [rax + r15], 0
je 0x18002a060
mov r15, qword [0x18006e780]
test r15, r15
je 0x180029f52
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r15, qword [rax + r15]
jmp 0x180029f55
xor r15d, r15d
movaps xmm0, xmmword [0x18004c370]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c380]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
cmp qword [rax + r15], 0
je 0x18002a060
mov r15, qword [0x18006e780]
test r15, r15
je 0x18002a068
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
cmp qword [rax + r15], 0
je 0x18002a068
mov r15, qword [0x18006e780]
test r15, r15
je 0x18002a06d
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r15, qword [rax + r15]
jmp 0x18002a070
xor r15d, r15d
jmp 0x18002a171
xor r15d, r15d
jmp 0x18002a0c5
xor r15d, r15d
movaps xmm0, xmmword [0x18004c370]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c380]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r15, qword [rax + r15]
movaps xmm0, xmmword [0x18004c390]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c3a0]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq r12, xmm0
add r12, r15
movaps xmm0, xmmword [0x18004c3b0]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c3c0]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov rax, qword [rax + r12]
mov r15, qword [rax]
movaps xmm0, xmmword [0x18004c3d0]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c3e0]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
cmp qword [rax + r15], 0
je 0x18002af70
mov r15, qword [0x18006e780]
test r15, r15
je 0x18002a558
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
cmp qword [rax + r15], 0
je 0x18002a558
mov r15, qword [0x18006e780]
test r15, r15
je 0x18002a280
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r15, qword [rax + r15]
jmp 0x18002a283
xor r15d, r15d
movaps xmm0, xmmword [0x18004c370]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c380]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
cmp qword [rax + r15], 0
je 0x18002a558
mov r15, qword [0x18006e780]
test r15, r15
je 0x18002a38e
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
cmp qword [rax + r15], 0
je 0x18002a38e
mov r15, qword [0x18006e780]
test r15, r15
je 0x18002a393
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r15, qword [rax + r15]
jmp 0x18002a396
xor r15d, r15d
jmp 0x18002a3eb
xor r15d, r15d
movaps xmm0, xmmword [0x18004c370]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c380]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r15, qword [rax + r15]
movaps xmm0, xmmword [0x18004c390]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c3a0]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq r12, xmm0
add r12, r15
movaps xmm0, xmmword [0x18004c3b0]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c3c0]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov rax, qword [rax + r12]
cmp qword [rax], 0
je 0x18002a558
mov r15, qword [0x18006e780]
test r15, r15
je 0x18002b0ea
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
cmp qword [rax + r15], 0
je 0x18002b0ea
mov r15, qword [0x18006e780]
test r15, r15
je 0x18002afdc
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r15, qword [rax + r15]
jmp 0x18002afdf
xor r14d, r14d
movaps xmm0, xmmword [0x18004c4d0]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c4e0]
movdqa xmmword [rsp + 0x30], xmm0
lea r15, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r15
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rcx, xmm0
call fcn.180007e10
mov r15, rax
movaps xmm14, xmmword [0x18004c190]
movaps xmmword [rsp + 0x80], xmm14
movaps xmm15, xmmword [0x18004c1a0]
movaps xmmword [rsp + 0x30], xmm15
lea r12, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r12
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r12
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov ebp, dword [rax + r15]
mov qword [rsp + 0x20], 0
mov rax, qword [r14]
lea r8, [rsp + 0x20]
mov rcx, r14
mov rdx, r15
call qword [rax + 0x220]
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x70]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov dword [rax + r15], ebp
mov r13, qword [rsp + 0x20]
test r13, r13
je 0x18002af70
movaps xmmword [rsp + 0x80], xmm9
movaps xmmword [rsp + 0x30], xmm10
lea r15, [rsp + 0x70]
lea r12, [rsp + 0x80]
mov rcx, r15
mov rdx, r12
call fcn.180007b70
movdqa xmm6, xmm0
lea r14, [rsp + 0x30]
mov rcx, r15
mov rdx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov qword [rsp + 0x180], r13
mov r13, qword [rax + r13]
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x1c0]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x1a0]
mov qword [rsp + 0x88], rax
mov rax, r12
movdqa xmm0, xmmword [rsp + 0x20]
pxor xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x20], xmm0
movd ebp, xmm0
xorps xmm9, xmm9
jmp 0x18002a77b
movaps xmm0, xmmword [0x18004c5c0]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c5d0]
movdqa xmmword [rsp + 0x30], xmm0
mov rcx, r15
mov rdx, r12
call fcn.180007b70
movdqa xmm6, xmm0
mov rcx, r15
mov rdx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r13, qword [rax + r13]
test r13, r13
je 0x18002af70
movaps xmmword [rsp + 0x80], xmm7
movaps xmmword [rsp + 0x30], xmm8
mov rcx, r15
mov rdx, r12
call fcn.180007b70
movdqa xmm6, xmm0
mov rcx, r15
mov rdx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rcx, xmm0
add rcx, r13
movaps xmmword [rsp + 0x170], xmm9
movaps xmmword [rsp + 0x160], xmm9
movaps xmmword [rsp + 0x150], xmm9
movaps xmmword [rsp + 0x140], xmm9
movaps xmmword [rsp + 0x130], xmm9
movaps xmmword [rsp + 0x120], xmm9
movaps xmmword [rsp + 0x110], xmm9
movaps xmmword [rsp + 0x100], xmm9
movaps xmmword [rsp + 0xf0], xmm9
movaps xmmword [rsp + 0xe0], xmm9
movaps xmmword [rsp + 0xd0], xmm9
movaps xmmword [rsp + 0xc0], xmm9
movaps xmmword [rsp + 0xb0], xmm9
movaps xmmword [rsp + 0xa0], xmm9
movaps xmmword [rsp + 0x90], xmm9
movaps xmmword [rsp + 0x80], xmm9
mov rdx, r12
call fcn.180008580
cmp byte [rsp + 0x80], bpl
jne 0x18002a729
mov eax, 1
mov ecx, ebp
test cl, cl
je 0x18002a87f
movzx ecx, byte [rsp + rax + 0x80]
lea rdx, [rax + 1]
cmp cl, byte [rsp + rax + 0x20]
mov rax, rdx
je 0x18002a861
jmp 0x18002a729
movaps xmm0, xmmword [0x18004c6e0]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c6f0]
movdqa xmmword [rsp + 0x30], xmm0
lea r15, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r15
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov rcx, qword [rsp + 0x190]
movzx ebp, byte [rax + rcx]
movaps xmm0, xmmword [0x18004c700]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c710]
movdqa xmmword [rsp + 0x30], xmm0
lea r15, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r15
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rcx, xmm0
call fcn.180007e10
mov r15, rax
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r12, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r12
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r12
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r14d, dword [rax + r15]
mov dword [rsp + 0x20], 0
mov r13, qword [rsp + 0x180]
mov rax, qword [r13]
lea r8, [rsp + 0x20]
mov rcx, r13
mov rdx, r15
call qword [rax + 0x220]
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r12, [rsp + 0x70]
lea rdx, [rsp + 0x80]
mov rcx, r12
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r12
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov dword [rax + r15], r14d
cmp r13, rsi
je 0x18002af70
cmp dword [rsp + 0x20], ebp
je 0x18002af70
movaps xmm15, xmmword [0x18004c4f0]
movaps xmmword [rsp + 0x80], xmm15
movaps xmm7, xmmword [0x18004c500]
movaps xmmword [rsp + 0x30], xmm7
lea r15, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r15
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r14, qword [rax + r13]
movaps xmm0, xmmword [0x18004c5a0]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c5b0]
movdqa xmmword [rsp + 0x30], xmm0
lea r15, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r15
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
movss xmm9, dword [rax + r14]
movsd xmm8, qword [rax + r14 + 4]
movaps xmmword [rsp + 0x80], xmm15
movaps xmmword [rsp + 0x30], xmm7
lea r15, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r15
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r12, qword [rax + r13]
movaps xmm0, xmmword [0x18004c510]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c520]
movdqa xmmword [rsp + 0x30], xmm0
lea r15, [rsp + 0x20]
lea r14, [rsp + 0x80]
mov rcx, r15
mov rdx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
movss xmm14, dword [rax + r12 + 8]
movss xmm0, dword [0x18004d280]
mulss xmm0, xmm8
cvtss2sd xmm7, xmm0
movsd xmm0, qword [rax + r12]
movaps xmmword [rsp + 0x1a0], xmm0
movss xmm0, dword [rbx]
movaps xmmword [rsp + 0x190], xmm0
movaps xmm0, xmm7
call fcn.18003f680
movaps xmm6, xmm0
movss xmm0, dword [rbx + 4]
movaps xmmword [rsp + 0x180], xmm0
movaps xmm0, xmm7
call fcn.180040120
movaps xmmword [rsp + 0x1b0], xmm0
movss xmm7, dword [rbx + 8]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x170], xmm0
movaps xmmword [rsp + 0x160], xmm0
movaps xmmword [rsp + 0x150], xmm0
movaps xmmword [rsp + 0x140], xmm0
movaps xmmword [rsp + 0x130], xmm0
movaps xmmword [rsp + 0x120], xmm0
movaps xmmword [rsp + 0x110], xmm0
movaps xmmword [rsp + 0x100], xmm0
movaps xmmword [rsp + 0xf0], xmm0
movaps xmmword [rsp + 0xe0], xmm0
movaps xmmword [rsp + 0xd0], xmm0
movaps xmmword [rsp + 0xc0], xmm0
movaps xmmword [rsp + 0xb0], xmm0
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0x80], xmm0
mov rbx, qword [sym.imp.KERNEL32.dll_GetTickCount64]
call rbx
test rax, rax
movaps xmmword [rsp + 0x1d0], xmm8
js 0x18002ac4b
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
jmp 0x18002ac63
mov rcx, rax
shr rcx, 1
and eax, 1
or rax, rcx
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
addss xmm0, xmm0
call fcn.18003fc00
movaps xmm8, xmm0
call rbx
test rax, rax
movaps xmmword [rsp + 0x1c0], xmm9
js 0x18002ac86
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
jmp 0x18002ac9e
mov rcx, rax
shr rcx, 1
and eax, 1
or rax, rcx
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
addss xmm0, xmm0
call fcn.18003fc00
movaps xmm9, xmm0
call rbx
test rax, rax
js 0x18002acb8
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
jmp 0x18002acd0
mov rcx, rax
shr rcx, 1
and eax, 1
or rax, rcx
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
addss xmm0, xmm0
call fcn.18003fc00
movaps xmm10, xmm0
mov ecx, 0x42
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
mov ebx, eax
movaps xmmword [rsp + 0x30], xmm11
movaps xmmword [rsp + 0x20], xmm12
lea r15, [rsp + 0x70]
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.180007b70
lea rdx, [rsp + 0x20]
mov rcx, r15
call fcn.180007b70
movaps xmmword [rsp + 0x30], xmm11
movaps xmmword [rsp + 0x20], xmm13
lea r15, [rsp + 0x60]
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.180007b70
lea rdx, [rsp + 0x20]
mov rcx, r15
call fcn.180007b70
movzx ebp, byte [rdi + 0x80]
movaps xmmword [rsp + 0x30], xmm11
movaps xmmword [rsp + 0x20], xmm12
lea r15, [rsp + 0x68]
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.180007b70
lea rdx, [rsp + 0x20]
mov rcx, r15
call fcn.180007b70
and bpl, 1
movzx eax, word [rdi + 0x88]
mov word [rsp + 0x30], 0
mov ecx, ebp
rol ax, cl
cmp al, 0xff
je 0x18002af70
test bx, bx
je 0x18002af70
unpcklps xmm9, xmm10
mulps xmm9, xmmword [0x18004d290]
divps xmm9, xmmword [0x18004d2a0]
mulss xmm8, dword [0x18004d2b0]
divss xmm8, dword [0x18004cf94]
unpcklps xmm7, xmm8
movlhps xmm7, xmm9
movaps xmm0, xmmword [rsp + 0x190]
unpcklps xmm0, xmmword [rsp + 0x180]
cvtps2pd xmm10, xmm0
cvtps2pd xmm9, qword [rsp + 0x1a0]
movaps xmmword [rsp + 0x30], xmm15
movdqa xmm0, xmmword [0x18004c500]
movdqa xmmword [rsp + 0x20], xmm0
lea rdi, [rsp + 0x70]
lea rdx, [rsp + 0x30]
mov rcx, rdi
call fcn.180007b70
movdqa xmm8, xmm0
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.180007b70
pxor xmm0, xmm8
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov rsi, qword [rax + rsi]
movaps xmm0, xmmword [0x18004c830]
movaps xmmword [rsp + 0x30], xmm0
movdqa xmm0, xmmword [0x18004c840]
movdqa xmmword [rsp + 0x20], xmm0
lea rdi, [rsp + 0x70]
lea rdx, [rsp + 0x30]
mov rcx, rdi
call fcn.180007b70
movdqa xmm8, xmm0
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.180007b70
pxor xmm0, xmm8
pshufd xmm0, xmm0, 0xee
movq rcx, xmm0
call fcn.180007e10
mov rdi, rax
movaps xmm11, xmmword [0x18004c190]
movaps xmmword [rsp + 0x30], xmm11
movaps xmm12, xmmword [0x18004c1a0]
movaps xmmword [rsp + 0x20], xmm12
lea rbx, [rsp + 0x70]
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.180007b70
movdqa xmm8, xmm0
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.180007b70
pxor xmm0, xmm8
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov ebx, dword [rax + rdi]
unpcklpd xmm6, xmmword [rsp + 0x1b0]
mulpd xmm6, xmm10
addpd xmm6, xmm9
cvtpd2ps xmm0, xmm6
movlpd qword [rsp + 0x30], xmm0
unpcklps xmm14, xmmword [rsp + 0x1c0]
unpcklpd xmm14, xmmword [rsp + 0x1d0]
addps xmm14, xmm7
movups xmmword [rsp + 0x38], xmm14
mov byte [rsp + 0x48], 0
mov qword [rsp + 0x49], r14
mov byte [rsp + 0x51], 0
mov rax, qword [rsi]
lea r8, [rsp + 0x30]
mov rcx, rsi
mov rdx, rdi
call qword [rax + 0x220]
movaps xmmword [rsp + 0x20], xmm11
movaps xmmword [rsp + 0x70], xmm12
lea rsi, [rsp + 0x60]
lea rdx, [rsp + 0x20]
mov rcx, rsi
call fcn.180007b70
movapd xmm6, xmm0
lea rdx, [rsp + 0x70]
mov rcx, rsi
call fcn.180007b70
xorpd xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov dword [rax + rdi], ebx
movaps xmm6, xmmword [rsp + 0x1e0]
movaps xmm7, xmmword [rsp + 0x1f0]
movaps xmm8, xmmword [rsp + 0x200]
movaps xmm9, xmmword [rsp + 0x210]
movaps xmm10, xmmword [rsp + 0x220]
movaps xmm11, xmmword [rsp + 0x230]
movaps xmm12, xmmword [rsp + 0x240]
movaps xmm13, xmmword [rsp + 0x250]
movaps xmm14, xmmword [rsp + 0x260]
movaps xmm15, xmmword [rsp + 0x270]
add rsp, 0x288
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor r15d, r15d
movaps xmm0, xmmword [0x18004c370]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c380]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
cmp qword [rax + r15], 0
je 0x18002b0ea
mov r15, qword [0x18006e780]
test r15, r15
je 0x18002b102
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
cmp qword [rax + r15], 0
je 0x18002b102
mov r15, qword [0x18006e780]
test r15, r15
je 0x18002b107
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r15, qword [rax + r15]
jmp 0x18002b10a
xor r15d, r15d
movaps xmm14, xmmword [0x18004c3d0]
movaps xmm15, xmmword [0x18004c3e0]
jmp 0x18002b21b
xor r15d, r15d
jmp 0x18002b15f
xor r15d, r15d
movaps xmm0, xmmword [0x18004c370]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c380]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r15, qword [rax + r15]
movaps xmm14, xmmword [0x18004c3d0]
movaps xmm15, xmmword [0x18004c3e0]
movaps xmm0, xmmword [0x18004c390]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c3a0]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq r12, xmm0
add r12, r15
movaps xmm0, xmmword [0x18004c3b0]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x18004c3c0]
movdqa xmmword [rsp + 0x30], xmm0
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov rax, qword [rax + r12]
mov r15, qword [rax]
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x30], xmm15
lea r14, [rsp + 0x20]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.180007b70
movdqa xmm6, xmm0
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.180007b70
pxor xmm0, xmm6
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mov r14, qword [rax + r15]
jmp 0x18002a55b