Function at 0x100cb9d0
Capabilities:
Link many functions at runtime
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x490
mov eax, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
movzx ebx, byte [eax]
mov byte [esp + 7], bl
lea ecx, [esp + 0x1b0]
call dbg.current_dir
mov esi, dword [esp + 0x1b0]
cmp esi, 0x80000000
jne 0x100cba1a
lea ecx, [esp + 0x1b0]
call dbg.drop_in_place<core::result::Result<std::path::PathBuf, std::io::error::Error>>
movzx ebx, byte [esp + 7]
jmp 0x100cba3a
mov eax, dword [esp + 0x1bc]
movsd xmm0, qword [esp + 0x1b4]
mov dword [esp + 0x90], eax
movsd qword [esp + 0x88], xmm0
movsd xmm0, qword [esp + 0x88]
mov eax, dword [esp + 0x90]
mov edx, dword [edi + 0x18]
mov ecx, dword [edi + 0x14]
mov byte [esp + 0x70], bl
mov dword [esp + 0x60], esi
mov dword [esp + str.stack_backtrace:_n], 0x101c1e24
mov dword [esp + 0x1b4], 1
mov dword [esp + 0x1c0], 0
mov dword [esp + 0x1b8], str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_srccharmethods.rs_
mov dword [esp + 0x1bc], 0
movsd qword [esp + 0x64], xmm0
mov dword [esp + 0x6c], eax
lea eax, [esp + 0x1b0]
push eax
call sym.core::fmt::Formatter::write_fmt::hf6a8304511a00909
add esp, 4
test al, al
jne 0x100cbeb4
movzx eax, byte [esp + 7]
lea ecx, [esp + 0x60]
mov dword [esp + 0x74], edi
mov dword [esp + 0x80], 0
mov byte [esp + 8], 0
mov dword [esp + 0x34], 0
mov byte [esp + 0xb], 1
test al, al
mov byte [esp + 0x84], al
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], 0x101c1e2c
setne byte [esp + 0xa]
call sub.kernel32.dll_GetCurrentProcess
mov dword [esp + 0x1c], eax
call sub.kernel32.dll_GetCurrentThread
mov dword [esp + 0x18], eax
push 0x2d0
push 0
lea esi, [esp + 0x1b8]
push esi
call sub.msvcrt.dll_memset
add esp, 0xc
push esi
call sub.kernel32.dll_RtlCaptureContext
mov ebx, dword [0x1022a0d8]
test ebx, ebx
je 0x100cbed6
push 0
push 0xffffffffffffffff
push ebx
call sub.kernel32.dll_WaitForSingleObjectEx
mov eax, dword [0x1022a110]
test eax, eax
jne 0x100cbb5c
push str.dbghelp.dll
call sub.kernel32.dll_LoadLibraryA
test eax, eax
mov dword [0x1022a110], eax
je 0x100cc032
cmp byte [0x1022a0dc], 0
mov dword [esp + 0x2c], ebx
jne 0x100cbbfd
mov ecx, dword [0x1022a114]
test ecx, ecx
jne 0x100cbb91
push str.SymGetOptions
push eax
call sub.kernel32.dll_GetProcAddress
test eax, eax
je 0x100cc277
mov ecx, eax
mov dword [0x1022a114], eax
call ecx
mov esi, eax
mov eax, dword [0x1022a118]
test eax, eax
jne 0x100cbbbb
push str.SymSetOptions
push dword [0x1022a110]
call sub.kernel32.dll_GetProcAddress
test eax, eax
je 0x100cc27e
mov dword [0x1022a118], eax
or esi, 4
push esi
call eax
mov esi, dword [0x1022a11c]
test esi, esi
jne 0x100cbbea
push str.SymInitializeW
push dword [0x1022a110]
call sub.kernel32.dll_GetProcAddress
test eax, eax
je 0x100cc285
mov esi, eax
mov dword [0x1022a11c], eax
call sub.kernel32.dll_GetCurrentProcess
push 1
push 0
push eax
call esi
mov byte [0x1022a0dc], 1
mov eax, dword [0x1022a124]
test eax, eax
mov dword [esp + 0xc], eax
jne 0x100cbc2f
push str.SymFunctionTableAccess64
push dword [0x1022a110]
call sub.kernel32.dll_GetProcAddress
test eax, eax
mov dword [esp + 0xc], eax
je 0x100cc25e
mov eax, dword [esp + 0xc]
mov dword [0x1022a124], eax
mov ebx, dword [0x1022a128]
test ebx, ebx
jne 0x100cbc58
push str.SymGetModuleBase64
push dword [0x1022a110]
call sub.kernel32.dll_GetProcAddress
test eax, eax
je 0x100cc25e
mov ebx, eax
mov dword [0x1022a128], eax
call sub.kernel32.dll_GetCurrentProcess
mov edi, dword [0x1022a12c]
mov dword [esp + 0x30], eax
test edi, edi
jne 0x100cbc8a
push str.StackWalkEx
push dword [0x1022a110]
call sub.kernel32.dll_GetProcAddress
test eax, eax
je 0x100cc03d
mov edi, eax
mov dword [0x1022a12c], eax
lea eax, [esp + 0xa8]
push 0x108
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
mov eax, dword [esp + 0x264]
mov ecx, dword [esp + 0x268]
mov edx, dword [esp + 0x274]
mov dword [esp + 0x1a8], 0x110
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xac], 3
mov dword [esp + 0xd0], edx
mov dword [esp + 0xd4], 0
mov dword [esp + 0xdc], 3
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], 0
mov dword [esp + 0xcc], 3
push 0
push 0
push ebx
push dword [esp + 0x18]
push 0
lea eax, [esp + 0x1c4]
push eax
lea eax, [esp + 0xb8]
push eax
push dword [esp + 0x34]
push dword [esp + 0x3c]
push 0x14c
call edi
cmp eax, 1
jne 0x100cbe9d
xor esi, esi
nop dword [eax]
push dword [esp + 0xa4]
push dword [esp + 0xa4]
push dword [esp + 0x38]
call ebx
cmp byte [esp + 7], 0
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0xd0]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], edx
jne 0x100cbd8e
cmp esi, 0x64
ja 0x100cbe9d
lea eax, [esp + 9]
lea ecx, [esp + 8]
mov byte [esp + 9], 0
mov dword [esp + 0x38], eax
lea eax, [esp + 7]
mov dword [esp + 0x3c], eax
lea eax, [esp + 0xa]
mov dword [esp + 0x40], eax
lea eax, [esp + 0x34]
mov dword [esp + 0x44], eax
lea eax, [esp + 0xb]
mov dword [esp + 0x48], eax
lea eax, [esp + 0x74]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], ecx
lea ecx, [esp + 0x20]
mov dword [esp + 0x54], ecx
lea edx, [esp + 0x38]
push 0x101c22f8
call dbg.resolve
add esp, 4
cmp byte [esp + 9], 0
jne 0x100cbe60
cmp byte [esp + 0xa], 0
je 0x100cbe60
mov edx, dword [esp + 0x24]
lea eax, [esp + 0x74]
mov dword [esp + 0x38], 3
mov dword [esp + 0x94], 2
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 0
sub esp, 0x18
lea eax, [esp + 0xac]
lea ecx, [esp + 0x28]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0
mov dword [esp + 4], eax
lea eax, [esp + 0x50]
mov dword [esp], eax
call dbg.print_raw_with_column
add esp, 0x18
mov ecx, dword [esp + 0x10]
mov byte [esp + 8], al
inc dword [ecx + 0xc]
test al, al
je 0x100cbe69
jmp 0x100cbe9d
movzx eax, byte [esp + 8]
test al, al
jne 0x100cbe9d
inc esi
push 0
push 0
push ebx
push dword [esp + 0x18]
push 0
lea eax, [esp + 0x1c4]
push eax
lea eax, [esp + 0xb8]
push eax
push dword [esp + 0x34]
push dword [esp + 0x3c]
push 0x14c
call edi
cmp eax, 1
je 0x100cbd50
push dword [esp + 0x2c]
call sub.kernel32.dll_ReleaseMutex
mov edi, dword [ebp + 0xc]
cmp byte [esp + 8], 0
je 0x100cbfb7
test dword [esp + 0x60], 0x7fffffff
je 0x100cbecc
mov ecx, dword [esp + 0x64]
mov edx, 1
call sym.___rust_dealloc
mov al, 1
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x21
push str.LocalRustBacktraceMutex00000000
lea eax, [esp + 0xa8]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
call sub.kernel32.dll_GetCurrentProcessId
test eax, eax
je 0x100cbf38
mov ecx, 0x1f
nop dword [eax + eax]
cmp ecx, 0x20
ja 0x100cc245
mov edx, eax
mov esi, eax
and dl, 0xf
mov dh, dl
mov ebx, edx
add bl, 0x37
or dh, 0x30
cmp dl, 0xa
movzx edx, dh
movzx ebx, bl
cmovb ebx, edx
shr esi, 4
mov byte [esp + ecx + 0xa0], bl
dec ecx
cmp eax, 0x10
mov eax, esi
jae 0x100cbf00
movsd xmm1, qword [esp + 0xb0]
movzx eax, byte [esp + 0xc0]
movsd xmm0, qword [esp + 0xb8]
movsd xmm2, qword [esp + 0xa0]
movsd qword [esp + 0x48], xmm1
movsd xmm1, qword [esp + 0xa8]
mov byte [esp + 0x58], al
movsd qword [esp + 0x50], xmm0
movsd qword [esp + 0x38], xmm2
movsd qword [esp + 0x40], xmm1
lea eax, [esp + 0x38]
push eax
push 0
push 0
call sub.kernel32.dll_CreateMutexA
test eax, eax
je 0x100cbea9
mov ebx, eax
xor eax, eax
lock cmpxchg dword [0x1022a0d8], ebx
je 0x100cbb32
mov esi, eax
push ebx
call sub.kernel32.dll_CloseHandle
mov ebx, esi
jmp 0x100cbb32
cmp byte [esp + 7], 0
jne 0x100cc013
mov edx, dword [edi + 0x18]
mov ecx, dword [edi + 0x14]
mov dword [esp + str.note:_Some_details_are_omitted__run_with__RUST_BACKTRACEfull__for_a_verbose_backtrace._n_], 0x101c1e98
mov dword [esp + 0x1b4], 1
mov dword [esp + 0x1c0], 0
mov dword [esp + 0x1b8], str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_srccharmethods.rs_
mov dword [esp + 0x1bc], 0
lea eax, [esp + 0x1b0]
push eax
call sym.core::fmt::Formatter::write_fmt::hf6a8304511a00909
add esp, 4
test al, al
jne 0x100cbeb4
test dword [esp + 0x60], 0x7fffffff
je 0x100cc02b
mov ecx, dword [esp + 0x64]
mov edx, 1
call sym.___rust_dealloc
xor eax, eax
jmp 0x100cbece
push ebx
call sub.kernel32.dll_ReleaseMutex
jmp 0x100cbea9
lea eax, [esp + 0xa8]
push 0x100
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
mov ecx, dword [esp + 0x268]
mov eax, dword [esp + 0x264]
mov edx, dword [esp + 0x274]
xor esi, esi
lea edi, [esp + 0x20]
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xac], 3
mov dword [esp + 0xd0], edx
mov dword [esp + 0xd4], 0
mov dword [esp + 0xdc], 3
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], 0
mov dword [esp + 0xcc], 3
jmp 0x100cc0de
movzx eax, byte [esp + 8]
inc esi
test al, al
jne 0x100cbe9d
mov eax, dword [0x1022a120]
test eax, eax
jne 0x100cc104
push str.StackWalk64
push dword [0x1022a110]
call sub.kernel32.dll_GetProcAddress
test eax, eax
je 0x100cc25e
mov dword [0x1022a120], eax
push 0
push ebx
push dword [esp + 0x14]
push 0
lea ecx, [esp + 0x1c0]
push ecx
lea ecx, [esp + 0xb4]
push ecx
push dword [esp + 0x30]
push dword [esp + 0x38]
push 0x14c
call eax
cmp eax, 1
jne 0x100cbe9d
push dword [esp + 0xa4]
push dword [esp + 0xa4]
push dword [esp + 0x38]
call ebx
cmp byte [esp + 7], 0
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0xd0]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], edx
jne 0x100cc173
cmp esi, 0x64
ja 0x100cbe9d
lea eax, [esp + 9]
mov byte [esp + 9], 0
mov dword [esp + 0x38], eax
lea eax, [esp + 7]
mov dword [esp + 0x3c], eax
lea eax, [esp + 0xa]
mov dword [esp + 0x40], eax
lea eax, [esp + 0x34]
mov dword [esp + 0x44], eax
lea eax, [esp + 0xb]
mov dword [esp + 0x48], eax
lea eax, [esp + 0x74]
mov dword [esp + 0x4c], eax
lea eax, [esp + 8]
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], edi
lea edx, [esp + 0x38]
mov ecx, edi
push 0x101c22f8
call dbg.resolve
add esp, 4
cmp byte [esp + 9], 0
jne 0x100cc0d0
cmp byte [esp + 0xa], 0
je 0x100cc0d0
mov edx, dword [esp + 0x24]
lea eax, [esp + 0x74]
mov dword [esp + 0x38], 3
mov dword [esp + 0x94], 2
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 0
sub esp, 0x18
lea eax, [esp + 0xac]
lea ecx, [esp + 0x28]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0
mov dword [esp + 4], eax
lea eax, [esp + 0x50]
mov dword [esp], eax
call dbg.print_raw_with_column
add esp, 0x18
mov ecx, dword [esp + 0x10]
mov byte [esp + 8], al
inc dword [ecx + 0xc]
jmp 0x100cc0d5
mov edx, 0x21
mov ecx, 0xffffffff
push 0x101c2438
call dbg.panic_bounds_check
add esp, 4
jmp 0x100cc29d
mov edx, 0x2b
mov ecx, str.called__Option::unwrap____on_a__None__value
push 0x101c32e0
call dbg.panic
add esp, 4
jmp 0x100cc29d
mov eax, 0x101c23e4
jmp 0x100cc28a
mov eax, 0x101c23f4
jmp 0x100cc28a
mov eax, 0x101c2404
mov edx, 0x2b
mov ecx, str.called__Option::unwrap____on_a__None__value
push eax
call dbg.panic
add esp, 4
ud2