Function at 0x140010040
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 0x14001012b
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 0x1400100db
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 + 0x814], 2
jne 0x14001014e
mov rdx, rdi
mov rcx, qword [0x1402711c0]
call qword [sym.imp.USER32.dll_KillTimer]
mov dword [rdi + 0x814], 1
mov dword [rsp + 0x68], ebp
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x140010185
mov rax, qword [rcx]
lea r8, [rsp + 0x68]
mov edx, 0x10000107
call qword [rax + 0x18]
cmp dword [rsp + 0x68], 0xd
jne 0x140010185
mov dword [rdi + 0x83c], ebp
mov edx, 1
mov rcx, rdi
call fcn.1400109a0
mov dword [rsp + 0x68], ebp
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x1400101bf
mov rax, qword [rcx]
lea r8, [rsp + 0x68]
mov edx, 0x10000102
call qword [rax + 0x18]
cmp dword [rsp + 0x68], 8
jne 0x1400101bf
cmp dword [rdi + 0x818], ebp
je 0x1400101bf
mov dword [rdi + 0x818], ebp
mov rcx, rdi
call fcn.14001ead0
mov rbx, qword [rdi + 0x788]
test rbx, rbx
je 0x1400101e2
mov rcx, rbx
call fcn.14006d4e0
mov rcx, rbx
call fcn.1400e5d14
mov qword [rdi + 0x788], rbp
mov rcx, qword [rdi + 0x348]
test rcx, rcx
je 0x1400101ff
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov qword [rdi + 0x348], rbp
mov rcx, rdi
call fcn.140021e60
mov rcx, qword [rdi + 0x1048]
test rcx, rcx
je 0x140010224
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov qword [rdi + 0x1048], rbp
lea rcx, [rdi + 8]
call fcn.14002fb40
mov rcx, qword [rdi + 0x1028]
test rcx, rcx
je 0x14001024a
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov qword [rdi + 0x1028], rbp
lea rcx, [rdi + 0x1100]
call fcn.14002f2d0
nop
lea rcx, [rdi + 0x1060]
call fcn.14002f2d0
nop
mov r8, qword [rdi + 0x1050]
mov r9, r8
mov r8, qword [r8]
lea rdx, [rsp + 0x68]
lea rcx, [rdi + 0x1050]
call fcn.1400e44e0
mov rcx, qword [rdi + 0x1050]
call fcn.1400e5d14
nop
lea r15, vtable.CDummySynPacket.0
mov qword [rdi + 0x1008], r15
mov rcx, qword [rdi + 0x1000]
test rcx, rcx
je 0x1400102b6
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rdi + 0x1000], rbp
mov rax, qword [rdi + 0xfc8]
mov rcx, qword [rax]
mov qword [rax], rax
mov rax, qword [rdi + 0xfc8]
mov qword [rax + 8], rax
mov qword [rdi + 0xfd0], rbp
cmp rcx, qword [rdi + 0xfc8]
je 0x1400102f4
nop
mov rbx, qword [rcx]
call fcn.1400e5d14
mov rcx, rbx
cmp rbx, qword [rdi + 0xfc8]
jne 0x1400102e0
mov rcx, qword [rdi + 0xfc8]
call fcn.1400e5d14
nop
mov rax, qword [rdi + 0xfb8]
mov rcx, qword [rax]
mov qword [rax], rax
mov rax, qword [rdi + 0xfb8]
mov qword [rax + 8], rax
mov qword [rdi + 0xfc0], rbp
cmp rcx, qword [rdi + 0xfb8]
je 0x140010344
nop dword [rax]
mov rbx, qword [rcx]
call fcn.1400e5d14
mov rcx, rbx
cmp rbx, qword [rdi + 0xfb8]
jne 0x140010330
mov rcx, qword [rdi + 0xfb8]
call fcn.1400e5d14
nop
mov qword [rdi + 0xbd0], r15
mov rcx, qword [rdi + 0xbc8]
test rcx, rcx
je 0x140010371
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rdi + 0xbc8], rbp
mov qword [rdi + 0xbc0], r15
mov rcx, qword [rdi + 0xbb8]
test rcx, rcx
je 0x140010391
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rdi + 0xbb8], rbp
lea rcx, [rdi + 0xa80]
lea r9, [0x14002f3a0]
mov edx, 0x10
lea r8d, [rdx - 6]
call fcn.1400e7144
nop
lea rcx, [rdi + 0x9e0]
lea r9, [0x14002f3a0]
mov edx, 0x10
lea r8d, [rdx - 6]
call fcn.1400e7144
nop
lea rcx, [rdi + 0x940]
lea r9, [0x14002f3a0]
mov edx, 0x10
lea r8d, [rdx - 6]
call fcn.1400e7144
nop
lea rcx, [rdi + 0x8a0]
lea r9, [0x14002f3a0]
mov edx, 0x10
lea r8d, [rdx - 6]
call fcn.1400e7144
nop
mov qword [rdi + 0x7b0], r15
mov rcx, qword [rdi + 0x7a8]
test rcx, rcx
je 0x140010425
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 0x14001045a
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rdi + 0x798], rbp
mov rcx, qword [rdi + 0x780]
test rcx, rcx
je 0x140010472
call fcn.140033030
mov qword [rdi + 0x780], rbp
lea rcx, [rdi + 0x50]
call fcn.14002f210
nop
lea rax, vtable.CSynList_class_CZone_.0
mov qword [rdi + 8], rax
lea rcx, [rdi + 8]
call fcn.14002fb40
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