Function at 0x4086f0
Capabilities:
Accept command line arguments
Copy file
Delete directory
Delete file
Get common file path
Terminate process

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x10d8
call fcn.00410190
mov eax, dword [0x4251dc]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
xor eax, eax
push 0x206
push eax
mov word [ebp - 0xa2c], ax
lea eax, [ebp - 0xa2a]
push eax
mov byte [ebp - 0x10cc], 0
xor bl, bl
call fcn.00410810
add esp, 0xc
push 0x41b284
call dword [sym.imp.KERNEL32.dll_SetDllDirectoryW]
mov esi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push str.SetDefaultDllDirectories
push 0x41b3e4
call esi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x408760
push 0x800
call eax
lea ecx, [ebp - 0x10d8]
mov dword [ebp - 0x10d4], 0
mov dword [ebp - 0x10d0], 0
call fcn.00402670
call fcn.004079c0
push 0
call esi
mov dword [ebp - 0x10c4], eax
mov dword [ebp - 0xe60], 0
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
lea ecx, [ebp - 0xe60]
call fcn.00401070
lea eax, [ebp - 0xe48]
push eax
lea ecx, [ebp - 0xe60]
call fcn.00402130
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
push 0x208
mov edi, eax
lea eax, [ebp - 0x20c]
push 0
push eax
call fcn.00410810
mov esi, 1
add esp, 0xc
cmp dword [ebp - 0xe48], esi
jle 0x408838
jmp 0x4087f0
push dword [edi + esi*4]
lea eax, [ebp - 0x20c]
push 0x104
push eax
call fcn.0040fb74
mov ecx, dword [ebp - 0xe48]
add esp, 0xc
lea eax, [ecx - 1]
cmp esi, eax
jge 0x408833
push 0x41ba20
lea eax, [ebp - 0x20c]
push 0x104
push eax
call fcn.0040fb74
mov ecx, dword [ebp - 0xe48]
add esp, 0xc
inc esi
cmp esi, ecx
jl 0x4087f0
lea eax, [ebp - 0x20c]
push 0x41ba24
push eax
call fcn.0040fe6e
add esp, 8
test eax, eax
jne 0x4088e4
lea eax, [ebp - 0x20c]
push str._Embedding
push eax
call fcn.0040fe6e
add esp, 8
test eax, eax
jne 0x4088e4
lea eax, [ebp - 0x20c]
push str._uninstall
push eax
call fcn.0040fe6e
add esp, 8
test eax, eax
jne 0x4088e4
lea eax, [ebp - 0x20c]
push str._check
push eax
call fcn.0040fe6e
add esp, 8
test eax, eax
jne 0x4088e4
lea eax, [ebp - 0x20c]
push str._update
push eax
call fcn.0040fe6e
add esp, 8
test eax, eax
jne 0x4088e4
lea eax, [ebp - 0x20c]
push str._maintain
push eax
call fcn.0040fe6e
add esp, 8
test eax, eax
jne 0x4088e4
lea eax, [ebp - 0x20c]
push str._refreshIEElevationPolicies
push eax
call fcn.0040fe6e
add esp, 8
test eax, eax
je 0x4088eb
mov byte [ebp - 0x10cc], 1
lea eax, [ebp - 0x20c]
push str._relaunched
push eax
call fcn.0040fe6e
add esp, 8
test eax, eax
push 0x104
movzx ecx, bl
lea eax, [ebp - 0xc34]
mov edx, 1
push eax
cmovne ecx, edx
push 0
mov byte [ebp - 0xe40], cl
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea eax, [ebp - 0xc34]
push eax
lea eax, [ebp - 0x824]
push 0x104
push eax
call fcn.0040fbe0
lea eax, [ebp - 0x824]
push 0x5c
push eax
call fcn.0040fdc8
add esp, 0x14
test eax, eax
je 0x408958
xor ecx, ecx
mov word [eax], cx
lea eax, [ebp - 0x824]
push eax
call fcn.00406660
mov esi, dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
add esp, 4
test al, al
jne 0x4089bc
push 0x104
lea eax, [ebp - 0x1078]
push eax
call esi
lea eax, [ebp - 0x1078]
push eax
lea eax, [ebp - 0x414]
push 0x104
push eax
call fcn.0040fbe0
push str.MacromedTemp
lea eax, [ebp - 0x414]
push 0x104
push eax
call fcn.0040fb74
lea eax, [ebp - 0x414]
push eax
call fcn.00403630
add esp, 0x1c
lea eax, [ebp - 0x824]
push eax
lea eax, [ebp - 0x414]
push 0x104
push eax
call fcn.0040fbe0
push str..dll
lea eax, [ebp - 0x414]
push 0x104
push eax
call fcn.0040fb74
add esp, 0x18
lea eax, [ebp - 0x10c0]
push eax
lea eax, [ebp - 0x414]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp eax, 0xffffffff
je 0x408b01
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
push dword [ebp - 0x10cc]
lea eax, [ebp - 0x61c]
push eax
xor esi, esi
call fcn.00405fc0
add esp, 8
test al, al
jne 0x408a36
mov esi, 0x6e2
jmp 0x408afa
push 1
lea eax, [ebp - 0x61c]
push eax
lea eax, [ebp - 0xc34]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x408a5a
mov esi, 0x6e0
jmp 0x408afa
push 0
sub esp, 8
lea eax, [ebp - 0x20c]
mov ecx, esp
push eax
call fcn.00401070
sub esp, 8
lea eax, [ebp - 0x61c]
mov ecx, esp
push eax
call fcn.00401070
call fcn.004072f0
add esp, 0x14
test al, al
mov ecx, 0x6e1
lea eax, [ebp - 0x61c]
cmove esi, ecx
push eax
lea ecx, [ebp - 0xe44]
mov dword [ebp - 0xe44], 0
call fcn.00401070
push 0
push 0x41b47c
lea eax, [ebp - 0x10c8]
push eax
lea ecx, [ebp - 0xe44]
call fcn.00401f10
lea ecx, [ebp - 0x10c8]
call fcn.004010d0
lea eax, [ebp - 0x61c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea ecx, [ebp - 0xe44]
call fcn.00402130
push eax
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
lea ecx, [ebp - 0xe44]
call fcn.004010d0
push esi
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push dword [ebp - 0xe40]
lea eax, [ebp - 0xa2c]
push eax
call fcn.00408590
push 0x1c
call fcn.0040eddc
add esp, 0xc
test eax, eax
je 0x408b41
mov ecx, eax
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x18], 0
call fcn.00408d70
mov ebx, eax
jmp 0x408b43
xor ebx, ebx
push 0x104
lea eax, [ebp - 0xe3c]
push eax
call esi
lea eax, [ebp - 0xe3c]
push eax
lea ecx, [ebp - 0xe58]
mov dword [ebp - 0xe58], 0
call fcn.00401070
lea eax, [ebp - 0xe58]
push eax
lea ecx, [ebp - 0xe50]
mov dword [ebp - 0xe50], 0
call fcn.00401000
sub esp, 8
mov ecx, esp
push str.Macromed
call fcn.00401070
push 0x5c
lea ecx, [ebp - 0xe50]
call fcn.004014e0
sub esp, 8
mov ecx, esp
push str.Flash
call fcn.00401070
push 0x5c
lea ecx, [ebp - 0xe50]
call fcn.004014e0
push 0x2ec
call fcn.0040eddc
mov esi, eax
add esp, 4
test esi, esi
je 0x408bfc
push 1
mov ecx, esi
call fcn.00407be0
lea eax, [ebp - 0xa2c]
push eax
push dword [ebp - 0x10cc]
mov ecx, esi
push ebx
push dword [ebp - 0x10c4]
call fcn.00402750
mov edi, eax
jmp 0x408bfe
xor edi, edi
lea eax, [ebp - 0xe58]
push eax
lea ecx, [ebp - 0xe44]
call fcn.00401000
sub esp, 8
lea eax, [ebp - 0xe44]
mov ecx, esp
push eax
call fcn.00401000
lea ecx, [edi + 0x218]
call fcn.00401840
lea ecx, [ebp - 0xe44]
call fcn.004010d0
lea eax, [ebp - 0xe50]
push eax
lea ecx, [ebp - 0xe44]
call fcn.00401000
sub esp, 8
lea eax, [ebp - 0xe44]
mov ecx, esp
push eax
call fcn.00401000
lea ecx, [edi + 0x228]
call fcn.00401840
lea ecx, [ebp - 0xe44]
call fcn.004010d0
lea eax, [ebp - 0xe68]
push eax
mov ecx, edi
mov dword [ebp - 0xe68], 0
call fcn.00405f90
sub esp, 8
lea eax, [ebp - 0xe60]
mov ecx, esp
push eax
call fcn.00401000
mov ecx, edi
call fcn.00403800
mov dword [ebp - 0x10c4], eax
lea eax, [ebp - 0xe70]
push eax
mov ecx, edi
mov dword [ebp - 0xe70], 0
call fcn.004061d0
mov esi, dword [ebx]
sub esp, 8
mov ecx, esp
push str.FlashInstall32.log
call fcn.00401070
push 0x5c
lea ecx, [ebp - 0xe68]
call fcn.004014e0
sub esp, 8
mov ecx, esp
push eax
call fcn.00401000
mov ecx, ebx
call dword [esi + 0x1c]
mov ecx, ebx
call fcn.00408e60
push ebx
call fcn.0040ee50
add esp, 4
test edi, edi
je 0x408d10
mov ecx, edi
call fcn.00402e10
push edi
call fcn.0040ee50
add esp, 4
xor esi, esi
cmp dword [0x426004], esi
jle 0x408d33
mov edi, dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [0x426000]
push dword [eax + esi*4]
call edi
inc esi
cmp esi, dword [0x426004]
jl 0x408d20
push dword [0x426000]
mov dword [0x426004], 0
call fcn.0040ee50
add esp, 4
mov dword [0x426000], 0
push dword [ebp - 0x10c4]
call dword [sym.imp.KERNEL32.dll_ExitProcess]