Function at 0x477875
Capabilities:
Schedule task via itaskservice

Disassembly:
push 0x70
mov eax, 0x480531
call fcn.00402847
mov dword [ebp - 0x4c], ecx
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 4], edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x28], edi
push 0x4152a0
lea ecx, [ebp - 0x3c]
call fcn.00414ecf
push 0x4798ac
lea ecx, [ebp - 0x38]
call fcn.00407b85
push dword [ebp + 0x14]
lea ecx, [ebp + 0x14]
call fcn.00407b85
mov esi, 0x4798a0
push esi
lea ecx, [ebp - 0x48]
call fcn.00414ecf
push esi
lea ecx, [ebp - 0x7c]
call fcn.00477449
lea eax, [ebp - 0x5c]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
mov byte [ebp - 4], 0x11
cmp dword [ebp + 0xc], edi
je 0x47791b
push 0x479890
lea ecx, [ebp + 0xc]
call fcn.00407b85
push eax
lea ecx, [ebp + 0x14]
call fcn.00464c8b
push dword [ebp + 0xc]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
push dword [ebp + 0x14]
push 0x479828
push 4
call fcn.004015a0
add esp, 0xc
lea eax, [ebp - 0x20]
push eax
push 0x4148c8
push 0x17
push edi
push 0x4149a4
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov esi, eax
cmp esi, edi
mov ebx, 0x8000ffff
jl 0x477954
cmp dword [ebp - 0x20], edi
jne 0x477970
push esi
push 0x479778
push 1
call fcn.004015a0
add esp, 0xc
cmp esi, edi
jl 0x4780de
mov esi, ebx
xor edi, edi
cmp esi, edi
jl 0x4780de
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0x5c]
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
mov edi, esp
lea esi, [ebp - 0x5c]
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
mov edi, esp
mov eax, dword [ebp - 0x20]
lea esi, [ebp - 0x5c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov ecx, dword [eax]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0x5c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push eax
movsd dword es:[edi], dword [esi]
call dword [ecx + 0x28]
mov esi, eax
test esi, esi
jge 0x4779d1
push esi
push 0x4796f8
push 0x43bcd4
push 1
call fcn.004015a0
add esp, 0x10
jmp 0x4780de
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
lea edx, [ebp - 0x2c]
push edx
push dword [ebp - 0x3c]
push eax
call dword [ecx + 0x1c]
mov esi, eax
test esi, esi
jl 0x4779ed
cmp dword [ebp - 0x2c], 0
jne 0x477a07
push esi
push 0x479670
push 1
call fcn.004015a0
add esp, 0xc
test esi, esi
jl 0x4780de
mov esi, ebx
test esi, esi
jl 0x4780de
mov eax, dword [ebp - 0x2c]
mov ecx, dword [eax]
lea edx, [ebp - 0x28]
push edx
push dword [ebp + 0x14]
push eax
call dword [ecx + 0x34]
mov esi, eax
xor edi, edi
cmp esi, edi
mov ebx, 0x43bcd4
jl 0x477b37
push 0x4795e0
push 8
call fcn.004015a0
mov eax, dword [ebp - 0x28]
pop ecx
pop ecx
mov ecx, dword [eax]
push 0xffffffffffffffff
push eax
call dword [ecx + 0x2c]
cmp eax, edi
jge 0x477a5e
push eax
push 0x479558
push ebx
push 1
call fcn.004015a0
add esp, 0x10
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax]
lea edx, [ebp - 0x10]
push edx
push eax
call dword [ecx + 0x4c]
mov esi, eax
cmp esi, edi
jge 0x477a79
push esi
push 0x4794c8
jmp 0x477a96
mov eax, dword [ebp - 0x10]
cmp eax, edi
je 0x477aa1
mov ecx, dword [eax]
lea edx, [ebp - 0x1c]
push edx
push eax
call dword [ecx + 0x24]
mov esi, eax
cmp esi, edi
jge 0x477aa1
push esi
push 0x479438
push ebx
push 1
call fcn.004015a0
add esp, 0x10
cmp esi, edi
mov dword [ebp + 0xc], edi
jl 0x478048
mov eax, dword [ebp - 0x1c]
cmp eax, edi
je 0x47804f
mov ecx, dword [eax]
lea edx, [ebp + 0xc]
push edx
push eax
call dword [ecx + 0x1c]
mov esi, eax
cmp esi, edi
jge 0x477ad8
push esi
push 0x4793b0
push ebx
push 1
call fcn.004015a0
add esp, 0x10
cmp dword [ebp + 0xc], 1
jne 0x477b1a
push 3
pop eax
mov word [ebp - 0x6c], ax
mov dword [ebp - 0x64], 1
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0x6c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push eax
mov byte [ebp - 4], 0x12
movsd dword es:[edi], dword [esi]
call dword [ecx + 0x2c]
mov esi, eax
lea eax, [ebp - 0x6c]
push eax
mov byte [ebp - 4], 0x11
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x478048
jle 0x478048
push dword [ebp + 0xc]
push 0x4792f0
push 4
call fcn.004015a0
add esp, 0xc
jmp 0x478048
cmp dword [ebp + 0x10], edi
je 0x478048
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
lea edx, [ebp - 0x10]
push edx
push edi
push eax
call dword [ecx + 0x24]
mov esi, eax
cmp esi, edi
jge 0x477b5c
push esi
push 0x479270
jmp 0x477b79
mov eax, dword [ebp - 0x10]
cmp eax, edi
je 0x477b84
mov ecx, dword [eax]
lea edx, [ebp - 0x18]
push edx
push eax
call dword [ecx + 0x1c]
mov esi, eax
cmp esi, edi
jge 0x477b84
push esi
push 0x4791d0
push ebx
push 1
call fcn.004015a0
add esp, 0x10
cmp dword [ebp - 0x18], edi
je 0x477d29
cmp esi, edi
jl 0x477d51
lea eax, [ebp - 0x3c]
push eax
lea ecx, [ebp + 0xc]
call fcn.00451ec7
push 0x40be38
lea ecx, [ebp + 0x10]
mov byte [ebp - 4], 0x13
call fcn.00407b85
push eax
lea ecx, [ebp + 0xc]
call fcn.00464c8b
push dword [ebp + 0x10]
mov edi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
call edi
lea eax, [ebp + 0x14]
push eax
lea ecx, [ebp + 0xc]
call fcn.00464c8b
mov eax, dword [ebp - 0x18]
push dword [ebp + 0xc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x50]
mov esi, eax
test esi, esi
jge 0x477bf5
push esi
push 0x479158
push ebx
push 1
call fcn.004015a0
add esp, 0x10
push dword [ebp + 0xc]
mov byte [ebp - 4], 0x11
call edi
test esi, esi
jl 0x477d51
mov esi, dword [ebp - 0x18]
push 0x479124
lea ecx, [ebp + 0xc]
call fcn.00407b85
mov eax, dword [eax]
mov ecx, dword [esi]
push eax
push esi
mov byte [ebp - 4], 0x14
call dword [ecx + 0x38]
push dword [ebp + 0xc]
mov esi, eax
mov byte [ebp - 4], 0x11
call edi
test esi, esi
jge 0x477c3d
push esi
push 0x4790a0
jmp 0x477d46
push 0x479060
lea ecx, [ebp + 0xc]
call fcn.00407b85
lea eax, [ebp + 0x14]
push eax
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 0x15
call fcn.00464c8b
mov eax, dword [ebp - 0x18]
push dword [ebp + 0xc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
mov esi, eax
test esi, esi
jge 0x477c7d
push esi
push 0x478fd0
push ebx
push 1
call fcn.004015a0
add esp, 0x10
push dword [ebp + 0xc]
mov byte [ebp - 4], 0x11
call edi
test esi, esi
jl 0x477d51
mov esi, dword [ebp - 0x18]
push 0x478fa0
lea ecx, [ebp + 0xc]
call fcn.00407b85
mov eax, dword [eax]
mov ecx, dword [esi]
push eax
push esi
mov byte [ebp - 4], 0x16
call dword [ecx + 0x60]
push dword [ebp + 0xc]
mov esi, eax
mov byte [ebp - 4], 0x11
call edi
test esi, esi
jge 0x477cc5
push esi
push 0x478f18
jmp 0x477d46
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0x5c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push eax
movsd dword es:[edi], dword [esi]
call dword [ecx + 0x58]
mov esi, eax
test esi, esi
jge 0x477ce8
push esi
push 0x478e78
jmp 0x477d46
mov esi, dword [ebp - 0x18]
push 0x478e70
lea ecx, [ebp + 0xc]
call fcn.00407b85
mov eax, dword [eax]
mov ecx, dword [esi]
push eax
push esi
mov byte [ebp - 4], 0x17
call dword [ecx + 0x30]
push dword [ebp + 0xc]
mov esi, eax
mov byte [ebp - 4], 0x11
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
test esi, esi
jge 0x477d2d
push esi
push 0x478de8
push ebx
push 1
call fcn.004015a0
add esp, 0x10
test esi, esi
jl 0x477d51
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
lea edx, [ebp - 0x24]
push edx
push eax
call dword [ecx + 0x3c]
mov esi, eax
test esi, esi
jge 0x477d51
push esi
push 0x478d58
push ebx
push 1
call fcn.004015a0
add esp, 0x10
mov eax, dword [ebp - 0x24]
xor edi, edi
cmp eax, edi
je 0x477dcd
cmp esi, edi
jl 0x477df5
push dword [ebp - 0x38]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
mov esi, eax
cmp esi, edi
jge 0x477d79
push esi
push 0x478cd8
jmp 0x477dea
mov eax, dword [ebp - 0x24]
push dword [ebp - 0x48]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x30]
mov esi, eax
cmp esi, edi
jge 0x477d93
push esi
push 0x478c50
jmp 0x477dea
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax]
push 3
push eax
call dword [ecx + 0x38]
mov esi, eax
cmp esi, edi
jge 0x477dac
push esi
push 0x478bc0
jmp 0x477dea
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax]
push edi
push eax
call dword [ecx + 0x48]
mov esi, eax
cmp esi, edi
jge 0x477dd1
push esi
push 0x478b30
push ebx
push 1
call fcn.004015a0
add esp, 0x10
cmp esi, edi
jl 0x477df5
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
lea edx, [ebp - 0x14]
push edx
push eax
call dword [ecx + 0x2c]
mov esi, eax
cmp esi, edi
jge 0x477df5
push esi
push 0x478a98
push ebx
push 1
call fcn.004015a0
add esp, 0x10
mov eax, dword [ebp - 0x14]
cmp eax, edi
je 0x477e9f
cmp esi, edi
jl 0x478048
push dword [ebp + 8]
mov ecx, dword [eax]
push eax
call dword [ecx + 0xb0]
mov esi, eax
cmp esi, edi
jge 0x477e22
push esi
push 0x478a08
jmp 0x477e6a
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
push 0xffffffffffffffff
push eax
call dword [ecx + 0x48]
mov esi, eax
cmp esi, edi
jge 0x477e3b
push esi
push 0x478940
jmp 0x477e6a
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
push 0xffffffffffffffff
push eax
call dword [ecx + 0x40]
mov esi, eax
cmp esi, edi
jge 0x477e54
push esi
push 0x478898
jmp 0x477e6a
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
push edi
push eax
call dword [ecx + 0x58]
mov esi, eax
cmp esi, edi
jge 0x477e7a
push esi
push 0x4787f8
push ebx
push 1
call fcn.004015a0
add esp, 0x10
jmp 0x478048
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
push 2
push eax
call dword [ecx + 0x38]
mov esi, eax
cmp esi, edi
jge 0x477ea8
push esi
push 0x478758
push ebx
push 1
call fcn.004015a0
mov eax, dword [ebp - 0x14]
add esp, 0x10
cmp esi, edi
jge 0x477eab
jmp 0x478048
mov eax, dword [ebp - 0x14]
cmp eax, edi
je 0x477ed4
mov ecx, dword [eax]
lea edx, [ebp - 0x44]
push edx
push 0x4798dc
push eax
call dword [ecx]
mov esi, eax
cmp esi, edi
jge 0x477edc
push esi
push 0x4786b8
push ebx
push 1
call fcn.004015a0
add esp, 0x10
cmp esi, edi
jl 0x478048
mov eax, dword [ebp - 0x44]
cmp eax, edi
je 0x477f02
mov ecx, dword [eax]
push 1
push eax
call dword [ecx + 0x28]
mov esi, eax
cmp esi, edi
jge 0x477f0a
push esi
push 0x478608
push ebx
push 1
call fcn.004015a0
add esp, 0x10
cmp esi, edi
jl 0x478048
mov eax, dword [ebp - 0x10]
cmp eax, edi
je 0x477f32
mov ecx, dword [eax]
lea edx, [ebp - 0x34]
push edx
push eax
call dword [ecx + 0x44]
mov esi, eax
cmp esi, edi
jge 0x477f3a
push esi
push 0x478580
push ebx
push 1
call fcn.004015a0
add esp, 0x10
cmp esi, edi
jl 0x478048
mov eax, dword [ebp - 0x34]
cmp eax, edi
je 0x477f64
push dword [ebp - 0x38]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x40]
mov esi, eax
cmp esi, edi
jge 0x477f6d
push esi
push 0x4784f8
push ebx
push 1
call fcn.004015a0
mov eax, dword [ebp - 0x34]
add esp, 0x10
cmp esi, edi
jge 0x477f70
jmp 0x478048
mov eax, dword [ebp - 0x34]
cmp eax, edi
je 0x477f96
mov ecx, dword [eax]
lea edx, [ebp - 0x40]
push edx
push edi
push eax
call dword [ecx + 0x30]
mov esi, eax
cmp esi, edi
jge 0x477f9e
push esi
push 0x478450
push ebx
push 1
call fcn.004015a0
add esp, 0x10
cmp esi, edi
jl 0x478048
mov eax, dword [ebp - 0x40]
cmp eax, edi
je 0x477fca
mov ecx, dword [eax]
lea edx, [ebp - 0x30]
push edx
push 0x4798cc
push eax
call dword [ecx]
mov esi, eax
cmp esi, edi
jge 0x477fce
push esi
push 0x4783b8
push ebx
push 1
call fcn.004015a0
add esp, 0x10
cmp esi, edi
jl 0x478048
cmp dword [ebp - 0x30], edi
je 0x478048
push 0x47839c
lea ecx, [ebp + 0xc]
call fcn.00414ecf
mov eax, dword [ebp - 0x30]
push dword [ebp + 0xc]
mov ecx, dword [eax]
push eax
mov byte [ebp - 4], 0x18
call dword [ecx + 0x2c]
mov esi, eax
cmp esi, edi
jge 0x477ffe
push esi
push 0x478318
jmp 0x478030
mov esi, dword [ebp - 0x30]
push 0x478304
lea ecx, [ebp + 0x10]
call fcn.00407b85
mov eax, dword [eax]
mov ecx, dword [esi]
push eax
push esi
mov byte [ebp - 4], 0x19
call dword [ecx + 0x34]
push dword [ebp + 0x10]
mov esi, eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp esi, edi
jge 0x47803b
push esi
push 0x478278
push ebx
push 1
call fcn.004015a0
add esp, 0x10
push dword [ebp + 0xc]
mov byte [ebp - 4], 0x11
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
xor edi, edi
cmp dword [ebp - 0x1c], edi
jne 0x478077
mov eax, dword [ebp - 0x10]
cmp eax, edi
je 0x478077
mov ecx, dword [eax]
lea edx, [ebp - 0x1c]
push edx
push eax
call dword [ecx + 0x24]
mov esi, eax
cmp esi, edi
jge 0x47807b
push esi
push 0x479438
push ebx
push 1
call fcn.004015a0
add esp, 0x10
cmp esi, edi
jl 0x4780de
cmp dword [ebp - 0x1c], edi
je 0x478094
mov ecx, dword [ebp - 0x4c]
push edi
push dword [ebp + 0x18]
push dword [ebp - 0x10]
push dword [ebp - 0x1c]
call fcn.0047592f
mov esi, eax
cmp esi, edi
jl 0x4780de
mov eax, dword [ebp - 0x2c]
cmp eax, edi
je 0x4780de
cmp dword [ebp - 0x10], edi
je 0x4780de
lea edx, [ebp - 0x28]
push edx
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0x5c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 5
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0x5c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov ecx, dword [eax]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0x7c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 6
push dword [ebp - 0x10]
movsd dword es:[edi], dword [esi]
push dword [ebp + 0x14]
movsd dword es:[edi], dword [esi]
push eax
call dword [ecx + 0x44]
mov esi, eax
push esi
push dword [ebp + 0x14]
push 0x4781f8
push 4
call fcn.004015a0
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
add esp, 0x10
lea eax, [ebp - 0x5c]
push eax
call edi
lea eax, [ebp - 0x7c]
push eax
call edi
push dword [ebp - 0x48]
mov edi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
call edi
push dword [ebp + 0x14]
call edi
push dword [ebp - 0x38]
call edi
push dword [ebp - 0x3c]
call edi
mov eax, dword [ebp - 0x28]
mov byte [ebp - 4], 0xa
test eax, eax
je 0x47812e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x1c]
mov byte [ebp - 4], 9
test eax, eax
je 0x47813f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x10]
mov byte [ebp - 4], 8
test eax, eax
je 0x478150
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x2c]
mov byte [ebp - 4], 7
test eax, eax
je 0x478161
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x20]
mov byte [ebp - 4], 6
test eax, eax
je 0x478172
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x30]
mov byte [ebp - 4], 5
test eax, eax
je 0x478183
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x40]
mov byte [ebp - 4], 4
test eax, eax
je 0x478194
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x34]
mov byte [ebp - 4], 3
test eax, eax
je 0x4781a5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x44]
mov byte [ebp - 4], 2
test eax, eax
je 0x4781b6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 1
test eax, eax
je 0x4781c7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x24]
mov byte [ebp - 4], 0
test eax, eax
je 0x4781d8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x18]
or dword [ebp - 4], 0xffffffff
test eax, eax
je 0x4781e9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, esi
call fcn.00402881
ret 0x14