Function at 0x1400554a4
Capabilities:
Accept command line arguments

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x218]
sub rsp, 0x2e0
mov qword [rbp - 0x60], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov rax, qword [0x140198858]
xor rax, rsp
mov qword [rbp + 0x1d0], rax
mov r14, rdx
mov qword [rsp + 0x40], rcx
xor ebx, ebx
cmp word [rcx], bx
jne 0x1400554f3
mov al, 1
jmp 0x140055d38
mov dword [rsp + 0x48], ebx
mov sil, 1
lea rdx, [rsp + 0x48]
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov r15, rax
mov r12d, ebx
cmp dword [rsp + 0x48], ebx
jle 0x140055d27
mov r13, rax
or rdi, 0xffffffffffffffff
mov rdx, qword [r13]
mov qword [rbp - 0x40], 7
mov qword [rbp - 0x48], rbx
mov word [rbp - 0x58], bx
cmp word [rdx], bx
jne 0x14005553a
mov r8, rbx
jmp 0x140055547
mov r8, rdi
inc r8
cmp word [rdx + r8*2], bx
jne 0x14005553d
lea rcx, [rbp - 0x58]
call fcn.1400083f8
nop
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], rbx
mov qword [rbp - 0x20], 7
mov qword [rbp - 0x28], rbx
mov word [rbp - 0x38], bx
mov r8d, 1
lea rdx, [0x1401a4298]
lea rcx, [rbp - 0x38]
call fcn.1400083f8
nop
lea r8, [rbp - 0x38]
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 0x58]
call fcn.1400332d0
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x38]
call fcn.140007eb8
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x58]
sub rax, rdx
sar rax, 5
cmp rax, 2
jne 0x1400559c4
mov qword [rbp], 7
mov qword [rbp - 8], rbx
mov word [rbp - 0x18], bx
mov r9, rdi
xor r8d, r8d
lea rcx, [rbp - 0x18]
call fcn.1400082c0
nop
mov rdx, qword [rsp + 0x58]
add rdx, 0x20
mov qword [rbp + 0x20], 7
mov qword [rbp + 0x18], rbx
mov word [rbp + 8], bx
mov r9, rdi
xor r8d, r8d
lea rcx, [rbp + 8]
call fcn.1400082c0
nop
mov rcx, qword [rbp - 8]
test rcx, rcx
sete al
test al, al
jne 0x140055655
mov rdi, rbx
test rcx, rcx
je 0x140055651
lea rax, [rbp - 0x18]
cmp qword [rbp], 8
cmovae rax, qword [rbp - 0x18]
lea rbx, [rbp - 0x18]
cmovae rbx, qword [rbp - 0x18]
movzx ecx, word [rax + rdi*2]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_towlower]
mov word [rbx + rdi*2], ax
inc rdi
cmp rdi, qword [rbp - 8]
jb 0x140055621
xor ebx, ebx
or rdi, 0xffffffffffffffff
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x68]
lea rcx, [0x140278318]
call fcn.140056dd8
mov rdx, qword [rbp - 0x68]
cmp rdx, qword [0x140278318]
je 0x1400556a6
add rdx, 0x40
mov rcx, r14
call fcn.14001da48
lea rcx, [rbp + 8]
cmp rax, rcx
je 0x140055984
mov r9, rdi
xor r8d, r8d
lea rdx, [rbp + 8]
mov rcx, rax
call fcn.1400082c0
jmp 0x140055984
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], rbx
mov qword [rbp - 0x20], 7
mov qword [rbp - 0x28], rbx
mov word [rbp - 0x38], bx
mov r8d, 1
lea rdx, [0x140199ecc]
lea rcx, [rbp - 0x38]
call fcn.1400083f8
nop
lea r8, [rbp - 0x38]
lea rdx, [rsp + 0x78]
lea rcx, [rbp - 0x18]
call fcn.1400332d0
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x38]
call fcn.140007eb8
mov rax, qword [rbp - 0x80]
mov rdx, qword [rsp + 0x78]
sub rax, rdx
sar rax, 5
cmp rax, 2
jne 0x140055924
mov qword [rbp + 0x60], 7
mov qword [rbp + 0x58], rbx
mov word [rbp + 0x48], bx
mov r9, rdi
xor r8d, r8d
lea rcx, [rbp + 0x48]
call fcn.1400082c0
nop
mov rdx, qword [rsp + 0x78]
add rdx, 0x20
mov qword [rbp + 0x40], 7
mov qword [rbp + 0x38], rbx
mov word [rbp + 0x28], bx
mov r9, rdi
xor r8d, r8d
lea rcx, [rbp + 0x28]
call fcn.1400082c0
nop
mov rcx, qword [rbp + 0x38]
test rcx, rcx
sete al
test al, al
jne 0x1400557a2
mov rdi, rbx
test rcx, rcx
je 0x1400557a2
lea rax, [rbp + 0x28]
cmp qword [rbp + 0x40], 8
cmovae rax, qword [rbp + 0x28]
lea rbx, [rbp + 0x28]
cmovae rbx, qword [rbp + 0x28]
movzx ecx, word [rax + rdi*2]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_towlower]
mov word [rbx + rdi*2], ax
inc rdi
cmp rdi, qword [rbp + 0x38]
jb 0x140055774
lea r8, [rbp + 0x28]
lea rdx, [rbp - 0x70]
lea rcx, [0x140278318]
call fcn.140056dd8
mov rbx, qword [rbp - 0x70]
cmp rbx, qword [0x140278318]
je 0x1400558ae
lea rdx, [rbx + 0x40]
mov rcx, r14
call fcn.14001da48
mov qword [rbp - 0x20], 7
xor edi, edi
mov qword [rbp - 0x28], rdi
mov word [rbp - 0x38], di
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp - 0x38]
call fcn.1400082c0
nop
lea r9, [rbp + 8]
lea r8, [rbp + 0x48]
lea rdx, [0x14019e248]
lea rcx, [rbp + 0x68]
call fcn.140009c44
nop
cmp qword [rbp - 0x28], rdi
sete al
test al, al
je 0x140055847
lea rdx, [rbx + 0x40]
mov rcx, r14
call fcn.14001da48
lea rcx, [rbp + 0x68]
cmp rax, rcx
je 0x14005588f
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp + 0x68]
mov rcx, rax
call fcn.1400082c0
jmp 0x14005588f
lea r9, [rbp + 0x68]
lea r8, [rbp - 0x38]
lea rdx, str._s_s
lea rcx, [rbp + 0x88]
call fcn.140009c44
mov rdi, rax
lea rdx, [rbx + 0x40]
mov rcx, r14
call fcn.14001da48
mov rcx, rax
mov rdx, rdi
call fcn.140054c74
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp + 0x88]
call fcn.140007eb8
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp + 0x68]
call fcn.140007eb8
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x38]
call fcn.140007eb8
jmp 0x140055903
lea rax, [rbp + 8]
cmp qword [rbp + 0x20], 8
cmovae rax, qword [rbp + 8]
mov qword [rsp + 0x70], rax
lea rax, [rbp - 0x18]
cmp qword [rbp], 8
cmovae rax, qword [rbp - 0x18]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
lea r9, str.ScenarioSettings::FillScenarioParameter___unmapped_wildcard_parameter._Name:__s_Value:__s
mov edx, reloc.Cabinet.dll_FCIDestroy
mov ecx, 0x4ca39c
lea r8d, [rdx + 0x24]
call fcn.14001bc64
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp + 0x28]
call fcn.140007eb8
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp + 0x48]
call fcn.140007eb8
xor ebx, ebx
jmp 0x140055979
lea rax, [rbp + 8]
cmp qword [rbp + 0x20], 8
cmovae rax, qword [rbp + 8]
mov qword [rsp + 0x50], rax
lea rax, [rbp - 0x18]
cmp qword [rbp], 8
cmovae rax, qword [rbp - 0x18]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
lea r9, str.ScenarioSettings::FillScenarioParameter___Unhandled_parameter._Name:__s_Value:__s
mov edx, reloc.Cabinet.dll_FCIDestroy
mov ecx, 0x450286
lea r8d, [rdx + 0x24]
call fcn.14001bc64
nop
lea rcx, [rsp + 0x78]
call fcn.14002adb4
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp + 8]
call fcn.140007eb8
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x18]
call fcn.140007eb8
nop
lea rcx, [rsp + 0x58]
call fcn.14002adb4
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x58]
call fcn.140007eb8
or rdi, 0xffffffffffffffff
jmp 0x140055ab1
lea rdx, [0x140271450]
cmp qword [0x140271468], 8
cmovae rdx, qword [0x140271450]
lea rcx, [rbp - 0x58]
cmp qword [rbp - 0x40], 8
cmovae rcx, qword [rbp - 0x58]
xor r9d, r9d
mov r8, rdi
call fcn.140006f18
test eax, eax
je 0x140055ce6
lea rdx, [0x140271430]
cmp qword [0x140271448], 8
cmovae rdx, qword [0x140271430]
lea rcx, [rbp - 0x58]
cmp qword [rbp - 0x40], 8
cmovae rcx, qword [rbp - 0x58]
xor r9d, r9d
mov r8, rdi
call fcn.140006f18
test eax, eax
jne 0x140055a3e
lea r9, str.ScenarioSettings::FillScenarioParameter___Admin_mode_context_starting:__s
mov ecx, 0x450288
jmp 0x140055a7e
lea rdx, [0x140271470]
cmp qword [0x140271488], 8
cmovae rdx, qword [0x140271470]
lea rcx, [rbp - 0x58]
cmp qword [rbp - 0x40], 8
cmovae rcx, qword [rbp - 0x58]
xor r9d, r9d
mov r8, rdi
call fcn.140006f18
test eax, eax
jne 0x140055ac8
lea r9, str.ScenarioSettings::FillScenarioParameter___Upgrade_mode_context_starting:__s
mov ecx, 0x5c1162
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
mov r8d, 0x32
lea edx, [r8 - 0x24]
call fcn.14001bb90
nop
lea rcx, [rsp + 0x58]
call fcn.14002adb4
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x58]
call fcn.140007eb8
inc r12d
add r13, 8
cmp r12d, dword [rsp + 0x48]
jl 0x14005551c
jmp 0x140055d27
lea rdx, [0x140271490]
cmp qword [0x1402714a8], 8
cmovae rdx, qword [0x140271490]
lea rcx, [rbp - 0x58]
cmp qword [rbp - 0x40], 8
cmovae rcx, qword [rbp - 0x58]
xor r9d, r9d
mov r8, rdi
call fcn.140006f18
test eax, eax
jne 0x140055b0d
lea r9, str.ScenarioSettings::FillScenarioParameter___Update_mode_context_starting:__s
mov ecx, 0x65e69f
jmp 0x140055cf2
lea rdx, [0x1402714b0]
cmp qword [0x1402714c8], 8
cmovae rdx, qword [0x1402714b0]
lea rcx, [rbp - 0x58]
cmp qword [rbp - 0x40], 8
cmovae rcx, qword [rbp - 0x58]
xor r9d, r9d
mov r8, rdi
call fcn.140006f18
test eax, eax
jne 0x140055b52
lea r9, str.ScenarioSettings::FillScenarioParameter___Standalone_system_mode_context_starting:__s
mov ecx, 0x8006d1
jmp 0x140055cf2
lea rax, [rbp - 0x58]
cmp qword [rbp - 0x40], 8
cmovae rax, qword [rbp - 0x58]
mov qword [rsp + 0x50], rax
lea r8, [rsp + 0x50]
lea rdx, str.Unexpected_parameter_format:__s
lea rcx, [rbp + 0x88]
call fcn.1400097cc
mov rdi, rax
cmp qword [rax + 0x18], 8
jb 0x140055b8a
mov rdi, qword [rax]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x40], eax
mov qword [rbp + 0x18], rbx
mov qword [rbp + 0x20], rbx
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 8]
call fcn.140007eb8
nop
mov qword [rbp - 0x28], rbx
mov qword [rbp - 0x20], rbx
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x38]
call fcn.140007eb8
nop
mov qword [rbp + 0x58], rbx
mov qword [rbp + 0x60], rbx
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x48]
call fcn.140007eb8
nop
mov qword [rbp + 0x78], rbx
mov qword [rbp + 0x80], rbx
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x68]
call fcn.140007eb8
nop
lea rax, [rbp + 8]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x38]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x48]
lea r8, [rbp + 0x68]
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x140]
call fcn.14000df40
mov rbx, rax
lea rcx, [rbp + 0xb0]
call fcn.1400f6db0
lea rcx, vtable.Mso::Logging::StructuredObject_wchar_t_const____ptr64__1_.0
mov qword [rsp + 0x78], rcx
lea rcx, str.ContextData
mov qword [rbp - 0x80], rcx
mov qword [rbp - 0x78], rdi
lea rcx, [rsp + 0x78]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rax
lea r9, str.ScenarioSettings::FillScenarioParameter
mov edx, 0x3ae
mov ecx, 0x450289
mov r8d, 0xa
call fcn.14000b4a8
lea rcx, [rbp + 0xb0]
call fcn.14000e3f0
nop
lea rcx, [rbp + 0x140]
call fcn.14000e438
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp + 0x68]
call fcn.140007eb8
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp + 0x48]
call fcn.140007eb8
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x38]
call fcn.140007eb8
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp + 8]
call fcn.140007eb8
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp + 0x88]
call fcn.140007eb8
xor ebx, ebx
mov sil, bl
jmp 0x140055d0e
lea r9, str.ScenarioSettings::FillScenarioParameter___User_mode_context_starting:__s
mov ecx, 0x450287
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
mov r8d, 0x32
lea edx, [r8 - 0x24]
call fcn.14001bb90
mov sil, 1
lea rcx, [rsp + 0x58]
call fcn.14002adb4
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x58]
call fcn.140007eb8
test r15, r15
je 0x140055d35
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov al, sil
mov rcx, qword [rbp + 0x1d0]
xor rcx, rsp
call fcn.140022430
mov rbx, qword [rsp + 0x330]
add rsp, 0x2e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret