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

Disassembly:
sub esp, 0xe0
mov eax, dword [0x44277c]
xor eax, esp
mov dword [esp + 0xdc], eax
push ebx
push ebp
push esi
push edi
push 1
call fcn.004128fa
push 0x800
push 0x453890
call fcn.0041c5cd
lea ecx, [esp + 0x10]
call fcn.0041ccc9
mov ebp, 0x7402
xor ebx, ebx
push ebp
push ebx
push 0x44c480
call fcn.00422630
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov esi, eax
test esi, esi
je 0x420457
push esi
call fcn.0041e862
cmp byte [0x455899], bl
je 0x420451
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 0x420448
push ebp
push ebx
push ebx
push esi
push edi
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov esi, eax
test esi, esi
je 0x420441
push ebp
push esi
push 0x44c480
call fcn.00424240
add esp, 0xc
mov byte [esi], 1
push 0x44c482
call fcn.0041ffca
push 1
push ebx
mov ebp, 0x400
mov ebx, 0x453482
push ebp
push ebx
call fcn.0041135b
push ebx
mov ecx, 0x45789c
call fcn.00411411
push ebp
push ebx
call fcn.0041144a
xor ebx, ebx
push esi
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x420457
push esi
call fcn.0041ffca
push 0x800
mov edi, 0x462cc0
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push edi
push str.sfxname
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
lea eax, [esp + 0x78]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx eax, word [esp + 0x86]
push eax
movzx eax, word [esp + 0x88]
push eax
movzx eax, word [esp + 0x8a]
push eax
movzx eax, word [esp + 0x8c]
push eax
movzx eax, word [esp + 0x8e]
push eax
movzx eax, word [esp + 0x8e]
push eax
movzx eax, word [esp + 0x90]
push eax
push str._4d__02d__02d__02d__02d__02d__03d
lea eax, [esp + 0xa8]
push 0x32
push eax
call fcn.00404c00
add esp, 0x28
lea eax, [esp + 0x88]
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 [0x44506c], esi
mov dword [0x445068], esi
call dword [sym.imp.USER32.dll_LoadIconW]
mov dword [0x462cbc], eax
call fcn.0041d9cd
push edi
mov ecx, 0x445070
mov dword [0x463cc0], eax
call fcn.0040f92e
lea ecx, [esp + 0x48]
call fcn.0041afd6
lea ecx, [esp + 0x18]
call fcn.0041afd6
push ebx
push 0x41dad0
push ebx
lea eax, [esp + 0x54]
mov dword [0x44c47c], eax
lea eax, [esp + 0x24]
push str.STARTDLG
push esi
mov dword [0x453884], eax
call dword [sym.imp.USER32.dll_DialogBoxParamW]
lea ecx, [esp + 0x18]
mov dword [0x453884], ebx
mov dword [0x44c47c], ebx
call fcn.0041b0a5
lea ecx, [esp + 0x48]
call fcn.0041b0a5
mov eax, dword [0x463ce0]
test eax, eax
je 0x420586
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp byte [0x454890], 0
je 0x420594
call fcn.0041cf79
mov ecx, 0x462ca0
call fcn.00411294
cmp dword [0x463cd4], 0
jbe 0x4205b3
push dword [0x463cc4]
call fcn.004216e1
pop ecx
push dword [0x462cbc]
call dword [sym.imp.GDI32.dll_DeleteObject]
mov eax, dword [0x463cc0]
test eax, eax
je 0x4205cf
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
cmp dword [0x4450c4], 0
jne 0x4205f0
cmp byte [0x44c46c], 0
je 0x4205f0
push 0xff
mov ecx, 0x4450c4
call fcn.00407d01
mov eax, dword [0x463ce4]
mov byte [0x44c46c], 1
test eax, eax
je 0x420612
push eax
call fcn.0042003a
push dword [0x463ce4]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp byte [0x463cd8], 0
mov esi, dword [0x4450c4]
je 0x420643
cmp byte [0x463cd9], 0
mov eax, dword [0x442728]
je 0x42063d
mov esi, dword [0x463cdc]
test eax, eax
jle 0x420643
add esi, eax
jmp 0x420643
test eax, eax
jns 0x420643
sub esi, eax
lea ecx, [esp + 0x10]
call fcn.0041cd2f
mov ecx, dword [esp + 0xec]
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004210e9
add esp, 0xe0
ret 0x10