Function at 0x1400b84e0
Capabilities:
Accept command line arguments

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x4c8
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x430], xmm6
mov qword [rbp + 0x428], 0xfffffffffffffffe
mov qword [rbp + 0x3b8], rcx
call qword [sym.imp.kernel32.dll_GetCommandLineW]
mov qword [rbp + 0x3f0], 0
mov qword [rbp + 0x3f8], 8
mov qword [rbp + 0x400], 0
test rax, rax
je 0x1400b8ae3
mov rdi, rax
movzx ebx, word [rax]
test bx, bx
je 0x1400b8ae3
mov qword [rbp + 0x3d0], 0
mov qword [rbp + 0x3d8], 2
mov qword [rbp + 0x3e0], 0
mov eax, 2
xor r8d, r8d
lea r14, [rbp + 0x3d0]
xor esi, esi
test bx, bx
jne 0x1400b85a7
jmp 0x1400b8604
mov word [rax + r8*2], bx
inc r8
mov qword [rbp + 0x3e0], r8
movzx ebx, word [rdi]
test bx, bx
je 0x1400b8604
add rdi, 2
cmp bx, 9
je 0x1400b85d0
movzx ecx, bx
cmp ecx, 0x20
je 0x1400b85d0
cmp ecx, 0x22
jne 0x1400b85d6
not sil
and sil, 1
movzx ebx, word [rdi]
test bx, bx
jne 0x1400b85a7
jmp 0x1400b8604
test sil, 1
je 0x1400b8604
cmp r8, qword [rbp + 0x3d0]
jne 0x1400b8590
mov rcx, r14
mov rdx, r8
call fcn.1400b3ce0
mov rax, qword [rbp + 0x3d8]
mov r8, qword [rbp + 0x3e0]
jmp 0x1400b8590
add rdi, 2
movzx eax, word [rdi]
cmp eax, 0x20
je 0x1400b8600
cmp eax, 9
je 0x1400b8600
mov r13, qword [rbp + 0x3d8]
lea rcx, [rbp - 0x60]
mov rdx, r13
call fcn.1400b4d40
lea rcx, [rbp + 0x3f0]
xor edx, edx
call fcn.1400b9130
mov rax, qword [rbp + 0x3f8]
mov rcx, qword [rbp + 0x400]
mov rdx, rcx
shl rdx, 5
movups xmm0, xmmword [rbp - 0x60]
movups xmm1, xmmword [rbp - 0x50]
movups xmmword [rax + rdx + 0x10], xmm1
movups xmmword [rax + rdx], xmm0
inc rcx
mov qword [rbp + 0x400], rcx
mov qword [rbp + 0x408], 0
mov qword [rbp + 0x410], 2
mov qword [rbp + 0x418], 0
mov r15d, 2
xor r8d, r8d
movaps xmm6, xmmword [0x1400dda00]
xor esi, esi
movzx ebx, word [rdi]
lea rcx, [rdi + 2]
add rdi, 4
mov rax, rdi
mov rdi, rcx
test bx, bx
je 0x1400b8d75
cmp bx, 0x22
jne 0x1400b8730
test sil, sil
je 0x1400b8860
movzx ebx, word [rdi]
test ebx, ebx
je 0x1400b8d8f
add rdi, 2
add rax, 2
xor esi, esi
cmp ebx, 0x22
jne 0x1400b86a6
cmp r8, qword [rbp + 0x408]
jne 0x1400b86f7
lea rcx, [rbp + 0x408]
mov rdx, r8
call fcn.1400b3ce0
mov r8, qword [rbp + 0x418]
mov r15, qword [rbp + 0x410]
mov word [r15 + r8*2], 0x22
inc r8
mov qword [rbp + 0x418], r8
cmp word [rdi - 2], 0
lea rax, [rdi - 2]
cmove rdi, rax
mov sil, 1
movzx ebx, word [rdi]
jmp 0x1400b8698
movzx ecx, bx
cmp ecx, 9
je 0x1400b87c0
cmp ecx, 0x20
je 0x1400b87c0
cmp ecx, 0x5c
jne 0x1400b886b
movzx ecx, word [rdi]
xor r12d, r12d
cmp cx, 0x5c
jne 0x1400b8777
nop word [rax + rax]
inc r12
movzx ecx, word [rax]
add rax, 2
cmp cx, 0x5c
je 0x1400b8760
add rax, 0xfffffffffffffffe
mov rdi, rax
inc r12
cmp cx, 0x22
jne 0x1400b88a8
mov r14, r12
shr r14, 1
mov rax, qword [rbp + 0x408]
sub rax, r8
cmp rax, r14
jae 0x1400b88d9
lea rcx, [rbp + 0x408]
mov rdx, r8
mov r8, r14
call fcn.1400db620
mov r8, qword [rbp + 0x418]
jmp 0x1400b88e3
test sil, sil
jne 0x1400b886b
mov r15, qword [rbp + 0x410]
lea rcx, [rbp - 0x60]
mov rdx, r15
call fcn.1400b4d40
mov rdx, qword [rbp + 0x400]
cmp rdx, qword [rbp + 0x3f0]
jne 0x1400b87ff
lea rcx, [rbp + 0x3f0]
call fcn.1400b9130
mov rdx, qword [rbp + 0x400]
mov rax, qword [rbp + 0x3f8]
mov rcx, rdx
shl rcx, 5
movups xmm0, xmmword [rbp - 0x60]
movups xmm1, xmmword [rbp - 0x50]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
inc rdx
mov qword [rbp + 0x400], rdx
mov qword [rbp + 0x418], 0
jmp 0x1400b8844
add rdi, 2
movzx ebx, word [rdi]
cmp ebx, 0x20
je 0x1400b8840
cmp ebx, 9
je 0x1400b8840
xor r8d, r8d
jmp 0x1400b8698
mov sil, 1
movzx ebx, word [rdi]
jmp 0x1400b8698
cmp r8, qword [rbp + 0x408]
jne 0x1400b888a
lea rcx, [rbp + 0x408]
mov rdx, r8
call fcn.1400b3ce0
mov r8, qword [rbp + 0x418]
mov r15, qword [rbp + 0x410]
mov word [r15 + r8*2], bx
inc r8
mov qword [rbp + 0x418], r8
movzx ebx, word [rdi]
jmp 0x1400b8698
mov rax, qword [rbp + 0x408]
sub rax, r8
cmp rax, r12
jae 0x1400b891f
lea rcx, [rbp + 0x408]
mov rdx, r8
mov r8, r12
call fcn.1400db620
mov r15, qword [rbp + 0x410]
mov r8, qword [rbp + 0x418]
jmp 0x1400b8928
cmp r12, 2
jb 0x1400b8a8f
mov r15, qword [rbp + 0x410]
cmp r12, 0x20
jb 0x1400b8a80
mov r9, r14
and r9, 0xfffffffffffffff0
lea rax, [r9 - 0x10]
mov rdx, rax
shr rdx, 4
inc rdx
mov ecx, edx
and ecx, 3
cmp rax, 0x30
jae 0x1400b89fe
xor ebx, ebx
jmp 0x1400b8a41
test r12, r12
je 0x1400b89ef
cmp r12, 0x10
jb 0x1400b89e0
mov r9, r12
and r9, 0xfffffffffffffff0
lea rax, [r9 - 0x10]
mov rdx, rax
shr rdx, 4
inc rdx
mov ecx, edx
and ecx, 3
cmp rax, 0x30
jae 0x1400b8956
xor ebx, ebx
jmp 0x1400b89a1
and rdx, 0xfffffffffffffffc
lea rax, [r15 + r8*2]
add rax, 0x70
xor ebx, ebx
nop word cs:[rax + rax]
movups xmmword [rax + rbx*2 - 0x70], xmm6
movups xmmword [rax + rbx*2 - 0x60], xmm6
movups xmmword [rax + rbx*2 - 0x50], xmm6
movups xmmword [rax + rbx*2 - 0x40], xmm6
movups xmmword [rax + rbx*2 - 0x30], xmm6
movups xmmword [rax + rbx*2 - 0x20], xmm6
movups xmmword [rax + rbx*2 - 0x10], xmm6
movups xmmword [rax + rbx*2], xmm6
add rbx, 0x40
add rdx, 0xfffffffffffffffc
jne 0x1400b8970
test rcx, rcx
je 0x1400b89d2
add rbx, r8
lea rax, [r15 + rbx*2]
add rax, 0x10
shl rcx, 5
xor edx, edx
nop word [rax + rax]
movups xmmword [rax + rdx - 0x10], xmm6
movups xmmword [rax + rdx], xmm6
add rdx, 0x20
cmp rcx, rdx
jne 0x1400b89c0
add r8, r9
cmp r12, r9
je 0x1400b89ef
and r12d, 0xf
nop
mov word [r15 + r8*2], 0x5c
inc r8
dec r12
jne 0x1400b89e0
mov qword [rbp + 0x418], r8
movzx ebx, word [rdi]
jmp 0x1400b8698
and rdx, 0xfffffffffffffffc
lea rax, [r15 + r8*2]
add rax, 0x70
xor ebx, ebx
nop dword [rax]
movups xmmword [rax + rbx*2 - 0x70], xmm6
movups xmmword [rax + rbx*2 - 0x60], xmm6
movups xmmword [rax + rbx*2 - 0x50], xmm6
movups xmmword [rax + rbx*2 - 0x40], xmm6
movups xmmword [rax + rbx*2 - 0x30], xmm6
movups xmmword [rax + rbx*2 - 0x20], xmm6
movups xmmword [rax + rbx*2 - 0x10], xmm6
movups xmmword [rax + rbx*2], xmm6
add rbx, 0x40
add rdx, 0xfffffffffffffffc
jne 0x1400b8a10
test rcx, rcx
je 0x1400b8a72
add rbx, r8
lea rax, [r15 + rbx*2]
add rax, 0x10
shl rcx, 5
xor edx, edx
nop word [rax + rax]
movups xmmword [rax + rdx - 0x10], xmm6
movups xmmword [rax + rdx], xmm6
add rdx, 0x20
cmp rcx, rdx
jne 0x1400b8a60
add r8, r9
cmp r14, r9
je 0x1400b8a8f
and r14d, 0xf
nop
mov word [r15 + r8*2], 0x5c
inc r8
dec r14
jne 0x1400b8a80
mov qword [rbp + 0x418], r8
test r12b, 1
je 0x1400b8695
xor ebx, ebx
cmp word [rdi], 0
setne r14b
cmp r8, qword [rbp + 0x408]
jne 0x1400b8ac9
lea rcx, [rbp + 0x408]
mov rdx, r8
call fcn.1400b3ce0
mov r8, qword [rbp + 0x418]
mov bl, r14b
lea rdi, [rdi + rbx*2]
mov r15, qword [rbp + 0x410]
mov word [r15 + r8*2], 0x22
jmp 0x1400b8896
mov qword [rbp + 0x3d0], 0
mov qword [rbp + 0x3d8], 2
mov qword [rbp + 0x3e0], 0
mov r8d, 0x200
mov eax, 2
mov qword [rbp + 0x3e8], rax
xor r12d, r12d
xor r14d, r14d
xor ebx, ebx
cmp r8, 0x201
jae 0x1400b8b50
jmp 0x1400b8b3f
jae 0x1400b8c11
cmp r8, 0x201
jae 0x1400b8b50
lea rdi, [rbp - 0x60]
mov r13d, 0x200
mov rsi, r8
jmp 0x1400b8ba7
sub r8, rbx
sub r14, rbx
cmp r14, r8
jae 0x1400b8b7f
lea rcx, [rbp + 0x3d0]
mov rdx, rbx
call fcn.1400db620
mov r12, qword [rbp + 0x3d0]
mov rax, qword [rbp + 0x3d8]
mov qword [rbp + 0x3e8], rax
mov eax, 0xffffffff
cmp r12, rax
mov ebx, 0xffffffff
cmovb rbx, r12
mov qword [rbp + 0x3e0], rbx
mov r14, r12
mov rdi, qword [rbp + 0x3e8]
mov r13, rbx
mov rsi, rbx
xor ecx, ecx
call qword [sym.imp.kernel32.dll_SetLastError]
xor ecx, ecx
mov rdx, rdi
mov r8d, esi
call qword [sym.imp.kernel32.dll_GetModuleFileNameW]
mov r15d, eax
test eax, eax
jne 0x1400b8bd2
call qword [sym.imp.kernel32.dll_GetLastError]
test eax, eax
jne 0x1400b8d55
mov r8d, r15d
cmp rsi, r8
jne 0x1400b8b30
call qword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0x7a
jne 0x1400b8e58
add rsi, rsi
mov eax, 0xffffffff
cmp rsi, rax
cmovae rsi, rax
mov r8, rsi
cmp r8, 0x201
jb 0x1400b8b3f
jmp 0x1400b8b50
cmp r13, r8
jb 0x1400b8e72
lea rcx, [rbp + 0x408]
mov rdx, rdi
call fcn.1400b4d40
mov rsi, qword [rbp + 0x408]
movups xmm0, xmmword [rbp + 0x410]
movaps xmmword [rbp + 0x3a0], xmm0
movzx ebx, byte [rbp + 0x420]
mov eax, dword [rbp + 0x421]
mov dword [rbp + 0x3c8], eax
mov eax, dword [rbp + 0x424]
mov dword [rbp + 0x3cb], eax
test r12, r12
je 0x1400b8c73
mov edx, 2
mov rcx, qword [rbp + 0x3e8]
call fcn.1400605d0
cmp bl, 2
jne 0x1400b8cee
mov qword [rbp - 0x60], 0
mov qword [rbp - 0x58], 1
mov qword [rbp - 0x50], 0
mov byte [rbp - 0x48], 1
mov eax, esi
and eax, 3
cmp eax, 1
jne 0x1400b8d12
lea rax, [rsi - 1]
mov qword [rbp + 0x3e8], rax
mov rcx, qword [rsi - 1]
mov rax, qword [rsi + 7]
mov qword [rbp + 0x3c0], rsi
call qword [rax]
mov rax, qword [rbp + 0x3c0]
mov rax, qword [rax + 7]
cmp qword [rax + 8], 0
mov rsi, qword [rbp + 0x3e8]
je 0x1400b8cdf
mov rdx, qword [rax + 0x10]
mov rcx, qword [rsi]
call fcn.1400605d0
mov edx, 8
mov rcx, rsi
call fcn.1400605d0
jmp 0x1400b8d12
movaps xmm0, xmmword [rbp + 0x3a0]
movups xmmword [rbp - 0x58], xmm0
mov eax, dword [rbp + 0x3c8]
mov ecx, dword [rbp + 0x3cb]
mov dword [rbp - 0x47], eax
mov dword [rbp - 0x44], ecx
mov qword [rbp - 0x60], rsi
mov byte [rbp - 0x48], bl
lea rcx, [rbp + 0x3f0]
xor edx, edx
call fcn.1400b9130
mov rdi, qword [rbp + 0x3f8]
mov rsi, qword [rbp + 0x400]
mov rax, rsi
shl rax, 5
movups xmm0, xmmword [rbp - 0x60]
movups xmm1, xmmword [rbp - 0x50]
movups xmmword [rdi + rax + 0x10], xmm1
movups xmmword [rdi + rax], xmm0
inc rsi
mov rbx, qword [rbp + 0x3f0]
jmp 0x1400b8e20
call qword [sym.imp.kernel32.dll_GetLastError]
mov esi, eax
shl rsi, 0x20
or rsi, 2
mov bl, 2
test r12, r12
jne 0x1400b8c62
jmp 0x1400b8c73
test r8, r8
jne 0x1400b8d8f
test sil, sil
jne 0x1400b8d8f
mov rdi, qword [rbp + 0x3f8]
mov rsi, qword [rbp + 0x400]
jmp 0x1400b8de7
mov rdx, qword [rbp + 0x410]
lea rcx, [rbp - 0x60]
call fcn.1400b4d40
mov rsi, qword [rbp + 0x400]
cmp rsi, qword [rbp + 0x3f0]
jne 0x1400b8dc5
lea rcx, [rbp + 0x3f0]
mov rdx, rsi
call fcn.1400b9130
mov rsi, qword [rbp + 0x400]
mov rdi, qword [rbp + 0x3f8]
mov rax, rsi
shl rax, 5
movups xmm0, xmmword [rbp - 0x60]
movups xmm1, xmmword [rbp - 0x50]
movups xmmword [rdi + rax + 0x10], xmm1
movups xmmword [rdi + rax], xmm0
inc rsi
mov rbx, qword [rbp + 0x3f0]
cmp qword [rbp + 0x408], 0
je 0x1400b8e09
mov rcx, qword [rbp + 0x410]
mov edx, 2
call fcn.1400605d0
cmp qword [rbp + 0x3d0], 0
je 0x1400b8e20
mov edx, 2
mov rcx, r13
call fcn.1400605d0
shl rsi, 5
add rsi, rdi
mov rax, qword [rbp + 0x3b8]
mov qword [rax], rbx
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
movaps xmm6, xmmword [rbp + 0x430]
add rsp, 0x4c8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rcx, str.internal_error:_entered_unreachable_codecalled__Result::unwrap____on_an__Err__valuePoisonErrorTERMdumbNO_COLORcygwinC:UsersDeveloper.cargo_registry_srcgithub.com_1ecc6299db9ec823_termcolor_1.2.0_srclib.rs_n
lea r8, str.library_std_src_syswindowsmod.rs
mov edx, 0x28
call fcn.1400d9140
jmp 0x1400b8e87
lea rax, str.library_std_src_syswindowsmod.rs
mov rcx, r8
mov rdx, r13
mov r8, rax
call fcn.1400d9130
ud2