Function at 0x407112
Capabilities:
Schedule task via itaskservice

Disassembly:
push 8
push 0xb8
mov eax, 0x501379
call fcn.00496b07
mov dword [ebp - 0x18], ecx
cmp dword [ebx + 8], 0
je 0x4078c0
cmp dword [ebx + 0xc], 0
je 0x4078c0
xor esi, esi
push esi
call dword [sym.imp.ole32.dll_CoInitialize]
mov dword [ebp - 0x28], esi
lea eax, [ebp - 0x28]
mov dword [ebp - 4], esi
push eax
push 0x50c2d0
push 0x17
push esi
push 0x521910
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x407176
push eax
push str.Cant_CoCreateInstance_:_x
call fcn.004085e9
pop ecx
pop ecx
jmp 0x4078a8
xor eax, eax
lea edi, [ebp - 0x78]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x78]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
sub esp, 0x10
mov eax, dword [ebp - 0x28]
mov edi, esp
mov byte [ebp - 4], 2
lea esi, [ebp - 0x78]
sub esp, 0x10
mov ecx, dword [eax]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, esp
lea esi, [ebp - 0x78]
sub esp, 0x10
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, esp
lea esi, [ebp - 0x78]
sub esp, 0x10
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, esp
lea esi, [ebp - 0x78]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [ecx + 0x28]
test eax, eax
jns 0x4071de
push eax
push str.Cant_Connect_:_x
call fcn.004085e9
pop ecx
pop ecx
xor esi, esi
jmp 0x40789e
xor edi, edi
mov dword [ebp - 0x3c], edi
mov esi, dword [ebp - 0x28]
lea ecx, [ebp - 0x14]
push 0x50b988
mov byte [ebp - 4], 4
mov eax, dword [esi]
mov eax, dword [eax + 0x1c]
mov dword [ebp - 0x1c], eax
call fcn.00406544
mov eax, dword [eax]
mov byte [ebp - 4], 5
test eax, eax
je 0x40720d
mov eax, dword [eax]
jmp 0x40720f
mov eax, edi
lea ecx, [ebp - 0x3c]
push ecx
push eax
push esi
call dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x14]
mov esi, eax
test ecx, ecx
je 0x407226
call fcn.0040863a
test esi, esi
jns 0x40723e
push esi
push str.Cant_GetFolder_:_x
call fcn.004085e9
pop ecx
pop ecx
xor esi, esi
jmp 0x40788d
mov dword [ebp - 0x38], edi
mov esi, dword [ebp - 0x3c]
lea ecx, [ebp - 0x1c]
push 0x50b988
mov byte [ebp - 4], 8
mov eax, dword [esi]
mov eax, dword [eax + 0x24]
mov dword [ebp - 0x14], eax
call fcn.00406544
mov eax, dword [eax]
mov byte [ebp - 4], 9
test eax, eax
je 0x407269
mov edi, dword [eax]
lea eax, [ebp - 0x38]
push eax
push edi
push esi
call dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov esi, eax
mov byte [ebp - 4], 8
test ecx, ecx
je 0x407284
call fcn.0040863a
test esi, esi
jns 0x4072d1
push esi
push 0x50b988
push str.Cant_GetFolder_:_s___x
call fcn.004085e9
mov eax, dword [ebp - 0x3c]
lea edx, [ebp - 0x38]
add esp, 0xc
lea esi, [ebp - 0x78]
mov ecx, dword [eax]
push edx
sub esp, 0x10
mov edi, esp
push 0x50b988
movsd dword es:[edi], dword [esi]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [ecx + 0x2c]
test eax, eax
jns 0x4072d1
push eax
push str.Cant_CreateFolder_:_x
call fcn.004085e9
pop ecx
pop ecx
xor esi, esi
jmp 0x40787c
xor esi, esi
mov dword [ebp - 0x20], esi
mov eax, dword [ebp - 0x28]
lea edx, [ebp - 0x20]
push edx
push esi
push eax
mov ecx, dword [eax]
mov byte [ebp - 4], 0xd
call dword [ecx + 0x24]
test eax, eax
jns 0x4072fe
push eax
push str.Cant_NewTask_:_x
call fcn.004085e9
pop ecx
pop ecx
jmp 0x40786b
mov dword [ebp - 0x34], esi
mov eax, dword [ebp - 0x20]
lea edx, [ebp - 0x34]
push edx
push eax
mov byte [ebp - 4], 0x12
mov ecx, dword [eax]
call dword [ecx + 0x2c]
test eax, eax
jns 0x407326
push eax
push str.Cant_get_Settings:__x
call fcn.004085e9
jmp 0x4073ab
mov esi, dword [ebp - 0x34]
push 0xb
mov eax, dword [esi]
mov edi, dword [eax + 0x48]
pop eax
mov word [ebp - 0x60], ax
xor eax, eax
mov word [ebp - 0x58], ax
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x18
call fcn.00406cd4
movzx eax, ax
push eax
push esi
call edi
mov esi, eax
lea eax, [ebp - 0x60]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
test esi, esi
jns 0x407366
push esi
push str.Cant_put_DisallowStartIfOnBatteries:__x
jmp 0x4073a4
mov esi, dword [ebp - 0x34]
push 0xb
mov eax, dword [esi]
mov edi, dword [eax + 0x40]
pop eax
mov word [ebp - 0x60], ax
xor eax, eax
mov word [ebp - 0x58], ax
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x1e
call fcn.00406cd4
movzx eax, ax
push eax
push esi
call edi
mov esi, eax
lea eax, [ebp - 0x60]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
test esi, esi
jns 0x4073b2
push esi
push str.Cant_put_StopIfGoingOnBatteries:__x
call fcn.004085e9
xor esi, esi
pop ecx
pop ecx
jmp 0x40785a
xor esi, esi
mov dword [ebp - 0x4c], esi
mov eax, dword [ebp - 0x20]
lea edx, [ebp - 0x4c]
push edx
push eax
mov byte [ebp - 4], 0x24
mov ecx, dword [eax]
call dword [ecx + 0x24]
test eax, eax
jns 0x4073de
push eax
push str.Cant_get_Triggers_:_x
call fcn.004085e9
pop ecx
pop ecx
jmp 0x407849
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x4c]
lea edx, [ebp - 0x48]
push edx
push 9
push eax
mov ecx, dword [eax]
mov byte [ebp - 4], 0x2b
call dword [ecx + 0x28]
mov edi, eax
test edi, edi
jns 0x40740c
push edi
push str.Cant_CreateTask_:_x
call fcn.004085e9
pop ecx
pop ecx
jmp 0x407838
push dword [ebp - 0x48]
lea ecx, [ebp - 0x24]
call fcn.00406155
mov eax, dword [ebp - 0x24]
mov byte [ebp - 4], 0x33
test eax, eax
jne 0x407434
push edi
push str.Cant_logon_trigger_:_x
call fcn.004085e9
pop ecx
pop ecx
jmp 0x407827
mov ecx, dword [eax]
push 0xffffffffffffffff
push eax
call dword [ecx + 0x4c]
mov esi, dword [ebp - 0x24]
lea ecx, [ebp - 0x14]
push str.Trigger1
mov eax, dword [esi]
mov edi, dword [eax + 0x24]
call fcn.00406394
push dword [eax]
mov byte [ebp - 4], 0x3c
push esi
call edi
push dword [ebp - 0x14]
mov byte [ebp - 4], 0x33
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov esi, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x18]
mov eax, dword [esi]
mov edi, dword [eax + 0x5c]
lea eax, [ebp - 0x14]
push eax
call fcn.00407b85
push dword [eax]
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x3d
call fcn.00406394
push dword [eax]
mov byte [ebp - 4], 0x3e
push esi
call edi
push dword [ebp - 0x18]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00405428
mov byte [ebp - 4], 0x3f
call fcn.00404f6e
push eax
lea ecx, [ebp - 0x1c]
call fcn.004047db
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x40
push str.PT3S
push eax
call fcn.00404e79
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x1c]
pop ecx
pop ecx
mov eax, dword [esi]
lea ecx, [ebp - 0x14]
push edi
mov eax, dword [eax + 0x54]
mov dword [ebp - 0x18], eax
call fcn.00406394
push dword [eax]
mov byte [ebp - 4], 0x41
push esi
call dword [ebp - 0x18]
push dword [ebp - 0x14]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
xor esi, esi
mov dword [ebp - 0x44], esi
mov eax, dword [ebp - 0x20]
lea edx, [ebp - 0x44]
push edx
push eax
mov byte [ebp - 4], 0x42
mov ecx, dword [eax]
call dword [ecx + 0x44]
test eax, eax
jns 0x407522
push eax
push str.Cant_get_Actions_:_x
call fcn.004085e9
pop ecx
pop ecx
jmp 0x40780e
mov dword [ebp - 0x40], esi
mov eax, dword [ebp - 0x44]
lea edx, [ebp - 0x40]
push edx
push esi
push eax
mov ecx, dword [eax]
mov byte [ebp - 4], 0x4c
call dword [ecx + 0x30]
test eax, eax
jns 0x40754d
push eax
push str.Cant_Create_action_:_x
call fcn.004085e9
pop ecx
pop ecx
jmp 0x4077fd
push dword [ebp - 0x40]
lea ecx, [ebp - 0x30]
call fcn.00406102
mov esi, dword [ebp - 0x30]
lea ecx, [ebp - 0x14]
push dword [ebx + 0xc]
mov byte [ebp - 4], 0x57
mov eax, dword [esi]
mov eax, dword [eax + 0x2c]
mov dword [ebp - 0x18], eax
call fcn.00406394
push dword [eax]
mov byte [ebp - 4], 0x58
push esi
call dword [ebp - 0x18]
push dword [ebp - 0x14]
mov esi, eax
mov byte [ebp - 4], 0x57
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
test esi, esi
jns 0x407597
push esi
push str.Cant_put_Path:_x
jmp 0x407613
cmp dword [ebx + 0x14], 0
je 0x4075d8
mov esi, dword [ebp - 0x30]
lea ecx, [ebp - 0x14]
push dword [ebx + 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x34]
mov dword [ebp - 0x18], eax
call fcn.00406394
push dword [eax]
mov byte [ebp - 4], 0x64
push esi
call dword [ebp - 0x18]
push dword [ebp - 0x14]
mov esi, eax
mov byte [ebp - 4], 0x57
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
test esi, esi
jns 0x4075d8
push esi
push str.Cant_put_Arguments:_x
jmp 0x407613
cmp dword [ebx + 0x10], 0
je 0x407621
mov esi, dword [ebp - 0x30]
lea ecx, [ebp - 0x14]
push dword [ebx + 0x10]
mov eax, dword [esi]
mov eax, dword [eax + 0x3c]
mov dword [ebp - 0x18], eax
call fcn.00406394
push dword [eax]
mov byte [ebp - 4], 0x70
push esi
call dword [ebp - 0x18]
push dword [ebp - 0x14]
mov esi, eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
test esi, esi
jns 0x407621
push esi
push str.Cant_put_WorkingDirectory:_x
call fcn.004085e9
pop ecx
pop ecx
xor esi, esi
jmp 0x4077ec
xor esi, esi
mov dword [ebp - 0x2c], esi
mov eax, dword [ebp - 0x20]
lea edx, [ebp - 0x2c]
push edx
push eax
mov byte [ebp - 4], 0x7c
mov ecx, dword [eax]
call dword [ecx + 0x3c]
test eax, eax
jns 0x407648
push eax
push str.Cant_get_Principal:_x
call fcn.004085e9
jmp 0x4076a1
mov esi, dword [ebp - 0x2c]
lea ecx, [ebp - 0x14]
push str.Users
mov eax, dword [esi]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x18], eax
call fcn.00406394
push dword [eax]
mov byte [ebp - 4], 0x89
push esi
call dword [ebp - 0x18]
push dword [ebp - 0x14]
mov esi, eax
mov byte [ebp - 4], 0x7c
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
test esi, esi
jns 0x407685
push esi
push str.Cant_put_GroupId:_x
jmp 0x40769a
mov eax, dword [ebp - 0x2c]
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0x48]
test eax, eax
jns 0x4076a8
push eax
push str.Cant_put_RunLevel:_x
call fcn.004085e9
xor esi, esi
pop ecx
pop ecx
jmp 0x4077db
xor edi, edi
mov dword [ebp - 0x50], edi
mov eax, dword [ebp - 0x38]
lea edi, [ebp - 0x98]
mov dword [ebp - 0x14], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
mov dword [ebp - 0x64], eax
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x98]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
lea esi, [ebp - 0x98]
xor eax, eax
lea edi, [ebp - 0xa8]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [ebp - 0x88]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x88]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
lea esi, [ebp - 0x88]
xor eax, eax
lea edi, [ebp - 0xb8]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [ebp - 0x60]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x60]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
mov eax, dword [ebp - 0x20]
lea esi, [ebp - 0x60]
push dword [ebx + 8]
lea edi, [ebp - 0xc8]
mov byte [ebp - 4], 0xa5
movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x18], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.00406394
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0xa6
push ecx
sub esp, 0x10
lea esi, [ebp - 0xa8]
mov edi, esp
push 3
movsd dword es:[edi], dword [esi]
sub esp, 0x10
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, esp
lea esi, [ebp - 0xb8]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
sub esp, 0x10
lea esi, [ebp - 0xc8]
mov edi, esp
push 6
push dword [ebp - 0x18]
movsd dword es:[edi], dword [esi]
push dword [eax]
push dword [ebp - 0x14]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [ebp - 0x64]
push dword [ebp - 0x68]
mov edi, eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x60]
push eax
call esi
lea eax, [ebp - 0x88]
push eax
call esi
lea eax, [ebp - 0x98]
push eax
call esi
test edi, edi
jns 0x4077c4
push edi
push str.Cant_RegisterTaskDefinition:_x
call fcn.004085e9
pop ecx
pop ecx
xor esi, esi
jmp 0x4077c7
xor esi, esi
inc esi
mov eax, dword [ebp - 0x50]
mov byte [ebp - 4], 0xb4
test eax, eax
je 0x4077d8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edi, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
mov byte [ebp - 4], 0xb5
test eax, eax
je 0x4077ec
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x30]
mov byte [ebp - 4], 0xb6
test eax, eax
je 0x4077fd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x40]
mov byte [ebp - 4], 0xb7
test eax, eax
je 0x40780e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x44]
mov byte [ebp - 4], 0xb8
test eax, eax
je 0x40781f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [edi - 0x10]
call fcn.00405428
mov eax, dword [ebp - 0x24]
mov byte [ebp - 4], 0xb9
test eax, eax
je 0x407838
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0xba
test eax, eax
je 0x407849
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x4c]
mov byte [ebp - 4], 0xbb
test eax, eax
je 0x40785a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x34]
mov byte [ebp - 4], 0xbc
test eax, eax
je 0x40786b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x20]
mov byte [ebp - 4], 0xbd
test eax, eax
je 0x40787c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x38]
mov byte [ebp - 4], 0xbe
test eax, eax
je 0x40788d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
mov byte [ebp - 4], 0xbf
test eax, eax
je 0x40789e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea eax, [ebp - 0x78]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 4], 0xc0
test ecx, ecx
je 0x4078bc
mov edx, dword [ecx]
push ecx
call dword [edx + 8]
mov eax, esi
jmp 0x4078cd
push str.Name_or_Path_IsNULL
call fcn.004085e9
pop ecx
xor eax, eax
call fcn.00496af0
ret 0x10