Function at 0x10017c60
Capabilities:
Schedule task via itaskscheduler

Disassembly:
push 0x98
mov eax, 0x10086730
call fcn.1006d55a
mov eax, dword [ebp + 8]
mov ebx, dword [ebp + 0x10]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp + 0x14]
xor edi, edi
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x74], edi
mov dword [ebp - 0x80], edi
call fcn.1001833c
test al, al
jne 0x10017ccc
push 0x28
call fcn.1006c443
pop ecx
mov edi, eax
xor esi, esi
call fcn.1006daf8
add eax, dword [0x100c47a0]
mov dword [edi + esi*4], eax
inc esi
cmp esi, 0xa
jl 0x10017ca7
mov eax, dword [edi + 0x24]
push edi
mov dword [0x100c47a0], eax
call fcn.1006dc4d
pop ecx
xor edi, edi
mov dword [ebp - 0x94], edi
call fcn.100182d8
mov esi, dword [0x100c47a0]
test al, al
jne 0x10017ce8
inc esi
mov dword [0x100c47a0], esi
lea ecx, [esi + 1]
lea eax, [esi + 2]
imul eax, ecx
imul eax, esi
cdq
push 0xc
pop ecx
idiv ecx
xor eax, eax
inc eax
cmp edx, 8
jne 0x10017d0d
test esi, esi
cmove esi, eax
mov dword [0x100c47a0], esi
call fcn.10018314
test al, al
jne 0x10017d1c
inc dword [0x100c565c]
push edi
push edi
push 0xffffffffffffffff
push ebx
push edi
mov edi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push 0xfde9
call edi
xor ecx, ecx
push 2
pop edx
mov esi, eax
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.1006c443
pop ecx
push esi
push eax
push 0xffffffffffffffff
push ebx
xor esi, esi
push esi
push 0xfde9
mov dword [ebp - 0x88], eax
call edi
call fcn.100182f6
push 0x64
pop ecx
push 4
pop ebx
test al, al
jne 0x10017d8e
mov eax, dword [0x100c47a0]
cdq
idiv ecx
xor ecx, ecx
lea eax, [edx + 0x7b]
mul ebx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.1006c443
push eax
call fcn.1006dc4d
pop ecx
pop ecx
mov ebx, dword [ebp - 0x6c]
push esi
push esi
push 0xffffffffffffffff
push ebx
push esi
push 0xfde9
call edi
xor ecx, ecx
push 2
pop edx
mov esi, eax
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.1006c443
pop ecx
push esi
push eax
push 0xffffffffffffffff
push ebx
xor esi, esi
push esi
push 0xfde9
mov dword [ebp - 0x8c], eax
call edi
mov ebx, dword [ebp - 0x9c]
push esi
push esi
push 0xffffffffffffffff
push ebx
push esi
push 0xfde9
call edi
xor ecx, ecx
push 2
pop edx
mov esi, eax
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.1006c443
pop ecx
push esi
push eax
push 0xffffffffffffffff
push ebx
xor ebx, ebx
push ebx
push 0xfde9
mov dword [ebp - 0x90], eax
call edi
mov esi, dword [ebp - 0x70]
push ebx
push ebx
push 0xffffffffffffffff
push esi
push ebx
push 0xfde9
call edi
mov ecx, dword [0x100c47a0]
mov ebx, eax
lea eax, [ecx + 1]
imul eax, ecx
push 0xc
cdq
pop ecx
idiv ecx
cmp edx, 9
jne 0x10017e3d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x100c47a0], eax
xor ecx, ecx
push 2
pop edx
mov eax, ebx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.1006c443
pop ecx
push ebx
push eax
push 0xffffffffffffffff
push esi
xor esi, esi
push esi
push 0xfde9
mov dword [ebp - 0x84], eax
call edi
push 0x100c4784
lea ecx, [ebp - 0x70]
call fcn.10002171
movzx eax, byte [ebp + 0x1c]
mov ebx, dword [ebp + 0x18]
mov edi, dword [ebp - 0x9c]
push eax
mov eax, dword [ebp - 0x7c]
push ebx
push eax
push eax
push str.csTaskName
push edi
push dword [ebp - 0x6c]
lea eax, [ebp - 0x70]
push str.csInstallPath___s__csParameters___s___s___s__csAccount___s__dwInterval___d__bSetLogon___d_
push eax
mov dword [ebp - 4], esi
call fcn.1001754f
add esp, 0x24
lea eax, [ebp - 0x78]
push eax
push 0x1008c6d4
push 1
push esi
push 0x1008c6f4
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov ecx, dword [0x100c47a0]
mov eax, ecx
imul eax, ecx
push 0x16
cdq
pop esi
idiv esi
cmp edx, 0xa
jne 0x10017f06
xor esi, esi
mov dword [ebp - 0x6c], 0x74
jmp 0x10017ef2
mov eax, ecx
or eax, 0xffffff4c
add ecx, eax
mov eax, ecx
imul eax, ecx
inc esi
cmp esi, eax
jg 0x10017f00
mov eax, ecx
cdq
idiv dword [ebp - 0x6c]
cmp edx, 0xde
jne 0x10017edf
mov dword [0x100c47a0], esi
mov eax, dword [ebp - 0x78]
mov esi, dword [ebp - 0x88]
mov ecx, dword [eax]
push esi
push eax
call dword [ecx + 0x1c]
mov eax, dword [ebp - 0x78]
lea edx, [ebp - 0x68]
mov ecx, dword [eax]
push edx
push 0x1008c6c4
push 0x1008c6e4
push esi
push eax
call dword [ecx + 0x20]
call fcn.1000a31c
test al, al
jne 0x10017f3d
inc dword [0x100c56b0]
mov eax, dword [ebp - 0x68]
push dword [ebp - 0x8c]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x80]
mov eax, dword [0x100c47a0]
imul eax, eax
push 0x12
cdq
pop ecx
idiv ecx
push 2
pop eax
cmp edx, eax
jne 0x10017f76
push 4
pop eax
push eax
call fcn.1006c5c8
pop ecx
mov ecx, dword [0x100c47a0]
mov dword [eax], ecx
push edi
call fcn.1006d400
pop ecx
test eax, eax
je 0x10017f93
mov eax, dword [ebp - 0x68]
push dword [ebp - 0x90]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x88]
mov eax, dword [ebp - 0x68]
mov edi, dword [ebp - 0x84]
mov ecx, dword [eax]
push 0
push edi
push eax
call dword [ecx + 0x78]
mov eax, dword [ebp - 0x68]
push 0x2000
mov ecx, dword [eax]
push eax
call dword [ecx + 0x70]
mov eax, dword [ebp - 0x68]
push 0xfffffffffffffffe
mov ecx, dword [eax]
push eax
call dword [ecx + 0xa8]
call fcn.10018253
test al, al
je 0x10017fdb
mov eax, dword [ebp - 0x68]
push 0x80
mov ecx, dword [eax]
push eax
call dword [ecx + 0x98]
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x98]
mov ecx, dword [eax]
push edx
push 0x100b31b4
push eax
call dword [ecx]
mov eax, dword [ebp - 0x98]
push 1
mov ecx, dword [eax]
push 0
push eax
call dword [ecx + 0x18]
mov eax, dword [0x100c47a0]
imul eax, eax
push 0xc
cdq
pop ecx
idiv ecx
cmp edx, 0xb
jne 0x10018023
push 0x40
push 0x3f
push str._d__d_n
call fcn.1006dc67
add esp, 0xc
test ebx, ebx
je 0x1001816a
cmp byte [ebp + 0x1c], 0
push 0x30
pop esi
mov edi, 0x7dc
je 0x10018083
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x74]
mov ecx, dword [eax]
push edx
lea edx, [ebp - 0x94]
push edx
push eax
call dword [ecx + 0xc]
push esi
lea eax, [ebp - 0x40]
push 0
push eax
call fcn.1006de50
xor eax, eax
inc eax
add esp, 0xc
mov word [ebp - 0x3a], ax
mov word [ebp - 0x38], ax
mov eax, dword [ebp - 0x74]
lea edx, [ebp - 0x40]
mov word [ebp - 0x40], si
mov word [ebp - 0x3c], di
mov dword [ebp - 0x20], 7
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0xc]
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x74]
mov ecx, dword [eax]
push edx
lea edx, [ebp - 0x94]
push edx
push eax
call dword [ecx + 0xc]
push 0
call fcn.100703c5
mov dword [ebp - 0xa4], eax
lea eax, [ebp - 0xa4]
push eax
lea eax, [ebp - 0x64]
push eax
mov dword [ebp - 0xa0], edx
call fcn.10071f0b
push esi
lea eax, [ebp - 0x40]
push 0
push eax
call fcn.1006de50
xor eax, eax
inc eax
mov word [ebp - 0x3a], ax
mov word [ebp - 0x38], ax
mov ax, word [ebp - 0x5c]
mov word [ebp - 0x30], ax
mov ax, word [ebp - 0x60]
mov word [ebp - 0x2e], ax
mov eax, ebx
cdq
mov ecx, 0x5a0
idiv ecx
mov word [ebp - 0x40], si
add esp, 0x18
mov word [ebp - 0x3c], di
mov esi, eax
mov ecx, esi
imul ecx, ecx, 0x5a0
cmp ecx, ebx
je 0x10018105
inc esi
mov edi, dword [0x100c47a0]
xor eax, eax
inc eax
mov dword [ebp - 0x20], eax
lea eax, [edi + 1]
imul eax, edi
push 0x18
cdq
pop ecx
idiv ecx
cmp edx, 0xf
jne 0x1001813d
xor eax, eax
inc eax
mov ecx, eax
cmp edi, eax
jle 0x10018137
mov eax, edi
cdq
idiv ecx
inc ecx
add ecx, edx
cmp ecx, edi
jl 0x1001812b
mov dword [0x100c47a0], ecx
mov word [ebp - 0x1c], si
imul esi, esi, 0x5a0
cmp esi, ebx
jbe 0x10018151
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], esi
mov eax, dword [ebp - 0x74]
lea edx, [ebp - 0x40]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0xc]
mov esi, dword [ebp - 0x88]
mov edi, dword [ebp - 0x84]
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x80]
mov ecx, dword [eax]
push edx
push 0x100b31b4
push eax
call dword [ecx]
mov eax, dword [ebp - 0x80]
push 0
mov ecx, dword [eax]
push 0
push eax
call dword [ecx + 0x18]
test ebx, ebx
jne 0x10018195
mov eax, dword [ebp - 0x68]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x30]
mov eax, dword [ebp - 0x68]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x80]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x98]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov ecx, dword [0x100c47a0]
mov eax, ecx
imul eax, ecx
cdq
mov dword [ebp - 0x7c], 0xd
idiv dword [ebp - 0x7c]
cmp edx, 5
jne 0x100181f8
mov eax, ecx
push 0x64
cdq
pop ecx
idiv ecx
xor ecx, ecx
push 4
lea eax, [edx + 0x2f4]
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.1006c443
push eax
call fcn.1006dc4d
pop ecx
pop ecx
test ebx, ebx
jne 0x10018211
push 0x7d0
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [ebp - 0x78]
push esi
mov ecx, dword [eax]
push eax
call dword [ecx + 0x1c]
mov eax, dword [ebp - 0x78]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
push esi
call fcn.1006dc4d
push dword [ebp - 0x8c]
call fcn.1006dc4d
push dword [ebp - 0x90]
call fcn.1006dc4d
push edi
call fcn.1006dc4d
mov ecx, dword [ebp - 0x70]
add esp, 0x10
add ecx, 0xfffffff0
call fcn.10001efd
xor eax, eax
inc eax
call fcn.1006d509
ret