Function at 0x180001b90
Capabilities:
Log keystrokes via polling

Disassembly:
push rbp
push rbx
push r13
lea rbp, [rsp - 0x30]
sub rsp, 0x130
mov rax, qword [0x18001a028]
xor rax, rsp
mov qword [rbp - 0x48], rax
mov rbx, qword [0x18001aab8]
mov r13d, 4
mov edx, r13d
lea rcx, [rbx + 0x2cf9dcc]
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1800037b1
cmp dword [rbx + 0x2cf9dcc], 0xb
jne 0x1800037b1
mov qword [rsp + 0x150], rsi
lea ecx, [rax + 0x31]
mov qword [rsp + 0x158], rdi
mov qword [rsp + 0x160], r12
mov qword [rsp + 0x128], r14
mov qword [rsp + 0x120], r15
movaps xmmword [rsp + 0x100], xmm7
movaps xmmword [rsp + 0xf0], xmm8
movaps xmmword [rsp + 0xe0], xmm9
movaps xmmword [rsp + 0xd0], xmm10
movaps xmmword [rsp + 0xc0], xmm11
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ebx, ebx
lea ecx, [r13 + 0xe]
test ax, ax
setne bl
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ecx, ecx
lea esi, [r13 + 0x1c]
test ax, ax
mov edi, 0x3010
setne cl
test ebx, ecx
je 0x180001d4c
cmp byte [0x18001aad5], 0
sete al
mov byte [0x18001aad5], al
cmp al, 1
jne 0x180001cb7
cmp word [0x1800103c6], 0
mov eax, dword [0x1800103c4]
mov dword [rbp - 0x50], eax
mov byte [0x18001aad7], 0
je 0x180001ca0
xor word [rbp - 0x4e], 0x35
mov word [rbp - 0x50], si
movups xmm0, xmmword [0x1800103b0]
mov eax, dword [0x1800103c0]
cmp word [0x1800103c2], 0
jmp 0x180001cef
cmp word [0x1800103de], 0
mov eax, dword [0x1800103dc]
mov dword [rbp - 0x50], eax
mov byte [0x18001aad7], 1
je 0x180001cda
xor word [rbp - 0x4e], 0x35
mov word [rbp - 0x50], si
movups xmm0, xmmword [0x1800103c8]
mov eax, dword [0x1800103d8]
cmp word [0x1800103da], 0
mov dword [rsp + 0x50], eax
movups xmmword [rsp + 0x40], xmm0
je 0x180001d35
xor word [rsp + 0x42], 0x35
xor word [rsp + 0x44], 0x36
xor word [rsp + 0x46], 0x37
xor word [rsp + 0x48], 0x38
xor word [rsp + 0x4a], 0x39
xor word [rsp + 0x4c], 0x3a
xor word [rsp + 0x4e], 0x3b
xor word [rsp + 0x50], 0x3c
xor word [rsp + 0x52], 0x3d
mov word [rsp + 0x40], di
mov r9d, 0x1000
lea r8, [rbp - 0x50]
lea rdx, [rsp + 0x40]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov ecx, 0x32
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ebx, ebx
mov ecx, 0x12
test ax, ax
setne bl
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ecx, ecx
test ax, ax
setne cl
test ebx, ecx
je 0x180001e5d
cmp byte [0x18001aad7], 0
sete al
mov byte [0x18001aad7], al
cmp al, 1
jne 0x180001dc8
cmp word [0x1800103f6], 0
mov eax, dword [0x1800103f4]
mov dword [rbp - 0x50], eax
mov byte [0x18001aad5], 0
je 0x180001db1
xor word [rbp - 0x4e], 0x35
mov word [rbp - 0x50], si
movups xmm0, xmmword [0x1800103e0]
mov eax, dword [0x1800103f0]
cmp word [0x1800103f2], 0
jmp 0x180001e00
cmp word [0x18001040e], 0
mov eax, dword [0x18001040c]
mov dword [rbp - 0x50], eax
mov byte [0x18001aad5], 1
je 0x180001deb
xor word [rbp - 0x4e], 0x35
mov word [rbp - 0x50], si
movups xmm0, xmmword [0x1800103f8]
mov eax, dword [0x180010408]
cmp word [0x18001040a], 0
mov dword [rsp + 0x50], eax
movups xmmword [rsp + 0x40], xmm0
je 0x180001e46
xor word [rsp + 0x42], 0x35
xor word [rsp + 0x44], 0x36
xor word [rsp + 0x46], 0x37
xor word [rsp + 0x48], 0x38
xor word [rsp + 0x4a], 0x39
xor word [rsp + 0x4c], 0x3a
xor word [rsp + 0x4e], 0x3b
xor word [rsp + 0x50], 0x3c
xor word [rsp + 0x52], 0x3d
mov word [rsp + 0x40], di
mov r9d, 0x1000
lea r8, [rbp - 0x50]
lea rdx, [rsp + 0x40]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov ecx, 0x33
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ebx, ebx
mov ecx, 0x12
test ax, ax
setne bl
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ecx, ecx
test ax, ax
setne cl
test ebx, ecx
je 0x180001f60
cmp byte [0x18001aada], 0
sete al
mov byte [0x18001aada], al
cmp al, 1
jne 0x180001ed2
cmp word [0x180010426], 0
mov eax, dword [0x180010424]
mov dword [rbp - 0x50], eax
je 0x180001ebb
xor word [rbp - 0x4e], 0x35
mov word [rbp - 0x50], si
movups xmm0, xmmword [0x180010410]
mov eax, dword [0x180010420]
cmp word [0x180010422], 0
jmp 0x180001f03
cmp word [0x18001043e], 0
mov eax, dword [0x18001043c]
mov dword [rbp - 0x50], eax
je 0x180001eee
xor word [rbp - 0x4e], 0x35
mov word [rbp - 0x50], si
movups xmm0, xmmword [0x180010428]
mov eax, dword [0x180010438]
cmp word [0x18001043a], 0
mov dword [rsp + 0x50], eax
movups xmmword [rsp + 0x40], xmm0
je 0x180001f49
xor word [rsp + 0x42], 0x35
xor word [rsp + 0x44], 0x36
xor word [rsp + 0x46], 0x37
xor word [rsp + 0x48], 0x38
xor word [rsp + 0x4a], 0x39
xor word [rsp + 0x4c], 0x3a
xor word [rsp + 0x4e], 0x3b
xor word [rsp + 0x50], 0x3c
xor word [rsp + 0x52], 0x3d
mov word [rsp + 0x40], di
mov r9d, 0x1000
lea r8, [rbp - 0x50]
lea rdx, [rsp + 0x40]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov ecx, 0x34
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ebx, ebx
mov ecx, 0x12
test ax, ax
setne bl
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ecx, ecx
test ax, ax
setne cl
test ebx, ecx
je 0x180002063
cmp byte [0x18001aad6], 0
sete al
mov byte [0x18001aad6], al
cmp al, 1
jne 0x180001fd5
cmp word [0x180010456], 0
mov eax, dword [0x180010454]
mov dword [rbp - 0x50], eax
je 0x180001fbe
xor word [rbp - 0x4e], 0x35
mov word [rbp - 0x50], si
movups xmm0, xmmword [0x180010440]
mov eax, dword [0x180010450]
cmp word [0x180010452], 0
jmp 0x180002006
cmp word [0x18001046e], 0
mov eax, dword [0x18001046c]
mov dword [rbp - 0x50], eax
je 0x180001ff1
xor word [rbp - 0x4e], 0x35
mov word [rbp - 0x50], si
movups xmm0, xmmword [0x180010458]
mov eax, dword [0x180010468]
cmp word [0x18001046a], 0
mov dword [rsp + 0x50], eax
movups xmmword [rsp + 0x40], xmm0
je 0x18000204c
xor word [rsp + 0x42], 0x35
xor word [rsp + 0x44], 0x36
xor word [rsp + 0x46], 0x37
xor word [rsp + 0x48], 0x38
xor word [rsp + 0x4a], 0x39
xor word [rsp + 0x4c], 0x3a
xor word [rsp + 0x4e], 0x3b
xor word [rsp + 0x50], 0x3c
xor word [rsp + 0x52], 0x3d
mov word [rsp + 0x40], di
mov r9d, 0x1000
lea r8, [rbp - 0x50]
lea rdx, [rsp + 0x40]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov ecx, 0x35
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ebx, ebx
mov ecx, 0x12
test ax, ax
setne bl
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ecx, ecx
test ax, ax
setne cl
test ebx, ecx
je 0x180002166
cmp byte [0x18001aad9], 0
sete al
mov byte [0x18001aad9], al
cmp al, 1
jne 0x1800020d8
cmp word [0x180010486], 0
mov eax, dword [0x180010484]
mov dword [rbp - 0x50], eax
je 0x1800020c1
xor word [rbp - 0x4e], 0x35
mov word [rbp - 0x50], si
movups xmm0, xmmword [0x180010470]
mov eax, dword [0x180010480]
cmp word [0x180010482], 0
jmp 0x180002109
cmp word [0x18001049e], 0
mov eax, dword [0x18001049c]
mov dword [rbp - 0x50], eax
je 0x1800020f4
xor word [rbp - 0x4e], 0x35
mov word [rbp - 0x50], si
movups xmm0, xmmword [str._00]
mov eax, dword [0x180010498]
cmp word [0x18001049a], 0
mov dword [rsp + 0x50], eax
movups xmmword [rsp + 0x40], xmm0
je 0x18000214f
xor word [rsp + 0x42], 0x35
xor word [rsp + 0x44], 0x36
xor word [rsp + 0x46], 0x37
xor word [rsp + 0x48], 0x38
xor word [rsp + 0x4a], 0x39
xor word [rsp + 0x4c], 0x3a
xor word [rsp + 0x4e], 0x3b
xor word [rsp + 0x50], 0x3c
xor word [rsp + 0x52], 0x3d
mov word [rsp + 0x40], di
mov r9d, 0x1000
lea r8, [rbp - 0x50]
lea rdx, [rsp + 0x40]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov ecx, 0x36
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ebx, ebx
mov ecx, 0x12
test ax, ax
setne bl
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ecx, ecx
test ax, ax
setne cl
test ebx, ecx
je 0x180002269
cmp byte [0x18001aad8], 0
sete al
mov byte [0x18001aad8], al
cmp al, 1
jne 0x1800021db
cmp word [0x1800104b6], 0
mov eax, dword [0x1800104b4]
mov dword [rbp - 0x50], eax
je 0x1800021c4
xor word [rbp - 0x4e], 0x35
mov word [rbp - 0x50], si
movups xmm0, xmmword [0x1800104a0]
mov eax, dword [0x1800104b0]
cmp word [0x1800104b2], 0
jmp 0x18000220c
cmp word [0x1800104ce], 0
mov eax, dword [0x1800104cc]
mov dword [rbp - 0x50], eax
je 0x1800021f7
xor word [rbp - 0x4e], 0x35
mov word [rbp - 0x50], si
movups xmm0, xmmword [0x1800104b8]
mov eax, dword [0x1800104c8]
cmp word [0x1800104ca], 0
mov dword [rsp + 0x50], eax
movups xmmword [rsp + 0x40], xmm0
je 0x180002252
xor word [rsp + 0x42], 0x35
xor word [rsp + 0x44], 0x36
xor word [rsp + 0x46], 0x37
xor word [rsp + 0x48], 0x38
xor word [rsp + 0x4a], 0x39
xor word [rsp + 0x4c], 0x3a
xor word [rsp + 0x4e], 0x3b
xor word [rsp + 0x50], 0x3c
xor word [rsp + 0x52], 0x3d
mov word [rsp + 0x40], di
mov r9d, 0x1000
lea r8, [rbp - 0x50]
lea rdx, [rsp + 0x40]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov ecx, 0x37
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ebx, ebx
mov ecx, 0x12
test ax, ax
setne bl
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ecx, ecx
test ax, ax
setne cl
test ebx, ecx
je 0x18000236c
cmp byte [0x18001aad0], 0
sete al
mov byte [0x18001aad0], al
cmp al, 1
jne 0x1800022de
cmp word [0x1800104e6], 0
mov eax, dword [0x1800104e4]
mov dword [rbp - 0x50], eax
je 0x1800022c7
xor word [rbp - 0x4e], 0x35
mov word [rbp - 0x50], si
movups xmm0, xmmword [str._05_]
mov eax, dword [0x1800104e0]
cmp word [0x1800104e2], 0
jmp 0x18000230f
cmp word [0x1800104fe], 0
mov eax, dword [0x1800104fc]
mov dword [rbp - 0x50], eax
je 0x1800022fa
xor word [rbp - 0x4e], 0x35
mov word [rbp - 0x50], si
movups xmm0, xmmword [str._0FQ0]
mov eax, dword [0x1800104f8]
cmp word [0x1800104fa], 0
mov dword [rsp + 0x50], eax
movups xmmword [rsp + 0x40], xmm0
je 0x180002355
xor word [rsp + 0x42], 0x35
xor word [rsp + 0x44], 0x36
xor word [rsp + 0x46], 0x37
xor word [rsp + 0x48], 0x38
xor word [rsp + 0x4a], 0x39
xor word [rsp + 0x4c], 0x3a
xor word [rsp + 0x4e], 0x3b
xor word [rsp + 0x50], 0x3c
xor word [rsp + 0x52], 0x3d
mov word [rsp + 0x40], di
mov r9d, 0x1000
lea r8, [rbp - 0x50]
lea rdx, [rsp + 0x40]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov ecx, 0x38
movaps xmmword [rsp + 0x110], xmm6
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ebx, ebx
mov ecx, 0x12
test ax, ax
setne bl
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ecx, ecx
test ax, ax
setne cl
test ebx, ecx
je 0x18000270a
cmp byte [0x18001aadb], 0
sete al
mov byte [0x18001aadb], al
cmp al, 1
jne 0x18000255a
cmp word [0x18001051a], 0
mov eax, dword [0x180010518]
mov dword [rbp - 0x50], eax
mov dword [section..data], 0x64
je 0x1800023e0
xor word [rbp - 0x4e], 0x35
mov word [rbp - 0x50], si
cmp word [0x180010516], 0
movups xmm0, xmmword [str._05g]
movsd xmm1, qword [0x180010510]
movups xmmword [rsp + 0x40], xmm0
movsd qword [rsp + 0x50], xmm1
je 0x1800026f6
xor r8d, r8d
cmp dword [0x18001a030], 2
jl 0x18000250a
movdqa xmm2, xmmword [0x1800105e0]
mov eax, 0x1f
movdqa xmm3, xmmword [0x1800105f0]
movdqa xmm1, xmm2
movdqa xmm4, xmmword [0x180010640]
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
mov r8d, 8
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm6, r13d
movd xmm5, eax
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180010600]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [str._05g]
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
paddw xmm2, xmmword [0x180010610]
pxor xmm2, xmm0
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movq qword [rsp + 0x40], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180010600]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rsp + 0x48]
pshufd xmm2, xmm1, 0xd8
paddw xmm2, xmmword [0x180010610]
pxor xmm2, xmm0
movq qword [rsp + 0x48], xmm2
mov eax, r8d
lea r9, [rsp + 0x40]
lea r9, [r9 + rax*2]
nop word [rax + rax]
mov eax, 0x51eb851f
lea r9, [r9 + 2]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x32
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x34
xor word [r9 - 2], ax
cmp r8d, 0xc
jl 0x180002520
jmp 0x1800026f6
cmp word [0x18001053a], 0
mov eax, dword [0x180010538]
mov dword [rbp - 0x50], eax
mov dword [section..data], 0x32
je 0x180002580
xor word [rbp - 0x4e], 0x35
mov word [rbp - 0x50], si
cmp word [0x180010536], 0
movups xmm0, xmmword [str._0O]
movsd xmm1, qword [0x180010530]
movups xmmword [rsp + 0x40], xmm0
movsd qword [rsp + 0x50], xmm1
je 0x1800026f6
xor r8d, r8d
cmp dword [0x18001a030], 2
jl 0x1800026b5
movdqa xmm2, xmmword [0x1800105e0]
mov eax, 0x1f
movdqa xmm4, xmmword [0x180010640]
movdqa xmm1, xmm2
movdqa xmm8, xmmword [0x180010610]
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
mov r8d, 8
pmuldq xmm0, xmm4
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movd xmm6, r13d
movd xmm5, eax
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180010600]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [str._0O]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movdqa xmm2, xmmword [0x1800105f0]
pxor xmm3, xmm0
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movq qword [rsp + 0x40], xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180010600]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rsp + 0x48]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
pxor xmm3, xmm0
movq qword [rsp + 0x48], xmm3
mov eax, r8d
lea r9, [rsp + 0x40]
lea r9, [r9 + rax*2]
mov eax, 0x51eb851f
lea r9, [r9 + 2]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x32
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x34
xor word [r9 - 2], ax
cmp r8d, 0xc
jl 0x1800026c1
xor r9d, r9d
lea r8, [rbp - 0x50]
lea rdx, [rsp + 0x40]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov rdx, r13
movabs rcx, 0x1405093b8
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x18000272c
movabs eax, dword [0x1405093b8]
jmp 0x18000272e
xor eax, eax
mov rdx, r13
mov dword [0x18001a004], eax
movabs rcx, 0x1405093c0
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x180002758
movabs eax, dword [0x1405093c0]
mov ecx, eax
jmp 0x18000275a
xor ecx, ecx
movd xmm0, dword [0x18001a004]
mov edx, 8
mov rbx, qword [0x18001aab8]
cvtdq2pd xmm0, xmm0
mov dword [0x18001a008], ecx
mulsd xmm0, qword [0x180010598]
cvttsd2si eax, xmm0
movd xmm0, ecx
lea rcx, [rbx + 0x2cfb8fc]
cvtdq2pd xmm0, xmm0
mov dword [0x18001a00c], eax
mulsd xmm0, qword [0x180010598]
cvttsd2si eax, xmm0
mov dword [0x18001a010], eax
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1800027eb
mov ecx, dword [rbx + 0x2cfb8fc]
cmp ecx, 0x31
ja 0x1800027d6
movabs rdx, 0x2821000000010
bt rdx, rcx
jae 0x1800027d6
lea r15d, [rax + 0x10]
jmp 0x1800027f1
cmp ecx, 0x13
ja 0x1800027eb
mov eax, 0xa5020
mov r15d, 0x1e
bt eax, ecx
jb 0x1800027f1
mov r15d, 8
mov rbx, qword [0x18001aab8]
mov edx, 8
lea rcx, [rbx + 0x2cfa3a8]
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x180002817
mov rax, qword [rbx + 0x2cfa3a8]
jmp 0x180002819
xor eax, eax
lea rbx, [rax + 0x289]
mov edx, 8
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x180002837
mov rax, qword [rbx]
jmp 0x180002839
xor eax, eax
mov rbx, qword [0x18001aab8]
lea r12d, [rax + 1]
mov edx, 8
lea rcx, [rbx + 0x2cfa3a8]
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x180002863
mov rax, qword [rbx + 0x2cfa3a8]
jmp 0x180002865
xor eax, eax
lea rbx, [rax + 0x48]
mov edx, 8
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x180002880
mov rbx, qword [rbx]
jmp 0x180002882
xor ebx, ebx
mov rdx, r13
lea rcx, [rbx + 0xa0]
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
xorps xmm7, xmm7
test eax, eax
jne 0x1800028a4
movss xmm11, dword [rbx + 0xa0]
jmp 0x1800028a8
xorps xmm11, xmm11
mov rdx, r13
movss dword [rsp + 0x68], xmm11
lea rcx, [rbx + 0xa4]
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1800028ce
movss xmm10, dword [rbx + 0xa4]
jmp 0x1800028d2
xorps xmm10, xmm10
mov rdx, r13
movss dword [rsp + 0x70], xmm10
lea rcx, [rbx + 0xa8]
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1800028f5
movss xmm7, dword [rbx + 0xa8]
xor dil, dil
movss dword [rsp + 0x6c], xmm7
cmp byte [0x18001aad0], dil
je 0x180002959
mov ecx, esi
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180002959
mov rbx, qword [0x18001aab8]
lea r9, [rbp - 0x50]
mov edx, 8
lea rcx, [rbx + 0x2f6a278]
lea r8d, [rdx + 0x38]
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
mov r8d, dword [rbp - 0x50]
lea rcx, [rbx + 0x2f6a279]
lea r9, [rbp - 0x50]
mov dword [rbx + 0x2f6a278], 0
mov edx, 8
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
movss xmm8, dword [0x1800105dc]
xor ebx, ebx
movss xmm9, dword [0x1800105d4]
movsxd r13, r12d
lea esi, [rbx + 6]
lea r14d, [rbx + 1]
cmp r15d, 8
jne 0x1800029b5
xor eax, eax
mov rcx, rbx
cmp r12d, r15d
seta al
sub rcx, rax
xor eax, eax
inc rcx
cmp r12d, r15d
jbe 0x18000299e
cmp rcx, 8
setbe al
jmp 0x1800029a5
cmp rcx, 9
seta al
test eax, eax
je 0x180002ace
mov dil, 1
jmp 0x180002adf
cmp r15d, 0x10
movzx edi, dil
cmovae edi, r14d
cmp r15d, 0x1e
jne 0x180002ad6
mov rdi, qword [0x18001aab8]
lea edx, [r15 - 0x16]
lea rcx, [rdi + 0x2cfa3a8]
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1800029f0
mov rcx, qword [rdi + 0x2cfa3a8]
jmp 0x1800029f2
xor ecx, ecx
imul rdi, r13, 0x1048
mov edx, 8
add rdi, rcx
lea rcx, [rdi - 0xda0]
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x180002a1b
mov r14, qword [rdi - 0xda0]
jmp 0x180002a1e
xor r14d, r14d
mov rdi, qword [0x18001aab8]
mov edx, 8
lea rcx, [rdi + 0x2cfa3a8]
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x180002a44
mov rdx, qword [rdi + 0x2cfa3a8]
jmp 0x180002a46
xor edx, edx
imul eax, ebx, 0x1048
movsxd rdi, eax
add rdi, rdx
mov edx, 8
lea rcx, [rdi - 0xda0]
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x180002ac8
mov rsi, qword [rdi - 0xda0]
test rsi, rsi
jle 0x180002ac8
lea rdi, [r14 + 0x11457]
mov r14d, 1
mov edx, r14d
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x180002a96
movzx edi, byte [rdi]
jmp 0x180002a99
xor dil, dil
mov rdx, r14
lea rcx, [rsi + 0x11457]
call qword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x180002ab6
movzx eax, byte [rsi + 0x11457]
jmp 0x180002ab8
xor al, al
cmp dil, al
je 0x180002ace
movzx edi, r14b
mov esi, 6
jmp 0x180002adf
mov r14d, 1
xor dil, dil
jmp 0x180002c29
test dil, dil
je 0x180002c29
mov eax, r12d
cmp rbx, rax
je 0x180002c29
xor r8d, r8d
lea rdx, [rsp + 0x58]
mov rcx, rbx
call fcn.180003860
test al, al
je 0x180002c29
movss xmm0, dword [rsp + 0x60]
lea rdx, [rsp + 0x40]
addss xmm0, xmm8
lea rcx, [rbp - 0x70]
movss dword [rsp + 0x60], xmm0
movsd xmm0, qword [rsp + 0x58]
mov eax, dword [rsp + 0x60]
movsd qword [rbp - 0x70], xmm0
mov dword [rbp - 0x68], eax
call fcn.180001870
test eax, eax
je 0x180002c29
mov r8, rsi
lea rdx, [rsp + 0x58]
mov rcx, rbx
call fcn.180003860
test al, al
je 0x180002c29
movss xmm0, dword [rsp + 0x60]
lea rdx, [rsp + 0x78]
addss xmm0, xmm9
lea rcx, [rbp - 0x60]
movss dword [rsp + 0x60], xmm0
movsd xmm0, qword [rsp + 0x58]
mov eax, dword [rsp + 0x60]
movsd qword [rbp - 0x60], xmm0
mov dword [rbp - 0x58], eax
call fcn.180001870
test eax, eax
je 0x180002c29
movss xmm0, dword [rsp + 0x44]
subss xmm0, dword [rsp + 0x7c]
movss xmm1, dword [rsp + 0x78]
mov esi, dword [rbp - 0x80]
movsd xmm6, qword [rsp + 0x78]
cvttss2si ecx, xmm0
mov eax, ecx
mov dword [0x18001aab4], ecx
cdq
sub eax, edx
sar eax, 1
mov dword [0x18001aab0], eax
mov eax, ecx
cdq
and edx, 3
add eax, edx
sar eax, 2
cmp byte [0x18001aad5], 0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [0x18001aaa8], eax
cvttss2si eax, dword [rsp + 0x7c]
mov dword [0x18001aaac], eax
je 0x180002c0a
mov edx, ebx
movsd qword [rsp + 0x30], xmm6
lea rcx, [rsp + 0x30]
mov dword [rsp + 0x38], esi
call fcn.180003b00
cmp byte [0x18001aad7], 0
je 0x180002c29
mov edx, ebx
movsd qword [rsp + 0x20], xmm6
lea rcx, [rsp + 0x20]
mov dword [rsp + 0x28], esi
call fcn.180003b00
inc rbx
mov esi, 6
cmp rbx, 0x1f
jbe 0x180002977
movsxd rax, dword [0x18001a014]
mov r13d, 4
movaps xmm9, xmmword [rsp + 0xe0]
movaps xmm8, xmmword [rsp + 0xf0]
mov r15, qword [rsp + 0x120]
mov r12, qword [rsp + 0x160]
mov rsi, qword [rsp + 0x150]
test eax, eax
je 0x18000377f
mov rcx, rax
call fcn.1800037d0
test al, al
je 0x18000377f
cmp byte [0x18001aad7], 0
je 0x180003653
cmp byte [0x18001aad6], 0
lea ecx, [r13 - 2]
jne 0x180002ca7
mov ecx, r14d
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ecx, ecx
test ax, ax
setne cl
test ecx, ecx
jne 0x180002ccd
mov ecx, 5
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1800036bf
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8, r13
call fcn.180003860
test al, al
je 0x180002da0
xorps xmm0, xmm0
movss dword [0x18001ab30], xmm11
movdqu xmmword [0x18001ab50], xmm0
lea rdx, [0x18001aae0]
movups xmmword [0x18001aae0], xmm0
xor eax, eax
lea rcx, [0x18001ab30]
movups xmmword [0x18001aaf0], xmm0
mov qword [0x18001ab20], rax
movabs rax, 0x140050540
movups xmmword [0x18001ab00], xmm0
mov qword [0x18001ab48], 0
movups xmmword [0x18001ab10], xmm0
mov qword [0x18001ab70], 0
movss xmm0, dword [rsp + 0x58]
xorps xmm1, xmm1
movss dword [0x18001ab3c], xmm0
movss xmm0, dword [rsp + 0x5c]
movdqu xmmword [0x18001ab60], xmm1
movss xmm1, dword [rsp + 0x60]
movss dword [0x18001ab44], xmm0
movss dword [0x18001ab34], xmm10
movss dword [0x18001ab38], xmm7
movss dword [0x18001ab40], xmm1
call rax
test al, al
je 0x180003728
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 5
call fcn.180003860
mov ebx, dword [rsp + 0x70]
movsd xmm6, qword [rsp + 0x68]
test al, al
je 0x180002dfa
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 6
call fcn.180003860
test al, al
je 0x180002e4a
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 3
call fcn.180003860
test al, al
je 0x180002e9a
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 2
call fcn.180003860
test al, al
je 0x180002eea
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8, r14
call fcn.180003860
test al, al
je 0x180002f37
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 7
call fcn.180003860
test al, al
je 0x180002f87
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 8
call fcn.180003860
test al, al
je 0x180002fd7
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 9
call fcn.180003860
test al, al
je 0x180003027
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0xa
call fcn.180003860
test al, al
je 0x180003077
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0xb
call fcn.180003860
test al, al
je 0x1800030c7
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0xc
call fcn.180003860
test al, al
je 0x180003117
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0xd
call fcn.180003860
test al, al
je 0x180003167
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0xe
call fcn.180003860
test al, al
je 0x1800031b7
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0xf
call fcn.180003860
test al, al
je 0x180003207
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0x10
call fcn.180003860
test al, al
je 0x180003257
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0x11
call fcn.180003860
test al, al
je 0x1800032a7
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0x12
call fcn.180003860
test al, al
je 0x1800032f7
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0x13
call fcn.180003860
test al, al
je 0x180003347
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0x14
call fcn.180003860
test al, al
je 0x180003397
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0x15
call fcn.180003860
test al, al
je 0x1800033e7
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0x16
call fcn.180003860
test al, al
je 0x180003437
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0x17
call fcn.180003860
test al, al
je 0x180003487
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0x18
call fcn.180003860
test al, al
je 0x1800034d7
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0x19
call fcn.180003860
test al, al
je 0x180003527
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0x1a
call fcn.180003860
test al, al
je 0x180003577
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0x1b
call fcn.180003860
test al, al
je 0x1800035c3
movsd xmm7, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov edi, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
movsxd rcx, dword [0x18001a014]
lea rdx, [rsp + 0x58]
mov r8d, 0x1c
call fcn.180003860
mov edi, dword [rsp + 0x60]
movsd xmm7, qword [rsp + 0x58]
test al, al
je 0x18000360f
lea rdx, [rsp + 0x20]
movsd qword [rsp + 0x20], xmm7
lea rcx, [rsp + 0x30]
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
jne 0x18000363a
lea rdx, [rsp + 0x20]
movsd qword [rsp + 0x20], xmm7
lea rcx, [rsp + 0x30]
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
call fcn.180003c50
test al, al
je 0x18000377f
movsd qword [rsp + 0x20], xmm7
mov dword [rsp + 0x28], edi
movsd qword [rsp + 0x30], xmm6
mov dword [rsp + 0x38], ebx
jmp 0x180003750
cmp byte [0x18001aad5], 0
je 0x18000377f
cmp byte [0x18001aad9], 0
lea rdx, [rsp + 0x58]
movsxd rcx, dword [0x18001a014]
mov eax, 6
cmovne r13, rax
mov r8, r13
call fcn.180003860
test al, al
je 0x18000377f
cmp byte [0x18001aad6], 0
mov ecx, 2
jne 0x18000369d
mov ecx, r14d
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ecx, ecx
test ax, ax
setne cl
test ecx, ecx
jne 0x1800036ce
mov ecx, 5
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x1800036ce
mov dword [0x18001a014], 0
jmp 0x18000377f
cmp byte [0x18001aad8], 0
je 0x180003728
movsd xmm6, qword [rsp + 0x58]
lea rdx, [rsp + 0x20]
movsd xmm7, qword [rsp + 0x68]
lea rcx, [rsp + 0x30]
mov ebx, dword [rsp + 0x60]
mov edi, dword [rsp + 0x70]
movsd qword [rsp + 0x20], xmm6
movsd qword [rsp + 0x30], xmm7
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x38], edi
call fcn.180003c50
test al, al
je 0x18000377f
movsd qword [rsp + 0x20], xmm6
mov dword [rsp + 0x28], ebx
movsd qword [rsp + 0x30], xmm7
mov dword [rsp + 0x38], edi
jmp 0x180003750
movsd xmm0, qword [rsp + 0x58]
mov eax, dword [rsp + 0x60]
movsd qword [rsp + 0x20], xmm0
movsd xmm0, qword [rsp + 0x68]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x70]
movsd qword [rsp + 0x30], xmm0
mov dword [rsp + 0x38], eax
lea r8, [rsp + 0x20]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x40]
call fcn.180001670
lea rcx, [rsp + 0x20]
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
movsd qword [rsp + 0x20], xmm0
mov dword [rsp + 0x28], eax
call fcn.180003a30
movaps xmm6, xmmword [rsp + 0x110]
movaps xmm7, xmmword [rsp + 0x100]
movaps xmm10, xmmword [rsp + 0xd0]
mov r14, qword [rsp + 0x128]
mov rdi, qword [rsp + 0x158]
movaps xmm11, xmmword [rsp + 0xc0]
mov rcx, qword [rbp - 0x48]
xor rcx, rsp
call fcn.1800045a0
add rsp, 0x130
pop r13
pop rbx
pop rbp
ret
sub rsp, 0x28
mov rcx, qword [0x18001aab8]
add rcx, 0x14143e8
call fcn.1800039b0
mov rcx, qword [0x18001aab8]
add rcx, 0x1e1bb0
call fcn.1800039b0
add rsp, 0x28
jmp 0x180001b90