Function at 0x14014c520
Capabilities:
Accept command line arguments

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xa8
movaps xmmword [rsp + 0x90], xmm6
mov rsi, rcx
call sub.KERNEL32.dll_GetCommandLineW
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], 8
mov qword [rsp + 0x50], 0
test rax, rax
je 0x14014c9f6
movzx ebp, word [rax]
test bp, bp
je 0x14014c9f6
mov qword [rsp + 0x78], 0
mov qword [rsp + 0x80], 2
mov qword [rsp + 0x88], 0
add rax, 2
mov ecx, 2
xor r8d, r8d
lea rdi, [rsp + 0x78]
xor ebx, ebx
jmp 0x14014c5ce
mov word [rcx + r8*2], bp
inc r8
mov qword [rsp + 0x88], r8
movzx ebp, word [r13]
lea rax, [r13 + 2]
test bp, bp
je 0x14014c634
mov r13, rax
cmp bp, 9
je 0x14014c600
movzx eax, bp
cmp eax, 0x20
je 0x14014c600
cmp eax, 0x22
jne 0x14014c605
not bl
and bl, 1
movzx ebp, word [r13]
lea rax, [r13 + 2]
test bp, bp
jne 0x14014c5ce
jmp 0x14014c634
test bl, 1
je 0x14014c634
cmp r8, qword [rsp + 0x78]
jne 0x14014c5b0
mov rcx, rdi
mov rdx, r8
call dbg.reserve_for_push<u16, alloc::alloc::Global>
mov rcx, qword [rsp + 0x80]
mov r8, qword [rsp + 0x88]
jmp 0x14014c5b0
add r13, 2
movzx eax, word [r13]
cmp eax, 0x20
je 0x14014c630
cmp eax, 9
je 0x14014c630
mov rdx, qword [rsp + 0x80]
lea rcx, [rsp + 0x58]
call dbg.from_wide
lea rcx, [rsp + 0x40]
xor edx, edx
call dbg.reserve_for_push<addr2line::LineSequence, alloc::alloc::Global>
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x50]
mov rdx, rcx
shl rdx, 5
movups xmm0, xmmword [rsp + 0x58]
movups xmm1, xmmword [rsp + 0x68]
movups xmmword [rax + rdx + 0x10], xmm1
movups xmmword [rax + rdx], xmm0
inc rcx
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x30], 2
mov qword [rsp + 0x38], 0
movzx r12d, word [r13]
test r12w, r12w
je 0x14014caa7
mov r15d, 2
xor r8d, r8d
lea rdi, [rsp + 0x58]
lea r14, [rsp + 0x28]
movaps xmm6, xmmword [0x1401c27b0]
xor ebp, ebp
jmp 0x14014c703
mov r15, qword [rsp + 0x30]
mov word [r15 + r8*2], r12w
inc r8
mov qword [rsp + 0x38], r8
movzx r12d, word [rbx]
mov r13, rbx
test r12w, r12w
je 0x14014caac
lea rbx, [r13 + 2]
movzx eax, r12w
cmp eax, 0x21
jg 0x14014c7b0
cmp eax, 9
je 0x14014c722
cmp eax, 0x20
jne 0x14014c820
test bpl, 1
jne 0x14014c820
mov r15, qword [rsp + 0x30]
mov rcx, rdi
mov rdx, r15
call dbg.from_wide
mov rdx, qword [rsp + 0x50]
cmp rdx, qword [rsp + 0x40]
jne 0x14014c757
lea rcx, [rsp + 0x40]
call dbg.reserve_for_push<addr2line::LineSequence, alloc::alloc::Global>
mov rdx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x48]
mov rcx, rdx
shl rcx, 5
movups xmm0, xmmword [rsp + 0x58]
movups xmm1, xmmword [rsp + 0x68]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
inc rdx
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x38], 0
jmp 0x14014c794
add rbx, 2
movzx r12d, word [rbx]
cmp r12d, 0x20
je 0x14014c790
cmp r12d, 9
je 0x14014c790
xor r8d, r8d
jmp 0x14014c6f6
cmp eax, 0x22
je 0x14014c840
cmp eax, 0x5c
jne 0x14014c820
movzx eax, word [rbx]
xor r12d, r12d
cmp ax, 0x5c
jne 0x14014c7e3
nop word [rax + rax]
add rbx, 2
movzx eax, word [r13 + r12*2 + 4]
inc r12
cmp ax, 0x5c
je 0x14014c7d0
inc r12
cmp ax, 0x22
jne 0x14014c84e
mov r13, r12
shr r13, 1
mov rax, qword [rsp + 0x28]
sub rax, r8
cmp rax, r13
jae 0x14014c893
mov rcx, r14
mov rdx, r8
mov r8, r13
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h0f5ccd690f57f673
mov r8, qword [rsp + 0x38]
jmp 0x14014c89d
cmp r8, qword [rsp + 0x28]
jne 0x14014c6e0
mov rcx, r14
mov rdx, r8
call dbg.reserve_for_push<u16, alloc::alloc::Global>
mov r8, qword [rsp + 0x38]
jmp 0x14014c6e0
test bpl, 1
jne 0x14014c875
mov bpl, 1
jmp 0x14014c6f2
mov rax, qword [rsp + 0x28]
sub rax, r8
cmp rax, r12
jae 0x14014c8b0
mov rcx, r14
mov rdx, r8
mov r8, r12
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h0f5ccd690f57f673
mov r15, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
jmp 0x14014c8b9
movzx r12d, word [rbx]
cmp r12d, 0x22
je 0x14014c9b8
test r12d, r12d
je 0x14014caac
xor ebp, ebp
jmp 0x14014c6f6
cmp r12, 2
jb 0x14014c96f
mov r15, qword [rsp + 0x30]
cmp r12, 0x20
jae 0x14014c914
mov rax, r13
jmp 0x14014c960
test r12, r12
je 0x14014c6ed
cmp r12, 0x10
jae 0x14014c8c4
mov rax, r12
jmp 0x14014c900
mov rcx, r12
and rcx, 0xfffffffffffffff0
mov eax, r12d
and eax, 0xf
lea rdx, [r15 + 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 0x14014c8e0
cmp r12, rcx
je 0x14014c6ed
nop dword [rax]
mov word [r15 + r8*2], 0x5c
inc r8
dec rax
jne 0x14014c900
jmp 0x14014c6ed
mov rcx, r13
movabs rax, 0x7ffffffffffffff0
and rcx, rax
mov eax, r13d
and eax, 0xf
lea rdx, [r15 + r8*2]
add rdx, 0x10
add r8, rcx
xor r9d, r9d
nop dword [rax + rax]
movups xmmword [rdx + r9*2 - 0x10], xmm6
movups xmmword [rdx + r9*2], xmm6
add r9, 0x10
cmp rcx, r9
jne 0x14014c940
cmp r13, rcx
je 0x14014c96f
nop dword [rax]
mov word [r15 + r8*2], 0x5c
inc r8
dec rax
jne 0x14014c960
mov qword [rsp + 0x38], r8
test r12b, 1
je 0x14014c6f2
xor r15d, r15d
cmp word [rbx], 0
setne r12b
cmp r8, qword [rsp + 0x28]
jne 0x14014c9a0
mov rcx, r14
mov rdx, r8
call dbg.reserve_for_push<u16, alloc::alloc::Global>
mov r8, qword [rsp + 0x38]
mov r15b, r12b
lea rbx, [rbx + r15*2]
mov r15, qword [rsp + 0x30]
mov word [r15 + r8*2], 0x22
jmp 0x14014c6ea
cmp r8, qword [rsp + 0x28]
jne 0x14014c9cf
mov rcx, r14
mov rdx, r8
call dbg.reserve_for_push<u16, alloc::alloc::Global>
mov r8, qword [rsp + 0x38]
mov r15, qword [rsp + 0x30]
mov word [r15 + r8*2], 0x22
inc r8
mov qword [rsp + 0x38], r8
lea rax, [r13 + 4]
cmp word [r13 + 2], 0
cmovne rbx, rax
jmp 0x14014c6f2
lea rcx, [rsp + 0x58]
call dbg.current_exe
mov rbx, qword [rsp + 0x58]
movabs rax, 0x7ffffffffffffff0
add rax, 0x10
cmp rbx, rax
jne 0x14014ca3c
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x58], rax
lea rcx, [rsp + 0x58]
call dbg.drop_in_place<std::io::error::Error>
mov r14d, 1
mov bpl, 1
xor r12d, r12d
xor ebx, ebx
jmp 0x14014ca5b
mov r14, qword [rsp + 0x60]
mov r12, qword [rsp + 0x68]
movzx ebp, byte [rsp + 0x70]
mov eax, dword [rsp + 0x71]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x74]
mov dword [rsp + 0x2b], eax
lea rcx, [rsp + 0x40]
xor edx, edx
call dbg.reserve_for_push<addr2line::LineSequence, alloc::alloc::Global>
mov r15, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
mov rax, rdi
shl rax, 5
mov qword [r15 + rax], rbx
mov qword [r15 + rax + 8], r14
mov qword [r15 + rax + 0x10], r12
mov byte [r15 + rax + 0x18], bpl
mov ecx, dword [rsp + 0x28]
mov edx, dword [rsp + 0x2b]
mov dword [r15 + rax + 0x1c], edx
mov dword [r15 + rax + 0x19], ecx
inc rdi
mov rbx, qword [rsp + 0x40]
jmp 0x14014cb0b
xor r8d, r8d
xor ebp, ebp
test r8, r8
jne 0x14014cb40
and bpl, 1
jne 0x14014cb40
mov r15, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x28]
test rdx, rdx
je 0x14014caeb
mov rcx, qword [rsp + 0x30]
add rdx, rdx
mov r8d, 2
call sym.__rust_dealloc
mov rdx, qword [rsp + 0x78]
test rdx, rdx
je 0x14014cb0b
mov rcx, qword [rsp + 0x80]
add rdx, rdx
mov r8d, 2
call sym.__rust_dealloc
shl rdi, 5
add rdi, r15
mov qword [rsi], r15
mov qword [rsi + 8], rbx
mov qword [rsi + 0x10], r15
mov qword [rsi + 0x18], rdi
mov rax, rsi
movaps xmm6, xmmword [rsp + 0x90]
add rsp, 0xa8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0x58]
call dbg.from_wide
mov rdi, qword [rsp + 0x50]
cmp rdi, qword [rsp + 0x40]
jne 0x14014cb6d
lea rcx, [rsp + 0x40]
mov rdx, rdi
call dbg.reserve_for_push<addr2line::LineSequence, alloc::alloc::Global>
mov rdi, qword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
mov rax, rdi
shl rax, 5
movups xmm0, xmmword [rsp + 0x58]
movups xmm1, xmmword [rsp + 0x68]
movups xmmword [r15 + rax + 0x10], xmm1
movups xmmword [r15 + rax], xmm0
inc rdi
mov rbx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x28]
test rdx, rdx
jne 0x14014cad8
jmp 0x14014caeb