Function at 0x140004270
Capabilities:
Connect to wmi namespace via wbemlocator

Disassembly:
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x70]
sub rsp, 0x170
mov qword [rbp + 0x30], 0xfffffffffffffffe
mov qword [rsp + 0x1b0], rbx
mov rbx, rdx
mov r12, rcx
xor r14d, r14d
mov qword [rbp - 0x60], r14
mov qword [rsp + 0x70], r14
mov r15d, r14d
mov edi, r14d
mov dword [rbp + 0xc0], r14d
lea rcx, str.WmiGetMonitorRawEEdidV1Block
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov r13, rax
mov qword [rbp - 0x68], r14
mov qword [rbp - 0x70], r14
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x78], r14
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeEx]
mov qword [rsp + 0x40], r14
mov dword [rsp + 0x38], r14d
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], r14d
xor r9d, r9d
xor r8d, r8d
mov rsi, 0xffffffffffffffff
mov edx, esi
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeSecurity]
lea rax, [rbp - 0x60]
mov qword [rsp + 0x20], rax
lea r9, [0x140029a78]
xor edx, edx
lea r8d, [r14 + 1]
lea rcx, [0x140029a68]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jne 0x140004cfc
mov rdi, qword [rbp - 0x60]
lea ecx, [rsi + 0x19]
call fcn.1400118c0
mov rbx, rax
mov qword [rbp + 0xc8], rax
test rax, rax
je 0x140004385
mov qword [rax + 8], r14
mov dword [rax + 0x10], 1
lea rcx, str.rootwmi
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
je 0x140004e56
jmp 0x140004388
mov rbx, r14
mov qword [rbp + 0x38], rbx
test rbx, rbx
je 0x140004e82
mov rax, qword [rdi]
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rbx]
mov rcx, rdi
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
mov edi, eax
mov eax, esi
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x140004403
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400043e4
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r14
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1400043f6
call fcn.1400115f0
mov qword [rbx + 8], r14
mov edx, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rcx, rbx
call fcn.1400115f0
test edi, edi
jne 0x140004cef
mov dword [rsp + 0x38], r14d
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
lea edx, [rdi + 0xa]
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
jne 0x140004cef
mov r14, qword [rsp + 0x70]
lea ecx, [rdi + 0x18]
call fcn.1400118c0
mov rbx, rax
mov qword [rbp - 0x80], rax
test rax, rax
je 0x140004484
mov qword [rax + 8], 0
mov dword [rax + 0x10], 1
lea rcx, str.Select__from_WmiMonitorDescriptorMethods
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
je 0x140004e61
jmp 0x140004486
xor ebx, ebx
mov qword [rbp + 0x40], rbx
test rbx, rbx
je 0x140004e8d
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
call fcn.1400118c0
mov rdi, rax
mov qword [rbp - 0x80], rax
test rax, rax
je 0x1400044c9
mov qword [rax + 8], 0
mov dword [rax + 0x10], 1
lea rcx, [0x140031e64]
call fcn.1400122a0
mov qword [rdi], rax
jmp 0x1400044cb
xor edi, edi
mov qword [rbp + 0x48], rdi
test rdi, rdi
je 0x140004e98
mov rax, qword [r14]
lea rcx, [rbp - 0x78]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], 0
mov r9d, 0x30
mov r8, qword [rbx]
mov rdx, qword [rdi]
mov rcx, r14
call qword [rax + 0xa0]
mov r14d, eax
mov eax, esi
lock xadd dword [rdi + 0x10], eax
cmp eax, 1
jne 0x14000454a
mov rcx, qword [rdi]
test rcx, rcx
je 0x140004526
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rdi], 0
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x14000453c
call fcn.1400115f0
mov qword [rdi + 8], 0
mov edx, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rcx, rdi
call fcn.1400115f0
nop
mov eax, esi
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x14000458e
mov rcx, qword [rbx]
test rcx, rcx
je 0x14000456b
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], 0
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140004581
call fcn.1400115f0
mov qword [rbx + 8], 0
mov edx, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rcx, rbx
call fcn.1400115f0
test r14d, r14d
jne 0x140004cef
mov rdi, qword [rsp + 0x70]
lea ecx, [r14 + 0x18]
call fcn.1400118c0
mov rbx, rax
mov qword [rbp - 0x80], rax
xor r14d, r14d
test rax, rax
je 0x1400045da
mov qword [rax + 8], r14
mov dword [rax + 0x10], 1
lea rcx, [0x140031e68]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
je 0x140004e6c
jmp 0x1400045dd
mov rbx, r14
mov qword [rbp + 0x50], rbx
test rbx, rbx
je 0x140004ea3
mov rax, qword [rdi]
mov qword [rsp + 0x28], r14
lea rcx, [rbp - 0x68]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rbx]
mov rcx, rdi
call qword [rax + 0x30]
mov edi, eax
mov eax, esi
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x140004648
mov rcx, qword [rbx]
test rcx, rcx
je 0x140004629
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r14
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x14000463b
call fcn.1400115f0
mov qword [rbx + 8], r14
mov edx, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rcx, rbx
call fcn.1400115f0
test edi, edi
jne 0x140004cef
mov rcx, qword [rbp - 0x68]
mov rax, qword [rcx]
xor edi, edi
mov qword [rsp + 0x20], rdi
lea r9, [rbp - 0x70]
xor r8d, r8d
mov rdx, r13
call qword [rax + 0x98]
test eax, eax
jne 0x140004cf5
mov rcx, qword [rbp - 0x70]
mov rax, qword [rcx]
lea r8, [rsp + 0x78]
xor edx, edx
call qword [rax + 0x78]
test eax, eax
jne 0x140004cf5
mov rax, qword [rbp - 0x78]
test rax, rax
je 0x140004cf5
mov r14, qword [rbp + 0xb8]
lea rbx, [0x140031920]
test r15d, r15d
jne 0x140004c51
mov qword [rsp + 0x58], rdi
mov dword [rbp + 0xc8], edi
mov r10, qword [rax]
lea rcx, [rbp + 0xc8]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x58]
lea r8d, [r15 + 1]
mov edx, esi
mov rcx, rax
call qword [r10 + 0x20]
test eax, eax
jne 0x140004cdf
call fcn.140001230
mov rcx, rax
test rax, rax
je 0x140004e4b
mov rax, qword [rax]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x50], rax
lea rcx, [rsp + 0x50]
cmp rbx, 0x10000
jae 0x14000471f
movzx edx, bx
call fcn.140002e30
jmp 0x14000472b
xor r8d, r8d
mov rdx, rbx
call fcn.1400030e0
nop
lea rcx, [rbp - 0x58]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rdi
lea r9, [rbp - 0x58]
xor r8d, r8d
lea rdx, str.InstanceName
call qword [rax + 0x20]
mov ebx, eax
xor eax, eax
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x20], rax
lea rcx, [rbp - 0x30]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
nop
mov r9d, 8
xor r8d, r8d
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x30]
call qword [sym.imp.OLEAUT32.dll_VariantTimeToDosDateTime]
test eax, eax
js 0x140004ecf
mov rdx, qword [rbp - 0x28]
test rdx, rdx
jne 0x14000479f
mov eax, edi
jmp 0x1400047ac
mov rax, rsi
inc rax
cmp word [rdx + rax*2], 0
jne 0x1400047a2
mov r8d, eax
lea rcx, [rsp + 0x50]
call fcn.1400030e0
nop
lea rcx, [rbp - 0x30]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rbp - 0x58]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
test ebx, ebx
jne 0x140004cc0
mov rbx, qword [rsp + 0x50]
movsxd rdi, dword [rbx - 0x10]
test edi, edi
js 0x140004ec4
mov ecx, 1
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, edi
or eax, ecx
jge 0x140004809
mov edx, edi
lea rcx, [rsp + 0x50]
call fcn.140003370
mov rbx, qword [rsp + 0x50]
lea eax, [rdi + 1]
movsxd rdx, eax
mov rcx, rbx
call fcn.140018fdc
cmp edi, dword [rbx - 0xc]
jg 0x140004eb9
mov dword [rbx - 0x10], edi
mov rax, rdi
xor edi, edi
mov word [rbx + rax*2], di
mov rdx, qword [r14]
test rdx, rdx
je 0x140004bfb
cmp dword [rbx - 0x10], edi
jl 0x140004bfb
mov rcx, rbx
call fcn.140012d80
test rax, rax
je 0x140004bfb
sub rax, rbx
sar rax, 1
cmp eax, 0xffffffff
je 0x140004bfb
xor r15d, r15d
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x38], r15
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x60], r15
mov rdi, qword [rsp + 0x58]
lea ecx, [r15 + 0x18]
call fcn.1400118c0
mov rbx, rax
mov qword [rbp + 0x58], rax
test rax, rax
je 0x1400048b7
mov qword [rax + 8], r15
mov eax, 1
mov dword [rbx + 0x10], eax
lea rcx, str.__PATH
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
je 0x140004e77
jmp 0x1400048ba
mov rbx, r15
mov qword [rbp + 0x60], rbx
test rbx, rbx
je 0x140004eae
mov rax, qword [rdi]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
lea r9, [rbp + 0x18]
xor r8d, r8d
mov rdx, qword [rbx]
mov rcx, rdi
call qword [rax + 0x20]
mov edi, eax
mov eax, esi
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x140004922
mov rcx, qword [rbx]
test rcx, rcx
je 0x140004903
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r15
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140004915
call fcn.1400115f0
mov qword [rbx + 8], r15
mov edx, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rcx, rbx
call fcn.1400115f0
test edi, edi
jne 0x140004c60
lea rcx, [rbp - 0x58]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
mov edi, 0x11
mov word [rbp - 0x58], di
mov word [rbp - 0x50], r15w
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx]
mov dword [rsp + 0x20], r15d
lea r9, [rbp - 0x58]
xor r8d, r8d
lea rdx, str.BlockId
call qword [rax + 0x28]
mov ebx, eax
lea rcx, [rbp - 0x58]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
test ebx, ebx
jne 0x140004c60
mov rcx, qword [rsp + 0x70]
mov r10, qword [rcx]
mov qword [rsp + 0x38], r15
lea rax, [rsp + 0x68]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r15
xor r9d, r9d
mov r8, r13
mov rdx, qword [rbp + 0x20]
call qword [r10 + 0xc0]
mov ebx, eax
lea rcx, [rbp - 0x58]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
test ebx, ebx
jne 0x140004c60
lea rcx, [rbp - 0x18]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
lea r9, [rbp - 0x18]
xor r8d, r8d
lea rdx, str.BlockContent
call qword [rax + 0x20]
test eax, eax
jne 0x140004c60
lea rcx, [rbp - 0x58]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
mov word [rbp - 0x58], di
mov edi, 1
mov word [rbp - 0x50], di
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx]
mov dword [rsp + 0x20], r15d
lea r9, [rbp - 0x58]
xor r8d, r8d
lea rdx, str.BlockId
call qword [rax + 0x28]
mov ebx, eax
lea rcx, [rbp - 0x58]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
test ebx, ebx
jne 0x140004c60
mov rcx, qword [rsp + 0x70]
mov r10, qword [rcx]
mov qword [rsp + 0x38], r15
lea rax, [rsp + 0x60]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r15
xor r9d, r9d
mov r8, r13
mov rdx, qword [rbp + 0x20]
call qword [r10 + 0xc0]
mov ebx, eax
lea rcx, [rbp - 0x58]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
test ebx, ebx
jne 0x140004c60
lea rcx, [rbp]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
mov rcx, qword [rsp + 0x60]
mov rax, qword [rcx]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
lea r9, [rbp]
xor r8d, r8d
lea rdx, str.BlockContent
call qword [rax + 0x20]
test eax, eax
jne 0x140004c60
lea rdx, [rbp - 0x40]
mov rcx, qword [rbp - 0x10]
call qword [sym.imp.OLEAUT32.dll_SafeArrayUnaccessData]
lea rdx, [rbp - 0x38]
mov rcx, qword [rbp + 8]
call qword [sym.imp.OLEAUT32.dll_SafeArrayUnaccessData]
mov rcx, qword [rbp - 0x40]
test rcx, rcx
je 0x140004ba8
mov rax, qword [rbp - 0x38]
test rax, rax
je 0x140004ba8
movups xmm0, xmmword [rcx]
movups xmmword [r12], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [r12 + 0x10], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [r12 + 0x20], xmm0
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [r12 + 0x30], xmm1
movups xmm0, xmmword [rcx + 0x40]
movups xmmword [r12 + 0x40], xmm0
movups xmm1, xmmword [rcx + 0x50]
movups xmmword [r12 + 0x50], xmm1
movups xmm0, xmmword [rcx + 0x60]
movups xmmword [r12 + 0x60], xmm0
movups xmm1, xmmword [rcx + 0x70]
movups xmmword [r12 + 0x70], xmm1
movups xmm0, xmmword [rax]
movups xmmword [r12 + 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r12 + 0x90], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [r12 + 0xa0], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [r12 + 0xb0], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [r12 + 0xc0], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [r12 + 0xd0], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [r12 + 0xe0], xmm0
movups xmm1, xmmword [rax + 0x70]
movups xmmword [r12 + 0xf0], xmm1
mov rcx, qword [rbp - 0x10]
call qword [sym.imp.OLEAUT32.dll_SafeArrayGetElement]
mov rcx, qword [rbp + 8]
call qword [sym.imp.OLEAUT32.dll_SafeArrayGetElement]
lea rcx, [rbp - 0x18]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rbp]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
mov r15d, edi
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x140004be4
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x140004bf4
mov rax, qword [rcx]
call qword [rax + 0x10]
xor edi, edi
mov rbx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x140004c11
mov qword [rsp + 0x58], rdi
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
lea rdx, [rbx - 0x18]
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140004c2b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x140004c3b
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rax, qword [rbp - 0x78]
test rax, rax
jne 0x1400046a3
test r15d, r15d
je 0x140004cef
mov rcx, r12
call fcn.140003cf0
mov edi, eax
jmp 0x140004cf5
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x140004c71
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x140004c82
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140004ca1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x140004cb1
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rbx, qword [rbp + 0xb8]
mov edi, dword [rbp + 0xc0]
jmp 0x140004cff
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140004cdf
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x140004cef
mov rax, qword [rcx]
call qword [rax + 0x10]
mov edi, dword [rbp + 0xc0]
mov rbx, qword [rbp + 0xb8]
xor r15d, r15d
lea rcx, [rbp - 0x58]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rbp - 0x18]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rbp]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rbp + 0x18]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x140004d3c
mov qword [rsp + 0x70], r15
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp - 0x60]
test rcx, rcx
je 0x140004d4f
mov qword [rbp - 0x60], r15
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x140004d62
mov qword [rbp - 0x78], r15
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp - 0x68]
test rcx, rcx
je 0x140004d75
mov qword [rbp - 0x68], r15
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x140004d88
mov qword [rbp - 0x70], r15
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x140004d9d
mov qword [rsp + 0x78], r15
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, r13
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
call qword [sym.imp.ole32.dll_CoUninitialize]
nop
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x140004dbd
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x140004dce
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x140004dde
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rbp - 0x68]
test rcx, rcx
je 0x140004dee
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x140004dff
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rbp - 0x60]
test rcx, rcx
je 0x140004e0f
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rdx, qword [rbx]
sub rdx, 0x18
lock xadd dword [rdx + 0x10], esi
sub esi, 1
jg 0x140004e29
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov eax, edi
mov rbx, qword [rsp + 0x1b0]
add rsp, 0x170
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x80004005
call fcn.1400014c0
nop
mov ecx, 0x8007000e
call fcn.140012290
nop
mov ecx, 0x8007000e
call fcn.140012290
nop
mov ecx, 0x8007000e
call fcn.140012290
nop
mov ecx, 0x8007000e
call fcn.140012290
nop
mov ecx, 0x8007000e
call fcn.140012290
int3
mov ecx, 0x8007000e
call fcn.140012290
nop
mov ecx, 0x8007000e
call fcn.140012290
nop
mov ecx, 0x8007000e
call fcn.140012290
nop
mov ecx, 0x8007000e
call fcn.140012290
nop
mov ecx, 0x80070057
call fcn.1400014c0
int3
mov ecx, 0x80070057
call fcn.1400014c0
nop
mov ecx, eax
call fcn.1400014c0
int3