Function at 0x140110fd0
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 [0x14022c040]
xor rax, rsp
mov qword [rsp + 0x158], rax
mov rax, qword [0x14023e368]
test rax, rax
jne 0x1401118f8
mov qword [rsp + 0x40], rax
mov ecx, 0x50
call fcn.140133b54
mov r14, rax
xorps xmm6, xmm6
movups xmmword [rax], xmm6
mov byte [rax + 0x10], 0
mov ecx, 0x18
call fcn.140133b54
mov qword [r14 + 0x18], rax
lea rcx, [rax + 0x18]
mov qword [r14 + 0x28], rcx
test rax, rax
je 0x140111a78
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 [0x14023e368], r14
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
test rax, rax
je 0x140111a78
mov rdi, rax
mov rcx, rax
call fcn.1401341e0
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.140021f80
mov rax, qword [rdi + 8]
test rax, rax
je 0x1401118f3
mov rdi, qword [rsp + 0x140]
mov qword [r14], rdi
mov qword [r14 + 8], rax
mov dword [rsp + 0x74], 0
lea rcx, [0x14020b3b8]
xor edx, edx
mov r8d, 0x800
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
test rax, rax
mov qword [rsp + 0x38], rax
je 0x140111b42
lea rdx, [0x14020b408]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140111b00
lea rdx, [rsp + 0x74]
mov rcx, rdi
call qword [0x14021e390]
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 0x140111b0e
test ebx, ebx
js 0x140111b16
shl rbx, 3
lea rdi, [rbx + rbx*2]
mov rcx, rdi
call fcn.140133b54
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 0x14011120c
mov rax, r15
or rax, 3
lea rbp, [rax + 1]
cmp rax, 0xb
cmove rbp, r13
test rbp, rbp
js 0x140111a7a
lea rcx, [rbp*2]
call fcn.140133b54
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 0x1401111e6
cmp rbp, rdi
ja 0x140111a78
test r15, r15
je 0x1401111f9
add r15, r15
mov rdx, rdi
mov r8, r15
call fcn.14016a030
mov word [rbp], 0
add r14, 0x18
add r12, 8
cmp rbx, r12
je 0x14011125b
test r14, r14
je 0x140111a78
mov rax, qword [rsp + 0x28]
mov rdi, qword [rax + r12]
test rdi, rdi
je 0x140111a78
mov rcx, rdi
call fcn.1401341e0
mov r15, rax
movabs rax, 0x7ffffffffffffff7
cmp r15, rax
ja 0x140111a7f
cmp r15, 0xa
ja 0x14011118c
mov byte [r14 + 0x17], r15b
mov rcx, r14
jmp 0x1401111d4
mov qword [rsp + 0x58], r14
mov ecx, 0x18
call fcn.140133b54
test rax, rax
mov r12, qword [rsp + 0x30]
je 0x140111a78
mov rdi, rax
xorps xmm6, xmm6
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
mov rbx, qword [r12 + 0x18]
test rbx, rbx
je 0x1401112d3
mov r15, qword [r12 + 0x20]
mov rcx, rbx
cmp r15, rbx
je 0x1401112c9
add r15, 0xffffffffffffffe8
test r15, r15
je 0x140111a78
cmp byte [r15 + 0x17], 0
js 0x140111b35
lea rax, [r15 - 0x18]
cmp r15, rbx
mov r15, rax
jne 0x1401112a4
mov rcx, qword [r12 + 0x18]
mov qword [r12 + 0x20], rbx
call fcn.140133b2c
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.140008be0
mov qword [r12 + 0x30], rsi
movups xmmword [r12 + 0x38], xmm6
mov qword [r12 + 0x48], 1
mov rsi, qword [rsp + 0x50]
cmp rsi, r14
je 0x140111b23
movsx rax, byte [rsi + 0x17]
test rax, rax
jns 0x140111b55
mov rcx, qword [rsi]
mov rax, qword [rsi + 8]
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x90], rax
test rax, rax
js 0x140111a78
test rax, rax
sete al
test rcx, rcx
setne cl
or cl, al
je 0x140111a78
lea rcx, [rsp + 0x140]
lea rdx, [rsp + 0x88]
call fcn.1400f4790
lea r13, [rsp + 0x140]
mov rcx, r12
mov rdx, r13
call fcn.140022d90
cmp byte [r13 + 0x17], 0
jns 0x140111393
mov rcx, qword [rsp + 0x140]
call fcn.140133b2c
cmp rsi, r14
je 0x140111889
mov rax, r14
sub rax, rsi
add rsi, 0x18
cmp rax, 0x18
jl 0x140111b20
je 0x140111889
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 0x140111768
test rdx, rdx
jne 0x1401115b7
jmp 0x1401115b4
mov rax, r13
or rax, 3
lea r12, [rax + 1]
cmp rax, 0xb
mov eax, 0xd
cmove r12, rax
test r12, r12
js 0x140111a7a
lea rcx, [r12 + r12]
call fcn.140133b54
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 0x140111a78
test r13, r13
je 0x140111469
add r13, r13
mov rdx, rbx
mov r8, r13
call fcn.14016a030
mov word [r12], 0
cmp byte [rsp + 0x157], 0
jns 0x140111487
mov rcx, qword [rsp + 0x140]
call fcn.140133b2c
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 0x140111ac6
test r15b, 1
mov rdi, rbp
je 0x140111aa0
mov rcx, r13
lea rbp, [rsp + 0x120]
mov rdx, rbp
lea r8, [rsp + 0xf0]
call fcn.140112330
test al, al
je 0x14011193c
cmp qword [rsp + 0x48], 0
je 0x1401115eb
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 0x140111a78
sete al
test rbx, rbx
setne cl
or cl, al
je 0x140111a78
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xc0], r15
mov rcx, rdi
call fcn.140112660
test rax, rax
je 0x1401115eb
cmp r15, rax
je 0x1401115eb
lea rcx, [rbx + r15*2]
mov rdx, rcx
test r15, r15
je 0x1401115b7
mov rdx, rbx
mov r8, r15
cmp word [rdx], 0x3d
je 0x1401113da
add rdx, 2
dec r8
jne 0x1401115a1
mov rdx, rcx
sub r15, rax
jb 0x140111a94
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 0x140111849
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 0x140111a78
sete cl
test rax, rax
setne al
or al, cl
je 0x140111a78
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 0x140111a78
sete cl
test rax, rax
setne al
or al, cl
je 0x140111a78
mov rcx, rdi
lea rdx, [rsp + 0xa8]
call fcn.140110920
movsx rcx, byte [rsp + 0xcf]
mov rax, rdi
test rcx, rcx
jns 0x1401116ba
mov rcx, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rcx
test rcx, rcx
js 0x140111a78
sete cl
test rax, rax
setne al
or al, cl
je 0x140111a78
mov rcx, r12
lea rdx, [rsp + 0xd0]
lea r8, [rsp + 0xe0]
call fcn.140022130
cmp byte [rsp + 0xcf], 0
jns 0x140111713
mov rcx, qword [rsp + 0xb8]
call fcn.140133b2c
mov r15b, 1
cmp byte [rsp + 0x107], 0
jns 0x14011172d
mov rcx, qword [rsp + 0xf0]
call fcn.140133b2c
cmp byte [rsp + 0x137], 0
jns 0x140111744
mov rcx, qword [rsp + 0x120]
call fcn.140133b2c
cmp byte [rsp + 0x157], 0
jns 0x14011175b
mov rcx, qword [rsp + 0x140]
call fcn.140133b2c
add rsi, 0x18
cmp rsi, r14
je 0x140111889
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x150], rax
movaps xmmword [rsp + 0x140], xmm6
cmp byte [rsi + 0x17], 0
jns 0x140111aaa
mov rdx, qword [rsi]
mov r8, qword [rsi + 8]
mov rcx, r13
call fcn.140110450
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 0x140111a78
sete cl
test rax, rax
setne al
or al, cl
je 0x140111a78
mov rbp, rdi
mov rdi, r13
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x110]
mov r8d, 3
call fcn.140021f80
mov r13, qword [rsp + 0xf8]
movabs rax, 0x7ffffffffffffff7
cmp r13, rax
ja 0x140111a87
mov rbx, qword [rsp + 0xf0]
cmp r13, 0xa
ja 0x1401113e8
mov byte [rsp + 0x137], r13b
lea rcx, [rsp + 0x120]
jmp 0x14011143e
cmp word [rbx + rax*2], 0x73
jne 0x1401115eb
cmp word [rbx + rax*2 + 2], 0x69
jne 0x1401115eb
cmp word [rbx + rax*2 + 4], 0x6e
jne 0x1401115eb
cmp word [rbx + rax*2 + 6], 0x67
jne 0x1401115eb
cmp word [rbx + rax*2 + 8], 0x6c
je 0x1401119a2
jmp 0x1401115eb
xorps xmm0, xmm0
movups xmmword [r12], xmm0
mov rcx, qword [rsp + 0x28]
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x1401118ac
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rsi, qword [rsp + 0x50]
test rsi, rsi
je 0x1401118f3
mov rdi, qword [rsp + 0x58]
cmp rdi, rsi
je 0x1401118eb
add rdi, 0xffffffffffffffe8
jmp 0x1401118da
mov rcx, qword [rdi]
call fcn.140133b2c
lea rax, [rdi - 0x18]
cmp rdi, rsi
mov rdi, rax
je 0x1401118eb
test rdi, rdi
je 0x140111a78
cmp byte [rdi + 0x17], 0
js 0x1401118c6
jmp 0x1401118ce
mov rcx, rsi
call fcn.140133b2c
mov rax, qword [rsp + 0x40]
test rax, rax
sete al
mov rcx, qword [rsp + 0x158]
xor rcx, rsp
cmp rcx, qword [0x14022c040]
je 0x140111918
call fcn.1401363f0
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 0x140111a78
sete al
test rcx, rcx
setne cl
or cl, al
je 0x140111a78
mov rcx, r12
lea rdx, [rsp + 0x98]
call fcn.140022f00
jmp 0x140111716
cmp word [rbx + rax*2 + 0xa], 0x65
jne 0x1401115eb
cmp word [rbx + rax*2 + 0xc], 0x2d
jne 0x1401115eb
cmp word [rbx + rax*2 + 0xe], 0x61
jne 0x1401115eb
cmp word [rbx + rax*2 + 0x10], 0x72
jne 0x1401115eb
cmp word [rbx + rax*2 + 0x12], 0x67
jne 0x1401115eb
cmp word [rbx + rax*2 + 0x14], 0x75
jne 0x1401115eb
cmp word [rbx + rax*2 + 0x16], 0x6d
jne 0x1401115eb
cmp word [rbx + rax*2 + 0x18], 0x65
jne 0x1401115eb
cmp word [rbx + rax*2 + 0x1a], 0x6e
jne 0x1401115eb
cmp word [rbx + rax*2 + 0x1c], 0x74
jne 0x1401115eb
lea rdx, [rsp + 0x120]
mov rcx, r12
call fcn.14018d5e0
cmp byte [rsp + 0x107], 0
jns 0x140111a41
mov rcx, qword [rsp + 0xf0]
call fcn.140133b2c
cmp byte [rsp + 0x137], 0
jns 0x140111a58
mov rcx, qword [rsp + 0x120]
call fcn.140133b2c
cmp byte [rsp + 0x157], 0
jns 0x140111889
mov rcx, qword [rsp + 0x140]
call fcn.140133b2c
jmp 0x140111889
ud2
call fcn.14016eb90
mov rcx, r14
call fcn.14016eb50
lea rcx, [rsp + 0x120]
call fcn.14016eb50
lea rcx, str.string_view::substr
call fcn.14016eb30
xor r15d, r15d
mov edx, eax
jmp 0x140111951
mov rax, qword [rsi + 0x10]
mov qword [rsp + 0x150], rax
movups xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x140], xmm0
jmp 0x14011179b
test al, al
mov rdx, qword [rsp + 0x140]
mov r8, r13
cmovs r8, rdx
cmp word [r8], 0x2d
jne 0x1401114f6
test al, al
cmovns rdx, r13
cmp word [rdx + 2], 0x2d
jne 0x1401114f6
xor r15d, r15d
mov edx, eax
mov rdi, rbp
jmp 0x140111951
mov qword [rsp + 0x28], 0
jmp 0x14011112d
xor r14d, r14d
jmp 0x140111260
lea rcx, [rsp + 0x50]
call fcn.14016f450
int3
lea rcx, [rsp + 0x140]
call fcn.140132090
jmp 0x14011136c
mov rcx, qword [r15]
call fcn.140133b2c
jmp 0x1401112b8
lea rdx, [rsp + 0x74]
mov rcx, rdi
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
jmp 0x140111128
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x90], rax
mov rcx, rsi
jmp 0x140111343