Function at 0x14001f890
Capabilities:
Terminate thread

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r14
push r15
sub rsp, 0x30
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x70], rbx
mov rdi, rcx
lea rax, vtable.CManagedPointingDevice.0
mov qword [rcx], rax
lea rax, vtable.CManagedPointingDevice.1.0
mov qword [rcx + 8], rax
lea rax, vtable.CManagedPointingDevice.2.0
mov qword [rcx + 0x50], rax
lea rax, vtable.CManagedPointingDevice.3.0
mov qword [rcx + 0x60], rax
lea rax, vtable.CManagedPointingDevice.4.0
mov qword [rcx + 0x80], rax
xor ebp, ebp
cmp qword [rcx + 0x98], rbp
je 0x14001f97b
mov rcx, qword [rcx + 0xb0]
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov edx, 0x3e8
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x14001f92b
xor edx, edx
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.KERNEL32.dll_TerminateThread]
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rdi + 0x98], rbp
mov rcx, qword [rdi + 0xa0]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rdi + 0xa0], rbp
mov rcx, qword [rdi + 0xa8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rdi + 0xa8], rbp
mov rcx, qword [rdi + 0xb0]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rdi + 0xb0], rbp
cmp dword [rdi + 0x81c], 2
jne 0x14001f99e
mov rdx, rdi
mov rcx, qword [0x1402ae2c8]
call qword [sym.imp.USER32.dll_KillTimer]
mov dword [rdi + 0x81c], 1
mov dword [rsp + 0x68], ebp
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x14001f9d5
mov rax, qword [rcx]
lea r8, [rsp + 0x68]
mov edx, 0x10000107
call qword [rax + 0x18]
cmp dword [rsp + 0x68], 0xd
jne 0x14001f9d5
mov dword [rdi + 0x844], ebp
mov edx, 1
mov rcx, rdi
call fcn.140020470
mov dword [rsp + 0x68], ebp
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x14001fa0f
mov rax, qword [rcx]
lea r8, [rsp + 0x68]
mov edx, 0x10000102
call qword [rax + 0x18]
cmp dword [rsp + 0x68], 8
jne 0x14001fa0f
cmp dword [rdi + 0x820], ebp
je 0x14001fa0f
mov dword [rdi + 0x820], ebp
mov rcx, rdi
call fcn.14002fa70
mov rbx, qword [rdi + 0x788]
test rbx, rbx
je 0x14001fa32
mov rcx, rbx
call fcn.14007ff20
mov rcx, rbx
call fcn.14010a7dc
mov qword [rdi + 0x788], rbp
mov dword [rsp + 0x68], ebp
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x14001fa6b
mov rax, qword [rcx]
lea r8, [rsp + 0x68]
mov edx, 0x10000102
call qword [rax + 0x18]
cmp dword [rsp + 0x68], 2
jne 0x14001fa6b
mov rcx, qword [0x1402aef80]
test rcx, rcx
je 0x14001fa6b
mov rax, qword [rcx]
call qword [rax + 0xa8]
mov dword [rsp + 0x68], ebp
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x14001faa4
mov rax, qword [rcx]
lea r8, [rsp + 0x68]
mov edx, 0x10000102
call qword [rax + 0x18]
cmp dword [rsp + 0x68], 0x10
jne 0x14001faa4
mov rcx, qword [0x1402aef88]
test rcx, rcx
je 0x14001faa4
mov rax, qword [rcx]
call qword [rax + 0xa8]
mov rcx, qword [rdi + 0x348]
test rcx, rcx
je 0x14001fac1
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov qword [rdi + 0x348], rbp
mov rcx, rdi
call fcn.140032f20
mov rcx, qword [rdi + 0x1028]
test rcx, rcx
je 0x14001fae6
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov qword [rdi + 0x1028], rbp
mov rax, qword [rdi + 0x10]
mov qword [rsp + 0x68], rax
test rax, rax
je 0x14001fb15
nop dword [rax]
nop dword [rax + rax]
lea rdx, [rsp + 0x68]
lea rcx, [rdi + 8]
call fcn.140062940
cmp qword [rsp + 0x68], rbp
jne 0x14001fb00
mov rcx, qword [rdi + 0xff8]
test rcx, rcx
je 0x14001fb32
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov qword [rdi + 0xff8], rbp
lea rcx, [rdi + 0x10e0]
call fcn.140040b00
nop
lea rcx, [rdi + 0x1040]
call fcn.140040b00
nop
mov r8, qword [rdi + 0x1030]
mov r9, r8
mov r8, qword [r8]
lea rdx, [rsp + 0x68]
lea rcx, [rdi + 0x1030]
call fcn.140045b50
mov rcx, qword [rdi + 0x1030]
call fcn.14010a7dc
nop
lea r15, vtable.CDummySynPacket.0
mov qword [rdi + 0xfe0], r15
mov rcx, qword [rdi + 0xfd8]
test rcx, rcx
je 0x14001fb9e
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rdi + 0xfd8], rbp
mov rax, qword [rdi + 0xf98]
mov rcx, qword [rax]
mov qword [rax], rax
mov rax, qword [rdi + 0xf98]
mov qword [rax + 8], rax
mov qword [rdi + 0xfa0], rbp
cmp rcx, qword [rdi + 0xf98]
je 0x14001fbda
mov rbx, qword [rcx]
call fcn.14010a7dc
mov rcx, rbx
cmp rbx, qword [rdi + 0xf98]
jne 0x14001fbc6
mov rcx, qword [rdi + 0xf98]
call fcn.14010a7dc
nop
mov rax, qword [rdi + 0xf88]
mov rcx, qword [rax]
mov qword [rax], rax
mov rax, qword [rdi + 0xf88]
mov qword [rax + 8], rax
mov qword [rdi + 0xf90], rbp
cmp rcx, qword [rdi + 0xf88]
je 0x14001fc24
nop
mov rbx, qword [rcx]
call fcn.14010a7dc
mov rcx, rbx
cmp rbx, qword [rdi + 0xf88]
jne 0x14001fc10
mov rcx, qword [rdi + 0xf88]
call fcn.14010a7dc
nop
mov qword [rdi + 0xbd8], r15
mov rcx, qword [rdi + 0xbd0]
test rcx, rcx
je 0x14001fc51
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rdi + 0xbd0], rbp
mov qword [rdi + 0xbc8], r15
mov rcx, qword [rdi + 0xbc0]
test rcx, rcx
je 0x14001fc71
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rdi + 0xbc0], rbp
lea rcx, [rdi + 0xa88]
lea r9, [0x140040bd0]
mov edx, 0x10
lea r8d, [rdx - 6]
call fcn.14010b8e0
nop
lea rcx, [rdi + 0x9e8]
lea r9, [0x140040bd0]
mov edx, 0x10
lea r8d, [rdx - 6]
call fcn.14010b8e0
nop
lea rcx, [rdi + 0x948]
lea r9, [0x140040bd0]
mov edx, 0x10
lea r8d, [rdx - 6]
call fcn.14010b8e0
nop
lea rcx, [rdi + 0x8a8]
lea r9, [0x140040bd0]
mov edx, 0x10
lea r8d, [rdx - 6]
call fcn.14010b8e0
nop
mov qword [rdi + 0x7b0], r15
mov rcx, qword [rdi + 0x7a8]
test rcx, rcx
je 0x14001fd05
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rdi + 0x7a8], rbp
lea rax, vtable.CDummySynDisplay.0
mov qword [rdi + 0x7a0], rax
lea rax, vtable.SynWrapEvents_class_SynDisplay__struct_ISynDisplay__struct__ISynDisplayEvents_.0
mov qword [rdi + 0x790], rax
mov rcx, qword [rdi + 0x798]
test rcx, rcx
je 0x14001fd3a
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rdi + 0x798], rbp
mov rcx, qword [rdi + 0x780]
test rcx, rcx
je 0x14001fd52
call fcn.1400440d0
mov qword [rdi + 0x780], rbp
lea rcx, [rdi + 0x50]
call fcn.140007b10
nop
lea rax, vtable.CSynList_class_CZone_.0
mov qword [rdi + 8], rax
mov rax, qword [rdi + 0x10]
mov qword [rsp + 0x68], rax
test rax, rax
je 0x14001fd96
nop word [rax + rax]
lea rdx, [rsp + 0x68]
lea rcx, [rdi + 8]
call fcn.140062940
cmp qword [rsp + 0x68], 0
jne 0x14001fd80
lea rcx, [rdi + 0x28]
call qword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
nop
lea rax, vtable.CListObjectBase.0
mov qword [rdi], rax
mov rbx, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret