Function at 0x4a0c7d
Capabilities:
Check for outputdebugstring error
Check if file exists
Print debug messages

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
push ebx
push esi
lea ebx, [ecx + 0x13cc]
push 1
mov ecx, ebx
call fcn.00476100
push str.FromUninstall
lea ecx, [ebp - 0xc]
call fcn.004040f0
lea eax, [ebp - 0xc]
push eax
call fcn.0043e122
pop ecx
mov ecx, dword [ebp - 0xc]
mov esi, eax
add ecx, 0xfffffff0
call fcn.004023e0
test esi, esi
jne 0x4a0cfe
push str.InstallCalendarStandAlone_switch_off
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
push esi
mov ecx, ebx
call fcn.0047610d
push str.swith_off
lea ecx, [ebp - 0xc]
call fcn.004040f0
lea eax, [ebp - 0xc]
mov ecx, ebx
push eax
call fcn.004760e8
mov ecx, dword [ebp - 0xc]
lea ecx, [ecx - 0x10]
call fcn.004023e0
mov ecx, ebx
call fcn.00476007
jmp 0x4a0f4d
call fcn.0043e0e0
test eax, eax
je 0x4a0d22
push str.InstallCalendarStandAlone_has_installed
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
push 0
mov ecx, ebx
call fcn.0047610d
push str.has_installed
jmp 0x4a0cd4
call fcn.0043e086
test eax, eax
je 0x4a0d46
push str.InstallCalendarStandAlone_calendar_has_been_uninstalled
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
push 0
mov ecx, ebx
call fcn.0047610d
push str.calendar_has_been_uninstalled
jmp 0x4a0cd4
call fcn.0043e2af
test eax, eax
jne 0x4a0d6d
push str.InstallCalendarStandAlone_calendar_not_autorun
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
push 0
mov ecx, ebx
call fcn.0047610d
push str.calendar_not_autorun
jmp 0x4a0cd4
push edi
xor edi, edi
lea eax, [ebp - 8]
push edi
push eax
call fcn.00413a13
pop ecx
pop ecx
push str.FromUninstall
lea ecx, [ebp - 0xc]
call fcn.004040f0
lea eax, [ebp - 0xc]
mov ecx, 0x6b21a8
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.0043df3a
mov ecx, dword [ebp - 0xc]
lea ecx, [ecx - 0x10]
call fcn.004023e0
lea ecx, [ebp - 0xc]
call fcn.00404190
push dword [ebp - 0x14]
lea eax, [ebp - 0xc]
push dword [ebp - 8]
push 0x61a9a0
push eax
call fcn.0040c593
mov esi, dword [ebp - 0xc]
add esp, 0x10
push esi
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x4a0e15
push str.InstallCalendarStandAlone_package_missing
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
push edi
mov ecx, ebx
call fcn.0047610d
push str.package_missing
lea ecx, [ebp - 0xc]
call fcn.004040f0
lea eax, [ebp - 0xc]
mov ecx, ebx
push eax
call fcn.004760e8
mov ecx, dword [ebp - 0xc]
lea ecx, [ecx - 0x10]
call fcn.004023e0
mov ecx, ebx
call fcn.00476007
jmp 0x4a0f2e
push 1
mov ecx, ebx
call fcn.0047610d
lea ecx, [ebp - 0x2c]
call fcn.00432785
push str.FromUninstall
lea ecx, [ebp - 0xc]
call fcn.004040f0
lea eax, [ebp - 0xc]
mov ecx, 0x6b21a8
push eax
lea eax, [ebp - 4]
push eax
call fcn.0043dee1
mov ecx, dword [ebp - 0xc]
lea ecx, [ecx - 0x10]
call fcn.004023e0
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0xc]
push eax
lea ecx, [ebp - 0x2c]
call fcn.00432e28
push eax
lea ecx, [ebp - 4]
call fcn.004048f0
mov ecx, dword [ebp - 0xc]
lea ecx, [ecx - 0x10]
call fcn.004023e0
lea ecx, [ebp - 0x1c]
call fcn.0043e383
push 1
lea eax, [ebp - 4]
push eax
lea ecx, [ebp - 0x1c]
call fcn.0043e7a6
lea eax, [ebp - 8]
push eax
lea ecx, [ebp - 0x1c]
call fcn.0043e7f3
lea ecx, [ebp - 0x1c]
call fcn.0043e397
lea ecx, [ebp - 0x1c]
call fcn.0043e534
push str.FromUninstall
lea ecx, [ebp - 0xc]
call fcn.004040f0
lea eax, [ebp - 0xc]
mov ecx, 0x6b21a8
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.0043df93
mov ecx, dword [ebp - 0xc]
lea ecx, [ecx - 0x10]
call fcn.004023e0
push edi
call dword [sym.imp.KERNEL32.dll_SetLastError]
push edi
push edi
push edi
push dword [ebp - 0x10]
push esi
call fcn.0047b127
add esp, 0x14
call dword [sym.imp.KERNEL32.dll_GetLastError]
push str.InstallCalendarStandAlone_success
mov edi, eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
push edi
mov ecx, ebx
call fcn.00471550
mov ecx, ebx
call fcn.00476007
mov ecx, dword [ebp - 0x10]
lea ecx, [ecx - 0x10]
call fcn.004023e0
lea ecx, [ebp - 0x1c]
call fcn.0040c172
mov ecx, dword [ebp - 4]
lea ecx, [ecx - 0x10]
call fcn.004023e0
lea ecx, [ebp - 0x2c]
call fcn.004327a0
lea ecx, [esi - 0x10]
call fcn.004023e0
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.004023e0
mov ecx, dword [ebp - 8]
lea ecx, [ecx - 0x10]
call fcn.004023e0
pop edi
pop esi
pop ebx
leave
ret