Function at 0x418f85
Capabilities:
Accept command line arguments

Disassembly:
push 0x60
mov eax, 0x60be3e
call fcn.0042d958
mov edi, dword [ebp + 8]
xor ecx, ecx
mov ebx, ecx
xor eax, eax
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], 7
mov word [ebp - 0x34], ax
mov dword [ebp - 4], ecx
call fcn.004c7ae4
mov dword [ebp - 0x14], 1
push 8
pop esi
test al, al
je 0x41905e
and dword [ebp - 0x54], ebx
lea ecx, [ebp - 0x54]
and dword [ebp - 0x44], ebx
xor eax, eax
push str.PERM
mov dword [ebp - 0x40], 7
mov word [ebp - 0x54], ax
call fcn.00414483
push 2
pop ebx
lea eax, [ebp - 0x54]
mov byte [ebp - 4], 1
push eax
push 0x678448
lea eax, [ebp - 0x6c]
push eax
call fcn.0041991d
mov byte [ebp - 4], bl
mov ecx, dword [eax + 0x10]
cmp dword [eax + 0x14], esi
jb 0x41900e
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x34]
call fcn.0041461f
lea ecx, [ebp - 0x6c]
call fcn.00415bf1
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x40]
cmp eax, esi
jb 0x41905e
mov ecx, dword [ebp - 0x54]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], ecx
cmp eax, 0x1000
jb 0x419055
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.00415d5a
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x38]
push eax
push ecx
call fcn.0042d678
pop ecx
pop ecx
call fcn.004d2863
test al, al
je 0x419104
and dword [ebp - 0x54], 0
lea ecx, [ebp - 0x54]
and dword [ebp - 0x44], 0
xor eax, eax
push 0x6753c0
mov dword [ebp - 0x40], 7
mov word [ebp - 0x54], ax
call fcn.00414483
or ebx, 4
lea eax, [ebp - 0x54]
mov byte [ebp - 4], 3
push eax
push 0x678448
lea eax, [ebp - 0x6c]
push eax
call fcn.0041991d
mov byte [ebp - 4], 4
mov ecx, dword [eax + 0x10]
cmp dword [eax + 0x14], esi
jb 0x4190b4
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x34]
call fcn.0041461f
lea ecx, [ebp - 0x6c]
call fcn.00415bf1
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x40]
cmp eax, esi
jb 0x419104
mov ecx, dword [ebp - 0x54]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x3c], ecx
cmp eax, 0x1000
jb 0x4190fb
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x3c]
push eax
call fcn.00415d5a
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
push eax
push ecx
call fcn.0042d678
pop ecx
pop ecx
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
and dword [ebp - 0x1c], 0
lea ecx, [ebp - 0x1c]
push ecx
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov esi, eax
test esi, esi
je 0x41915c
and dword [ebp - 0x54], 0
lea ecx, [ebp - 0x54]
and dword [ebp - 0x44], 0
xor eax, eax
push str._firstsetup
mov dword [ebp - 0x40], 7
mov word [ebp - 0x54], ax
call fcn.00414483
lea eax, [ebp - 0x54]
mov byte [ebp - 4], 5
push eax
push dword [ebp - 0x1c]
or ebx, 1
push esi
mov dword [ebp - 0x38], ebx
call 0x4c8c32
test al, al
jne 0x419160
mov byte [ebp - 0x14], 0
and dword [ebp - 4], 0
mov esi, 0x1000
test bl, 1
je 0x4191a6
mov eax, dword [ebp - 0x40]
cmp eax, 8
jb 0x4191a6
mov ecx, dword [ebp - 0x54]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x3c], ecx
cmp eax, esi
jb 0x41919d
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x3c]
push eax
call fcn.00415d5a
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
push eax
push ecx
call fcn.0042d678
pop ecx
pop ecx
xor ebx, ebx
cmp byte [ebp - 0x14], bl
je 0x419243
xor eax, eax
mov dword [ebp - 0x54], ebx
push str.BTSP
lea ecx, [ebp - 0x54]
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x40], 7
mov word [ebp - 0x54], ax
call fcn.00414483
lea eax, [ebp - 0x54]
mov byte [ebp - 4], 6
push eax
push 0x678448
lea eax, [ebp - 0x6c]
push eax
call fcn.0041991d
mov byte [ebp - 4], 7
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x4191f6
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x34]
call fcn.0041461f
lea ecx, [ebp - 0x6c]
call fcn.00415bf1
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x40]
cmp eax, 8
jb 0x419243
mov ecx, dword [ebp - 0x54]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x38], ecx
cmp eax, esi
jb 0x41923a
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.00415d5a
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x38]
push eax
push ecx
call fcn.0042d678
pop ecx
pop ecx
cmp dword [ebp - 0x24], 0
jne 0x419256
push 0x678448
lea ecx, [ebp - 0x34]
call fcn.00414483
xor eax, eax
mov dword [ebp - 0x54], ebx
push 0x678268
lea ecx, [ebp - 0x54]
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x40], 7
mov word [ebp - 0x54], ax
call fcn.00414483
lea eax, [ebp - 0x54]
mov byte [ebp - 4], 8
push eax
lea eax, [ebp - 0x18]
mov ecx, edi
push eax
call fcn.00414913
mov ecx, dword [eax]
lea eax, [ebp - 0x34]
add ecx, 0x28
cmp ecx, eax
je 0x4192a6
cmp dword [ebp - 0x20], 8
push dword [ebp - 0x24]
cmovae eax, dword [ebp - 0x34]
push eax
call fcn.004159e0
mov eax, dword [ebp - 0x40]
cmp eax, 8
jb 0x4192de
mov ecx, dword [ebp - 0x54]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x38], ecx
cmp eax, esi
jb 0x4192d5
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.00415d5a
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x38]
push eax
push ecx
call fcn.0042d678
pop ecx
pop ecx
mov eax, dword [ebp - 0x20]
cmp eax, 8
jb 0x419316
mov ecx, dword [ebp - 0x34]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x38], ecx
cmp eax, esi
jb 0x41930d
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.00415d5a
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x38]
push eax
push ecx
call fcn.0042d678
pop ecx
pop ecx
call fcn.0042d907
ret 4