Function at 0x140022df0
Capabilities:
Terminate thread

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
sub rsp, 0x40
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x80], rbx
mov rdi, rcx
lea rax, [0x140185ec8]
mov qword [rcx], rax
lea rax, [0x140186138]
mov qword [rcx + 0xa8], rax
lea rax, vtable..28.0
mov qword [rcx + 0xb8], rax
lea rax, [0x140186200]
mov qword [rcx + 0x1f0], rax
lea rax, [0x140186218]
mov qword [rcx + 0x2c8], rax
mov rcx, qword [rcx + 0xc0]
xor r13d, r13d
test rcx, rcx
je 0x140022e87
call fcn.140134b2c
mov rcx, qword [rdi + 0xc0]
test rcx, rcx
je 0x140022e87
mov rax, qword [rcx]
lea edx, [r13 + 1]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rdi + 0xc0], r13
mov rcx, qword [rdi + 0xc8]
test rcx, rcx
je 0x140022eb6
call fcn.140134ea4
mov rcx, qword [rdi + 0xc8]
test rcx, rcx
je 0x140022eb6
mov rax, qword [rcx]
mov edx, 1
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rdi + 0xc8], r13
mov rcx, qword [rdi + 0x420]
test rcx, rcx
je 0x140022ed3
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov qword [rdi + 0x420], r13
mov rbx, qword [rdi + 0x428]
test rbx, rbx
je 0x140022f4c
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140022f05
call fcn.140134b2c
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140022f01
mov rax, qword [rcx]
mov edx, 1
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rbx + 8], r13
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x140022f2b
call fcn.140134ea4
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x140022f27
mov rax, qword [rcx]
mov edx, 1
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rbx + 0x10], r13
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x140022f3d
call fcn.1401287f4
mov qword [rbx + 0x18], r13
mov rcx, rbx
call fcn.1401287f4
mov qword [rdi + 0x428], r13
mov rbx, qword [rdi + 0x430]
test rbx, rbx
je 0x140022fc5
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140022f7e
call fcn.140134b2c
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140022f7a
mov rax, qword [rcx]
mov edx, 1
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rbx + 8], r13
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x140022fa4
call fcn.140134ea4
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x140022fa0
mov rax, qword [rcx]
mov edx, 1
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rbx + 0x10], r13
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x140022fb6
call fcn.1401287f4
mov qword [rbx + 0x18], r13
mov rcx, rbx
call fcn.1401287f4
mov qword [rdi + 0x430], r13
or r8, 0xffffffffffffffff
xor edx, edx
lea rcx, [rdi + 0x3b8]
call fcn.140139d9c
nop
lea rsi, [rdi + 0x440]
mov qword [rsp + 0x78], rsi
mov rbx, qword [rsi + 8]
test rbx, rbx
je 0x140023011
nop
mov rcx, rbx
test rbx, rbx
je 0x14002300b
mov rbx, qword [rbx]
mov rcx, qword [rcx + 0x10]
call fcn.1401287f4
test rbx, rbx
jne 0x140022ff0
jmp 0x140023011
call fcn.140129ec4
int3
mov rcx, rsi
call fcn.140139fd0
nop
mov rcx, rsi
call fcn.14013a16c
nop
cmp qword [rdi + 0x418], 0
je 0x140023088
mov rcx, qword [rdi + 0x408]
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov edx, 0x2710
mov rcx, qword [rdi + 0x410]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov edx, 0x2710
mov rcx, qword [rdi + 0x418]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x140023074
xor edx, edx
mov rcx, qword [rdi + 0x418]
call qword [sym.imp.KERNEL32.dll_TerminateThread]
mov rcx, qword [rdi + 0x418]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rdi + 0x418], r13
mov rcx, qword [rdi + 0x408]
test rcx, rcx
je 0x1400230a1
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rdi + 0x408], r13
mov rcx, qword [rdi + 0x410]
test rcx, rcx
je 0x1400230ba
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rdi + 0x410], r13
lea rcx, [rdi + 0x3b8]
call fcn.140139d88
nop
lea rcx, [rdi + 0x340]
call fcn.14013c890
nop
lea rcx, [rdi + 0x308]
call fcn.14013a16c
nop
lea rax, [0x1401889d0]
mov qword [rdi + 0x2c8], rax
cmp qword [rdi + 0x2f0], 0
je 0x140023117
mov rcx, qword [rdi + 0x2f0]
test rcx, rcx
je 0x140023110
mov rax, qword [rcx]
mov edx, 1
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rdi + 0x2f0], r13
lea rax, [0x140186e68]
mov qword [rdi + 0x1f0], rax
lea rbx, [rdi + 0x230]
mov esi, 6
cmp qword [rbx], 0
je 0x140023142
mov rcx, qword [rbx]
call fcn.1401287f4
mov qword [rbx], r13
add rbx, 8
sub rsi, 1
jne 0x140023131
lea rax, [0x140183be8]
mov qword [rdi + 0xa8], rax
lea rax, [0x140183c98]
mov qword [rdi + 0xb8], rax
lea rcx, [rdi + 0xa8]
call fcn.1400166f0
nop
mov rcx, rdi
mov rbx, qword [rsp + 0x80]
add rsp, 0x40
pop r13
pop r12
pop rdi
pop rsi
pop rbp
jmp fcn.14012f0a0