Function at 0x4597e0
Capabilities:
Schedule task via itaskservice

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5832f9
mov eax, dword fs:[0]
push eax
sub esp, 0xbc
push esi
push edi
mov eax, dword [0x5ce104]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0
mov dword [ebp - 0x58], 0
call dword [sym.imp.ole32.dll_CoInitialize]
test eax, eax
jns 0x459832
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 8
push 0
push 0
push 0
push 3
push 6
push 0
push 0
push 0xffffffffffffffff
push 0
call dword [sym.imp.ole32.dll_CoInitializeSecurity]
mov dword [ebp - 0x14], 0
lea eax, [ebp - 0x14]
mov dword [ebp - 4], 0
push eax
push 0x5aa1f4
push 1
push 0
push 0x5977a0
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x4599b2
mov esi, dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0x88]
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x88], xmm0
call esi
movups xmm0, xmmword [ebp - 0x88]
lea eax, [ebp - 0x78]
push eax
movups xmmword [ebp - 0xa8], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x78], xmm0
call esi
movups xmm0, xmmword [ebp - 0x78]
lea eax, [ebp - 0x68]
push eax
movups xmmword [ebp - 0xb8], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x68], xmm0
call esi
movups xmm0, xmmword [ebp - 0x68]
lea eax, [ebp - 0x98]
push eax
movups xmmword [ebp - 0xc8], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x98], xmm0
call esi
mov byte [ebp - 4], 4
sub esp, 0x10
movups xmm0, xmmword [ebp - 0xa8]
mov eax, dword [ebp - 0x14]
mov ecx, esp
sub esp, 0x10
mov edx, dword [eax]
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0xb8]
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0xc8]
movups xmmword [ecx], xmm0
mov ecx, esp
movups xmm0, xmmword [ebp - 0x98]
push eax
movups xmmword [ecx], xmm0
call dword [edx + 0x28]
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov esi, eax
lea eax, [ebp - 0x98]
push eax
call edi
lea eax, [ebp - 0x68]
push eax
call edi
lea eax, [ebp - 0x78]
push eax
call edi
lea eax, [ebp - 0x88]
push eax
call edi
test esi, esi
js 0x4599b2
mov dword [ebp - 0x24], 0
mov byte [ebp - 4], 5
mov edi, dword [ebp - 0x14]
push 0x5a915c
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
jne 0x459981
push 0x8007000e
call fcn.004071e0
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 6
mov eax, dword [edi]
push ecx
push esi
push edi
call dword [eax + 0x1c]
push esi
mov edi, eax
mov byte [ebp - 4], 5
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
test edi, edi
jns 0x4599cf
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x4599b2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x45a4b3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x45a4b3
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x24]
mov edi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [ebp - 0x30], ecx
test eax, eax
jne 0x4599e9
xor esi, esi
mov dword [ebp - 0x28], esi
jmp 0x459a02
push eax
call edi
mov esi, eax
mov dword [ebp - 0x28], esi
test esi, esi
jne 0x4599ff
push 0x8007000e
call fcn.004071e0
mov ecx, dword [ebp - 0x30]
push 0
mov byte [ebp - 4], 7
mov eax, dword [ecx]
push esi
push ecx
call dword [eax + 0x3c]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [ebp - 0x18], 0
mov byte [ebp - 4], 8
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 0x14]
push edx
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x24]
test eax, eax
jns 0x459a4e
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x4599a1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x4599a1
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x459a62
mov dword [ebp - 0x14], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x20], 0
mov byte [ebp - 4], 9
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 0x18]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x1c]
test eax, eax
jns 0x459a91
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x459a34
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x459a34
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x10]
push eax
call fcn.0045b950
mov byte [ebp - 4], 0xa
mov eax, dword [eax]
test eax, eax
jne 0x459b06
xor esi, esi
mov dword [ebp - 0x30], esi
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x28]
push esi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x28]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov byte [ebp - 4], 9
or eax, 0xffffffff
mov ecx, dword [ebp - 0x10]
add ecx, 0xfffffff0
lock xadd dword [ecx + 0xc], eax
dec eax
test eax, eax
jg 0x459b20
mov edx, dword [ecx]
push ecx
mov eax, dword [edx]
mov esi, dword [eax + 4]
cmp eax, vtable.ATL::CAtlStringMgr.0
jne 0x459b1c
mov edx, dword [edx + 4]
mov eax, dword [edx]
mov esi, dword [eax + 4]
cmp eax, vtable.ATL::CWin32Heap.0
jne 0x459b1c
push 0
push dword [edx + 4]
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x459b20
push eax
call edi
mov esi, eax
mov dword [ebp - 0x30], esi
test esi, esi
jne 0x459aaf
push 0x8007000e
call fcn.004071e0
mov ecx, edx
call esi
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x30], ecx
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x459b37
xor esi, esi
mov dword [ebp - 0x10], esi
jmp 0x459b50
push eax
call edi
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
jne 0x459b4d
push 0x8007000e
call fcn.004071e0
mov ecx, dword [ebp - 0x30]
mov byte [ebp - 4], 0xc
mov eax, dword [ecx]
push esi
push ecx
call dword [eax + 0x20]
push esi
mov byte [ebp - 4], 9
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov ecx, dword [ebp - 0x20]
test ecx, ecx
je 0x459b7a
mov dword [ebp - 0x20], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x1c], 0
mov byte [ebp - 4], 0xd
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x24]
test eax, eax
jns 0x459bb0
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x459a7e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x459a7e
mov dword [ebp - 0x3c], 0
mov byte [ebp - 4], 0xe
lea edx, [ebp - 0x3c]
mov eax, dword [ebp - 0x1c]
push edx
push 9
push eax
mov ecx, dword [eax]
call dword [ecx + 0x28]
mov edx, dword [ebp - 0x1c]
mov esi, eax
test edx, edx
je 0x459be3
mov dword [ebp - 0x1c], 0
mov ecx, dword [edx]
push edx
call dword [ecx + 8]
mov edx, dword [ebp - 0x1c]
test esi, esi
jns 0x459c12
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x459bfb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edx, dword [ebp - 0x1c]
mov byte [ebp - 4], 9
test edx, edx
je 0x459a7e
mov eax, dword [edx]
push edx
call dword [eax + 8]
jmp 0x459a7e
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
mov dword [ebp - 0x2c], ecx
test eax, eax
je 0x459c3f
lea ecx, [ebp - 0x2c]
push ecx
push 0x5aa204
push eax
mov eax, dword [eax]
call dword [eax]
mov ecx, dword [ebp - 0x2c]
xor edx, edx
test eax, eax
mov eax, dword [ebp - 0x3c]
cmovs ecx, edx
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 4], 0xf
test ecx, ecx
jne 0x459c4d
mov byte [ebp - 4], 0xd
jmp 0x459bee
mov eax, dword [ecx]
push 0xffffffffffffffff
push ecx
call dword [eax + 0x4c]
mov eax, dword [ebp - 0x2c]
push str.Trigger1
mov dword [ebp - 0x10], eax
call edi
mov esi, eax
mov dword [ebp - 0x30], esi
test esi, esi
jne 0x459c75
push 0x8007000e
call fcn.004071e0
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x10]
push esi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x24]
push esi
mov byte [ebp - 4], 0xf
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x28]
push eax
call fcn.0045b9a0
mov byte [ebp - 4], 0x11
mov eax, dword [eax]
test eax, eax
jne 0x459d03
xor esi, esi
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x30]
push esi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x5c]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov byte [ebp - 4], 0xf
or eax, 0xffffffff
mov ecx, dword [ebp - 0x28]
add ecx, 0xfffffff0
lock xadd dword [ecx + 0xc], eax
dec eax
test eax, eax
jg 0x459d1d
mov edx, dword [ecx]
push ecx
mov eax, dword [edx]
mov esi, dword [eax + 4]
cmp eax, vtable.ATL::CAtlStringMgr.0
jne 0x459d19
mov edx, dword [edx + 4]
mov eax, dword [edx]
mov esi, dword [eax + 4]
cmp eax, vtable.ATL::CWin32Heap.0
jne 0x459d19
push 0
push dword [edx + 4]
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x459d1d
push eax
call edi
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
jne 0x459cac
push 0x8007000e
call fcn.004071e0
mov ecx, edx
call esi
call fcn.00406e20
mov ecx, eax
test ecx, ecx
jne 0x459d32
push 0x80004005
call fcn.004071e0
mov eax, dword [ecx]
mov edx, dword [eax + 0xc]
cmp eax, vtable.ATL::CAtlStringMgr.0
jne 0x459d47
lock inc dword [ecx + 0x14]
lea eax, [ecx + 8]
jmp 0x459d49
call edx
add eax, 0x10
mov dword [ebp - 0x28], eax
mov byte [ebp - 4], 0x13
mov ecx, 0x3c
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x10]
cdq
idiv ecx
push edx
push eax
lea eax, [ebp - 0x28]
push str.PT_dM_dS
push eax
call fcn.00420620
mov edi, dword [ebp - 0x28]
add esp, 0x10
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x30], ecx
test edi, edi
jne 0x459d88
xor esi, esi
mov dword [ebp - 0x10], esi
jmp 0x459da5
push edi
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
jne 0x459da2
push 0x8007000e
call fcn.004071e0
mov ecx, dword [ebp - 0x30]
mov byte [ebp - 4], 0x14
mov eax, dword [ecx]
push esi
push ecx
call dword [eax + 0x54]
push esi
mov dword [ebp - 0x10], eax
mov byte [ebp - 4], 0x13
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov ecx, dword [ebp - 0x2c]
test ecx, ecx
je 0x459dd2
mov dword [ebp - 0x2c], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
cmp dword [ebp - 0x10], 0
jge 0x459e0b
lea ecx, [ebp - 0x28]
call fcn.00404e00
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x459df1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x459b96
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x459b96
mov dword [ebp - 0x34], 0
mov byte [ebp - 4], 0x15
lea edx, [ebp - 0x34]
mov eax, dword [ebp - 0x18]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x44]
test eax, eax
jns 0x459e3a
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x459dd8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x459dd8
mov dword [ebp - 0x48], 0
mov byte [ebp - 4], 0x16
lea edx, [ebp - 0x48]
mov eax, dword [ebp - 0x34]
push edx
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x30]
mov edx, dword [ebp - 0x34]
mov esi, eax
test edx, edx
je 0x459e6d
mov dword [ebp - 0x34], 0
mov ecx, dword [edx]
push edx
call dword [ecx + 8]
mov edx, dword [ebp - 0x34]
test esi, esi
jns 0x459e9c
mov byte [ebp - 4], 0x15
mov eax, dword [ebp - 0x48]
test eax, eax
je 0x459e85
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x13
test edx, edx
je 0x459dd8
mov eax, dword [edx]
push edx
call dword [eax + 8]
jmp 0x459dd8
mov eax, dword [ebp - 0x48]
xor ecx, ecx
mov dword [ebp - 0x38], ecx
test eax, eax
je 0x459ec9
lea ecx, [ebp - 0x38]
push ecx
push str.MbLk
push eax
mov eax, dword [eax]
call dword [eax]
mov ecx, dword [ebp - 0x38]
xor edx, edx
test eax, eax
mov eax, dword [ebp - 0x48]
cmovs ecx, edx
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x38], ecx
mov byte [ebp - 4], 0x17
test ecx, ecx
jne 0x459ed7
mov byte [ebp - 4], 0x15
jmp 0x459e78
push 0x5a3e28
lea ecx, [ebp - 0x4c]
call fcn.00404e80
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x4c]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
push dword [eax - 0xc]
push eax
call fcn.00405a70
push 1
push 0x5a3e28
lea ecx, [ebp - 0x4c]
call fcn.00405a70
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x30], ecx
test eax, eax
jne 0x459f1c
xor esi, esi
mov dword [ebp - 0x10], esi
jmp 0x459f39
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
jne 0x459f36
push 0x8007000e
call fcn.004071e0
mov ecx, dword [ebp - 0x30]
mov byte [ebp - 4], 0x19
mov eax, dword [ecx]
push esi
push ecx
call dword [eax + 0x2c]
push esi
mov byte [ebp - 4], 0x18
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x30], ecx
mov eax, dword [eax + 4]
test eax, eax
jne 0x459f66
xor esi, esi
mov dword [ebp - 0x10], esi
jmp 0x459f83
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
jne 0x459f80
push 0x8007000e
call fcn.004071e0
mov ecx, dword [ebp - 0x30]
mov byte [ebp - 4], 0x1a
mov eax, dword [ecx]
push esi
push ecx
call dword [eax + 0x3c]
push esi
mov byte [ebp - 4], 0x18
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x10], ecx
mov eax, dword [eax + 8]
test eax, eax
jne 0x459fb0
xor esi, esi
mov dword [ebp + 0xc], esi
jmp 0x459fcd
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp + 0xc], esi
test esi, esi
jne 0x459fca
push 0x8007000e
call fcn.004071e0
mov ecx, dword [ebp - 0x10]
mov byte [ebp - 4], 0x1b
mov eax, dword [ecx]
push esi
push ecx
call dword [eax + 0x34]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [ebp - 0x44], 0
mov byte [ebp - 4], 0x1c
lea edx, [ebp - 0x44]
mov eax, dword [ebp - 0x18]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x3c]
test eax, eax
jns 0x45a03f
mov byte [ebp - 4], 0x18
mov eax, dword [ebp - 0x44]
test eax, eax
je 0x45a00c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x4c]
call fcn.00404e00
mov byte [ebp - 4], 0x16
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x45a025
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x15
mov eax, dword [ebp - 0x48]
test eax, eax
je 0x459e27
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x459e27
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x30]
push eax
call fcn.0045b950
mov byte [ebp - 4], 0x1d
mov eax, dword [eax]
test eax, eax
jne 0x45a0b4
xor esi, esi
mov dword [ebp + 0xc], esi
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x10]
push esi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x20]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov byte [ebp - 4], 0x1c
or eax, 0xffffffff
mov ecx, dword [ebp - 0x30]
add ecx, 0xfffffff0
lock xadd dword [ecx + 0xc], eax
dec eax
test eax, eax
jg 0x45a0d2
mov edx, dword [ecx]
push ecx
mov eax, dword [edx]
mov esi, dword [eax + 4]
cmp eax, vtable.ATL::CAtlStringMgr.0
jne 0x45a0ce
mov edx, dword [edx + 4]
mov eax, dword [edx]
mov esi, dword [eax + 4]
cmp eax, vtable.ATL::CWin32Heap.0
jne 0x45a0ce
push 0
push dword [edx + 4]
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x45a0d2
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp + 0xc], esi
test esi, esi
jne 0x45a05d
push 0x8007000e
call fcn.004071e0
mov ecx, edx
call esi
mov eax, dword [ebp - 0x44]
push str.BUILTINAdministrators
mov dword [ebp + 0xc], eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
jne 0x45a0f6
push 0x8007000e
call fcn.004071e0
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp + 0xc]
push esi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x40]
push esi
mov byte [ebp - 4], 0x1c
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 0x44]
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0x48]
mov ecx, dword [ebp - 0x38]
test ecx, ecx
je 0x45a12e
mov dword [ebp - 0x38], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x40], 0
mov byte [ebp - 4], 0x20
lea edx, [ebp - 0x40]
mov eax, dword [ebp - 0x18]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x2c]
test eax, eax
jns 0x45a164
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x459ffb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x459ffb
mov eax, dword [ebp - 0x40]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov eax, dword [ebp - 0x40]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x48]
mov eax, dword [ebp - 0x40]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x50]
mov eax, dword [ebp - 0x40]
push str.PT0S
mov dword [ebp + 0xc], eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
jne 0x45a1a9
push 0x8007000e
call fcn.004071e0
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp + 0xc]
push esi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x70]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [ebp - 0x50], 0
mov byte [ebp - 4], 0x22
lea edx, [ebp - 0x50]
mov eax, dword [ebp - 0x40]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x9c]
test eax, eax
js 0x45a1e8
mov eax, dword [ebp - 0x50]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x30]
mov ecx, dword [ebp - 0x40]
test ecx, ecx
je 0x45a1fc
mov dword [ebp - 0x40], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x54], 0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0x68]
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x68], xmm0
call esi
movups xmm0, xmmword [ebp - 0x68]
lea eax, [ebp - 0x78]
push eax
movups xmmword [ebp - 0xc8], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x78], xmm0
call esi
movups xmm0, xmmword [ebp - 0x78]
lea eax, [ebp - 0x88]
push eax
movups xmmword [ebp - 0xb8], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x88], xmm0
call esi
mov eax, dword [ebp + 8]
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x10], edx
movups xmm0, xmmword [ebp - 0x88]
movups xmmword [ebp - 0xa8], xmm0
test eax, eax
jne 0x45a272
xor esi, esi
mov dword [ebp + 0xc], esi
jmp 0x45a28f
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp + 0xc], esi
test esi, esi
jne 0x45a28c
push 0x8007000e
call fcn.004071e0
mov edx, dword [ebp - 0x10]
mov byte [ebp - 4], 0x27
lea eax, [ebp - 0x54]
movups xmm0, xmmword [ebp - 0xc8]
push eax
mov ecx, dword [edx]
sub esp, 0x10
mov eax, esp
push 3
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0xb8]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [ebp - 0xa8]
push 6
push dword [ebp - 0x18]
movups xmmword [eax], xmm0
push esi
push edx
call dword [ecx + 0x44]
push esi
mov dword [ebp + 0xc], eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x88]
push eax
call esi
lea eax, [ebp - 0x78]
push eax
call esi
lea eax, [ebp - 0x68]
push eax
call esi
mov byte [ebp - 4], 0x22
cmp dword [ebp + 0xc], 0
mov eax, dword [ebp - 0x54]
jge 0x45a328
test eax, eax
je 0x45a30e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x20
mov eax, dword [ebp - 0x50]
test eax, eax
je 0x45a14a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x45a14a
mov dword [ebp - 0x58], 1
test eax, eax
je 0x45a339
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x20
mov eax, dword [ebp - 0x50]
test eax, eax
je 0x45a34a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x45a35b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x18
mov eax, dword [ebp - 0x44]
test eax, eax
je 0x45a36c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x17
or esi, 0xffffffff
mov ecx, dword [ebp - 0x4c]
mov eax, esi
add ecx, 0xfffffff0
lock xadd dword [ecx + 0xc], eax
dec eax
test eax, eax
jg 0x45a3c8
mov edx, dword [ecx]
push ecx
mov eax, dword [edx]
mov edi, dword [eax + 4]
mov dword [ebp + 0xc], edi
mov edi, dword [ebp - 0x28]
cmp eax, vtable.ATL::CAtlStringMgr.0
jne 0x45a3c3
mov edx, dword [edx + 4]
mov eax, dword [edx]
mov edi, dword [eax + 4]
mov dword [ebp + 0xc], edi
mov edi, dword [ebp - 0x28]
cmp eax, vtable.ATL::CWin32Heap.0
jne 0x45a3bc
push 0
push dword [edx + 4]
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x45a3c8
mov ecx, edx
call dword [ebp + 0xc]
jmp 0x45a3c8
mov ecx, edx
call dword [ebp + 0xc]
mov byte [ebp - 4], 0x16
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x45a3d9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x15
mov eax, dword [ebp - 0x48]
test eax, eax
je 0x45a3ea
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x45a3fb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf
add edi, 0xfffffff0
lock xadd dword [edi + 0xc], esi
dec esi
test esi, esi
jg 0x45a439
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
mov edx, dword [eax + 4]
cmp eax, vtable.ATL::CAtlStringMgr.0
jne 0x45a437
mov ecx, dword [ecx + 4]
mov eax, dword [ecx]
mov edx, dword [eax + 4]
cmp eax, vtable.ATL::CWin32Heap.0
jne 0x45a437
push 0
push dword [ecx + 4]
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x45a439
call edx
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x45a44a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45a45b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x45a46c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x45a47d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x45a48e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x45a49f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x45a4b3
mov edx, dword [ecx]
push ecx
call dword [edx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 8