Function at 0x140018ff0
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x5d0]
sub rsp, 0x6d0
mov qword [rsp + 0x70], 0xfffffffffffffffe
mov qword [rsp + 0x700], rbx
mov rdi, rdx
mov rbx, rcx
mov rax, qword [rbp + 0x618]
mov qword [rsp + 0x28], rax
mov eax, dword [rbp + 0x610]
mov dword [rsp + 0x20], eax
call fcn.1400c91c0
nop
lea rax, vtable.CFPSoundZone.0
mov qword [rbx], rax
lea rax, vtable.CFPSoundZone.1.0
mov qword [rbx + 8], rax
xor esi, esi
mov qword [rbx + 0x220], rsi
lea rcx, [rbx + 0x228]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
nop
xor eax, eax
mov qword [rbx + 0x250], rax
mov qword [rbx + 0x258], rsi
mov qword [rbx + 0x264], rsi
mov dword [rbx + 0x260], esi
test rdi, rdi
je 0x1400193c9
mov rcx, rdi
call fcn.140013180
test eax, eax
je 0x1400193c9
xor edx, edx
lea rcx, [rsp + 0x40]
call fcn.1400ec950
nop
mov dword [rbp + 0x5f8], 0x208
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], esi
xor r9d, r9d
lea r8, str.SoftwareSynapticsSynTPEnhPlugInConfigTouchPad
mov rdx, 0xffffffff80000002
lea rcx, [rsp + 0x40]
call fcn.1400ecac0
test eax, eax
je 0x14001913f
mov dword [rsp + 0x30], 1
mov qword [rsp + 0x20], rsi
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x38]
lea rdx, str.ButtonSoundFlags
lea rcx, [rsp + 0x48]
call fcn.1401069b0
mov eax, dword [rsp + 0x38]
mov dword [rbx + 0x268], eax
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x5f8]
lea r8, [rbp + 0x1b0]
lea rdx, str.ButtonClickSound
lea rcx, [rsp + 0x48]
call fcn.140106ac0
lea rcx, [rsp + 0x48]
call fcn.140106310
mov dword [rsp + 0x20], 1
mov r9d, 0x40
lea r8d, [r9 - 0x20]
lea rdx, [rbp + 0x1b0]
lea rcx, [rbp + 0xa0]
call fcn.14001a060
nop
cmp qword [rbp + 0x140], 0
je 0x140019218
xor edx, edx
lea r8d, [rdx + 2]
lea rcx, [rbp + 0xa0]
call fcn.14001c130
lea rdx, [rsp + 0x78]
lea rcx, [rbp + 0xa0]
call fcn.14001c550
mov rdi, qword [rax + 8]
add rdi, qword [rax]
test rdi, rdi
jle 0x1400191dc
mov ecx, edi
call fcn.1401098fc
mov qword [0x1402ad4b8], rax
test rax, rax
je 0x1400191dc
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0xa0]
call fcn.14001c130
mov r8, rdi
mov rdx, qword [0x1402ad4b8]
lea rcx, [rbp + 0xa0]
call fcn.14001c040
lea rcx, [rbp + 0xb0]
call fcn.14001b730
test rax, rax
jne 0x140019218
mov rax, qword [rbp + 0xa0]
movsxd rcx, dword [rax + 4]
lea rcx, [rbp + rcx + 0xa0]
mov edx, dword [rcx + 0x10]
or edx, 2
cmp qword [rcx + 0x48], 0
jne 0x140019210
or edx, 4
xor r8d, r8d
call fcn.14001b640
mov dword [rbp + 0x5f8], 0x208
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], esi
xor r9d, r9d
lea r8, str.SoftwareSynapticsSynTPEnhPlugInConfigTouchPad
mov rdx, 0xffffffff80000002
lea rcx, [rsp + 0x40]
call fcn.1400ecac0
test eax, eax
je 0x14001927c
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x5f8]
lea r8, [rbp + 0x3c0]
lea rdx, str.ButtonReleaseSound
lea rcx, [rsp + 0x48]
call fcn.140106ac0
lea rcx, [rsp + 0x48]
call fcn.140106310
mov dword [rsp + 0x20], 1
mov r9d, 0x40
lea r8d, [r9 - 0x20]
lea rdx, [rbp + 0x3c0]
lea rcx, [rbp - 0x70]
call fcn.14001a060
nop
cmp qword [rbp + 0x30], 0
je 0x14001933a
xor edx, edx
lea r8d, [rdx + 2]
lea rcx, [rbp - 0x70]
call fcn.14001c130
lea rdx, [rsp + 0x78]
lea rcx, [rbp - 0x70]
call fcn.14001c550
mov rdi, qword [rax + 8]
add rdi, qword [rax]
test rdi, rdi
jle 0x140019307
mov ecx, edi
call fcn.1401098fc
mov qword [0x1402ad4c0], rax
test rax, rax
je 0x140019307
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x70]
call fcn.14001c130
mov r8, rdi
mov rdx, qword [0x1402ad4c0]
lea rcx, [rbp - 0x70]
call fcn.14001c040
lea rcx, [rbp - 0x60]
call fcn.14001b730
test rax, rax
jne 0x14001933a
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
lea rcx, [rbp + rcx - 0x70]
mov edx, dword [rcx + 0x10]
or edx, 2
cmp qword [rcx + 0x48], 0
jne 0x140019332
or edx, 4
xor r8d, r8d
call fcn.14001b640
lea r9, str.SoundEvent
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov qword [0x1402ad4b0], rax
lea rax, [rbx + 0x208]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], esi
mov r9, rbx
lea r8, [0x140019b70]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [0x1402ad4a8], rax
lea rcx, [rbp + 0x40]
call fcn.14001a670
lea rdi, vtable.std::ios_base.0
mov qword [rbp + 0x40], rdi
lea rcx, [rbp + 0x40]
call fcn.14010a174
nop
lea rcx, [rbp + 0x150]
call fcn.14001a670
mov qword [rbp + 0x150], rdi
lea rcx, [rbp + 0x150]
call fcn.14010a174
nop
lea rcx, [rsp + 0x40]
call fcn.1400eca60
nop
mov rax, rbx
mov rbx, qword [rsp + 0x700]
add rsp, 0x6d0
pop rdi
pop rsi
pop rbp
ret