Function at 0x42308b
Capabilities:
Delete file

Disassembly:
push 0x4cc
mov eax, 0x46f55b
call fcn.004492af
mov esi, ecx
mov al, byte [0x49d082]
mov ebx, 0x475418
test al, al
je 0x4230bc
push str.Bootstrapper::forceUninstallMFCStudio
movzx eax, al
push ebx
push eax
call fcn.00410975
add esp, 0xc
sub esp, 0x18
push esp
call fcn.004149a5
pop ecx
mov ecx, esi
call fcn.00424a5d
test al, al
jne 0x4230fc
mov ecx, esi
call fcn.00422f5e
mov al, byte [0x49d082]
test al, al
je 0x42341b
push str.Bootstrapper::forceUninstallMFCStudio___not_installed
movzx eax, al
push ebx
push eax
call fcn.00410975
add esp, 0xc
jmp 0x42341b
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.004149a5
pop ecx
cmp dword [eax + 0x14], 8
jb 0x423128
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.00407323
test eax, eax
lea ecx, [ebp - 0x470]
push edi
push 1
setne bl
call fcn.00408c9a
test bl, bl
je 0x423172
mov al, byte [0x49d082]
test al, al
je 0x423410
push str.Bootstrapper::forceUninstallMFCStudio___failed_to_find_install_key
jmp 0x4231b0
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.00413c69
test eax, eax
je 0x4231c6
mov al, byte [0x49d082]
test al, al
je 0x423410
push str.Bootstrapper::forceUninstallMFCStudio___failed_to_find_uninstall_string
movzx eax, al
push 0x475418
push eax
call fcn.00410975
add esp, 0xc
jmp 0x423410
lea eax, [ebp - 0x410]
push eax
lea ecx, [ebp - 0x428]
call fcn.00403a00
xor ebx, ebx
inc ebx
cmp dword [ebp - 0x418], 0
mov byte [ebp - 4], bl
je 0x4233fc
mov cl, byte [0x49d082]
test cl, cl
je 0x42321b
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.00410896
add esp, 0xc
lea eax, [ebp - 0x488]
push eax
call fcn.00414d06
pop ecx
push eax
lea eax, [ebp - 0x470]
mov byte [ebp - 4], 2
push eax
mov ecx, esi
call fcn.00426a8e
push edi
push ebx
lea ecx, [ebp - 0x488]
mov byte [ebp - 4], 4
call fcn.00408c9a
lea eax, [ebp - 0x4a0]
push eax
call fcn.00414d06
pop ecx
push eax
lea eax, [ebp - 0x440]
mov byte [ebp - 4], 5
push eax
mov ecx, esi
call fcn.004235ea
push edi
push ebx
lea ecx, [ebp - 0x4a0]
call fcn.00408c9a
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 0x473ad4
push eax
call fcn.0041e951
mov cl, byte [0x49d082]
test cl, cl
je 0x4232e1
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.00410896
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.004200dc
lea eax, [ebp - 0x470]
mov byte [ebp - 4], 9
push eax
lea eax, [ebp - 0x4a0]
push eax
call fcn.0040eabd
push eax
lea eax, [ebp - 0x4b8]
mov byte [ebp - 4], 0xa
push eax
lea eax, [ebp - 0x458]
push eax
call fcn.004132cc
add esp, 0x14
push edi
push ebx
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 4], 0xc
call fcn.00408c9a
mov cl, byte [0x49d082]
test cl, cl
je 0x42338c
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.00410896
add esp, 0xc
lea eax, [ebp - 0x458]
push eax
lea eax, [ebp - 0x488]
push eax
call fcn.0040eb50
pop ecx
pop ecx
push eax
mov ecx, esi
mov byte [ebp - 4], 0xd
call fcn.00421950
push edi
push ebx
lea ecx, [ebp - 0x488]
call fcn.00408c45
push edi
push ebx
lea ecx, [ebp - 0x458]
call fcn.00408c9a
push edi
push ebx
lea ecx, [ebp - 0x4b8]
call fcn.00408c9a
lea ecx, [ebp - 0x4d8]
call fcn.0040591b
push edi
push ebx
lea ecx, [ebp - 0x440]
call fcn.00408c9a
push edi
push ebx
lea ecx, [ebp - 0x470]
mov byte [ebp - 4], bl
call fcn.00408c45
mov ecx, esi
call fcn.00422f5e
push edi
push ebx
lea ecx, [ebp - 0x428]
call fcn.00408c9a
lea ecx, [ebp - 0x4c8]
call fcn.00405901
call fcn.00449259
ret