Function at 0x140001000
Capabilities:
Accept command line arguments

Disassembly:
mov r11, rsp
push rdi
sub rsp, 0x60
mov qword [rsp + 0x28], 0xfffffffffffffffe
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x18], rsi
mov rax, qword [0x14002e0b0]
xor rax, rsp
mov qword [rsp + 0x58], rax
mov qword [r11 - 0x18], 7
xor esi, esi
mov qword [r11 - 0x20], rsi
mov word [rsp + 0x38], si
xor r8d, r8d
lea edx, [rsi + 0x10]
lea rcx, [r11 - 0x38]
call fcn.1400053f0
lea rcx, [rsp + 0x38]
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
cmovae rcx, qword [rsp + 0x38]
add rdx, rdx
lea r9d, [rsi + 0x20]
lea r8, str.ParseCmdLineInfo
call fcn.1400100b0
mov qword [rsp + 0x48], 0x10
lea rax, [rsp + 0x38]
cmp qword [rsp + 0x50], 8
cmovae rax, qword [rsp + 0x38]
mov word [rax + 0x20], si
lea r9, [rsp + 0x38]
cmp qword [rsp + 0x50], 8
cmovae r9, qword [rsp + 0x38]
lea r8, str._s__entering
lea edx, [rsi + 0x65]
lea rcx, [0x14002f750]
call fcn.14000bba0
nop
mov dword [0x140030930], esi
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov rcx, rax
lea rdx, [rsp + 0x20]
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov rbp, rax
test rax, rax
jne 0x14000111e
lea r9, [rsp + 0x38]
cmp qword [rsp + 0x50], 8
cmovae r9, qword [rsp + 0x38]
lea r8, str._s__leaving
lea edx, [rsi + 0x65]
lea rcx, [0x14002f750]
call fcn.14000bba0
nop
cmp qword [rsp + 0x50], 8
jb 0x140001117
mov rcx, qword [rsp + 0x38]
call fcn.14000eef0
xor al, al
jmp 0x140001394
mov ebx, esi
cmp dword [rsp + 0x20], ebx
jle 0x14000134c
mov rdi, rax
nop
mov r8d, 8
lea rdx, str._INSTALL
mov rcx, qword [rdi]
call fcn.14000f660
test eax, eax
je 0x14000132a
mov r8d, 6
lea rdx, str._START
mov rcx, qword [rdi]
call fcn.14000f660
test eax, eax
je 0x140001306
mov r8d, 7
lea rdx, str._REMOVE
mov rcx, qword [rdi]
call fcn.14000f660
test eax, eax
je 0x1400012e2
mov r8d, 0xa
lea rdx, str._REGISTER:
mov rcx, qword [rdi]
call fcn.14000f660
test eax, eax
je 0x14000125c
mov r8d, 8
lea rdx, str._NOTIFY:
mov rcx, qword [rdi]
call fcn.14000f660
test eax, eax
je 0x1400011d3
add ebx, 1
add rdi, 8
cmp ebx, dword [rsp + 0x20]
jl 0x140001130
jmp 0x14000134c
lea r8, str.Device_Notify_is_specified_n
mov edx, 2
lea rcx, [0x14002f750]
call fcn.14000bba0
mov dword [0x140030930], 5
mov edx, 9
lea rcx, str._NOTIFY:
call fcn.14000f8c0
movsxd rcx, ebx
mov rdx, qword [rbp + rcx*8]
lea rdx, [rdx + rax*2]
test rdx, rdx
je 0x140001229
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea esi, [rcx - 1]
mov r8d, esi
lea rcx, [0x140030940]
call fcn.1400046e0
mov r9, qword [0x140030940]
lea r8, str.g_CmdLine.DeviceInternalName:_s_n
mov edx, 2
lea rcx, [0x14002f750]
call fcn.14000bba0
jmp 0x14000134c
lea r8, str.Device_Register_is_specified_n
mov edx, 2
lea rcx, [0x14002f750]
call fcn.14000bba0
mov dword [0x140030930], 4
mov edx, 0xb
lea rcx, str._REGISTER:
call fcn.14000f8c0
movsxd rcx, ebx
mov rdx, qword [rbp + rcx*8]
lea rdx, [rdx + rax*2]
test rdx, rdx
je 0x1400012b2
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea esi, [rcx - 1]
mov r8d, esi
lea rcx, [0x140030948]
call fcn.1400046e0
mov r9, qword [0x140030948]
lea r8, str.g_CmdLine.DeviceInstanceId:_s_n
mov edx, 2
lea rcx, [0x14002f750]
call fcn.14000bba0
jmp 0x14000134c
lea r8, str.Service_Remove_is_specified_n
mov edx, 2
lea rcx, [0x14002f750]
call fcn.14000bba0
mov dword [0x140030930], 3
jmp 0x14000134c
lea r8, str.Service_Start_is_specified_n
mov edx, 2
lea rcx, [0x14002f750]
call fcn.14000bba0
mov dword [0x140030930], 2
jmp 0x14000134c
lea r8, str.Service_Install_is_specified_n
mov edx, 2
lea rcx, [0x14002f750]
call fcn.14000bba0
mov dword [0x140030930], 1
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_LocalFree]
nop
lea r9, [rsp + 0x38]
cmp qword [rsp + 0x50], 8
cmovae r9, qword [rsp + 0x38]
lea r8, str._s__leaving
mov edx, 0x65
lea rcx, [0x14002f750]
call fcn.14000bba0
nop
cmp qword [rsp + 0x50], 8
jb 0x140001392
mov rcx, qword [rsp + 0x38]
call fcn.14000eef0
mov al, 1
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.14000f470
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x80]
add rsp, 0x60
pop rdi
ret