Function at 0x4016c2
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x264
mov eax, dword [0x404008]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov dword [ebp - 0x264], ecx
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov ebx, dword [sym.imp.VCRUNTIME140.dll_wcschr]
mov esi, eax
push 0x20
pop edi
push 0x22
pop eax
cmp word [esi], ax
jne 0x401715
push eax
lea eax, [esi + 2]
push eax
call ebx
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x4018ff
cmp word [esi], 0
je 0x40175c
add esi, 2
jmp 0x401754
push 0x104
lea eax, [ebp - 0x25c]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov edi, eax
test edi, edi
je 0x401749
push edi
mov edx, esi
lea ecx, [ebp - 0x25c]
call fcn.00401f6d
test eax, eax
jne 0x401749
push 0x20
lea esi, [esi + edi*2]
pop edi
jmp 0x401754
push 0x20
pop edi
push edi
push esi
call ebx
pop ecx
pop ecx
mov esi, eax
test esi, esi
je 0x4018ff
movzx eax, word [esi]
mov ecx, eax
cmp ax, di
jne 0x401773
add esi, 2
movzx eax, word [esi]
cmp ax, di
je 0x401766
mov ecx, eax
cmp cx, 0x7b
jne 0x4018ff
push 0x7d
push esi
call ebx
mov ebx, eax
pop ecx
pop ecx
test ebx, ebx
je 0x4018ff
mov ecx, ebx
sub ecx, esi
and ecx, 0xfffffffe
cmp ecx, 0x4a
jne 0x4018ff
push 0x13
pop ecx
push dword [ebp - 0x264]
xor eax, eax
lea edi, [ebp - 0x54]
rep movsd dword es:[edi], dword [esi]
mov word [ebp - 8], ax
lea eax, [ebp - 0x54]
push eax
call dword [sym.imp.ole32.dll_CLSIDFromString]
test eax, eax
js 0x4018ff
lea esi, [ebx + 2]
push 0x20
pop ebx
cmp word [esi], bx
jne 0x4018ff
add esi, 2
cmp word [esi], bx
je 0x4017d3
mov edi, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncmp]
push 8
push str._prefix
push esi
call edi
add esp, 0xc
test eax, eax
jne 0x401809
mov ecx, dword [ebp - 0x264]
add esi, 0x10
push esi
call fcn.0040165c
lea esi, [esi + eax*2]
jmp 0x401809
add esi, 2
cmp word [esi], bx
je 0x401806
push 2
push 0x4030c4
push esi
call edi
add esp, 0xc
test eax, eax
jne 0x4018ff
add esi, 4
cmp word [esi], bx
jne 0x4018ff
add esi, 2
cmp word [esi], bx
je 0x40182f
mov ebx, dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_wcstoul]
lea eax, [ebp - 0x260]
push 0xa
push eax
push esi
call ebx
add esp, 0xc
test eax, eax
je 0x4018ff
cmp eax, 0xffffffff
je 0x4018ff
mov ecx, dword [ebp - 0x264]
mov esi, dword [ebp - 0x260]
push 0x20
mov dword [ecx + 0x10], eax
pop eax
cmp word [esi], ax
jne 0x4018ff
add esi, 2
cmp word [esi], ax
je 0x401878
push 3
push 0x4030cc
push esi
call edi
add esp, 0xc
test eax, eax
jne 0x401895
push 6
jmp 0x4018a8
push 5
push str._tid
push esi
call edi
add esp, 0xc
test eax, eax
jne 0x4018ff
push 0xa
pop eax
push 0x20
add eax, esi
pop esi
jmp 0x4018b3
add eax, 2
cmp word [eax], si
je 0x4018b0
push 0xa
lea ecx, [ebp - 0x260]
push ecx
push eax
call ebx
add esp, 0xc
test eax, eax
je 0x4018ff
cmp eax, 0xffffffff
je 0x4018ff
mov ecx, dword [ebp - 0x264]
mov dword [ecx + 0x14], eax
mov ecx, dword [ebp - 0x260]
movzx eax, word [ecx]
mov edx, eax
cmp ax, si
jne 0x4018f6
lea ecx, [ecx + 2]
movzx eax, word [ecx]
cmp ax, si
je 0x4018e9
mov edx, eax
test dx, dx
jne 0x4018ff
xor eax, eax
jmp 0x401904
mov eax, 0x80070057
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00401fea
leave
ret