Function at 0x42321f
Capabilities:
Delete file

Disassembly:
push 0x4cc
mov eax, 0x46f27c
call fcn.004490ad
mov esi, ecx
mov al, byte [0x49e0ae]
mov ebx, 0x4754d0
test al, al
je 0x423250
push str.Bootstrapper::forceUninstallMFCStudio
movzx eax, al
push ebx
push eax
call fcn.00410c97
add esp, 0xc
sub esp, 0x18
push esp
call fcn.00414c11
pop ecx
mov ecx, esi
call fcn.00424bd8
test al, al
jne 0x423290
mov ecx, esi
call fcn.004230f2
mov al, byte [0x49e0ae]
test al, al
je 0x4235af
push str.Bootstrapper::forceUninstallMFCStudio___not_installed
movzx eax, al
push ebx
push eax
call fcn.00410c97
add esp, 0xc
jmp 0x4235af
xor edi, edi
mov dword [ebp - 0x4c8], edi
mov dword [ebp - 0x4c4], edi
mov dword [ebp - 0x4c0], edi
lea eax, [ebp - 0x470]
mov dword [ebp - 4], edi
push eax
call fcn.00414c11
pop ecx
cmp dword [eax + 0x14], 8
jb 0x4232bc
mov eax, dword [eax]
push 0x20019
push eax
xor eax, eax
lea ecx, [ebp - 0x4c8]
cmp byte [esi + 0x4d], al
sete al
add eax, 0x80000001
push eax
call fcn.004077a3
test eax, eax
lea ecx, [ebp - 0x470]
push edi
push 1
setne bl
call fcn.00409095
test bl, bl
je 0x423306
mov al, byte [0x49e0ae]
test al, al
je 0x4235a4
push str.Bootstrapper::forceUninstallMFCStudio___failed_to_find_install_key
jmp 0x423344
lea eax, [ebp - 0x4bc]
mov dword [ebp - 0x4bc], 0x200
push eax
lea eax, [ebp - 0x410]
push eax
push str.UninstallString
lea ecx, [ebp - 0x4c8]
call fcn.00413f06
test eax, eax
je 0x42335a
mov al, byte [0x49e0ae]
test al, al
je 0x4235a4
push str.Bootstrapper::forceUninstallMFCStudio___failed_to_find_uninstall_string
movzx eax, al
push 0x4754d0
push eax
call fcn.00410c97
add esp, 0xc
jmp 0x4235a4
lea eax, [ebp - 0x410]
push eax
lea ecx, [ebp - 0x428]
call fcn.00403e9d
xor ebx, ebx
inc ebx
cmp dword [ebp - 0x418], 0
mov byte [ebp - 4], bl
je 0x423590
mov cl, byte [0x49e0ae]
test cl, cl
je 0x4233af
cmp dword [ebp - 0x414], 8
lea eax, [ebp - 0x428]
cmovae eax, dword [ebp - 0x428]
push eax
movzx eax, cl
push str.Bootstrapper::forceUninstallMFCStudio___path:__S
push eax
call fcn.00410bbc
add esp, 0xc
lea eax, [ebp - 0x488]
push eax
call fcn.00414f72
pop ecx
push eax
lea eax, [ebp - 0x470]
mov byte [ebp - 4], 2
push eax
mov ecx, esi
call fcn.00426cb9
push edi
push ebx
lea ecx, [ebp - 0x488]
mov byte [ebp - 4], 4
call fcn.00409095
lea eax, [ebp - 0x4a0]
push eax
call fcn.00414f72
pop ecx
push eax
lea eax, [ebp - 0x440]
mov byte [ebp - 4], 5
push eax
mov ecx, esi
call fcn.0042377e
push edi
push ebx
lea ecx, [ebp - 0x4a0]
call fcn.00409095
mov dword [ebp - 0x4d4], edi
mov dword [ebp - 0x4d8], edi
cmp dword [ebp - 0x414], 8
lea ecx, [ebp - 0x4d8]
push ecx
lea eax, [ebp - 0x428]
mov byte [ebp - 4], 8
cmovae eax, dword [ebp - 0x428]
mov ecx, esi
push 0x473ba0
push eax
call fcn.0041ead2
mov cl, byte [0x49e0ae]
test cl, cl
je 0x423475
cmp dword [ebp - 0x42c], 8
lea eax, [ebp - 0x440]
cmovae eax, dword [ebp - 0x440]
push eax
movzx eax, cl
push str.Bootstrapper::forceUninstallMFCStudio___deleting_studio_stub:__S
push eax
call fcn.00410bbc
add esp, 0xc
cmp dword [ebp - 0x42c], 8
lea eax, [ebp - 0x440]
cmovae eax, dword [ebp - 0x440]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov al, byte [esi + 0x4d]
mov ecx, esi
mov byte [ebp - 0x4bc], al
lea eax, [ebp - 0x4b8]
push dword [ebp - 0x4bc]
push eax
call fcn.00420263
lea eax, [ebp - 0x470]
mov byte [ebp - 4], 9
push eax
lea eax, [ebp - 0x4a0]
push eax
call fcn.0040ee00
push eax
lea eax, [ebp - 0x4b8]
mov byte [ebp - 4], 0xa
push eax
lea eax, [ebp - 0x458]
push eax
call fcn.004135ae
add esp, 0x14
push edi
push ebx
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 4], 0xc
call fcn.00409095
mov cl, byte [0x49e0ae]
test cl, cl
je 0x423520
cmp dword [ebp - 0x444], 8
lea eax, [ebp - 0x458]
cmovae eax, dword [ebp - 0x458]
push eax
movzx eax, cl
push str.Bootstrapper::forceUninstallMFCStudio___deleting_studio_directory:__S
push eax
call fcn.00410bbc
add esp, 0xc
lea eax, [ebp - 0x458]
push eax
lea eax, [ebp - 0x488]
push eax
call fcn.0040ee93
pop ecx
pop ecx
push eax
mov ecx, esi
mov byte [ebp - 4], 0xd
call fcn.00421ad8
push edi
push ebx
lea ecx, [ebp - 0x488]
call fcn.00409040
push edi
push ebx
lea ecx, [ebp - 0x458]
call fcn.00409095
push edi
push ebx
lea ecx, [ebp - 0x4b8]
call fcn.00409095
lea ecx, [ebp - 0x4d8]
call fcn.00405d99
push edi
push ebx
lea ecx, [ebp - 0x440]
call fcn.00409095
push edi
push ebx
lea ecx, [ebp - 0x470]
mov byte [ebp - 4], bl
call fcn.00409040
mov ecx, esi
call fcn.004230f2
push edi
push ebx
lea ecx, [ebp - 0x428]
call fcn.00409095
lea ecx, [ebp - 0x4c8]
call fcn.00405d7f
call fcn.00449057
ret