Function at 0x410620
Capabilities:
Check if file exists
Delete file
Enumerate files on windows
Get common file path
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4b7090
mov eax, dword fs:[0]
push eax
sub esp, 0xed4
mov eax, dword [0x57aa54]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0xebc], ecx
mov eax, dword [ebp - 0xebc]
mov dword [eax + 0x24], 1
mov ecx, dword [ebp - 0xebc]
call fcn.00410a50
movzx ecx, al
test ecx, ecx
je 0x410677
mov al, 1
jmp 0x410a36
mov edx, dword [ebp - 0xebc]
movzx eax, byte [edx + 0x2a]
test eax, eax
jne 0x410a07
push 0x208
push 0
lea ecx, [ebp - 0x21c]
push ecx
call fcn.0049ce00
add esp, 0xc
push 0x208
push 0
lea edx, [ebp - 0x424]
push edx
call fcn.0049ce00
add esp, 0xc
lea eax, [ebp - 0x424]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
push 0x208
push 0
lea ecx, [ebp - 0x62c]
push ecx
call fcn.0049ce00
add esp, 0xc
push str.dotNetFramework
lea edx, [ebp - 0x424]
push edx
lea eax, [ebp - 0x62c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea ecx, [ebp - 0x62c]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x41071f
lea edx, [ebp - 0x62c]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
and eax, 0x10
mov dword [ebp - 0xec0], eax
jmp 0x410729
mov dword [ebp - 0xec0], 0
cmp dword [ebp - 0xec0], 0
je 0x4107d5
push 0x208
push 0
lea eax, [ebp - 0xa84]
push eax
call fcn.0049ce00
add esp, 0xc
push str.dotnet.exe
lea ecx, [ebp - 0x62c]
push ecx
lea edx, [ebp - 0xa84]
push edx
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea eax, [ebp - 0x87c]
push eax
lea ecx, [ebp - 0xa84]
push ecx
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0xa88], eax
cmp dword [ebp - 0xa88], 0xffffffff
je 0x4107d5
mov edx, dword [ebp - 0x87c]
and edx, 0x10
jne 0x4107b0
lea eax, [ebp - 0x850]
push eax
lea ecx, [ebp - 0x62c]
push ecx
lea edx, [ebp - 0x21c]
push edx
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
jmp 0x4107c8
lea eax, [ebp - 0x87c]
push eax
mov ecx, dword [ebp - 0xa88]
push ecx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x410788
mov edx, dword [ebp - 0xa88]
push edx
call dword [sym.imp.KERNEL32.dll_FindClose]
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x410971
push 0x208
push 0
lea ecx, [ebp - 0xc94]
push ecx
call fcn.0049ce00
add esp, 0xc
lea edx, [ebp - 0xc94]
push edx
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
mov ecx, dword [ebp - 0xebc]
add ecx, 0x40
call fcn.0040ca60
push eax
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
push eax
lea eax, [ebp - 0xc94]
push eax
lea ecx, [ebp - 0x21c]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea edx, [ebp - 0x21c]
push edx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x41085a
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push 0x208
push 0
lea ecx, [ebp - 0xea4]
push ecx
call fcn.0049ce00
add esp, 0xc
push str.AutoUpdator.exe
lea edx, [ebp - 0x424]
push edx
lea eax, [ebp - 0xea4]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea ecx, [ebp - 0xc98]
call fcn.004038b0
mov dword [ebp - 4], 0
push 0x4bf784
mov ecx, dword [ebp - 0xebc]
mov edx, dword [ecx + 0x40]
push edx
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0xea4]
push ecx
push str.__s___download__local___s___url___s___program___s_
lea edx, [ebp - 0xc98]
push edx
call fcn.004044a0
add esp, 0x18
push 0x927c0
push 1
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0xea8], esp
lea eax, [ebp - 0x424]
push eax
call fcn.004038f0
mov dword [ebp - 0xec4], eax
mov ecx, dword [ebp - 0xec4]
mov dword [ebp - 0xec8], ecx
mov byte [ebp - 4], 1
push ecx
mov ecx, esp
mov dword [ebp - 0xeac], esp
lea edx, [ebp - 0xc98]
push edx
call fcn.004038d0
mov dword [ebp - 0xecc], eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0xebc]
call fcn.004120d0
mov byte [ebp - 0xecd], al
movzx eax, byte [ebp - 0xecd]
test eax, eax
jne 0x41095f
mov byte [ebp - 0xead], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xc98]
call fcn.00403970
mov al, byte [ebp - 0xead]
jmp 0x410a36
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xc98]
call fcn.00403970
push 0x927c0
push 1
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0xeb4], esp
lea edx, [ebp - 0x424]
push edx
call fcn.004038f0
mov dword [ebp - 0xed4], eax
mov eax, dword [ebp - 0xed4]
mov dword [ebp - 0xed8], eax
mov dword [ebp - 4], 2
push ecx
mov ecx, esp
mov dword [ebp - 0xeb8], esp
lea edx, [ebp - 0x21c]
push edx
call fcn.004038f0
mov dword [ebp - 0xedc], eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xebc]
call fcn.004120d0
mov byte [ebp - 0xedd], al
movzx eax, byte [ebp - 0xedd]
test eax, eax
jne 0x4109ea
xor al, al
jmp 0x410a36
mov ecx, dword [ebp - 0xebc]
call fcn.004151a0
mov ecx, dword [ebp - 0xebc]
movzx edx, byte [ecx + 0x2a]
test edx, edx
jne 0x410a07
xor al, al
jmp 0x410a36
mov ecx, dword [ebp - 0xebc]
call fcn.00410a50
movzx eax, al
test eax, eax
jne 0x410a34
push str.The_pre_requisites_installation_was_not_successfully_finished
mov ecx, dword [ebp - 0xebc]
add ecx, 0x20
push ecx
call fcn.004044a0
add esp, 8
xor al, al
jmp 0x410a36
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0049c63c
mov esp, ebp
pop ebp
ret