Function at 0x41e7a4
Capabilities:
Accept command line arguments
Set environment variable

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x59c
mov eax, dword [0x448020]
xor eax, esp
mov dword [esp + 0x598], eax
push ebx
push esi
push edi
call fcn.00416683
mov ecx, 0x449980
call fcn.00411b18
lea ecx, [esp + 0x10]
call fcn.0041d29c
lea ecx, [esp + 0xd8]
call fcn.004021e6
lea ecx, [esp + 0xf0]
call fcn.004021e6
lea ecx, [esp + 0x108]
call fcn.004021e6
lea ecx, [esp + 0x120]
call fcn.004021e6
push 0x400
xor ebx, ebx
lea eax, [esp + 0x13c]
push ebx
push eax
call fcn.004245b0
add esp, 0xc
lea eax, [esp + 0xd8]
mov ecx, 0x449a10
push eax
call fcn.0041eb36
lea ecx, [esp + 0xd8]
call fcn.0041e781
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov esi, eax
test esi, esi
je 0x41e944
push esi
lea ecx, [esp + 0x34]
call fcn.00401d16
lea ecx, [esp + 0x30]
call fcn.0041ec05
lea ecx, [esp + 0x30]
call fcn.00401e5c
cmp byte [0x4499bd], bl
je 0x41e928
push str.winrarsfxmappingfile.tmp
push ebx
mov esi, 0xf001f
push esi
call dword [sym.imp.KERNEL32.dll_OpenFileMappingW]
mov edi, eax
test edi, edi
je 0x41e91f
push 9
push ebx
push ebx
push esi
push edi
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov ebx, eax
test ebx, ebx
je 0x41e91d
lea ecx, [ebx + 1]
call fcn.00408661
push ebx
mov esi, eax
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
lea eax, [esi + 9]
xor ebx, ebx
push eax
push ebx
push ebx
push 0xf001f
push edi
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov esi, eax
test esi, esi
je 0x41e91f
lea edx, [esi + 9]
mov ecx, 0x449a10
push edx
call fcn.0041e716
mov ecx, 0x449a10
mov byte [esi], 1
call fcn.0041eb88
push 1
push ebx
mov ebx, 0x449a70
mov edx, 0x400
mov ecx, ebx
call fcn.00414df1
push ebx
mov ecx, 0x4499f0
call fcn.00414d2a
mov edx, 0x400
mov ecx, ebx
call fcn.00414ca7
push esi
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
xor ebx, ebx
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x41e944
push esi
lea ecx, [esp + 0x34]
call fcn.00401d16
lea ecx, [esp + 0x30]
call fcn.0041eb88
lea ecx, [esp + 0x30]
call fcn.00401e5c
lea ecx, [esp + 0x30]
call fcn.00411a36
mov esi, 0x449e70
push eax
mov ecx, esi
call fcn.00403060
lea ecx, [esp + 0x30]
call fcn.00401e5c
mov ecx, esi
call fcn.0040126f
push eax
push str.sfxname
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
lea eax, [esp + 0x20]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx eax, word [esp + 0x2e]
push eax
movzx eax, word [esp + 0x30]
push eax
movzx eax, word [esp + 0x32]
push eax
movzx eax, word [esp + 0x34]
push eax
movzx eax, word [esp + 0x36]
push eax
movzx eax, word [esp + 0x36]
push eax
movzx eax, word [esp + 0x38]
push eax
push str._4d__02d__02d__02d__02d__02d__03d
lea eax, [esp + 0x558]
push 0x32
push eax
call fcn.0040f8b8
add esp, 0x28
lea eax, [esp + 0x538]
push eax
push str.sfxstime
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov esi, eax
push 0x64
push esi
mov dword [0x4497d4], esi
mov dword [0x4497d0], esi
call dword [sym.imp.USER32.dll_LoadIconW]
push ecx
mov dword [0x449e8c], eax
call fcn.00412959
lea ecx, [esp + 0x90]
call fcn.0041b96a
lea ecx, [esp + 0x48]
call fcn.0041b96a
push ebx
push 0x41eda0
push ebx
lea eax, [esp + 0x9c]
mov dword [0x4497e0], eax
lea eax, [esp + 0x54]
push str.STARTDLG
push esi
mov dword [0x4497e4], eax
call dword [sym.imp.USER32.dll_DialogBoxParamW]
lea ecx, [esp + 0x48]
mov dword [0x4497e4], ebx
mov dword [0x4497e0], ebx
call fcn.0041b9ca
lea ecx, [esp + 0x90]
call fcn.0041b9ca
mov eax, dword [0x449ec8]
test eax, eax
je 0x41ea6c
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp byte [0x449998], 0
je 0x41ea7a
call fcn.004211ad
mov ecx, 0x449a00
call fcn.00414c84
push dword [0x449e8c]
call dword [sym.imp.GDI32.dll_DeleteObject]
mov eax, dword [0x449ea8]
test eax, eax
je 0x41eaa0
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
call fcn.0040df4d
test eax, eax
jne 0x41eac0
cmp byte [0x4497f1], al
je 0x41eac0
push 0xff
mov ecx, 0x449850
call fcn.0040a0ee
mov ecx, dword [0x449ecc]
mov byte [0x4497f1], 1
test ecx, ecx
je 0x41eae2
call fcn.00421149
push dword [0x449ecc]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
call fcn.0040df4d
cmp byte [0x449972], 0
mov esi, eax
je 0x41eb14
cmp byte [0x449973], 0
mov eax, dword [0x448bf4]
je 0x41eb0e
mov esi, dword [0x449eac]
test eax, eax
jle 0x41eb14
add esi, eax
jmp 0x41eb14
test eax, eax
jns 0x41eb14
sub esi, eax
lea ecx, [esp + 0x10]
call fcn.0041d2fb
mov ecx, dword [esp + 0x5a4]
mov eax, esi
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00422945
mov esp, ebp
pop ebp
ret 0x10