Function at 0x406900
Capabilities:
Get session user name
Schedule task via itaskservice

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x447409
mov eax, dword fs:[0]
push eax
sub esp, 0xc0
push esi
push edi
mov eax, dword [0x45a1cc]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x58], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_Begin
call fcn.0040ef00
add esp, 8
mov dword [ebp - 0x5c], 0
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
test eax, eax
jns 0x40697f
push eax
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
call eax
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_CoInitialize_hr:0x_08x
call fcn.0040ef00
add esp, 0xc
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 - 0x10], 0
lea eax, [ebp - 0x10]
mov dword [ebp - 4], 0
push eax
push 0x44a014
push 1
push 0
push 0x44c298
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x4069dc
push eax
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
call eax
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_ITaskService_CoCreateInstance_hr:0x_08x
call fcn.0040ef00
add esp, 0xc
jmp 0x4075ac
mov esi, dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0x8c]
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x8c], xmm0
call esi
movups xmm0, xmmword [ebp - 0x8c]
lea eax, [ebp - 0x7c]
push eax
movups xmmword [ebp - 0xac], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x7c], xmm0
call esi
movups xmm0, xmmword [ebp - 0x7c]
lea eax, [ebp - 0x6c]
push eax
movups xmmword [ebp - 0xbc], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x6c], xmm0
call esi
movups xmm0, xmmword [ebp - 0x6c]
lea eax, [ebp - 0x9c]
push eax
movups xmmword [ebp - 0xcc], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x9c], xmm0
call esi
movups xmm0, xmmword [ebp - 0xac]
mov eax, dword [ebp - 0x10]
sub esp, 0x10
mov ecx, esp
mov byte [ebp - 4], 4
sub esp, 0x10
mov edx, dword [eax]
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0xbc]
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0xcc]
movups xmmword [ecx], xmm0
mov ecx, esp
movups xmm0, xmmword [ebp - 0x9c]
push eax
movups xmmword [ecx], xmm0
call dword [edx + 0x28]
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov esi, eax
lea eax, [ebp - 0x9c]
push eax
call edi
lea eax, [ebp - 0x6c]
push eax
call edi
lea eax, [ebp - 0x7c]
push eax
call edi
lea eax, [ebp - 0x8c]
mov byte [ebp - 4], 0
push eax
call edi
test esi, esi
jns 0x406ad8
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push esi
call eax
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_ITaskService_Connect_hr:0x_08x
call fcn.0040ef00
add esp, 0xc
jmp 0x4075ac
mov dword [ebp - 0x24], 0
mov eax, dword [ebp - 0x10]
mov edi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
push 0x449490
mov byte [ebp - 4], 5
mov dword [ebp - 0x34], eax
call edi
mov esi, eax
mov dword [ebp - 0x18], esi
test esi, esi
je 0x4075f3
mov ecx, dword [ebp - 0x34]
lea edx, [ebp - 0x24]
push edx
push esi
push ecx
mov eax, dword [ecx]
mov byte [ebp - 4], 6
call dword [eax + 0x1c]
push esi
mov dword [ebp - 0x34], eax
mov byte [ebp - 4], 5
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 0x34]
test eax, eax
jns 0x406b45
push eax
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
call eax
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_ITaskService_GetFolder_hr:0x_08x
call fcn.0040ef00
add esp, 0xc
jmp 0x40759b
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x28], ecx
test eax, eax
jne 0x406b59
xor esi, esi
mov dword [ebp - 0x34], esi
jmp 0x406b6c
push eax
call edi
mov esi, eax
mov dword [ebp - 0x34], esi
test esi, esi
je 0x4075f3
mov ecx, dword [ebp - 0x28]
mov eax, dword [ecx]
push 0
push esi
push ecx
mov byte [ebp - 4], 7
call dword [eax + 0x3c]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [ebp - 0x14], 0
mov eax, dword [ebp - 0x10]
lea edx, [ebp - 0x14]
push edx
push 0
push eax
mov ecx, dword [eax]
mov byte [ebp - 4], 8
call dword [ecx + 0x24]
test eax, eax
jns 0x406bb9
push eax
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
call eax
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_ITaskService_NewTask_hr:0x_08x
call fcn.0040ef00
add esp, 0xc
jmp 0x40758a
mov ecx, dword [ebp - 0x10]
test ecx, ecx
je 0x406bcd
mov dword [ebp - 0x10], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x14]
lea edx, [ebp - 0x20]
push edx
push eax
mov byte [ebp - 4], 9
mov ecx, dword [eax]
call dword [ecx + 0x1c]
test eax, eax
jns 0x406c04
push eax
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
call eax
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_ITaskDefinition_get_RegistrationInfo_hr:0x_08x
call fcn.0040ef00
add esp, 0xc
jmp 0x407579
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x58]
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
call fcn.00407b30
mov eax, dword [eax]
mov byte [ebp - 4], 0xa
test eax, eax
jne 0x406c70
xor esi, esi
mov dword [ebp - 0x34], esi
mov ecx, dword [ebp - 0x28]
push esi
push ecx
mov byte [ebp - 4], 0xb
mov eax, dword [ecx]
call dword [eax + 0x28]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov edx, dword [ebp - 0x30]
or eax, 0xffffffff
mov byte [ebp - 4], 9
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x406c59
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x34], ecx
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x406c82
xor esi, esi
mov dword [ebp - 0x30], esi
jmp 0x406c95
push eax
call edi
mov esi, eax
mov dword [ebp - 0x34], esi
test esi, esi
je 0x4075f3
jmp 0x406c25
push eax
call edi
mov esi, eax
mov dword [ebp - 0x30], esi
test esi, esi
je 0x4075f3
mov ecx, dword [ebp - 0x34]
mov eax, dword [ecx]
push esi
push ecx
mov byte [ebp - 4], 0xc
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 0x406cbf
mov dword [ebp - 0x20], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x14]
lea edx, [ebp - 0x2c]
push edx
push eax
mov byte [ebp - 4], 0xd
mov ecx, dword [eax]
call dword [ecx + 0x24]
test eax, eax
jns 0x406cf6
push eax
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
call eax
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_ITaskDefinition_get_Triggers_hr:0x_08x
call fcn.0040ef00
add esp, 0xc
jmp 0x407568
mov dword [ebp - 0x3c], 0
mov eax, dword [ebp - 0x2c]
lea edx, [ebp - 0x3c]
push edx
push 9
push eax
mov ecx, dword [eax]
mov byte [ebp - 4], 0xe
call dword [ecx + 0x28]
mov ecx, dword [ebp - 0x2c]
mov esi, eax
test ecx, ecx
je 0x406d26
mov dword [ebp - 0x2c], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
test esi, esi
jns 0x406d45
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push esi
call eax
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_spTriggerCollection_Create_hr:0x_08x
call fcn.0040ef00
add esp, 0xc
jmp 0x407557
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
test eax, eax
je 0x406d6c
mov ecx, dword [eax]
lea edx, [ebp - 0x1c]
push edx
push 0x44959c
push eax
call dword [ecx]
mov ecx, dword [ebp - 0x1c]
xor edx, edx
test eax, eax
cmovs ecx, edx
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 4], 0xf
test ecx, ecx
jne 0x406d8f
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push esi
call eax
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_spLogonTrigger_Create_hr:0x_08x
call fcn.0040ef00
add esp, 0xc
jmp 0x407546
mov eax, dword [ecx]
push 0xffffffffffffffff
push ecx
call dword [eax + 0x4c]
mov eax, dword [ebp - 0x1c]
push str.Trigger1
mov dword [ebp - 0x30], eax
call edi
mov esi, eax
mov dword [ebp - 0x18], esi
test esi, esi
je 0x4075f3
mov ecx, dword [ebp - 0x30]
push esi
push ecx
mov byte [ebp - 4], 0x10
mov eax, dword [ecx]
call dword [eax + 0x24]
push esi
mov byte [ebp - 4], 0xf
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp word [0x45b6d8], 0
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x18], eax
jne 0x406df1
lea eax, [ebp - 0x30]
mov dword [ebp - 0x30], 0x100
push eax
push 0x45b6d8
push 2
call sub.Secur32.dll_GetUserNameExW
call fcn.00403870
mov ecx, eax
test ecx, ecx
je 0x4075fd
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x28], eax
push 0x45b6d8
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x11
call fcn.00404120
test al, al
jne 0x406e4d
mov ecx, 0x45b6d8
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x406e30
sub ecx, edx
sar ecx, 1
push ecx
push 0x45b6d8
lea ecx, [ebp - 0x28]
call fcn.00403300
mov edi, dword [ebp - 0x28]
mov byte [ebp - 4], 0x12
test edi, edi
jne 0x406e9f
xor esi, esi
mov dword [ebp - 0x34], esi
mov ecx, dword [ebp - 0x18]
push esi
push ecx
mov byte [ebp - 4], 0x13
mov eax, dword [ecx]
call dword [eax + 0x5c]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov byte [ebp - 4], 0xf
add edi, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edi + 0xc], eax
dec eax
test eax, eax
jg 0x406e8e
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.00403870
mov ecx, eax
test ecx, ecx
je 0x407607
jmp 0x406eb5
push edi
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x34], esi
test esi, esi
je 0x407611
jmp 0x406e5d
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x34], eax
mov eax, dword [ebp + 0xc]
mov ecx, 0x3c
mov byte [ebp - 4], 0x14
mov eax, dword [eax + 0x10]
cdq
idiv ecx
push edx
push eax
lea eax, [ebp - 0x34]
push str.PT_dM_dS
push eax
call fcn.00407a70
mov esi, dword [ebp - 0x34]
add esp, 0x10
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x30], ecx
test esi, esi
jne 0x406efb
xor edi, edi
mov dword [ebp - 0x18], edi
jmp 0x406f12
push esi
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
mov dword [ebp - 0x18], edi
test edi, edi
je 0x40761b
mov ecx, dword [ebp - 0x30]
mov eax, dword [ecx]
push edi
push ecx
mov byte [ebp - 4], 0x15
call dword [eax + 0x54]
push edi
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x14
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov ecx, dword [ebp - 0x1c]
test ecx, ecx
je 0x406f3f
mov dword [ebp - 0x1c], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov eax, dword [ebp - 0x18]
test eax, eax
jns 0x406f73
push eax
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
call eax
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_spLogonTrigger_put_Delay_hr:0x_08x
call fcn.0040ef00
add esp, 0xc
mov byte [ebp - 4], 0xf
add esi, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jmp 0x40753c
mov dword [ebp - 0x44], 0
mov eax, dword [ebp - 0x14]
lea edx, [ebp - 0x44]
push edx
push eax
mov byte [ebp - 4], 0x16
mov ecx, dword [eax]
call dword [ecx + 0x44]
test eax, eax
jns 0x406fcd
push eax
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
call eax
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_spTaskDefinition_get_Actions_hr:0x_08x
call fcn.0040ef00
add esp, 0xc
mov eax, dword [ebp - 0x44]
mov byte [ebp - 4], 0x14
test eax, eax
je 0x406fb6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf
add esi, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jmp 0x40753c
mov dword [ebp - 0x4c], 0
mov eax, dword [ebp - 0x44]
lea edx, [ebp - 0x4c]
push edx
push 0
push eax
mov ecx, dword [eax]
mov byte [ebp - 4], 0x17
call dword [ecx + 0x30]
mov ecx, dword [ebp - 0x44]
mov edi, eax
test ecx, ecx
je 0x406ffd
mov dword [ebp - 0x44], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
test edi, edi
jns 0x40702d
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push edi
call eax
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_spActionCollection_Create_hr:0x_08x
call fcn.0040ef00
add esp, 0xc
mov eax, dword [ebp - 0x4c]
mov byte [ebp - 4], 0x16
test eax, eax
je 0x406fa5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x406fa5
mov eax, dword [ebp - 0x4c]
xor ecx, ecx
mov dword [ebp - 0x38], ecx
test eax, eax
je 0x407054
mov ecx, dword [eax]
lea edx, [ebp - 0x38]
push edx
push 0x4495ac
push eax
call dword [ecx]
mov ecx, dword [ebp - 0x38]
xor edx, edx
test eax, eax
cmovs ecx, edx
mov dword [ebp - 0x38], ecx
mov byte [ebp - 4], 0x18
test ecx, ecx
jne 0x407085
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push edi
call eax
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_spExecAction_Create_hr:0x_08x
call fcn.0040ef00
mov eax, dword [ebp - 0x38]
add esp, 0xc
mov byte [ebp - 4], 0x17
test eax, eax
je 0x407017
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x407017
call fcn.00403870
mov ecx, eax
test ecx, ecx
je 0x407625
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x28], eax
push 0x449d38
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x19
call fcn.00404120
test al, al
jne 0x4070c5
push 1
push 0x449d38
lea ecx, [ebp - 0x28]
call fcn.00403300
mov eax, dword [ebp + 0xc]
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x1a
mov eax, dword [eax]
push dword [eax - 0xc]
push eax
call fcn.00407650
push 1
push 0x449d38
lea ecx, [ebp - 0x28]
call fcn.00407650
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x30], ecx
test eax, eax
jne 0x4070fd
xor edi, edi
mov dword [ebp - 0x18], edi
jmp 0x407114
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
mov dword [ebp - 0x18], edi
test edi, edi
je 0x4075f3
mov ecx, dword [ebp - 0x30]
mov eax, dword [ecx]
push edi
push ecx
mov byte [ebp - 4], 0x1b
call dword [eax + 0x2c]
push edi
mov byte [ebp - 4], 0x1a
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 0x407141
xor edi, edi
mov dword [ebp - 0x18], edi
jmp 0x407158
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
mov dword [ebp - 0x18], edi
test edi, edi
je 0x4075f3
mov ecx, dword [ebp - 0x30]
mov eax, dword [ecx]
push edi
push ecx
mov byte [ebp - 4], 0x1c
call dword [eax + 0x3c]
push edi
mov byte [ebp - 4], 0x1a
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x18], ecx
mov eax, dword [eax + 8]
test eax, eax
jne 0x407185
xor edi, edi
mov dword [ebp + 0xc], edi
jmp 0x40719c
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
mov dword [ebp + 0xc], edi
test edi, edi
je 0x4075f3
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx]
push edi
push ecx
mov byte [ebp - 4], 0x1d
call dword [eax + 0x34]
push edi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [ebp - 0x48], 0
mov eax, dword [ebp - 0x14]
lea edx, [ebp - 0x48]
push edx
push eax
mov byte [ebp - 4], 0x1e
mov ecx, dword [eax]
call dword [ecx + 0x3c]
test eax, eax
jns 0x4071e5
push eax
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
call eax
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_spTaskDefinition_get_Principal_hr:0x_08x
call fcn.0040ef00
add esp, 0xc
jmp 0x4074c8
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x58]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x30]
push eax
call fcn.00407b30
mov eax, dword [eax]
mov byte [ebp - 4], 0x1f
test eax, eax
jne 0x4072cb
xor edi, edi
mov dword [ebp + 0xc], edi
mov ecx, dword [ebp - 0x18]
push edi
push ecx
mov byte [ebp - 4], 0x20
mov eax, dword [ecx]
call dword [eax + 0x20]
push edi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov edx, dword [ebp - 0x30]
or eax, 0xffffffff
mov byte [ebp - 4], 0x1e
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40723e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0x48]
push str.BUILTINAdministrators
mov dword [ebp + 0xc], eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
mov dword [ebp - 0x18], edi
test edi, edi
je 0x4075f3
mov ecx, dword [ebp + 0xc]
push edi
push ecx
mov byte [ebp - 4], 0x21
mov eax, dword [ecx]
call dword [eax + 0x40]
push edi
mov byte [ebp - 4], 0x1e
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 0x48]
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0x48]
mov ecx, dword [ebp - 0x38]
test ecx, ecx
je 0x407294
mov dword [ebp - 0x38], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x40], 0
mov eax, dword [ebp - 0x14]
lea edx, [ebp - 0x40]
push edx
push eax
mov byte [ebp - 4], 0x22
mov ecx, dword [eax]
call dword [ecx + 0x2c]
test eax, eax
jns 0x4072e4
push eax
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
call eax
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_spTaskDefinition_get_Settings_hr:0x_08x
call fcn.0040ef00
add esp, 0xc
jmp 0x4074b7
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
mov dword [ebp + 0xc], edi
test edi, edi
je 0x40762f
jmp 0x40720a
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 edi, eax
mov dword [ebp - 0x18], edi
test edi, edi
je 0x4075f3
mov ecx, dword [ebp + 0xc]
push edi
push ecx
mov byte [ebp - 4], 0x23
mov eax, dword [ecx]
call dword [eax + 0x70]
push edi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [ebp - 0x50], 0
mov eax, dword [ebp - 0x40]
lea edx, [ebp - 0x50]
push edx
push eax
mov byte [ebp - 4], 0x24
mov ecx, dword [eax]
call dword [ecx + 0x9c]
test eax, eax
js 0x407362
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 0x407376
mov dword [ebp - 0x40], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x54], 0
mov edi, dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0x6c]
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x6c], xmm0
call edi
movups xmm0, xmmword [ebp - 0x6c]
lea eax, [ebp - 0x7c]
push eax
movups xmmword [ebp - 0xcc], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x7c], xmm0
call edi
movups xmm0, xmmword [ebp - 0x7c]
lea eax, [ebp - 0x8c]
push eax
movups xmmword [ebp - 0xbc], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x8c], xmm0
call edi
movups xmm0, xmmword [ebp - 0x8c]
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x24]
mov byte [ebp - 4], 0x28
mov dword [ebp - 0x18], edx
movups xmmword [ebp - 0xac], xmm0
test eax, eax
jne 0x4073ec
xor edi, edi
mov dword [ebp + 0xc], edi
jmp 0x407403
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
mov dword [ebp + 0xc], edi
test edi, edi
je 0x407639
mov edx, dword [ebp - 0x18]
movups xmm0, xmmword [ebp - 0xcc]
mov ecx, dword [edx]
lea eax, [ebp - 0x54]
push eax
sub esp, 0x10
mov byte [ebp - 4], 0x29
mov eax, esp
push 3
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0xbc]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [ebp - 0xac]
push 6
push dword [ebp - 0x14]
movups xmmword [eax], xmm0
push edi
push edx
call dword [ecx + 0x44]
push edi
mov dword [ebp + 0xc], eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x8c]
push eax
call edi
lea eax, [ebp - 0x7c]
push eax
call edi
lea eax, [ebp - 0x6c]
mov byte [ebp - 4], 0x25
push eax
call edi
mov eax, dword [ebp + 0xc]
test eax, eax
jns 0x40748e
push eax
mov eax, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
call eax
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_spTaskFolder_RegisterTaskDefinition_hr:0x_08x
call fcn.0040ef00
add esp, 0xc
jmp 0x407495
mov dword [ebp - 0x5c], 1
mov eax, dword [ebp - 0x54]
mov byte [ebp - 4], 0x24
test eax, eax
je 0x4074a6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x50]
mov byte [ebp - 4], 0x22
test eax, eax
je 0x4074b7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x40]
mov byte [ebp - 4], 0x1e
test eax, eax
je 0x4074c8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0x1a
test eax, eax
je 0x4074d9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edx, dword [ebp - 0x28]
or edi, 0xffffffff
mov eax, edi
mov byte [ebp - 4], 0x18
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4074fa
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0x38]
mov byte [ebp - 4], 0x17
test eax, eax
je 0x40750b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x4c]
mov byte [ebp - 4], 0x16
test eax, eax
je 0x40751c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x44]
mov byte [ebp - 4], 0x14
test eax, eax
je 0x40752d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
add esi, 0xfffffff0
mov byte [ebp - 4], 0xf
lock xadd dword [esi + 0xc], edi
dec edi
test edi, edi
jg 0x407546
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0x1c]
mov byte [ebp - 4], 0xe
test eax, eax
je 0x407557
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
mov byte [ebp - 4], 0xd
test eax, eax
je 0x407568
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x2c]
mov byte [ebp - 4], 9
test eax, eax
je 0x407579
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x20]
mov byte [ebp - 4], 8
test eax, eax
je 0x40758a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 5
test eax, eax
je 0x40759b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x24]
mov byte [ebp - 4], 0
test eax, eax
je 0x4075ac
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 4], 0xffffffff
test eax, eax
je 0x4075c0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov esi, dword [ebp - 0x5c]
push esi
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
push str.__tid:_d__AddAutoRunTaskSchedule_End_bRet:_d
call fcn.0040ef00
add esp, 0xc
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 8
push 0x8007000e
call fcn.00402420
push 0x80004005
call fcn.00402420
push 0x80004005
call fcn.00402420
push 0x8007000e
call fcn.00402420
push 0x8007000e
call fcn.00402420
push 0x80004005
call fcn.00402420
push 0x8007000e
call fcn.00402420
push 0x8007000e
call fcn.00402420
int3