Function at 0x14002b8dc
Capabilities:
Accept command line arguments

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
mov rdi, rcx
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
xor ebp, ebp
mov r12, rax
cmp dword [0x14005170c], ebp
jne 0x14002bbce
lea eax, [rbp + 1]
mov dword [0x14005170c], eax
test r12, r12
je 0x14002bbce
and dword [rsp + 0x68], ebp
lea rdx, [rsp + 0x68]
mov rcx, r12
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov r13, rax
test rax, rax
je 0x14002bbce
and dword [rsp + 0x70], ebp
cmp dword [rsp + 0x68], ebp
jle 0x14002bbc5
mov rsi, rax
mov rcx, qword [rsi]
lea rdx, str._RunOnce:
call qword [sym.imp.msvcrt.dll_wcsstr]
test rax, rax
je 0x14002b99b
lea rdx, str._prefetch
mov rcx, r12
call qword [sym.imp.msvcrt.dll_wcsstr]
test rax, rax
je 0x14002bbad
lea rdx, str._prefetch:1
mov rcx, r12
call qword [sym.imp.msvcrt.dll_wcsstr]
test rax, rax
jne 0x14002bbad
and dword [rdi + 0x68], 0
jmp 0x14002bbce
mov rcx, qword [rsi]
lea rdx, str._NoService
call qword [sym.imp.msvcrt.dll_wcsstr]
test rax, rax
jne 0x14002b992
mov rcx, qword [rsi]
lea rdx, str._DefaultService
call qword [sym.imp.msvcrt.dll_wcsstr]
test rax, rax
jne 0x14002bb49
mov rcx, qword [rsi]
lea rdx, str._DownloadService
call qword [sym.imp.msvcrt.dll_wcsstr]
test rax, rax
jne 0x14002bb49
mov rcx, qword [rsi]
lea rdx, str._ServiceInfo
call qword [sym.imp.msvcrt.dll_wcsstr]
mov rcx, qword [rsi]
test rax, rax
je 0x14002bb11
mov edx, 0x3a
call qword [sym.imp.msvcrt.dll_wcschr]
test rax, rax
je 0x14002bbad
lea r15, [rax + 2]
mov rcx, r15
call fcn.140017488
test eax, eax
je 0x14002bbad
xor r14d, r14d
test rbp, rbp
je 0x14002ba41
mov rdx, rbp
mov rcx, rdi
call fcn.14002a1c4
mov rbx, rax
test rax, rax
jne 0x14002ba65
mov ecx, 0x140
call fcn.14003c414
test rax, rax
je 0x14002ba5d
mov rcx, rax
call fcn.140026794
mov rbx, rax
jmp 0x14002ba5f
xor ebx, ebx
mov r14d, 1
and dword [rdi + 0x68], 0
test rbx, rbx
je 0x14002bbad
mov r8, rbx
mov rdx, r15
mov rcx, rdi
call fcn.14002b85c
mov r15d, eax
test eax, eax
js 0x14002badf
xor edx, edx
mov rcx, rbx
call fcn.140026e2c
test eax, eax
je 0x14002badf
mov rdx, rbx
mov rcx, rdi
call fcn.14002817c
mov r15d, eax
test eax, eax
js 0x14002bab2
xor r14d, r14d
mov rcx, rdi
call fcn.14002a410
test r14d, r14d
jne 0x14002bad1
test r15d, r15d
jns 0x14002bad1
mov rdx, rbx
mov rcx, rdi
call fcn.140028214
lea ecx, [r14 + 1]
cmp eax, ecx
cmove r14d, ecx
mov ecx, 4
lea rdx, str.__Service_added_from_command_line:_0x_x._r_n
jmp 0x14002baeb
mov ecx, 2
lea rdx, str.__Specified_service_is_not_valid:_0x_x._r_n
mov r8d, r15d
call fcn.1400168a8
test r14d, r14d
je 0x14002bbad
mov rcx, rbx
call fcn.140026888
mov rcx, rbx
call fcn.14003c454
jmp 0x14002bbad
lea rdx, str._ServiceExtra
call qword [sym.imp.msvcrt.dll_wcsstr]
test rax, rax
je 0x14002bbad
mov rcx, qword [rsi]
mov edx, 0x3a
call qword [sym.imp.msvcrt.dll_wcschr]
test rax, rax
je 0x14002bbad
lea rdx, [rax + 2]
lea rcx, [rdi + 0x40]
call fcn.140016d18
jmp 0x14002bbad
mov rcx, qword [rsi]
mov edx, 0x3a
call qword [sym.imp.msvcrt.dll_wcschr]
mov rbp, rax
test rax, rax
je 0x14002bbad
add rbp, 2
je 0x14002bb70
mov rdx, rbp
mov rcx, rdi
call fcn.14002a324
lea rcx, [rdi + 0x20]
mov rdx, rbp
call fcn.140016d18
mov rcx, qword [rsi]
lea rdx, str._DownloadService
call qword [sym.imp.msvcrt.dll_wcsstr]
test rax, rax
je 0x14002bb99
mov eax, 1
mov dword [rdi + 0x6c], eax
mov r8, rbp
lea rdx, str.__Command_line_specified_default_service_is:__S._r_n
mov ecx, 3
call fcn.1400168a8
mov eax, dword [rsp + 0x70]
add rsi, 8
inc eax
mov dword [rsp + 0x70], eax
cmp eax, dword [rsp + 0x68]
jl 0x14002b94b
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov rbx, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret