Function at 0x4027e4
Capabilities:
Create process on windows
Get common file path
Terminate process

Disassembly:
mov eax, 0x44d6aa
call fcn.0042912c
sub esp, 0x6f0
push ebx
push esi
push edi
lea ecx, [ebp - 0x70]
call fcn.0040eed0
xor ebx, ebx
lea ecx, [ebp - 0x58]
mov dword [ebp - 4], ebx
call fcn.0040eed0
cmp dword [ebp + 8], ebx
mov byte [ebp - 4], 1
je 0x40282b
push ebx
push 0x3e9
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
mov esi, 0x472138
mov ecx, esi
call fcn.00404ad3
test al, al
mov edi, 0x3e8
je 0x402884
push dword [ebp + 8]
call fcn.00402223
test al, al
mov eax, dword [0x472418]
pop ecx
jne 0x402879
cmp eax, ebx
je 0x402863
push str.Password_is_incorrect._r_n
push eax
call fcn.00428cf0
pop ecx
pop ecx
push ebx
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_EndDialog]
push ebx
call dword [sym.imp.USER32.dll_PostQuitMessage]
jmp 0x402d4f
cmp eax, ebx
je 0x4028d2
push str.Password_verified..._r_n
jmp 0x402892
mov eax, dword [0x472418]
cmp eax, ebx
je 0x4028d2
push str.Not_encrypted._r_n
push eax
call fcn.00428cf0
cmp dword [0x472418], ebx
pop ecx
pop ecx
je 0x4028d2
push edi
call fcn.0042914b
pop ecx
mov dword [ebp - 0x14], eax
push eax
push edi
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
push dword [ebp - 0x14]
push str.Current_working_directory:__s_r_n
push dword [0x472418]
call fcn.00428cf0
push dword [ebp - 0x14]
call fcn.00428c8f
add esp, 0x10
lea ecx, [ebp - 0x40]
call fcn.00406c70
lea ecx, [ebp - 0x3cc]
mov byte [ebp - 4], 2
call fcn.00409b70
lea eax, [ebp - 0x3cc]
mov ecx, esi
push eax
mov byte [ebp - 4], 3
call fcn.00404af5
lea ecx, [ebp - 0x3cc]
call fcn.00409cb0
test eax, eax
je 0x402b2e
lea ecx, [ebp - 0x3cc]
call fcn.0040a8d0
push eax
lea ecx, [ebp - 0x40]
call fcn.004064f0
lea ecx, [ebp - 0xfc]
call fcn.00406c70
lea eax, [ebp - 0x40]
lea ecx, [ebp - 0xfc]
push eax
mov byte [ebp - 4], 4
call fcn.00407820
lea ecx, [ebp - 0x40]
call fcn.004063e0
lea eax, [ebp - 0x40]
lea ecx, [ebp - 0xfc]
push eax
call fcn.00407d40
test al, al
mov edi, 0x45b928
jne 0x40297e
push edi
lea ecx, [ebp - 0xfc]
call fcn.00407b30
test al, al
jne 0x40297e
push 0x45b924
push edi
lea ecx, [ebp - 0x40]
call fcn.00407540
push 0x2f
push 0x5c
lea ecx, [ebp - 0x40]
call fcn.004059e0
push 0x5c
push 0x2f
lea ecx, [ebp - 0x40]
call fcn.004059e0
mov dword [ebp - 0x14], ebx
push edi
lea ecx, [ebp - 0x40]
call fcn.00407b30
test al, al
je 0x4029c0
push 0x45b924
push edi
lea ecx, [ebp - 0x40]
call fcn.00407540
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x3e8
jle 0x402999
cmp dword [0x472418], ebx
je 0x4029e4
lea ecx, [ebp - 0x40]
call fcn.00427660
push eax
push str.unzipDir____s__r_n
push dword [0x472418]
call fcn.00428cf0
add esp, 0xc
push str.Debug
mov ecx, esi
call fcn.004049cb
test eax, eax
setne al
cmp al, bl
jne 0x402b1d
cmp dword [0x472418], ebx
je 0x402a21
lea ecx, [ebp - 0x40]
call fcn.00427660
push eax
push str.Check_create_extract_dir:___s__r_n
push dword [0x472418]
call fcn.00428cf0
add esp, 0xc
lea eax, [ebp - 0x58]
push ebx
push eax
lea ecx, [ebp - 0x40]
call fcn.00427660
push eax
call fcn.00410bb0
add esp, 0xc
cmp al, bl
jne 0x402ae5
cmp dword [0x472418], ebx
je 0x402a63
lea ecx, [ebp - 0x40]
call fcn.00427660
push eax
push str.failed_to_ensure_dir_exists:___s__r_n
push dword [0x472418]
call fcn.00428cf0
add esp, 0xc
lea ecx, [ebp - 0x234]
call fcn.00409b70
push str.Failed_to_ensure_dir_exists:
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 5
call fcn.0040a800
lea ecx, [ebp - 0x40]
call fcn.00427660
push eax
lea ecx, [ebp - 0x234]
call fcn.0040a800
push ebx
push 0x45b504
lea ecx, [ebp - 0x234]
call fcn.0040a040
push eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_MessageBoxW]
push ebx
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_EndDialog]
push ebx
call dword [sym.imp.USER32.dll_PostQuitMessage]
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 4
call fcn.00409c40
lea ecx, [ebp - 0xfc]
mov byte [ebp - 4], 3
call fcn.00406f70
jmp 0x402d34
cmp dword [0x472418], ebx
je 0x402b1d
lea ecx, [ebp - 0x58]
call fcn.00428940
test eax, eax
je 0x402b1d
push ebx
lea ecx, [ebp - 0x58]
call fcn.0040ef30
mov ecx, eax
call fcn.00427660
push eax
push str.created_unzip_dir:___s__r_n
push dword [0x472418]
call fcn.00428cf0
add esp, 0xc
lea ecx, [ebp - 0xfc]
mov byte [ebp - 4], 3
call fcn.00406f70
jmp 0x402b97
mov eax, dword [0x472418]
cmp eax, ebx
je 0x402b44
push str.Selecting_temp_dir_for_unzipping..._r_n
push eax
call fcn.00428cf0
pop ecx
pop ecx
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x58]
push eax
push dword [ebp + 8]
call fcn.0040245c
add esp, 0xc
test al, al
je 0x402d34
cmp dword [0x472418], ebx
je 0x402b97
lea ecx, [ebp - 0x58]
call fcn.00428940
test eax, eax
je 0x402b97
push ebx
lea ecx, [ebp - 0x58]
call fcn.0040ef30
mov ecx, eax
call fcn.00427660
push eax
push str.created_unzip_dir:___s__r_n
push dword [0x472418]
call fcn.00428cf0
add esp, 0xc
mov edi, 0x45b8a0
lea ecx, [ebp - 0x40]
push edi
call fcn.004066d0
test al, al
je 0x402bb7
push 0x47244c
push edi
lea ecx, [ebp - 0x40]
call fcn.00407390
cmp dword [0x472418], ebx
je 0x402bdb
lea ecx, [ebp - 0x40]
call fcn.00427660
push eax
push str.Final_unzip_dir:___s_..._r_n
push dword [0x472418]
call fcn.00428cf0
add esp, 0xc
push str.Debug
mov ecx, esi
call fcn.004049cb
test eax, eax
lea ecx, [ebp - 0x674]
setne byte [ebp - 0xd]
call fcn.00409b70
lea eax, [ebp - 0x674]
mov byte [ebp - 4], 6
push eax
call fcn.0040bb10
pop ecx
lea ecx, [ebp - 0x40]
call fcn.0040f260
test eax, eax
je 0x402d7c
lea ecx, [ebp - 0x234]
call fcn.00409b70
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 7
call fcn.00427660
push eax
lea ecx, [ebp - 0x234]
call fcn.0040a800
cmp dword [0x472418], ebx
je 0x402c63
lea ecx, [ebp - 0x234]
call fcn.0040a8d0
push eax
push str.Setting_CWD___s__r_n
push dword [0x472418]
call fcn.00428cf0
add esp, 0xc
cmp byte [ebp - 0xd], bl
jne 0x402d6d
lea eax, [ebp - 0x234]
push eax
call fcn.0040d6c0
movzx eax, al
cmp eax, ebx
pop ecx
jne 0x402d6d
cmp dword [0x472418], ebx
je 0x402ca8
lea ecx, [ebp - 0x40]
call fcn.00427660
push eax
push str.failed_to_set_current_dir:___s__r_n
push dword [0x472418]
call fcn.00428cf0
add esp, 0xc
lea ecx, [ebp - 0x344]
call fcn.00409b70
push str.Failed_to_set_current_dir:
lea ecx, [ebp - 0x344]
mov byte [ebp - 4], 8
call fcn.0040a800
lea ecx, [ebp - 0x40]
call fcn.00427660
push eax
lea ecx, [ebp - 0x344]
call fcn.0040a800
push ebx
push 0x45b504
lea ecx, [ebp - 0x344]
call fcn.0040a040
push eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_MessageBoxW]
push ebx
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_EndDialog]
push ebx
call dword [sym.imp.USER32.dll_PostQuitMessage]
lea ecx, [ebp - 0x344]
mov byte [ebp - 4], 7
call fcn.00409c40
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 6
call fcn.00409c40
lea ecx, [ebp - 0x674]
mov byte [ebp - 4], 3
call fcn.00409c40
lea ecx, [ebp - 0x3cc]
mov byte [ebp - 4], 2
call fcn.00409c40
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 1
call fcn.00406f70
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], bl
call fcn.0040eef0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x70]
call fcn.0040eef0
xor al, al
jmp 0x4035b5
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 6
call fcn.00409c40
push str.Cleanup
mov ecx, esi
call fcn.004049cb
test eax, eax
setne byte [ebp - 0x14]
cmp byte [ebp - 0x14], bl
je 0x402da9
mov eax, dword [0x472418]
cmp eax, ebx
je 0x402da9
push str.cleanup_is_requested..._r_n
push eax
call fcn.00428cf0
pop ecx
pop ecx
mov ecx, esi
call fcn.00404c31
test al, al
jne 0x402dcd
mov eax, dword [0x472418]
cmp eax, ebx
je 0x402dca
push str.WaitForSetup_if_false__therefore_cannot_cleanup_files._r_n
push eax
call fcn.00428cf0
pop ecx
pop ecx
mov byte [ebp - 0x14], bl
push str.AutoExit
mov ecx, esi
call fcn.004049cb
test eax, eax
setne al
cmp al, bl
je 0x402dfb
mov eax, dword [0x472418]
cmp eax, ebx
je 0x402df8
push str.AutoExit_if_true__therefore_cannot_cleanup_files._r_n
push eax
call fcn.00428cf0
pop ecx
pop ecx
mov byte [ebp - 0x14], bl
lea ecx, [ebp - 0x1ac]
call fcn.00406c70
push dword [ebp - 0x14]
lea eax, [ebp - 0x70]
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 9
push eax
lea eax, [ebp - 0x1ac]
push eax
call fcn.00427660
push eax
push dword [ebp + 8]
call fcn.00401ff8
mov byte [ebp - 0x15], al
mov eax, dword [0x472444]
add esp, 0x14
cmp eax, ebx
mov edi, 0x3f0
je 0x402e73
cmp byte [ebp - 0x15], bl
je 0x403526
push str.Finished_unzipping.
push 0x3f8
push eax
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
push edi
push dword [0x472444]
call dword [sym.imp.USER32.dll_GetDlgItem]
push ebx
push 0x64
push 0x402
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
cmp byte [ebp - 0x15], bl
je 0x403526
push str.Debug
mov ecx, esi
call fcn.004049cb
test eax, eax
mov eax, dword [0x472418]
setne byte [ebp - 0xd]
cmp eax, ebx
je 0x402ea4
push str.Unzip_complete..._r_n
push eax
call fcn.00428cf0
pop ecx
pop ecx
lea ecx, [ebp - 0x454]
call fcn.00409b70
lea eax, [ebp - 0x454]
mov ecx, esi
push eax
mov byte [ebp - 4], 0xa
call fcn.00404bcb
lea ecx, [ebp - 0x454]
call fcn.00409cb0
test eax, eax
je 0x402ef7
cmp dword [0x472418], ebx
je 0x402ef7
lea ecx, [ebp - 0x454]
call fcn.0040a8d0
push eax
push str.setup_filename:___s__r_n
push dword [0x472418]
call fcn.00428cf0
add esp, 0xc
cmp byte [ebp - 0xd], bl
jne 0x40350b
lea ecx, [ebp - 0x454]
call fcn.00409cb0
test eax, eax
je 0x40350b
lea ecx, [ebp - 0x98]
call fcn.00406c70
lea ecx, [ebp - 0x454]
mov byte [ebp - 4], 0xb
call fcn.0040a8d0
push eax
lea ecx, [ebp - 0x98]
call fcn.004064f0
lea ecx, [ebp - 0x5ec]
call fcn.00409b70
lea eax, [ebp - 0x5ec]
mov ecx, esi
push eax
mov byte [ebp - 4], 0xc
call fcn.00404be5
lea ecx, [ebp - 0x5ec]
mov dword [ebp - 0x14], ebx
call fcn.00409cb0
test eax, eax
je 0x402f90
lea ecx, [ebp - 0x5ec]
call fcn.0040a460
mov dword [ebp - 0x14], eax
mov eax, dword [0x472418]
cmp eax, ebx
je 0x402f90
push dword [ebp - 0x14]
push str.setup_args:___s__r_n
push eax
call fcn.00428cf0
add esp, 0xc
push 0x2f
push 0x5c
lea ecx, [ebp - 0x98]
call fcn.004059e0
push 0x45b740
push 0x45b73c
lea ecx, [ebp - 0x98]
call fcn.00407540
push 0x5c
push 0x2f
lea ecx, [ebp - 0x98]
call fcn.004059e0
cmp dword [0x472418], ebx
je 0x403006
lea ecx, [ebp - 0x40]
call fcn.00427660
push eax
push str.working_dir:___s__r_n
push dword [0x472418]
call fcn.00428cf0
add esp, 0xc
lea ecx, [ebp - 0x98]
call fcn.00427660
push eax
push str.running_exe:___s__r_n
push dword [0x472418]
call fcn.00428cf0
add esp, 0xc
push edi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItem]
cmp eax, ebx
je 0x403023
push ebx
push 0x64
push 0x402
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
lea ecx, [ebp - 0x4dc]
call fcn.00409b70
push dword [ebp - 0x14]
lea ecx, [ebp - 0x4dc]
mov byte [ebp - 4], 0xd
call fcn.0040a800
push str.shell
lea ecx, [ebp - 0x98]
call fcn.00407de0
test al, al
je 0x40319d
mov ecx, esi
call fcn.00404c31
test al, al
lea ecx, [ebp - 0x4dc]
je 0x403072
call fcn.0040a460
push eax
push ebx
jmp 0x40307a
call fcn.0040a460
push eax
push 1
call fcn.0040259b
pop ecx
mov byte [ebp - 0xd], al
pop ecx
lea ecx, [ebp - 0x2bc]
call fcn.00409b70
lea eax, [ebp - 0x2bc]
mov ecx, esi
push eax
push str.AutoExit
mov byte [ebp - 4], 0xe
call fcn.004049b2
push 0x45b284
lea ecx, [ebp - 0x2bc]
call fcn.0040ab80
test al, al
je 0x4030c0
push ebx
call fcn.0042921b
lea eax, [ebp - 0x70]
push eax
call fcn.0040262f
cmp byte [ebp - 0xd], bl
pop ecx
jne 0x40318e
cmp dword [0x472418], ebx
je 0x4030fa
lea ecx, [ebp - 0x98]
call fcn.00427660
push eax
push str.failed_to_run:___s__r_n
push dword [0x472418]
call fcn.00428cf0
add esp, 0xc
lea ecx, [ebp - 0x184]
call fcn.00409b70
push str.Failed_to_run
lea ecx, [ebp - 0x184]
mov byte [ebp - 4], 0xf
call fcn.0040a800
lea ecx, [ebp - 0x98]
call fcn.00427660
push eax
lea ecx, [ebp - 0x184]
call fcn.0040a800
push str.__working_dir_
lea ecx, [ebp - 0x184]
call fcn.0040a800
lea ecx, [ebp - 0x40]
call fcn.00427660
push eax
lea ecx, [ebp - 0x184]
call fcn.0040a800
push str.__check_to_see_if_this_file_is_in_the_EXE_
lea ecx, [ebp - 0x184]
call fcn.0040a800
push ebx
push 0x45b504
lea ecx, [ebp - 0x184]
call fcn.0040a040
push eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_MessageBoxW]
lea ecx, [ebp - 0x184]
mov byte [ebp - 4], 0xe
call fcn.00409c40
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x2bc]
jmp 0x4034d7
lea ecx, [ebp - 0x6fc]
call fcn.00409b70
lea ecx, [ebp - 0x564]
mov byte [ebp - 4], 0x10
call fcn.00409b70
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x11
call fcn.00427660
push eax
lea ecx, [ebp - 0x6fc]
call fcn.0040a800
lea ecx, [ebp - 0x40]
call fcn.00427660
push eax
lea ecx, [ebp - 0x564]
call fcn.0040a800
lea ecx, [ebp - 0x2bc]
call fcn.00409b70
lea eax, [ebp - 0x2bc]
mov byte [ebp - 4], 0x12
push eax
lea eax, [ebp - 0x6fc]
push eax
lea eax, [ebp - 0x564]
push eax
call fcn.0040de10
add esp, 0xc
cmp dword [0x472418], ebx
je 0x40328b
push 0x3e8
call fcn.0042914b
pop ecx
mov edi, eax
push edi
push 0x3e8
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
push edi
push str.Current_working_directory:__s_r_n
push dword [0x472418]
call fcn.00428cf0
push edi
call fcn.00428c8f
add esp, 0x10
lea ecx, [ebp - 0x2bc]
call fcn.0040a8d0
push eax
push str.full_path_to_auto_run_EXE:___s__r_n
push dword [0x472418]
call fcn.00428cf0
add esp, 0xc
lea ecx, [ebp - 0x564]
call fcn.0040a8d0
push eax
push str.unzipDir:___s__r_n
push dword [0x472418]
call fcn.00428cf0
add esp, 0xc
push 0x3c
lea eax, [ebp - 0xd4]
pop edi
push edi
push ebx
push eax
call fcn.00428b10
add esp, 0xc
lea ecx, [ebp - 0x2bc]
mov dword [ebp - 0xd4], edi
mov dword [ebp - 0xd0], 0x40
mov dword [ebp - 0xcc], ebx
mov dword [ebp - 0xc8], ebx
call fcn.0040a040
lea ecx, [ebp - 0x4dc]
mov dword [ebp - 0xc4], eax
call fcn.0040a040
lea ecx, [ebp - 0x564]
mov dword [ebp - 0xc0], eax
call fcn.0040a040
mov dword [ebp - 0xbc], eax
lea eax, [ebp - 0xd4]
push eax
mov dword [ebp - 0xb8], 5
mov dword [ebp - 0xb4], ebx
call dword [sym.imp.SHELL32.dll_ShellExecuteExW]
cmp eax, ebx
je 0x4033ea
lea ecx, [ebp - 0x344]
call fcn.00409b70
lea eax, [ebp - 0x344]
mov ecx, esi
push eax
push str.AutoExit
mov byte [ebp - 4], 0x13
call fcn.004049b2
push 0x45b284
lea ecx, [ebp - 0x344]
call fcn.0040ab80
test al, al
je 0x40334f
push ebx
call fcn.0042921b
mov ecx, esi
call fcn.00404c31
test al, al
mov eax, dword [0x472418]
je 0x4033c3
cmp eax, ebx
je 0x403370
push str.waiting_for_setup_EXE_to_complete..._r_n
push eax
call fcn.00428cf0
pop ecx
pop ecx
push 0xffffffffffffffff
push dword [ebp - 0x9c]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea eax, [ebp + 8]
mov dword [ebp + 8], ebx
push eax
push dword [ebp - 0x9c]
call dword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
test eax, eax
je 0x4033b7
mov eax, dword [0x472418]
cmp eax, ebx
je 0x4033af
push dword [ebp + 8]
push str.GetExitCodeProcess:_exitCode___d_r_n
push eax
call fcn.00428cf0
add esp, 0xc
mov eax, dword [ebp + 8]
mov dword [0x472424], eax
lea eax, [ebp - 0x70]
push eax
call fcn.0040262f
pop ecx
jmp 0x4033db
cmp eax, ebx
je 0x4033d4
push str.NOT_waiting_for_setup_EXE_to_complete..._r_n
push eax
call fcn.00428cf0
pop ecx
pop ecx
mov byte [0x47243c], 1
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x344]
jmp 0x4034aa
lea eax, [ebp - 0x70]
push eax
call fcn.0040262f
cmp dword [0x472418], ebx
pop ecx
je 0x40341b
lea ecx, [ebp - 0x98]
call fcn.00427660
push eax
push str.failed_to_run:___s__r_n
push dword [0x472418]
call fcn.00428cf0
add esp, 0xc
lea ecx, [ebp - 0x184]
call fcn.00409b70
push str.Failed_to_run
lea ecx, [ebp - 0x184]
mov byte [ebp - 4], 0x14
call fcn.0040a800
lea ecx, [ebp - 0x98]
call fcn.00427660
push eax
lea ecx, [ebp - 0x184]
call fcn.0040a800
push str.__working_dir_
lea ecx, [ebp - 0x184]
call fcn.0040a800
lea ecx, [ebp - 0x40]
call fcn.00427660
push eax
lea ecx, [ebp - 0x184]
call fcn.0040a800
push str.__check_to_see_if_this_file_is_in_the_EXE_
lea ecx, [ebp - 0x184]
call fcn.0040a800
push ebx
push 0x45b504
lea ecx, [ebp - 0x184]
call fcn.0040a040
push eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_MessageBoxW]
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x184]
call fcn.00409c40
lea ecx, [ebp - 0x2bc]
mov byte [ebp - 4], 0x11
call fcn.00409c40
lea ecx, [ebp - 0x564]
mov byte [ebp - 4], 0x10
call fcn.00409c40
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x6fc]
call fcn.00409c40
lea ecx, [ebp - 0x4dc]
mov byte [ebp - 4], 0xc
call fcn.00409c40
lea ecx, [ebp - 0x5ec]
mov byte [ebp - 4], 0xb
call fcn.00409c40
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xa
call fcn.00406f70
jmp 0x403515
lea eax, [ebp - 0x70]
push eax
call fcn.0040262f
pop ecx
lea ecx, [ebp - 0x454]
mov byte [ebp - 4], 9
call fcn.00409c40
jmp 0x40354b
lea eax, [ebp - 0x70]
push eax
call fcn.0040262f
pop ecx
push ebx
push str.Error
lea ecx, [ebp - 0x1ac]
call fcn.00427660
push eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_MessageBoxA]
lea eax, [ebp - 0x674]
push eax
call fcn.0040d6c0
lea eax, [ebp - 0x58]
push eax
call fcn.0040262f
pop ecx
mov byte [ebp - 4], 6
pop ecx
lea ecx, [ebp - 0x1ac]
call fcn.00406f70
lea ecx, [ebp - 0x674]
mov byte [ebp - 4], 3
call fcn.00409c40
lea ecx, [ebp - 0x3cc]
mov byte [ebp - 4], 2
call fcn.00409c40
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 1
call fcn.00406f70
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], bl
call fcn.0040eef0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x70]
call fcn.0040eef0
mov al, byte [ebp - 0x15]
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret