Function at 0x14012d910
Capabilities:
Accept command line arguments

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x168
movaps xmmword [rsp + 0x150], xmm7
movaps xmmword [rsp + 0x140], xmm6
mov rax, qword [0x140260028]
xor rax, rsp
mov qword [rsp + 0x138], rax
mov r15, qword [0x140272388]
test r15, r15
jne 0x14012db0b
mov ecx, 0x50
call fcn.140146648
mov rsi, rax
xorps xmm6, xmm6
movups xmmword [rax], xmm6
mov byte [rax + 0x10], 0
mov ecx, 0x18
call fcn.140146648
mov qword [rsi + 0x18], rax
lea rcx, [rax + 0x18]
mov qword [rsi + 0x28], rcx
test rax, rax
je 0x14012e49d
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
mov qword [rsi + 0x20], rcx
mov r14, rsi
add r14, 0x38
movups xmmword [rsi + 0x38], xmm6
mov qword [rsi + 0x30], r14
mov qword [rsi + 0x48], 1
mov qword [0x140272388], rsi
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
test rax, rax
je 0x14012e49d
mov rdi, rax
mov rcx, rax
call fcn.1401469e0
lea rdx, [rsp + 0x100]
mov qword [rdx], rdi
mov qword [rdx + 8], rax
lea rax, [0x14023d310]
lea r8, [rsp + 0x120]
mov qword [r8], rax
mov qword [r8 + 8], 0x19
lea rdi, [rsp + 0xe0]
mov rcx, rdi
mov r9d, 3
call fcn.140117bd0
mov rax, qword [rdi + 8]
test rax, rax
je 0x14012db0b
mov rdi, qword [rsp + 0xe0]
mov qword [rsi], rdi
mov qword [rsi + 8], rax
mov dword [rsp + 0x74], 0
lea rcx, [0x14023d828]
xor edx, edx
mov r8d, 0x800
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
test rax, rax
mov qword [rsp + 0x38], rax
je 0x14012daf0
lea rdx, [0x14023d878]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14012daec
lea rdx, [rsp + 0x74]
mov rcx, rdi
call qword [0x1402529a0]
mov qword [rsp + 0x30], 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 + 0x28], rsi
mov qword [rsp + 0x40], r15
je 0x14012e50c
test ebx, ebx
js 0x14012e514
shl rbx, 3
lea rdi, [rbx + rbx*2]
mov rcx, rdi
call fcn.140146648
mov r12, rax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rax
add rax, rdi
mov qword [rsp + 0x60], rax
xor r15d, r15d
movabs rax, 0x7ffffffffffffff7
lea rbp, [rax + 5]
jmp 0x14012dbcb
xor eax, eax
jmp 0x14012da7b
lea rdx, [rsp + 0x74]
mov rcx, rdi
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
jmp 0x14012da7b
mov rcx, rsi
call fcn.140146640
test r15, r15
sete bl
mov rcx, qword [rsp + 0x138]
xor rcx, rsp
call fcn.140149190
mov eax, ebx
movaps xmm6, xmmword [rsp + 0x140]
movaps xmm7, xmmword [rsp + 0x150]
add rsp, 0x168
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, r13
and rax, rbp
add rax, 4
mov rsi, r13
or rsi, 3
cmp rsi, 0xb
cmove rsi, rax
inc rsi
js 0x14012e49f
lea rcx, [rsi + rsi]
call fcn.140146648
mov rcx, rax
mov qword [r12], rax
movabs rax, 0x7ffffffffffffff7
add rax, rsi
add rax, 9
mov qword [r12 + 0x10], rax
mov qword [r12 + 8], r13
lea rsi, [rcx + r13*2]
cmp rcx, rdi
ja 0x14012dba6
cmp rsi, rdi
ja 0x14012e49d
test r13, r13
je 0x14012dbb9
add r13, r13
mov rdx, rdi
mov r8, r13
call fcn.14014ac10
mov word [rsi], 0
add r12, 0x18
add r15, 8
cmp rbx, r15
je 0x14012dc1b
test r12, r12
je 0x14012e49d
mov rax, qword [rsp + 0x30]
mov rdi, qword [rax + r15]
test rdi, rdi
je 0x14012e49d
mov rcx, rdi
call fcn.1401469e0
mov r13, rax
movabs rax, 0x7ffffffffffffff7
cmp r13, rax
ja 0x14012e4a4
cmp r13, 0xa
ja 0x14012db47
mov byte [r12 + 0x17], r13b
mov rcx, r12
jmp 0x14012db94
mov qword [rsp + 0x58], r12
mov ecx, 0x18
call fcn.140146648
test rax, rax
mov rsi, qword [rsp + 0x28]
lea r15, [rsp + 0xe0]
je 0x14012e49d
mov rdi, rax
xorps xmm6, xmm6
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
mov rbx, qword [rsi + 0x18]
test rbx, rbx
je 0x14012dc9f
mov r15, qword [rsi + 0x20]
mov rcx, rbx
cmp r15, rbx
je 0x14012dc8e
add r15, 0xffffffffffffffe8
test r15, r15
je 0x14012e49d
cmp byte [r15 + 0x17], 0
js 0x14012e533
lea rax, [r15 - 0x18]
cmp r15, rbx
mov r15, rax
jne 0x14012dc6a
mov rcx, qword [rsi + 0x18]
mov qword [rsi + 0x20], rbx
call fcn.140146640
lea r15, [rsp + 0xe0]
mov rax, rdi
add rax, 0x18
mov qword [rsi + 0x18], rdi
mov qword [rsi + 0x20], rax
mov qword [rsi + 0x28], rax
mov rcx, qword [rsi + 0x38]
call fcn.140009690
mov qword [rsi + 0x30], r14
movups xmmword [rsi + 0x38], xmm6
mov qword [rsi + 0x48], 1
mov r14, qword [rsp + 0x50]
cmp r14, r12
je 0x14012e521
movsx rax, byte [r14 + 0x17]
test rax, rax
jns 0x14012e540
mov rcx, qword [r14]
mov rax, qword [r14 + 8]
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x80], rax
test rax, rax
js 0x14012e49d
test rax, rax
sete al
test rcx, rcx
setne cl
or cl, al
je 0x14012e49d
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x78]
call fcn.140100420
lea rbp, [rsp + 0x120]
mov rcx, rsi
mov rdx, rbp
call fcn.14004a180
cmp byte [rbp + 0x17], 0
jns 0x14012dd50
mov rcx, qword [rsp + 0x120]
call fcn.140146640
cmp r14, r12
je 0x14012e291
mov rax, r12
sub rax, r14
add r14, 0x18
cmp rax, 0x18
jl 0x14012e51e
lea rsi, [rsp + 0x100]
je 0x14012e28c
mov rax, qword [rsp + 0x28]
mov rax, qword [rax + 8]
mov qword [rsp + 0x48], rax
mov bl, 1
movaps xmm6, xmmword [0x14022cb50]
xorps xmm7, xmm7
movabs r13, 0x7ffffffffffffff7
jmp 0x14012e158
test rdx, rdx
jne 0x14012dfa0
jmp 0x14012df9d
lea rax, [r13 + 5]
and rax, rdi
add rax, 4
mov rsi, rdi
or rsi, 3
cmp rsi, 0xb
cmove rsi, rax
inc rsi
js 0x14012e49f
lea rcx, [rsi + rsi]
call fcn.140146648
mov rcx, rax
mov qword [rsp + 0x100], rax
lea rax, [rsi + r13]
add rax, 9
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x108], rdi
lea rsi, [rcx + rdi*2]
cmp rcx, r15
seta al
cmp rsi, r15
setbe dl
or dl, al
je 0x14012e49d
test rdi, rdi
je 0x14012de2c
add rdi, rdi
mov rdx, r15
mov r8, rdi
call fcn.14014ac10
mov word [rsi], 0
cmp byte [rsp + 0x137], 0
jns 0x14012de48
mov rcx, qword [rsp + 0x120]
call fcn.140146640
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x130], rax
movups xmm0, xmmword [rsp + 0x100]
movaps xmmword [rsp + 0x120], xmm0
xor eax, eax
mov qword [rsp + 0x110], rax
movaps xmmword [rsp + 0x100], xmm7
mov qword [rsp + 0xf0], rax
movaps xmmword [rsp + 0xe0], xmm7
movsx rcx, byte [rsp + 0x137]
test rcx, rcx
mov rax, qword [rsp + 0x120]
mov rdx, qword [rsp + 0x128]
mov r9, rcx
cmovs r9, rdx
mov r8, rbp
cmovs r8, rax
test r9, r9
lea rsi, [rsp + 0x100]
lea r15, [rsp + 0xe0]
js 0x14012e49d
sete r10b
test r8, r8
setne r11b
or r11b, r10b
je 0x14012e49d
cmp r9, 2
je 0x14012e4c5
test bl, 1
je 0x14012e4e5
mov rcx, rbp
mov rdx, rsi
mov r8, r15
call fcn.14012eba0
test al, al
je 0x14012e367
cmp qword [rsp + 0x48], 0
je 0x14012dfdd
movsx rbx, byte [rsp + 0x117]
test rbx, rbx
cmovs rbx, qword [rsp + 0x108]
mov rdi, qword [rsp + 0x100]
cmovns rdi, rsi
test rbx, rbx
js 0x14012e49d
sete al
test rdi, rdi
setne cl
or cl, al
je 0x14012e49d
mov qword [rsp + 0xa8], rdi
mov qword [rsp + 0xb0], rbx
lea rcx, [rsp + 0xa8]
call fcn.14012eee0
test rax, rax
je 0x14012dfdd
cmp rbx, rax
je 0x14012dfdd
lea rcx, [rdi + rbx*2]
mov rdx, rcx
test rbx, rbx
je 0x14012dfa0
mov rdx, rdi
mov r8, rbx
cmp word [rdx], 0x3d
je 0x14012dda4
add rdx, 2
dec r8
jne 0x14012df8a
mov rdx, rcx
sub rbx, rax
jb 0x14012e4b9
mov r8, rdx
sub r8, rdi
sar r8, 1
cmp rdx, rcx
mov rcx, 0xffffffffffffffff
cmove r8, rcx
sub r8, rax
cmp rbx, r8
cmovb r8, rbx
test r8, r8
js 0x14012e49d
cmp r8, 0xf
je 0x14012e240
movsx rcx, byte [rsp + 0xf7]
test rcx, rcx
cmovs rcx, qword [rsp + 0xe8]
mov rax, qword [rsp + 0xe0]
cmovns rax, r15
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rcx
test rcx, rcx
js 0x14012e49d
sete cl
test rax, rax
setne al
or al, cl
je 0x14012e49d
movsx rcx, byte [rsp + 0x117]
test rcx, rcx
cmovs rcx, qword [rsp + 0x108]
mov rax, qword [rsp + 0x100]
cmovns rax, rsi
mov qword [rsp + 0x98], rax
mov qword [rsp + 0xa0], rcx
test rcx, rcx
js 0x14012e49d
sete cl
test rax, rax
setne al
or al, cl
je 0x14012e49d
lea rdi, [rsp + 0xa8]
mov rcx, rdi
lea rdx, [rsp + 0x98]
call fcn.140127360
movsx rcx, byte [rsp + 0xbf]
test rcx, rcx
jns 0x14012e0a9
mov rcx, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0xa8]
mov qword [rsp + 0xc0], rdi
mov qword [rsp + 0xc8], rcx
test rcx, rcx
js 0x14012e49d
sete cl
test rdi, rdi
setne al
or al, cl
je 0x14012e49d
mov rcx, qword [rsp + 0x28]
lea rdx, [rsp + 0xc0]
lea r8, [rsp + 0xd0]
call fcn.140028790
cmp byte [rsp + 0xbf], 0
jns 0x14012e104
mov rcx, qword [rsp + 0xa8]
call fcn.140146640
mov bl, 1
cmp byte [rsp + 0xf7], 0
jns 0x14012e11d
mov rcx, qword [rsp + 0xe0]
call fcn.140146640
cmp byte [rsp + 0x117], 0
jns 0x14012e134
mov rcx, qword [rsp + 0x100]
call fcn.140146640
cmp byte [rsp + 0x137], 0
jns 0x14012e14b
mov rcx, qword [rsp + 0x120]
call fcn.140146640
add r14, 0x18
cmp r14, r12
je 0x14012e28c
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x130], rax
movaps xmmword [rsp + 0x120], xmm6
cmp byte [r14 + 0x17], 0
jns 0x14012e4ef
mov rdx, qword [r14]
mov r8, qword [r14 + 8]
mov rcx, rbp
call fcn.14012cf50
movsx rax, byte [rsp + 0x137]
test rax, rax
cmovs rax, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x120]
cmovns rcx, rbp
test rax, rax
js 0x14012e49d
sete dl
test rcx, rcx
setne r8b
or r8b, dl
je 0x14012e49d
lea rdx, [0x14023d310]
mov qword [rsp + 0x100], rdx
mov qword [rsp + 0x108], 0x19
mov qword [rsp + 0xe0], rcx
mov qword [rsp + 0xe8], rax
lea rcx, [rsp + 0xa8]
mov rdx, r15
mov r8, rsi
mov r9d, 3
call fcn.140117bd0
mov rdi, qword [rsp + 0xb0]
cmp rdi, r13
ja 0x14012e4ac
mov r15, qword [rsp + 0xa8]
cmp rdi, 0xa
ja 0x14012ddb2
mov byte [rsp + 0x117], dil
mov rcx, rsi
jmp 0x14012de01
cmp word [rdi + rax*2], 0x73
jne 0x14012dfdd
cmp word [rdi + rax*2 + 2], 0x69
jne 0x14012dfdd
cmp word [rdi + rax*2 + 4], 0x6e
jne 0x14012dfdd
cmp word [rdi + rax*2 + 6], 0x67
jne 0x14012dfdd
cmp word [rdi + rax*2 + 8], 0x6c
jne 0x14012dfdd
cmp word [rdi + rax*2 + 0xa], 0x65
je 0x14012e3d1
jmp 0x14012dfdd
mov rsi, qword [rsp + 0x28]
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14012e2b2
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
call fcn.14000bec0
mov rax, qword [0x140272138]
cmp dword [rax], 6
mov r15, qword [rsp + 0x40]
jg 0x14012e31c
xor eax, eax
mov qword [rsp + 0x130], rax
xorps xmm0, xmm0
movaps xmmword [rsp + 0x120], xmm0
lea r8, [rsp + 0x100]
mov qword [r8], rbp
mov qword [r8 + 8], rax
lea rax, str.no_sandbox
lea rdx, [rsp + 0xe0]
mov qword [rdx], rax
mov qword [rdx + 8], 0xa
mov rcx, rsi
call fcn.140028790
cmp byte [rsp + 0x137], 0
js 0x14012e555
mov rsi, qword [rsp + 0x50]
test rsi, rsi
je 0x14012db0b
mov rdi, qword [rsp + 0x58]
cmp rdi, rsi
je 0x14012db03
add rdi, 0xffffffffffffffe8
jmp 0x14012e356
mov rcx, qword [rdi]
call fcn.140146640
lea rax, [rdi - 0x18]
cmp rdi, rsi
mov rdi, rax
je 0x14012db03
test rdi, rdi
je 0x14012e49d
cmp byte [rdi + 0x17], 0
jns 0x14012e346
jmp 0x14012e33e
mov r8b, byte [rsp + 0x137]
mov rax, qword [rsp + 0x120]
mov rdx, qword [rsp + 0x128]
movzx ecx, r8b
mov bl, 1
test r8b, r8b
cmovs rcx, rdx
cmovns rax, rbp
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x90], rcx
test rcx, rcx
js 0x14012e49d
sete cl
test rax, rax
setne al
or al, cl
je 0x14012e49d
mov rcx, qword [rsp + 0x28]
lea rdx, [rsp + 0x88]
call fcn.140029290
jmp 0x14012e106
cmp word [rdi + rax*2 + 0xc], 0x2d
jne 0x14012dfdd
cmp word [rdi + rax*2 + 0xe], 0x61
jne 0x14012dfdd
cmp word [rdi + rax*2 + 0x10], 0x72
jne 0x14012dfdd
cmp word [rdi + rax*2 + 0x12], 0x67
jne 0x14012dfdd
cmp word [rdi + rax*2 + 0x14], 0x75
jne 0x14012dfdd
cmp word [rdi + rax*2 + 0x16], 0x6d
jne 0x14012dfdd
cmp word [rdi + rax*2 + 0x18], 0x65
jne 0x14012dfdd
cmp word [rdi + rax*2 + 0x1a], 0x6e
jne 0x14012dfdd
cmp word [rdi + rax*2 + 0x1c], 0x74
jne 0x14012dfdd
lea rdx, [rsp + 0x100]
mov rcx, qword [rsp + 0x28]
call fcn.1401a6d80
cmp byte [rsp + 0xf7], 0
jns 0x14012e466
mov rcx, qword [rsp + 0xe0]
call fcn.140146640
cmp byte [rsp + 0x117], 0
jns 0x14012e47d
mov rcx, qword [rsp + 0x100]
call fcn.140146640
cmp byte [rsp + 0x137], 0
jns 0x14012e28c
mov rcx, qword [rsp + 0x120]
call fcn.140146640
jmp 0x14012e28c
ud2
call fcn.140187a10
mov rcx, r12
call fcn.1401879d0
lea rcx, [rsp + 0x100]
call fcn.1401879d0
lea rcx, str.string_view::substr
call fcn.140187a60
cmp word [r8], 0x2d
jne 0x14012deeb
test cl, cl
mov r8, rbp
cmovs r8, rax
cmp word [r8 + 2], 0x2d
jne 0x14012deeb
xor ebx, ebx
mov r8d, ecx
jmp 0x14012e385
mov rax, qword [r14 + 0x10]
mov qword [rsp + 0x130], rax
movups xmm0, xmmword [r14]
movaps xmmword [rsp + 0x120], xmm0
jmp 0x14012e18c
xor r12d, r12d
jmp 0x14012dc20
lea rcx, [rsp + 0x50]
call fcn.140187c70
int3
lea rcx, [rsp + 0x120]
call fcn.140144bd0
jmp 0x14012dd2a
mov rcx, qword [r15]
call fcn.140146640
jmp 0x14012dc7e
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x80], rax
mov rcx, r14
jmp 0x14012dd04
mov rcx, qword [rsp + 0x120]
call fcn.140146640
jmp 0x14012e31c