Function at 0x40402d
Capabilities:
Accept command line arguments
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x40
push ebx
push esi
push edi
xor ebx, ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov edi, eax
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
lea ecx, [ebp - 0x28]
call fcn.0040140d
push 0x1c
call fcn.00404351
pop ecx
cmp eax, ebx
je 0x404065
mov ecx, eax
call fcn.004050a4
mov ebx, eax
lea eax, [ebp - 0x30]
push eax
call fcn.00406b14
pop ecx
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x20]
call fcn.00401037
push ecx
push ecx
mov ecx, esp
push str.Macromed
call fcn.0040140d
push 0x5c
lea ecx, [ebp - 0x20]
call fcn.00401510
push ecx
push ecx
mov ecx, esp
push 0x40b850
call fcn.0040140d
push 0x5c
lea ecx, [ebp - 0x20]
call fcn.00401510
push ecx
push ecx
lea eax, [ebp - 0x28]
mov ecx, esp
push eax
call fcn.00401037
call fcn.00401a20
pop ecx
pop ecx
test al, al
je 0x404102
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x10]
call fcn.00401037
mov esi, dword [ebx]
push ecx
push ecx
mov ecx, esp
push str.FlashInstall.log
add esi, 0x10
call fcn.0040140d
push 0x5c
lea ecx, [ebp - 0x10]
call fcn.00401510
push ecx
push ecx
mov ecx, esp
push eax
call fcn.00401037
mov ecx, ebx
call dword [esi]
lea ecx, [ebp - 0x10]
call fcn.00401471
push 0x1c8
call fcn.00404351
pop ecx
test eax, eax
je 0x40411e
push ebx
push edi
mov ecx, eax
call fcn.00402876
mov esi, eax
jmp 0x404120
xor esi, esi
push ecx
push ecx
lea eax, [ebp - 0x30]
mov ecx, esp
push eax
call fcn.00401037
mov ecx, esi
call fcn.004019ce
push ecx
push ecx
lea eax, [ebp - 0x20]
mov ecx, esp
push eax
call fcn.00401037
mov ecx, esi
call fcn.004019f7
mov ecx, esi
call fcn.00401fa9
mov ecx, esi
call fcn.004027c9
lea ecx, [ebp - 0x18]
call fcn.0040102d
mov edi, dword [esi + 0xbc]
push ecx
push ecx
mov ecx, esp
push 0x40b82c
call fcn.0040140d
mov ecx, edi
call fcn.00406d0c
mov edi, eax
test edi, edi
je 0x4041f3
cmp dword [edi + 0xc], 0
je 0x4041f3
push 0x40b828
lea ecx, [ebp - 0x18]
call fcn.004014af
push ecx
push ecx
mov eax, esp
push 0
lea ecx, [ebp - 0x28]
push ecx
push eax
mov ecx, esi
call fcn.00401af5
lea ecx, [ebp - 0x18]
call fcn.004014d9
push ecx
push ecx
mov ecx, esp
push 0x40b820
call fcn.0040140d
lea ecx, [ebp - 0x18]
call fcn.004014d9
mov eax, dword [edi + 0xc]
push ecx
push ecx
add eax, 4
mov ecx, esp
push eax
call fcn.00401037
lea ecx, [ebp - 0x18]
call fcn.004014d9
push ecx
push ecx
lea eax, [ebp - 0x28]
mov ecx, esp
push eax
call fcn.00401037
push 0x20
lea ecx, [ebp - 0x18]
call fcn.00401510
jmp 0x404208
push ecx
push ecx
lea eax, [ebp - 0x28]
mov ecx, esp
push eax
call fcn.00401037
lea ecx, [ebp - 0x18]
call fcn.00401479
mov edi, dword [esi + 0xbc]
push ecx
push ecx
mov ecx, esp
push 0x40b7f8
call fcn.0040140d
mov ecx, edi
call fcn.00406d0c
test eax, eax
je 0x404245
mov eax, dword [eax + 0xc]
test eax, eax
je 0x404245
push ecx
push ecx
add eax, 4
mov ecx, esp
push eax
call fcn.00401037
push 0x20
lea ecx, [ebp - 0x18]
call fcn.00401510
push ecx
push ecx
lea eax, [ebp - 0x18]
mov ecx, esp
push eax
call fcn.00401037
mov ecx, esi
call fcn.00402cf1
mov ecx, esi
call fcn.00403492
mov al, byte [esi + 0x19e]
mov byte [ebp - 1], al
mov al, byte [esi + 0xb0]
mov byte [ebp - 0xc], al
lea eax, [esi + 0xcc]
push eax
lea ecx, [ebp - 0x40]
call fcn.00401037
xor edi, edi
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
cmp edi, eax
jbe 0x40429b
mov eax, dword [ebx]
push edi
mov ecx, ebx
call dword [eax + 8]
inc edi
cmp eax, 2
jl 0x404283
mov eax, dword [ebx]
push edi
mov ecx, ebx
call dword [eax + 8]
cmp eax, 2
jl 0x4042b5
mov eax, dword [ebx]
push edi
mov ecx, ebx
call dword [eax + 4]
mov dword [ebp - 8], eax
jmp 0x4042b9
and dword [ebp - 8], 0
cmp byte [ebp - 1], 0
je 0x4042d5
push ecx
push ecx
mov ecx, esp
call fcn.0040102d
push 0xc
push 0
push 0
mov ecx, esi
call fcn.004025a7
lea eax, [esi + 0x174]
push eax
lea ecx, [ebp - 0x38]
call fcn.00401037
mov edi, dword [ebx]
push ecx
push ecx
mov ecx, esp
push str.FlashInstall.log
add edi, 0x1c
call fcn.0040140d
push 0x5c
lea ecx, [ebp - 0x38]
call fcn.00401510
push ecx
push ecx
mov ecx, esp
push eax
call fcn.00401037
mov ecx, ebx
call dword [edi]
mov ecx, esi
call fcn.00402b70
push esi
call fcn.00404365
cmp byte [ebp - 1], 0
pop ecx
je 0x40433b
push dword [ebp - 0xc]
lea eax, [ebp - 0x40]
push ecx
push ecx
mov ecx, esp
push eax
call fcn.00401037
call fcn.00401ec1
add esp, 0xc
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_ExitProcess]