Function at 0x407f30
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.0040f660
mov eax, dword [0x4241dc]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x824], ax
lea eax, [ebp - 0x822]
push eax
mov byte [ebp - 0x10a4], 0
xor bl, bl
call fcn.0040fce0
add esp, 0xc
push 0x41a284
call dword [sym.imp.KERNEL32.dll_SetDllDirectoryW]
mov esi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push str.SetDefaultDllDirectories
push 0x41a3e4
call esi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x407fa0
push 0x800
call eax
lea ecx, [ebp - 0x10d8]
call fcn.00402650
call fcn.004074c0
push 0
call esi
mov dword [ebp - 0x1098], eax
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
lea ecx, [ebp - 0x10bc]
call fcn.00401070
lea eax, [ebp - 0x10a0]
push eax
lea ecx, [ebp - 0x10bc]
call fcn.00402110
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
push 0x208
mov edi, eax
lea eax, [ebp - 0x20c]
push 0
push eax
call fcn.0040fce0
mov esi, 1
add esp, 0xc
cmp dword [ebp - 0x10a0], esi
jle 0x408058
lea ebx, [ebx]
push dword [edi + esi*4]
lea eax, [ebp - 0x20c]
push 0x104
push eax
call fcn.0040f044
mov ecx, dword [ebp - 0x10a0]
add esp, 0xc
lea eax, [ecx - 1]
cmp esi, eax
jge 0x408053
push 0x41aa20
lea eax, [ebp - 0x20c]
push 0x104
push eax
call fcn.0040f044
mov ecx, dword [ebp - 0x10a0]
add esp, 0xc
inc esi
cmp esi, ecx
jl 0x408010
lea eax, [ebp - 0x20c]
push 0x41aa24
push eax
call fcn.0040f33e
add esp, 8
test eax, eax
jne 0x408104
lea eax, [ebp - 0x20c]
push str._Embedding
push eax
call fcn.0040f33e
add esp, 8
test eax, eax
jne 0x408104
lea eax, [ebp - 0x20c]
push str._uninstall
push eax
call fcn.0040f33e
add esp, 8
test eax, eax
jne 0x408104
lea eax, [ebp - 0x20c]
push str._check
push eax
call fcn.0040f33e
add esp, 8
test eax, eax
jne 0x408104
lea eax, [ebp - 0x20c]
push str._update
push eax
call fcn.0040f33e
add esp, 8
test eax, eax
jne 0x408104
lea eax, [ebp - 0x20c]
push str._maintain
push eax
call fcn.0040f33e
add esp, 8
test eax, eax
jne 0x408104
lea eax, [ebp - 0x20c]
push str._refreshIEElevationPolicies
push eax
call fcn.0040f33e
add esp, 8
test eax, eax
je 0x40810b
mov byte [ebp - 0x10a4], 1
lea eax, [ebp - 0x20c]
push str._relaunched
push eax
call fcn.0040f33e
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 - 0x1090], cl
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea eax, [ebp - 0xc34]
push eax
lea eax, [ebp - 0xa2c]
push 0x104
push eax
call fcn.0040f0b0
lea eax, [ebp - 0xa2c]
push 0x5c
push eax
call fcn.0040f298
add esp, 0x14
test eax, eax
je 0x408178
xor ecx, ecx
mov word [eax], cx
lea eax, [ebp - 0xa2c]
push eax
call fcn.004062e0
mov esi, dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
add esp, 4
test al, al
jne 0x4081dc
push 0x104
lea eax, [ebp - 0x1044]
push eax
call esi
lea eax, [ebp - 0x1044]
push eax
lea eax, [ebp - 0x414]
push 0x104
push eax
call fcn.0040f0b0
push str.MacromedTemp
lea eax, [ebp - 0x414]
push 0x104
push eax
call fcn.0040f044
lea eax, [ebp - 0x414]
push eax
call fcn.00403570
add esp, 0x1c
lea eax, [ebp - 0xa2c]
push eax
lea eax, [ebp - 0x414]
push 0x104
push eax
call fcn.0040f0b0
push str..dll
lea eax, [ebp - 0x414]
push 0x104
push eax
call fcn.0040f044
add esp, 0x18
lea eax, [ebp - 0x108c]
push eax
lea eax, [ebp - 0x414]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp eax, 0xffffffff
je 0x408317
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
push dword [ebp - 0x10a4]
lea eax, [ebp - 0x61c]
push eax
xor esi, esi
call fcn.00405c50
add esp, 8
test al, al
jne 0x408256
mov esi, 0x6e2
jmp 0x408310
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 0x40827a
mov esi, 0x6e0
jmp 0x408310
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.00406e10
add esp, 0x14
test al, al
mov ecx, 0x6e1
lea eax, [ebp - 0x61c]
cmove esi, ecx
push eax
lea ecx, [ebp - 0x1094]
call fcn.00401070
push 0
push 0x41a47c
lea eax, [ebp - 0x109c]
push eax
lea ecx, [ebp - 0x1094]
call fcn.00401ef0
lea ecx, [ebp - 0x109c]
call fcn.004010d0
lea eax, [ebp - 0x61c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea ecx, [ebp - 0x1094]
call fcn.00402110
push eax
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
lea ecx, [ebp - 0x1094]
call fcn.004010d0
push esi
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push dword [ebp - 0x1090]
lea eax, [ebp - 0x824]
push eax
call fcn.00407dd0
push 0x1c
call fcn.0040e2ac
add esp, 0xc
test eax, eax
je 0x408342
mov ecx, eax
call fcn.00408540
mov ebx, eax
jmp 0x408344
xor ebx, ebx
push 0x104
lea eax, [ebp - 0xe3c]
push eax
call esi
lea eax, [ebp - 0xe3c]
push eax
lea ecx, [ebp - 0x10b4]
call fcn.00401070
lea eax, [ebp - 0x10b4]
push eax
lea ecx, [ebp - 0x10ac]
call fcn.00401000
sub esp, 8
mov ecx, esp
push str.Macromed
call fcn.00401070
push 0x5c
lea ecx, [ebp - 0x10ac]
call fcn.004014e0
sub esp, 8
mov ecx, esp
push str.Flash
call fcn.00401070
push 0x5c
lea ecx, [ebp - 0x10ac]
call fcn.004014e0
push 0x2d4
call fcn.0040e2ac
add esp, 4
test eax, eax
je 0x4083de
lea ecx, [ebp - 0x824]
push ecx
push dword [ebp - 0x10a4]
mov ecx, eax
push ebx
push dword [ebp - 0x1098]
call fcn.00402730
mov edi, eax
jmp 0x4083e0
xor edi, edi
lea eax, [ebp - 0x10b4]
push eax
lea ecx, [ebp - 0x1094]
call fcn.00401000
sub esp, 8
lea eax, [ebp - 0x1094]
mov ecx, esp
push eax
call fcn.00401000
lea ecx, [edi + 0x200]
call fcn.00401820
lea ecx, [ebp - 0x1094]
call fcn.004010d0
lea eax, [ebp - 0x10ac]
push eax
lea ecx, [ebp - 0x1094]
call fcn.00401000
sub esp, 8
lea eax, [ebp - 0x1094]
mov ecx, esp
push eax
call fcn.00401000
lea ecx, [edi + 0x210]
call fcn.00401820
lea ecx, [ebp - 0x1094]
call fcn.004010d0
lea eax, [ebp - 0x10c4]
push eax
mov ecx, edi
call fcn.00405c20
sub esp, 8
lea eax, [ebp - 0x10bc]
mov ecx, esp
push eax
call fcn.00401000
mov ecx, edi
call fcn.00403740
mov dword [ebp - 0x1098], eax
lea eax, [ebp - 0x10cc]
push eax
mov ecx, edi
call fcn.00405e60
mov esi, dword [ebx]
sub esp, 8
mov ecx, esp
push str.FlashInstall32.log
call fcn.00401070
push 0x5c
lea ecx, [ebp - 0x10c4]
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.00408630
push ebx
call fcn.0040e320
add esp, 4
test edi, edi
je 0x4084de
mov ecx, edi
call fcn.00402d80
push edi
call fcn.0040e320
add esp, 4
xor esi, esi
cmp dword [0x425004], esi
jle 0x408503
mov edi, dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov edi, edi
mov eax, dword [0x425000]
push dword [eax + esi*4]
call edi
inc esi
cmp esi, dword [0x425004]
jl 0x4084f0
push dword [0x425000]
mov dword [0x425004], 0
call fcn.0040e320
add esp, 4
mov dword [0x425000], 0
push dword [ebp - 0x1098]
call dword [sym.imp.KERNEL32.dll_ExitProcess]