Function at 0x140001600
Capabilities:
Accept command line arguments

Disassembly:
mov r11, rsp
push rdi
push r12
push r13
sub rsp, 0x50
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x20], rsi
mov rax, rdx
mov r12, rcx
xor r13d, r13d
mov dword [r11 + 0x18], r13d
lea rdx, [r11 + 0x18]
mov rcx, rax
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov rbp, rax
mov esi, 1
cmp dword [rsp + 0x80], esi
jle 0x140001b50
movsxd rdi, esi
mov rdx, qword [rbp + rdi*8]
movzx eax, word [rdx]
cmp ax, 0x2d
je 0x14000166b
cmp ax, 0x2f
jne 0x140001b41
add rdx, 2
lea rcx, str.RunType
call fcn.140006e9c
test eax, eax
jne 0x14000171a
inc esi
cmp esi, dword [rsp + 0x80]
jge 0x140001b41
movsxd rbx, esi
cmp qword [rbp + rbx*8], 0
je 0x140001b41
mov qword [rsp + 0x48], 7
mov qword [rsp + 0x40], r13
mov word [rsp + 0x30], r13w
lea r8d, [rax + 7]
lea rdx, str.RunType
lea rcx, [rsp + 0x28]
call fcn.1400031f0
nop
mov rbx, qword [rbp + rbx*8]
lea rdx, [rsp + 0x28]
mov rcx, r12
call fcn.140002bd0
mov r11, rax
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
mov rdx, rbx
mov rcx, r11
call fcn.1400031f0
nop
cmp qword [rsp + 0x48], 8
jb 0x140001b41
mov rcx, qword [rsp + 0x30]
call fcn.1400066e8
jmp 0x140001b41
mov rdx, qword [rbp + rdi*8]
add rdx, 2
lea rcx, str.Driver
call fcn.140006e9c
test eax, eax
jne 0x1400017ce
inc esi
cmp esi, dword [rsp + 0x80]
jge 0x140001b41
movsxd rbx, esi
cmp qword [rbp + rbx*8], 0
je 0x140001b41
mov qword [rsp + 0x48], 7
mov qword [rsp + 0x40], r13
mov word [rsp + 0x30], r13w
lea r8d, [rax + 6]
lea rdx, str.Driver
lea rcx, [rsp + 0x28]
call fcn.1400031f0
nop
mov rbx, qword [rbp + rbx*8]
lea rdx, [rsp + 0x28]
mov rcx, r12
call fcn.140002bd0
mov r11, rax
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
mov rdx, rbx
mov rcx, r11
call fcn.1400031f0
nop
cmp qword [rsp + 0x48], 8
jb 0x140001b41
mov rcx, qword [rsp + 0x30]
call fcn.1400066e8
jmp 0x140001b41
mov rdx, qword [rbp + rdi*8]
add rdx, 2
lea rcx, str.Model
call fcn.140006e9c
test eax, eax
jne 0x140001882
inc esi
cmp esi, dword [rsp + 0x80]
jge 0x140001b41
movsxd rbx, esi
cmp qword [rbp + rbx*8], 0
je 0x140001b41
mov qword [rsp + 0x48], 7
mov qword [rsp + 0x40], r13
mov word [rsp + 0x30], r13w
lea r8d, [rax + 5]
lea rdx, str.Model
lea rcx, [rsp + 0x28]
call fcn.1400031f0
nop
mov rbx, qword [rbp + rbx*8]
lea rdx, [rsp + 0x28]
mov rcx, r12
call fcn.140002bd0
mov r11, rax
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
mov rdx, rbx
mov rcx, r11
call fcn.1400031f0
nop
cmp qword [rsp + 0x48], 8
jb 0x140001b41
mov rcx, qword [rsp + 0x30]
call fcn.1400066e8
jmp 0x140001b41
mov rdx, qword [rbp + rdi*8]
add rdx, 2
lea rcx, str.DuplexMode
call fcn.140006e9c
test eax, eax
jne 0x140001936
inc esi
cmp esi, dword [rsp + 0x80]
jge 0x140001b41
movsxd rbx, esi
cmp qword [rbp + rbx*8], 0
je 0x140001b41
mov qword [rsp + 0x48], 7
mov qword [rsp + 0x40], r13
mov word [rsp + 0x30], r13w
lea r8d, [rax + 0xa]
lea rdx, str.DuplexMode
lea rcx, [rsp + 0x28]
call fcn.1400031f0
nop
mov rbx, qword [rbp + rbx*8]
lea rdx, [rsp + 0x28]
mov rcx, r12
call fcn.140002bd0
mov r11, rax
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
mov rdx, rbx
mov rcx, r11
call fcn.1400031f0
nop
cmp qword [rsp + 0x48], 8
jb 0x140001b41
mov rcx, qword [rsp + 0x30]
call fcn.1400066e8
jmp 0x140001b41
mov rdx, qword [rbp + rdi*8]
add rdx, 2
lea rcx, str.DuplexArg2
call fcn.140006e9c
test eax, eax
jne 0x1400019ea
inc esi
cmp esi, dword [rsp + 0x80]
jge 0x140001b41
movsxd rbx, esi
cmp qword [rbp + rbx*8], 0
je 0x140001b41
mov qword [rsp + 0x48], 7
mov qword [rsp + 0x40], r13
mov word [rsp + 0x30], r13w
lea r8d, [rax + 0xa]
lea rdx, str.DuplexArg2
lea rcx, [rsp + 0x28]
call fcn.1400031f0
nop
mov rbx, qword [rbp + rbx*8]
lea rdx, [rsp + 0x28]
mov rcx, r12
call fcn.140002bd0
mov r11, rax
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
mov rdx, rbx
mov rcx, r11
call fcn.1400031f0
nop
cmp qword [rsp + 0x48], 8
jb 0x140001b41
mov rcx, qword [rsp + 0x30]
call fcn.1400066e8
jmp 0x140001b41
mov rdx, qword [rbp + rdi*8]
add rdx, 2
lea rcx, str.DuplexArg3
call fcn.140006e9c
test eax, eax
jne 0x140001a9e
inc esi
cmp esi, dword [rsp + 0x80]
jge 0x140001b41
movsxd rbx, esi
cmp qword [rbp + rbx*8], 0
je 0x140001b41
mov qword [rsp + 0x48], 7
mov qword [rsp + 0x40], r13
mov word [rsp + 0x30], r13w
lea r8d, [rax + 0xa]
lea rdx, str.DuplexArg3
lea rcx, [rsp + 0x28]
call fcn.1400031f0
nop
mov rbx, qword [rbp + rbx*8]
lea rdx, [rsp + 0x28]
mov rcx, r12
call fcn.140002bd0
mov r11, rax
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
mov rdx, rbx
mov rcx, r11
call fcn.1400031f0
nop
cmp qword [rsp + 0x48], 8
jb 0x140001b41
mov rcx, qword [rsp + 0x30]
call fcn.1400066e8
jmp 0x140001b41
mov rdx, qword [rbp + rdi*8]
add rdx, 2
lea rcx, str.DuplexArg4
call fcn.140006e9c
test eax, eax
jne 0x140001b41
inc esi
cmp esi, dword [rsp + 0x80]
jge 0x140001b41
movsxd rbx, esi
cmp qword [rbp + rbx*8], 0
je 0x140001b41
mov qword [rsp + 0x48], 7
mov qword [rsp + 0x40], r13
mov word [rsp + 0x30], r13w
lea r8d, [rax + 0xa]
lea rdx, str.DuplexArg4
lea rcx, [rsp + 0x28]
call fcn.1400031f0
nop
mov rbx, qword [rbp + rbx*8]
lea rdx, [rsp + 0x28]
mov rcx, r12
call fcn.140002bd0
mov r11, rax
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
mov rdx, rbx
mov rcx, r11
call fcn.1400031f0
nop
cmp qword [rsp + 0x48], 8
jb 0x140001b41
mov rcx, qword [rsp + 0x30]
call fcn.1400066e8
inc esi
cmp esi, dword [rsp + 0x80]
jl 0x140001650
test rbp, rbp
je 0x140001b5e
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x88]
add rsp, 0x50
pop r13
pop r12
pop rdi
ret