Function at 0x1400a2ca0
Capabilities:
Enumerate process modules
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xab8
mov qword [rsp + 0x128], r9
mov qword [rsp + 0xb0], r8
mov rbp, rdx
test rcx, rcx
je 0x1400a2cf8
mov rbp, qword [rbp + 8]
test rbp, rbp
je 0x1400a2cfd
dec rbp
mov rax, qword [0x1403271b8]
test rax, rax
je 0x1400a2d0b
mov rdx, qword [0x1403271c8]
test rdx, rdx
jne 0x1400a3252
jmp 0x1400a425a
test rbp, rbp
jne 0x1400a2cd4
xor ebp, ebp
mov rax, qword [0x1403271b8]
test rax, rax
jne 0x1400a2ce3
mov rax, qword [str.1p2_]
movzx eax, byte [rax]
mov ecx, 0x8c0
mov edx, 8
call sym.__rust_alloc
test rax, rax
je 0x1400a477b
mov qword [rsp + 0x40], rax
mov qword [rsp + 0xb8], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0xc0], xmm0
mov ecx, 8
xor edx, edx
call sub.kernel32.dll_CreateToolhelp32Snapshot
cmp rax, 0xffffffffffffffff
je 0x1400a30f3
mov rbx, rax
mov qword [rsp + 0x38], rbp
lea rsi, [rsp + 0x680]
mov r8d, 0x438
mov rcx, rsi
xor edx, edx
call sub.msvcrt.dll_memset
mov dword [rsp + 0x680], 0x438
mov rcx, rbx
mov rdx, rsi
call sub.kernel32.dll_Module32FirstW
cmp eax, 1
jne 0x1400a30e6
lea r15, [rsp + 0xab8]
mov eax, 8
mov qword [rsp + 0x30], rax
xor r14d, r14d
jmp 0x1400a2e49
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
sub rcx, rax
mov rax, r14
shl rax, 6
mov qword [r8 + rax], rcx
mov qword [r8 + rax + 8], rsi
mov qword [r8 + rax + 0x10], 1
mov qword [r8 + rax + 0x18], 1
mov qword [r8 + rax + 0x20], rdi
mov rcx, qword [rsp + 0x28]
mov qword [r8 + rax + 0x28], rcx
mov qword [r8 + rax + 0x30], r13
mov byte [r8 + rax + 0x38], bpl
mov ecx, dword [rsp + 0x220]
mov edx, dword [rsp + 0x223]
mov dword [r8 + rax + 0x39], ecx
mov qword [rsp + 0x30], r8
mov dword [r8 + rax + 0x3c], edx
inc r14
mov qword [rsp + 0xc8], r14
nop dword [rax + rax]
mov rcx, rbx
lea rdx, [rsp + 0x680]
call sub.kernel32.dll_Module32NextW
cmp eax, 1
jne 0x1400a30e6
xor r8d, r8d
nop dword [rax]
cmp word [rsp + r8*2 + 0x8b0], 0
je 0x1400a2eb0
lea rax, [rsp + r8*2]
add rax, 0x8b0
cmp word [rax + 2], 0
je 0x1400a2e97
cmp word [rax + 4], 0
je 0x1400a2e9c
cmp word [rax + 6], 0
je 0x1400a2ea2
cmp word [rax + 8], 0
je 0x1400a2ea8
add r8, 5
add rax, 0xa
cmp rax, r15
jne 0x1400a2e50
mov r8d, 0x104
jmp 0x1400a2eb0
inc r8
jmp 0x1400a2eb0
add r8, 2
jmp 0x1400a2eb0
add r8, 3
jmp 0x1400a2eb0
add r8, 4
nop dword [rax]
lea rcx, [rsp + 0x450]
lea rdx, [rsp + 0x8b0]
call dbg.from_wide
mov rdi, qword [rsp + 0x450]
mov r13, qword [rsp + 0x460]
lea rcx, [rsp + 0x220]
mov rdx, rdi
mov r8, r13
call dbg.mmap
cmp qword [rsp + 0x220], 0
je 0x1400a2ff0
mov r12, qword [rsp + 0x228]
mov rbp, qword [rsp + 0x230]
mov rsi, qword [rsp + 0x238]
mov r9d, 0x40
mov rcx, rbp
mov rdx, rsi
xor r8d, r8d
call sym.___u8__as_object::read::read_ref::ReadRef_::read_bytes_at::h7c4113927ee14fea
test rax, rax
je 0x1400a2fe0
cmp rdx, 0x40
jb 0x1400a2fe0
movzx ecx, word [rax]
cmp ecx, 0x5a4d
jne 0x1400a2fe0
mov r8d, dword [rax + 0x3c]
mov r9d, 0x88
mov rcx, rbp
mov rdx, rsi
mov qword [rsp + 0x28], r8
call sym.___u8__as_object::read::read_ref::ReadRef_::read_bytes_at::h7c4113927ee14fea
test rax, rax
je 0x1400a2fe0
cmp rdx, 0x88
jb 0x1400a2fe0
cmp dword [rax], 0x4550
jne 0x1400a2fe0
movzx ecx, word [rax + 0x18]
cmp ecx, 0x20b
jne 0x1400a2fe0
movzx r9d, word [rax + 0x14]
cmp r9, 0x70
jb 0x1400a2fe0
mov r8, qword [rsp + 0x28]
add r8, 0x88
add r9, 0xffffffffffffff90
mov qword [rsp + 0x28], rax
mov rcx, rbp
mov rdx, rsi
call sym.___u8__as_object::read::read_ref::ReadRef_::read_bytes_at::h7c4113927ee14fea
mov rcx, qword [rsp + 0x28]
test rax, rax
je 0x1400a2fe0
mov r8, rdx
mov r9d, dword [rcx + 0x84]
lea rcx, [rsp + 0x220]
mov rdx, rax
call sym.object::read::pe::data_directory::DataDirectories::parse::h76c846defbfbb4db
mov rax, qword [rsp + 0x28]
cmp qword [rsp + 0x220], 0
je 0x1400a3014
mov rcx, rbp
call sub.kernel32.dll_UnmapViewOfFile
mov rcx, r12
call sub.kernel32.dll_CloseHandle
mov rdx, qword [rsp + 0x458]
test rdx, rdx
je 0x1400a2e30
mov r8d, 1
mov rcx, rdi
call sym.__rust_dealloc
jmp 0x1400a2e30
mov rsi, qword [rax + 0x30]
mov rax, qword [rsp + 0x698]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x458]
mov qword [rsp + 0x28], rax
mov rax, qword [str.1p2_]
movzx eax, byte [rax]
mov ecx, 0x10
mov edx, 8
call sym.__rust_alloc
test rax, rax
je 0x1400a479a
mov ecx, dword [rsp + 0x6a0]
mov qword [rsp + 0x50], rsi
mov qword [rax], rsi
mov rsi, rax
mov qword [rax + 8], rcx
movzx edx, byte [rsp + 0x468]
lea rcx, [rsp + 0x469]
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0x220], eax
mov dword [rsp + 0x223], ecx
mov rcx, rbp
mov ebp, edx
call sub.kernel32.dll_UnmapViewOfFile
mov rcx, r12
call sub.kernel32.dll_CloseHandle
cmp bpl, 2
je 0x1400a2e30
cmp r14, qword [rsp + 0xc0]
mov r8, qword [rsp + 0x30]
jne 0x1400a2db8
lea rcx, [rsp + 0xb8]
mov rdx, r14
call dbg.reserve_for_push<gimli::read::line::FileEntry<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>, usize>, alloc::alloc::Global>
mov rax, qword [rsp + 0x50]
mov r8, qword [rsp + 0xb8]
mov r14, qword [rsp + 0xc8]
jmp 0x1400a2dbd
mov rcx, rbx
call sub.kernel32.dll_CloseHandle
mov rbp, qword [rsp + 0x38]
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x690], rax
movups xmm0, xmmword [rsp + 0xb8]
movaps xmmword [rsp + 0x680], xmm0
mov rsi, qword [0x1403271b8]
test rsi, rsi
je 0x1400a31fb
mov rdi, qword [0x1403271c8]
test rdi, rdi
je 0x1400a317e
lea rbx, [rsi + 0x28]
jmp 0x1400a3149
add rbx, 0x40
dec rdi
je 0x1400a317e
mov rdx, qword [rbx]
test rdx, rdx
je 0x1400a3160
mov rcx, qword [rbx - 8]
mov r8d, 1
call sym.__rust_dealloc
mov rdx, qword [rbx - 0x18]
test rdx, rdx
je 0x1400a3140
mov rcx, qword [rbx - 0x20]
shl rdx, 4
mov r8d, 8
call sym.__rust_dealloc
jmp 0x1400a3140
mov rdx, qword [0x1403271c0]
test rdx, rdx
je 0x1400a319c
shl rdx, 6
mov r8d, 8
mov rcx, rsi
call sym.__rust_dealloc
mov rsi, qword [0x1403271d0]
mov rbx, qword [0x1403271e0]
lea rcx, [rsi + 8]
inc rbx
nop word cs:[rax + rax]
cmp rbx, 1
je 0x1400a31da
lea rdi, [rcx + 0x230]
dec rbx
call dbg.drop_in_place<std::backtrace_rs::symbolize::gimli::Mapping>
mov rcx, rdi
jmp 0x1400a31c0
mov rax, qword [0x1403271d8]
test rax, rax
je 0x1400a31fb
imul rdx, rax, 0x230
mov r8d, 8
mov rcx, rsi
call sym.__rust_dealloc
mov rax, qword [rsp + 0x690]
mov qword [0x1403271c8], rax
movaps xmm0, xmmword [rsp + 0x680]
movups xmmword [0x1403271b8], xmm0
mov rax, qword [rsp + 0x40]
mov qword [0x1403271d0], rax
mov qword [0x1403271d8], 4
mov qword [0x1403271e0], 0
mov rax, qword [0x1403271b8]
mov rdx, qword [0x1403271c8]
test rdx, rdx
je 0x1400a425a
mov rcx, rdx
shl rcx, 6
add rcx, rax
xor esi, esi
mov r8, rax
mov rbx, qword [r8]
mov r10, qword [r8 + 8]
mov r9, qword [r8 + 0x18]
add r8, 0x40
shl r9, 4
nop word cs:[rax + rax]
test r9, r9
je 0x1400a32b0
mov r11, r10
add r10, 0x10
mov rdi, qword [r11]
add rdi, rbx
add r9, 0xfffffffffffffff0
cmp rdi, rbp
ja 0x1400a3280
add rdi, qword [r11 + 8]
cmp rdi, rbp
jbe 0x1400a3280
jmp 0x1400a32bd
inc rsi
cmp r8, rcx
jne 0x1400a3261
jmp 0x1400a425a
mov r14, qword [0x1403271e0]
test r14, r14
je 0x1400a32f9
mov r12, qword [0x1403271d0]
imul rdi, r14, 0x230
xor ecx, ecx
xor r15d, r15d
nop dword [rax]
cmp qword [r12 + r15], rsi
je 0x1400a34c8
add r15, 0x230
dec rcx
cmp rdi, r15
jne 0x1400a32e0
cmp rdx, rsi
jbe 0x1400a436a
mov rcx, rsi
shl rcx, 6
mov rdx, qword [rax + rcx + 0x20]
mov r8, qword [rax + rcx + 0x30]
lea rcx, [rsp + 0x680]
call dbg.mmap
cmp qword [rsp + 0x680], 0
je 0x1400a425a
mov r14, qword [rsp + 0x688]
mov r15, qword [rsp + 0x690]
mov r12, qword [rsp + 0x698]
mov qword [rsp + 0x140], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0x148], xmm0
mov qword [rsp + 0x158], 8
movups xmmword [rsp + 0x160], xmm0
mov r9d, 0x40
mov rcx, r15
mov rdx, r12
xor r8d, r8d
call sym.___u8__as_object::read::read_ref::ReadRef_::read_bytes_at::h7c4113927ee14fea
test rax, rax
je 0x1400a34a6
cmp rdx, 0x40
jb 0x1400a34a6
movzx ecx, word [rax]
cmp ecx, 0x5a4d
jne 0x1400a34a6
mov edi, dword [rax + 0x3c]
mov r9d, 0x88
mov rcx, r15
mov rdx, r12
mov r8, rdi
call sym.___u8__as_object::read::read_ref::ReadRef_::read_bytes_at::h7c4113927ee14fea
mov r13, rax
test rax, rax
je 0x1400a34a6
cmp rdx, 0x88
jb 0x1400a34a6
cmp dword [r13], 0x4550
jne 0x1400a34a6
movzx eax, word [r13 + 0x18]
cmp eax, 0x20b
jne 0x1400a34a6
movzx r9d, word [r13 + 0x14]
cmp r9, 0x70
jb 0x1400a34a6
add rdi, 0x88
add r9, 0xffffffffffffff90
mov rcx, r15
mov rdx, r12
mov r8, rdi
mov qword [rsp + 0x38], r9
call sym.___u8__as_object::read::read_ref::ReadRef_::read_bytes_at::h7c4113927ee14fea
test rax, rax
je 0x1400a34a6
mov r8, rdx
mov r9d, dword [r13 + 0x84]
lea rcx, [rsp + 0xb8]
mov rdx, rax
call sym.object::read::pe::data_directory::DataDirectories::parse::h76c846defbfbb4db
cmp qword [rsp + 0xb8], 0
mov r8, qword [rsp + 0x38]
jne 0x1400a34a6
add r8, rdi
movzx edi, word [r13 + 6]
lea rax, [rdi*8]
lea r9, [rax + rax*4]
mov rcx, r15
mov rdx, r12
mov qword [rsp + 0x38], r9
call sym.___u8__as_object::read::read_ref::ReadRef_::read_bytes_at::h7c4113927ee14fea
test rax, rax
sete cl
cmp qword [rsp + 0x38], rdx
seta dl
xor r8d, r8d
or dl, cl
mov ecx, 0x1f
cmovne rdi, rcx
mov qword [rsp + 0x38], rdi
cmove r8, rax
mov qword [rsp + 0x40], r8
je 0x1400a42a5
lea rcx, [rsp + 0x140]
call dbg.drop_in_place<std::backtrace_rs::symbolize::gimli::stash::Stash>
mov rcx, r15
call sub.kernel32.dll_UnmapViewOfFile
mov rcx, r14
call sub.kernel32.dll_CloseHandle
jmp 0x1400a425a
test rcx, rcx
je 0x1400a3569
lea rsi, [r12 + r15]
lea rcx, [rsp + 0x220]
mov r8d, 0x230
mov rdx, rsi
call sym.memcpy
lea rdx, [r12 + r15]
add rdx, 0x230
sub rdi, r15
add rdi, 0xfffffffffffffdd0
mov rcx, rsi
mov r8, rdi
call sub.msvcrt.dll_memmove
lea rsi, [r14 - 1]
mov qword [0x1403271e0], rsi
cmp rsi, qword [0x1403271d8]
jne 0x1400a3535
lea rcx, [0x1403271d0]
mov rdx, rsi
call dbg.do_reserve_and_handle<(usize, std::backtrace_rs::symbolize::gimli::Mapping), alloc::alloc::Global>
mov r12, qword [0x1403271d0]
lea rcx, [r12 + 0x230]
imul r8, rsi, 0x230
mov rdx, r12
call sub.msvcrt.dll_memmove
lea rdx, [rsp + 0x220]
mov r8d, 0x230
mov rcx, r12
call sym.memcpy
mov qword [0x1403271e0], r14
sub rbp, rbx
mov qword [rsp + 0x38], rbp
lea rbx, [rbp + 1]
mov r14, qword [r12 + 0x160]
mov rdx, qword [r12 + 0x168]
xor ecx, ecx
test rdx, rdx
je 0x1400a35e9
mov r8d, 0xff
mov rax, rdx
mov r9, rdx
jmp 0x1400a35a8
mov r9, rax
sub rax, rcx
jbe 0x1400a35e9
shr rax, 1
add rax, rcx
mov r11, rax
shl r11, 5
xor r10d, r10d
cmp qword [r14 + r11], rbx
setne r10b
cmovb r10d, r8d
cmp r10b, 1
je 0x1400a35a0
movzx ecx, r10b
inc rax
cmp ecx, 0xff
jne 0x1400a35e6
mov rcx, rax
mov rax, r9
sub rax, rcx
ja 0x1400a35a8
jmp 0x1400a35e9
mov rcx, rax
cmp rcx, rdx
ja 0x1400a478c
mov eax, 3
test rcx, rcx
mov qword [rsp + 0x80], r12
je 0x1400a378d
mov r8, r12
lea rsi, [r12 + 0x158]
shl rcx, 5
lea r15, [rcx + r14]
add r15, 0xffffffffffffffe0
neg rcx
mov rdx, qword [rsp + 0x38]
jmp 0x1400a363e
add r15, 0xffffffffffffffe0
add rcx, 0x20
je 0x1400a378a
cmp qword [r15 + 0x18], rdx
jbe 0x1400a3778
cmp qword [r15 + 8], rdx
jbe 0x1400a3630
cmp rbx, qword [r15]
jbe 0x1400a3630
mov rcx, qword [r15 + 0x10]
mov rdx, qword [r8 + 0x178]
cmp rcx, rdx
jae 0x1400a4723
imul rdi, rcx, 0x218
add rdi, qword [r8 + 0x170]
lea rcx, [rsp + 0x220]
mov rdx, rdi
mov r8, rsi
call dbg.dwarf_and_unit_dwo<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>>
mov qword [rsp + 0xb8], rdi
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xc0], rsi
cmp qword [rsp + 0x250], 0
je 0x1400a3a10
lea rax, [rsp + 0x250]
movups xmm0, xmmword [rsp + 0x220]
movups xmm1, xmmword [rsp + 0x230]
movups xmm2, xmmword [rsp + 0x240]
movaps xmmword [rsp + 0x6a0], xmm2
movaps xmmword [rsp + 0x690], xmm1
movaps xmmword [rsp + 0x680], xmm0
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x460], rcx
movups xmm0, xmmword [rax]
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x468], rax
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x470], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x478], rax
movaps xmmword [rsp + 0x6b0], xmm0
mov rax, qword [rsp + 0x460]
mov qword [rsp + 0x6c0], rax
mov rax, qword [rsp + 0x468]
mov qword [rsp + 0x6c8], rax
mov rax, qword [rsp + 0x470]
mov qword [rsp + 0x6d0], rax
mov rax, qword [rsp + 0x478]
mov qword [rsp + 0x6d8], rax
jmp 0x1400a3a39
mov r12, r8
cmp eax, 5
mov rdi, qword [rsp + 0x38]
jne 0x1400a379b
jmp 0x1400a4205
mov r12, r8
cmp eax, 5
mov rdi, qword [rsp + 0x38]
je 0x1400a4205
mov rcx, qword [rsp + 0x258]
mov qword [rsp + 0x70], rcx
mov rcx, qword [rsp + 0x260]
mov qword [rsp + 0x60], rcx
lea rcx, [rcx*8]
mov qword [rsp + 0x68], rcx
lea ecx, [rax - 3]
cmp ecx, 2
mov edx, 2
cmovb edx, ecx
test edx, edx
je 0x1400a3905
mov r8d, dword [rsp + 0x224]
mov esi, dword [rsp + 0x228]
mov r10d, dword [rsp + 0x22c]
mov r9, qword [rsp + 0x230]
mov qword [rsp + 0x28], r9
mov r9, qword [rsp + 0x238]
mov qword [rsp + 0x30], r9
mov r14, qword [rsp + 0x240]
mov r9, qword [rsp + 0x248]
mov qword [rsp + 0x118], r9
mov r9, qword [rsp + 0x250]
mov r11, qword [rsp + 0x268]
mov qword [rsp + 0x98], r11
mov r11, qword [rsp + 0x270]
mov qword [rsp + 0x50], r11
lea r11, [r14 + 0x60]
mov qword [rsp + 0x90], r11
lea r11, [r14 + 0x1b8]
mov qword [rsp + 0x88], r11
lea r11, [r14 + 0x1c0]
mov qword [rsp + 0x120], r11
mov r11, qword [rsp + 0x80]
add r11, 0x190
mov qword [rsp + 0xa0], r11
cmp edx, 1
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x138], r9
jne 0x1400a390c
mov qword [rsp + 0x78], r8
mov qword [rsp + 0x58], r10
mov rbp, r10
shl rbp, 0x20
or rbp, rsi
mov eax, 2
mov qword [rsp + 0x40], rax
mov esi, 3
cmp ecx, 2
jb 0x1400a38de
cmp qword [rsp + 0x60], 0
je 0x1400a38de
mov r8d, 8
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x68]
call sym.__rust_dealloc
mov r12, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0x38]
call dbg.search_symtab
mov rdi, rax
mov r15, rdx
jmp 0x1400a3e33
xor esi, esi
jmp 0x1400a41d6
mov eax, eax
mov rbp, r8
shl rbp, 0x20
or rbp, rax
mov rbx, r10
shl rbx, 0x20
or rbx, rsi
mov rax, qword [rsp + 0x50]
cmp rax, qword [rsp + 0x98]
je 0x1400a39ed
mov r14, qword [rax - 8]
mov eax, dword [r14 + 0x28]
mov ecx, dword [r14 + 0x2c]
xor esi, esi
mov qword [rsp + 0x78], rax
test eax, eax
setne dil
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x58], rcx
test ecx, ecx
setne r15b
cmp qword [r14], 0
je 0x1400a3df6
mov rax, qword [rsp + 0x90]
cmp dword [rax], 0x2f
je 0x1400a3df6
mov r13, qword [r14 + 8]
mov rax, qword [rsp + 0x48]
cmp qword [rax + 0x1b0], 0
jne 0x1400a3da0
lea rcx, [rsp + 0x680]
mov rdx, qword [rsp + 0x90]
call sym.__gimli::read::line::LineProgramHeader_R_Offset__as_core::clone::Clone_::clone::hffc3bf116eb3035a
mov r12, qword [rsp + 0x48]
lea rcx, [rsp + 0x220]
lea r8, [rsp + 0x680]
mov rdx, r12
mov r9, qword [rsp + 0x118]
call dbg.parse<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>>
cmp qword [r12 + 0x1b0], 0
je 0x1400a3d75
lea rcx, [rsp + 0x220]
call dbg.drop_in_place<core::result::Result<addr2line::Lines, gimli::read::Error>>
jmp 0x1400a3da0
mov rdi, qword [r9 + 0x28]
test rdi, rdi
je 0x1400a3d18
mov r15, qword [r9 + 0x30]
mov rax, qword [rsp + 0x48]
movzx r13d, word [rax + 0x210]
jmp 0x1400a3d1d
lea rcx, [rsp + 0x680]
lea rdx, [rsp + 0xb8]
lea r8, [rsp + 0x220]
call dbg.{closure#0}<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>>
mov qword [rsp + 0x6b0], 0
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x450], rax
mov qword [rsp + 0x458], rdi
mov qword [rsp + 0x460], rsi
mov qword [rsp + 0x468], rsi
mov qword [rsp + 0x470], rax
mov qword [rsp + 0x478], rbx
mov qword [rsp + 0x480], r14
mov qword [rsp + 0x488], r15
mov qword [rsp + 0x490], rbx
mov qword [rsp + 0x498], rax
mov byte [rsp + 0x4a0], 0
lea rcx, [rsp + 0x220]
lea rdx, [rsp + 0x680]
lea r8, [rsp + 0x450]
call sym.addr2line::LoopingLookup_T_L_F_::new_lookup::hdd3e97a2a59481e1
cmp byte [rsp + 0x2d0], 2
je 0x1400a3cf6
lea rbx, [rsp + 0x181]
lea rdi, [rsp + 0x698]
lea r14, [rsp + 0x480]
lea r15, [rsp + 0x450]
lea r12, [rsp + 0x680]
lea r13, [rsp + 0xb8]
lea rbp, [rsp + 0x170]
lea rsi, [rsp + 0x220]
nop word cs:[rax + rax]
movups xmm0, xmmword [rsp + 0x220]
movups xmm1, xmmword [rsp + 0x230]
movups xmm2, xmmword [rsp + 0x240]
movaps xmmword [rsp + 0x6a0], xmm2
movaps xmmword [rsp + 0x690], xmm1
movaps xmmword [rsp + 0x680], xmm0
mov r8d, 0x88
mov rcx, r15
lea rdx, [rsp + 0x250]
call sym.memcpy
mov rax, qword [rsp + 0x680]
lock dec qword [rax]
jne 0x1400a3b6c
mov rcx, r12
call dbg.drop_slow<gimli::read::dwarf::Dwarf<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>>, alloc::alloc::Global>
movups xmm0, xmmword [rsp + 0x450]
movups xmm1, xmmword [rsp + 0x460]
movups xmm2, xmmword [rsp + 0x470]
movaps xmmword [rsp + 0x680], xmm0
movaps xmmword [rsp + 0x690], xmm1
movaps xmmword [rsp + 0x6a0], xmm2
mov rax, qword [rsp + 0x680]
mov rcx, qword [rsp + 0x690]
movzx edx, byte [rax + 0x200]
cmp edx, 0x4b
je 0x1400a3bd1
cmp edx, 0x4c
jne 0x1400a3bfd
mov byte [rax + 0x200], 0x4b
mov qword [rax + 0x208], 0
jmp 0x1400a3bef
mov r8, qword [rax + 0x208]
test r8, r8
je 0x1400a3bef
mov rcx, qword [r8]
add rcx, 0x10
add r8, 8
mov dl, 2
mov rax, r8
jmp 0x1400a3bf8
mov rcx, qword [rcx]
add rcx, 0x10
xor edx, edx
xor r8d, r8d
jmp 0x1400a3c2d
mov rcx, qword [rax + 0x200]
movzx edx, byte [rax + 0x208]
mov r8d, dword [rax + 0x20c]
mov dword [rsp + 0xbb], r8d
mov eax, dword [rax + 0x209]
mov dword [rsp + 0xb8], eax
mov r8d, 1
mov r9d, dword [rsp + 0xb8]
mov r10d, dword [rsp + 0xbb]
mov dword [rbx + 3], r10d
mov dword [rbx], r9d
mov qword [rsp + 0x170], r8
mov qword [rsp + 0x178], rcx
mov byte [rsp + 0x180], dl
mov qword [rsp + 0x188], rax
mov rcx, r13
mov rdx, rdi
mov r8, rbp
call dbg.{closure#0}<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>>
mov qword [rsp + 0xe8], 0
mov rax, qword [r14 + 0x50]
mov qword [rsp + 0x1c0], rax
movups xmm0, xmmword [r14 + 0x40]
movaps xmmword [rsp + 0x1b0], xmm0
movups xmm0, xmmword [r14]
movups xmm1, xmmword [r14 + 0x10]
movups xmm2, xmmword [r14 + 0x20]
movups xmm3, xmmword [r14 + 0x30]
movaps xmmword [rsp + 0x1a0], xmm3
movaps xmmword [rsp + 0x190], xmm2
movaps xmmword [rsp + 0x180], xmm1
movaps xmmword [rsp + 0x170], xmm0
mov rcx, r12
mov rdx, r13
mov r8, rbp
call sym.addr2line::LoopingLookup_T_L_F_::new_lookup::hdd3e97a2a59481e1
mov r8d, 0xb8
mov rcx, rsi
mov rdx, r12
call sym.memcpy
cmp byte [rsp + 0x2d0], 2
jne 0x1400a3b10
mov eax, dword [rsp + 0x220]
mov r12, qword [rsp + 0x80]
cmp eax, 5
mov rdi, qword [rsp + 0x38]
jne 0x1400a379b
jmp 0x1400a4205
mov r13w, 2
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x58], r10
mov qword [rsp + 0x78], r8
cmp qword [rsp + 0x60], 0
je 0x1400a3d49
mov r8d, 8
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x68]
call sym.__rust_dealloc
mov esi, 3
mov r14, qword [rsp + 0x30]
mov r12, qword [rsp + 0x28]
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x50], rax
cmp r13w, 2
je 0x1400a38e8
jmp 0x1400a3e33
movups xmm0, xmmword [rsp + 0x220]
movups xmm1, xmmword [rsp + 0x230]
mov rax, qword [rsp + 0x88]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov qword [r12 + 0x1b0], 1
xor ecx, ecx
mov rax, qword [rsp + 0x88]
cmp qword [rax], 0
cmove rax, qword [rsp + 0x120]
mov edx, 1
cmove rcx, rdx
test rcx, rcx
je 0x1400a3dd2
cmp byte [rax], 0x4b
jne 0x1400a428d
mov rax, qword [rax + 8]
test rax, rax
je 0x1400a3df6
cmp r13, qword [rax + 8]
jae 0x1400a3df6
mov rcx, qword [rax]
lea rdx, [r13*2]
add rdx, r13
mov rax, qword [rcx + rdx*8]
mov rcx, qword [rcx + rdx*8 + 0x10]
jmp 0x1400a3df8
xor eax, eax
add qword [rsp + 0x50], 0xfffffffffffffff8
mov sil, dil
mov rdx, qword [rsp + 0x40]
mov dl, r15b
mov qword [rsp + 0x40], rdx
mov rdi, qword [r14 + 0x18]
test rdi, rdi
je 0x1400a426f
mov r15, qword [r14 + 0x20]
mov r14, qword [rsp + 0x30]
mov r12, qword [rsp + 0x28]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x680], rbp
mov qword [rsp + 0x688], rbx
mov qword [rsp + 0x690], r12
mov qword [rsp + 0x698], r14
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x6a0], rax
mov qword [rsp + 0x6a8], rdi
mov qword [rsp + 0x6b0], r15
mov rax, qword [rsp + 0x128]
mov rax, qword [rax + 0x20]
lea rdx, [rsp + 0x680]
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 0xa8], rax
call rax
jmp 0x1400a3f04
mov r15, qword [r15 + 0x20]
mov r12, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x28]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x680], rbx
mov qword [rsp + 0x688], r14
mov qword [rsp + 0x690], rbp
mov qword [rsp + 0x698], r12
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x6a0], rax
mov qword [rsp + 0x6a8], rdi
mov qword [rsp + 0x6b0], r15
mov rcx, qword [rsp + 0xb0]
lea rdx, [rsp + 0x680]
call qword [rsp + 0xa8]
lea ecx, [rsi - 3]
cmp ecx, 2
mov eax, 2
cmovb eax, ecx
cmp eax, 1
je 0x1400a4020
cmp eax, 2
jne 0x1400a41ce
mov eax, esi
mov rbx, qword [rsp + 0x78]
shl rbx, 0x20
or rbx, rax
mov eax, dword [rsp + 0x40]
mov r14, qword [rsp + 0x58]
shl r14, 0x20
or r14, rax
mov rax, qword [rsp + 0x50]
cmp rax, qword [rsp + 0x98]
je 0x1400a408d
mov r15, qword [rax - 8]
mov eax, dword [r15 + 0x28]
mov ecx, dword [r15 + 0x2c]
xor esi, esi
mov qword [rsp + 0x78], rax
test eax, eax
setne dil
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x58], rcx
test ecx, ecx
setne bpl
cmp qword [r15], 0
je 0x1400a4190
mov rax, qword [rsp + 0x90]
cmp dword [rax], 0x2f
je 0x1400a4190
mov rax, qword [r15 + 8]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x48]
cmp qword [rax + 0x1b0], 0
jne 0x1400a4132
lea r13, [rsp + 0x680]
mov rcx, r13
mov rdx, qword [rsp + 0x90]
call sym.__gimli::read::line::LineProgramHeader_R_Offset__as_core::clone::Clone_::clone::hffc3bf116eb3035a
mov r12, qword [rsp + 0x48]
lea rcx, [rsp + 0x220]
mov rdx, r12
mov r8, r13
mov r9, qword [rsp + 0x118]
call dbg.parse<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>>
cmp qword [r12 + 0x1b0], 0
je 0x1400a4107
lea rcx, [rsp + 0x220]
call dbg.drop_in_place<core::result::Result<addr2line::Lines, gimli::read::Error>>
jmp 0x1400a4132
mov eax, dword [rsp + 0x40]
mov rbx, qword [rsp + 0x58]
shl rbx, 0x20
or rbx, rax
mov eax, 2
mov qword [rsp + 0x40], rax
mov esi, 3
cmp ecx, 2
jb 0x1400a4061
cmp qword [rsp + 0x60], 0
je 0x1400a4061
mov r8d, 8
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x68]
call sym.__rust_dealloc
mov r12, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x30]
mov r14, qword [rsp + 0x28]
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0x38]
call dbg.search_symtab
mov rdi, rax
mov r15, rdx
jmp 0x1400a3eb0
mov rax, qword [rsp + 0x138]
mov rdi, qword [rax + 0x28]
test rdi, rdi
je 0x1400a40f8
mov r15, qword [rax + 0x30]
mov rax, qword [rsp + 0x48]
movzx r13d, word [rax + 0x210]
cmp qword [rsp + 0x60], 0
je 0x1400a40cc
mov r8d, 8
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x68]
call sym.__rust_dealloc
mov esi, 3
mov r12, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x28]
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x50], rax
cmp r13w, 2
jne 0x1400a3eb0
jmp 0x1400a4070
mov r13w, 2
cmp qword [rsp + 0x60], 0
jne 0x1400a40b7
jmp 0x1400a40cc
movups xmm0, xmmword [rsp + 0x220]
movups xmm1, xmmword [rsp + 0x230]
mov rax, qword [rsp + 0x88]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov qword [r12 + 0x1b0], 1
mov rax, qword [rsp + 0x88]
cmp qword [rax], 0
cmove rax, qword [rsp + 0x120]
mov ecx, 0
mov edx, 1
cmove rcx, rdx
test rcx, rcx
je 0x1400a4167
cmp byte [rax], 0x4b
jne 0x1400a4288
mov rax, qword [rax + 8]
test rax, rax
je 0x1400a4190
mov rdx, qword [rsp + 0x130]
cmp rdx, qword [rax + 8]
jae 0x1400a4190
mov rcx, qword [rax]
lea rdx, [rdx + rdx*2]
mov rax, qword [rcx + rdx*8]
mov rcx, qword [rcx + rdx*8 + 0x10]
jmp 0x1400a4192
xor eax, eax
add qword [rsp + 0x50], 0xfffffffffffffff8
mov sil, dil
mov rdx, qword [rsp + 0x40]
mov dl, bpl
mov qword [rsp + 0x40], rdx
mov rdi, qword [r15 + 0x18]
test rdi, rdi
jne 0x1400a3e98
mov r12, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x28]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rcx
jmp 0x1400a4070
mov sil, 1
mov rdi, qword [rsp + 0x38]
cmp ecx, 2
jb 0x1400a41f8
cmp qword [rsp + 0x60], 0
je 0x1400a41f8
mov r8d, 8
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x68]
call sym.__rust_dealloc
test sil, sil
mov r12, qword [rsp + 0x80]
jne 0x1400a425a
add r12, 0x190
mov rcx, r12
mov rdx, rdi
call dbg.search_symtab
test rax, rax
je 0x1400a425a
mov dword [rsp + 0x680], 3
mov qword [rsp + 0x688], rax
mov qword [rsp + 0x690], rdx
mov qword [rsp + 0x698], rdi
lea rdx, [rsp + 0x680]
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x128]
call qword [rax + 0x20]
nop
add rsp, 0xab8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r14, qword [rsp + 0x30]
mov r12, qword [rsp + 0x28]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rcx
jmp 0x1400a38e8
mov sil, 1
jmp 0x1400a428f
xor esi, esi
cmp qword [rsp + 0x60], 0
mov rdi, qword [rsp + 0x38]
jne 0x1400a41e3
jmp 0x1400a41f8
mov edi, dword [r13 + 0xc]
test rdi, rdi
je 0x1400a4473
mov eax, dword [r13 + 0x10]
mov qword [rsp + 0x58], rax
add rax, rax
lea r9, [rax + rax*8]
mov rcx, r15
mov rdx, r12
mov r8, rdi
mov qword [rsp + 0x30], r9
call sym.___u8__as_object::read::read_ref::ReadRef_::read_bytes_at::h7c4113927ee14fea
mov qword [rsp + 0x28], rax
test rax, rax
je 0x1400a34a6
cmp qword [rsp + 0x30], rdx
ja 0x1400a34a6
mov r8, qword [rsp + 0x30]
add r8, rdi
mov r9d, 4
mov rcx, r15
mov rdx, r12
mov qword [rsp + 0x30], r8
call sym.___u8__as_object::read::read_ref::ReadRef_::read_bytes_at::h7c4113927ee14fea
test rax, rax
je 0x1400a34a6
cmp rdx, 4
jb 0x1400a34a6
mov eax, dword [rax]
add rax, qword [rsp + 0x30]
mov qword [rsp + 0x48], rax
mov rax, qword [r13 + 0x30]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xb8], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0xc0], xmm0
cmp qword [rsp + 0x58], 0
je 0x1400a4731
mov eax, 8
xor edx, edx
xor edi, edi
mov r13, qword [rsp + 0x38]
jmp 0x1400a43c9
lea r8, [0x1402f6b38]
mov rcx, rsi
call dbg.panic_bounds_check
ud2
mov r10, qword [rsp + 0x50]
add r13, qword [rsp + 0xa0]
mov r8, qword [rsp + 0x78]
add r8, r13
mov rcx, rdx
shl rcx, 4
mov qword [rax + rcx], r8
mov r8, qword [rsp + 0xa8]
mov qword [rax + rcx + 8], r8
inc rdx
mov qword [rsp + 0xc8], rdx
mov r13, qword [rsp + 0x38]
add rdi, r10
inc rdi
cmp rdi, qword [rsp + 0x58]
jae 0x1400a44b5
lea rcx, [rdi + rdi*8]
mov r9, qword [rsp + 0x28]
movzx r10d, byte [r9 + rcx*2 + 0x11]
movzx r8d, word [r9 + rcx*2 + 0xc]
test r8, r8
je 0x1400a43b8
movzx r9d, word [r9 + rcx*2 + 0xe]
and r9d, 0x30
cmp r9w, 0x20
jne 0x1400a43b8
mov qword [rsp + 0x50], r10
dec r8
lea r9, [r8 + r8*4]
mov r10, qword [rsp + 0x40]
lea r9, [r10 + r9*8]
cmp r8, r13
mov r8d, 0x1d
cmovae r9, r8
jae 0x1400a474e
test r9, r9
je 0x1400a474e
mov r8, qword [rsp + 0x28]
lea rcx, [r8 + rcx*2]
mov qword [rsp + 0xa8], rcx
mov r13d, dword [rcx + 8]
mov ecx, dword [r9 + 0xc]
mov qword [rsp + 0x78], rcx
cmp rdx, qword [rsp + 0xc0]
jne 0x1400a437b
lea rcx, [rsp + 0xb8]
call dbg.reserve_for_push<(usize, &object::pe::ImageSymbol), alloc::alloc::Global>
mov rax, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0xc8]
jmp 0x1400a437b
mov qword [rsp + 0xb8], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0xc0], xmm0
mov ecx, 8
xor eax, eax
mov qword [rsp + 0x48], rax
xor eax, eax
mov qword [rsp + 0x30], rax
xor edi, edi
xor edx, edx
mov r13, qword [rsp + 0x38]
test rdx, rdx
je 0x1400a44c5
bsr rax, rdx
xor rax, 0x3f
jmp 0x1400a44ca
mov rcx, qword [rsp + 0xb8]
mov rdi, r15
test rdx, rdx
jne 0x1400a44ab
mov eax, 0x40
mov r9d, 0x40
sub r9d, eax
xor r8d, r8d
call dbg.recurse<(usize, &object::pe::ImageSymbol), core::slice::{impl#0}::sort_unstable_by_key::{closure_env#0}<(usize, &object::pe::ImageSymbol), usize, std::backtrace_rs::symbolize::gimli::coff::{impl#1}::parse::{closure_env#0}>>
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x1f8], rax
movups xmm0, xmmword [rsp + 0xb8]
movups xmmword [rsp + 0x1e8], xmm0
mov qword [rsp + 0x1c8], r15
mov qword [rsp + 0x1d0], r12
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x1d8], rax
mov qword [rsp + 0x1e0], r13
mov qword [rsp + 0x200], rdi
mov qword [rsp + 0x208], r12
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x210], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x218], rax
mov qword [rsp + 0x170], 0
mov qword [rsp + 0xb8], 0
lea rcx, [rsp + 0x680]
lea rdx, [rsp + 0x1c8]
lea r8, [rsp + 0x170]
lea r9, [rsp + 0xb8]
call sym.std::backtrace_rs::symbolize::gimli::Context::new::hf8f4b494ab55bfbe
movzx edi, byte [rsp + 0x680]
cmp dil, 0x17
je 0x1400a34a6
lea rdx, [rsp + 0x681]
lea rcx, [rsp + 0x451]
mov r8d, 0x1df
call sym.memcpy
movups xmm0, xmmword [rsp + 0x140]
movups xmm1, xmmword [rsp + 0x150]
movups xmm2, xmmword [rsp + 0x160]
movups xmmword [rsp + 0x648], xmm0
movups xmmword [rsp + 0x658], xmm1
movups xmmword [rsp + 0x668], xmm2
mov byte [rsp + 0x450], dil
mov qword [rsp + 0x630], r14
mov qword [rsp + 0x638], r15
mov qword [rsp + 0x640], r12
mov r15, qword [0x1403271e0]
cmp r15, 4
jne 0x1400a4661
mov qword [0x1403271e0], 3
mov rdi, qword [0x1403271d8]
mov edx, 0x690
add rdx, qword [0x1403271d0]
lea rcx, [rsp + 0x680]
mov r8d, 0x230
call sym.memcpy
cmp byte [rsp + 0x688], 0x17
je 0x1400a4659
lea rcx, [rsp + 0x688]
call dbg.drop_in_place<std::backtrace_rs::symbolize::gimli::Mapping>
mov r15d, 3
jmp 0x1400a4668
mov rdi, qword [0x1403271d8]
lea r14, [rsp + 0x688]
lea rdx, [rsp + 0x450]
mov r8d, 0x228
mov rcx, r14
call sym.memcpy
mov qword [rsp + 0x680], rsi
cmp r15, rdi
jne 0x1400a46a2
lea rcx, [0x1403271d0]
mov rdx, rdi
call dbg.do_reserve_and_handle<(usize, std::backtrace_rs::symbolize::gimli::Mapping), alloc::alloc::Global>
mov r12, qword [0x1403271d0]
test r15, r15
je 0x1400a46fd
lea rcx, [r12 + 0x230]
imul r8, r15, 0x230
mov rdx, r12
call sub.msvcrt.dll_memmove
lea rdx, [rsp + 0x680]
mov r8d, 0x230
mov rcx, r12
call sym.memcpy
inc r15
mov qword [0x1403271e0], r15
jne 0x1400a3569
lea r8, [0x1402f6b50]
xor ecx, ecx
xor edx, edx
call dbg.panic_bounds_check
ud2
lea rdx, [rsp + 0x680]
mov r8d, 0x230
mov rcx, r12
call sym.memcpy
mov qword [0x1403271e0], 1
jmp 0x1400a3569
lea r8, str._rust_deps_addr2line_0.21.0_srclib.rs
call dbg.panic_bounds_check
ud2
xor edx, edx
mov ecx, 8
mov rdi, r15
mov r13, qword [rsp + 0x38]
test rdx, rdx
jne 0x1400a44ab
jmp 0x1400a44c5
mov rdx, qword [rsp + 0xc0]
test rdx, rdx
je 0x1400a34a6
mov rcx, qword [rsp + 0xb8]
shl rdx, 4
mov r8d, 8
call sym.__rust_dealloc
jmp 0x1400a34a6
mov ecx, 8
mov edx, 0x8c0
call dbg.handle_alloc_error
ud2
lea r8, str._rust_deps_addr2line_0.21.0_srclib.rs
call dbg.slice_end_index_len_fail
ud2
mov ecx, 8
mov edx, 0x10
call dbg.handle_alloc_error
ud2