Function at 0x14010d820
Capabilities:
Accept command line arguments

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x188
movaps xmmword [rsp + 0x170], xmm7
movaps xmmword [rsp + 0x160], xmm6
mov rax, qword [0x14022b040]
xor rax, rsp
mov qword [rsp + 0x158], rax
mov rax, qword [0x14023d2d0]
test rax, rax
jne 0x14010e148
mov qword [rsp + 0x40], rax
mov ecx, 0x50
call fcn.140130ce8
mov r14, rax
xorps xmm6, xmm6
movups xmmword [rax], xmm6
mov byte [rax + 0x10], 0
mov ecx, 0x18
call fcn.140130ce8
mov qword [r14 + 0x18], rax
lea rcx, [rax + 0x18]
mov qword [r14 + 0x28], rcx
test rax, rax
je 0x14010e2c8
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
mov qword [r14 + 0x20], rcx
mov rsi, r14
add rsi, 0x38
movups xmmword [r14 + 0x38], xmm6
mov qword [r14 + 0x30], rsi
mov qword [r14 + 0x48], 1
mov qword [0x14023d2d0], r14
call qword [0x14021fa98]
test rax, rax
je 0x14010e2c8
mov rdi, rax
mov rcx, rax
call fcn.140131148
lea rdx, [rsp + 0x78]
mov qword [rdx], rdi
mov qword [rdx + 8], rax
lea rdi, [rsp + 0x140]
mov rcx, rdi
mov r8d, 3
call fcn.1400228a0
mov rax, qword [rdi + 8]
test rax, rax
je 0x14010e143
mov rdi, qword [rsp + 0x140]
mov qword [r14], rdi
mov qword [r14 + 8], rax
mov dword [rsp + 0x74], 0
lea rcx, [0x14020b388]
xor edx, edx
mov r8d, 0x800
call qword [0x14021fd28]
test rax, rax
mov qword [rsp + 0x38], rax
je 0x14010e392
lea rdx, [0x14020b3d8]
mov rcx, rax
call qword [0x14021fba0]
test rax, rax
je 0x14010e350
lea rdx, [rsp + 0x74]
mov rcx, rdi
call qword [0x14021e0b8]
mov qword [rsp + 0x28], rax
movsxd rbx, dword [rsp + 0x74]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], 0
test rbx, rbx
mov qword [rsp + 0x30], r14
je 0x14010e35e
test ebx, ebx
js 0x14010e366
shl rbx, 3
lea rdi, [rbx + rbx*2]
mov rcx, rdi
call fcn.140130ce8
mov r14, rax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rax
add rax, rdi
mov qword [rsp + 0x60], rax
xor r12d, r12d
mov r13d, 0xd
jmp 0x14010da5c
mov rax, r15
or rax, 3
lea rbp, [rax + 1]
cmp rax, 0xb
cmove rbp, r13
test rbp, rbp
js 0x14010e2ca
lea rcx, [rbp*2]
call fcn.140130ce8
mov rcx, rax
mov qword [r14], rax
movabs rax, 0x7ffffffffffffff7
add rax, rbp
add rax, 9
mov qword [r14 + 0x10], rax
mov qword [r14 + 8], r15
lea rbp, [rcx + r15*2]
cmp rcx, rdi
ja 0x14010da36
cmp rbp, rdi
ja 0x14010e2c8
test r15, r15
je 0x14010da49
add r15, r15
mov rdx, rdi
mov r8, r15
call fcn.1401671f0
mov word [rbp], 0
add r14, 0x18
add r12, 8
cmp rbx, r12
je 0x14010daab
test r14, r14
je 0x14010e2c8
mov rax, qword [rsp + 0x28]
mov rdi, qword [rax + r12]
test rdi, rdi
je 0x14010e2c8
mov rcx, rdi
call fcn.140131148
mov r15, rax
movabs rax, 0x7ffffffffffffff7
cmp r15, rax
ja 0x14010e2cf
cmp r15, 0xa
ja 0x14010d9dc
mov byte [r14 + 0x17], r15b
mov rcx, r14
jmp 0x14010da24
mov qword [rsp + 0x58], r14
mov ecx, 0x18
call fcn.140130ce8
test rax, rax
mov r12, qword [rsp + 0x30]
je 0x14010e2c8
mov rdi, rax
xorps xmm6, xmm6
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
mov rbx, qword [r12 + 0x18]
test rbx, rbx
je 0x14010db23
mov r15, qword [r12 + 0x20]
mov rcx, rbx
cmp r15, rbx
je 0x14010db19
add r15, 0xffffffffffffffe8
test r15, r15
je 0x14010e2c8
cmp byte [r15 + 0x17], 0
js 0x14010e385
lea rax, [r15 - 0x18]
cmp r15, rbx
mov r15, rax
jne 0x14010daf4
mov rcx, qword [r12 + 0x18]
mov qword [r12 + 0x20], rbx
call fcn.140130d24
mov rax, rdi
add rax, 0x18
mov qword [r12 + 0x18], rdi
mov qword [r12 + 0x20], rax
mov qword [r12 + 0x28], rax
mov rcx, qword [r12 + 0x38]
call fcn.1400086a0
mov qword [r12 + 0x30], rsi
movups xmmword [r12 + 0x38], xmm6
mov qword [r12 + 0x48], 1
mov rsi, qword [rsp + 0x50]
cmp rsi, r14
je 0x14010e373
movsx rax, byte [rsi + 0x17]
test rax, rax
jns 0x14010e3a5
mov rcx, qword [rsi]
mov rax, qword [rsi + 8]
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x90], rax
test rax, rax
js 0x14010e2c8
test rax, rax
sete al
test rcx, rcx
setne cl
or cl, al
je 0x14010e2c8
lea rcx, [rsp + 0x140]
lea rdx, [rsp + 0x88]
call fcn.1400f2100
lea r13, [rsp + 0x140]
mov rcx, r12
mov rdx, r13
call fcn.1400236b0
cmp byte [r13 + 0x17], 0
jns 0x14010dbe3
mov rcx, qword [rsp + 0x140]
call fcn.140130d24
cmp rsi, r14
je 0x14010e0d9
mov rax, r14
sub rax, rsi
add rsi, 0x18
cmp rax, 0x18
jl 0x14010e370
je 0x14010e0d9
mov rax, qword [r12 + 8]
mov qword [rsp + 0x48], rax
mov r15b, 1
movaps xmm6, xmmword [0x1401fa990]
xorps xmm7, xmm7
lea rdi, [rsp + 0xb8]
jmp 0x14010dfb8
test rdx, rdx
jne 0x14010de07
jmp 0x14010de04
mov rax, r13
or rax, 3
lea r12, [rax + 1]
cmp rax, 0xb
mov eax, 0xd
cmove r12, rax
test r12, r12
js 0x14010e2ca
lea rcx, [r12 + r12]
call fcn.140130ce8
mov rcx, rax
mov qword [rsp + 0x120], rax
movabs rax, 0x7ffffffffffffff7
add rax, r12
add rax, 9
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x128], r13
lea r12, [rcx + r13*2]
cmp rcx, rbx
seta al
cmp r12, rbx
setbe dl
or dl, al
je 0x14010e2c8
test r13, r13
je 0x14010dcb9
add r13, r13
mov rdx, rbx
mov r8, r13
call fcn.1401671f0
mov word [r12], 0
cmp byte [rsp + 0x157], 0
jns 0x14010dcd7
mov rcx, qword [rsp + 0x140]
call fcn.140130d24
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x150], rax
movups xmm0, xmmword [rsp + 0x120]
movaps xmmword [rsp + 0x140], xmm0
xor eax, eax
mov qword [rsp + 0x130], rax
movaps xmmword [rsp + 0x120], xmm7
mov qword [rsp + 0x100], rax
movaps xmmword [rsp + 0xf0], xmm7
movsx rax, byte [rsp + 0x157]
test rax, rax
mov rcx, qword [rsp + 0x148]
mov rdx, rax
cmovs rdx, rcx
cmp rdx, 2
mov r12, qword [rsp + 0x30]
mov r13, rdi
je 0x14010e316
test r15b, 1
mov rdi, rbp
je 0x14010e2f0
mov rcx, r13
lea rbp, [rsp + 0x120]
mov rdx, rbp
lea r8, [rsp + 0xf0]
call fcn.14010eb70
test al, al
je 0x14010e18c
cmp qword [rsp + 0x48], 0
je 0x14010de3b
movsx r15, byte [rsp + 0x137]
test r15, r15
cmovs r15, qword [rsp + 0x128]
mov rbx, qword [rsp + 0x120]
cmovns rbx, rbp
test r15, r15
js 0x14010e2c8
sete al
test rbx, rbx
setne cl
or cl, al
je 0x14010e2c8
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xc0], r15
mov rcx, rdi
call fcn.14010eea0
test rax, rax
je 0x14010de3b
cmp r15, rax
je 0x14010de3b
lea rcx, [rbx + r15*2]
mov rdx, rcx
test r15, r15
je 0x14010de07
mov rdx, rbx
mov r8, r15
cmp word [rdx], 0x3d
je 0x14010dc2a
add rdx, 2
dec r8
jne 0x14010ddf1
mov rdx, rcx
sub r15, rax
jb 0x14010e2e4
mov r8, rdx
sub r8, rbx
sar r8, 1
cmp rdx, rcx
mov rcx, 0xffffffffffffffff
cmove r8, rcx
sub r8, rax
cmp r15, r8
cmovb r8, r15
cmp r8, 0xf
je 0x14010e099
movsx rcx, byte [rsp + 0x107]
test rcx, rcx
cmovs rcx, qword [rsp + 0xf8]
mov rax, qword [rsp + 0xf0]
lea rdx, [rsp + 0xf0]
cmovns rax, rdx
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xe8], rcx
test rcx, rcx
js 0x14010e2c8
sete cl
test rax, rax
setne al
or al, cl
je 0x14010e2c8
movsx rcx, byte [rsp + 0x137]
test rcx, rcx
cmovs rcx, qword [rsp + 0x128]
mov rax, qword [rsp + 0x120]
cmovns rax, rbp
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0xb0], rcx
test rcx, rcx
js 0x14010e2c8
sete cl
test rax, rax
setne al
or al, cl
je 0x14010e2c8
mov rcx, rdi
lea rdx, [rsp + 0xa8]
call fcn.14010d170
movsx rcx, byte [rsp + 0xcf]
mov rax, rdi
test rcx, rcx
jns 0x14010df0a
mov rcx, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rcx
test rcx, rcx
js 0x14010e2c8
sete cl
test rax, rax
setne al
or al, cl
je 0x14010e2c8
mov rcx, r12
lea rdx, [rsp + 0xd0]
lea r8, [rsp + 0xe0]
call fcn.140022a50
cmp byte [rsp + 0xcf], 0
jns 0x14010df63
mov rcx, qword [rsp + 0xb8]
call fcn.140130d24
mov r15b, 1
cmp byte [rsp + 0x107], 0
jns 0x14010df7d
mov rcx, qword [rsp + 0xf0]
call fcn.140130d24
cmp byte [rsp + 0x137], 0
jns 0x14010df94
mov rcx, qword [rsp + 0x120]
call fcn.140130d24
cmp byte [rsp + 0x157], 0
jns 0x14010dfab
mov rcx, qword [rsp + 0x140]
call fcn.140130d24
add rsi, 0x18
cmp rsi, r14
je 0x14010e0d9
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x150], rax
movaps xmmword [rsp + 0x140], xmm6
cmp byte [rsi + 0x17], 0
jns 0x14010e2fa
mov rdx, qword [rsi]
mov r8, qword [rsi + 8]
mov rcx, r13
call fcn.14010cca0
movsx rcx, byte [rsp + 0x157]
test rcx, rcx
cmovs rcx, qword [rsp + 0x148]
mov rax, qword [rsp + 0x140]
cmovns rax, r13
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x118], rcx
test rcx, rcx
js 0x14010e2c8
sete cl
test rax, rax
setne al
or al, cl
je 0x14010e2c8
mov rbp, rdi
mov rdi, r13
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x110]
mov r8d, 3
call fcn.1400228a0
mov r13, qword [rsp + 0xf8]
movabs rax, 0x7ffffffffffffff7
cmp r13, rax
ja 0x14010e2d7
mov rbx, qword [rsp + 0xf0]
cmp r13, 0xa
ja 0x14010dc38
mov byte [rsp + 0x137], r13b
lea rcx, [rsp + 0x120]
jmp 0x14010dc8e
cmp word [rbx + rax*2], 0x73
jne 0x14010de3b
cmp word [rbx + rax*2 + 2], 0x69
jne 0x14010de3b
cmp word [rbx + rax*2 + 4], 0x6e
jne 0x14010de3b
cmp word [rbx + rax*2 + 6], 0x67
jne 0x14010de3b
cmp word [rbx + rax*2 + 8], 0x6c
je 0x14010e1f2
jmp 0x14010de3b
xorps xmm0, xmm0
movups xmmword [r12], xmm0
mov rcx, qword [rsp + 0x28]
call qword [0x14021fd38]
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14010e0fc
call qword [0x14021fa78]
mov rsi, qword [rsp + 0x50]
test rsi, rsi
je 0x14010e143
mov rdi, qword [rsp + 0x58]
cmp rdi, rsi
je 0x14010e13b
add rdi, 0xffffffffffffffe8
jmp 0x14010e12a
mov rcx, qword [rdi]
call fcn.140130d24
lea rax, [rdi - 0x18]
cmp rdi, rsi
mov rdi, rax
je 0x14010e13b
test rdi, rdi
je 0x14010e2c8
cmp byte [rdi + 0x17], 0
js 0x14010e116
jmp 0x14010e11e
mov rcx, rsi
call fcn.140130d24
mov rax, qword [rsp + 0x40]
test rax, rax
sete al
mov rcx, qword [rsp + 0x158]
xor rcx, rsp
cmp rcx, qword [0x14022b040]
je 0x14010e168
call fcn.1401335a0
int3
movaps xmm6, xmmword [rsp + 0x160]
movaps xmm7, xmmword [rsp + 0x170]
add rsp, 0x188
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov dl, byte [rsp + 0x157]
mov rcx, qword [rsp + 0x148]
movzx eax, dl
mov r15b, 1
test dl, dl
cmovs rax, rcx
mov rcx, qword [rsp + 0x140]
cmovns rcx, r13
mov qword [rsp + 0x98], rcx
mov qword [rsp + 0xa0], rax
test rax, rax
js 0x14010e2c8
sete al
test rcx, rcx
setne cl
or cl, al
je 0x14010e2c8
mov rcx, r12
lea rdx, [rsp + 0x98]
call fcn.140023820
jmp 0x14010df66
cmp word [rbx + rax*2 + 0xa], 0x65
jne 0x14010de3b
cmp word [rbx + rax*2 + 0xc], 0x2d
jne 0x14010de3b
cmp word [rbx + rax*2 + 0xe], 0x61
jne 0x14010de3b
cmp word [rbx + rax*2 + 0x10], 0x72
jne 0x14010de3b
cmp word [rbx + rax*2 + 0x12], 0x67
jne 0x14010de3b
cmp word [rbx + rax*2 + 0x14], 0x75
jne 0x14010de3b
cmp word [rbx + rax*2 + 0x16], 0x6d
jne 0x14010de3b
cmp word [rbx + rax*2 + 0x18], 0x65
jne 0x14010de3b
cmp word [rbx + rax*2 + 0x1a], 0x6e
jne 0x14010de3b
cmp word [rbx + rax*2 + 0x1c], 0x74
jne 0x14010de3b
lea rdx, [rsp + 0x120]
mov rcx, r12
call fcn.14018b790
cmp byte [rsp + 0x107], 0
jns 0x14010e291
mov rcx, qword [rsp + 0xf0]
call fcn.140130d24
cmp byte [rsp + 0x137], 0
jns 0x14010e2a8
mov rcx, qword [rsp + 0x120]
call fcn.140130d24
cmp byte [rsp + 0x157], 0
jns 0x14010e0d9
mov rcx, qword [rsp + 0x140]
call fcn.140130d24
jmp 0x14010e0d9
ud2
call fcn.14016cc10
mov rcx, r14
call fcn.14016cbd0
lea rcx, [rsp + 0x120]
call fcn.14016cbd0
lea rcx, str.string_view::substr
call fcn.14016cbb0
xor r15d, r15d
mov edx, eax
jmp 0x14010e1a1
mov rax, qword [rsi + 0x10]
mov qword [rsp + 0x150], rax
movups xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x140], xmm0
jmp 0x14010dfeb
test al, al
mov rdx, qword [rsp + 0x140]
mov r8, r13
cmovs r8, rdx
cmp word [r8], 0x2d
jne 0x14010dd46
test al, al
cmovns rdx, r13
cmp word [rdx + 2], 0x2d
jne 0x14010dd46
xor r15d, r15d
mov edx, eax
mov rdi, rbp
jmp 0x14010e1a1
mov qword [rsp + 0x28], 0
jmp 0x14010d97d
xor r14d, r14d
jmp 0x14010dab0
lea rcx, [rsp + 0x50]
call fcn.14016d350
int3
lea rcx, [rsp + 0x140]
call fcn.14012f020
jmp 0x14010dbbc
mov rcx, qword [r15]
call fcn.140130d24
jmp 0x14010db08
lea rdx, [rsp + 0x74]
mov rcx, rdi
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
jmp 0x14010d978
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x90], rax
mov rcx, rsi
jmp 0x14010db93