Function at 0x140010dd0
Capabilities:
Create thread

Disassembly:
mov rax, rsp
mov dword [rax + 0x10], edx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x888]
sub rsp, 0x970
mov qword [rbp + 0x238], 0xfffffffffffffffe
mov qword [rax + 8], rbx
movaps xmmword [rax - 0x48], xmm6
mov ebx, edx
mov rdi, rcx
lea rax, vtable.CSynList_class_CRegistryKey_.0
mov qword [rbp - 0x80], rax
lea rcx, [rbp - 0x60]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov dword [rbp - 0x64], 1
xor esi, esi
mov qword [rbp - 0x78], rsi
mov qword [rbp - 0x70], rsi
mov dword [rbp - 0x68], esi
lea rax, vtable.CMultiLevelRegistryKey.0
mov qword [rbp - 0x80], rax
xor edx, edx
lea rcx, [rbp + 0x50]
call fcn.1400c91f0
nop
cmp ebx, 0xffffffff
je 0x140010e7f
mov rax, qword [rdi + 0x58]
test rax, rax
jne 0x140010e62
lea rax, [rdi + 0x70]
test rax, rax
je 0x140013520
mov rcx, qword [rdi + 0x58]
test rcx, rcx
jne 0x140010e6f
lea rcx, [rdi + 0x70]
mov rax, qword [rcx]
mov edx, ebx
call qword [rax + 0x78]
test eax, eax
jne 0x140013520
mov ecx, 0x298
call fcn.1400e3e80
mov r14, rax
mov qword [rbp + 0x8a0], rax
test rax, rax
je 0x140010ef7
mov ecx, 0x1c0
call fcn.1400e3e80
mov rbx, rax
mov qword [rbp + 0x8a8], rax
test rax, rax
je 0x140010ee4
mov ecx, 0x1f0
call fcn.1400e3e80
mov qword [rbp - 0x30], rax
test rax, rax
je 0x140010ed4
xor r8d, r8d
mov rdx, rdi
mov rcx, rax
call fcn.14005ebb0
jmp 0x140010ed7
mov rax, rsi
mov rdx, rax
mov rcx, rbx
call fcn.140060d30
jmp 0x140010ee7
mov rax, rsi
mov r8, rax
mov rdx, rdi
mov rcx, r14
call fcn.14000d430
jmp 0x140010efa
mov rax, rsi
mov qword [rdi + 0x1028], rax
lea r15, [rdi + 0x50]
mov rcx, qword [r15 + 8]
test rcx, rcx
jne 0x140010f12
lea rcx, [r15 + 0x20]
mov rax, qword [rcx]
xor r8d, r8d
mov edx, 0x1000377
call qword [rax + 0x30]
mov r8d, 0x10000603
lea rdx, [rbp - 0x30]
lea rcx, [rdi + 0x58]
call fcn.140030990
mov rbx, rax
lea r12, [rdi + 0x780]
cmp r12, rax
je 0x140010f64
mov rcx, qword [r12]
test rcx, rcx
je 0x140010f54
call fcn.140032d60
mov qword [r12], rsi
mov rax, qword [rbx]
mov qword [r12], rax
test rax, rax
je 0x140010f64
lock inc dword [rax + 0x10]
mov rcx, qword [rbp - 0x30]
test rcx, rcx
je 0x140010f72
call fcn.140032d60
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
lea r9, str.SoftwareSynapticsSynTPEnhZoneConfig
mov r8d, 1
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.1400236d0
test eax, eax
je 0x140013520
mov eax, dword [0x14026edd8]
add eax, 0xffffdc84
cmp eax, 1
ja 0x140011155
mov eax, esi
mov dword [rbp + 0x10], eax
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x140010fd4
mov rax, qword [rcx]
lea r8, [rbp + 0x10]
mov edx, 0x10000103
call qword [rax + 0x18]
mov eax, dword [rbp + 0x10]
lea rcx, str.SoftwareSynapticsSynTPEnhUltraNavUSB
lea r8, str.SoftwareSynapticsSynTPEnhUltraNavPS2
cmp eax, 3
cmove r8, rcx
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], esi
mov rdx, 0xffffffff80000001
mov r9d, 1
lea rcx, [rbp + 0x50]
call fcn.1400c9360
mov dword [rbp + 0x150], 0x1214
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x150]
lea r8, [rbp + 0x1b0]
lea rdx, str.TrackPointMode
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
mov eax, dword [rbp + 0x1b0]
mov dword [rdi + 0x7d8], eax
mov dword [rbp + 0x1c0], 0x11
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x1c0]
lea r8, [rbp + 0x178]
lea rdx, str.TrackPointModeFunction
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
mov eax, dword [rbp + 0x178]
mov dword [rdi + 0x7dc], eax
xor ecx, ecx
call fcn.1400dbe60
mov ecx, esi
cmp eax, 0xd
setge cl
mov dword [rbp + 0x90], ecx
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x90]
lea r8, [rbp + 0x194]
lea rdx, str.TrackPointScrollMethod
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
mov eax, dword [rbp + 0x194]
mov dword [rdi + 0x7e0], eax
cmp dword [rdi + 0x7d8], 0x1214
jne 0x1400110e2
xor r9d, r9d
mov r8d, 0x1214
lea rdx, str.TrackPointMode
lea rcx, [rbp + 0x58]
call fcn.1400dfe90
cmp dword [rdi + 0x7dc], 0x11
jne 0x140011102
xor r9d, r9d
lea r8d, [r9 + 0x11]
lea rdx, str.TrackPointModeFunction
lea rcx, [rbp + 0x58]
call fcn.1400dfe90
mov ebx, dword [rdi + 0x7e0]
xor ecx, ecx
call fcn.1400dbe60
mov ecx, esi
cmp eax, 0xd
setge cl
cmp ebx, ecx
jne 0x140011131
xor r9d, r9d
mov r8d, ebx
lea rdx, str.TrackPointScrollMethod
lea rcx, [rbp + 0x58]
call fcn.1400dfe90
mov eax, dword [rdi + 0x7dc]
test al, 0x40
je 0x140011147
mov dword [rdi + 0x7ec], 1
jmp 0x140011155
test al, 0x20
je 0x140011155
mov dword [rdi + 0x7f0], 1
mov edx, esi
mov dword [rbp + 0x3c], edx
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x140011175
mov rax, qword [rcx]
lea r8, [rbp + 0x3c]
mov edx, 0x10000177
call qword [rax + 0x18]
mov edx, dword [rbp + 0x3c]
mov eax, esi
test edx, edx
setne al
mov dword [rdi + 0xbfc], eax
mov edx, esi
mov dword [rbp + 0x44], edx
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x1400111a2
mov rax, qword [rcx]
lea r8, [rbp + 0x44]
mov edx, 0x10000189
call qword [rax + 0x18]
mov edx, dword [rbp + 0x44]
mov eax, esi
test edx, edx
setne al
mov dword [rdi + 0xc00], eax
mov edx, esi
mov dword [rbp + 8], edx
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x1400111cf
mov rax, qword [rcx]
lea r8, [rbp + 8]
mov edx, 0x10000146
call qword [rax + 0x18]
mov edx, dword [rbp + 8]
mov eax, esi
test edx, edx
setne al
mov dword [rdi + 0xc04], eax
mov edx, esi
mov dword [rbp + 0x48], edx
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x1400111fc
mov rax, qword [rcx]
lea r8, [rbp + 0x48]
mov edx, 0x1000017a
call qword [rax + 0x18]
mov edx, dword [rbp + 0x48]
mov eax, esi
test edx, edx
setne al
mov dword [rdi + 0xc08], eax
mov edx, esi
mov dword [rbp], edx
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x140011229
mov rax, qword [rcx]
lea r8, [rbp]
mov edx, 0x100001ba
call qword [rax + 0x18]
mov edx, dword [rbp]
mov eax, esi
test edx, edx
setne al
mov dword [rdi + 0xc0c], eax
mov eax, esi
mov dword [rbp + 0x30], eax
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x140011256
mov rax, qword [rcx]
lea r8, [rbp + 0x30]
mov edx, 0x100001a8
call qword [rax + 0x18]
mov eax, dword [rbp + 0x30]
mov dword [rdi + 0xc10], eax
mov eax, esi
mov dword [rbp + 0x18], eax
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x14001127c
mov rax, qword [rcx]
lea r8, [rbp + 0x18]
mov edx, 0x1000382
call qword [rax + 0x18]
mov eax, dword [rbp + 0x18]
mov dword [rdi + 0xc14], eax
mov dword [rbp + 0x40], esi
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x1400112c5
mov rax, qword [rcx]
lea r8, [rbp + 0x40]
mov edx, 0x10000d2
call qword [rax + 0x18]
cmp dword [rbp + 0x40], 0
je 0x1400112c5
mov eax, esi
mov dword [rbp + 0x20], eax
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x1400112e5
mov rax, qword [rcx]
lea r8, [rbp + 0x20]
mov edx, 0x10000db
call qword [rax + 0x18]
mov eax, dword [rbp + 0x20]
jmp 0x1400112e5
mov eax, esi
mov dword [rbp + 0x38], eax
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x1400112e5
mov rax, qword [rcx]
lea r8, [rbp + 0x38]
mov edx, 0x10000da
call qword [rax + 0x18]
mov eax, dword [rbp + 0x38]
mov ecx, 0x50
test eax, eax
cmove eax, ecx
mov dword [rdi + 0xc18], eax
mov eax, esi
mov dword [rbp + 0x28], eax
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x140011315
mov rax, qword [rcx]
lea r8, [rbp + 0x28]
mov edx, 0x1000241
call qword [rax + 0x18]
mov eax, dword [rbp + 0x28]
mov dword [rdi + 0xc1c], eax
mov dword [rbp - 4], esi
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 4]
lea r8, [rbp - 4]
lea rdx, str.PalmCheckGroupPresent
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
mov dword [rbp + 4], esi
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x14001143e
mov rax, qword [rcx]
lea r8, [rbp + 4]
mov edx, 0x10000102
call qword [rax + 0x18]
cmp dword [rbp + 4], 2
jne 0x14001143e
cmp dword [rbp - 4], 0
je 0x14001143e
lea r8, [rdi + 0x1030]
mov dword [r8], esi
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.UsePalmCheckGroupConfigForACM2
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
xor r9d, r9d
lea r8d, [r9 + 0x1b]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
xor r9d, r9d
lea r8d, [r9 + 0x1d]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
xor r9d, r9d
lea r8d, [r9 + 0x1e]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
xor r9d, r9d
lea r8d, [r9 + 0x1f]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
xor r9d, r9d
lea r8d, [r9 + 0x20]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
lea r8, [rdi + 0xbb0]
mov dword [r8], esi
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.PalmViolationToReleaseCursor
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
cmp dword [rdi + 0xbfc], 0
je 0x140011521
mov eax, esi
mov dword [rbp + 0xc], eax
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x14001146b
mov rax, qword [rcx]
lea r8, [rbp + 0xc]
mov edx, 0x10000d5
call qword [rax + 0x18]
mov eax, dword [rbp + 0xc]
bt eax, 0xb
jae 0x140011492
lea r8, [rdi + 0xc34]
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.NeedFingerStatePacket
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
jmp 0x140011502
mov rcx, r15
call fcn.14000bd80
test al, al
je 0x140011502
mov ebx, esi
mov dword [rbp + 0x14], ebx
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x1400114be
mov rax, qword [rcx]
lea r8, [rbp + 0x14]
mov edx, 0x10000104
call qword [rax + 0x18]
mov ebx, dword [rbp + 0x14]
sar ebx, 0x18
mov eax, esi
mov dword [rbp + 0x1c], eax
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x1400114e1
mov rax, qword [rcx]
lea r8, [rbp + 0x1c]
mov edx, 0x10000104
call qword [rax + 0x18]
mov eax, dword [rbp + 0x1c]
sar eax, 0x10
movzx ecx, al
cmp ebx, 7
jg 0x1400114fa
jne 0x1400114f3
cmp ecx, 4
jge 0x1400114fa
mov eax, 1
jmp 0x1400114fc
mov eax, esi
mov dword [rdi + 0xc24], eax
lea r8, [rdi + 0xc24]
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.NeedToFilterSecondaryFingerPos
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], esi
xor r9d, r9d
lea r8, str.SoftwareSynapticsSynTPEnh
mov rdx, 0xffffffff80000002
lea rcx, [rbp + 0x50]
call fcn.1400c9360
mov dword [rbp + 0x24], esi
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x140011564
mov rax, qword [rcx]
lea r8, [rbp + 0x24]
mov edx, 0x10000102
call qword [rax + 0x18]
cmp dword [rbp + 0x24], 2
je 0x1400115aa
mov rcx, r15
call fcn.140032120
test al, al
je 0x1400116c1
mov dword [rbp + 0xa0], esi
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0xa0]
lea r8, [rbp + 0x168]
lea rdx, str.ChiralMouse
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
cmp dword [rbp + 0x168], 0
je 0x1400116c1
mov r9d, 3
lea r8d, [r9 - 2]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
mov r14, rax
test rax, rax
je 0x140013520
mov r9d, 3
lea r8d, [r9 - 1]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
mov rbx, rax
test rax, rax
je 0x140013520
mov rcx, r15
call fcn.140032120
test al, al
je 0x140011670
mov dword [rbp + 0xb0], esi
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0xb0]
lea r8, [rbp + 0x1ac]
lea rdx, str.ChiralMouse
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
lea rcx, [r14 + 0x238]
mov edx, dword [rbp + 0x1ac]
call fcn.1400c62c0
mov dword [rbp + 0xc0], esi
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0xc0]
lea r8, [rbp + 0x124]
lea rdx, str.ChiralMouse
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
lea rcx, [rbx + 0x238]
mov edx, dword [rbp + 0x124]
call fcn.1400c62c0
mov rcx, rdi
call fcn.140031f10
test eax, eax
je 0x1400116c1
mov dword [rbp - 0x18], esi
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x18]
lea r8, [rbp - 0x18]
lea rdx, str.VolumeControlPresent
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
cmp dword [rbp - 0x18], 0
je 0x1400116c1
mov r9d, 7
lea r8d, [r9 + 2]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
mov dword [rbp + 0x2c], esi
mov rcx, qword [rdi + 0x58]
movsd xmm6, qword [0x140128968]
test rcx, rcx
je 0x140012327
mov rax, qword [rcx]
lea r8, [rbp + 0x2c]
mov edx, 0x10000102
call qword [rax + 0x18]
cmp dword [rbp + 0x2c], 2
jne 0x140012327
mov ecx, 0x1a0
call fcn.1400e3e80
mov qword [rbp - 0x30], rax
test rax, rax
je 0x14001172f
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 1
mov r9d, 1
lea r8, str.EdgeFinder
mov rdx, rdi
mov rcx, rax
call fcn.1400a85c0
mov rbx, rax
jmp 0x140011732
mov rbx, rsi
test rbx, rbx
je 0x140013520
mov r8, rbx
xor edx, edx
lea rcx, [rdi + 8]
call fcn.140032b90
test rax, rax
je 0x140013520
mov rax, qword [rbx]
mov edx, 0x10
mov rcx, rbx
call qword [rax + LoadRegTypeLib]
test eax, eax
je 0x140013520
mov edx, 0x10
lea rcx, [rbp + 0x340]
call fcn.1400a8c00
mov dword [rsp + 0x38], esi
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], esi
mov r9d, 0x40
mov r8d, 0x1803
mov rdx, rax
mov rcx, rbx
call fcn.1400a9e60
test eax, eax
je 0x140013520
mov dword [rbx + 0x40], 0x10
mov ecx, 0x1a0
call fcn.1400e3e80
mov qword [rbp - 0x30], rax
test rax, rax
je 0x1400117f8
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 1
mov r9d, 0xb
lea r8, str.BounceBack
mov rdx, rdi
mov rcx, rax
call fcn.1400a85c0
mov rbx, rax
jmp 0x1400117fb
mov rbx, rsi
test rbx, rbx
je 0x140013520
mov r8, rbx
xor edx, edx
lea rcx, [rdi + 8]
call fcn.140032b90
test rax, rax
je 0x140013520
mov rax, qword [rbx]
mov edx, 0x11
mov rcx, rbx
call qword [rax + LoadRegTypeLib]
test eax, eax
je 0x140013520
mov edx, 0x11
lea rcx, [rbp + 0x3e0]
call fcn.1400a8c00
mov dword [rsp + 0x38], esi
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], 0xb
mov dword [rsp + 0x20], esi
mov r9d, 1
mov r8d, 0x1811
mov rdx, rax
mov rcx, rbx
call fcn.1400a9e60
test eax, eax
je 0x140013520
mov dword [rbx + 0x40], 0x11
mov dword [rbp + 0xd0], esi
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0xd0]
lea r8, [rbp + 0x128]
lea rdx, str.BackForwardFeature
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
cmp dword [rbp + 0x128], 0
je 0x1400118d5
mov r9d, 2
lea r8d, [r9 + 8]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
xor ecx, ecx
call fcn.1400dbe60
cmp eax, 0xb
jl 0x140011900
mov r9d, 0xc
lea r8d, [r9 + 0x17]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
cmp dword [rdi + 0xbfc], 0
je 0x1400119e8
mov r9d, 3
lea r8d, [r9 + 0xf]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
mov r9d, 2
lea r8d, [r9 + 0x11]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
cmp dword [rdi + 0xbfc], 0
je 0x1400119e8
mov dword [rbp - 0xc], esi
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0xc]
lea r8, [rbp - 0xc]
lea rdx, str.MultiFingerTapPresent
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
cmp dword [rbp - 0xc], 0
je 0x14001199d
mov r9d, 2
lea r8d, [r9 + 0x1f]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
cmp dword [rdi + 0xbfc], 0
je 0x1400119e8
mov dword [rbp - 0x20], esi
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x20]
lea r8, [rbp - 0x20]
lea rdx, str.MagnifierPresent
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
cmp dword [rbp - 0x20], 0
je 0x1400119e8
xor r9d, r9d
lea r8d, [r9 + 0x1a]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
xor ecx, ecx
call fcn.1400dbe60
cmp eax, 0xb
je 0x140011a04
xor ecx, ecx
call fcn.1400dbe60
cmp eax, 0xc
jne 0x140011bd2
mov r9d, 2
lea r8d, [r9 + 0x24]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
mov r9d, 2
lea r8d, [r9 + 0x25]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
mov r9d, 2
lea r8d, [r9 + 0x26]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
mov r9d, 2
lea r8d, [r9 + 0x22]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
mov r14, rax
test rax, rax
je 0x140013520
mov dword [rbp + 0xdc], 0x100
lea rax, str.Right_Edge_Pull
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0xdc]
lea r8, [rbp + 0x640]
lea rdx, str.ExtendedZoneKeyName
lea rcx, [rbp - 0x80]
call fcn.1400c9c80
lea r8, [rbp + 0x640]
lea rdx, str.Right_Edge_Pull_Extended_Zone
mov rcx, rsi
nop dword [rax]
movzx eax, word [r8 + rcx*2]
cmp ax, word [rdx + rcx*2]
jne 0x140011b83
movzx eax, word [r8 + rcx*2 + 2]
cmp ax, word [rdx + rcx*2 + 2]
jne 0x140011b83
add rcx, 2
cmp rcx, 0x1e
jne 0x140011ad0
mov dword [rbp + 0x130], 2
mov qword [rsp + 0x20], rdx
lea r9, [rbp + 0x130]
lea r8, [rbp + 0xe8]
lea rdx, str.ActionType
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
mov r9d, dword [rbp + 0xe8]
mov r8d, 0x25
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
mov rbx, rax
test rax, rax
je 0x140013520
xor r8d, r8d
xor edx, edx
mov rcx, rax
call fcn.1400a9790
test al, 0x40
je 0x140011b83
xor r8d, r8d
xor edx, edx
mov rcx, r14
call fcn.1400a9790
test al, 0x40
je 0x140011b83
mov qword [rdi + 0xd08], r14
mov qword [rdi + 0xd10], rbx
mov qword [rdi + 0xd18], r14
mov r9d, 2
lea r8d, [r9 + 0x28]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
mov rbx, rax
test rax, rax
je 0x140013520
mov r9d, 2
lea r8d, [r9 + 0x27]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
mov r8, rax
mov rdx, rbx
mov rcx, rdi
call fcn.14001fb30
xor ecx, ecx
call fcn.1400dbe60
cmp eax, 0xb
jl 0x140011c04
mov r9d, 0xc
lea r8d, [r9 + 0x1f]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
mov qword [rdi + 0x340], rax
test rax, rax
je 0x140013520
mov rbx, rsi
mov r14, rsi
mov r15, rsi
mov r12, rsi
cmp dword [rdi + 0xc04], ebx
jne 0x140011c24
cmp dword [rdi + 0xbfc], ebx
je 0x140011eaa
mov r9d, 3
mov r8d, r9d
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
lea r8, [rdi + 0xf98]
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.FastFingerGestureSwitch
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
lea r8, [rdi + 0x1018]
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.IgnoreMFTapWhenCoasting
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
lea r8, [rdi + 0xf9c]
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.DisplayTPEnableDisableMessageWhenWindowStart
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
lea r8, [rdi + 0xfb0]
mov dword [r8], 0x19
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.FingersMovedTogetherAngle
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
mov r9d, 3
lea r8d, [r9 + 1]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
mov dword [rbp - 0x10], esi
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x10]
lea r8, [rbp - 0x10]
lea rdx, str.3FingerSliderPresent
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
cmp dword [rbp - 0x10], ebx
je 0x140011dbf
mov dword [rbp + 0x140], 3
lea rax, str.3FVertical_Scrolling
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x140]
lea r8, [rbp + 0xf0]
lea rdx, str.ActionType
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
mov r9d, dword [rbp + 0xf0]
mov r8d, 5
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
mov r15, rax
test rax, rax
je 0x140013520
mov dword [rbp + 0x80], 3
lea rax, str.3FHorizontal_Scrolling
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x80]
lea r8, [rbp + 0x100]
lea rdx, str.ActionType
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
mov r9d, dword [rbp + 0x100]
mov r8d, 6
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
mov r12, rax
test rax, rax
je 0x140013520
mov rcx, rdi
call fcn.14000bcd0
test eax, eax
je 0x140011eaa
mov dword [rbp - 0x28], esi
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x28]
lea r8, [rbp - 0x28]
lea rdx, str.4FingerSliderPresent
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
cmp dword [rbp - 0x28], ebx
je 0x140011eaa
mov dword [rbp + 0x160], 3
lea rax, str.4FVertical_Scrolling
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x160]
lea r8, [rbp + 0x108]
lea rdx, str.ActionType
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
mov r9d, dword [rbp + 0x108]
mov r8d, 7
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
mov rbx, rax
test rax, rax
je 0x140013520
mov dword [rbp + 0x170], 3
lea rax, str.4FHorizontal_Scrolling
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x170]
lea r8, [rbp + 0x118]
lea rdx, str.ActionType
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
mov r9d, dword [rbp + 0x118]
mov r8d, 8
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
mov r14, rax
test rax, rax
je 0x140013520
mov dword [rbp - 8], esi
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 8]
lea r8, [rbp - 8]
lea rdx, str.ExtendedZonePresent
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
cmp dword [rbp - 8], 0
je 0x140011f29
mov dword [rbp + 0x180], esi
lea rax, str.Extended_Zone
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x180]
lea r8, [rbp + 0x120]
lea rdx, str.ActionType
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
mov r9d, dword [rbp + 0x120]
mov r8d, 0x19
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
mov qword [rdi + 0x350], rax
test rax, rax
je 0x140013520
mov rcx, qword [rdi + 0x350]
test rcx, rcx
je 0x140012013
xor r8d, r8d
xor edx, edx
call fcn.1400a9790
test al, 0x40
je 0x140012013
test rbx, rbx
je 0x140011f7d
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.1400a9790
test al, 0x40
je 0x140011f7d
mov qword [rdi + 0xc68], rbx
mov rax, qword [rdi + 0x350]
mov qword [rdi + 0xc70], rax
mov qword [rdi + 0xc78], rbx
test r14, r14
je 0x140011faf
xor r8d, r8d
xor edx, edx
mov rcx, r14
call fcn.1400a9790
test al, 0x40
je 0x140011faf
mov qword [rdi + 0xc88], r14
mov rax, qword [rdi + 0x350]
mov qword [rdi + 0xc90], rax
mov qword [rdi + 0xc98], r14
test r15, r15
je 0x140011fe1
xor r8d, r8d
xor edx, edx
mov rcx, r15
call fcn.1400a9790
test al, 0x40
je 0x140011fe1
mov qword [rdi + 0xca8], r15
mov rax, qword [rdi + 0x350]
mov qword [rdi + 0xcb0], rax
mov qword [rdi + 0xcb8], r15
test r12, r12
je 0x140012013
xor r8d, r8d
xor edx, edx
mov rcx, r12
call fcn.1400a9790
test al, 0x40
je 0x140012013
mov qword [rdi + 0xcc8], r12
mov rax, qword [rdi + 0x350]
mov qword [rdi + 0xcd0], rax
mov qword [rdi + 0xcd8], r12
lea r9, [rbp + 0x190]
lea r8, str.Character_Recognition
lea rdx, str.SoftwareSynapticsSynTPEnhZoneConfig
mov rcx, rdi
call fcn.140024120
test eax, eax
je 0x140012056
mov r9d, dword [rbp + 0x190]
mov r8d, 0x14
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
mov dword [rbp - 0x24], esi
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x24]
lea r8, [rbp - 0x24]
lea rdx, str.LeftSliderPresent
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
cmp dword [rbp - 0x24], 0
je 0x1400120d2
mov dword [rbp + 0x198], 2
lea rax, str.Left_Slider_Zone
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x198]
lea r8, [rbp + 0x12c]
lea rdx, str.ActionType
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
mov r9d, dword [rbp + 0x12c]
mov r8d, 0xb
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013520
mov dword [rbp + 0x1a0], 0xa
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x1a0]
lea r8, [rbp + 0x138]
lea rdx, str.FingerMotionEpsilon
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
mov eax, dword [rbp + 0x138]
mov dword [rdi + 0xb98], eax
mov edx, 0x10000113
lea rcx, [rdi + 0x58]
call fcn.14000bc80
mov ecx, eax
imul ecx, dword [rdi + 0xb98]
mov eax, 0x10624dd3
mul ecx
shr edx, 6
mov dword [rdi + 0xb90], edx
mov edx, 0x10000114
lea rcx, [rdi + 0x58]
call fcn.14000bc80
mov ecx, eax
imul ecx, dword [rdi + 0xb98]
mov eax, 0x10624dd3
mul ecx
shr edx, 6
mov dword [rdi + 0xb94], edx
mov dword [rbp + 0x188], 0x1388
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x188]
lea r8, [rbp + 0x148]
lea rdx, str.SlowMotionTimeThresholdForMoving1000Mils
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
mov eax, dword [rbp + 0x148]
mov dword [rdi + 0xba8], eax
mov dword [rbp + 0x1b8], 0x12c
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x1b8]
lea r8, [rbp + 0x158]
lea rdx, str.MinStrokeQDistance
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
mov eax, dword [rbp + 0x158]
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
divsd xmm0, xmm6
movsd qword [rdi + 0xb88], xmm0
mov dword [rbp + 0x88], 0xc8
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x88]
lea r8, [rbp + 0x98]
lea rdx, str.3FingerPressMaxMotion
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
mov edx, 0x10000113
lea rcx, [rdi + 0x58]
call fcn.14000bc80
mov ecx, eax
imul ecx, dword [rbp + 0x98]
mov eax, 0x10624dd3
mul ecx
shr edx, 6
mov dword [rdi + 0xb9c], edx
mov edx, 0x10000114
lea rcx, [rdi + 0x58]
call fcn.14000bc80
mov ecx, eax
imul ecx, dword [rbp + 0x98]
mov eax, 0x10624dd3
mul ecx
shr edx, 6
mov dword [rdi + 0xba0], edx
mov dword [rbp + 0xa8], 0x1f4
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0xa8]
lea r8, [rbp + 0xb8]
lea rdx, str.3FingerPressMinTime
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
mov eax, dword [rbp + 0xb8]
mov dword [rdi + 0xba4], eax
call qword [sym.imp.USER32.dll_GetDoubleClickTime]
mov r8d, eax
lea r15, [rdi + 0x50]
mov rcx, qword [r15 + 8]
test rcx, rcx
jne 0x1400122a7
lea rcx, [r15 + 0x20]
mov rax, qword [rcx]
mov edx, 0x1000343
call qword [rax + 0x30]
mov rcx, rdi
call fcn.140031cd0
mov dword [rdi + 0xf88], eax
lea r8, [rdi + 0xf8c]
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.RestrictTo2FVerticalScroll
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
lea r8, [rdi + 0xf90]
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.CancelScrollAfter1FLeaves
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
lea r8, [rdi + 0x360]
mov dword [r8], esi
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.SkipClickWhenGestureProcessing
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
lea r12, [rdi + 0x780]
mov ecx, 0x300
call fcn.1400e3e80
mov qword [rbp - 0x30], rax
test rax, rax
je 0x14001235c
mov dword [rsp + 0x20], 3
mov r9d, 2
lea r8, str.Plugin_Zone
mov rdx, rdi
mov rcx, rax
call fcn.140054b10
jmp 0x14001235f
mov rax, rsi
mov qword [rdi + 0x330], rax
test rax, rax
je 0x140013520
mov r8, rax
xor edx, edx
lea rcx, [rdi + 8]
call fcn.140032b90
test rax, rax
je 0x140013520
mov rcx, qword [rdi + 0x330]
mov rax, qword [rcx]
mov edx, 0x15
call qword [rax + LoadRegTypeLib]
test eax, eax
je 0x140013520
mov edx, 0x15
lea rcx, [rbp + 0x390]
call fcn.1400a8c00
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], 2
mov dword [rsp + 0x20], esi
mov r9d, 0x40003
mov r8d, 0x40
mov rdx, rax
mov rcx, qword [rdi + 0x330]
call fcn.1400564e0
test eax, eax
je 0x140013520
mov rax, qword [rdi + 0x330]
mov dword [rax + 0x40], 0x15
mov dword [rbp - 0x1c], esi
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x1c]
lea r8, [rbp - 0x1c]
lea rdx, str.ExtendedPluginZonePresent
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
cmp dword [rbp - 0x1c], 0
je 0x140012553
mov ecx, 0x300
call fcn.1400e3e80
mov qword [rbp - 0x30], rax
test rax, rax
je 0x140012459
mov dword [rsp + 0x20], 3
mov r9d, 2
lea r8, str.Extended_Plugin_Zone
mov rdx, rdi
mov rcx, rax
call fcn.140054b10
jmp 0x14001245c
mov rax, rsi
mov qword [rdi + 0x338], rax
test rax, rax
je 0x140013520
mov r8, rax
xor edx, edx
lea rcx, [rdi + 8]
call fcn.140032b90
test rax, rax
je 0x140013520
mov rcx, qword [rdi + 0x338]
mov rax, qword [rcx]
mov edx, 0x15
call qword [rax + LoadRegTypeLib]
test eax, eax
je 0x140013520
mov edx, 0x15
lea rcx, [rbp + 0x408]
call fcn.1400a8c00
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], 2
mov dword [rsp + 0x20], esi
mov r9d, 0x40003
mov r8d, 0x40
mov rdx, rax
mov rcx, qword [rdi + 0x338]
call fcn.1400564e0
test eax, eax
je 0x140013520
mov rax, qword [rdi + 0x338]
mov dword [rax + 0x40], 0x15
cmp qword [rdi + 0x330], 0
je 0x140012553
mov rcx, qword [rdi + 0x338]
test rcx, rcx
je 0x140012553
xor r8d, r8d
xor edx, edx
call fcn.1400a9790
test al, 0x40
je 0x140012553
xor r8d, r8d
xor edx, edx
mov rcx, qword [rdi + 0x330]
call fcn.1400a9790
test al, 0x40
je 0x140012553
mov rcx, qword [rdi + 0x330]
mov qword [rdi + 0xce8], rcx
mov rax, qword [rdi + 0x338]
mov qword [rdi + 0xcf0], rax
mov qword [rdi + 0xcf8], rcx
mov edx, 0x1000294
lea rcx, [rdi + 0x58]
call fcn.14000bc80
shr eax, 8
and eax, 1
mov dword [rdi + 0x1014], eax
mov dword [rbp + 0xc8], 0xfa
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0xc8]
lea r8, [rbp + 0xd8]
lea rdx, str.PalmOnPadMinTime
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
mov eax, dword [rbp + 0xd8]
mov dword [rdi + 0xbac], eax
mov ecx, 0x1a0
call fcn.1400e3e80
mov rbx, rax
mov qword [rbp - 0x30], rax
test rax, rax
je 0x14001260b
mov ecx, 0x1c0
call fcn.1400e3e80
mov qword [rbp + 0x1c8], rax
test rax, rax
je 0x1400125de
xor edx, edx
mov rcx, rax
call fcn.14009e590
jmp 0x1400125e1
mov rax, rsi
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 1
mov r9d, 4
lea r8, str.Tray_Icon_Zone
mov rdx, rdi
mov rcx, rbx
call fcn.1400a85c0
mov rbx, rax
jmp 0x14001260e
mov rbx, rsi
test rbx, rbx
je 0x140013520
mov r8, rbx
xor edx, edx
lea rcx, [rdi + 8]
call fcn.140032b90
test rax, rax
je 0x140013520
mov rax, qword [rbx]
mov edx, 0x16
mov rcx, rbx
call qword [rax + LoadRegTypeLib]
test eax, eax
je 0x140013520
mov edx, 0x16
lea rcx, [rbp + 0x318]
call fcn.1400a8c00
mov dword [rsp + 0x38], esi
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], 4
mov dword [rsp + 0x20], esi
xor r9d, r9d
lea r8d, [r9 + 0x10]
mov rdx, rax
mov rcx, rbx
call fcn.1400a9e60
test eax, eax
je 0x140013520
mov dword [rbx + 0x40], 0x16
mov dword [rsp + 0x20], esi
xor r9d, r9d
lea r8, str.SoftwareSynapticsSynTPEnh
mov rdx, 0xffffffff80000002
lea rcx, [rbp + 0x240]
call fcn.1400c9260
nop
lea r8, [rdi + 0x7b8]
mov qword [rsp + 0x20], rsi
xor r9d, r9d
lea rdx, str.CancelCoastingMotionThreshold
lea rcx, [rbp + 0x248]
call fcn.1400dfa30
mov rcx, r15
call fcn.140032350
test al, al
je 0x1400127a8
mov ecx, 0x1d0
call fcn.1400e3e80
mov qword [rbp - 0x30], rax
test rax, rax
je 0x14001271e
mov dword [rsp + 0x20], 1
mov r9d, 2
lea r8, str.Stick_Scrolling_Zone
mov rdx, rdi
mov rcx, rax
call fcn.14006b840
mov rbx, rax
jmp 0x140012721
mov rbx, rsi
test rbx, rbx
je 0x140013513
mov r8, rbx
xor edx, edx
lea rcx, [rdi + 8]
call fcn.140032b90
test rax, rax
je 0x140013513
mov rax, qword [rbx]
mov edx, 0x17
mov rcx, rbx
call qword [rax + LoadRegTypeLib]
test eax, eax
je 0x140013513
mov edx, 0x17
lea rcx, [rbp + 0x368]
call fcn.1400a8c00
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x30], 2
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], esi
mov r9d, 0x10
lea r8d, [r9 + 0x18]
mov rdx, rax
mov rcx, rbx
call fcn.14006bb40
test eax, eax
je 0x140013513
mov dword [rbx + 0x40], 0x17
mov ecx, 0x1d0
call fcn.1400e3e80
mov qword [rbp - 0x30], rax
test rax, rax
je 0x1400127e0
mov dword [rsp + 0x20], 1
mov r9d, 2
lea r8, str.Virtual_Stick_Scrolling_Zone
mov rdx, rdi
mov rcx, rax
call fcn.140094d00
mov rbx, rax
jmp 0x1400127e3
mov rbx, rsi
test rbx, rbx
je 0x140013513
mov r8, rbx
xor edx, edx
lea rcx, [rdi + 8]
call fcn.140032b90
test rax, rax
je 0x140013513
mov rax, qword [rbx]
mov edx, 0x31
mov rcx, rbx
call qword [rax + LoadRegTypeLib]
test eax, eax
je 0x140013513
mov edx, 0x31
lea rcx, [rbp + 0x3b8]
call fcn.1400a8c00
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x30], 2
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], esi
mov r9d, 0x10
lea r8d, [r9 + 0x18]
mov rdx, rax
mov rcx, rbx
call fcn.140094fe0
test eax, eax
je 0x140013513
mov dword [rbx + 0x40], 0x31
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], esi
xor r9d, r9d
lea r8, str.SoftwareSynapticscPad
mov rdx, 0xffffffff80000002
lea rcx, [rbp + 0x50]
call fcn.1400c9360
lea r8, [rdi + 0x7f4]
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.Enabled
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
mov rcx, rdi
call fcn.140031120
test eax, eax
je 0x140012934
mov rcx, qword [rdi + 0x798]
test rcx, rcx
jne 0x1400128ca
lea rcx, [rdi + 0x7a0]
mov rax, qword [rcx]
mov edx, dword [rbp + 0x898]
call qword [rax + 0x58]
test eax, eax
jne 0x140013513
lea rdx, [rdi + 0x80]
mov rcx, qword [rdi + 0x798]
test rcx, rcx
jne 0x1400128f8
lea rcx, [rdi + 0x7a0]
mov rax, qword [rcx]
call qword [rax + 0x70]
test eax, eax
jne 0x140013513
mov rcx, qword [rdi + 0x798]
test rcx, rcx
jne 0x140012919
lea rcx, [rdi + 0x7a0]
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x48]
test eax, eax
jne 0x140013513
lea edx, [rax + 1]
mov rcx, rdi
call fcn.140021b10
mov rcx, r15
call fcn.140032030
test al, al
je 0x1400129dc
mov dword [rbp + 0x34], esi
mov qword [rsp + 0x20], rsi
xor r9d, r9d
lea r8, [rbp + 0x34]
lea rdx, str.EnableDriftCorrectionControl
lea rcx, [rbp + 0x248]
call fcn.1400dfa30
cmp dword [rbp + 0x34], 0
je 0x1400129dc
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov qword [rdi + 0xa0], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov qword [rdi + 0xa8], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov qword [rdi + 0xb0], rax
lea rax, [rbp + 0x1d0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], esi
mov r9, rdi
lea r8, [0x14001f7a0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rdi + 0x98], rax
mov rax, qword [r12]
test rax, rax
je 0x1400129ea
mov rdx, qword [rax]
jmp 0x1400129ed
mov rdx, rsi
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x208], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x218], xmm1
movdqu xmmword [rbp + 0x228], xmm0
lea rcx, [rbp + 0x208]
call fcn.1400313a0
nop
mov ecx, 0x710
call fcn.1400e3e80
mov qword [rbp - 0x30], rax
test rax, rax
je 0x140012a35
mov rcx, rax
call fcn.14006d120
jmp 0x140012a38
mov rax, rsi
mov qword [rdi + 0x788], rax
test rax, rax
je 0x140012a55
mov r8d, 1
mov rdx, rdi
mov rcx, rax
call fcn.14006d670
mov rcx, rdi
call fcn.140031f10
test eax, eax
je 0x140012aed
lea r9, [rbp - 0x14]
lea r8, str.Slider0_Zone
lea rdx, str.SoftwareSynapticsSynTPEnhZoneConfig
mov rcx, rdi
call fcn.140024120
test eax, eax
je 0x140012aa9
mov r9d, dword [rbp - 0x14]
mov r8d, 0xc
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
mov qword [rdi + 0xd28], rax
test rax, rax
je 0x140013506
lea r9, [rbp - 0x14]
lea r8, str.Slider1_Zone
lea rdx, str.SoftwareSynapticsSynTPEnhZoneConfig
mov rcx, rdi
call fcn.140024120
test eax, eax
je 0x140012aed
mov r9d, dword [rbp - 0x14]
mov r8d, 0xd
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
mov qword [rdi + 0xd30], rax
test rax, rax
je 0x140013506
mov rcx, r15
call fcn.140031c40
test al, al
jne 0x140012b06
cmp dword [rdi + 0xd68], 0
je 0x140013178
mov qword [rsp + 0x20], rsi
lea r9, [rdi + 0x7c8]
lea r8, [rdi + 0x7c8]
lea rdx, str.LEDPatternSupport
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
lea r8, [rdi + 0x7cc]
mov dword [r8], 0x4b
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.LedPatternUpRelease
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
lea r8, [rdi + 0x7d0]
mov dword [r8], 0x4d
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.LedPatternDownRelease
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
lea r8, [rdi + 0x77c]
mov dword [r8], 0x19
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.LEDTurnOnTimeThreshold
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
lea r8, [rdi + 0x36c]
mov dword [r8], esi
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.LEDPreLowPowerPattern
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
lea r8, [rdi + 0x370]
mov dword [r8], esi
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.LEDAfterLowPowerPattern
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
lea r8, [rdi + 0x364]
mov dword [r8], 0x2710
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.LEDNoOperationTimeout
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
lea r8, [rdi + 0x368]
mov dword [r8], 0x1388
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.LEDResumeHeartbeatingTimeInterval
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
mov dword [rbp + 0x8a0], 0x200
lea r8, [rdi + 0x374]
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x8a0]
lea rdx, str.LEDHeartbeatingSetting
lea rcx, [rbp - 0x80]
call fcn.1400c9c80
lea r8, [rdi + 0x7d4]
mov dword [r8], esi
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.ButtonLEDBrightnessZoneSetting
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
mov dword [rbp + 0x8a0], 0x200
lea r8, [rdi + 0xd74]
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x8a0]
lea rdx, str.CustomizedScancodeMapping
lea rcx, [rbp - 0x80]
call fcn.1400c9c80
mov dword [rbp + 0x8a0], 0x200
lea r8, [rdi + 0x574]
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x8a0]
lea rdx, str.LEDFadingOutSetting
lea rcx, [rbp - 0x80]
call fcn.1400c9c80
cmp dword [rdi + 0x7c8], 2
jne 0x140012cfe
mov rcx, rdi
call fcn.140025a80
xor edx, edx
mov rcx, rdi
call fcn.140023670
cmp dword [rdi + 0xd68], 0
je 0x140012d0f
mov rcx, rdi
call fcn.140025e30
lea r9, [rbp + 0x8a8]
lea r8, str.Slider0_Zone
lea rdx, str.SoftwareSynapticsSynTPEnhZoneConfig
mov rcx, rdi
call fcn.140024120
test eax, eax
je 0x140012d59
mov r9d, dword [rbp + 0x8a8]
mov r8d, 0xc
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013506
mov qword [rdi + 0xd28], rax
lea r9, [rbp + 0x8a8]
lea r8, str.Extended_Slider0_Zone
lea rdx, str.SoftwareSynapticsSynTPEnhZoneConfig
mov rcx, rdi
call fcn.140024120
test eax, eax
je 0x140012df5
mov r9d, dword [rbp + 0x8a8]
mov r8d, SafeArrayAllocDescriptor
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
mov rbx, rax
test rax, rax
je 0x140013506
cmp qword [rdi + 0xd28], 0
je 0x140012df5
xor r8d, r8d
xor edx, edx
mov rcx, rax
call fcn.1400a9790
test al, 0x40
je 0x140012df5
xor r8d, r8d
xor edx, edx
mov rcx, qword [rdi + 0xd28]
call fcn.1400a9790
test al, 0x40
je 0x140012df5
mov rax, qword [rdi + 0xd28]
mov qword [rdi + 0xc48], rax
mov qword [rdi + 0xc50], rbx
mov dword [rdi + 0xc60], 1
mov qword [rdi + 0xc58], rax
lea r9, [rbp + 0x8a8]
lea r8, str.Slider1_Zone
lea rdx, str.SoftwareSynapticsSynTPEnhZoneConfig
mov rcx, rdi
call fcn.140024120
test eax, eax
je 0x140012e3f
mov r9d, dword [rbp + 0x8a8]
mov r8d, 0xd
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
mov qword [rdi + 0xd30], rax
test rax, rax
je 0x140013506
lea rbx, [rdi + 0x818]
mov qword [rsp + 0x20], rsi
mov r9, rbx
mov r8, rbx
lea rdx, str.IlluminationEnabled
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
lea r8, [rdi + 0x830]
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.IlluminationScaleParam
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
mov rcx, rdi
call fcn.14001ebb0
mov qword [rsp + 0x20], rsi
lea r9, [rdi + 0x820]
lea r8, [rdi + 0x820]
lea rdx, str.IlluminationInactiveState
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
mov qword [rsp + 0x20], rsi
lea r9, [rdi + 0x824]
lea r8, [rdi + 0x824]
lea rdx, str.IlluminationActiveState
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
mov r8d, dword [rdi + 0x824]
mov edx, 1
mov rcx, rdi
call fcn.14001ec90
mov r8d, dword [rdi + 0x820]
xor edx, edx
mov rcx, rdi
call fcn.14001ec90
mov word [rbp + 0x430], si
xor edx, edx
lea rcx, [rbp + 0x1d8]
call fcn.1400c91f0
nop
xor r9d, r9d
mov r8, qword [rbp + 0x210]
lea rdx, str.SoftwareSynapticsSynTPEnhZoneConfig
lea rcx, [rbp + 0x430]
call fcn.140006e40
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], esi
xor r9d, r9d
lea r8, [rbp + 0x430]
mov rdx, 0xffffffff80000002
lea rcx, [rbp + 0x1d8]
call fcn.1400c9360
test eax, eax
jne 0x140012f91
xor r9d, r9d
mov r8, qword [rbp + 0x228]
lea rdx, str.SoftwareSynapticsSynTPEnhZoneConfig
lea rcx, [rbp + 0x430]
call fcn.140006e40
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], esi
xor r9d, r9d
lea r8, [rbp + 0x430]
mov rdx, 0xffffffff80000002
lea rcx, [rbp + 0x1d8]
call fcn.1400c9360
mov word [rbp + 0x270], si
mov r14d, esi
lea rcx, [rbp + 0x1e0]
call fcn.1400e00c0
mov r8d, 0x40
lea rdx, [rbp + 0x270]
lea rcx, [rbp + 0x1e0]
call fcn.1400df890
test eax, eax
je 0x140013150
nop dword [rax + rax]
cmp word [rbp + 0x270], 0
je 0x140013116
lea rdx, str.LED_Zone
lea rcx, [rbp + 0x270]
call fcn.1400e60d4
test rax, rax
je 0x140013116
mov ecx, 0x268
call fcn.1400e3e80
mov qword [rbp - 0x30], rax
test rax, rax
je 0x140013032
mov dword [rsp + 0x20], 2
mov r9d, 9
lea r8, [rbp + 0x270]
mov rdx, rdi
mov rcx, rax
call fcn.14000e070
mov rbx, rax
jmp 0x140013035
mov rbx, rsi
test rbx, rbx
je 0x140013138
mov r8, rbx
xor edx, edx
lea rcx, [rdi + 8]
call fcn.140032b90
test rax, rax
je 0x140013138
mov rax, qword [rbx]
mov edx, 0x18
mov rcx, rbx
call qword [rax + LoadRegTypeLib]
test eax, eax
je 0x140013138
mov edx, 0x18
lea rcx, [rbp + 0x2f0]
call fcn.1400a8c00
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x90], rcx
mov dword [rsp + 0x88], 9
mov dword [rsp + 0x80], esi
mov dword [rsp + 0x78], esi
mov dword [rsp + 0x70], esi
mov ecx, dword [rdi + 0x824]
mov dword [rsp + 0x68], ecx
mov ecx, dword [rdi + 0x820]
mov dword [rsp + 0x60], ecx
mov dword [rsp + 0x58], esi
mov dword [rsp + 0x50], esi
mov dword [rsp + 0x48], 1
mov dword [rsp + 0x40], 0xfff
mov dword [rsp + 0x38], 1
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], 0xfff
mov r9d, 1
xor r8d, r8d
mov rdx, rax
mov rcx, rbx
call fcn.14000e980
test eax, eax
je 0x140013138
mov dword [rbx + 0x254], r14d
mov dword [rbx + 0x40], 0x18
inc r14d
mov r8d, 0x40
lea rdx, [rbp + 0x270]
lea rcx, [rbp + 0x1e0]
call fcn.1400df890
test eax, eax
je 0x140013149
jmp 0x140012fd0
lea rcx, [rbp + 0x1d8]
call fcn.1400c9300
jmp 0x140013506
lea rbx, [rdi + 0x818]
cmp qword [rdi + 0x788], 0
jne 0x140013168
cmp dword [rbx], 0
je 0x140013168
mov rcx, rdi
call fcn.14001ea80
nop
lea rcx, [rbp + 0x1d8]
call fcn.1400c9300
lea r15, [rdi + 0x50]
mov rcx, r15
call fcn.140032520
test al, al
je 0x140013230
cmp dword [rdi + 0xbfc], 0
je 0x140013230
mov r9d, 3
lea r8d, [r9 + 0x29]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013506
mov r9d, 3
lea r8d, [r9 + 0x2a]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013506
mov r9d, 3
lea r8d, [r9 + 0x2b]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013506
mov r9d, 0xd
lea r8d, [r9 + 0x22]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013506
mov r9d, 0xd
lea r8d, [r9 + 0x23]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.14001be30
test rax, rax
je 0x140013506
mov rcx, r15
call fcn.14000bd80
test al, al
jne 0x14001324c
mov rcx, r15
call fcn.140032520
test al, al
je 0x140013489
cmp dword [rdi + 0xc04], 0
jne 0x140013262
cmp dword [rdi + 0xbfc], 0
je 0x140013489
lea r8, [rdi + 0xf98]
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.FastFingerGestureSwitch
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
lea r8, [rdi + 0x1018]
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.IgnoreMFTapWhenCoasting
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
lea r8, [rdi + 0xfb0]
mov dword [r8], 0x19
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.FingersMovedTogetherAngle
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
mov dword [rbp + 0xe0], 0xa
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0xe0]
lea r8, [rbp + 0xec]
lea rdx, str.FingerMotionEpsilon
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
mov eax, dword [rbp + 0xec]
mov dword [rdi + 0xb98], eax
mov edx, 0x10000113
lea rcx, [rdi + 0x58]
call fcn.14000bc80
mov ecx, eax
imul ecx, dword [rdi + 0xb98]
mov eax, 0x10624dd3
mul ecx
shr edx, 6
mov dword [rdi + 0xb90], edx
mov edx, 0x10000114
lea rcx, [rdi + 0x58]
call fcn.14000bc80
mov ecx, eax
imul ecx, dword [rdi + 0xb98]
mov eax, 0x10624dd3
mul ecx
shr edx, 6
mov dword [rdi + 0xb94], edx
mov dword [rbp + 0xf8], 0x12c
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0xf8]
lea r8, [rbp + 0x104]
lea rdx, str.MinStrokeQDistance
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
mov eax, dword [rbp + 0x104]
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
divsd xmm0, xmm6
movsd qword [rdi + 0xb88], xmm0
mov dword [rbp + 0x110], 0xc8
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x110]
lea r8, [rbp + 0x11c]
lea rdx, str.3FingerPressMaxMotion
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
mov edx, 0x10000113
lea rcx, [rdi + 0x58]
call fcn.14000bc80
mov r8d, eax
imul r8d, dword [rbp + 0x11c]
mov eax, 0x10624dd3
mul r8d
shr edx, 6
mov dword [rdi + 0xb9c], edx
mov edx, 0x10000114
lea rcx, [rdi + 0x58]
call fcn.14000bc80
mov ecx, eax
imul ecx, dword [rbp + 0x11c]
mov eax, 0x10624dd3
mul ecx
shr edx, 6
mov dword [rdi + 0xba0], edx
mov dword [rbp + 0x1c8], 0x1f4
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x1c8]
lea r8, [rbp + 0x1a8]
lea rdx, str.3FingerPressMinTime
lea rcx, [rbp + 0x58]
call fcn.1400dfa30
mov eax, dword [rbp + 0x1a8]
mov dword [rdi + 0xba4], eax
lea r8, [rdi + 0xf8c]
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.RestrictTo2FVerticalScroll
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
lea r8, [rdi + 0xf90]
mov qword [rsp + 0x20], rsi
mov r9, r8
lea rdx, str.CancelScrollAfter1FLeaves
lea rcx, [rbp - 0x80]
call fcn.1400c9b80
mov rcx, rdi
call fcn.140028560
test eax, eax
je 0x140013506
mov ecx, 0x28
call fcn.1400e3e80
mov qword [rbp + 0x8a0], rax
test rax, rax
je 0x1400134b9
mov rdx, rdi
mov rcx, rax
call fcn.1400d7230
mov rsi, rax
mov qword [rdi + 0x1048], rsi
mov rdi, qword [r15 + 8]
test rdi, rdi
jne 0x1400134cd
lea rdi, [r15 + 0x20]
mov rbx, qword [rdi]
call fcn.1400dd960
mov r8d, eax
mov edx, 0x10002ef
mov rcx, rdi
call qword [rbx + 0x30]
mov rcx, qword [r15 + 8]
test rcx, rcx
jne 0x1400134f0
lea rcx, [r15 + 0x20]
mov rax, qword [rcx]
mov edx, 0x10002e6
mov r8d, 1
call qword [rax + 0x30]
mov esi, 1
lea rcx, [rbp + 0x208]
call fcn.140030570
nop
lea rcx, [rbp + 0x240]
call fcn.1400c9300
nop
lea rcx, [rbp + 0x50]
call fcn.1400c9300
nop
lea rax, vtable.CSynList_class_CRegistryKey_.0
mov qword [rbp - 0x80], rax
lea rcx, [rbp - 0x80]
call fcn.14005c6f0
lea rcx, [rbp - 0x60]
call qword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
mov eax, esi
mov rbx, qword [rsp + 0x9b0]
movaps xmm6, xmmword [rsp + 0x960]
add rsp, 0x970
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret