Function at 0x140051f30
Capabilities:
Accept command line arguments
Query or enumerate registry value

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0xf0
movaps xmmword [rsp + 0xe0], xmm6
mov rax, qword [0x140346038]
xor rax, rsp
mov qword [rsp + 0xd8], rax
mov r14, qword [0x140362a48]
test r14, r14
jne 0x140052086
mov ecx, 0x50
call fcn.140153bd4
mov rsi, rax
lea rcx, [rax + 0x18]
xorps xmm6, xmm6
movups xmmword [rax], xmm6
mov byte [rax + 0x10], 0
mov edx, 1
call fcn.14013e940
lea rax, [rsi + 0x38]
movups xmmword [rsi + 0x38], xmm6
mov qword [rsi + 0x30], rax
mov qword [rsi + 0x48], 1
mov qword [0x140362a48], rsi
call fcn.14012d530
test al, al
jne 0x1400520b5
call fcn.14012d8c0
test al, al
jne 0x1400520b5
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
test rax, rax
je 0x1400522f7
mov rsi, rax
mov rcx, rax
call fcn.14015468c
lea rcx, [rsi + rax*2]
cmp rax, 0xf
jl 0x140052053
lea r9, [rsi + rax*2]
add r9, 0xfffffffffffffffe
lea r10, str.single_argument
mov r11, rax
mov rdx, rsi
jmp 0x140052033
test rdx, rdx
je 0x140052053
xor r11d, r11d
movzx edi, word [rdx + r11]
cmp di, word [r11 + r10]
jne 0x14005201d
add r11, 2
cmp r11, 0x1e
jne 0x140052005
jmp 0x140052059
add rdx, 2
mov rdi, r9
sub rdi, r8
mov r11, rdi
shr r11, 1
cmp rdi, 0x1d
jle 0x140052053
add r11, 0xfffffffffffffff2
je 0x140052053
mov r8, rdx
nop dword [rax]
cmp word [rdx], 0x73
je 0x140051ffd
add rdx, 2
add r8, 2
dec r11
jne 0x140052040
mov r8, rcx
mov rdx, rcx
cmp rdx, rcx
setne cl
sub r8, rsi
cmp r8, 0xfffffffffffffffe
setne dl
and dl, cl
mov rcx, qword [0x140362a48]
mov byte [rcx + 0x10], dl
lea rdx, [rsp + 0x38]
mov qword [rdx], rsi
mov qword [rdx + 8], rax
call fcn.140052330
test r14, r14
sete bl
mov rcx, qword [rsp + 0xd8]
xor rcx, rsp
call fcn.140156fe0
mov eax, ebx
movaps xmm6, xmmword [rsp + 0xe0]
add rsp, 0xf0
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
test rax, rax
je 0x1400522f7
mov rsi, rax
mov rcx, rax
call fcn.14015468c
mov rcx, qword [0x140362a48]
lea rdx, [rsp + 0x68]
mov qword [rdx], rsi
mov qword [rdx + 8], rax
call fcn.140052330
mov rax, qword [0x140362a48]
cmp qword [rax + 0x40], 0
jne 0x140052086
xor eax, eax
lea rdi, [rsp + 0xac]
mov dword [rdi], eax
lea rbx, [rsp + 0xa8]
mov dword [rbx], eax
xorps xmm0, xmm0
movaps xmmword [rsp + 0xb0], xmm0
movaps xmmword [rsp + 0xc0], xmm0
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
lea rdx, [0x140311864]
lea r8, str.OverrideCommandLineArgs
mov rcx, 0xffffffff80000002
mov r9d, 2
call qword [sym.imp.ADVAPI32.dll_RegGetValueW]
test eax, eax
jne 0x140052086
cmp dword [rsp + 0xac], 1
jne 0x140052086
movabs r15, 0xaaaaaaaaaaaaaaaa
lea rsi, [rsp + 0x90]
mov qword [rsi + 0x10], r15
movaps xmm6, xmmword [0x1402fccc0]
movaps xmmword [rsi], xmm6
mov edx, dword [rsp + 0xa8]
shr edx, 1
mov rcx, rsi
call fcn.14012603e
mov rax, qword [rsi]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
lea rdx, [0x140311864]
lea r8, str.OverrideCommandLineArgs
mov rcx, 0xffffffff80000002
mov r9d, 2
call qword [sym.imp.ADVAPI32.dll_RegGetValueW]
test eax, eax
je 0x1400521e6
lea rcx, [rsp + 0x78]
mov qword [rcx], rsi
call fcn.140125a60
jmp 0x140052086
lea rdi, [rsp + 0xb8]
mov rdx, qword [rsp + 0x90]
lea rbx, [rsp + 0x78]
mov rcx, rbx
call fcn.1400c7802
movups xmm0, xmmword [rbx]
movups xmmword [rdi], xmm0
mov rax, qword [rbx + 0x10]
mov qword [rdi + 0x10], rax
mov byte [rdi - 8], 1
mov qword [rbx], rsi
lea rcx, [rsp + 0x78]
call fcn.140125a60
mov qword [rsp + 0xa0], r15
movaps xmmword [rsp + 0x90], xmm6
lea rax, [0x14030394a]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], 1
movzx r8d, byte [rdi + 0x17]
test r8b, r8b
js 0x140052257
and r8d, 0x7f
jmp 0x140052267
mov r8, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0xb8]
lea rbx, [rsp + 0x48]
mov rcx, rbx
mov rdx, rdi
call fcn.140150608
mov dword [rsp + 0x20], 1
lea r8, [rsp + 0x58]
mov rcx, rsi
mov rdx, rbx
mov r9d, 1
call fcn.140126680
mov r8, qword [rsp + 0x90]
lea rdi, [rsp + 0x78]
mov rcx, rsi
mov rdx, rdi
call fcn.1402456b0
mov rcx, qword [0x140362a48]
mov rdx, rsi
call fcn.14012e030
mov qword [rdi], rsi
lea rcx, [rsp + 0x78]
call fcn.14014e0aa
cmp byte [rsp + 0xb0], 0
je 0x140052086
cmp byte [rsp + 0xcf], 0
jns 0x140052086
mov rcx, qword [rsp + 0xb8]
call fcn.140153bcc
jmp 0x140052086
lea rax, str.null_pointer_passed_to_non_null_argument_of_char_traits_..._::length
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_string_view
lea r9, str.__s___nullptr
mov r8d, 0x109
call fcn.1401bf470
int3