Function at 0x140022a70
Capabilities:
Accept command line arguments

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc8
movaps xmmword [rsp + 0xb0], xmm6
mov rax, qword [0x1400e5028]
xor rax, rsp
mov qword [rsp + 0xa8], rax
mov r12, qword [0x1400ec5d8]
test r12, r12
jne 0x140022dca
mov ecx, 0x48
call fcn.14005dad8
mov rdi, rax
xorps xmm6, xmm6
movups xmmword [rax], xmm6
mov ecx, 0x18
call fcn.14005dad8
mov qword [rdi + 0x10], rax
lea rcx, [rax + 0x18]
mov qword [rdi + 0x20], rcx
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
mov qword [rdi + 0x18], rcx
lea r15, [rdi + 0x30]
movups xmmword [rdi + 0x30], xmm6
mov qword [rdi + 0x28], r15
mov qword [rdi + 0x40], 1
mov qword [0x1400ec5d8], rdi
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov qword [rsp + 0x40], rax
test rax, rax
je 0x140022e0e
mov rcx, rax
call fcn.140076a78
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x48]
lea rdx, [rsp + 0x70]
mov qword [rdx], rax
mov qword [rdx + 8], rcx
lea rsi, [rsp + 0x90]
mov rcx, rsi
mov r8d, 3
call fcn.140028080
movups xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x40], xmm0
cmp qword [rsp + 0x48], 0
je 0x140022dca
movaps xmm0, xmmword [rsp + 0x40]
movups xmmword [rdi], xmm0
mov dword [rsp + 0x6c], 0
lea rcx, str.api_ms_win_downlevel_shell32_l1_1_0.dll
xor edx, edx
mov r8d, 0x800
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
test rax, rax
mov qword [rsp + 0x20], rax
je 0x140022e15
lea rdx, [0x1400cface]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140022e2a
mov rbx, rax
mov rcx, qword [rsp + 0x40]
lea rdx, [rsp + 0x6c]
call rax
mov rbp, rax
movsxd r14, dword [rsp + 0x6c]
xorps xmm6, xmm6
movaps xmmword [rsp + 0x50], xmm6
mov qword [rsp + 0x60], 0
test r14, r14
je 0x140022cd7
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], r12
test r14d, r14d
js 0x140022e31
shl r14, 3
lea rsi, [r14 + r14*2]
mov rcx, rsi
call fcn.14005dad8
mov rdi, rax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x50], rax
add rax, rsi
mov qword [rsp + 0x60], rax
xor r15d, r15d
mov rbx, qword [rbp + r15]
mov rcx, rbx
call fcn.140076a78
mov rsi, rax
movabs rax, 0x7fffffffffffffef
cmp rsi, rax
ja 0x140022dfe
cmp rsi, 0xb
jae 0x140022c80
mov byte [rdi + 0x17], sil
test rsi, rsi
je 0x140022c66
cmp rsi, 3
jne 0x140022e06
movzx eax, word [rbx + 4]
mov word [rdi + 4], ax
mov eax, dword [rbx]
mov dword [rdi], eax
mov r13, rdi
mov word [r13 + rsi*2], 0
add rdi, 0x18
add r15, 8
cmp r14, r15
jne 0x140022c1e
jmp 0x140022cc3
lea r12, [rsi + 8]
and r12, 0xfffffffffffffff8
lea rcx, [r12 + r12]
call fcn.14005dad8
mov r13, rax
mov qword [rdi], rax
movabs rax, 0x7fffffffffffffef
add rax, 0x11
or rax, r12
mov qword [rdi + 0x10], rax
mov qword [rdi + 8], rsi
mov r8, rsi
add r8, rsi
mov rcx, r13
mov rdx, rbx
call fcn.140060dd0
jmp 0x140022c69
mov qword [rsp + 0x58], rdi
mov r12, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x30]
mov r15, qword [rsp + 0x28]
mov ecx, 0x18
call fcn.14005dad8
mov rsi, rax
lea rbx, [rax + 0x18]
movups xmmword [rax], xmm6
xor r14d, r14d
mov qword [rax + 0x10], r14
lea rcx, [rdi + 0x10]
call fcn.140025100
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], rbx
mov qword [rdi + 0x20], rbx
lea rcx, [rsp + 0x90]
mov qword [rcx + 0x10], r14
movaps xmmword [rcx], xmm6
call fcn.140044d50
mov rcx, rdi
add rcx, 0x28
mov rdx, qword [rdi + 0x30]
call fcn.1400250a0
mov qword [rdi + 0x28], r15
movups xmmword [rdi + 0x30], xmm6
mov qword [rdi + 0x40], 1
mov rax, qword [rsp + 0x50]
cmp rax, qword [rsp + 0x58]
je 0x140022e3b
movzx ecx, byte [rax + 0x17]
test cl, cl
mov rbx, qword [rax]
cmovns rbx, rax
lea rdx, [rsp + 0x80]
mov qword [rdx], rbx
cmovs rcx, qword [rax + 8]
mov qword [rdx + 8], rcx
lea rcx, [rsp + 0x90]
call fcn.140044e90
lea rsi, [rsp + 0x90]
mov rcx, rdi
mov rdx, rsi
call fcn.140022910
mov rcx, rsi
call fcn.140044f90
lea rdx, [rsp + 0x50]
mov rcx, rdi
call fcn.140022e50
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov rcx, qword [rsp + 0x20]
test rcx, rcx
je 0x140022dc0
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
lea rcx, [rsp + 0x50]
call fcn.140044d50
test r12, r12
sete bl
mov rcx, qword [rsp + 0xa8]
xor rcx, rsp
call fcn.14005e850
mov eax, ebx
movaps xmm6, xmmword [rsp + 0xb0]
add rsp, 0xc8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, rdi
call fcn.1400a9630
mov r13, rdi
jmp 0x140022cb0
xor eax, eax
jmp 0x140022b1c
mov rcx, qword [rsp + 0x40]
lea rdx, [rsp + 0x6c]
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
jmp 0x140022bbc
xor ebp, ebp
jmp 0x140022bbf
lea rcx, [rsp + 0x50]
call fcn.1400898d0
lea rcx, [rsp + 0x90]
call fcn.140044e50
jmp 0x140022d79