Function at 0x28ca98f00
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, 0x288
movaps xmmword [rsp + 0x270], xmm6
mov rax, qword [sym.liblldELF.dll_lld::elf::config]
add rax, 0x378
mov qword [rsp + 0x2d0], rcx
mov qword [rsp + 0xb8], rax
mov rcx, qword [rsp + 0x2d0]
call method.lld::elf::ScriptLexer.atEOF__
test al, al
jne 0x28ca9c43c
mov rdx, qword [rsp + 0x2d0]
lea rbx, [rsp + 0x110]
lea rdi, [rsp + 0x1f0]
mov rcx, rbx
lea rsi, [rsp + 0x230]
call method.lld::elf::ScriptLexer.next__
lea rdx, [0x28cbd1d2f]
mov rcx, rdi
mov r12, qword [rsp + 0x110]
mov rbp, qword [rsp + 0x118]
call fcn.28cb51010
movaps xmm0, xmmword [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rsi
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
movaps xmmword [rsp + 0x110], xmm0
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
jne 0x28ca98f38
lea rdx, str.ENTRY
mov rcx, rdi
call fcn.28cb51010
movaps xmm1, xmmword [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rsi
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
movaps xmmword [rsp + 0x110], xmm1
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca990c1
mov rcx, rsi
lea rdx, [0x28cbd1a60]
call fcn.28cb51010
movaps xmm2, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm2
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
mov rdx, qword [rsp + 0x2d0]
mov rcx, rbx
call method.lld::elf::ScriptLexer.next__
mov rsi, qword [sym.liblldELF.dll_lld::elf::config]
mov rax, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x118]
cmp qword [rsi + 0xd0], 0
jne 0x28ca99098
mov qword [rsp + 0x108], rdx
mov rcx, rbx
lea rdx, [rsp + 0x100]
mov qword [rsp + 0x100], rax
call fcn.28ca955a0
movups xmm3, xmmword [rsp + 0x110]
movups xmmword [rsi + 0xc8], xmm3
lea rcx, [rsp + 0x230]
lea rdx, [0x28cbd1a62]
call fcn.28cb51010
movaps xmm4, xmmword [rsp + 0x230]
movaps xmmword [rsp + 0x110], xmm4
jmp 0x28ca99a27
lea rdx, str.EXTERN
mov rcx, rdi
call fcn.28cb51010
movaps xmm5, xmmword [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rsi
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
movaps xmmword [rsp + 0x110], xmm5
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca991cc
mov rcx, rsi
lea rdx, [0x28cbd1a60]
lea rsi, [0x28cbd1a62]
call fcn.28cb51010
movaps xmm0, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm0
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
call fcn.28ca716d8
test rax, rax
jne 0x28ca98f38
lea rcx, [rsp + 0x230]
mov rdx, rsi
lea rbx, [rsp + 0x110]
call fcn.28cb51010
movaps xmm1, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm1
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
test al, al
jne 0x28ca98f38
mov rdx, qword [rsp + 0x2d0]
mov rcx, rbx
call method.lld::elf::ScriptLexer.next__
movups xmm2, xmmword [rsp + 0x110]
lea rdx, [rsp + 0x100]
mov rcx, rbx
movaps xmmword [rsp + 0x100], xmm2
call fcn.28ca955a0
mov rcx, qword [rsp + 0xb8]
mov rdx, rbx
call method.llvm::SmallVectorTemplateBase_llvm::StringRef__true_.push_back_llvm::StringRef_
jmp 0x28ca99139
lea rdx, str.GROUP
mov rcx, rdi
call fcn.28cb51010
movaps xmm3, xmmword [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rsi
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
movaps xmmword [rsp + 0x110], xmm3
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca9923e
mov rbx, qword [sym.liblldELF.dll_lld::elf::InputFile::isInGroup]
mov rcx, qword [rsp + 0x2d0]
mov sil, byte [rbx]
mov byte [rbx], 1
call fcn.28caa1360
mov byte [rbx], sil
test sil, sil
jne 0x28ca98f38
mov rax, qword [sym.liblldELF.dll_lld::elf::InputFile::nextGroupId]
inc dword [rax]
jmp 0x28ca98f38
lea rdx, str.INCLUDE
mov rcx, rdi
call fcn.28cb51010
movaps xmm4, xmmword [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rsi
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
movaps xmmword [rsp + 0x110], xmm4
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca9928e
mov rcx, qword [rsp + 0x2d0]
call fcn.28ca96750
jmp 0x28ca98f38
lea rdx, str.INPUT
mov rcx, rdi
call fcn.28cb51010
movaps xmm5, xmmword [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rsi
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
movaps xmmword [rsp + 0x110], xmm5
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca992de
mov rcx, qword [rsp + 0x2d0]
call fcn.28caa1360
jmp 0x28ca98f38
lea rdx, str.MEMORY
mov rcx, rdi
call fcn.28cb51010
movaps xmm6, xmmword [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rsi
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
movaps xmmword [rsp + 0x110], xmm6
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca99926
lea rdx, [0x28cbd1d2d]
mov rcx, rsi
call fcn.28cb51010
movaps xmm0, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm0
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
call fcn.28ca716d8
test rax, rax
jne 0x28ca98f38
lea rsi, [rsp + 0x230]
lea rdx, [0x28cbd1cfc]
mov rcx, rsi
lea rdi, [rsp + 0x110]
call fcn.28cb51010
movaps xmm4, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rdi
movaps xmmword [rsp + 0x110], xmm4
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
test al, al
jne 0x28ca98f38
mov rdx, qword [rsp + 0x2d0]
mov rcx, rdi
lea rbp, [rsp + 0x1f0]
call method.lld::elf::ScriptLexer.next__
lea rdx, str.INCLUDE
mov rcx, rsi
mov r14, qword [rsp + 0x110]
mov r15, qword [rsp + 0x118]
call fcn.28cb51010
movaps xmm5, xmmword [rsp + 0x230]
mov rdx, rdi
mov rcx, rbp
mov qword [rsp + 0x1f0], r14
mov qword [rsp + 0x1f8], r15
movaps xmmword [rsp + 0x110], xmm5
call method.llvm::StringRef.equals_llvm::StringRef__const
mov ebx, eax
test al, al
je 0x28ca9941e
mov rcx, qword [rsp + 0x2d0]
call fcn.28ca96750
jmp 0x28ca9934f
lea rdx, [0x28cbd1a60]
mov rcx, rsi
call fcn.28cb51010
movaps xmm1, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rdi
movaps xmmword [rsp + 0x110], xmm1
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
test al, al
je 0x28ca99565
mov rdx, qword [rsp + 0x2d0]
mov rcx, rsi
xor r12d, r12d
xor edi, edi
call method.lld::elf::ScriptLexer.next__
mov rdx, rsi
mov rcx, rbp
xor esi, esi
call fcn.28ca71a28
mov r13, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x1f8]
xor ebp, ebp
add rax, r13
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
cmp r13, rax
je 0x28ca994ff
mov al, byte [r13]
cmp al, 0x21
jne 0x28ca994ad
xor ebx, 1
xchg edi, ebp
xchg esi, r12d
jmp 0x28ca994fa
cmp al, 0x77
jne 0x28ca994b6
or esi, 1
jmp 0x28ca994fa
cmp al, 0x78
jne 0x28ca994bf
or esi, 4
jmp 0x28ca994fa
cmp al, 0x61
jne 0x28ca994c8
or esi, 2
jmp 0x28ca994fa
cmp al, 0x72
je 0x28ca994f5
lea rax, [rsp + 0x230]
lea rdx, str.invalid_memory_region_attribute
mov rcx, rax
call fcn.28cb46380
mov rcx, qword [rsp + 0x2d0]
mov rdx, rax
call method.lld::elf::ScriptLexer.setError_llvm::Twine_const_
jmp 0x28ca994fa
mov edi, 1
inc r13
jmp 0x28ca99491
lea rcx, [rsp + 0x1f0]
call fcn.28ca71ec0
test bl, bl
jne 0x28ca99515
xchg ebp, edi
xchg r12d, esi
lea rcx, [rsp + 0x230]
lea rdx, [0x28cbd1a62]
call fcn.28cb51010
movaps xmm2, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x110]
movaps xmmword [rsp + 0x110], xmm2
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
jmp 0x28ca9956e
xor edi, edi
xor esi, esi
xor ebp, ebp
xor r12d, r12d
lea rbx, [rsp + 0x230]
lea rdx, [0x28cbd1cc5]
mov rcx, rbx
lea r13, [rsp + 0x110]
call fcn.28cb51010
movaps xmm3, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, r13
movaps xmmword [rsp + 0x110], xmm3
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
lea rdx, [0x28cbd21e7]
mov rcx, rbx
call fcn.28cb51010
lea rcx, [rsp + 0x1f0]
lea rdx, [0x28cbd21e9]
call fcn.28cb51010
lea rcx, [rsp + 0x1c8]
lea rdx, str.ORIGIN
call fcn.28cb51010
lea rax, [rsp + 0xf0]
mov r8, r13
movups xmm4, xmmword [rsp + 0x1c8]
mov qword [rsp + 0x20], rax
movaps xmm5, xmmword [rsp + 0x1f0]
lea rcx, [rsp + 0x188]
lea r9, [rsp + 0x100]
movaps xmm6, xmmword [rsp + 0x230]
mov rdx, qword [rsp + 0x2d0]
movaps xmmword [rsp + 0x110], xmm4
movaps xmmword [rsp + 0x100], xmm5
movaps xmmword [rsp + 0xf0], xmm6
call fcn.28ca9c690
lea rdx, [0x28cbd1e4c]
mov rcx, rbx
call fcn.28cb51010
movaps xmm0, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, r13
movaps xmmword [rsp + 0x110], xmm0
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
lea rdx, [0x28cbd21ed]
mov rcx, rbx
call fcn.28cb51010
lea rcx, [rsp + 0x1f0]
lea rdx, [0x28cbd21ef]
call fcn.28cb51010
lea rcx, [rsp + 0x1c8]
lea rdx, str.LENGTH
call fcn.28cb51010
lea rax, [rsp + 0xf0]
mov r8, r13
movups xmm1, xmmword [rsp + 0x1c8]
mov qword [rsp + 0x20], rax
movaps xmm2, xmmword [rsp + 0x1f0]
lea rcx, [rsp + 0x1a8]
lea r9, [rsp + 0x100]
movaps xmm3, xmmword [rsp + 0x230]
mov rdx, qword [rsp + 0x2d0]
movaps xmmword [rsp + 0x110], xmm1
movaps xmmword [rsp + 0x100], xmm2
movaps xmmword [rsp + 0xf0], xmm3
call fcn.28ca9c690
lea r9, [method.lld::SpecificAlloc_lld::elf::MemoryRegion_.create_void_]
mov r8d, 8
mov edx, 0x68
lea rcx, [sym.liblldELF.dll_lld::SpecificAlloc_lld::elf::MemoryRegion_::tag]
call fcn.28ca71690
lea rcx, [rax + 8]
mov r8d, 8
mov edx, 0x78
call method.llvm::BumpPtrAllocatorImpl_llvm::MallocAllocator__4096ull__4096ull__128ull_.Allocate_unsigned_long_long__unsigned_long_long_
lea r13, [rsp + 0x230]
lea rdx, [rsp + 0x1a8]
mov rbx, rax
mov rcx, r13
call fcn.28cb8e760
lea rax, [rsp + 0x1f0]
lea rdx, [rsp + 0x188]
mov rcx, rax
mov qword [rsp + 0xb0], rax
call fcn.28cb8e760
lea rdx, [rsp + 0x1c8]
mov rcx, rbx
mov qword [rsp + 0x1c8], r14
mov qword [rsp + 0x1d0], r15
call fcn.28cb8d8c0
lea rax, [rbx + 0x20]
lea rdx, [rsp + 0x1f0]
mov rcx, rax
mov qword [rsp + 0x40], rax
call fcn.28cb8e760
mov rdx, r13
lea rcx, [rbx + 0x40]
call fcn.28cb8e760
xor ecx, ecx
mov dword [rbx + 0x68], esi
lea rsi, [rsp + 0x1f0]
mov qword [rbx + 0x70], rcx
mov rcx, rsi
mov dword [rbx + 0x60], r12d
mov dword [rbx + 0x64], ebp
mov dword [rbx + 0x6c], edi
call method.std::_Function_base._Function_base__
mov rcx, r13
mov qword [rsp + 0x40], r13
call method.std::_Function_base._Function_base__
mov rax, qword [sym.liblldELF.dll_lld::elf::script]
mov r8, qword [rsp + 0x40]
lea rcx, [rsp + 0xe0]
lea r9, [rsp + 0x240]
mov qword [rsp + 0x230], r14
mov rdx, qword [rax]
mov qword [rsp + 0x238], r15
mov qword [rsp + 0x240], rbx
add rdx, 0x88
call method.std::pair_std::pair_llvm::StringRef__lld::elf::MemoryRegion___bool__llvm::MapVector_llvm::StringRef__lld::elf::MemoryRegion__llvm::DenseMap_llvm::StringRef__unsigned_int__llvm::DenseMapInfo_llvm::StringRef__void___llvm::detail::DenseMapPair_llvm
cmp byte [rsp + 0xe8], 0
jne 0x28ca998dd
jmp 0x28ca9987a
lea rdx, str._already_defined
mov rcx, rsi
mov r8, rsi
lea rbx, [rsp + 0x230]
lea rax, str.region_
call fcn.28cb46380
lea rdx, [rsp + 0x1c8]
mov rcx, rbx
mov word [rsp + 0x1e8], 0x503
mov qword [rsp + 0x1c8], rax
mov qword [rsp + 0x1d8], r14
mov qword [rsp + 0x1e0], r15
call method.llvm::Twine.concat_llvm::Twine_const__const
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
call method.lld::elf::ScriptLexer.setError_llvm::Twine_const_
lea rcx, [rsp + 0x1a8]
call method.std::_Function_base._Function_base__
lea rcx, [rsp + 0x188]
call method.std::_Function_base._Function_base__
jmp 0x28ca9934f
lea rdx, str.OUTPUT
mov rcx, rdi
call fcn.28cb51010
movaps xmm6, xmmword [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rsi
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
movaps xmmword [rsp + 0x110], xmm6
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca99a34
lea rdx, [0x28cbd1a60]
mov rcx, rsi
call fcn.28cb51010
movaps xmm0, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm0
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
mov rdx, qword [rsp + 0x2d0]
mov rcx, rbx
call method.lld::elf::ScriptLexer.next__
mov rcx, qword [sym.liblldELF.dll_lld::elf::config]
mov rax, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x118]
cmp qword [rcx + 0x170], 0
jne 0x28ca99a03
mov qword [rsp + 0x108], rdx
lea rcx, [rsp + 0x110]
lea rdx, [rsp + 0x100]
mov qword [rsp + 0x100], rax
call fcn.28ca955a0
mov rax, qword [sym.liblldELF.dll_lld::elf::config]
movups xmm1, xmmword [rsp + 0x110]
movups xmmword [rax + 0x168], xmm1
lea rcx, [rsp + 0x230]
lea rdx, [0x28cbd1a62]
call fcn.28cb51010
movaps xmm2, xmmword [rsp + 0x230]
movaps xmmword [rsp + 0x110], xmm2
lea rdx, [rsp + 0x110]
jmp 0x28ca9c3ac
lea rdx, str.OUTPUT_ARCH
mov rcx, rdi
call fcn.28cb51010
movaps xmm3, xmmword [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rsi
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
movaps xmmword [rsp + 0x110], xmm3
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca99b0c
lea rbx, [rsp + 0x230]
lea rdx, [0x28cbd1a60]
mov rcx, rbx
lea rsi, [rsp + 0x110]
lea rdi, [0x28cbd1a62]
call fcn.28cb51010
movaps xmm4, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rsi
movaps xmmword [rsp + 0x110], xmm4
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
call fcn.28ca716d8
test rax, rax
jne 0x28ca98f38
mov rdx, rdi
mov rcx, rbx
call fcn.28cb51010
movaps xmm5, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rsi
movaps xmmword [rsp + 0x110], xmm5
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
test al, al
jne 0x28ca98f38
mov rcx, qword [rsp + 0x2d0]
call method.lld::elf::ScriptLexer.skip__
jmp 0x28ca99abc
lea r13, [rsp + 0x1f0]
lea rdx, str.OUTPUT_FORMAT
mov rcx, r13
lea rbx, [rsp + 0x110]
lea rdi, [rsp + 0x230]
call fcn.28cb51010
movaps xmm6, xmmword [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rdi
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
movaps xmmword [rsp + 0x110], xmm6
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca9a643
lea rdx, [0x28cbd1a60]
mov rcx, rdi
call fcn.28cb51010
movaps xmm0, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm0
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
xor edx, edx
mov rcx, rbx
mov qword [rsp + 0x1a8], rdx
mov qword [rsp + 0x1b0], rdx
mov rdx, qword [rsp + 0x2d0]
call method.lld::elf::ScriptLexer.next__
movups xmm1, xmmword [rsp + 0x110]
lea rdx, [rsp + 0x100]
mov rcx, rbx
movaps xmmword [rsp + 0x100], xmm1
call fcn.28ca955a0
mov rsi, qword [sym.liblldELF.dll_lld::elf::config]
movups xmm2, xmmword [rsp + 0x110]
mov rcx, rdi
lea rdx, [0x28cbd1a62]
movups xmmword [rsi + 0x78], xmm2
call fcn.28cb51010
movaps xmm3, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm3
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
test al, al
jne 0x28ca99d34
lea rdx, [0x28cbd1e4c]
mov rcx, rdi
call fcn.28cb51010
movaps xmm4, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm4
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
mov rdx, qword [rsp + 0x2d0]
mov rcx, rbx
call method.lld::elf::ScriptLexer.next__
lea rcx, [rsp + 0x1a8]
mov rdx, rbx
call fcn.28ca955a0
cmp byte [rsi + 0x43c], 0
je 0x28ca99c85
movups xmm5, xmmword [rsp + 0x1a8]
movups xmmword [rsi + 0x78], xmm5
lea rsi, [rsp + 0x230]
lea rdx, [0x28cbd1e4c]
mov rcx, rsi
lea rbx, [rsp + 0x110]
call fcn.28cb51010
movaps xmm6, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm6
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
mov rdx, qword [rsp + 0x2d0]
mov rcx, rbx
call method.lld::elf::ScriptLexer.next__
lea rcx, [rsp + 0x1a8]
mov rdx, rbx
call fcn.28ca955a0
mov rax, qword [sym.liblldELF.dll_lld::elf::config]
cmp byte [rax + 0x43d], 0
je 0x28ca99d00
movups xmm0, xmmword [rsp + 0x1a8]
movups xmmword [rax + 0x78], xmm0
lea rdx, [0x28cbd1a62]
mov rcx, rsi
call fcn.28cb51010
movaps xmm1, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x110]
movaps xmmword [rsp + 0x110], xmm1
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
mov rax, qword [sym.liblldELF.dll_lld::elf::config]
lea rdx, str._freebsd
lea rcx, [rsp + 0x230]
movups xmm2, xmmword [rax + 0x78]
movups xmmword [rsp + 0x1a8], xmm2
call fcn.28cb51010
mov r8, qword [rsp + 0x238]
mov r9, qword [rsp + 0x1b0]
mov rdx, qword [rsp + 0x230]
cmp r9, r8
jb 0x28ca99dd0
mov rcx, qword [rsp + 0x1a8]
sub r9, r8
test r8, r8
je 0x28ca99d9e
add rcx, r9
mov qword [rsp + 0x40], r9
call sub.msvcrt.dll_memcmp
mov r9, qword [rsp + 0x40]
test eax, eax
jne 0x28ca99dd0
lea rcx, [rsp + 0x110]
lea rdx, [rsp + 0x1a8]
xor r8d, r8d
call method.llvm::StringRef.substr_unsigned_long_long__unsigned_long_long__const
mov rax, qword [sym.liblldELF.dll_lld::elf::config]
movups xmm3, xmmword [rsp + 0x110]
mov byte [rax], 9
movups xmmword [rsp + 0x1a8], xmm3
mov rax, qword [rsp + 0x1a8]
lea rbx, [rsp + 0xd0]
lea rcx, [rsp + 0x230]
mov byte [rsp + 0x244], 0
mov qword [rsp + 0xd8], 0xa
mov rdx, rbx
mov qword [rsp + 0x230], rax
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0x238], rax
mov eax, dword [rsp + 0x48]
and eax, 0xff00
or eax, 0x30001
mov dword [rsp + 0x48], eax
mov r8d, dword [rsp + 0x48]
lea rax, str.elf32_i386
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 9
mov rcx, rax
mov eax, dword [rsp + 0x4c]
and eax, 0xff00
or eax, 0x530001
mov dword [rsp + 0x4c], eax
mov r8d, dword [rsp + 0x4c]
lea rax, str.elf32_avr
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0xb
mov rcx, rax
mov eax, dword [rsp + 0x50]
and eax, 0xff00
or eax, 0x60001
mov dword [rsp + 0x50], eax
mov r8d, dword [rsp + 0x50]
lea rax, str.elf32_iamcu
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0xf
mov rcx, rax
mov eax, dword [rsp + 0x54]
and eax, 0xff00
or eax, 0x280001
mov dword [rsp + 0x54], eax
mov r8d, dword [rsp + 0x54]
lea rax, str.elf32_littlearm
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0xc
mov rcx, rax
mov eax, dword [rsp + 0x58]
and eax, 0xff00
or eax, 0x280002
mov dword [rsp + 0x58], eax
mov r8d, dword [rsp + 0x58]
lea rax, str.elf32_bigarm
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0xc
mov rcx, rax
mov eax, dword [rsp + 0x5c]
and eax, 0xff00
or eax, 0x3e0001
mov dword [rsp + 0x5c], eax
mov r8d, dword [rsp + 0x5c]
lea rax, str.elf32_x86_64
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0xd
mov rcx, rax
mov eax, dword [rsp + 0x60]
and eax, 0xff00
or eax, 0xb70003
mov dword [rsp + 0x60], eax
mov r8d, dword [rsp + 0x60]
lea rax, str.elf64_aarch64
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0x13
mov rcx, rax
mov eax, dword [rsp + 0x64]
and eax, 0xff00
or eax, 0xb70003
mov dword [rsp + 0x64], eax
mov r8d, dword [rsp + 0x64]
lea rax, str.elf64_littleaarch64
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0x10
mov rcx, rax
mov eax, dword [rsp + 0x68]
and eax, 0xff00
or eax, 0xb70004
mov dword [rsp + 0x68], eax
mov r8d, dword [rsp + 0x68]
lea rax, str.elf64_bigaarch64
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0xd
mov rcx, rax
mov eax, dword [rsp + 0x6c]
and eax, 0xff00
or eax, 0x140002
mov dword [rsp + 0x6c], eax
mov r8d, dword [rsp + 0x6c]
lea rax, str.elf32_powerpc
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0xf
mov rcx, rax
mov eax, dword [rsp + 0x70]
and eax, 0xff00
or eax, 0x140001
mov dword [rsp + 0x70], eax
mov r8d, dword [rsp + 0x70]
lea rax, str.elf32_powerpcle
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0xd
mov rcx, rax
mov eax, dword [rsp + 0x74]
and eax, 0xff00
or eax, 0x150004
mov dword [rsp + 0x74], eax
mov r8d, dword [rsp + 0x74]
lea rax, str.elf64_powerpc
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0xf
mov rcx, rax
mov eax, dword [rsp + 0x78]
and eax, 0xff00
or eax, 0x150003
mov dword [rsp + 0x78], eax
mov r8d, dword [rsp + 0x78]
lea rax, str.elf64_powerpcle
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0xc
mov rcx, rax
mov eax, dword [rsp + 0x7c]
and eax, 0xff00
or eax, 0x3e0003
mov dword [rsp + 0x7c], eax
mov r8d, dword [rsp + 0x7c]
lea rax, str.elf64_x86_64
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0x11
mov rcx, rax
mov eax, dword [rsp + 0x3c]
and eax, 0xff00
or eax, 0x80002
mov dword [rsp + 0x3c], eax
mov r8d, dword [rsp + 0x3c]
lea rax, str.elf32_tradbigmips
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov r8d, dword [rsp + 0x3c]
mov rdx, rbx
mov qword [rsp + 0xd8], 0xd
mov rcx, rax
lea rax, str.elf32_bigmips
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0x12
mov rcx, rax
mov eax, dword [rsp + 0x80]
and eax, 0xff00
or eax, 0x80002
mov dword [rsp + 0x80], eax
mov r8d, dword [rsp + 0x80]
lea rax, str.elf32_ntradbigmips
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0x14
mov rcx, rax
mov eax, dword [rsp + 0x84]
and eax, 0xff00
or eax, 0x80001
mov dword [rsp + 0x84], eax
mov r8d, dword [rsp + 0x84]
lea rax, str.elf32_tradlittlemips
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0x15
mov rcx, rax
mov eax, dword [rsp + 0x88]
and eax, 0xff00
or eax, 0x80001
mov dword [rsp + 0x88], eax
mov r8d, dword [rsp + 0x88]
lea rax, str.elf32_ntradlittlemips
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0x11
mov rcx, rax
mov eax, dword [rsp + 0x8c]
and eax, 0xff00
or eax, 0x80004
mov dword [rsp + 0x8c], eax
mov r8d, dword [rsp + 0x8c]
lea rax, str.elf64_tradbigmips
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0x14
mov rcx, rax
mov eax, dword [rsp + 0x90]
and eax, 0xff00
or eax, 0x80003
mov dword [rsp + 0x90], eax
mov r8d, dword [rsp + 0x90]
lea rax, str.elf64_tradlittlemips
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0x11
mov rcx, rax
mov eax, dword [rsp + 0x94]
and eax, 0xff00
or eax, 0xf30001
mov dword [rsp + 0x94], eax
mov r8d, dword [rsp + 0x94]
lea rax, str.elf32_littleriscv
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0x11
mov rcx, rax
mov eax, dword [rsp + 0x98]
and eax, 0xff00
or eax, 0xf30003
mov dword [rsp + 0x98], eax
mov r8d, dword [rsp + 0x98]
lea rax, str.elf64_littleriscv
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0xb
mov rcx, rax
mov eax, dword [rsp + 0x9c]
and eax, 0xff00
or eax, 0x2b0004
mov dword [rsp + 0x9c], eax
mov r8d, dword [rsp + 0x9c]
lea rax, str.elf64_sparc
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0xc
mov rcx, rax
mov eax, dword [rsp + 0xa0]
and eax, 0xff00
or eax, 0x690001
mov dword [rsp + 0xa0], eax
mov r8d, dword [rsp + 0xa0]
lea rax, str.elf32_msp430
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0xf
mov rcx, rax
mov eax, dword [rsp + 0xa4]
and eax, 0xff00
or eax, 0x1020001
mov dword [rsp + 0xa4], eax
mov r8d, dword [rsp + 0xa4]
lea rax, str.elf32_loongarch
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0xf
mov rcx, rax
mov eax, dword [rsp + 0xa8]
and eax, 0xff00
or eax, 0x1020003
mov dword [rsp + 0xa8], eax
mov r8d, dword [rsp + 0xa8]
lea rax, str.elf64_loongarch
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
mov rdx, rbx
mov qword [rsp + 0xd8], 0xa
mov rcx, rax
mov eax, dword [rsp + 0xac]
and eax, 0xff00
or eax, 0x160004
mov dword [rsp + 0xac], eax
mov r8d, dword [rsp + 0xac]
lea rax, str.elf64_s390
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_std::pair_lld::elf::ELFKind__unsigned_short___std::pair_lld::elf::ELFKind__unsigned_short___.Case_llvm::StringLiteral__std::pair_lld::elf::ELFKind__unsigned_short__
cmp byte [rax + 0x14], 0
je 0x28ca9a51a
mov cl, byte [rax + 0x10]
mov dx, word [rax + 0x12]
jmp 0x28ca9a51e
xor edx, edx
xor ecx, ecx
mov rax, qword [sym.liblldELF.dll_lld::elf::config]
mov byte [rax + 0x4f0], cl
mov word [rax + 0x4f2], dx
test dx, dx
jne 0x28ca9a580
mov rdx, qword [rax + 0x78]
mov rcx, qword [rsp + 0x2d0]
lea rdi, str.unknown_output_format_name:
mov word [rsp + 0x250], 0x503
mov rax, qword [rax + 0x80]
mov qword [rsp + 0x230], rdi
mov qword [rsp + 0x240], rdx
lea rdx, [rsp + 0x230]
mov qword [rsp + 0x248], rax
call method.lld::elf::ScriptLexer.setError_llvm::Twine_const_
lea rcx, [rsp + 0x230]
lea rdx, str.elf32_ntradlittlemips
call fcn.28cb51010
lea rbx, [rsp + 0x110]
movups xmm4, xmmword [rsp + 0x1a8]
movaps xmm5, xmmword [rsp + 0x230]
lea rsi, [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rsi
movaps xmmword [rsp + 0x1f0], xmm4
movaps xmmword [rsp + 0x110], xmm5
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca9a5e3
mov rax, qword [sym.liblldELF.dll_lld::elf::config]
mov byte [rax + 0x434], 1
jmp 0x28ca9a626
lea rdx, str.elf32_ntradbigmips
mov rcx, rsi
call fcn.28cb51010
movups xmm6, xmmword [rsp + 0x1a8]
movaps xmm0, xmmword [rsp + 0x1f0]
mov rdx, rbx
lea rcx, [rsp + 0x1c8]
movups xmmword [rsp + 0x1c8], xmm6
movaps xmmword [rsp + 0x110], xmm0
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
jne 0x28ca9a5d3
mov rax, qword [sym.liblldELF.dll_lld::elf::config]
cmp word [rax + 0x4f2], 0x69
jne 0x28ca98f38
mov byte [rax], 0xff
jmp 0x28ca98f38
lea rdx, str.OVERWRITE_SECTIONS
mov rcx, r13
call fcn.28cb51010
movaps xmm1, xmmword [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rdi
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
movaps xmmword [rsp + 0x110], xmm1
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca9a786
lea rdx, [0x28cbd1d2d]
mov rcx, rdi
lea rsi, [0x28cbd1cfc]
call fcn.28cb51010
movaps xmm2, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm2
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
mov rbp, qword [sym.liblldELF.dll_lld::elf::script]
call fcn.28ca716d8
test rax, rax
jne 0x28ca98f38
mov rdx, rsi
mov rcx, rdi
lea rbx, [rsp + 0x110]
call fcn.28cb51010
movaps xmm3, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm3
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
test al, al
jne 0x28ca98f38
mov rdx, qword [rsp + 0x2d0]
mov rcx, rbx
mov r12, qword [rbp]
call method.lld::elf::ScriptLexer.next__
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
call fcn.28ca9e2e0
mov r8d, dword [r12 + 0xd8]
mov rbx, rax
mov eax, dword [r12 + 0xdc]
inc r8
cmp rax, r8
jae 0x28ca9a765
lea rdx, [r12 + 0xe0]
lea rcx, [r12 + 0xd0]
mov r9d, 8
call fcn.28ca71c08
mov edx, dword [r12 + 0xd8]
mov rax, qword [r12 + 0xd0]
mov qword [rax + rdx*8], rbx
inc dword [r12 + 0xd8]
jmp 0x28ca9a6c2
lea rdx, str.PHDRS
mov rcx, r13
call fcn.28cb51010
movaps xmm4, xmmword [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rdi
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
movaps xmmword [rsp + 0x110], xmm4
call method.llvm::StringRef.equals_llvm::StringRef__const
mov esi, eax
test al, al
je 0x28ca9af24
lea rdx, [0x28cbd1d2d]
mov rcx, rdi
lea r12, [0x28cbd1cfc]
call fcn.28cb51010
movaps xmm5, xmmword [rsp + 0x230]
mov rdx, rbx
mov rcx, qword [rsp + 0x2d0]
lea r13, [0x28cbd1d2f]
movaps xmmword [rsp + 0x110], xmm5
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
call fcn.28ca716d8
test rax, rax
jne 0x28ca98f38
lea rcx, [rsp + 0x230]
mov rdx, r12
lea rbp, [rsp + 0x110]
call fcn.28cb51010
movaps xmm5, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbp
movaps xmmword [rsp + 0x110], xmm5
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
mov ebx, eax
test al, al
jne 0x28ca98f38
xor eax, eax
mov ecx, 6
lea rdi, [rsp + 0x210]
mov word [rsp + 0x204], 0
mov qword [rsp + 0x1f0], rax
mov rdx, qword [rsp + 0x2d0]
mov qword [rsp + 0x1f8], rax
xor eax, eax
mov dword [rsp + 0x200], eax
xor eax, eax
mov byte [rsp + 0x20c], 0
rep stosd dword [rdi], eax
xor eax, eax
mov rcx, rbp
mov qword [rsp + 0x228], rax
call method.lld::elf::ScriptLexer.next__
movups xmm6, xmmword [rsp + 0x110]
mov rdx, qword [rsp + 0x2d0]
mov rcx, rbp
mov rdi, rbp
movaps xmmword [rsp + 0x1f0], xmm6
call method.lld::elf::ScriptLexer.next__
lea rcx, [rsp + 0x230]
mov rdx, rdi
mov r14, qword [rsp + 0x110]
mov rbp, qword [rsp + 0x118]
call fcn.28ca95980
cmp byte [rsp + 0x238], 0
je 0x28ca9a908
mov eax, dword [rsp + 0x230]
jmp 0x28ca9abe0
lea rdi, [rsp + 0xd0]
xor r8d, r8d
lea rax, str.PT_NULL
mov qword [rsp + 0x230], r14
lea rcx, [rsp + 0x230]
mov rdx, rdi
mov qword [rsp + 0x238], rbp
mov byte [rsp + 0x244], 0
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], 7
call method.llvm::StringSwitch_unsigned_int__unsigned_int_.Case_llvm::StringLiteral__unsigned_int_
mov r8d, 1
mov rdx, rdi
mov qword [rsp + 0xd8], 7
mov rcx, rax
lea rax, str.PT_LOAD
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_unsigned_int__unsigned_int_.Case_llvm::StringLiteral__unsigned_int_
mov r8d, 2
mov rdx, rdi
mov qword [rsp + 0xd8], 0xa
mov rcx, rax
lea rax, str.PT_DYNAMIC
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_unsigned_int__unsigned_int_.Case_llvm::StringLiteral__unsigned_int_
mov r8d, 3
mov rdx, rdi
mov qword [rsp + 0xd8], 9
mov rcx, rax
lea rax, str.PT_INTERP
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_unsigned_int__unsigned_int_.Case_llvm::StringLiteral__unsigned_int_
mov r8d, 4
mov rdx, rdi
mov qword [rsp + 0xd8], 7
mov rcx, rax
lea rax, str.PT_NOTE
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_unsigned_int__unsigned_int_.Case_llvm::StringLiteral__unsigned_int_
mov r8d, 5
mov rdx, rdi
mov qword [rsp + 0xd8], 8
mov rcx, rax
lea rax, str.PT_SHLIB
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_unsigned_int__unsigned_int_.Case_llvm::StringLiteral__unsigned_int_
mov r8d, 6
mov rdx, rdi
mov qword [rsp + 0xd8], 7
mov rcx, rax
lea rax, str.PT_PHDR
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_unsigned_int__unsigned_int_.Case_llvm::StringLiteral__unsigned_int_
mov r8d, 7
mov rdx, rdi
mov qword [rsp + 0xd8], 6
mov rcx, rax
lea rax, str.PT_TLS
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_unsigned_int__unsigned_int_.Case_llvm::StringLiteral__unsigned_int_
mov r8d, 0x6474e550
mov rdx, rdi
mov qword [rsp + 0xd8], 0xf
mov rcx, rax
lea rax, str.PT_GNU_EH_FRAME
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_unsigned_int__unsigned_int_.Case_llvm::StringLiteral__unsigned_int_
mov r8d, 0x6474e551
mov rdx, rdi
mov qword [rsp + 0xd8], 0xc
mov rcx, rax
lea rax, str.PT_GNU_STACK
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_unsigned_int__unsigned_int_.Case_llvm::StringLiteral__unsigned_int_
mov r8d, 0x6474e552
mov rdx, rdi
mov qword [rsp + 0xd8], 0xc
mov rcx, rax
lea rax, str.PT_GNU_RELRO
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_unsigned_int__unsigned_int_.Case_llvm::StringLiteral__unsigned_int_
mov r8d, 0x65a3dbe6
mov rdx, rdi
mov qword [rsp + 0xd8], 0x14
mov rcx, rax
lea rax, str.PT_OPENBSD_RANDOMIZE
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_unsigned_int__unsigned_int_.Case_llvm::StringLiteral__unsigned_int_
mov r8d, 0x65a3dbe7
mov rdx, rdi
mov qword [rsp + 0xd8], 0x13
mov rcx, rax
lea rax, str.PT_OPENBSD_WXNEEDED
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_unsigned_int__unsigned_int_.Case_llvm::StringLiteral__unsigned_int_
mov r8d, 0x65a41be6
mov rdx, rdi
mov qword [rsp + 0xd8], 0x13
mov rcx, rax
lea rax, str.PT_OPENBSD_BOOTDATA
mov qword [rsp + 0xd0], rax
call method.llvm::StringSwitch_unsigned_int__unsigned_int_.Case_llvm::StringLiteral__unsigned_int_
cmp byte [rax + 0x14], 0
je 0x28ca9aba0
mov eax, dword [rax + 0x10]
cmp eax, 0xffffffff
jne 0x28ca9abe0
mov rcx, qword [rsp + 0x2d0]
lea rax, str.invalid_program_header_type:
lea rdx, [rsp + 0x230]
mov word [rsp + 0x250], 0x503
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x240], r14
mov qword [rsp + 0x248], rbp
call method.lld::elf::ScriptLexer.setError_llvm::Twine_const_
xor eax, eax
mov dword [rsp + 0x200], eax
lea r14, str.FILEHDR
lea r15, str.PHDRS
call fcn.28ca716d8
test rax, rax
jne 0x28ca9ae40
lea rdi, [rsp + 0x230]
mov rdx, r13
mov rcx, rdi
call fcn.28cb51010
movaps xmm2, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x110]
movaps xmmword [rsp + 0x110], xmm2
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
test al, al
jne 0x28ca9ae40
mov rdx, r14
mov rcx, rdi
call fcn.28cb51010
movaps xmm3, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x110]
movaps xmmword [rsp + 0x110], xmm3
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
test al, al
je 0x28ca9ac84
mov byte [rsp + 0x204], 1
jmp 0x28ca9abf5
lea rdi, [rsp + 0x230]
mov rdx, r15
mov rcx, rdi
call fcn.28cb51010
movaps xmm6, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x110]
movaps xmmword [rsp + 0x110], xmm6
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
test al, al
je 0x28ca9accd
mov byte [rsp + 0x205], 1
jmp 0x28ca9abf5
lea rdx, [0x28cbd20e0]
mov rcx, rdi
call fcn.28cb51010
movaps xmm0, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x110]
movaps xmmword [rsp + 0x110], xmm0
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
test al, al
lea rcx, [rsp + 0x230]
je 0x28ca9ad3a
mov rdx, qword [rsp + 0x2d0]
call fcn.28ca98970
lea rdi, [rsp + 0x230]
lea rcx, [rsp + 0x210]
mov rdx, rdi
call fcn.28cb8e7d0
mov rcx, rdi
jmp 0x28ca9add3
lea rdx, str.FLAGS
lea rdi, [rsp + 0x110]
call fcn.28cb51010
movaps xmm1, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rdi
movaps xmmword [rsp + 0x110], xmm1
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
test al, al
je 0x28ca9addd
lea rdi, [rsp + 0x1c8]
mov rdx, qword [rsp + 0x2d0]
mov rcx, rdi
call fcn.28ca98970
lea rbp, [rsp + 0x230]
mov rdx, rdi
mov rcx, rbp
call method.std::function_lld::elf.ExprValue____::operator_____const
mov rcx, rbp
call method.lld::elf::ExprValue.getValue___const
cmp byte [rsp + 0x20c], 0
mov dword [rsp + 0x208], eax
jne 0x28ca9adbe
mov byte [rsp + 0x20c], 1
lea rcx, [rsp + 0x250]
call fcn.28ca71ec0
lea rcx, [rsp + 0x1c8]
call method.std::_Function_base._Function_base__
jmp 0x28ca9abf5
mov rdx, qword [rsp + 0x2d0]
mov rcx, rdi
call method.lld::elf::ScriptLexer.next__
lea rax, str.unexpected_header_attribute:
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x230]
mov word [rsp + 0x250], 0x503
mov qword [rsp + 0x230], rax
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x240], rax
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0x248], rax
call method.lld::elf::ScriptLexer.setError_llvm::Twine_const_
jmp 0x28ca9abf5
mov rax, qword [sym.liblldELF.dll_lld::elf::script]
mov rdi, qword [rax]
mov eax, dword [rdi + 0x48]
mov edx, dword [rdi + 0x4c]
mov rcx, qword [rdi + 0x40]
lea r8, [rax + 1]
cmp rdx, r8
jb 0x28ca9ae67
lea rdx, [rsp + 0x1f0]
jmp 0x28ca9aeab
lea rdx, [rsp + 0x1f0]
or rbp, 0xffffffffffffffff
cmp rdx, rcx
jb 0x28ca9ae90
shl rax, 6
add rax, rcx
cmp rdx, rax
jae 0x28ca9ae90
sub rdx, rcx
mov ebx, esi
sar rdx, 6
mov rbp, rdx
lea rcx, [rdi + 0x40]
mov rdx, r8
call method.llvm::SmallVectorTemplateBase_lld::elf::PhdrsCommand__false_.grow_unsigned_long_long_
mov rdx, qword [rdi + 0x40]
test bl, bl
je 0x28ca9ae5d
shl rbp, 6
add rdx, rbp
mov ecx, dword [rdi + 0x48]
mov eax, dword [rdx + 0x10]
add rdx, 0x20
movups xmm4, xmmword [rdx - 0x20]
shl rcx, 6
add rcx, qword [rdi + 0x40]
mov dword [rcx + 0x10], eax
mov eax, dword [rdx - 0xc]
add rcx, 0x20
movups xmmword [rcx - 0x20], xmm4
mov word [rcx - 0xc], ax
mov rax, qword [rdx - 8]
mov qword [rcx - 8], rax
call fcn.28cb8e760
inc dword [rdi + 0x48]
lea rcx, [rsp + 0x210]
call method.std::_Function_base._Function_base__
jmp 0x28ca9a807
lea rdx, str.REGION_ALIAS
mov rcx, r13
call fcn.28cb51010
movaps xmm0, xmmword [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rdi
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
movaps xmmword [rsp + 0x110], xmm0
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca9b1b0
lea rdx, [0x28cbd1a60]
mov rcx, rdi
lea rsi, [rsp + 0x188]
call fcn.28cb51010
movaps xmm1, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm1
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
mov rdx, qword [rsp + 0x2d0]
mov rcx, rbx
call method.lld::elf::ScriptLexer.next__
mov rdx, rbx
mov rcx, rsi
call fcn.28ca955a0
lea rdx, [0x28cbd1e4c]
mov rcx, rdi
call fcn.28cb51010
movaps xmm2, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm2
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
mov rdx, qword [rsp + 0x2d0]
lea rcx, [rsp + 0x1a8]
call method.lld::elf::ScriptLexer.next__
lea rdx, [0x28cbd1a62]
mov rcx, rdi
call fcn.28cb51010
movaps xmm3, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm3
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
mov rax, qword [sym.liblldELF.dll_lld::elf::script]
mov rdx, rsi
mov rcx, qword [rax]
add rcx, 0x88
call sym.liblldELF.dll_llvm::MapVector_llvm::StringRef__lld::elf::MemoryRegion__llvm::DenseMap_llvm::StringRef__unsigned_int__llvm::DenseMapInfo_llvm::StringRef__void___llvm::detail::DenseMapPair_llvm::StringRef__unsigned_int_____llvm::SmallVector_std::pair_llvm::StringRef__lld::elf::MemoryRegion___0u___::count_llvm::StringRef_const__const
test rax, rax
je 0x28ca9b0b4
lea rdx, [0x28cbd2525]
mov rcx, r13
lea rax, str.redefinition_of_memory_region_
mov r8, r13
call fcn.28cb46380
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0x188]
mov rcx, rdi
lea rdx, [rsp + 0x1c8]
mov word [rsp + 0x1e8], 0x503
mov qword [rsp + 0x1d8], rax
mov rax, qword [rsp + 0x190]
mov qword [rsp + 0x1e0], rax
call method.llvm::Twine.concat_llvm::Twine_const__const
mov rcx, qword [rsp + 0x2d0]
mov rdx, rdi
call method.lld::elf::ScriptLexer.setError_llvm::Twine_const_
mov rax, qword [sym.liblldELF.dll_lld::elf::script]
lea rdx, [rsp + 0x1a8]
mov rcx, qword [rax]
add rcx, 0x88
call sym.liblldELF.dll_llvm::MapVector_llvm::StringRef__lld::elf::MemoryRegion__llvm::DenseMap_llvm::StringRef__unsigned_int__llvm::DenseMapInfo_llvm::StringRef__void___llvm::detail::DenseMapPair_llvm::StringRef__unsigned_int_____llvm::SmallVector_std::pair_llvm::StringRef__lld::elf::MemoryRegion___0u___::count_llvm::StringRef_const__const
test rax, rax
jne 0x28ca9b14f
lea r8, [rsp + 0x1f0]
lea rdx, str._is_not_defined
mov rcx, r8
lea rax, str.memory_region_
lea rbx, [rsp + 0x230]
call fcn.28cb46380
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0x1a8]
mov rcx, rbx
lea rdx, [rsp + 0x1c8]
mov word [rsp + 0x1e8], 0x503
mov qword [rsp + 0x1d8], rax
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0x1e0], rax
call method.llvm::Twine.concat_llvm::Twine_const__const
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
call method.lld::elf::ScriptLexer.setError_llvm::Twine_const_
mov rax, qword [sym.liblldELF.dll_lld::elf::script]
lea rdx, [rsp + 0x1a8]
mov rbx, qword [rax]
add rbx, 0x88
mov rcx, rbx
call sym.liblldELF.dll_llvm::MapVector_llvm::StringRef__lld::elf::MemoryRegion__llvm::DenseMap_llvm::StringRef__unsigned_int__llvm::DenseMapInfo_llvm::StringRef__void___llvm::detail::DenseMapPair_llvm::StringRef__unsigned_int_____llvm::SmallVector_std::pair_llvm::StringRef__lld::elf::MemoryRegion___0u___::operator___llvm::StringRef_const_
movups xmm4, xmmword [rsp + 0x188]
mov rdx, rbx
lea rcx, [rsp + 0xe0]
mov rax, qword [rax]
lea r9, [rsp + 0x240]
lea r8, [rsp + 0x230]
movaps xmmword [rsp + 0x230], xmm4
mov qword [rsp + 0x240], rax
call method.std::pair_std::pair_llvm::StringRef__lld::elf::MemoryRegion___bool__llvm::MapVector_llvm::StringRef__lld::elf::MemoryRegion__llvm::DenseMap_llvm::StringRef__unsigned_int__llvm::DenseMapInfo_llvm::StringRef__void___llvm::detail::DenseMapPair_llvm
jmp 0x28ca98f38
lea rdx, str.SEARCH_DIR
mov rcx, r13
call fcn.28cb51010
movaps xmm5, xmmword [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rdi
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
movaps xmmword [rsp + 0x110], xmm5
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca9b2a9
lea rdx, [0x28cbd1a60]
mov rcx, rdi
call fcn.28cb51010
movaps xmm6, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm6
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
mov rdx, qword [rsp + 0x2d0]
mov rcx, rbx
call method.lld::elf::ScriptLexer.next__
mov rsi, qword [sym.liblldELF.dll_lld::elf::config]
mov rax, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x118]
cmp byte [rsi + 0x439], 0
jne 0x28ca9b280
mov qword [rsp + 0x108], rdx
mov rcx, rbx
lea rdx, [rsp + 0x100]
mov qword [rsp + 0x100], rax
call fcn.28ca955a0
mov rdx, rbx
lea rcx, [rsi + 0x348]
call method.llvm::SmallVectorTemplateBase_llvm::StringRef__true_.push_back_llvm::StringRef_
lea rcx, [rsp + 0x230]
lea rdx, [0x28cbd1a62]
call fcn.28cb51010
movaps xmm0, xmmword [rsp + 0x230]
movaps xmmword [rsp + 0x110], xmm0
jmp 0x28ca99a27
lea rdx, str.SECTIONS
mov rcx, r13
call fcn.28cb51010
movaps xmm1, xmmword [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rdi
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
movaps xmmword [rsp + 0x110], xmm1
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca9c17d
lea rdx, [0x28cbd1d2d]
mov rcx, rdi
call fcn.28cb51010
movaps xmm2, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm2
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
lea rax, [rsp + 0x138]
mov qword [rsp + 0x128], rax
xor eax, eax
mov qword [rsp + 0x130], rax
call fcn.28ca716d8
test rax, rax
jne 0x28ca9bd4f
lea rcx, [rsp + 0x230]
lea rdx, [0x28cbd1cfc]
call fcn.28cb51010
lea rbx, [rsp + 0x110]
movaps xmm6, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm6
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
test al, al
jne 0x28ca9bd4f
mov rdx, qword [rsp + 0x2d0]
mov rcx, rbx
call method.lld::elf::ScriptLexer.next__
lea rsi, [rsp + 0x230]
lea rdx, str.OVERLAY
mov r12, qword [rsp + 0x110]
mov r13, qword [rsp + 0x118]
mov rcx, rsi
lea rdi, [rsp + 0x1f0]
call fcn.28cb51010
movaps xmm0, xmmword [rsp + 0x230]
mov rdx, rbx
mov rcx, rdi
mov qword [rsp + 0x1f0], r12
mov qword [rsp + 0x1f8], r13
movaps xmmword [rsp + 0x110], xmm0
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca9bc9d
xor eax, eax
lea rdi, [rsp + 0x168]
mov ecx, 6
rep stosd dword [rdi], eax
lea rdx, [0x28cbd1cc5]
xor eax, eax
mov rcx, rsi
mov qword [rsp + 0x180], rax
call fcn.28cb51010
movaps xmm3, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm3
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
test al, al
je 0x28ca9b499
lea rbx, [rsp + 0x230]
lea rax, [0x28cb7fed0]
xor r15d, r15d
mov qword [rsp + 0x248], rax
mov rcx, rbx
lea rax, [0x28cb7feb0]
lea rdx, [rsp + 0x168]
mov qword [rsp + 0x230], r15
mov qword [rsp + 0x238], r15
mov qword [rsp + 0x240], rax
call method.std::function_lld::elf.ExprValue____::swap_std::function_lld::elf::ExprValue_____
mov rcx, rbx
call method.std::_Function_base._Function_base__
jmp 0x28ca9b4fd
lea rbx, [rsp + 0x230]
mov rdx, qword [rsp + 0x2d0]
mov rcx, rbx
call fcn.28ca9fcb0
mov rdx, rbx
lea rcx, [rsp + 0x168]
call fcn.28cb8e7d0
mov rcx, rbx
call method.std::_Function_base._Function_base__
lea rdx, [0x28cbd1cc5]
mov rcx, rbx
call fcn.28cb51010
movaps xmm4, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x110]
movaps xmmword [rsp + 0x110], xmm4
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
lea rcx, [rsp + 0x230]
lea rdx, [0x28cbd20e0]
call fcn.28cb51010
movaps xmm5, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x110]
movaps xmmword [rsp + 0x110], xmm5
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
test al, al
je 0x28ca9b551
mov rdx, qword [rsp + 0x2d0]
lea rcx, [rsp + 0x188]
call fcn.28ca98970
jmp 0x28ca9b582
lea rax, [0x28cb7fc40]
xor r14d, r14d
mov qword [rsp + 0x1a0], rax
lea rax, [0x28cb7fc20]
mov qword [rsp + 0x188], r14
mov qword [rsp + 0x190], r14
mov qword [rsp + 0x198], rax
lea rcx, [rsp + 0x230]
lea rdx, [0x28cbd1d2d]
call fcn.28cb51010
movaps xmm6, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x110]
movaps xmmword [rsp + 0x110], xmm6
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
lea rax, [rsp + 0x148]
xor r13d, r13d
xor edi, edi
mov qword [rsp + 0x138], rax
lea rbp, [0x28cbd1cfc]
mov qword [rsp + 0x140], r13
call fcn.28ca716d8
test rax, rax
jne 0x28ca9b956
lea rcx, [rsp + 0x230]
mov rdx, rbp
call fcn.28cb51010
movaps xmm0, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x110]
movaps xmmword [rsp + 0x110], xmm0
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
test al, al
jne 0x28ca9b956
mov rax, qword [sym.liblldELF.dll_lld::elf::script]
mov rdx, qword [rsp + 0x2d0]
lea rcx, [rsp + 0x230]
mov rsi, qword [rax]
call method.lld::elf::ScriptLexer.getCurrentLocation_abi:cxx11___
lea rbx, [rsp + 0x110]
mov rdx, qword [rsp + 0x2d0]
mov r13, qword [rsp + 0x230]
mov rcx, rbx
mov r12, qword [rsp + 0x238]
call method.lld::elf::ScriptLexer.next__
lea r8, [rsp + 0x100]
mov rdx, rbx
mov rcx, rsi
mov qword [rsp + 0x100], r13
mov qword [rsp + 0x108], r12
call method.lld::elf::LinkerScript.createOutputSection_llvm::StringRef__llvm::StringRef_
mov rbx, rax
lea rcx, [rsp + 0x230]
call fcn.28ca71ec0
mov byte [rbx + 0x194], 1
lea rcx, [rsp + 0x1c8]
lea rdx, [0x28cbd1d2d]
call fcn.28cb51010
movups xmm1, xmmword [rsp + 0x1c8]
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x110]
movaps xmmword [rsp + 0x110], xmm1
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
lea r14, [rsp + 0x230]
call fcn.28ca716d8
mov rsi, rax
test rax, rax
jne 0x28ca9b7df
mov rdx, rbp
mov rcx, r14
call fcn.28cb51010
movaps xmm2, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x110]
movaps xmmword [rsp + 0x110], xmm2
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
test al, al
jne 0x28ca9b7df
lea rcx, [rsp + 0x158]
lea rdx, str.INPUT_SECTION_FLAGS
call fcn.28cb51010
movups xmm3, xmmword [rsp + 0x158]
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x110]
movaps xmmword [rsp + 0x110], xmm3
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
xor r12d, r12d
test al, al
je 0x28ca9b79a
mov rdx, qword [rsp + 0x2d0]
lea rcx, [rsp + 0xc0]
call fcn.28ca9cfc0
mov rsi, qword [rsp + 0xc0]
mov r12, qword [rsp + 0xc8]
lea r13, [rsp + 0x110]
mov rdx, qword [rsp + 0x2d0]
lea r15, [rbx + 0x100]
mov rcx, r13
call method.lld::elf::ScriptLexer.next__
mov rcx, qword [rsp + 0x2d0]
mov r9, r12
mov r8, rsi
mov rdx, r13
call fcn.28ca9d5e0
mov rdx, rax
mov rcx, r15
call method.llvm::SmallVectorTemplateBase_lld::elf::SectionCommand__true_.push_back_lld::elf::SectionCommand_
jmp 0x28ca9b6ec
lea rsi, [rsp + 0x148]
mov rdx, qword [rsp + 0x2d0]
mov rcx, rsi
call fcn.28ca9dd50
lea rcx, [rbx + 0x110]
cmp rcx, rsi
je 0x28ca9b821
cmp dword [rsp + 0x150], 0
jne 0x28ca9b819
xor r11d, r11d
mov dword [rbx + 0x118], r11d
jmp 0x28ca9b821
mov rdx, rsi
call method.llvm::SmallVectorImpl_llvm::StringRef_.assignRemote_llvm::SmallVectorImpl_llvm::StringRef__
lea rcx, [rsp + 0x148]
lea rsi, [rsp + 0x1f0]
call method.llvm::SmallVectorImpl_llvm::StringRef_.SmallVectorImpl__
lea rdx, [rsp + 0x168]
mov rcx, rsi
lea r12, [rbx + 0x80]
call fcn.28cb8e760
mov rcx, rsi
mov rdx, r12
call method.std::function_lld::elf.ExprValue____::swap_std::function_lld::elf::ExprValue_____
mov rcx, rsi
call method.std::_Function_base._Function_base__
test rdi, rdi
je 0x28ca9b8a7
lea rax, [0x28cb7fca0]
xor r12d, r12d
mov qword [rsp + 0x230], rdi
lea rdx, [rbx + 0xc0]
mov qword [rsp + 0x248], rax
lea rax, [0x28cb7fc70]
lea rsi, [rsp + 0x230]
mov qword [rsp + 0x238], r12
mov qword [rsp + 0x240], rax
jmp 0x28ca9b918
lea rsi, [rsp + 0x230]
lea rdx, [rsp + 0x188]
mov rcx, rsi
lea rdi, [rbx + 0xc0]
call fcn.28cb8e760
mov rdx, rdi
mov rcx, rsi
xor edi, edi
call method.std::function_lld::elf.ExprValue____::swap_std::function_lld::elf::ExprValue_____
mov rcx, rsi
call method.std::_Function_base._Function_base__
lea rax, [0x28cb7fd10]
mov byte [rbx + 0x193], 1
lea rdx, [rsp + 0x168]
mov qword [rsp + 0x248], rax
lea rax, [0x28cb7fce0]
mov qword [rsp + 0x238], rdi
mov qword [rsp + 0x230], rbx
mov qword [rsp + 0x240], rax
mov rcx, rsi
call method.std::function_lld::elf.ExprValue____::swap_std::function_lld::elf::ExprValue_____
mov rcx, rsi
call method.std::_Function_base._Function_base__
lea rcx, [rsp + 0x138]
mov rdx, rbx
call method.llvm::SmallVectorTemplateBase_lld::elf::SectionCommand__true_.push_back_lld::elf::SectionCommand_
lea rdi, [rbx + 8]
jmp 0x28ca9b5df
lea rsi, [rsp + 0x230]
lea rdx, [rsp + 0x138]
mov rcx, rsi
call fcn.28cb34080
lea rdx, [rsp + 0x168]
lea rcx, [rsp + 0x240]
call fcn.28cb8e760
lea rdi, [rsp + 0x1a8]
mov ecx, 6
xor eax, eax
xor r10d, r10d
rep stosd dword [rdi], eax
mov ecx, 0x30
mov qword [rsp + 0x1c0], r10
call sub.libstdc_6.dll_operator_new_unsigned_long_long_
mov esi, dword [rsp + 0x238]
lea rdi, [rax + 0x10]
xor r9d, r9d
mov rbx, rax
mov qword [rax], rdi
mov qword [rax + 8], r9
test esi, esi
je 0x28ca9ba3a
mov rdx, qword [rsp + 0x230]
lea rax, [rsp + 0x240]
cmp rdx, rax
je 0x28ca9b9ff
mov qword [rbx], rdx
mov edx, dword [rsp + 0x23c]
xor r8d, r8d
mov dword [rbx + 8], esi
mov dword [rbx + 0xc], edx
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x238], r8
jmp 0x28ca9ba3a
xor ecx, ecx
mov edx, esi
mov dword [rbx + 8], ecx
mov rcx, rbx
call method.llvm::SmallVectorTemplateBase_lld::elf::SectionCommand__true_.grow_unsigned_long_long_
mov rcx, qword [rsp + 0x230]
mov eax, dword [rsp + 0x238]
lea rdx, [rcx + rax*8]
cmp rcx, rdx
je 0x28ca9ba2e
mov r8, qword [rbx]
call fcn.28cb42ef0
xor edx, edx
mov dword [rbx + 8], esi
mov dword [rsp + 0x238], edx
lea rdx, [rsp + 0x240]
mov rcx, rdi
lea rsi, [rsp + 0x230]
call fcn.28cb8e6b0
lea rax, [0x28cb7fe20]
mov rcx, rdx
mov qword [rsp + 0x1a8], rbx
mov qword [rsp + 0x1c0], rax
lea rax, [0x28cb7fd60]
mov qword [rsp + 0x1b8], rax
call method.std::_Function_base._Function_base__
mov rcx, rsi
call method.llvm::SmallVectorImpl_lld::elf::SectionCommand_.SmallVectorImpl__
mov rdx, qword [rsp + 0x2d0]
lea rcx, [rsp + 0x1c8]
call method.lld::elf::ScriptLexer.getCurrentLocation_abi:cxx11___
jmp 0x28ca9bae6
call method.llvm::SpecificBumpPtrAllocator_lld::elf::SymbolAssignment__lld::getSpecificAllocSingleton_lld::elf.SymbolAssignment___
mov rcx, rax
mov r8d, 8
mov edx, 0x98
call method.llvm::BumpPtrAllocatorImpl_llvm::MallocAllocator__4096ull__4096ull__128ull_.Allocate_unsigned_long_long__unsigned_long_long_
lea rdx, [rsp + 0x1c8]
lea rcx, [rsp + 0x230]
mov rbx, rax
call fcn.28ca71e48
lea rdx, [rsp + 0x1a8]
lea rcx, [rsp + 0x1f0]
call fcn.28cb8e760
lea rcx, [rsp + 0x158]
lea rdx, [0x28cbd1eb8]
lea rdi, [rsp + 0x230]
lea rsi, [rsp + 0x1f0]
call fcn.28cb51010
mov qword [rsp + 0x20], rdi
xor r9d, r9d
mov r8, rsi
movups xmm4, xmmword [rsp + 0x158]
lea rdx, [rsp + 0x110]
mov rcx, rbx
movaps xmmword [rsp + 0x110], xmm4
call fcn.28cafab00
mov rcx, rsi
call method.std::_Function_base._Function_base__
mov rcx, rdi
call fcn.28ca71ec0
lea rcx, [rsp + 0x138]
mov rdx, rbx
call method.llvm::SmallVectorTemplateBase_lld::elf::SectionCommand__true_.push_back_lld::elf::SectionCommand_
lea rcx, [rsp + 0x1c8]
lea rdi, [rsp + 0x128]
call fcn.28ca71ec0
lea rcx, [rsp + 0x1a8]
call method.std::_Function_base._Function_base__
lea rcx, [rsp + 0x188]
call method.std::_Function_base._Function_base__
lea rcx, [rsp + 0x168]
call method.std::_Function_base._Function_base__
mov rbx, qword [rsp + 0x138]
mov eax, dword [rsp + 0x140]
lea rsi, [rbx + rax*8]
jmp 0x28ca9bc86
mov rdx, qword [rbx]
mov rcx, rdi
call method.llvm::SmallVectorTemplateBase_lld::elf::SectionCommand__true_.push_back_lld::elf::SectionCommand_
add rbx, 8
cmp rsi, rbx
jne 0x28ca9bc77
lea rcx, [rsp + 0x138]
call method.llvm::SmallVectorImpl_lld::elf::SectionCommand_.SmallVectorImpl__
jmp 0x28ca9b334
lea rdx, str.INCLUDE
mov rcx, rsi
call fcn.28cb51010
movaps xmm5, xmmword [rsp + 0x230]
mov rdx, rbx
mov rcx, rdi
mov qword [rsp + 0x1f0], r12
mov qword [rsp + 0x1f8], r13
movaps xmmword [rsp + 0x110], xmm5
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca9bced
mov rcx, qword [rsp + 0x2d0]
call fcn.28ca96750
jmp 0x28ca9b334
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
mov qword [rsp + 0x110], r12
mov qword [rsp + 0x118], r13
call fcn.28ca98a00
mov rdx, rax
test rax, rax
jne 0x28ca9bd3d
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x110]
mov qword [rsp + 0x110], r12
mov qword [rsp + 0x118], r13
call fcn.28ca9e2e0
mov rdx, rax
lea rcx, [rsp + 0x128]
call method.llvm::SmallVectorTemplateBase_lld::elf::SectionCommand__true_.push_back_lld::elf::SectionCommand_
jmp 0x28ca9b334
mov rax, qword [sym.liblldELF.dll_lld::elf::script]
mov esi, dword [rsp + 0x130]
mov rdi, qword [rsp + 0x128]
mov rbx, qword [rax]
shl rsi, 3
lea rbp, [rdi + rsi]
mov rax, rdi
cmp byte [rbx + 0x52], 0
je 0x28ca9bda1
mov edx, dword [rbx + 0x38]
sar rsi, 3
lea rcx, [rbx + 0x30]
add rdx, rsi
call method.llvm::SmallVectorImpl_lld::elf::SectionCommand_.reserve_unsigned_long_long_
jmp 0x28ca9bda8
mov rdx, qword [rax]
cmp dword [rdx], 1
jne 0x28ca9bd9d
mov byte [rdx + 0x196], 0
add rax, 8
cmp rbp, rax
jne 0x28ca9bd8e
jmp 0x28ca9bd79
cmp rbp, rdi
je 0x28ca9bdc3
mov edx, dword [rbx + 0x38]
mov rax, qword [rbx + 0x30]
mov rcx, rdi
lea r8, [rax + rdx*8]
mov rdx, rbp
call fcn.28cb42ef0
add dword [rbx + 0x38], esi
mov rcx, qword [rsp + 0x2d0]
call method.lld::elf::ScriptLexer.atEOF__
mov esi, eax
test al, al
jne 0x28ca9be5f
lea rbx, [rsp + 0x230]
lea rdx, str.INSERT
mov rcx, rbx
call fcn.28cb51010
movaps xmm1, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x110]
movaps xmmword [rsp + 0x110], xmm1
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
mov edi, eax
test al, al
je 0x28ca9be5f
lea rdx, str.AFTER
mov rcx, rbx
call fcn.28cb51010
movaps xmm2, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x110]
movaps xmmword [rsp + 0x110], xmm2
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
mov ebp, eax
test al, al
jne 0x28ca9bf45
jmp 0x28ca9be72
mov rax, qword [sym.liblldELF.dll_lld::elf::script]
mov rax, qword [rax]
mov byte [rax + 0x50], 1
jmp 0x28ca9c120
lea rcx, [rsp + 0x230]
lea rdx, str.BEFORE
call fcn.28cb51010
movaps xmm3, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x110]
movaps xmmword [rsp + 0x110], xmm3
call method.lld::elf::ScriptLexer.consume_llvm::StringRef_
test al, al
jne 0x28ca9bf45
lea rcx, [rsp + 0x1f0]
lea rdx, [0x28cbd2525]
call fcn.28cb46380
mov rdx, qword [rsp + 0x2d0]
lea rcx, [rsp + 0x110]
call method.lld::elf::ScriptLexer.next__
lea rax, str.expected_AFTER_BEFORE__but_got_
lea rbx, [rsp + 0x230]
mov word [rsp + 0x1e8], 0x503
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0x110]
lea rdx, [rsp + 0x1c8]
mov rcx, rbx
lea r8, [rsp + 0x1f0]
mov qword [rsp + 0x1d8], rax
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0x1e0], rax
call method.llvm::Twine.concat_llvm::Twine_const__const
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
call method.lld::elf::ScriptLexer.setError_llvm::Twine_const_
mov rdx, qword [rsp + 0x2d0]
lea rcx, [rsp + 0x110]
call method.lld::elf::ScriptLexer.next__
lea rax, [rsp + 0x1b8]
mov rbx, qword [rsp + 0x128]
movups xmm6, xmmword [rsp + 0x110]
lea r13, [rsp + 0x110]
mov qword [rsp + 0x1a8], rax
xor eax, eax
lea r14, [rsp + 0x1a8]
mov qword [rsp + 0x1b0], rax
mov eax, dword [rsp + 0x130]
lea r12, [rbx + rax*8]
cmp r12, rbx
je 0x28ca9bfcb
mov rax, qword [rbx]
cmp dword [rax], 1
je 0x28ca9bfb2
add rbx, 8
jmp 0x28ca9bf9f
movups xmm4, xmmword [rax + 0x10]
mov rdx, r13
mov rcx, r14
movaps xmmword [rsp + 0x110], xmm4
call method.llvm::SmallVectorTemplateBase_llvm::StringRef__true_.push_back_llvm::StringRef_
jmp 0x28ca9bfac
cmp dword [rsp + 0x1b0], 0
je 0x28ca9c113
mov rax, qword [sym.liblldELF.dll_lld::elf::script]
lea rdx, [rsp + 0x1a8]
lea rcx, [rsp + 0x230]
mov rbx, qword [rax]
call fcn.28cb33ea0
mov edx, dword [rbx + 0xc8]
mov eax, dword [rbx + 0xcc]
mov byte [rsp + 0x240], bpl
mov rcx, qword [rbx + 0xc0]
movups xmmword [rsp + 0x248], xmm6
lea r8, [rdx + 1]
cmp rax, r8
jb 0x28ca9c031
lea rbp, [rsp + 0x230]
jmp 0x28ca9c0d6
lea rax, [rsp + 0x230]
or rbp, 0xffffffffffffffff
cmp rax, rcx
jb 0x28ca9c065
imul rdx, rdx, 0x28
add rdx, rcx
cmp rax, rdx
jae 0x28ca9c065
movabs rbp, 0xcccccccccccccccd
sub rax, rcx
mov esi, edi
sar rax, 3
imul rbp, rax
lea rax, [rsp + 0x188]
lea r13, [rbx + 0xc0]
mov r9d, 0x28
mov qword [rsp + 0x20], rax
lea r12, [rbx + 0xd0]
mov rcx, r13
mov rdx, r12
call fcn.28ca71c10
mov rdx, rax
mov rcx, r13
mov rdi, rax
call method.llvm::SmallVectorTemplateBase_lld::elf::InsertCommand__false_.moveElementsForGrow_lld::elf::InsertCommand_
mov rcx, qword [rbx + 0xc0]
mov r13, qword [rsp + 0x188]
cmp r12, rcx
je 0x28ca9c0b8
call fcn.28ca79a80
mov qword [rbx + 0xc0], rdi
mov dword [rbx + 0xcc], r13d
test sil, sil
je 0x28ca9c024
imul rbp, rbp, 0x28
add rbp, rdi
mov esi, dword [rbx + 0xc8]
mov rdx, rbp
imul rsi, rsi, 0x28
add rsi, qword [rbx + 0xc0]
mov rcx, rsi
call fcn.28cb33ea0
mov al, byte [rbp + 0x10]
movups xmm5, xmmword [rbp + 0x18]
lea rcx, [rsp + 0x230]
mov byte [rsi + 0x10], al
movups xmmword [rsi + 0x18], xmm5
inc dword [rbx + 0xc8]
call method.llvm::SmallVectorImpl_llvm::StringRef_.SmallVectorImpl__
lea rcx, [rsp + 0x1a8]
call method.llvm::SmallVectorImpl_llvm::StringRef_.SmallVectorImpl__
lea rcx, [rsp + 0x128]
call method.llvm::SmallVectorImpl_lld::elf::SectionCommand_.SmallVectorImpl__
jmp 0x28ca98f38
lea rdx, str.TARGET
mov rcx, r13
call fcn.28cb51010
movaps xmm6, xmmword [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rdi
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
movaps xmmword [rsp + 0x110], xmm6
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca9c310
lea rdx, [0x28cbd1a60]
mov rcx, rdi
lea rsi, [rsp + 0x1c8]
call fcn.28cb51010
movaps xmm0, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm0
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
mov rdx, qword [rsp + 0x2d0]
mov rcx, rbx
call method.lld::elf::ScriptLexer.next__
mov rdx, rbx
mov rcx, rsi
call fcn.28ca955a0
lea rdx, [0x28cbd1a62]
mov rcx, rdi
call fcn.28cb51010
movaps xmm1, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm1
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
lea rdx, [0x28cbd25b8]
mov rcx, rdi
call fcn.28cb51010
movaps xmm2, xmmword [rsp + 0x230]
mov rdx, rbx
mov rcx, rsi
movaps xmmword [rsp + 0x110], xmm2
call method.llvm::StringRef.starts_with_llvm::StringRef__const
test al, al
je 0x28ca9c281
mov rax, qword [sym.liblldELF.dll_lld::elf::config]
mov byte [rax + 0x423], 0
jmp 0x28ca98f38
lea rdx, str.binary
mov rcx, rdi
call fcn.28cb51010
movups xmm3, xmmword [rsp + 0x1c8]
mov rdx, rbx
mov rcx, r13
movaps xmm4, xmmword [rsp + 0x230]
movaps xmmword [rsp + 0x1f0], xmm3
movaps xmmword [rsp + 0x110], xmm4
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca9c2d2
mov rax, qword [sym.liblldELF.dll_lld::elf::config]
mov byte [rax + 0x423], 1
jmp 0x28ca98f38
lea rax, str.unknown_target:
mov word [rsp + 0x250], 0x503
mov qword [rsp + 0x230], rax
mov rax, qword [rsp + 0x1c8]
mov qword [rsp + 0x240], rax
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0x248], rax
jmp 0x28ca9c427
lea rdx, str.VERSION
mov rcx, r13
call fcn.28cb51010
movaps xmm5, xmmword [rsp + 0x1f0]
mov rdx, rbx
mov rcx, rdi
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
movaps xmmword [rsp + 0x110], xmm5
call method.llvm::StringRef.equals_llvm::StringRef__const
test al, al
je 0x28ca9c3be
lea rdx, [0x28cbd1d2d]
mov rcx, rdi
call fcn.28cb51010
movaps xmm6, xmmword [rsp + 0x230]
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm6
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
mov rcx, qword [rsp + 0x2d0]
call fcn.28ca9de40
lea rdx, [0x28cbd1cfc]
mov rcx, rdi
call fcn.28cb51010
movaps xmm0, xmmword [rsp + 0x230]
mov rdx, rbx
movaps xmmword [rsp + 0x110], xmm0
mov rcx, qword [rsp + 0x2d0]
call method.lld::elf::ScriptLexer.expect_llvm::StringRef_
jmp 0x28ca98f38
mov rcx, qword [rsp + 0x2d0]
mov rdx, rbx
mov qword [rsp + 0x110], r12
mov qword [rsp + 0x118], rbp
call fcn.28ca98a00
mov rdx, rax
test rax, rax
je 0x28ca9c3fe
mov rax, qword [sym.liblldELF.dll_lld::elf::script]
mov rcx, qword [rax]
add rcx, 0x30
call method.llvm::SmallVectorTemplateBase_lld::elf::SectionCommand__true_.push_back_lld::elf::SectionCommand_
jmp 0x28ca98f38
lea rax, str.unknown_directive:
mov qword [rsp + 0x240], r12
mov word [rsp + 0x250], 0x503
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x248], rbp
mov rcx, qword [rsp + 0x2d0]
mov rdx, rdi
call method.lld::elf::ScriptLexer.setError_llvm::Twine_const_
jmp 0x28ca98f38
movaps xmm6, xmmword [rsp + 0x270]
add rsp, 0x288
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret