Function at 0x407a90
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
push esi
push edi
mov dword [ebp - 0xc], 0
mov edx, dword [ebp + 8]
mov word [edx], 0
mov edx, dword [ebp + 0xc]
mov word [edx], 0
mov edx, dword [ebp + 0x14]
mov word [edx], 0
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
lea edx, [ebp - 4]
push edx
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov esi, eax
test esi, esi
je 0x407cde
cmp dword [ebp - 4], 1
jle 0x407cd7
mov dword [ebp - 0x10], 1
jmp 0x407ccb
push str._conf
mov eax, dword [ebp - 0x10]
mov eax, dword [esi + eax*4]
push eax
call fcn.0041f9e0
add esp, 8
test eax, eax
je 0x407b1d
push str._config
mov eax, dword [ebp - 0x10]
mov eax, dword [esi + eax*4]
push eax
call fcn.0041f9e0
add esp, 8
test eax, eax
jne 0x407c20
cmp dword [ebp - 4], 3
jl 0x407b6f
mov eax, dword [ebp - 0x10]
mov edx, dword [esi + eax*4 + 4]
mov eax, 0xfffffffe
add eax, 2
cmp word [edx + eax], 0
jne 0x407b2f
shr eax, 1
test eax, eax
je 0x407b6f
mov eax, dword [ebp + 8]
mov dword [ebp - 0x14], eax
mov ecx, eax
mov edx, dword [ebp - 0x10]
mov edx, dword [esi + edx*4 + 4]
push ecx
sub ecx, edx
mov ax, word [edx]
mov word [ecx + edx], ax
add edx, 2
test ax, ax
jne 0x407b51
pop eax
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.SHLWAPI.dll_PathUnquoteSpacesW]
or dword [ebp - 0xc], 8
cmp dword [ebp - 4], 4
jl 0x407bc1
mov eax, dword [ebp - 0x10]
mov edx, dword [esi + eax*4 + 8]
mov eax, 0xfffffffe
add eax, 2
cmp word [edx + eax], 0
jne 0x407b81
shr eax, 1
test eax, eax
je 0x407bc1
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x14], eax
mov ecx, eax
mov edx, dword [ebp - 0x10]
mov edx, dword [esi + edx*4 + 8]
push ecx
sub ecx, edx
mov ax, word [edx]
mov word [ecx + edx], ax
add edx, 2
test ax, ax
jne 0x407ba3
pop eax
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.SHLWAPI.dll_PathUnquoteSpacesW]
or dword [ebp - 0xc], 0x10
cmp dword [ebp - 4], 5
jne 0x407cd7
mov eax, dword [ebp - 0x10]
mov edx, dword [esi + eax*4 + 0xc]
mov eax, 0xfffffffe
add eax, 2
cmp word [edx + eax], 0
jne 0x407bd7
shr eax, 1
test eax, eax
je 0x407cd7
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x14], eax
mov ecx, eax
mov edx, dword [ebp - 0x10]
mov edx, dword [esi + edx*4 + 0xc]
push ecx
sub ecx, edx
mov ax, word [edx]
mov word [ecx + edx], ax
add edx, 2
test ax, ax
jne 0x407bfd
pop eax
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.SHLWAPI.dll_PathUnquoteSpacesW]
or dword [ebp - 0xc], 0x20
jmp 0x407cd7
mov eax, dword [ebp - 0x10]
mov eax, dword [esi + eax*4]
mov dword [ebp - 8], eax
cmp word [eax], 0x2d
jne 0x407c68
jmp 0x407c54
cmp ebx, 0x73
je 0x407c4a
jg 0x407c3f
cmp ebx, 0x6e
je 0x407c50
jmp 0x407c54
cmp ebx, 0x78
jne 0x407c54
or dword [ebp - 0xc], 1
jmp 0x407c54
or dword [ebp - 0xc], 2
jmp 0x407c54
or dword [ebp - 0xc], 4
mov eax, dword [ebp - 8]
lea edx, [eax + 2]
mov dword [ebp - 8], edx
movzx eax, word [eax]
mov ebx, eax
test eax, eax
jne 0x407c31
jmp 0x407cc8
mov dword [ebp - 0xc], 0x40
cmp dword [ebp - 4], 1
jne 0x407c90
mov ecx, dword [ebp + 0x14]
mov edx, dword [esi + 4]
push ecx
sub ecx, edx
mov ax, word [edx]
mov word [ecx + edx], ax
add edx, 2
test ax, ax
jne 0x407c7e
pop eax
jmp 0x407cd7
mov edi, 1
jmp 0x407cc1
mov eax, dword [esi + edi*4]
push eax
mov eax, dword [ebp + 0x14]
push eax
call fcn.0041e5f0
add esp, 8
mov eax, dword [ebp - 4]
dec eax
cmp edi, eax
jge 0x407cc0
push 0x427f48
mov eax, dword [ebp + 0x14]
push eax
call fcn.0041e5f0
add esp, 8
inc edi
cmp edi, dword [ebp - 4]
jl 0x407c97
jmp 0x407cd7
inc dword [ebp - 0x10]
mov eax, dword [ebp - 4]
cmp dword [ebp - 0x10], eax
jl 0x407ae9
push esi
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov eax, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10