Function at 0x140166c50
Capabilities:
Accept command line arguments

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xb8
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x20], xmm6
mov qword [rbp + 0x18], 0xfffffffffffffffe
mov rsi, rcx
call qword [sym.imp.kernel32.dll_GetCommandLineW]
mov qword [rbp - 0x18], 0
mov qword [rbp - 0x10], 8
mov qword [rbp - 8], 0
test rax, rax
je 0x1401670e2
mov rdi, rax
movzx r14d, word [rax]
test r14w, r14w
je 0x1401670e2
mov qword [rbp - 0x58], 0
mov qword [rbp - 0x50], 2
mov qword [rbp - 0x48], 0
mov eax, 2
xor r8d, r8d
lea rbx, [rbp - 0x58]
xor r15d, r15d
test r14w, r14w
jne 0x140166d06
jmp 0x140166d74
mov word [rax + r8*2], r14w
inc r8
mov qword [rbp - 0x48], r8
movzx r14d, word [rdi]
test r14w, r14w
je 0x140166d74
add rdi, 2
cmp r14w, 9
je 0x140166d40
movzx ecx, r14w
cmp ecx, 0x20
je 0x140166d40
cmp ecx, 0x22
jne 0x140166d46
not r15b
and r15b, 1
movzx r14d, word [rdi]
test r14w, r14w
jne 0x140166d06
jmp 0x140166d74
test r15b, 1
je 0x140166d74
cmp r8, qword [rbp - 0x58]
jne 0x140166cf0
mov rcx, rbx
mov rdx, r8
call fcn.140164170
mov rax, qword [rbp - 0x50]
mov r8, qword [rbp - 0x48]
jmp 0x140166cf0
add rdi, 2
movzx eax, word [rdi]
cmp eax, 0x20
je 0x140166d70
cmp eax, 9
je 0x140166d70
mov rdx, qword [rbp - 0x50]
lea rcx, [rbp - 0x38]
call fcn.14016a380
lea rcx, [rbp - 0x18]
xor edx, edx
call fcn.1401642f0
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp - 8]
mov rdx, rcx
shl rdx, 5
movups xmm0, xmmword [rbp - 0x38]
movups xmm1, xmmword [rbp - 0x28]
movups xmmword [rax + rdx + 0x10], xmm1
movups xmmword [rax + rdx], xmm0
inc rcx
mov qword [rbp - 8], rcx
mov qword [rbp], 0
mov qword [rbp + 8], 2
mov qword [rbp + 0x10], 0
mov r12d, 2
xor r8d, r8d
mov r15, rbp
movaps xmm6, xmmword [0x140285df0]
xor eax, eax
jmp 0x140166e02
mov r12, qword [rbp + 8]
mov word [r12 + r8*2], r13w
inc r8
mov qword [rbp + 0x10], r8
mov eax, ebx
mov ebx, eax
movzx r13d, word [rdi]
test r13d, r13d
je 0x140167126
mov r14, rdi
add rdi, 2
cmp r13d, 0x21
jg 0x140166eb0
cmp r13d, 9
je 0x140166e32
cmp r13d, 0x20
jne 0x140166f20
test bl, bl
jne 0x140166f20
mov r12, qword [rbp + 8]
lea rcx, [rbp - 0x38]
mov rdx, r12
call fcn.14016a380
mov rdx, qword [rbp - 8]
cmp rdx, qword [rbp - 0x18]
jne 0x140166e61
lea rcx, [rbp - 0x18]
call fcn.1401642f0
mov rdx, qword [rbp - 8]
mov rax, qword [rbp - 0x10]
mov rcx, rdx
shl rcx, 5
movups xmm0, xmmword [rbp - 0x38]
movups xmm1, xmmword [rbp - 0x28]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
inc rdx
mov qword [rbp - 8], rdx
mov qword [rbp + 0x10], 0
jmp 0x140166e94
add rdi, 2
movzx eax, word [rdi]
cmp eax, 0x20
je 0x140166e90
cmp eax, 9
je 0x140166e90
xor r8d, r8d
mov eax, ebx
jmp 0x140166e02
cmp r13d, 0x22
je 0x140166f3e
cmp r13d, 0x5c
jne 0x140166f20
movzx eax, word [rdi]
xor r13d, r13d
cmp ax, 0x5c
jne 0x140166ee3
nop dword [rax]
add rdi, 2
movzx eax, word [r14 + r13*2 + 4]
inc r13
cmp ax, 0x5c
je 0x140166ed0
inc r13
cmp ax, 0x22
jne 0x140166f63
mov r14, r13
shr r14, 1
mov rax, qword [rbp]
sub rax, r8
cmp rax, r14
jae 0x140166f87
mov rcx, r15
mov rdx, r8
mov r8, r14
call fcn.140194fd0
mov r8, qword [rbp + 0x10]
jmp 0x140166f91
cmp r8, qword [rbp]
jne 0x140166df0
mov rcx, r15
mov rdx, r8
call fcn.140164170
mov r8, qword [rbp + 0x10]
jmp 0x140166df0
mov al, 1
test bl, bl
je 0x140166e02
movzx ecx, word [rdi]
cmp ecx, 0x22
je 0x1401670a6
xor eax, eax
test ecx, ecx
jne 0x140166e02
jmp 0x1401671c5
mov rax, qword [rbp]
sub rax, r8
cmp rax, r13
jae 0x140166fa3
mov rcx, r15
mov rdx, r8
mov r8, r13
call fcn.140194fd0
mov r12, qword [rbp + 8]
mov r8, qword [rbp + 0x10]
jmp 0x140166fac
cmp r13, 2
jb 0x14016705f
mov r12, qword [rbp + 8]
cmp r13, 0x20
jae 0x140167014
mov rax, r14
jmp 0x140167050
test r13, r13
je 0x140166dfc
cmp r13, 0x10
jae 0x140166fb7
mov rax, r13
jmp 0x140167000
mov rcx, r13
and rcx, 0xfffffffffffffff0
mov eax, r13d
and eax, 0xf
lea rdx, [r12 + r8*2]
add rdx, 0x10
add r8, rcx
xor r9d, r9d
nop word cs:[rax + rax]
movups xmmword [rdx + r9*2 - 0x10], xmm6
movups xmmword [rdx + r9*2], xmm6
add r9, 0x10
cmp rcx, r9
jne 0x140166fe0
cmp r13, rcx
je 0x140166dfc
nop dword [rax]
mov word [r12 + r8*2], 0x5c
inc r8
dec rax
jne 0x140167000
jmp 0x140166dfc
mov rcx, r14
and rcx, 0xfffffffffffffff0
mov eax, r14d
and eax, 0xf
lea rdx, [r12 + r8*2]
add rdx, 0x10
add r8, rcx
xor r9d, r9d
nop
movups xmmword [rdx + r9*2 - 0x10], xmm6
movups xmmword [rdx + r9*2], xmm6
add r9, 0x10
cmp rcx, r9
jne 0x140167030
cmp r14, rcx
je 0x14016705f
nop dword [rax]
mov word [r12 + r8*2], 0x5c
inc r8
dec rax
jne 0x140167050
mov qword [rbp + 0x10], r8
mov eax, ebx
test r13b, 1
je 0x140166e02
xor r14d, r14d
cmp word [rdi], 0
setne r12b
cmp r8, qword [rbp]
jne 0x14016708f
mov rcx, r15
mov rdx, r8
call fcn.140164170
mov r8, qword [rbp + 0x10]
mov r14b, r12b
lea rdi, [rdi + r14*2]
mov r12, qword [rbp + 8]
mov word [r12 + r8*2], 0x22
jmp 0x140166df9
cmp r8, qword [rbp]
jne 0x1401670bb
mov rcx, r15
mov rdx, r8
call fcn.140164170
mov r8, qword [rbp + 0x10]
mov r12, qword [rbp + 8]
mov word [r12 + r8*2], 0x22
inc r8
mov qword [rbp + 0x10], r8
cmp word [r14 + 2], 0
lea rax, [r14 + 4]
cmovne rdi, rax
mov eax, ebx
jmp 0x140166e02
lea rcx, [rbp - 0x38]
call fcn.1401700e0
mov rcx, qword [rbp - 0x38]
movabs rax, 0x8000000000000000
cmp rcx, rax
jne 0x140167155
mov rax, qword [rbp - 0x30]
mov qword [rbp - 0x38], rax
lea rcx, [rbp - 0x38]
call fcn.140162d30
mov eax, 1
mov qword [rbp - 0x60], rax
mov r14b, 1
xor r15d, r15d
xor eax, eax
mov qword [rbp - 0x40], rax
jmp 0x140167176
test r8, r8
jne 0x1401671c5
test bl, bl
jne 0x1401671c5
mov rbx, qword [rbp - 0x10]
mov rdi, qword [rbp - 8]
mov r14, qword [rbp - 0x18]
mov rdx, qword [rbp]
test rdx, rdx
jne 0x140167218
jmp 0x14016722a
mov qword [rbp - 0x40], rcx
mov rax, qword [rbp - 0x30]
mov qword [rbp - 0x60], rax
mov r15, qword [rbp - 0x28]
movzx r14d, byte [rbp - 0x20]
mov eax, dword [rbp - 0x1f]
mov dword [rbp], eax
mov eax, dword [rbp - 0x1c]
mov dword [rbp + 3], eax
lea rcx, [rbp - 0x18]
xor edx, edx
call fcn.1401642f0
mov rbx, qword [rbp - 0x10]
mov rdi, qword [rbp - 8]
mov rax, rdi
shl rax, 5
mov rcx, qword [rbp - 0x40]
mov qword [rbx + rax], rcx
mov rcx, qword [rbp - 0x60]
mov qword [rbx + rax + 8], rcx
mov qword [rbx + rax + 0x10], r15
mov byte [rbx + rax + 0x18], r14b
mov ecx, dword [rbp]
mov edx, dword [rbp + 3]
mov dword [rbx + rax + 0x1c], edx
mov dword [rbx + rax + 0x19], ecx
inc rdi
mov r14, qword [rbp - 0x18]
jmp 0x140167245
mov rdx, qword [rbp + 8]
lea rcx, [rbp - 0x38]
call fcn.14016a380
mov rdi, qword [rbp - 8]
cmp rdi, qword [rbp - 0x18]
jne 0x1401671ec
lea rcx, [rbp - 0x18]
mov rdx, rdi
call fcn.1401642f0
mov rdi, qword [rbp - 8]
mov rbx, qword [rbp - 0x10]
mov rax, rdi
shl rax, 5
movups xmm0, xmmword [rbp - 0x38]
movups xmm1, xmmword [rbp - 0x28]
movups xmmword [rbx + rax + 0x10], xmm1
movups xmmword [rbx + rax], xmm0
inc rdi
mov r14, qword [rbp - 0x18]
mov rdx, qword [rbp]
test rdx, rdx
je 0x14016722a
mov rcx, qword [rbp + 8]
add rdx, rdx
mov r8d, 2
call fcn.140013c90
mov rdx, qword [rbp - 0x58]
test rdx, rdx
je 0x140167245
mov rcx, qword [rbp - 0x50]
add rdx, rdx
mov r8d, 2
call fcn.140013c90
shl rdi, 5
add rdi, rbx
mov qword [rsi], rbx
mov qword [rsi + 8], r14
mov qword [rsi + 0x10], rbx
mov qword [rsi + 0x18], rdi
mov rax, rsi
movaps xmm6, xmmword [rbp + 0x20]
add rsp, 0xb8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret