Function at 0x4475a2
Capabilities:
Check if file exists

Disassembly:
push 0x374
mov eax, 0x4d0c66
call fcn.004a9f73
mov ebx, ecx
lea ecx, [ebp - 0x98]
call fcn.004489e9
and dword [ebp - 4], 0
lea esi, [ebx + 8]
push esi
lea edx, [ebp - 0x98]
lea ecx, [ebp - 0x58]
call fcn.00447bba
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x70]
mov edx, eax
mov dword [esp], 0x4ecf28
call fcn.00403ba6
pop ecx
push eax
lea ecx, [ebp - 0x98]
call fcn.004036f5
push 0
push 1
lea ecx, [ebp - 0x70]
call fcn.00404b60
push 0
push 1
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0
call fcn.00404b60
push esi
lea edx, [ebp - 0x98]
lea ecx, [ebp - 0x70]
call fcn.00447bba
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x28]
mov edx, eax
mov dword [esp], str..dll
call fcn.00403ba6
pop ecx
push 0
push 1
lea ecx, [ebp - 0x70]
call fcn.00404b60
xor eax, eax
mov dword [ebp - 0x5c], 0xf
mov dword [ebp - 0x60], eax
mov byte [ebp - 0x70], al
mov byte [ebp - 4], 5
lea edi, [ebp - 0x80]
cmp dword [ebp - 0x14], 0x10
lea ecx, [ebp - 0x28]
mov dword [ebp - 0xb8], eax
lea edx, [ebp - 0x80]
cmovae ecx, dword [ebp - 0x28]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
call fcn.00441e35
lea eax, [ebx + 0x50]
cmp dword [eax + 0x14], 0x10
jb 0x447681
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x50]
call fcn.00441cb9
and dword [ebp - 0xb4], 0
cmp dword [ebx + 0xac], 2
jne 0x4476b7
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
je 0x4476b7
and dword [ebx + 0xac], 0
push ecx
push ecx
lea ecx, [ebp - 0x2d0]
call fcn.004064d5
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x80]
call fcn.00447349
mov edi, eax
lea eax, [ebp - 0xb0]
mov byte [ebp - 4], 7
push eax
lea ecx, [ebp - 0x50]
call fcn.00447349
mov esi, eax
mov byte [ebp - 4], 8
mov edx, str.KwRunTask_run_svr_ver_
push dword [ebx + 0xac]
push ecx
lea ecx, [ebp - 0x2c0]
call fcn.00406d2d
mov edx, esi
mov ecx, eax
call fcn.00445b39
mov edx, str._local_ver_
mov ecx, eax
call fcn.00406d2d
mov edx, edi
mov ecx, eax
call fcn.00445b39
mov edx, str._last_err_
mov ecx, eax
call fcn.00406d2d
pop ecx
mov ecx, eax
call fcn.004446af
mov edx, str._task_path_
mov ecx, eax
call fcn.00406d2d
lea edx, [ebp - 0x28]
mov ecx, eax
call fcn.00445b39
xor esi, esi
lea ecx, [ebp - 0xb0]
push esi
push 1
call fcn.00404b60
push esi
push 1
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 6
call fcn.00404b60
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x2d0]
call fcn.004065a8
mov byte [ebp - 4], 9
cmp dword [eax + 0x14], 0x10
jb 0x447788
mov eax, dword [eax]
push eax
push 0x4e7e88
call fcn.0044d523
push eax
call fcn.0044d561
add esp, 0xc
lea ecx, [ebp - 0x40]
push esi
push 1
call fcn.00404b60
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 4], 5
call fcn.004064bb
xor esi, esi
mov dword [ebp - 0xbc], esi
cmp dword [ebx + 0xac], esi
jne 0x4477ec
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0x50]
call fcn.00441fc4
test al, al
jne 0x4477ec
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
jne 0x44780f
lea eax, [ebp - 0xb4]
push eax
push ecx
push ecx
lea eax, [ebp - 0x28]
push eax
lea edx, [ebx + 0x20]
lea ecx, [ebx + 0x38]
call fcn.00448e75
add esp, 0x10
mov dword [ebp - 0xbc], eax
mov esi, eax
xor edi, edi
test esi, esi
jne 0x447992
push ecx
push ecx
lea ecx, [ebp - 0x170]
call fcn.004064d5
push esi
push ecx
mov edx, str.__taskid:
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x160]
call fcn.00406d2d
lea edx, [ebx + 8]
mov ecx, eax
call fcn.00445b39
mov edx, str.__from:
mov ecx, eax
call fcn.00406d2d
pop ecx
mov ecx, eax
call fcn.00447ada
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x170]
call fcn.004065a8
mov byte [ebp - 4], 0xb
cmp dword [eax + 0x14], 0x10
jb 0x447875
mov eax, dword [eax]
cmp dword [ebp - 0x14], 0x10
lea edx, [ebp - 0xb8]
push edx
lea ecx, [ebp - 0x28]
cmovae ecx, dword [ebp - 0x28]
push eax
call fcn.004430b4
pop ecx
pop ecx
push esi
push 1
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0xa
mov edi, eax
call fcn.00404b60
push ecx
push ecx
lea ecx, [ebp - 0x220]
mov dword [ebx + 0xac], esi
call fcn.004064d5
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xc
push eax
lea ecx, [ebp - 0x170]
call fcn.004065a8
mov esi, eax
push edi
push ecx
mov edx, str.excu_task
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x210]
call fcn.00406d2d
lea edx, [ebx + 8]
mov ecx, eax
call fcn.00445b39
mov edx, str.__path:
mov ecx, eax
call fcn.00406d2d
lea edx, [ebp - 0x28]
mov ecx, eax
call fcn.00445b39
mov edx, str._param:
mov ecx, eax
call fcn.00406d2d
mov edx, esi
mov ecx, eax
call fcn.00445b39
mov edx, str.__ret:
mov ecx, eax
call fcn.00406d2d
pop ecx
mov ecx, eax
call fcn.00447ada
push 0
push 1
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0xc
call fcn.00404b60
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x220]
call fcn.004065a8
mov byte [ebp - 4], 0xe
cmp dword [eax + 0x14], 0x10
jb 0x447952
mov eax, dword [eax]
push eax
push 0x4e7e88
call fcn.0044d523
push eax
call fcn.0044d561
add esp, 0xc
lea ecx, [ebp - 0x40]
push 0
push 1
call fcn.00404b60
lea ecx, [ebp - 0x220]
call fcn.004064bb
lea ecx, [ebp - 0x170]
mov byte [ebp - 4], 5
call fcn.004064bb
mov esi, dword [ebp - 0xbc]
push ecx
push ecx
lea ecx, [ebp - 0x380]
call fcn.004064d5
push edi
push ecx
mov byte [ebp - 4], 0xf
mov edx, str.TYPE:RUN
push dword [ebp - 0xb4]
push ecx
push esi
push ecx
lea ecx, [ebp - 0x370]
call fcn.00406d2d
mov edx, str.err_type:
mov ecx, eax
call fcn.00406d2d
pop ecx
mov ecx, eax
call fcn.00447ada
mov edx, str.last_err:
mov ecx, eax
call fcn.00406d2d
pop ecx
mov ecx, eax
call fcn.00447ada
mov edx, str.run_ret:
mov ecx, eax
call fcn.00406d2d
pop ecx
mov ecx, eax
call fcn.00447ada
mov edx, str.task_name:
mov ecx, eax
call fcn.00406d2d
lea edx, [ebx + 8]
mov ecx, eax
call fcn.00445b39
mov edx, str.task_ver:
mov ecx, eax
call fcn.00406d2d
lea edx, [ebx + 0x50]
mov ecx, eax
call fcn.00445b39
push str.DRTASKMGR
lea ecx, [ebp - 0x58]
call fcn.00404860
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x10
push eax
lea ecx, [ebp - 0x380]
call fcn.004065a8
mov esi, eax
mov byte [ebp - 4], 0x11
call fcn.0044d523
push 1
push esi
lea ecx, [ebp - 0x58]
push ecx
mov ecx, 0x4e77ae
push ecx
push ecx
mov ecx, eax
call fcn.0044dacb
xor esi, esi
lea ecx, [ebp - 0x40]
push 0
inc esi
push esi
call fcn.00404b60
push 0
push esi
lea ecx, [ebp - 0x58]
call fcn.00404b60
mov ecx, dword [ebp - 0xb8]
test ecx, ecx
je 0x447aa6
test edi, edi
jne 0x447aa6
mov eax, dword [ebx + 0xc0]
test eax, eax
je 0x447aa6
cmp eax, 0x9eb10
ja 0x447aa6
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea ecx, [ebp - 0x380]
call fcn.004064bb
xor ebx, ebx
lea ecx, [ebp - 0x70]
push ebx
push esi
call fcn.00404b60
push ebx
push esi
lea ecx, [ebp - 0x28]
call fcn.00404b60
push ebx
push esi
lea ecx, [ebp - 0x98]
call fcn.00404b60
call fcn.004a9f22
ret