Function at 0x4b3696
Capabilities:
Check if file exists

Disassembly:
push 0x28c
mov eax, 0x6370ce
call fcn.0040ebd7
mov eax, dword [ebp + 0x10]
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x294], ebx
mov dword [ebp - 0x298], eax
mov byte [ebp - 0x281], 1
call fcn.004b8c72
test al, al
je 0x4b37a1
mov eax, dword [0x6dadd0]
test eax, eax
je 0x4b37a1
cmp dword [eax + 4], 4
jl 0x4b37a1
push str.1114
call fcn.004b8a84
mov dword [ebp - 0x288], eax
mov dword [esp], str.1011
call fcn.004b8a84
mov ebx, eax
mov dword [esp], str.1121
call fcn.004b8a84
pop ecx
push 0
push 0
push 0x6b4be8
push 0x37a
push str.CCloudTaskClient::DoRunLocalExe
push 4
lea ecx, [ebp - 0x160]
mov esi, eax
call fcn.00407620
mov dword [ebp - 0x290], eax
and dword [ebp - 4], 0
lea edi, [eax + 0x30]
push esi
push edi
call fcn.004059ce
push ebx
push edi
call fcn.004059ce
mov ebx, dword [ebp - 0x294]
add esp, 0x10
mov ecx, edi
push dword [ebx]
call fcn.004b123c
push 0x6b4db4
push edi
call fcn.0040582c
pop ecx
pop ecx
push dword [ebx + 4]
mov ecx, edi
call fcn.004b123c
push dword [ebp - 0x288]
push edi
call fcn.004059ce
pop ecx
pop ecx
push dword [ebp - 0x290]
mov ecx, dword [0x6dadd0]
call fcn.00407705
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x160]
call fcn.004059eb
lea eax, [ebp - 0x28]
push eax
call fcn.00407d98
mov ecx, eax
call fcn.004ba493
cmp dword [ebx + 0x24], 8
lea ecx, [ebx + 0x10]
mov dword [ebp - 4], 1
jb 0x4b37c4
mov ecx, dword [ebx + 0x10]
push dword [ebx + 0x20]
push ecx
lea ecx, [ebp - 0x28]
call fcn.004018a7
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x4b3bfb
lea edi, [ebx + 0xac]
cmp dword [edi + 0x10], 0
mov dword [ebp - 0x294], edi
je 0x4b3bfb
cmp dword [ebx + 0x48], 0
je 0x4b3904
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x28c], esp
push 0x64b1cc
call fcn.00404153
push esi
mov byte [ebp - 4], 2
call fcn.00407d98
mov ecx, eax
mov byte [ebp - 4], 1
call fcn.004ba3ce
call fcn.004acb0c
add esp, 0x18
test eax, eax
jne 0x4b3904
call fcn.004b8c72
test al, al
je 0x4b38de
mov eax, dword [0x6dadd0]
test eax, eax
je 0x4b38de
cmp dword [eax + 4], 4
jl 0x4b38de
push str.1119
call fcn.004b8a84
mov dword [ebp - 0x290], eax
mov dword [esp], str.1121
call fcn.004b8a84
pop ecx
push 0
push 0
push 0x6b4be8
push 0x38f
push str.CCloudTaskClient::DoRunLocalExe
push 4
lea ecx, [ebp - 0x160]
mov ebx, eax
call fcn.00407620
mov edi, eax
lea esi, [edi + 0x30]
mov byte [ebp - 4], 3
push ebx
push esi
call fcn.004059ce
push dword [ebp - 0x290]
push esi
call fcn.004059ce
mov ecx, dword [0x6dadd0]
add esp, 0x10
push edi
call fcn.00407705
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 1
call fcn.004059eb
mov al, byte [ebp - 0x281]
mov ecx, dword [ebp - 0x298]
test ecx, ecx
je 0x4b3c99
test al, al
mov eax, dword [ecx]
je 0x4b3c97
call dword [eax + 4]
jmp 0x4b3c99
mov dword [ebp - 0x288], 1
call fcn.004baf2a
cmp eax, 3
jl 0x4b3939
add ebx, 0x4c
push str.normal
mov ecx, ebx
call fcn.004b4ecd
test eax, eax
jne 0x4b3a5f
mov dword [ebp - 0x288], 1
call fcn.004b8c72
test al, al
je 0x4b3a00
mov eax, dword [0x6dadd0]
test eax, eax
je 0x4b3a00
cmp dword [eax + 4], 4
jl 0x4b3a00
push str.1117
call fcn.004b8a84
mov edi, eax
mov dword [esp], str.1121
call fcn.004b8a84
pop ecx
push 0
push 0
push 0x6b4be8
push 0x3aa
push str.CCloudTaskClient::DoRunLocalExe
push 4
lea ecx, [ebp - 0x160]
mov esi, eax
call fcn.00407620
mov dword [ebp - 0x28c], eax
lea ebx, [eax + 0x30]
mov byte [ebp - 4], 5
push esi
push ebx
call fcn.004059ce
push edi
push ebx
call fcn.004059ce
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
push ebx
call fcn.004059ce
push 0x64bb3c
push ebx
call fcn.004b144a
mov edi, dword [ebp - 0x294]
push edi
push ebx
call fcn.004b142f
mov ecx, dword [0x6dadd0]
add esp, 0x28
push dword [ebp - 0x28c]
call fcn.00407705
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 1
call fcn.004059eb
xor eax, eax
push eax
push 0x3a8
sub esp, 0x18
mov ecx, esp
push edi
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
call fcn.0040351b
lea eax, [ebp - 0x40]
push eax
call fcn.004acbe5
add esp, 0x20
mov ecx, eax
cmp dword [ecx + 0x14], 8
mov byte [ebp - 4], 6
jb 0x4b3a33
mov ecx, dword [ecx]
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
push ecx
cmovae eax, dword [ebp - 0x28]
push eax
push dword [ebp - 0x288]
call fcn.004be125
add esp, 0x10
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x40]
call fcn.0040199e
jmp 0x4b38de
push str.high
mov ecx, ebx
call fcn.004b4ecd
test eax, eax
jne 0x4b3a8c
call fcn.004be117
neg eax
mov dword [ebp - 0x288], 1
sbb al, al
and eax, 0xffffff01
jmp 0x4b3b75
push str.forcedhigh
mov ecx, ebx
mov dword [ebp - 0x288], 1
call fcn.004b4ecd
test eax, eax
jne 0x4b3939
and dword [ebp - 0x288], eax
mov byte [ebp - 0x28c], 1
call fcn.004b8c72
test al, al
je 0x4b3939
and dword [ebp - 0x288], 0
mov eax, dword [0x6dadd0]
test eax, eax
je 0x4b3939
and dword [ebp - 0x288], 0
cmp dword [eax + 4], 4
jl 0x4b3939
push str.1116
call fcn.004b8a84
mov dword [ebp - 0x290], eax
mov dword [esp], str.1121
call fcn.004b8a84
pop ecx
push 0
push 0
push 0x6b4be8
push 0x3a3
push str.CCloudTaskClient::DoRunLocalExe
push 4
lea ecx, [ebp - 0x160]
mov ebx, eax
call fcn.00407620
mov edi, eax
lea esi, [edi + 0x30]
mov byte [ebp - 4], 4
push ebx
push esi
call fcn.004059ce
push dword [ebp - 0x290]
push esi
call fcn.004059ce
mov ecx, dword [0x6dadd0]
add esp, 0x10
push edi
call fcn.00407705
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 1
call fcn.004059eb
and dword [ebp - 0x288], 0
mov eax, dword [ebp - 0x28c]
mov edi, dword [ebp - 0x294]
test al, al
jne 0x4b3939
call fcn.004b8c72
test al, al
je 0x4b38de
mov eax, dword [0x6dadd0]
test eax, eax
je 0x4b38de
cmp dword [eax + 4], 4
jl 0x4b38de
push 0x64bb40
call fcn.004b8a84
mov dword [ebp - 0x28c], eax
mov dword [esp], str.1121
call fcn.004b8a84
pop ecx
push 0
push 0
push 0x6b4be8
push 0x3b7
push str.CCloudTaskClient::DoRunLocalExe
push 4
lea ecx, [ebp - 0x160]
mov ebx, eax
call fcn.00407620
mov edi, eax
lea esi, [edi + 0x30]
mov byte [ebp - 4], 7
push ebx
push esi
call fcn.004059ce
push dword [ebp - 0x28c]
jmp 0x4b38ba
call fcn.004b8c72
test al, al
je 0x4b3c90
mov eax, dword [0x6dadd0]
test eax, eax
je 0x4b3c90
cmp dword [eax + 4], 4
jl 0x4b3c90
push str.1115
call fcn.004b8a84
mov dword [ebp - 0x28c], eax
mov dword [esp], str.1121
call fcn.004b8a84
pop ecx
push 0
push 0
push 0x6b4be8
push 0x3be
push str.CCloudTaskClient::DoRunLocalExe
push 4
lea ecx, [ebp - 0x160]
mov ebx, eax
call fcn.00407620
mov edi, eax
lea esi, [edi + 0x30]
mov byte [ebp - 4], 8
push ebx
push esi
call fcn.004059ce
push dword [ebp - 0x28c]
push esi
call fcn.004059ce
mov ecx, dword [0x6dadd0]
add esp, 0x10
push edi
call fcn.00407705
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 1
call fcn.004059eb
xor al, al
jmp 0x4b38e4
call dword [eax]
call fcn.004b8c72
test al, al
je 0x4b3d2a
mov eax, dword [0x6dadd0]
test eax, eax
je 0x4b3d2a
cmp dword [eax + 4], 4
jl 0x4b3d2a
push str.1012
call fcn.004b8a84
mov dword [ebp - 0x298], eax
mov dword [esp], str.1121
call fcn.004b8a84
pop ecx
push 0
push 0
push 0x6b4be8
push 0x3c8
push str.CCloudTaskClient::DoRunLocalExe
push 4
lea ecx, [ebp - 0x280]
mov ebx, eax
call fcn.00407620
mov edi, eax
lea esi, [edi + 0x30]
mov byte [ebp - 4], 9
push ebx
push esi
call fcn.004059ce
push dword [ebp - 0x298]
push esi
call fcn.004059ce
mov ecx, dword [0x6dadd0]
add esp, 0x10
push edi
call fcn.00407705
lea ecx, [ebp - 0x280]
call fcn.004059eb
lea ecx, [ebp - 0x28]
call fcn.0040199e
mov al, 1
call fcn.0040eb81
ret 0x10