Function at 0x409070
Capabilities:
Delete directory
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x41c
mov eax, dword [0x4624c8]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push str.__Deleting_uninstall_environment
mov ebx, ecx
push 0x453cac
push 0x463614
mov dword [ebp - 0x41c], ebx
call fcn.00419150
add esp, 0xc
lea eax, [ebp - 0x210]
push eax
push 0
push 0
push 0x23
push 0
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
mov edi, dword [sym.imp.SHLWAPI.dll_PathAppendW]
lea eax, [ebp - 0x210]
push str.IntelPackage_Cache
push eax
call edi
cmp dword [ebx + 0x248], 8
lea esi, [ebx + 0x234]
jb 0x4090e1
mov eax, dword [esi]
jmp 0x4090e3
mov eax, esi
push eax
lea eax, [ebp - 0x210]
push eax
call edi
lea eax, [ebp - 0x210]
push eax
push str.____Deleting_cache___s_
push 0x453cac
push 0x463614
call fcn.00419150
add esp, 0x10
lea eax, [ebp - 0x210]
push str.setup.exe
push eax
call edi
lea ecx, [ebp - 0x210]
call fcn.0041b740
test eax, eax
je 0x409140
push eax
push str.Delete_error__d
push 0x454308
push 0x463614
call fcn.00419150
add esp, 0x10
mov ebx, dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
lea eax, [ebp - 0x210]
push eax
call ebx
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x409187
lea eax, [ebp - 0x210]
push eax
call edi
push eax
push str.Delete_error__d_on__s
push 0x454308
push 0x463614
call fcn.00419150
add esp, 0x14
lea eax, [ebp - 0x210]
push eax
call ebx
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
jne 0x4091c2
lea eax, [ebp - 0x210]
push eax
call edi
push eax
push str.Delete_error__d_on__s
push 0x454308
push 0x463614
call fcn.00419150
add esp, 0x14
lea eax, [ebp - 0x210]
push eax
call ebx
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
jne 0x4091fd
lea eax, [ebp - 0x210]
push eax
call edi
push eax
push str.Delete_error__d_on__s
push 0x454308
push 0x463614
call fcn.00419150
add esp, 0x14
push str.SoftwareMicrosoftWindowsCurrentVersionUninstall_
lea eax, [ebp - 0x418]
push 0x104
push eax
call fcn.004319e1
add esp, 0xc
cmp dword [esi + 0x14], 8
jb 0x40921e
mov esi, dword [esi]
push esi
lea eax, [ebp - 0x418]
push 0x104
push eax
call fcn.00431c47
add esp, 0xc
lea eax, [ebp - 0x418]
push eax
push str.____Deleting_ARP_entry___s_
push 0x453cac
push 0x463614
call fcn.00419150
add esp, 0xc
lea edx, [ebp - 0x418]
call fcn.0041c660
add esp, 4
test eax, eax
je 0x40927b
push eax
push str.Delete_error__d
push 0x454110
push 0x463614
call fcn.00419150
add esp, 0x10
push str.SoftwareIntel_
lea eax, [ebp - 0x418]
push 0x104
push eax
call fcn.004319e1
mov eax, dword [ebp - 0x41c]
add esp, 0xc
add eax, 0x2c4
cmp dword [eax + 0x14], 8
jb 0x4092a7
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x418]
push 0x104
push eax
call fcn.00431c47
add esp, 8
lea edx, [ebp - 0x418]
call fcn.0041c660
add esp, 4
push eax
lea eax, [ebp - 0x418]
push eax
push str.____Deleting_product_key___s___0x_X_
push 0x453cac
push 0x463614
call fcn.00419150
mov ecx, dword [ebp - 4]
add esp, 0x14
xor ecx, ebp
pop edi
pop esi
pop ebx
call fcn.00430d5f
mov esp, ebp
pop ebp
ret