Function at 0x140040fa0
Capabilities:
Link many functions at runtime

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x748
mov rdi, rdx
movzx esi, byte [rcx]
mov byte [rsp + 0x55], sil
lea rcx, [rsp + 0x270]
call dbg.current_dir
movzx ebx, byte [rsp + 0x288]
cmp bl, 2
jne 0x140040fec
lea rcx, [rsp + 0x270]
call dbg.drop_in_place<core::result::Result<std::path::PathBuf, std::io::error::Error>>
movzx esi, byte [rsp + 0x55]
jmp 0x140041022
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x240], rax
movups xmm0, xmmword [rsp + 0x270]
movaps xmmword [rsp + 0x230], xmm0
mov eax, dword [rsp + 0x289]
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x28c]
mov dword [rsp + 0x5b], eax
mov byte [rsp + 0x90], sil
movaps xmm0, xmmword [rsp + 0x230]
movaps xmmword [rsp + 0x70], xmm0
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x80], rax
mov byte [rsp + 0x88], bl
mov eax, dword [rsp + 0x58]
mov ecx, dword [rsp + 0x5b]
mov dword [rsp + 0x89], eax
mov dword [rsp + 0x8c], ecx
lea rax, str.stack_backtrace:_n
mov qword [rsp + 0x270], rax
mov qword [rsp + 0x278], 1
lea r14, str.called__Option::unwrap____on_a__None__value_rustc_d5c2e9c342b358556da91d61ed4133f6f50fc0c3library_alloc_srccollections_btree_navigate.rs
mov qword [rsp + 0x280], r14
xorps xmm0, xmm0
movups xmmword [rsp + 0x288], xmm0
lea rdx, [rsp + 0x270]
mov rcx, rdi
call sym.core::fmt::Formatter::write_fmt::h8b0ebb7caf1a410c
test al, al
jne 0x1400414af
movzx eax, byte [rsp + 0x55]
mov qword [rsp + 0x248], rdi
mov qword [rsp + 0x260], 0
mov byte [rsp + 0x268], al
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x250], rcx
lea rcx, sym.core::ptr::drop_in_place_std::sys_common::backtrace::_print_fmt::_u7b__u7b_closure_u7d__u7d__::hc2facdf5b613ee74
mov qword [rsp + 0x258], rcx
test al, al
setne byte [rsp + 0x57]
mov qword [rsp + 0xd8], 0
mov byte [rsp + 0x56], 0
lea rax, [rsp + 0x55]
mov qword [rsp + 0x208], rax
lea rax, [rsp + 0xd8]
mov qword [rsp + 0x210], rax
lea rax, [rsp + 0x57]
mov qword [rsp + 0x218], rax
lea rax, [rsp + 0x56]
mov qword [rsp + 0x220], rax
lea rax, [rsp + 0x248]
mov qword [rsp + 0x228], rax
call sub.KERNEL32.dll_GetCurrentProcess
mov qword [rsp + 0x68], rax
call sub.KERNEL32.dll_GetCurrentThread
mov rbx, rax
lea rsi, [rsp + 0x270]
mov r8d, 0x4d0
mov rcx, rsi
xor edx, edx
call sub.msvcrt.dll_memset
mov rcx, rsi
call sub.KERNEL32.dll_RtlCaptureContext
mov r15, qword [0x140108158]
test r15, r15
je 0x1400414e9
mov rcx, r15
mov edx, 0xffffffff
xor r8d, r8d
call sub.KERNEL32.dll_WaitForSingleObjectEx
mov rax, qword [0x1401081f0]
test rax, rax
jne 0x1400411c6
lea rcx, str.dbghelp.dll
call sub.KERNEL32.dll_LoadLibraryA
mov qword [0x1401081f0], rax
test rax, rax
je 0x14004166d
cmp byte [0x140108160], 0
mov qword [rsp + 0x60], r15
jne 0x14004128e
mov rcx, qword [0x1401081f8]
test rcx, rcx
jne 0x140041206
lea rdx, str.SymGetOptions
mov rcx, rax
call sub.KERNEL32.dll_GetProcAddress
test rax, rax
je 0x140041887
mov rcx, rax
mov qword [0x1401081f8], rax
call rcx
mov esi, eax
mov rdx, qword [0x140108200]
test rdx, rdx
jne 0x14004123c
mov rcx, qword [0x1401081f0]
lea rdx, str.SymSetOptions
call sub.KERNEL32.dll_GetProcAddress
test rax, rax
je 0x140041890
mov rdx, rax
mov qword [0x140108200], rax
or esi, 4
mov ecx, esi
call rdx
mov rsi, qword [0x140108208]
test rsi, rsi
jne 0x140041275
mov rcx, qword [0x1401081f0]
lea rdx, str.SymInitializeW
call sub.KERNEL32.dll_GetProcAddress
test rax, rax
je 0x140041899
mov rsi, rax
mov qword [0x140108208], rax
call sub.KERNEL32.dll_GetCurrentProcess
mov rcx, rax
xor edx, edx
mov r8d, 1
call rsi
mov byte [0x140108160], 1
call sub.KERNEL32.dll_GetCurrentProcess
mov r12, qword [0x140108218]
test r12, r12
jne 0x1400412c5
mov rcx, qword [0x1401081f0]
lea rdx, str.StackWalkEx
call sub.KERNEL32.dll_GetProcAddress
test rax, rax
je 0x140041675
mov r12, rax
mov qword [0x140108218], rax
mov qword [rsp + 0xd0], rdi
lea r13, [rsp + 0xe8]
xorps xmm0, xmm0
movups xmmword [rsp + 0x1e0], xmm0
movups xmmword [rsp + 0x1d0], xmm0
movups xmmword [rsp + 0x1c0], xmm0
movups xmmword [rsp + 0x1b0], xmm0
movups xmmword [rsp + 0x1a0], xmm0
movups xmmword [rsp + 0x190], xmm0
movups xmmword [rsp + 0x180], xmm0
movups xmmword [rsp + 0x170], xmm0
movups xmmword [rsp + 0x160], xmm0
movups xmmword [rsp + 0x150], xmm0
movups xmmword [rsp + 0x140], xmm0
movups xmmword [rsp + 0x130], xmm0
movups xmmword [rsp + 0x120], xmm0
movups xmmword [rsp + 0x110], xmm0
movups xmmword [rsp + 0x100], xmm0
movups xmmword [rsp + 0xf0], xmm0
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0x1f0], 0x110
mov qword [rsp + 0x1f8], 0
mov rax, qword [rsp + 0x368]
mov qword [rsp + 0xe8], rax
mov dword [rsp + 0xf4], 3
mov rax, qword [rsp + 0x308]
mov rcx, qword [rsp + 0x310]
mov qword [rsp + 0x118], rax
mov dword [rsp + 0x124], 3
mov qword [rsp + 0x108], rcx
mov dword [rsp + 0x114], 3
lea r14, [sym.std::backtrace_rs::backtrace::dbghelp::trace::get_module_base::h3ba7fc6c8ea80f20]
lea rdi, [dbg.function_table_access]
lea rbp, [rsp + 0xa0]
lea rsi, [rsp + 0x208]
lea r15, [rsp + 0xe0]
nop word cs:[rax + rax]
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x270]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x28], 0
mov ecx, 0x8664
mov rdx, qword [rsp + 0x68]
mov r8, rbx
mov r9, r13
call r12
cmp eax, 1
jne 0x14004148b
mov rcx, qword [rsp + 0xe8]
mov qword [rsp + 0xa0], 0
mov rdx, rbp
xor r8d, r8d
call sub.KERNEL32.dll_RtlLookupFunctionEntry
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x1f8], rax
mov rcx, rsi
mov rdx, r15
call sym.std::sys_common::backtrace::_print_fmt::__u7b__u7b_closure_u7d__u7d_::ha20e668f7cc08930
test al, al
jne 0x140041400
mov rdi, qword [rsp + 0xd0]
lea r14, str.called__Option::unwrap____on_a__None__value_rustc_d5c2e9c342b358556da91d61ed4133f6f50fc0c3library_alloc_srccollections_btree_navigate.rs
mov rcx, qword [rsp + 0x60]
call fcn.1400c756c
cmp byte [rsp + 0x56], 0
je 0x1400415f5
cmp byte [rsp + 0x88], 2
je 0x1400414d3
mov rdx, qword [rsp + 0x78]
test rdx, rdx
je 0x1400414d3
mov rcx, qword [rsp + 0x70]
mov r8d, 1
call sym.__rust_dealloc
mov al, 1
add rsp, 0x748
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movups xmm0, xmmword [0x1400cfb28]
movaps xmmword [rsp + 0xf0], xmm0
movups xmm0, xmmword [str.LocalRustBacktraceMutex00000000]
movaps xmmword [rsp + 0xe0], xmm0
mov byte [rsp + 0x100], 0
call fcn.1400c76b4
test eax, eax
je 0x140041585
mov ecx, 0x1f
nop dword [rax]
cmp rcx, 0x20
ja 0x140041853
mov edx, eax
and dl, 0xf
lea r8d, [rdx + 0x30]
lea r9d, [rdx + 0x37]
cmp dl, 0xa
movzx edx, r8b
movzx r8d, r9b
cmovb r8d, edx
mov byte [rsp + rcx + 0xe0], r8b
cmp eax, 0x10
jb 0x140041585
mov edx, eax
shr dl, 4
lea r8d, [rdx + 0x30]
add dl, 0x37
cmp al, 0xa0
movzx r8d, r8b
movzx edx, dl
cmovb edx, r8d
mov byte [rsp + rcx + 0xdf], dl
mov edx, eax
shr edx, 8
add rcx, 0xfffffffffffffffe
cmp eax, 0x100
mov eax, edx
jae 0x140041520
movzx eax, byte [rsp + 0x100]
mov byte [rsp + 0xc0], al
movaps xmm0, xmmword [rsp + 0xe0]
movaps xmm1, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0xb0], xmm1
movaps xmmword [rsp + 0xa0], xmm0
lea r8, [rsp + 0xa0]
xor ecx, ecx
xor edx, edx
call sub.KERNEL32.dll_CreateMutexA
test rax, rax
je 0x1400414a4
mov r15, rax
xor eax, eax
lock cmpxchg qword [0x140108158], r15
je 0x14004118e
mov rsi, rax
mov rcx, r15
call fcn.1400c7794
mov r15, rsi
jmp 0x14004118e
cmp byte [rsp + 0x55], 0
jne 0x140041642
lea rax, str.note:_Some_details_are_omitted__run_with__RUST_BACKTRACEfull__for_a_verbose_backtrace._n_
mov qword [rsp + 0x270], rax
mov qword [rsp + 0x278], 1
mov qword [rsp + 0x280], r14
xorps xmm0, xmm0
movups xmmword [rsp + 0x288], xmm0
lea rdx, [rsp + 0x270]
mov rcx, rdi
call sym.core::fmt::Formatter::write_fmt::h8b0ebb7caf1a410c
test al, al
jne 0x1400414af
cmp byte [rsp + 0x88], 2
je 0x140041666
mov rdx, qword [rsp + 0x78]
test rdx, rdx
je 0x140041666
mov rcx, qword [rsp + 0x70]
mov r8d, 1
call sym.__rust_dealloc
xor eax, eax
jmp 0x1400414d5
mov rcx, r15
jmp 0x14004149f
xorps xmm0, xmm0
movups xmmword [rsp + 0x1e0], xmm0
movups xmmword [rsp + 0x1d0], xmm0
movups xmmword [rsp + 0x1c0], xmm0
movups xmmword [rsp + 0x1b0], xmm0
movups xmmword [rsp + 0x1a0], xmm0
movups xmmword [rsp + 0x190], xmm0
movups xmmword [rsp + 0x180], xmm0
movups xmmword [rsp + 0x170], xmm0
movups xmmword [rsp + 0x160], xmm0
movups xmmword [rsp + 0x150], xmm0
movups xmmword [rsp + 0x140], xmm0
movups xmmword [rsp + 0x130], xmm0
movups xmmword [rsp + 0x120], xmm0
movups xmmword [rsp + 0x110], xmm0
movups xmmword [rsp + 0x100], xmm0
movups xmmword [rsp + 0xf0], xmm0
mov qword [rsp + 0xe0], 1
mov qword [rsp + 0x1f8], 0
mov rax, qword [rsp + 0x368]
mov qword [rsp + 0xe8], rax
mov dword [rsp + 0xf4], 3
mov rax, qword [rsp + 0x308]
mov rcx, qword [rsp + 0x310]
mov qword [rsp + 0x118], rax
mov dword [rsp + 0x124], 3
mov qword [rsp + 0x108], rcx
mov dword [rsp + 0x114], 3
lea rsi, [sym.std::backtrace_rs::backtrace::dbghelp::trace::get_module_base::h3ba7fc6c8ea80f20]
lea r15, [dbg.function_table_access]
lea rbp, [rsp + 0xa0]
lea r13, [rsp + 0x208]
lea r12, [rsp + 0xe0]
nop word [rax + rax]
mov r10, qword [0x140108210]
test r10, r10
jne 0x1400417c2
mov rcx, qword [0x1401081f0]
lea rdx, str.StackWalk64
call sub.KERNEL32.dll_GetProcAddress
test rax, rax
je 0x14004186d
mov r10, rax
mov qword [0x140108210], rax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], r15
lea rax, [rsp + 0x270]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x28], 0
mov ecx, 0x8664
mov rdx, qword [rsp + 0x68]
mov r8, rbx
lea r9, [rsp + 0xe8]
call r10
cmp eax, 1
jne 0x14004149a
mov rcx, qword [rsp + 0xe8]
mov qword [rsp + 0xa0], 0
mov rdx, rbp
xor r8d, r8d
call sub.KERNEL32.dll_RtlLookupFunctionEntry
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x1f8], rax
mov rcx, r13
mov rdx, r12
call sym.std::sys_common::backtrace::_print_fmt::__u7b__u7b_closure_u7d__u7d_::ha20e668f7cc08930
test al, al
jne 0x140041790
jmp 0x14004149a
lea r8, str.library_std_src...._backtrace_srcdbghelp.rs
mov edx, 0x21
mov rcx, 0xffffffffffffffff
call dbg.panic_bounds_check
jmp 0x1400418b1
lea rcx, str.called__Option::unwrap____on_a__None__value_rustc_d5c2e9c342b358556da91d61ed4133f6f50fc0c3library_alloc_srccollections_btree_navigate.rs
lea r8, str.library_std_src...._backtrace_srcdbghelp.rs
mov edx, 0x2b
call dbg.panic
jmp 0x1400418b1
lea r8, str.library_std_src...._backtrace_srcdbghelp.rs
jmp 0x1400418a0
lea r8, str.library_std_src...._backtrace_srcdbghelp.rs
jmp 0x1400418a0
lea r8, str.library_std_src...._backtrace_srcdbghelp.rs
lea rcx, str.called__Option::unwrap____on_a__None__value_rustc_d5c2e9c342b358556da91d61ed4133f6f50fc0c3library_alloc_srccollections_btree_navigate.rs
mov edx, 0x2b
call dbg.panic
ud2