Function at 0x4011c0
Capabilities:
Create process on windows
Set current directory

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x12dc
call fcn.0040c150
push ebx
push esi
push edi
mov dword [0x41bf60], 0
mov dword [0x41bf88], 0
push 0x4153dc
push 0x4153e0
call dword [0x4182a4]
push 0x4153dc
push str.TOTALEXTFILE
call dword [0x4182a4]
push 0x4153dc
push str.NEEDREBOOT
call dword [0x4182a4]
push 0x4153dc
push str.SILENT
call dword [0x4182a4]
push 0x41536e
push str.ARCFILEVER
call dword [0x4182a4]
push 0x415344
push str.ARCPRODVER
call dword [0x4182a4]
push str.USERPROFILE
push str.USERPROFILE
call fcn.004139c0
push dword [0x417004]
push str.SELLANG
call dword [0x4182a4]
push 0xa
lea eax, [ebp - 0x42]
push eax
movzx eax, word [0x417008]
push eax
call fcn.0040c1c0
add esp, 0xc
lea eax, [ebp - 0x42]
push eax
push str.PBLANGID
call dword [0x4182a4]
push 0x4152f6
push str.DESTPATH
call dword [0x4182a4]
push 0x4152de
push str.VCOMPMAIN
call dword [0x4182a4]
push 0x4152de
push str.PBDLGWIZLOOK
call dword [0x4182a4]
push 0x415286
push str.PBWIZLABEL
call dword [0x4182a4]
push str.Next
push str.PBDLGNEXTC
call dword [0x4182a4]
mov dword [0x41bd54], 0
mov byte [0x41bf84], 0
push str._LOCALAPPDATADIR_OLB
push str.DESTPATH
call dword [0x4182a4]
push str._PBSFXPATH_pbwaterm.png
push str.PBWIZWATERM
call dword [0x4182a4]
push str._PBSFXPATH_pbwelc_SELLANG_.md
push str.PBWELCRTF
call dword [0x4182a4]
push str._SILENT_
call dword [0x4182a8]
mov edx, eax
xor ecx, ecx
mov ax, word [edx + ecx]
cmp ax, word [ecx + 0x415184]
jne 0x401342
add ecx, 2
test ax, ax
jne 0x401329
xor eax, eax
jmp 0x401347
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x40135f
push section..text
push str.dlgwizwelc
call dword [0x4182ac]
mov esi, eax
jmp 0x401361
xor esi, esi
cmp esi, 2
je 0x40156f
cmp esi, 4
je 0x401576
inc dword [0x41bd54]
push str._SILENT_
call dword [0x4182a8]
mov edx, eax
xor ecx, ecx
mov ax, word [edx + ecx]
cmp ax, word [ecx + 0x415184]
jne 0x4013a1
add ecx, 2
test ax, ax
jne 0x401388
xor eax, eax
jmp 0x4013a6
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
sete bl
push str.Extracting
push str.PBEXTTEXT
call dword [0x4182a4]
push 0x4152de
push str.PBEXTHC
call dword [0x4182a4]
push str._PBSFXPATH_pbsplash.bmp
push str.PBSPLASHBMP
call dword [0x4182a4]
push 0x61c
lea eax, [ebp - 0x6a0]
push eax
push str._DESTPATH_
call dword [0x41829c]
mov eax, dword [0x41bf74]
add eax, 0x12
mov dword [ebp - 0x12dc], eax
push 0x401120
push 0x401060
movzx ebx, bl
push ebx
lea eax, [ebp - 0x12dc]
push eax
lea eax, [ebp - 0x6a0]
push eax
push 0x41c5b0
call fcn.00401fb0
mov edi, eax
push 0xa
lea eax, [ebp - 0x84]
push eax
push dword [0x41bf60]
call fcn.0040c1c0
add esp, 0xc
lea eax, [ebp - 0x84]
push eax
push str.TOTALEXTFILE
call dword [0x4182a4]
cmp byte [0x41d1f4], 0
jne 0x40156f
test edi, edi
jne 0x401474
cmp dword [0x41bd54], 0xffffec78
je 0x40130a
jmp 0x4014bd
push 0xa
lea eax, [ebp - 0xcfe]
push eax
push edi
call fcn.0040c1c0
add esp, 0xc
lea eax, [ebp - 0xcfe]
push eax
push str.PBEXTERR
call dword [0x4182a4]
push str.ErrorUnpacking__PBEXTERR_
call dword [0x4182a8]
push 0x10
push 0x41bd58
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
mov eax, 1
jmp 0x40157b
mov dword [0x41bd54], 0
push 0x61c
lea eax, [ebp - 0x12d8]
push eax
push str._DESTPATH__
call dword [0x41829c]
lea eax, [ebp - 0x12d8]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
push 0x61c
lea eax, [ebp - 0xcbc]
push eax
push str._DESTPATH_OlbSetup.exe
call dword [0x41829c]
push 0x61c
lea eax, [ebp - 0x6a0]
push eax
push 0x4152f6
call dword [0x41829c]
push 1
push 0
lea eax, [ebp - 0x6a0]
push eax
lea eax, [ebp - 0xcbc]
push eax
push 0
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
cmp dword [0x41bd54], 0xffffec78
je 0x4014bd
cmp esi, 0xffffec78
je 0x401555
cmp esi, 0xffffec77
je 0x401576
push str._EXITCODE_
call dword [0x4182a8]
push 0xa
push 0
push eax
call fcn.0040c290
add esp, 0xc
jmp 0x40157b
mov eax, 2
jmp 0x40157b
mov eax, 3
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret