Function at 0x427098
Capabilities:
Get common file path

Disassembly:
lea ecx, [esp + 4]
and esp, 0xfffffff0
push dword [ecx - 4]
push ebp
mov ebp, esp
push ebx
push ecx
sub esp, 0x150
call fcn.0041ff40
mov eax, dword [0xc6f044]
mov dword [ebp - 0xc], eax
xor eax, eax
lea eax, [ebp - 0x110]
mov dword [esp + 4], eax
mov dword [esp], 0x104
mov eax, dword [sym.imp.KERNEL32.dll_GetTempPathA]
call eax
sub esp, 8
mov dword [ebp - 0x12c], eax
cmp dword [ebp - 0x12c], 0
jne 0x4270fc
mov dword [esp], str.Failed_to_get_temp_path
call sub.msvcrt.dll_perror
mov eax, 1
jmp 0x427302
mov dword [esp], str..zip
call fcn.00426f50
mov dword [ebp - 0x128], eax
mov dword [esp], str..exe
call fcn.00426f50
mov dword [ebp - 0x124], eax
lea eax, [ebp - 0x110]
mov dword [esp], eax
call sub.msvcrt.dll_strlen
mov ebx, eax
mov eax, dword [ebp - 0x128]
mov dword [esp], eax
call sub.msvcrt.dll_strlen
add eax, ebx
add eax, 1
mov dword [esp], eax
call sub.msvcrt.dll_malloc
mov dword [ebp - 0x120], eax
lea eax, [ebp - 0x110]
mov dword [esp], eax
call sub.msvcrt.dll_strlen
mov ebx, eax
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
call sub.msvcrt.dll_strlen
add eax, ebx
add eax, 1
mov dword [esp], eax
call sub.msvcrt.dll_malloc
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x128]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x110]
mov dword [esp + 8], eax
mov dword [esp + 4], str._s_s
mov eax, dword [ebp - 0x120]
mov dword [esp], eax
call fcn.00427464
mov eax, dword [ebp - 0x124]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x110]
mov dword [esp + 8], eax
mov dword [esp + 4], str._s_s
mov eax, dword [ebp - 0x11c]
mov dword [esp], eax
call fcn.00427464
lea eax, [ebp - 0x134]
mov dword [ebp - 0x118], eax
lea eax, [ebp - 0x130]
mov dword [ebp - 0x114], eax
mov eax, dword [ebp - 0x118]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0x42731c
lea eax, [ebp - 0x110]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x25003f
mov dword [esp], 0x4280e0
call fcn.0041f68b
mov dword [esp], 0x64
mov eax, dword [sym.imp.KERNEL32.dll_Sleep]
call eax
sub esp, 4
mov eax, dword [ebp - 0x114]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0x42731c
lea eax, [ebp - 0x110]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x5beebc
mov dword [esp], 0x678120
call fcn.0041f68b
mov dword [esp], str.after_n
call fcn.00427400
mov eax, dword [ebp - 0x130]
mov dword [esp + 4], 0xffffffff
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call eax
sub esp, 8
mov eax, dword [ebp - 0x134]
mov dword [esp + 4], 0xffffffff
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call eax
sub esp, 8
cmp dword [ebp - 0x128], 0
je 0x4272b8
mov eax, dword [ebp - 0x128]
mov dword [esp], eax
call sub.msvcrt.dll_free
cmp dword [ebp - 0x124], 0
je 0x4272cf
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
call sub.msvcrt.dll_free
cmp dword [ebp - 0x120], 0
je 0x4272e6
mov eax, dword [ebp - 0x120]
mov dword [esp], eax
call sub.msvcrt.dll_free
cmp dword [ebp - 0x11c], 0
je 0x4272fd
mov eax, dword [ebp - 0x11c]
mov dword [esp], eax
call sub.msvcrt.dll_free
mov eax, 0
mov edx, dword [ebp - 0xc]
sub edx, dword [0xc6f044]
je 0x427312
call fcn.0041fe50
lea esp, [ebp - 8]
pop ecx
pop ebx
pop ebp
lea esp, [ecx - 4]
ret