Function at 0x1400c40b0
Capabilities:
Enumerate process modules
Get common file path
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xb68
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xac0], rdx
movzx eax, byte [rcx]
mov byte [rbp + 0xae6], al
mov byte [rbp + 0xae4], al
mov qword [rbp + 0xa80], 0
lea rax, [rbp + 0xa88]
mov qword [rbp + 0xad8], rax
mov qword [rbp + 0xa88], 2
mov qword [rbp + 0xa90], 0
mov r8d, 0x200
mov eax, 2
mov qword [rbp + 0xac8], rax
xor r13d, r13d
mov r15d, 0xffffffff
xor r12d, r12d
xor esi, esi
cmp r8, 0x201
jae 0x1400c4160
jmp 0x1400c414f
jae 0x1400c421c
cmp r8, 0x201
jae 0x1400c4160
mov edi, 0x200
lea rbx, [rbp - 0x40]
mov r14, r8
jmp 0x1400c41b2
sub r8, rsi
sub r12, rsi
cmp r8, r12
jbe 0x1400c418f
lea rcx, [rbp + 0xa80]
mov rdx, rsi
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h498cd2a0878ddf3d
mov r13, qword [rbp + 0xa80]
mov rax, qword [rbp + 0xa88]
mov qword [rbp + 0xac8], rax
cmp r13, r15
mov esi, 0xffffffff
cmovb rsi, r13
mov qword [rbp + 0xa90], rsi
mov r12, r13
mov rdi, rsi
mov rbx, qword [rbp + 0xac8]
mov r14, rsi
xor ecx, ecx
call sub.kernel32.dll_SetLastError
mov ecx, r14d
mov rdx, rbx
call sub.kernel32.dll_GetCurrentDirectoryW
test eax, eax
jne 0x1400c41e3
mov r15d, eax
call sub.kernel32.dll_GetLastError
mov ecx, eax
mov eax, r15d
mov r15d, 0xffffffff
test ecx, ecx
jne 0x1400c4b3e
mov r8d, eax
cmp r14, r8
jne 0x1400c4140
call sub.kernel32.dll_GetLastError
cmp eax, 0x7a
jne 0x1400c4bd1
add r14, r14
cmp r14, r15
cmovae r14, r15
mov r8, r14
cmp r8, 0x201
jb 0x1400c414f
jmp 0x1400c4160
cmp rdi, r8
jb 0x1400c4bfc
lea rcx, [rbp + 0x498]
mov rdx, rbx
call sym.__std::ffi::os_str::OsString_as_std::os::windows::ffi::OsStringExt_::from_wide::h4f0d847f13879248
movups xmm0, xmmword [rbp + 0x498]
movups xmm1, xmmword [rbp + 0x4a8]
movaps xmmword [rbp + 0xa20], xmm1
movaps xmmword [rbp + 0xa10], xmm0
cmp qword [rbp + 0xa80], 0
je 0x1400c426f
mov r8, qword [rbp + 0xa88]
mov rcx, qword [0x1401490c0]
xor edx, edx
call fcn.1400d78a4
mov rsi, qword [rbp + 0xa10]
lea rcx, [rbp + 0xa18]
movabs rax, 0x8000000000000000
cmp rsi, rax
jne 0x1400c4293
call sym.core::ptr::drop_in_place_std::io::error::Error_::h3466fc80fe41233f
jmp 0x1400c42a8
mov rax, qword [rcx + 0x10]
mov qword [rbp + 0x8e0], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rbp + 0x8d0], xmm0
movzx eax, byte [rbp + 0xae6]
mov byte [rbp + 0xa08], al
mov qword [rbp + 0x9e8], rsi
movaps xmm0, xmmword [rbp + 0x8d0]
movups xmmword [rbp + 0x9f0], xmm0
mov rax, qword [rbp + 0x8e0]
mov qword [rbp + 0xa00], rax
mov rax, qword [rbp + 0xac0]
mov rcx, qword [rax + 0x20]
mov rax, qword [rax + 0x28]
lea rdx, str.stack_backtrace:_n
mov r8d, 0x11
call qword [rax + 0x18]
test al, al
jne 0x1400c4b04
mov rax, qword [rbp + 0xac0]
mov qword [rbp + 0x8e8], rax
mov qword [rbp + 0x900], 0
movzx ecx, byte [rbp + 0xae6]
mov byte [rbp + 0x908], cl
lea rax, [rbp + 0x9e8]
mov qword [rbp + 0x8f0], rax
lea rax, sym.core::ptr::drop_in_place_std::sys::backtrace::_print_fmt::_u7b__u7b_closure_u7d__u7d__::hcedfd830f717b248
mov qword [rbp + 0x8f8], rax
mov byte [rbp + 0xae7], 0
mov qword [rbp + 0x9d0], 0
mov byte [rbp + 0xae2], 1
test cl, cl
setne byte [rbp + 0xae3]
lea rbx, [rbp - 0x40]
mov r8d, 0x4d0
mov rcx, rbx
xor edx, edx
call sub.msvcrt.dll_memset
mov rcx, rbx
call sub.kernel32.dll_RtlCaptureContext
mov r15, qword [rbp + 0xb8]
mov qword [rbp + 0xad0], 0
lea rdx, [rbp + 0xad0]
mov rcx, r15
xor r8d, r8d
call sub.kernel32.dll_RtlLookupFunctionEntry
test rax, rax
je 0x1400c4afb
lea r14, [rbp + 0xae5]
lea r13, [rbp + 0x498]
xor r12d, r12d
jmp 0x1400c43ec
inc r12
mov qword [rbp + 0xad0], 0
mov rcx, rsi
lea rdx, [rbp + 0xad0]
xor r8d, r8d
call sub.kernel32.dll_RtlLookupFunctionEntry
mov r15, rsi
test rax, rax
je 0x1400c4afb
mov qword [rbp + 0xac8], rax
mov rax, qword [rbp + 0xad0]
mov rcx, qword [rbp + 0x58]
mov qword [rbp + 0x958], rax
mov qword [rbp + 0x960], r15
mov qword [rbp + 0x968], rcx
cmp byte [rbp + 0xae4], 0
jne 0x1400c4426
cmp r12, 0x64
ja 0x1400c4afb
mov rax, r15
sub rax, 1
mov edi, 0
cmovae rdi, rax
mov byte [rbp + 0xae5], 0
mov qword [rbp + 0xa80], r14
lea rax, [rbp + 0xae4]
mov qword [rbp + 0xa88], rax
lea rax, [rbp + 0xae3]
mov qword [rbp + 0xa90], rax
lea rax, [rbp + 0x9d0]
mov qword [rbp + 0xa98], rax
lea rax, [rbp + 0xae2]
mov qword [rbp + 0xaa0], rax
lea rax, [rbp + 0x8e8]
mov qword [rbp + 0xaa8], rax
lea rax, [rbp + 0xae7]
mov qword [rbp + 0xab0], rax
lea rax, [rbp + 0x958]
mov qword [rbp + 0xab8], rax
lea rax, [rbp + 0xa80]
mov qword [rbp + 0x910], rax
lea rax, [0x140110958]
mov qword [rbp + 0x918], rax
movabs rax, 0x8000000000000000
cmp qword [0x1400da028], rax
jne 0x1400c49de
movzx eax, byte [0x140149110]
mov edx, 0x8c0
xor ecx, ecx
call sym.std::sys::pal::windows::alloc::process_heap_alloc::h1ca289f3d44bb24b
test rax, rax
je 0x1400c4beb
mov qword [rbp + 0x9b8], 4
mov qword [rbp + 0x9c0], rax
mov qword [rbp + 0x9c8], 0
mov qword [rbp + 0xa68], 0
mov qword [rbp + 0xa70], 8
mov qword [rbp + 0xa78], 0
mov ecx, 8
xor edx, edx
call sub.kernel32.dll_CreateToolhelp32Snapshot
cmp rax, 0xffffffffffffffff
je 0x1400c48c8
mov r14, rax
mov r8d, 0x438
mov rcx, r13
xor edx, edx
call sub.msvcrt.dll_memset
mov dword [rbp + 0x498], 0x438
mov rcx, r14
mov rdx, r13
call sub.kernel32.dll_Module32FirstW
cmp eax, 1
jne 0x1400c48c0
mov eax, 8
mov qword [rbp + 0xa50], rax
xor eax, eax
mov qword [rbp + 0xad8], rax
jmp 0x1400c45b4
lea r13, [rbp + 0x498]
nop dword [rax + rax]
mov rcx, r14
mov rdx, r13
call sub.kernel32.dll_Module32NextW
cmp eax, 1
jne 0x1400c48c0
mov eax, 0x208
xor r8d, r8d
nop dword [rax]
cmp word [rbp + r8*2 + 0x6c8], 0
je 0x1400c4630
cmp word [rbp + r8*2 + 0x6ca], 0
je 0x1400c460e
cmp word [rbp + r8*2 + 0x6cc], 0
je 0x1400c4613
cmp word [rbp + r8*2 + 0x6ce], 0
je 0x1400c4619
cmp word [rbp + r8*2 + 0x6d0], 0
je 0x1400c461f
add r8, 5
add rax, 0xfffffffffffffff6
jne 0x1400c45c0
mov r8d, 0x104
jmp 0x1400c4630
inc r8
jmp 0x1400c4630
add r8, 2
jmp 0x1400c4630
add r8, 3
jmp 0x1400c4630
add r8, 4
nop word cs:[rax + rax]
lea rcx, [rbp + 0x970]
lea rdx, [rbp + 0x6c8]
call sym.__std::ffi::os_str::OsString_as_std::os::windows::ffi::OsStringExt_::from_wide::h4f0d847f13879248
mov rbx, qword [rbp + 0x978]
mov r8, qword [rbp + 0x980]
lea rcx, [rbp + 0x990]
mov rdx, rbx
call sym.std::backtrace_rs::symbolize::gimli::mmap::h78e3ff3b668087cd
cmp qword [rbp + 0x990], 0
je 0x1400c4717
mov rsi, qword [rbp + 0x998]
mov r13, qword [rbp + 0x9a0]
mov rcx, qword [rbp + 0x9a8]
cmp rcx, 0x40
jb 0x1400c4700
movzx eax, word [r13]
cmp eax, 0x5a4d
jne 0x1400c4700
mov eax, dword [r13 + 0x3c]
mov rdx, rcx
sub rdx, rax
jb 0x1400c4700
cmp rdx, 0x88
jb 0x1400c4700
cmp dword [r13 + rax], 0x4550
jne 0x1400c4700
movzx edx, word [r13 + rax + 0x18]
cmp edx, 0x20b
jne 0x1400c4700
movzx edx, word [r13 + rax + 0x14]
cmp rdx, 0x70
jb 0x1400c4700
lea r8, [rax + 0x88]
add rdx, 0xffffffffffffff90
sub rcx, r8
cmp rcx, rdx
jb 0x1400c4700
mov ecx, dword [r13 + rax + 0x84]
shl rcx, 3
cmp rcx, rdx
jbe 0x1400c473b
nop word cs:[rax + rax]
mov rcx, r13
call sub.kernel32.dll_UnmapViewOfFile
mov rcx, rsi
call sub.kernel32.dll_CloseHandle
lea r13, [rbp + 0x498]
cmp qword [rbp + 0x970], 0
je 0x1400c45a0
mov rcx, qword [0x1401490c0]
xor edx, edx
mov r8, rbx
call fcn.1400d78a4
jmp 0x1400c45a0
mov rax, qword [r13 + rax + 0x30]
mov qword [rbp + 0xa58], rax
mov rax, qword [rbp + 0x4b0]
mov qword [rbp + 0x9d8], rax
mov rax, qword [rbp + 0x970]
mov qword [rbp + 0xa60], rax
movzx eax, byte [0x140149110]
mov edx, 0x10
xor ecx, ecx
call sym.std::sys::pal::windows::alloc::process_heap_alloc::h1ca289f3d44bb24b
test rax, rax
je 0x1400c4c13
mov edx, dword [rbp + 0x4b8]
mov rcx, qword [rbp + 0xa58]
mov qword [rax], rcx
mov qword [rbp + 0x9e0], rax
mov qword [rax + 8], rdx
lea rax, [rbp + 0x980]
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x990], xmm0
mov rcx, r13
call sub.kernel32.dll_UnmapViewOfFile
mov rcx, rsi
call sub.kernel32.dll_CloseHandle
movabs rax, 0x8000000000000000
mov rcx, qword [rbp + 0xa60]
cmp rcx, rax
je 0x1400c4591
mov rax, rcx
mov rcx, qword [rbp + 0x9d8]
sub rcx, qword [rbp + 0xa58]
mov qword [rbp + 0xa10], rax
mov qword [rbp + 0xa18], rbx
movaps xmm0, xmmword [rbp + 0x990]
lea rax, [rbp + 0xa20]
movups xmmword [rax], xmm0
mov qword [rbp + 0xa30], 1
mov rax, qword [rbp + 0x9e0]
mov qword [rbp + 0xa38], rax
mov qword [rbp + 0xa40], 1
mov qword [rbp + 0xa48], rcx
mov rax, qword [rbp + 0xad8]
cmp rax, qword [rbp + 0xa68]
lea r13, [rbp + 0x498]
jne 0x1400c4861
lea rcx, [rbp + 0xa68]
call sym.alloc::raw_vec::RawVec_T_A_::grow_one::h16e5c50b0446a3bb
mov rax, qword [rbp + 0xa70]
mov qword [rbp + 0xa50], rax
mov rcx, qword [rbp + 0xad8]
mov rax, rcx
shl rax, 6
movups xmm0, xmmword [rbp + 0xa10]
movups xmm1, xmmword [rbp + 0xa20]
movups xmm2, xmmword [rbp + 0xa30]
movups xmm3, xmmword [rbp + 0xa40]
mov rdx, qword [rbp + 0xa50]
movups xmmword [rdx + rax + 0x30], xmm3
movups xmmword [rdx + rax + 0x20], xmm2
movups xmmword [rdx + rax + 0x10], xmm1
movups xmmword [rdx + rax], xmm0
inc rcx
mov rax, rcx
mov qword [rbp + 0xad8], rcx
mov qword [rbp + 0xa78], rcx
jmp 0x1400c45a0
mov rcx, r14
call sub.kernel32.dll_CloseHandle
movups xmm0, xmmword [rbp + 0xa68]
movaps xmmword [rbp + 0x920], xmm0
mov rax, qword [rbp + 0xa78]
mov qword [rbp + 0x930], rax
mov rax, qword [rbp + 0x9c8]
lea rcx, [rbp + 0x938]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rbp + 0x9b8]
movups xmmword [rcx], xmm0
mov rbx, qword [0x1400da028]
movabs rax, 0x8000000000000000
cmp rbx, rax
je 0x1400c49a9
mov rsi, qword [0x1400da030]
mov r14, qword [0x1400da038]
test r14, r14
je 0x1400c4980
lea r13, [rsi + 0x28]
jmp 0x1400c4949
add r13, 0x40
dec r14
je 0x1400c4980
cmp qword [r13 - 0x28], 0
je 0x1400c4962
mov r8, qword [r13 - 0x20]
mov rcx, qword [0x1401490c0]
xor edx, edx
call fcn.1400d78a4
cmp qword [r13 - 8], 0
je 0x1400c4940
mov r8, qword [r13]
mov rcx, qword [0x1401490c0]
xor edx, edx
call fcn.1400d78a4
jmp 0x1400c4940
test rbx, rbx
je 0x1400c4996
mov rcx, qword [0x1401490c0]
xor edx, edx
mov r8, rsi
call fcn.1400d78a4
lea rcx, [0x1400da040]
call sym._ZN4core3ptr104drop_in_place_LT_alloc..vec..Vec_LT__LP_usize_C_std..backtrace_rs..symbolize..gimli..Mapping_RP__GT__GT_17hca6f
lea r13, [rbp + 0x498]
movaps xmm0, xmmword [rbp + 0x920]
movaps xmm1, xmmword [rbp + 0x930]
movaps xmm2, xmmword [rbp + 0x940]
movups xmmword [0x1400da048], xmm2
movups xmmword [0x1400da038], xmm1
movups xmmword [0x1400da028], xmm0
lea rbx, [rbp - 0x40]
lea r14, [rbp + 0xae5]
mov rcx, rdi
lea rdx, [rbp + 0x910]
call sym.std::backtrace_rs::symbolize::gimli::resolve::__u7b__u7b_closure_u7d__u7d_::h0272916f41ce74dc
cmp byte [rbp + 0xae5], 0
jne 0x1400c4a80
cmp byte [rbp + 0xae3], 0
je 0x1400c4a80
lea rax, [rbp + 0x8e8]
mov qword [rbp + 0xa80], rax
mov qword [rbp + 0xa88], 0
mov rdx, qword [rbp + 0x960]
mov qword [rbp + 0x498], 3
mov qword [rbp + 0xa10], 2
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x20], 0
lea rcx, [rbp + 0xa80]
mov r8, r13
lea r9, [rbp + 0xa10]
call sym.std::backtrace_rs::print::BacktraceFrameFmt::print_raw_with_column::h34173e6fc8ff1ce1
mov byte [rbp + 0xae7], al
mov rcx, qword [rbp + 0xa80]
inc qword [rcx + 0x18]
test al, al
je 0x1400c4a8b
jmp 0x1400c4afb
movzx eax, byte [rbp + 0xae7]
test al, al
jne 0x1400c4afb
mov rdi, qword [rbp + 0x58]
mov qword [rbp + 0xa10], 0
mov qword [rbp + 0x498], 0
mov rdx, qword [rbp + 0xad0]
mov qword [rsp + 0x30], r13
lea rax, [rbp + 0xa10]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x38], 0
xor ecx, ecx
mov r8, r15
mov r9, qword [rbp + 0xac8]
call sub.kernel32.dll_RtlVirtualUnwind
mov rsi, qword [rbp + 0xb8]
test rsi, rsi
je 0x1400c4afb
cmp rsi, r15
jne 0x1400c43c0
cmp qword [rbp + 0x58], rdi
jne 0x1400c43c0
cmp byte [rbp + 0xae7], 0
je 0x1400c4b76
mov rax, qword [rbp + 0x9e8]
shl rax, 1
test rax, rax
je 0x1400c4b28
mov r8, qword [rbp + 0x9f0]
mov rcx, qword [0x1401490c0]
xor edx, edx
call fcn.1400d78a4
mov al, 1
add rsp, 0xb68
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call sub.kernel32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov qword [rbp + 0xa18], rax
movabs rax, 0x8000000000000000
mov qword [rbp + 0xa10], rax
cmp qword [rbp + 0xa80], 0
jne 0x1400c425a
jmp 0x1400c426f
cmp byte [rbp + 0xae6], 0
jne 0x1400c4ba6
mov rax, qword [rbp + 0xac0]
mov rcx, qword [rax + 0x20]
mov rax, qword [rax + 0x28]
lea rdx, str.note:_Some_details_are_omitted__run_with__RUST_BACKTRACEfull__for_a_verbose_backtrace._n__rust_begin_short_backtrace__rust_end_short_backtraces_______..._omitted__frame_...__n
mov r8d, 0x58
call qword [rax + 0x18]
test al, al
jne 0x1400c4b04
mov rax, qword [rbp + 0x9e8]
shl rax, 1
test rax, rax
je 0x1400c4bca
mov r8, qword [rbp + 0x9f0]
mov rcx, qword [0x1401490c0]
xor edx, edx
call fcn.1400d78a4
xor eax, eax
jmp 0x1400c4b2a
lea rcx, str.internal_error:_entered_unreachable_code_root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_tokio_1.40.0_src_sync_notify.rs
lea r8, str.library_std_src_syspalwindowsmod.rsstrings_passed_to_WinAPI_cannot_contain_NULs
mov edx, 0x28
call sym.core::panicking::panic::h82631201f060ca88
jmp 0x1400c4c29
mov ecx, 8
mov edx, 0x8c0
call sym.alloc::raw_vec::handle_error::hd43ffb3afada7951
jmp 0x1400c4c29
lea rax, str.library_std_src_syspalwindowsmod.rsstrings_passed_to_WinAPI_cannot_contain_NULs
mov rcx, r8
mov rdx, rdi
mov r8, rax
call sym.core::slice::index::slice_end_index_len_fail::hdaa9bbd2fcad4cbb
jmp 0x1400c4c29
mov r14, qword [rbp + 0xa60]
mov ecx, 8
mov edx, 0x10
call sym.alloc::alloc::handle_alloc_error::h526f0ddc898dc940
ud2