Function at 0x28cb2aba0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x148
lea rdx, str.markLive
lea rax, [rsp + 0x110]
mov rcx, rax
mov qword [rsp + 0x28], rax
call fcn.28cb50f70
lea rax, [rsp + 0x70]
movaps xmm0, xmmword [rsp + 0x110]
mov rcx, rax
mov qword [rsp + 0x30], rax
movaps xmmword [rsp + 0x70], xmm0
call fcn.28cb3dd50
mov rdi, qword [sym.liblldELF.dll_lld::elf::config]
cmp byte [rdi + 0x425], 0
jne 0x28cb2acf6
mov rax, qword [sym.liblldELF.dll_lld::elf::symtab]
mov rdx, qword [rax + 0xc8]
mov eax, dword [rax + 0xd0]
lea r8, [rdx + rax*8]
cmp r8, rdx
je 0x28cb2acde
mov rcx, qword [rdx]
call fcn.28cb4a1e0
test rax, rax
je 0x28cb2ac4b
test byte [rax + 0x18], 2
je 0x28cb2ac4b
mov cl, byte [rax + 0x14]
and ecx, 0xfffffff0
cmp cl, 0x20
je 0x28cb2ac4b
mov rax, qword [rax]
mov byte [rax + 0x120], 1
add rdx, 8
jmp 0x28cb2ac1a
mov r15, qword [sym.liblldELF.dll_lld::elf::symtab]
mov dword [rsp + 0x3c], 1
lea rax, [r15 + 0x30]
mov qword [rsp + 0x58], rax
mov rdx, qword [sym.liblldELF.dll_lld::elf::partitions]
movabs r8, 0xaaaaaaaaaaaaaaab
mov rax, qword [rdx + 8]
sub rax, qword [rdx]
mov rcx, rax
mov edx, dword [rsp + 0x3c]
sar rcx, 6
imul rcx, r8
cmp rcx, rdx
jae 0x28cb2ad24
cmp rax, 0xc0
jne 0x28cb2b327
cmp byte [rdi + 0x442], 0
je 0x28cb2acde
mov rax, qword [sym.liblldELF.dll_lld::elf::ctx]
lea rdi, [rsp + 0xc0]
lea r13, str.removing_unused_section
mov rbx, qword [rax + 0xd8]
mov eax, dword [rax + 0xe0]
lea r12, [rbx + rax*8]
cmp r12, rbx
jne 0x28cb2b567
add rsp, 0x148
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp fcn.28cb3dfd0
mov rdx, qword [sym.liblldELF.dll_lld::elf::ctx]
mov rax, qword [rdx + 0xd8]
mov edx, dword [rdx + 0xe0]
lea rdx, [rax + rdx*8]
cmp rdx, rax
je 0x28cb2ac51
mov rcx, qword [rax]
add rax, 8
mov byte [rcx + 1], 0
jmp 0x28cb2ad0e
mov edx, dword [rsp + 0x3c]
mov rcx, qword [rsp + 0x28]
call fcn.28cab96b0
mov rbx, qword [r15 + 0xc8]
mov eax, dword [r15 + 0xd0]
lea rbp, [rbx + rax*8]
cmp rbp, rbx
je 0x28cb2ad7a
mov rsi, qword [rbx]
mov rcx, rsi
call method.lld::elf::Symbol.includeInDynsym___const
test al, al
jne 0x28cb2ad5e
add rbx, 8
jmp 0x28cb2ad44
movzx eax, byte [rsi + 0x17]
cmp eax, dword [rsp + 0x110]
jne 0x28cb2ad58
mov rcx, qword [rsp + 0x28]
mov rdx, rsi
call fcn.28cab9280
jmp 0x28cb2ad58
cmp dword [rsp + 0x110], 1
je 0x28cb2ada4
lea rcx, [rsp + 0x110]
call fcn.28cab9550
mov rcx, qword [rsp + 0x28]
call fcn.28caba000
inc dword [rsp + 0x3c]
jmp 0x28cb2ac69
movups xmm1, xmmword [rdi + 0xc8]
mov rdx, qword [rsp + 0x30]
mov rcx, r15
movaps xmmword [rsp + 0x70], xmm1
call method.lld::elf::SymbolTable.find_llvm::StringRef_
mov rcx, qword [rsp + 0x28]
mov rdx, rax
call fcn.28cab9280
movups xmm2, xmmword [rdi + 0xf8]
mov rdx, qword [rsp + 0x30]
mov rcx, r15
movaps xmmword [rsp + 0x70], xmm2
call method.lld::elf::SymbolTable.find_llvm::StringRef_
mov rcx, qword [rsp + 0x28]
mov rdx, rax
call fcn.28cab9280
movups xmm3, xmmword [rdi + 0xe8]
mov rdx, qword [rsp + 0x30]
mov rcx, r15
movaps xmmword [rsp + 0x70], xmm3
call method.lld::elf::SymbolTable.find_llvm::StringRef_
mov rcx, qword [rsp + 0x28]
mov rdx, rax
call fcn.28cab9280
mov esi, dword [rdi + 0x380]
mov rbx, qword [rdi + 0x378]
shl rsi, 4
add rsi, rbx
cmp rsi, rbx
je 0x28cb2ae57
movups xmm4, xmmword [rbx]
mov rdx, qword [rsp + 0x30]
mov rcx, r15
movaps xmmword [rsp + 0x70], xmm4
call method.lld::elf::SymbolTable.find_llvm::StringRef_
mov rcx, qword [rsp + 0x28]
mov rdx, rax
call fcn.28cab9280
add rbx, 0x10
jmp 0x28cb2ae2a
mov rax, qword [sym.liblldELF.dll_lld::elf::script]
mov rax, qword [rax]
mov esi, dword [rax + 0xb8]
mov rbx, qword [rax + 0xb0]
shl rsi, 4
add rsi, rbx
cmp rsi, rbx
je 0x28cb2aea2
movups xmm5, xmmword [rbx]
mov rdx, qword [rsp + 0x30]
mov rcx, r15
movaps xmmword [rsp + 0x70], xmm5
call method.lld::elf::SymbolTable.find_llvm::StringRef_
mov rcx, qword [rsp + 0x28]
mov rdx, rax
call fcn.28cab9280
add rbx, 0x10
jmp 0x28cb2ae75
mov esi, dword [r15 + 0x58]
mov rbx, qword [r15 + 0x50]
lea rbp, [rsp + 0xe8]
shl rsi, 5
add rsi, rbx
cmp rsi, rbx
je 0x28cb2af10
movups xmm0, xmmword [rbx]
mov rcx, qword [rsp + 0x58]
mov rdx, rbp
movups xmmword [rsp + 0xe8], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0xf8], xmm1
call method.llvm::MapVector_llvm::StringRef__lld::elf::ArmCmseEntryFunction__llvm::SmallDenseMap_llvm::StringRef__unsigned_int__1u__llvm::DenseMapInfo_llvm::StringRef__void___llvm::detail::DenseMapPair_llvm::StringRef__unsigned_int_____llvm::SmallVector_std::p
mov rdx, qword [rax + 8]
mov rcx, qword [rsp + 0x28]
call fcn.28cab9280
mov rcx, qword [rsp + 0x58]
mov rdx, rbp
call method.llvm::MapVector_llvm::StringRef__lld::elf::ArmCmseEntryFunction__llvm::SmallDenseMap_llvm::StringRef__unsigned_int__1u__llvm::DenseMapInfo_llvm::StringRef__void___llvm::detail::DenseMapPair_llvm::StringRef__unsigned_int_____llvm::SmallVector_std::p
mov rdx, qword [rax]
mov rcx, qword [rsp + 0x28]
call fcn.28cab9280
add rbx, 0x20
jmp 0x28cb2aeb9
mov rdx, qword [sym.liblldELF.dll_lld::elf::ctx]
mov rax, qword [rdx + 0xe8]
mov edx, dword [rdx + 0xf0]
mov qword [rsp + 0x40], rax
lea rbx, [rax + rdx*8]
lea rax, [rsp + 0x110]
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x50], rax
mov rbx, qword [rsp + 0x40]
cmp qword [rsp + 0x60], rbx
je 0x28cb2b121
mov rax, qword [rsp + 0x40]
lea rcx, [rsp + 0xe8]
mov rbx, qword [rax]
mov rdx, rbx
call method.lld::elf::RelsOrRelas_llvm::object.ELFType__llvm::endianness_0__false____lld::elf::InputSectionBase::relsOrRelas_llvm::object::ELFType__llvm::endianness_0__false______const
mov r14, qword [rsp + 0xf0]
test r14, r14
je 0x28cb2b03f
mov rax, qword [rsp + 0xe8]
mov ebp, dword [rbx + 0x90]
mov rsi, qword [rbx + 0x88]
mov qword [rsp + 0x48], rax
shl rbp, 5
add rbp, rsi
cmp rbp, rsi
je 0x28cb2afc7
mov eax, dword [rsi + 0x1c]
cmp eax, 0xffffffff
jne 0x28cb2afac
add rsi, 0x20
jmp 0x28cb2af99
mov rcx, qword [rsp + 0x48]
xor r9d, r9d
mov rdx, rbx
lea r8, [rcx + rax*8]
mov rcx, qword [rsp + 0x28]
call fcn.28cab92c0
jmp 0x28cb2afa6
mov eax, dword [rbx + 0xa0]
mov rsi, qword [rbx + 0x98]
shl rax, 5
add rax, rsi
mov qword [rsp + 0x68], rax
cmp qword [rsp + 0x68], rsi
je 0x28cb2b116
mov ebp, dword [rsi + 0x1c]
mov eax, 0xffffffff
cmp rbp, rax
je 0x28cb2b039
mov rax, qword [rsp + 0x48]
mov r13d, dword [rsi + 0x18]
add r13, qword [rsi]
lea r12, [rax + rbp*8]
cmp rbp, r14
jae 0x28cb2b039
mov eax, dword [r12]
bswap eax
mov eax, eax
cmp rax, r13
jae 0x28cb2b039
mov rcx, qword [rsp + 0x50]
mov r9d, 1
mov r8, r12
mov rdx, rbx
call fcn.28cab92c0
inc rbp
add r12, 8
jmp 0x28cb2b008
add rsi, 0x20
jmp 0x28cb2afe0
mov r13, qword [rsp + 0x100]
test r13, r13
je 0x28cb2b116
mov ebp, dword [rbx + 0x90]
mov rsi, qword [rbx + 0x88]
mov r14, qword [rsp + 0xf8]
shl rbp, 5
add rbp, rsi
cmp rbp, rsi
je 0x28cb2b09a
mov eax, dword [rsi + 0x1c]
cmp eax, 0xffffffff
jne 0x28cb2b07f
add rsi, 0x20
jmp 0x28cb2b06c
imul rax, rax, 0xc
mov rdx, qword [rbx + 0x30]
mov rcx, qword [rsp + 0x28]
xor r9d, r9d
lea r8, [r14 + rax]
call fcn.28cab9420
jmp 0x28cb2b079
mov eax, dword [rbx + 0xa0]
mov rsi, qword [rbx + 0x98]
shl rax, 5
add rax, rsi
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x48], rsi
je 0x28cb2b116
mov r12d, dword [rsi + 0x1c]
mov eax, 0xffffffff
cmp r12, rax
je 0x28cb2b110
imul rbp, r12, 0xc
mov eax, dword [rsi + 0x18]
add rax, qword [rsi]
mov qword [rsp + 0x68], rax
add rbp, r14
cmp r12, r13
jae 0x28cb2b110
mov eax, dword [rbp]
mov rcx, qword [rsp + 0x68]
bswap eax
mov eax, eax
cmp rax, rcx
jae 0x28cb2b110
mov rdx, qword [rbx + 0x30]
mov rcx, qword [rsp + 0x50]
mov r9d, 1
mov r8, rbp
call fcn.28cab9420
inc r12
add rbp, 0xc
jmp 0x28cb2b0da
add rsi, 0x20
jmp 0x28cb2b0b3
add qword [rsp + 0x40], 8
jmp 0x28cb2af3f
mov rax, qword [sym.liblldELF.dll_lld::elf::ctx]
lea rbp, [rsp + 0x70]
mov rsi, qword [rax + 0xd8]
mov eax, dword [rax + 0xe0]
lea r14, [rsi + rax*8]
cmp r14, rsi
je 0x28cb2ad84
mov rbx, qword [rsi]
mov rax, qword [rbx + 0x18]
bt eax, 0x15
jb 0x28cb2b1f9
test al, 0x80
jne 0x28cb2b31e
test al, 2
je 0x28cb2b176
mov rcx, rbx
call fcn.28ca7e260
test al, al
jne 0x28cb2b1f9
jmp 0x28cb2b1b8
mov eax, dword [rbx + 4]
cmp eax, 9
je 0x28cb2b164
cmp eax, 4
je 0x28cb2b164
cmp qword [rbx + 0x60], 0
jne 0x28cb2b164
mov byte [rbx + 1], 1
lea r13, [rbx + 0x68]
mov rcx, r13
call method.llvm::TinyPtrVector_lld::elf::InputSection_.begin__
mov rcx, r13
mov r12, rax
call method.llvm::TinyPtrVector_lld::elf::InputSection_.end__
cmp rax, r12
je 0x28cb2b164
mov rdx, qword [r12]
add r12, 8
mov byte [rdx + 1], 1
jmp 0x28cb2b1a5
mov rax, qword [sym.liblldELF.dll_lld::elf::script]
mov rdx, rbx
mov rcx, qword [rax]
call method.lld::elf::LinkerScript.shouldKeep_lld::elf::InputSectionBase_
test al, al
jne 0x28cb2b1f9
mov rax, qword [sym.liblldELF.dll_lld::elf::config]
cmp byte [rax + 0x4b7], 0
jne 0x28cb2b20e
movups xmm2, xmmword [rbx + 8]
mov rcx, rbp
movaps xmmword [rsp + 0x70], xmm2
call fcn.28ca71678
test al, al
je 0x28cb2b31e
jmp 0x28cb2b244
mov rcx, qword [rsp + 0x28]
xor r8d, r8d
mov rdx, rbx
call fcn.28cab9640
jmp 0x28cb2b31e
lea rcx, [rsp + 0xe8]
lea rdx, str.__libc_
call fcn.28cb50f70
movups xmm3, xmmword [rsp + 0xe8]
lea rcx, [rbx + 8]
mov rdx, rbp
movaps xmmword [rsp + 0x70], xmm3
call method.llvm::StringRef.starts_with_llvm::StringRef__const
test al, al
jne 0x28cb2b1de
jmp 0x28cb2b31e
call fcn.28ca716b0
mov rdx, qword [rbx + 8]
lea rcx, [0x28cbd0aa4]
lea r13, [rsp + 0xa0]
mov word [rsp + 0x108], 0x503
mov qword [rsp + 0xe8], rcx
lea r8, [rsp + 0xe8]
mov rcx, r13
mov qword [rsp + 0xf8], rdx
mov rdx, qword [rbx + 0x10]
mov qword [rsp + 0x100], rdx
lea rdx, [rax + 0x68]
call fcn.28ca71d08
lea r12, [rsp + 0x128]
mov rdx, r13
mov rcx, r12
call sym.liblldELF.dll_llvm::DenseMapBase_llvm::DenseMap_llvm::StringRef__llvm::SmallVector_lld::elf::InputSectionBase__0u___llvm::DenseMapInfo_llvm::StringRef__void___llvm::detail::DenseMapPair_llvm::StringRef__llvm::SmallVector_lld::elf::InputSectionBase__0u_______llvm::StringRef__llvm::SmallVector_lld::elf::InputSectionBase__0u___llvm::DenseMapInfo_llvm::StringRef__void___llvm::detail::DenseMapPair_llvm::StringRef__llvm::SmallVector_lld::elf::InputSectionBase__0u_____::FindAndConstruct_llvm::StringRef_
lea rcx, [rax + 0x10]
mov rdx, rbx
call fcn.28cb42f90
call fcn.28ca716b0
mov rdx, qword [rbx + 8]
lea rcx, [0x28cbd0aad]
lea r13, [rsp + 0x80]
mov word [rsp + 0xe0], 0x503
mov qword [rsp + 0xc0], rcx
lea r8, [rsp + 0xc0]
mov rcx, r13
mov qword [rsp + 0xd0], rdx
mov rdx, qword [rbx + 0x10]
mov qword [rsp + 0xd8], rdx
lea rdx, [rax + 0x68]
call fcn.28ca71d08
mov rdx, r13
mov rcx, r12
call sym.liblldELF.dll_llvm::DenseMapBase_llvm::DenseMap_llvm::StringRef__llvm::SmallVector_lld::elf::InputSectionBase__0u___llvm::DenseMapInfo_llvm::StringRef__void___llvm::detail::DenseMapPair_llvm::StringRef__llvm::SmallVector_lld::elf::InputSectionBase__0u_______llvm::StringRef__llvm::SmallVector_lld::elf::InputSectionBase__0u___llvm::DenseMapInfo_llvm::StringRef__void___llvm::detail::DenseMapPair_llvm::StringRef__llvm::SmallVector_lld::elf::InputSectionBase__0u_____::FindAndConstruct_llvm::StringRef_
lea rcx, [rax + 0x10]
mov rdx, rbx
call fcn.28cb42f90
add rsi, 8
jmp 0x28cb2b13e
mov rcx, qword [rsp + 0x28]
mov edx, 1
call fcn.28cab96b0
mov rbp, qword [sym.liblldELF.dll_lld::elf::ctx]
mov rbx, qword [rbp + 0x88]
mov eax, dword [rbp + 0x90]
lea r12, [rbx + rax*8]
cmp r12, rbx
je 0x28cb2b3aa
mov rax, qword [rbx]
mov rsi, qword [rax]
mov eax, dword [rax + 8]
lea r13, [rsi + rax*8]
cmp r13, rsi
je 0x28cb2b3a4
mov rcx, qword [rsi]
call fcn.28cb4a320
test rax, rax
jne 0x28cb2b378
add rsi, 8
jmp 0x28cb2b360
mov dl, byte [rax + 0x14]
and edx, 0xf
sub edx, 6
and dl, 0xfb
jne 0x28cb2b372
mov rax, qword [rax + 0x38]
test rax, rax
je 0x28cb2b372
cmp byte [rax + 1], 0
je 0x28cb2b372
mov rdx, rcx
mov rcx, qword [rsp + 0x28]
call fcn.28cab9280
jmp 0x28cb2b372
add rbx, 8
jmp 0x28cb2b34e
mov rsi, qword [rbp + 0xd8]
mov eax, dword [rbp + 0xe0]
lea r15, [0x28cbd0aa4]
lea r12, [rsp + 0xa0]
lea r14, [rsi + rax*8]
cmp r14, rsi
je 0x28cb2b53a
mov rbp, qword [rsi]
cmp byte [rbp + 1], 0
jne 0x28cb2b3e2
add rsi, 8
jmp 0x28cb2b3ca
movups xmm4, xmmword [rbp + 8]
lea rcx, [rsp + 0x70]
movaps xmmword [rsp + 0x70], xmm4
call fcn.28ca71678
mov ebx, eax
test al, al
je 0x28cb2b3dc
mov rax, qword [rbp + 8]
mov rcx, r12
lea rdx, [rsp + 0xe8]
mov word [rsp + 0x108], 0x503
mov qword [rsp + 0xe8], r15
mov qword [rsp + 0xf8], rax
mov rax, qword [rbp + 0x10]
mov qword [rsp + 0x100], rax
call fcn.28ca71a78
mov rax, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0x30]
mov rcx, qword [sym.liblldELF.dll_lld::elf::symtab]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x78], rax
call method.lld::elf::SymbolTable.find_llvm::StringRef_
test rax, rax
jne 0x28cb2b515
jmp 0x28cb2b46d
lea rax, [0x28cbd0aad]
lea r13, [rsp + 0x80]
mov word [rsp + 0xe0], 0x503
mov qword [rsp + 0xc0], rax
mov rax, qword [rbp + 8]
lea rdx, [rsp + 0xc0]
mov rcx, r13
mov qword [rsp + 0xd0], rax
mov rax, qword [rbp + 0x10]
mov qword [rsp + 0xd8], rax
call fcn.28ca71a78
jmp 0x28cb2b4c0
mov rax, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x30]
mov rcx, qword [sym.liblldELF.dll_lld::elf::symtab]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x78], rax
call method.lld::elf::SymbolTable.find_llvm::StringRef_
test rax, rax
mov rcx, r13
setne bl
call fcn.28ca71ec0
jmp 0x28cb2b515
mov rcx, r12
call fcn.28ca71ec0
test bl, bl
je 0x28cb2b3dc
mov rcx, qword [rsp + 0x28]
xor r8d, r8d
mov rdx, rbp
call fcn.28cab9640
jmp 0x28cb2b3dc
lea rbx, [rsp + 0x110]
mov rcx, rbx
call fcn.28cab9550
mov rcx, rbx
call fcn.28caba000
jmp 0x28cb2aca5
mov rbp, qword [rbx]
cmp byte [rbp + 1], 0
jne 0x28cb2b5c8
call fcn.28ca71608
mov rdx, rbp
mov rcx, rdi
mov rsi, rax
call method.lld.toString_abi:cxx11__lld::elf::InputSectionBase_const_
lea rbp, [rsp + 0xe8]
mov r8, rdi
mov rdx, r13
mov rcx, rbp
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____std::operator_char__std::char_traits_char___std.allocator_char____char_const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____
mov rcx, qword [rsp + 0x28]
mov rdx, rsi
mov word [rsp + 0x130], 0x104
mov qword [rsp + 0x110], rbp
call fcn.28ca715d8
mov rcx, rbp
call fcn.28ca71ec0
mov rcx, rdi
call fcn.28ca71ec0
add rbx, 8
jmp 0x28cb2acd5