Function at 0x44e300
Capabilities:
Encrypt data using speck

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x148
test byte [rdx + 0x40], 0x40
mov rbp, rcx
mov r12, rdx
jne 0x44cf4d
mov rax, qword [rcx + 8]
mov qword [rsp + 0x50], rax
mov rax, qword [rax + 8]
mov rax, qword [rax + 0x370]
mov rsi, rax
mov qword [rsp + 0x90], rax
mov rax, qword [rdx + 0xf8]
test byte [rax + 0xc85], 0x40
lea rdi, [rax + 0x60]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x98], rdi
mov rdi, rax
jne 0x44cf70
mov rax, qword [rsp + 0x60]
mov eax, dword [rax + 0x8c]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x90]
mov rax, qword [rax + 0x130]
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0xa8]
test rax, rax
mov qword [rsp + 0x70], rax
jne 0x44cb4d
mov r8, qword [rsp + 0x58]
test r8, r8
jne 0x44d7c9
mov rsi, qword [rsp + 0x58]
mov rax, qword [rsp + 0x70]
mov r14, qword [rbp + 0x58]
mov r15, qword [rbp + 0x60]
shl rsi, 5
add rsi, rax
cmp rax, rsi
jae 0x44d0d3
mov rax, qword [0x0050ae40]
mov rbx, qword [rsp + 0x70]
mov r13, r12
mov dword [rsp + 0x68], 0
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x78], rax
add rax, 0x250
mov qword [rsp + 0x80], rax
mov rax, qword [0x0050ae40]
mov qword [rsp + 0x40], rax
lea rdi, [rax + 0x128]
jmp 0x44cbe7
movzx eax, byte [rbx + 0x14]
shr al, 4
test al, al
je 0x44cbfe
mov qword [r15], 0
add rbx, 0x20
add r14, 4
add r15, 8
cmp rsi, rbx
jbe 0x44d0d0
mov dword [r14], 0xffffffff
mov rax, qword [r13 + 0xf8]
test byte [rax + 0xc85], 0x40
jne 0x44cbc0
mov edx, dword [rbx + 0x18]
test edx, edx
jne 0x44cfa0
mov r12, qword [rsp + 0x40]
mov qword [rsp + 0x118], rdi
mov rax, rdi
mov qword [r15], rax
mov rdx, qword [rsp + 0x118]
lea rax, [r12 + 0x128]
cmp rdx, rax
je 0x44cbd2
movzx eax, byte [rbx + 0x14]
and eax, 0xf
cmp al, 3
je 0x44cbd2
mov rcx, qword [rbp]
mov eax, dword [rcx]
and eax, 0x18000
cmp eax, 0x18000
je 0x44cbd2
movzx eax, byte [rcx + 2]
and eax, 6
cmp al, 6
je 0x44cbd2
mov eax, dword [rbx + 0x18]
sub eax, 1
cmp eax, 0xfffffefe
ja 0x44cc96
mov r8, qword [rdx + 0x70]
test r8, r8
je 0x44d3a0
mov rax, qword [r8 + 0x18]
test rax, rax
je 0x44d0b0
cmp qword [rax + 0x20], r8
setne al
movzx eax, al
test eax, eax
jne 0x44cbd2
mov rax, qword [rsp + 0x60]
mov r8d, dword [rbx + 0x10]
mov rcx, r13
mov edx, dword [rax + 0x88]
call fcn.0042c690
test rax, rax
mov qword [rsp + 0x48], rax
je 0x44d331
mov rdx, qword [rbp]
mov eax, dword [rdx]
and eax, 0x18000
cmp eax, 0x10000
je 0x44d2c0
movzx eax, byte [rdx + 2]
and eax, 6
jne 0x44d070
mov rax, qword [rsp + 0x118]
test byte [rax + 0x2a], 0x80
je 0x44cd10
movzx eax, byte [rdx]
and eax, 3
cmp al, 2
je 0x44cd10
mov rax, qword [r13 + 8]
mov rdx, qword [rsp + 0x48]
mov rcx, r13
call qword [rax + 0x220]
test eax, eax
jne 0x44cbd2
movzx eax, byte [rbx + 0x14]
and eax, 0xf
cmp al, 4
je 0x44d087
mov r9d, dword [rsp + 0x68]
test r9d, r9d
jne 0x44cda7
add qword [rbp + 0x70], 1
xor edx, edx
test byte [r13 + 0x46], 8
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], 0
lea r8, [rsp + 0x120]
mov qword [rsp + 0x120], 0
mov qword [rsp + 0x128], 0
mov byte [rsp + 0x134], 4
mov dword [rsp + 0x138], 0xfffffff1
jne 0x44cd86
mov rdx, qword [r13]
lea r9, [r12 + 0x250]
mov qword [rsp + 0x20], 0
mov rcx, rbp
call fcn.0043ec70
test eax, eax
je 0x44d331
mov rax, qword [rbx]
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x120], rax
mov rax, qword [rbx + 8]
mov qword [rsp + 0x128], rax
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x130], rax
mov rax, qword [rbx + 0x18]
mov qword [rsp + 0x138], rax
mov rax, qword [rsp + 0x118]
mov rdx, qword [rax + 0x70]
call fcn.00434770
cmp eax, 0xfffffeff
mov dword [rsp + 0x138], eax
je 0x44d331
mov rcx, qword [rbp]
mov r9, qword [rsp + 0x118]
movzx edx, byte [rcx]
mov rax, qword [r9 + 0x68]
add rax, qword [rsp + 0x120]
and edx, 3
cmp dl, 2
mov qword [rsp + 0x120], rax
je 0x44ce52
mov rdx, qword [r9 + 0x70]
add rax, qword [rdx + 0x30]
movzx edx, byte [rsp + 0x134]
mov r8d, edx
mov qword [rsp + 0x120], rax
and r8d, 0xf
cmp r8b, 6
je 0x44d2f0
mov rax, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
lea r8, [rsp + 0x120]
mov rcx, rbp
mov r12d, dword [rax + 0xb0]
mov qword [rsp + 0x20], 0
call fcn.0043ec70
test eax, eax
je 0x44d331
cmp eax, 1
je 0x44d0a0
mov dword [rsp + 0x68], 1
jmp 0x44cbd2
mov rax, qword [rbp + 0x28]
lea r8, [rsp + 0x110]
mov rdx, r15
mov rcx, r12
mov qword [rsp + 0x110], rax
call fcn.004617f0
test eax, eax
je 0x44d331
mov eax, dword [r15 + 0x28]
test al, 4
jne 0x44d3d0
mov rax, qword [r13 + 0x280]
test rax, rax
je 0x44cef3
mov r9, qword [rsp + 0x110]
mov r8, r15
mov rdx, qword [rbp]
mov rcx, qword [rsp + 0x50]
call rax
test eax, eax
jne 0x44cf40
movzx eax, word [r15 + 0x2c]
shr ax, 7
and eax, 7
cmp al, 2
je 0x44d89c
jbe 0x44d80c
cmp al, 3
je 0x44d75f
cmp al, 6
jne 0x44d8d1
mov r9, qword [rsp + 0x110]
mov rdx, qword [rbp]
mov r8, r15
mov rcx, qword [rsp + 0x50]
call fcn.00457d90
test eax, eax
je 0x44d331
nop
mov r15, qword [r15 + 0x18]
test r15, r15
jne 0x44d171
mov eax, 1
add rsp, 0x148
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsi + 0x320]
xor edx, edx
mov qword [rsp + 0x88], 0
movzx ecx, byte [rax + 5]
mov rax, qword [rdi + 0x80]
div rcx
mov qword [rsp + 0x58], rax
jmp 0x44cb12
cmp edx, 0xfffffff1
je 0x44d050
cmp edx, 0xfffffff2
jne 0x44cfc5
mov r12, qword [0x0050ae40]
mov qword [rsp + 0x118], r12
mov rax, r12
jmp 0x44cc19
mov rcx, r13
call fcn.0042f3d0
test rax, rax
mov qword [rsp + 0x118], rax
je 0x44cc09
movzx edx, word [rax + 0x2c]
mov r12, qword [0x0050ae40]
and dx, 0x380
cmp dx, 0x100
jne 0x44cc19
movzx edx, byte [rbx + 0x14]
mov r12, qword [rsp + 0xa0]
and edx, 0xf
cmp dl, 3
je 0x44cc19
mov rax, qword [rax + 0xe8]
mov r9, qword [rbx]
lea rdx, [rsp + 0x118]
mov rcx, qword [rsp + 0x50]
mov r8, qword [rax + 0xe0]
call fcn.00466a90
mov r12, qword [0x0050ae40]
mov qword [rbx], rax
mov rax, qword [rsp + 0x118]
jmp 0x44cc19
mov rax, qword [rsp + 0x80]
mov r12, qword [rsp + 0x78]
mov qword [rsp + 0x118], rax
jmp 0x44cc19
cmp al, 4
je 0x44ccf6
movzx eax, byte [rbx + 0x14]
and eax, 0xf
cmp al, 4
jne 0x44cd1f
test byte [r13 + 0x46], 8
jne 0x44cbd2
add qword [rbp + 0x70], 1
jmp 0x44cda7
mov dword [r14], r12d
jmp 0x44ce8d
mov rax, qword [rsp + 0x50]
cmp qword [rax + 0x90], r8
setne al
movzx eax, al
jmp 0x44cc8e
mov r12, r13
mov rax, qword [rsp + 0x90]
mov ecx, 8
mov edx, 0x20
mov r15, qword [r12 + 0x88]
mov rax, qword [rax + 0x320]
cmp byte [rax + 0xa], 0x20
setne al
cmove edx, ecx
mov ecx, 0xff
movzx eax, al
mov r13d, edx
mov edx, 0xffffffff
lea rax, [rax*4 + 4]
cmove rdx, rcx
test r15, r15
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0xa0], rax
mov rax, qword [r12 + 0xf8]
mov rax, qword [rax + 0x2f8]
mov qword [rsp + 0x78], rax
je 0x44cf4d
mov rax, qword [0x0050ae40]
mov dword [rsp + 0x40], r13d
mov r13, qword [rsp + 0x90]
add rax, 0x250
mov qword [rsp + 0x80], rax
mov qword [rsp + 0xb8], rax
test byte [r15 + 0x2c], 2
je 0x44cf40
mov rdx, qword [rbp]
mov eax, dword [r15 + 0x28]
test byte [rdx + 1], 0x20
jne 0x44d19e
mov ecx, eax
and ecx, 0x2100000
cmp ecx, 0x2000000
je 0x44d221
test ah, 1
je 0x44cf40
mov rcx, qword [r15 + 0x40]
test rcx, rcx
jne 0x44d1b8
test al, 4
je 0x44cf40
test eax, 0x100000
jne 0x44cf40
mov rdx, qword [r15 + 0xe8]
mov rdx, qword [rdx + 0x48]
test rdx, rdx
je 0x44ce9a
test byte [r13 + 0x3cf], 2
mov qword [rsp + 0x110], rdx
je 0x44cec5
mov r8, qword [r15 + 0x48]
cmp rcx, r8
jbe 0x44cec5
test r8, r8
je 0x44cec5
mov rcx, qword [rbp + 0x28]
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x28]
mov qword [rsp + 0x110], rax
mov eax, dword [r15 + 0x28]
jmp 0x44cec5
mov rax, qword [r15 + 0xe8]
mov rbx, qword [r15 + 0x70]
mov esi, dword [rax + 0x2c]
movzx eax, byte [rdx]
and eax, 3
cmp al, 2
je 0x44d24a
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elflink.c
mov edx, 0x2a4d
call fcn.0040a300
mov edx, esi
cmp qword [rsp + 0x58], rdx
jbe 0x44d350
mov rax, qword [r12 + 0xf8]
test byte [rax + 0xc85], 0x40
jne 0x44d338
mov rax, rdx
shl rax, 5
add rax, qword [rsp + 0x70]
movzx ecx, byte [rax + 0x14]
and ecx, 0xf
cmp cl, 3
je 0x44dd17
mov rcx, qword [rbp + 0x58]
lea rsi, [rdx*4]
mov r14d, dword [rcx + rdx*4]
cmp r14d, 0xffffffff
je 0x44e080
mov rax, qword [rbx + 0xe8]
mov dword [rax + 0x2c], r14d
mov eax, dword [r15 + 0x28]
jmp 0x44d19e
mov rcx, qword [rdx + 0x30]
mov rdx, qword [rsp + 0x48]
xor r9d, r9d
xor r8d, r8d
call fcn.0040eb60
test rax, rax
je 0x44cbd2
mov rdx, qword [rbp]
jmp 0x44ccd1
mov rcx, qword [rcx + 0x28]
mov rcx, qword [rcx + 0x170]
test rcx, rcx
je 0x44df80
sub rax, qword [rcx + 0x30]
mov qword [rsp + 0x120], rax
jmp 0x44ce52
lea rcx, str.error:__pB:_size_of_section__pA_is_not_multiple_of_address_size
mov r8, r15
mov rdx, r12
call fcn.0040a1e0
mov ecx, 0x11
call fcn.0040a380
xor eax, eax
jmp 0x44cf52
mov rax, qword [rbp + 0x60]
cmp qword [rax + rdx*8], 0
jne 0x44d26c
nop word [rax + rax]
mov rsi, rdx
sub rsi, qword [rsp + 0x88]
mov rax, qword [rsp + 0x78]
mov rdx, qword [rax + rsi*8]
movzx eax, byte [rdx + 0x18]
sub eax, 6
cmp al, 1
ja 0x44d37f
nop
mov rdx, qword [rdx + 0x28]
movzx eax, byte [rdx + 0x18]
sub eax, 6
cmp al, 1
jbe 0x44d370
mov rax, qword [rbx + 0xe8]
mov dword [rdx + 0x38], 0xfffffffe
mov dword [rax + 0x2c], 0xfffffffe
mov eax, dword [r15 + 0x28]
jmp 0x44d19e
movzx eax, byte [rcx + 7]
and eax, 0x60
cmp al, 0x60
jne 0x44cc77
mov rax, qword [rdx + 0xf8]
mov rdx, qword [rdx]
lea rcx, str.warning:___enable_non_contiguous_regions_discards_section___s_from__s_n
mov r8, qword [rax]
call fcn.0040a1e0
jmp 0x44cbd2
mov dword [rsp + 0x20], 0
mov r9, qword [rbp + 0x38]
mov rdx, r15
mov r8, qword [rbp + 0x30]
mov rcx, r12
call fcn.004448b0
test rax, rax
mov qword [rsp + 0x90], rax
je 0x44e062
mov rdx, qword [r15 + 0x40]
cmp qword [rsp + 0xa0], rdx
jae 0x44d453
mov rax, qword [r15]
lea rdi, str..ctors
mov ecx, 6
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
jne 0x44d792
mov rcx, qword [r15 + 0x70]
lea rdi, str..init_array
mov rsi, qword [rcx]
mov ecx, 0xc
repe cmpsb byte [rsi], byte [rdi]
jne 0x44d792
movzx eax, byte [rax + 6]
test al, al
je 0x44dfa0
cmp al, 0x2e
je 0x44dfa0
movzx ecx, word [r15 + 0x2c]
shr cx, 7
and ecx, 7
cmp cl, 7
je 0x44d480
mov eax, 1
shl rax, cl
test al, 0x4a
je 0x44d480
mov dword [rsp + 0x48], 0xffffffff
jmp 0x44d4b5
mov rax, qword [r15 + 0xf8]
mov rax, qword [rax + 8]
mov rax, qword [rax + 0x370]
mov rax, qword [rax + 0x250]
test rax, rax
je 0x44d4a7
mov rcx, r15
call rax
test eax, eax
jne 0x44d470
mov rcx, r15
call qword [r13 + 0x258]
mov dword [rsp + 0x48], eax
mov eax, dword [r15 + 0x90]
mov rdi, qword [rsp + 0x90]
mov rsi, rdi
lea rax, [rax + rax*2]
lea r10, [rdi + rax*8]
cmp rdi, r10
jae 0x44d95c
mov eax, dword [rsp + 0x48]
mov r14, r12
mov qword [rsp + 0xd0], r13
mov r12, rbp
mov rbp, r10
and eax, 1
mov dword [rsp + 0x68], eax
lea rax, [rsp + 0x118]
mov qword [rsp + 0xc0], rax
lea rax, [rsp + 0x120]
mov qword [rsp + 0xc8], rax
jmp 0x44d5bd
mov rax, qword [r14 + 0xf8]
test byte [rax + 0xc85], 0x40
mov rax, qword [r12 + 0x60]
lea rdi, [rax + rbx*8]
mov r9, qword [rdi]
je 0x44d545
test r9, r9
je 0x44d5dd
mov r8, rbx
mov rdx, qword [rsp + 0x98]
mov rcx, r14
shl r8, 5
add r8, qword [rsp + 0x70]
movzx r13d, byte [r8 + 0x14]
call fcn.0042cb60
mov qword [rsp + 0x118], rax
and r13d, 0xf
lea eax, [r13 - 8]
cmp eax, 1
jbe 0x44d657
cmp dword [rsp + 0x48], 0xffffffff
je 0x44d5b0
test rdi, rdi
je 0x44d5b0
mov rbx, qword [rdi]
mov rax, qword [rsp + 0x80]
cmp rbx, rax
je 0x44d5b0
test rbx, rbx
je 0x44d5b0
cmp qword [rbx + 0x70], rax
je 0x44dd3c
nop word [rax + rax]
add rsi, 0x18
cmp rbp, rsi
jbe 0x44d94e
mov r8, qword [rsi + 8]
movzx ecx, byte [rsp + 0x40]
mov rbx, r8
shr rbx, cl
test ebx, ebx
je 0x44d5b0
mov ebx, ebx
cmp qword [rsp + 0x58], rbx
ja 0x44d520
mov rax, rbx
sub rax, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x78]
mov rax, qword [rdi + rax*8]
test rax, rax
jne 0x44d604
jmp 0x44e153
mov rax, qword [rax + 0x28]
movzx edx, byte [rax + 0x18]
lea ecx, [rdx - 6]
cmp cl, 1
jbe 0x44d600
test byte [rax + 0x19], 3
movzx r13d, byte [rax + 0x60]
je 0x44d627
sub edx, 3
cmp dl, 1
jbe 0x44d865
movzx edi, byte [rax + 0x18]
lea edx, [rdi - 3]
lea rdi, [rax + 0x28]
cmp dl, 1
mov edx, 0
cmova rdi, rdx
mov rax, qword [rax + 8]
mov qword [rsp + 0x118], rax
lea eax, [r13 - 8]
cmp eax, 1
ja 0x44d57f
mov rax, qword [r12]
movzx eax, byte [rax]
and eax, 3
cmp al, 2
je 0x44d57f
xor eax, eax
cmp r13d, 9
mov rcx, qword [rsp + 0xc8]
sete al
mov r9, r12
mov r8, r14
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x28], rax
mov rdx, qword [r15 + 0x70]
mov rax, qword [r15 + 0x68]
add rax, qword [rdx + 0x30]
mov rdx, qword [rsp + 0xc0]
add rax, qword [rsi]
mov qword [rsp + 0x20], rax
call fcn.0043f750
test eax, eax
je 0x44d331
mov r13, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x120]
cmp r13, rbx
jbe 0x44d712
mov rax, rbx
shl rax, 5
add rax, qword [rsp + 0x70]
movzx edx, byte [rax + 0x14]
shr dl, 4
test dl, dl
je 0x44e1f4
mov rax, qword [r14 + 0xf8]
xor r13d, r13d
test byte [rax + 0xc85], 0x40
jne 0x44d719
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elflink.c
mov edx, 0x2117
call fcn.0040a300
mov rax, qword [r14 + 0xf8]
mov rax, qword [rax + 0x2f8]
sub rbx, r13
mov rdx, qword [rax + rbx*8]
movzx eax, byte [rdx + 0x18]
sub eax, 6
cmp al, 1
ja 0x44d741
mov rdx, qword [rdx + 0x28]
movzx eax, byte [rdx + 0x18]
sub eax, 6
cmp al, 1
jbe 0x44d732
mov rax, qword [0x0050ae40]
mov byte [rdx + 0x18], 3
mov qword [rdx + 0x30], rdi
add rax, 0x250
mov qword [rdx + 0x28], rax
jmp 0x44d5b0
mov r9, qword [rsp + 0x110]
mov rdx, qword [rbp]
mov r8, r15
mov rcx, qword [rsp + 0x50]
call fcn.00457fd0
test eax, eax
je 0x44d331
mov r15, qword [r15 + 0x18]
test r15, r15
jne 0x44d171
jmp 0x44cf4d
lea rdi, str..dtors
mov ecx, 6
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
jne 0x44d453
mov rcx, qword [r15 + 0x70]
lea rdi, str..fini_array
mov rsi, qword [rcx]
mov ecx, 0xc
repe cmpsb byte [rsi], byte [rdi]
jne 0x44d453
jmp 0x44d43f
mov rax, qword [rbp + 0x48]
mov rdx, qword [rsp + 0x98]
xor r9d, r9d
mov rcx, r12
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0x40]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0x50]
mov qword [rsp + 0x20], rax
call fcn.0042c7a0
test rax, rax
mov qword [rsp + 0x70], rax
jne 0x44cb4d
xor eax, eax
jmp 0x44cf52
cmp al, 1
jne 0x44d8d1
mov rdx, qword [rbp]
mov rcx, qword [rsp + 0x110]
mov r8, r15
mov rax, qword [r15 + 0xe8]
mov rdx, qword [rdx + 0x28]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x50]
lea r9, [rax + 0xe0]
add rdx, 0x100
call fcn.00469010
test eax, eax
je 0x44d331
mov r15, qword [r15 + 0x18]
test r15, r15
jne 0x44d171
jmp 0x44cf4d
mov rdx, qword [rax + 0x28]
test byte [rdx + 0x2a], 0x10
jne 0x44d627
mov rdx, qword [rdx + 0xf8]
test rdx, rdx
je 0x44d627
test byte [rdx + 0x42], 1
je 0x44d627
mov byte [rax + 0x18], 1
mov qword [rax + 0x28], rdx
xor edi, edi
jmp 0x44d63e
mov rax, qword [r15 + 0xe8]
mov rcx, qword [rsp + 0x50]
mov rdx, r15
mov r8, qword [rax + 0xe0]
call fcn.00466820
test eax, eax
je 0x44d331
mov r15, qword [r15 + 0x18]
test r15, r15
jne 0x44d171
jmp 0x44cf4d
test byte [r15 + 0x29], 0x80
jne 0x44cf40
mov r14, qword [rsp + 0x50]
mov rdi, qword [r15 + 0x68]
mov rdx, r15
mov rbx, qword [r15 + 0x40]
mov rcx, r14
call fcn.0040a030
mov esi, eax
imul rsi, rdi
test byte [r15 + 0x2b], 4
je 0x44e215
mov rax, qword [rsp + 0xa0]
sub rbx, rax
mov rdi, rax
jmp 0x44d924
test rbx, rbx
je 0x44cf40
add rsi, rdi
sub rbx, rdi
mov r8, rbx
add r8, qword [rsp + 0x110]
mov rdx, qword [r15 + 0x70]
mov r9, rsi
mov qword [rsp + 0x20], rdi
mov rcx, r14
call fcn.00412050
test eax, eax
jne 0x44d915
xor eax, eax
jmp 0x44cf52
mov r13, qword [rsp + 0xd0]
mov rbp, r12
mov r12, r14
mov rax, qword [rbp + 0x60]
mov r9, r15
mov r8, r12
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0xb0]
mov rdx, qword [rbp]
call rax
test eax, eax
je 0x44d331
mov rcx, qword [rbp]
movzx r10d, byte [rcx]
and r10d, 3
cmp eax, 2
je 0x44d9cb
cmp r10b, 2
je 0x44d9cb
test byte [rcx + 3], 0x40
je 0x44cecd
mov rax, qword [r15 + 0xe8]
mov r9, qword [r15 + 0x70]
mov rbx, qword [rsp + 0x90]
mov rsi, rax
mov qword [rsp + 0xd0], rax
mov rax, qword [r9 + 0xe8]
mov rdi, rax
mov qword [rsp + 0x108], rax
mov eax, dword [r15 + 0x90]
mov edx, dword [rdi + 0x60]
lea rax, [rax + rax*2]
lea rax, [rbx + rax*8]
mov rbx, qword [rsi + 0x58]
mov r11, rax
mov rax, qword [rdi + 0x68]
test rbx, rbx
lea rax, [rax + rdx*8]
mov qword [rsp + 0xd8], rax
je 0x44e203
mov r8, qword [rbx + 0x38]
test r8, r8
jne 0x44df8f
mov rax, qword [r13 + 0x320]
movzx eax, byte [rax + 9]
lea rax, [rax + rax*2]
shl rax, 3
imul r8, rax
add r8, qword [rsp + 0x90]
mov qword [rsp + 0x48], r8
cmp r10b, 2
mov rdi, qword [r15 + 0x68]
je 0x44da6c
add rdi, qword [r9 + 0x30]
mov rax, qword [rsp + 0x90]
mov r14, r11
cmp rax, r11
jae 0x44e260
mov rsi, qword [rsp + 0xd8]
mov rbx, rax
lea rax, [rsp + 0x120]
mov qword [rsp + 0x198], r12
mov dword [rsp + 0xc8], 0
mov rdx, rcx
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xe8], rax
mov qword [rsp + 0x68], rsi
mov r12, qword [rsp + 0x50]
xor esi, esi
jmp 0x44daf7
mov qword [rbx], rdi
mov qword [rbx + 8], 0
mov qword [rbx + 0x10], 0
add rbx, 0x18
add esi, 1
cmp r14, rbx
jbe 0x44df04
mov rdx, qword [rbp]
mov rax, qword [r13 + 0x320]
movzx eax, byte [rax + 9]
cmp eax, esi
je 0x44dc25
cmp qword [rsp + 0x48], rbx
je 0x44e282
mov r9, qword [rbx]
mov r8, r15
mov rcx, r12
call fcn.0043c2c0
cmp rax, 0xfffffffffffffffd
mov qword [rbx], rax
ja 0x44dad0
add rax, qword [r15 + 0x68]
mov rdx, qword [rbp]
mov rdi, rax
mov qword [rbx], rax
movzx eax, byte [rdx]
and eax, 3
cmp al, 2
je 0x44db4f
mov rax, qword [r15 + 0x70]
add rdi, qword [rax + 0x30]
mov qword [rbx], rdi
mov r8, qword [rbx + 8]
movzx ecx, byte [rsp + 0x40]
mov rax, r8
shr rax, cl
test eax, eax
je 0x44dae3
mov r10d, eax
cmp qword [rsp + 0x58], r10
mov rcx, qword [rsp + 0x198]
mov rcx, qword [rcx + 0xf8]
jbe 0x44dc32
test byte [rcx + 0xc85], 0x40
je 0x44dc9e
mov r9, qword [rbp + 0x60]
mov r9, qword [r9 + r10*8]
test r9, r9
je 0x44dc32
mov rax, qword [rsp + 0x68]
mov qword [rax], 0
mov rax, r10
shl rax, 5
add rax, qword [rsp + 0x70]
mov rcx, qword [rax]
mov qword [rsp + 0x120], rcx
mov rcx, qword [rax + 8]
mov qword [rsp + 0x128], rcx
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x130], rcx
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x138], rax
movzx eax, byte [rsp + 0x134]
and eax, 0xf
cmp al, 3
je 0x44dcab
mov rax, qword [rbp + 0x58]
mov r11d, dword [rax + r10*4]
cmp r11d, 0xffffffff
je 0x44ddb5
movzx ecx, byte [rsp + 0x40]
shl r11, cl
and r8, qword [rsp + 0xa8]
or r8, r11
mov qword [rbx + 8], r8
jmp 0x44dae3
add qword [rsp + 0x68], 8
xor esi, esi
jmp 0x44db0a
sub eax, dword [rsp + 0x88]
mov rdx, qword [rcx + 0x2f8]
mov r8, qword [rdx + rax*8]
movzx eax, byte [r8 + 0x18]
sub eax, 6
cmp al, 1
ja 0x44dc60
mov r8, qword [r8 + 0x28]
movzx eax, byte [r8 + 0x18]
sub eax, 6
cmp al, 1
jbe 0x44dc50
mov ecx, dword [r8 + 0x38]
test ecx, ecx
js 0x44dc89
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elflink.c
mov edx, 0x2be8
mov qword [rsp + 0xc0], r8
call fcn.0040a300
mov r8, qword [rsp + 0xc0]
mov rax, qword [rsp + 0x68]
mov dword [r8 + 0x38], 0xfffffffe
mov qword [rax], r8
jmp 0x44dae3
mov rax, qword [rbp + 0x60]
mov r9, qword [rax + r10*8]
jmp 0x44db9d
cmp r9, qword [rsp + 0xb8]
je 0x44e1b9
test r9, r9
je 0x44e240
cmp qword [r9 + 0xf8], 0
je 0x44e240
mov rdx, qword [r9 + 0x70]
cmp rdx, qword [rsp + 0xb8]
je 0x44e1c1
mov eax, dword [rdx + 0xe0]
test eax, eax
je 0x44e176
movzx ecx, byte [rsp + 0x40]
mov r11d, eax
shl r11, cl
mov edx, dword [rsp + 0xc8]
test edx, edx
je 0x44dc11
mov rax, qword [r9 + 0x68]
add qword [rbx + 0x10], rax
jmp 0x44dc11
mov rcx, qword [rbp + 0x60]
mov rax, qword [rbx + 0xe8]
mov rdx, qword [rcx + rdx*8]
mov rdx, qword [rdx + 0x70]
mov edx, dword [rdx + 0xe0]
mov dword [rax + 0x2c], edx
mov eax, dword [r15 + 0x28]
jmp 0x44d19e
movzx eax, word [rbx + 0x2c]
and ax, 0x380
sub ax, 0x100
test ax, 0xfe80
je 0x44d5b0
mov eax, dword [rsp + 0x68]
test eax, eax
jne 0x44dd82
test byte [rsp + 0x48], 2
je 0x44d5b0
mov rdx, qword [r12]
mov rcx, rbx
call fcn.0044c9c0
test rax, rax
je 0x44d5b0
mov qword [rdi], rax
jmp 0x44d5b0
mov rax, qword [r12]
mov rdx, qword [rbx + 0xf8]
mov r9, r14
mov r8, r15
lea rcx, str._X__s_referenced_in_section___pA_of__pB:_defined_in_discarded_section___pA_of__pB_n
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rbx
mov rdx, qword [rsp + 0x118]
call qword [rax + 0x58]
jmp 0x44dd5a
mov eax, dword [rdx]
and eax, 0x18000
cmp eax, 0x18000
je 0x44e271
mov rax, qword [rsp + 0x60]
mov r8d, dword [rsp + 0x130]
mov rcx, qword [rsp + 0x198]
mov qword [rsp + 0xf8], r10
mov qword [rsp + 0xf0], r9
mov edx, dword [rax + 0x88]
call fcn.0042c690
test rax, rax
mov qword [rsp + 0xc0], rax
je 0x44d331
mov r9, qword [rsp + 0xf0]
mov rcx, r12
mov r8, qword [r9 + 0x70]
mov rdx, r8
mov qword [rsp + 0x100], r8
call fcn.00434770
cmp eax, 0xfffffeff
mov dword [rsp + 0x138], eax
je 0x44d331
mov rdx, qword [rbp]
mov r9, qword [rsp + 0xf0]
mov r10, qword [rsp + 0xf8]
movzx ecx, byte [rdx]
mov rax, qword [r9 + 0x68]
add rax, qword [rsp + 0x120]
and ecx, 3
cmp cl, 2
mov qword [rsp + 0x120], rax
je 0x44de99
mov r8, qword [rsp + 0x100]
movzx ecx, byte [rsp + 0x134]
add rax, qword [r8 + 0x30]
mov r8d, ecx
and r8d, 0xf
cmp r8b, 6
mov qword [rsp + 0x120], rax
je 0x44e03d
mov r11d, dword [r12 + 0xb0]
mov r8, qword [rsp + 0xe8]
mov rcx, rbp
mov rdx, qword [rsp + 0xc0]
mov qword [rsp + 0x20], 0
mov qword [rsp + 0xf8], r10
mov dword [rsp + 0xf0], r11d
call fcn.0043ec70
test eax, eax
je 0x44d331
cmp eax, 1
jne 0x44e2da
mov r11d, dword [rsp + 0xf0]
mov rax, qword [rbp + 0x58]
mov r10, qword [rsp + 0xf8]
mov r8, qword [rbx + 8]
mov dword [rax + r10*4], r11d
jmp 0x44dc09
mov rax, qword [rsp + 0xd0]
mov r12, qword [rsp + 0x198]
mov rbx, qword [rax + 0x58]
test rbx, rbx
je 0x44df28
cmp qword [rbx + 0x20], 0
jne 0x44dfd5
mov rax, qword [rsp + 0xd0]
mov r8, qword [rax + 0x70]
test r8, r8
je 0x44cecd
cmp qword [r8 + 0x20], 0
je 0x44cecd
mov rax, qword [rsp + 0xe0]
mov r9, qword [rsp + 0x90]
mov rdx, r15
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x20], rax
call qword [r13 + 0x1f0]
test eax, eax
jne 0x44cecd
xor eax, eax
jmp 0x44cf52
and edx, 0xfffffff0
mov byte [rsp + 0x134], dl
jmp 0x44ce52
mov rax, qword [rbx + 0x20]
xor edx, edx
div r8
mov r8, rax
jmp 0x44da3a
mov rax, qword [r13 + 0x320]
movzx eax, byte [rax + 9]
imul rdx, rax
mov eax, dword [r15 + 0x90]
imul rax, qword [rsp + 0xa0]
cmp rdx, rax
jne 0x44d315
or dword [r15 + 0x28], 0x4000000
jmp 0x44d453
mov rax, qword [rsp + 0xd8]
mov r9, qword [rsp + 0x90]
mov r8, rbx
mov rdx, r15
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x20], rax
call qword [r13 + 0x1f0]
test eax, eax
je 0x44d331
mov rcx, qword [rbx + 0x38]
test rcx, rcx
je 0x44e019
mov rax, qword [rbx + 0x20]
xor edx, edx
div rcx
mov rcx, rax
mov rax, qword [r13 + 0x320]
movzx eax, byte [rax + 9]
lea rax, [rax + rax*2]
shl rax, 3
imul rax, rcx
add qword [rsp + 0x90], rax
jmp 0x44df28
mov rdx, qword [rdx + 0x28]
mov rdx, qword [rdx + 0x170]
test rdx, rdx
je 0x44e251
sub rax, qword [rdx + 0x30]
mov qword [rsp + 0x120], rax
jmp 0x44de99
mov r8d, dword [r15 + 0x90]
test r8d, r8d
je 0x44d3fc
xor eax, eax
jmp 0x44cf52
mov rcx, qword [rax]
mov qword [rsp + 0x120], rcx
mov rcx, qword [rax + 8]
mov qword [rsp + 0x128], rcx
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x130], rcx
mov rax, qword [rax + 0x18]
mov rcx, r12
mov r8d, dword [rsp + 0x130]
mov qword [rsp + 0x138], rax
mov rax, qword [rbp + 0x60]
mov rax, qword [rax + rdx*8]
mov r14, qword [rax + 0x70]
mov rax, qword [rsp + 0x60]
mov edx, dword [rax + 0x88]
call fcn.0042c690
test rax, rax
mov rdi, rax
je 0x44d331
mov rdx, r14
mov r14, qword [rsp + 0x50]
mov rcx, r14
call fcn.00434770
cmp eax, 0xfffffeff
mov dword [rsp + 0x138], eax
je 0x44d331
lea r8, [rsp + 0x120]
mov rax, qword [r15 + 0x68]
mov r14d, dword [r14 + 0xb0]
mov r9, r15
mov qword [rsp + 0x20], 0
mov rdx, rdi
mov rcx, rbp
add qword [rsp + 0x120], rax
call fcn.0043ec70
test eax, eax
je 0x44d331
cmp eax, 1
jne 0x44e2c2
add rsi, qword [rbp + 0x58]
mov dword [rsi], r14d
jmp 0x44d2a2
lea rcx, str.error:__pB_contains_a_reloc___I64x__for_section__pA_that_references_a_non_existent_global_symbol
mov r9, r15
mov rdx, r14
call fcn.0040a1e0
mov ecx, 0x11
call fcn.0040a380
xor eax, eax
jmp 0x44cf52
mov r8, qword [rdx + 0x30]
add qword [rbx + 0x10], r8
mov rcx, r12
mov qword [rsp + 0xc0], r9
call fcn.004653f0
mov r8d, dword [rax + 0xe0]
movzx ecx, byte [rsp + 0x40]
mov rdx, qword [rax + 0x30]
mov r9, qword [rsp + 0xc0]
sub qword [rbx + 0x10], rdx
mov r11, r8
mov r8, qword [rbx + 8]
shl r11, cl
jmp 0x44dcfb
xor r11d, r11d
jmp 0x44dcfb
mov rax, qword [r9 + 0xd0]
test rax, rax
je 0x44e1b9
mov rdx, qword [rax + 0x70]
test rdx, rdx
je 0x44e1b9
mov rax, qword [rdx + 0x30]
xor r11d, r11d
sub qword [rbx + 0x10], rax
cmp rdx, qword [rsp + 0xb8]
je 0x44dcfb
jmp 0x44dce2
mov dword [rax + 0x18], 0xfffffff1
mov qword [rax], rdi
jmp 0x44d5b0
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x48], rax
jmp 0x44da5e
mov rdx, qword [r15 + 0x70]
mov r8, qword [rsp + 0x110]
mov r9, rsi
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x20], rbx
call fcn.00412050
test eax, eax
jne 0x44cf40
jmp 0x44d331
mov ecx, 0x11
call fcn.0040a380
xor eax, eax
jmp 0x44cf52
and ecx, 0xfffffff0
mov byte [rsp + 0x134], cl
jmp 0x44de99
mov qword [rsp + 0xe0], 0
jmp 0x44df18
mov ecx, 5
call fcn.0040a380
xor eax, eax
jmp 0x44cf52
mov rax, qword [rsp + 0x108]
mov ecx, dword [rax + 0x78]
mov rax, qword [rax + 0x80]
lea rax, [rax + rcx*8]
mov rcx, rax
mov qword [rsp + 0x68], rax
movzx eax, byte [r13 + 0x3cc]
mov qword [rsp + 0xe0], rcx
shr al, 6
and eax, 1
mov dword [rsp + 0xc8], eax
jmp 0x44db15
lea r8, str.elf_link_input_bfd
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elflink.c
mov edx, 0x2a80
call fcn.0040a320
lea r8, str.elf_link_input_bfd
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elflink.c
mov edx, 0x2c63
call fcn.0040a320
nop
nop dword [rax]
nop word cs:[rax + rax]
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x1e8
mov rax, qword [rdx + 0x28]
mov r15, rcx
mov qword [rsp + 0x238], rdx
cmp dword [rax + 0x40], 1
mov qword [rsp + 0x50], rax
je 0x44e345
xor ebx, ebx
mov eax, ebx
add rsp, 0x1e8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rcx + 8]
mov rax, qword [rax + 0x370]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x238]
movzx eax, byte [rax]
mov edx, eax
and edx, 3
test al, 1
jne 0x44ed3d
mov rax, qword [rsp + 0x50]
cmp dl, 2
mov r14d, 1
mov ecx, dword [rax + 0x4c]
mov rax, qword [rax + 0x68]
mov dword [rsp + 0x80], ecx
mov qword [rsp + 0x78], rax
je 0x44e3a9
mov rax, qword [rsp + 0x238]
movzx eax, byte [rax + 3]
mov byte [rsp + 0x58], al
shr al, 6
and eax, 1
mov r14d, eax
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0x168], r15
mov qword [rsp + 0x160], rax
call fcn.004546f0
test rax, rax
mov qword [rsp + 0x170], rax
je 0x44e32d
mov esi, dword [rsp + 0x80]
test esi, esi
jne 0x44edc5
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x180], 0
mov rax, qword [r15 + 8]
mov r13, qword [r15 + 0x88]
mov qword [rsp + 0x188], 0
mov qword [rsp + 0x190], 0
mov qword [rsp + 0x198], 0
mov qword [rsp + 0x1a0], 0
mov rax, qword [rax + 0x370]
test r13, r13
mov qword [rsp + 0x1a8], 0
mov qword [rsp + 0x1b0], 0
mov qword [rsp + 0x1b8], 0
mov qword [rsp + 0x1c0], 0
mov qword [rsp + 0x1c8], 0
mov qword [rsp + 0x1d0], 0
mov rbx, qword [rax + 0x348]
je 0x44efa0
xor eax, eax
mov byte [rsp + 0x60], r14b
xor ebp, ebp
mov r14, r13
mov qword [rsp + 0x58], 0
mov r13, rbx
lea r12, str..gnu.attributes
mov rbx, rax
jmp 0x44e51f
mov ecx, 0x10
mov rdi, r12
repe cmpsb byte [rsi], byte [rdi]
je 0x44e536
mov eax, dword [r14 + 0x28]
test eax, 0x2000000
je 0x44e516
cmp qword [r14 + 0x40], 0
jne 0x44e516
nop
mov rdx, qword [r14 + 0x20]
or ah, 0x80
mov dword [r14 + 0x28], eax
mov rax, qword [r14 + 0x18]
test rdx, rdx
je 0x44ec78
mov qword [rdx + 0x18], rax
test rax, rax
je 0x44ec6c
mov qword [rax + 0x20], rdx
sub dword [r15 + 0x98], 1
mov ebp, 1
mov r14, qword [r14 + 0x18]
test r14, r14
je 0x44e59d
test r13, r13
mov rsi, qword [r14]
je 0x44e4c0
mov rdx, r13
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x44e4c0
mov rax, qword [r14 + 0x110]
test rax, rax
jne 0x44e54c
jmp 0x44e565
mov rax, qword [rax]
test rax, rax
je 0x44e565
cmp dword [rax + 8], 1
jne 0x44e544
mov rdx, qword [rax + 0x20]
mov rax, qword [rax]
and dword [rdx + 0x28], 0xfffffeff
test rax, rax
jne 0x44e54c
mov rcx, r15
call fcn.00453920
mov rcx, r14
mov rbx, rax
mov rdx, rax
call fcn.00412010
test rbx, rbx
mov qword [r14 + 0x110], 0
je 0x44ea90
mov qword [rsp + 0x58], r14
mov r14, qword [r14 + 0x18]
test r14, r14
jne 0x44e51f
test ebp, ebp
movzx r14d, byte [rsp + 0x60]
mov qword [rsp + 0xa0], rbx
jne 0x44edb0
mov rsi, qword [r15 + 0x88]
test rsi, rsi
je 0x44efb5
xor r13d, r13d
xor r10d, r10d
xor r9d, r9d
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x70], 0
xor r12d, r12d
mov qword [rsp + 0x230], r15
nop dword [rax]
mov rbx, qword [rsi + 0x110]
mov rbp, qword [rsi + 0xe8]
mov dword [rsi + 0x90], 0
test rbx, rbx
je 0x44ebe1
mov r15d, 1
jmp 0x44e635
cmp eax, 1
je 0x44eac0
mov rbx, qword [rbx]
test rbx, rbx
je 0x44e6c1
mov eax, dword [rbx + 8]
lea edx, [rax - 3]
cmp edx, 1
ja 0x44e620
mov edx, 1
xor ecx, ecx
xor r8d, r8d
add dword [rsi + 0x90], edx
cmp eax, 1
jne 0x44eaa0
test r14b, r14b
je 0x44eaa0
mov rdx, qword [rcx + 0x58]
test rdx, rdx
je 0x44e68c
mov rdi, qword [rdx + 0x38]
xor eax, eax
mov r11d, dword [rbp + 0x60]
test rdi, rdi
je 0x44e683
mov rax, qword [rdx + 0x20]
xor edx, edx
div rdi
add r11d, r8d
add eax, r11d
mov dword [rbp + 0x60], eax
mov rdx, qword [rcx + 0x70]
test rdx, rdx
je 0x44e629
mov r11, qword [rdx + 0x38]
xor eax, eax
mov ecx, dword [rbp + 0x78]
test r11, r11
je 0x44e6ac
mov rax, qword [rdx + 0x20]
xor edx, edx
div r11
mov rbx, qword [rbx]
add r8d, ecx
add eax, r8d
mov dword [rbp + 0x78], eax
test rbx, rbx
jne 0x44e635
mov ebx, dword [rsi + 0x90]
test ebx, ebx
je 0x44ebe1
or dword [rsi + 0x28], 4
movabs rax, 0x100000001
test qword [rsi + 0x28], rax
jne 0x44e6eb
mov qword [rsi + 0x30], 0
mov rsi, qword [rsi + 0x18]
test rsi, rsi
jne 0x44e5f0
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0x98], r10
mov qword [rsp + 0x90], r9
mov r15, qword [rsp + 0x230]
movzx eax, byte [rax]
mov byte [rsp + 0x88], al
and eax, 3
cmp al, 2
je 0x44e733
and r13d, 1
jne 0x44ed81
mov rax, qword [rsp + 0x238]
mov eax, dword [rax]
mov dword [rsp + 0x88], eax
and eax, 0x18000
cmp eax, 0x18000
setne al
or eax, r14d
test byte [r15 + 0x45], 4
movzx eax, al
mov dword [r15 + 0xb0], eax
jne 0x44ed9a
mov rdx, qword [rsp + 0x238]
mov rcx, r15
call fcn.00430af0
test eax, eax
je 0x44ed21
mov rbp, qword [r15 + 0x88]
test rbp, rbp
je 0x44e870
lea rbx, str..ctf
jmp 0x44e7ad
mov rbp, qword [rbp + 0x18]
test rbp, rbp
je 0x44e870
test byte [rbp + 0x28], 4
mov r13, qword [rbp + 0xe8]
je 0x44e7f0
cmp qword [r13 + 0x58], 0
je 0x44e7d5
lea rdx, [r13 + 0x58]
mov rcx, r15
call fcn.0043f370
test eax, eax
je 0x44ed21
cmp qword [r13 + 0x70], 0
je 0x44e7f0
lea rdx, [r13 + 0x70]
mov rcx, r15
call fcn.0043f370
test eax, eax
je 0x44ed21
cmp qword [r13 + 0x18], 0xffffffffffffffff
mov dword [rbp + 0xe0], 0
mov dword [r13 + 0x60], 0
mov dword [r13 + 0x78], 0
jne 0x44e7a0
mov rax, qword [rbp]
mov ecx, 4
mov rdi, rbx
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
jne 0x44e838
movzx eax, byte [rax + 4]
test al, al
je 0x44e7a0
cmp al, 0x2e
je 0x44e7a0
test byte [rbp + 0x2b], 8
je 0x44f7d3
cmp qword [r13 + 0x48], 0
jne 0x44f7d3
mov rcx, qword [r13 + 0x20]
call fcn.0040f490
test rax, rax
je 0x44ed21
mov rbp, qword [rbp + 0x18]
mov qword [r13 + 0x48], rax
test rbp, rbp
jne 0x44e7ad
mov rax, qword [r15 + 0xf8]
mov dword [r15 + 0xb0], 0
mov ebx, 0x14
mov dword [rax + 0x64], 2
mov rdi, rax
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x320]
movzx edx, byte [rax + 5]
mov qword [rdi + 0x98], rdx
movzx ecx, byte [rax + 0xb]
mov eax, 1
shl rax, cl
mov qword [rdi + 0x90], rax
mov rax, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x50]
cmp rax, 0x14
cmovae rbx, rax
lea rcx, [rbx + rbx*4]
mov qword [rdi + 0xb0], rbx
shl rcx, 3
call fcn.0040f490
test rax, rax
mov qword [rdi + 0xb8], rax
je 0x44ed21
mov rdx, qword [r15 + 0xf8]
cmp dword [rdx + 0x2f4], 0xff01
sbb rax, rax
not rax
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0x238]
mov eax, dword [rax]
mov dword [rsp + 0x90], eax
and eax, 0x18000
cmp eax, 0x18000
jne 0x44edfd
test r14b, r14b
jne 0x44edfd
test r12, r12
jne 0x44f52d
cmp qword [rsp + 0x70], 0
jne 0x44ef78
cmp qword [rsp + 0x60], 0
je 0x44e985
mov rax, qword [rsp + 0x60]
lea rcx, [rax + rax*2]
shl rcx, 3
call fcn.0040f490
test rax, rax
mov qword [rsp + 0x198], rax
je 0x44ed21
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x320]
movzx ecx, byte [rax + 5]
imul rcx, rbx
call fcn.0040f490
test rax, rax
mov qword [rsp + 0x1a0], rax
je 0x44ed21
mov rcx, rbx
shl rcx, 5
call fcn.0040f490
test rax, rax
mov qword [rsp + 0x1b0], rax
je 0x44ed21
lea rcx, [rbx*4]
call fcn.0040f490
test rax, rax
mov qword [rsp + 0x1b8], rax
je 0x44ed21
lea rcx, [rbx*8]
call fcn.0040f490
test rax, rax
mov qword [rsp + 0x1c0], rax
je 0x44ed21
cmp qword [rsp + 0x98], 0
jne 0x44f721
mov rax, qword [rsp + 0x50]
mov rsi, qword [rax + 0x170]
xor eax, eax
test rsi, rsi
jne 0x44ea69
jmp 0x44f02a
test byte [rsi + 0x29], 1
jne 0x44ea87
mov rdx, qword [rsi + 0x118]
mov ecx, eax
test rdx, rdx
je 0x44ea50
mov rbx, rcx
imul rbx, qword [rdx + 0x10]
add rbx, qword [rdx + 0x18]
xor edx, edx
mov rax, rbx
div rcx
add rax, qword [rsi + 0x30]
mov rsi, qword [rsi + 0x18]
test rsi, rsi
je 0x44efe7
test byte [rsi + 0x29], 4
je 0x44efe7
mov rbx, qword [rsi + 0x40]
mov rdx, rsi
mov rcx, r15
call fcn.0040a030
test rbx, rbx
je 0x44ea30
mov ecx, eax
jmp 0x44ea50
mov eax, dword [r14 + 0x28]
jmp 0x44e4e0
test byte [rsi + 0x2d], 4
je 0x44eab0
add dword [rbp + 0x78], edx
jmp 0x44e629
add dword [rbp + 0x60], edx
jmp 0x44e629
mov rdi, qword [rbx + 0x20]
mov r11d, dword [rdi + 0x28]
or byte [rdi + 0x2c], 2
mov rax, qword [rdi + 0x40]
test r11d, 0x800000
cmovne r13d, r15d
cmp qword [rdi + 0x48], rax
cmovae rax, qword [rdi + 0x48]
cmp r12, rax
cmovb r12, rax
mov rax, qword [rdi + 0xf8]
mov rdx, qword [rax + 8]
cmp dword [rdx + 8], 5
jne 0x44e629
test byte [rax + 0x40], 0x40
jne 0x44e629
mov rcx, qword [rax + 0xf8]
test byte [rcx + 0xc85], 0x40
je 0x44ec61
mov rax, qword [rsp + 0x48]
xor edx, edx
mov rax, qword [rax + 0x320]
movzx r8d, byte [rax + 5]
mov rax, qword [rcx + 0x80]
div r8
cmp r9, rax
cmovb r9, rax
cmp rax, r10
jbe 0x44eb53
cmp qword [rcx + 0x2e0], 0
cmovne r10, rax
mov eax, dword [rbp + 4]
cmp eax, 9
je 0x44ec00
cmp eax, 4
je 0x44ec00
test r14b, r14b
je 0x44ebea
mov rax, qword [rsp + 0x48]
xor r8d, r8d
mov edx, dword [rdi + 0x90]
mov rax, qword [rax + 0x208]
test rax, rax
je 0x44ebc1
mov qword [rsp + 0x98], r9
mov qword [rsp + 0x90], r10
mov rcx, rdi
mov dword [rsp + 0x88], edx
call rax
mov r11d, dword [rdi + 0x28]
mov edx, dword [rsp + 0x88]
mov r8d, eax
mov r10, qword [rsp + 0x90]
mov r9, qword [rsp + 0x98]
and r11d, 4
mov rcx, qword [rdi + 0xe8]
jne 0x44ec16
test edx, edx
je 0x44e629
add edx, r8d
mov eax, dword [rbx + 8]
jmp 0x44e64a
and dword [rsi + 0x28], 0xfffffffb
jmp 0x44e6d3
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x200]
test rax, rax
jne 0x44ed46
nop
and r11d, 4
mov rcx, qword [rdi + 0xe8]
je 0x44e629
xor r8d, r8d
xor edx, edx
mov rax, qword [rcx + 0x58]
test rax, rax
je 0x44ef64
mov r11, qword [rcx + 0x70]
mov rax, qword [rax + 0x20]
test r11, r11
je 0x44ec34
add rax, qword [r11 + 0x20]
mov r11, qword [rsp + 0x70]
cmp r11, rax
cmovae rax, r11
mov qword [rsp + 0x70], rax
mov eax, dword [rdi + 0x90]
mov rdi, qword [rsp + 0x60]
cmp rdi, rax
cmovae rax, rdi
mov qword [rsp + 0x60], rax
jmp 0x44ebce
mov eax, dword [rcx + 0x8c]
jmp 0x44eb3b
mov qword [r15 + 0x90], rdx
jmp 0x44e509
mov qword [r15 + 0x88], rax
jmp 0x44e4fc
cmp dword [rsi + 8], 1
mov rdi, r12
lea r13, [rsp + 0x160]
jne 0x44ed29
mov rax, qword [rdi + 8]
cmp dword [rax + 8], 5
jne 0x44ed29
mov rcx, qword [rsp + 0x48]
mov rax, qword [rdi + 0xf8]
mov rdx, qword [rcx + 0x320]
movzx eax, byte [rax + 4]
movzx edx, byte [rdx + 0xc]
cmp al, dl
je 0x44ed29
cmp dl, 1
je 0x4511ac
jb 0x4511a0
cmp dl, 2
jne 0x451188
lea rsi, str.ELFCLASS64
cmp al, 1
je 0x45117c
jb 0x4511d0
cmp al, 2
jne 0x4511b8
lea rbx, str.ELFCLASS64
mov ecx, 3
call fcn.0040a380
lea rcx, str._pB:_file_class__s_incompatible_with__s
mov r9, rsi
mov r8, rbx
mov rdx, rdi
call fcn.0040a1e0
lea r13, [rsp + 0x160]
lea rcx, [r15 + 0x88]
mov rdx, r13
call fcn.0043f500
jmp 0x44e32d
or dword [rcx + 0x40], 0x40
jmp 0x44e36d
mov qword [rsp + 0x90], r9
mov qword [rsp + 0x88], r10
mov rdx, rdi
mov rcx, qword [rsp + 0x238]
call rax
mov r11d, dword [rdi + 0x28]
mov edx, eax
xor r8d, r8d
mov r9, qword [rsp + 0x90]
mov r10, qword [rsp + 0x88]
jmp 0x44ebc1
mov rcx, qword [rsp + 0x50]
lea rdx, [0x0043f5b0]
mov r8, r15
call fcn.00463110
jmp 0x44e733
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elflink.c
mov edx, 0x2fa5
call fcn.0040a300
jmp 0x44e769
mov rdx, qword [rsp + 0x238]
mov rcx, r15
call fcn.004655e0
jmp 0x44e5b3
mov rdi, qword [rsp + 0x78]
lea rdx, str..hash
mov rcx, rdi
call fcn.00411a70
lea rdx, str..gnu.version
mov rcx, rdi
mov qword [rsp + 0x178], rax
call fcn.00411a70
mov qword [rsp + 0x180], rax
jmp 0x44e3fe
mov rax, qword [rdx + 0xc90]
mov r8d, 1
lea rdi, [rsp + 0xf0]
lea r13, [rsp + 0x160]
mov rdx, qword [rax + 0x40]
mov rax, qword [rsp + 0x88]
lea rcx, [rax + 0x60]
call fcn.0042faf0
mov r9, qword [0x0050ae40]
xor edx, edx
mov qword [rsp + 0x20], 0
mov r8, rdi
mov rcx, r13
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0xf8], 0
mov byte [rsp + 0x104], 0
add r9, 0x128
mov byte [rsp + 0x105], 0
mov dword [rsp + 0x108], 0
mov byte [rsp + 0x106], 0
call fcn.0043ec70
cmp eax, 1
jne 0x44ed29
mov rax, qword [r15 + 0xf8]
mov qword [rsp + 0xf8], 0
mov byte [rsp + 0x104], 3
mov byte [rsp + 0x105], 0
mov qword [rsp + 0xf0], 0
mov byte [rsp + 0x106], 0
cmp dword [rax + 0x2f4], 1
jbe 0x44e945
mov esi, 1
mov rbp, qword [rsp + 0x238]
jmp 0x44ef06
mov rax, qword [r15 + 0xf8]
add esi, 1
cmp dword [rax + 0x2f4], esi
jbe 0x44e945
mov edx, esi
mov rcx, r15
call fcn.0042f3d0
test rax, rax
mov r9, rax
je 0x44eef0
mov eax, dword [r15 + 0xb0]
mov dword [rsp + 0x108], esi
mov dword [r9 + 0xe0], eax
movzx eax, byte [rbp]
and eax, 3
cmp al, 2
je 0x44ef44
mov rax, qword [r9 + 0x30]
mov qword [rsp + 0xf0], rax
xor edx, edx
mov qword [rsp + 0x20], 0
mov r8, rdi
mov rcx, r13
call fcn.0043ec70
cmp eax, 1
je 0x44eef0
jmp 0x44ed29
mov r11, qword [rcx + 0x70]
xor eax, eax
test r11, r11
jne 0x44ec30
jmp 0x44ec45
mov rcx, qword [rsp + 0x70]
call fcn.0040f490
test rax, rax
mov qword [rsp + 0x190], rax
jne 0x44e95a
jmp 0x44ed21
mov qword [rsp + 0x58], 0
mov qword [rsp + 0xa0], 0
mov qword [rsp + 0x60], 0
xor r12d, r12d
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x90], 0
mov qword [rsp + 0x98], 0
jmp 0x44e733
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rcx + 0x170]
mov rcx, qword [rsp + 0x48]
cmp dword [rcx + 0x3c0], 1
mov r8, qword [rdx + 0x30]
jne 0x44f01b
mov ecx, dword [rdx + 0x78]
mov edx, 1
shl rdx, cl
lea rax, [rax + rdx - 1]
neg rdx
and rax, rdx
mov rcx, qword [rsp + 0x50]
sub rax, r8
mov qword [rcx + 0x178], rax
mov r13, qword [r15 + 0x88]
test r13, r13
je 0x44f0cc
mov rax, qword [r13 + 0x110]
test rax, rax
je 0x44f0bf
xor r8d, r8d
xor r10d, r10d
xor edx, edx
xor r9d, r9d
jmp 0x44f071
add rdx, 1
test rdx, rdx
je 0x44f065
test r9, r9
jne 0x44f200
mov rax, qword [rax]
test rax, rax
je 0x44f24a
cmp dword [rax + 8], 1
jne 0x44f053
mov rcx, qword [rax + 0x20]
test byte [rcx + 0x2a], 0x10
jne 0x44f097
mov r11, qword [rcx + 0xf8]
mov r11, qword [r11 + 8]
cmp dword [r11 + 8], 5
je 0x44f30b
add rdx, 1
mov r10, rcx
jmp 0x44f057
lea r9, [0x0043d230]
mov r8d, 8
xor edx, edx
mov rcx, rdi
call sub.msvcrt.dll_qsort
mov rcx, rdi
call sub.msvcrt.dll_free
mov r13, qword [r13 + 0x18]
test r13, r13
jne 0x44f03a
mov rcx, qword [rsp + 0x238]
call fcn.00458eb0
test eax, eax
je 0x44e32d
mov rax, qword [rsp + 0x238]
mov rax, qword [rax + 0x60]
test rax, rax
je 0x44f102
and byte [rax + 0x45], 0xfb
mov rax, qword [rax + 0xf0]
test rax, rax
jne 0x44f0f2
lea rax, [rsp + 0x110]
mov rbx, qword [r15 + 0x88]
xor edi, edi
mov qword [rsp + 0x90], rax
lea rax, [rsp + 0x160]
test rbx, rbx
mov qword [rsp + 0xb8], rax
je 0x44f6b6
mov byte [rsp + 0xc0], r14b
mov r12, rdi
mov r14, rbx
mov rdi, qword [r14 + 0x110]
test rdi, rdi
je 0x44f6a0
mov rsi, rdi
mov rbp, qword [rsp + 0x238]
jmp 0x44f191
sub eax, 3
cmp eax, 1
jbe 0x44f335
mov r9, rsi
mov r8, r14
mov rdx, rbp
mov rcx, r15
call fcn.00464b90
test eax, eax
je 0x44ec84
mov rsi, qword [rsi]
test rsi, rsi
je 0x44f6a0
mov eax, dword [rsi + 8]
cmp eax, 1
jne 0x44f160
mov rax, qword [rsi + 0x20]
mov r12, qword [rax + 0xf8]
mov rax, qword [r12 + 8]
cmp dword [rax + 8], 5
jne 0x44f16c
mov rax, qword [rsp + 0x48]
mov rdx, qword [r12 + 0xf8]
mov rax, qword [rax + 0x320]
movzx eax, byte [rax + 0xc]
cmp byte [rdx + 4], al
jne 0x44f16c
test byte [r12 + 0x45], 4
jne 0x44f185
mov rcx, qword [rsp + 0xb8]
mov rdx, r12
mov r13, rcx
call fcn.0044ca90
test eax, eax
je 0x44ed29
or byte [r12 + 0x45], 4
jmp 0x44f185
test r10, r10
je 0x44f481
test r8, r8
je 0x44f481
mov rax, qword [r10 + 0xf8]
mov r9, qword [r8 + 0xf8]
lea rcx, str._pA_has_both_ordered____pA_in__pB__and_unordered____pA_in__pB__sections
mov qword [rsp + 0x20], r10
mov rdx, r13
mov qword [rsp + 0x28], rax
call fcn.0040a1e0
mov ecx, 0x11
xor ebx, ebx
call fcn.0040a380
jmp 0x44e32f
test r9, r9
je 0x44f0bf
lea rcx, [r9*8]
call fcn.0040f490
test rax, rax
mov rdi, rax
je 0x44e32d
mov rax, qword [r13 + 0x110]
test rax, rax
je 0x44f0a0
xor esi, esi
nop
add rsi, 1
mov qword [rdi + rsi*8 - 8], rax
mov rax, qword [rax]
test rax, rax
jne 0x44f280
lea r9, [0x0043d230]
mov r8d, 8
mov rdx, rsi
mov rcx, rdi
xor ebx, ebx
xor ebp, ebp
call sub.msvcrt.dll_qsort
nop dword [rax]
mov rax, qword [rdi + rbp*8]
mov rcx, r15
mov r12, qword [rax + 0x20]
mov rdx, r12
call fcn.0040a030
mov ecx, dword [r12 + 0x78]
mov rdx, 0xffffffffffffffff
mov r8d, eax
mov r9, qword [rdi + rbp*8]
add rbp, 1
imul ecx, eax
shl rdx, cl
mov rcx, rdx
not rdx
add rbx, rdx
xor edx, edx
and rbx, rcx
mov rax, rbx
add rbx, qword [r9 + 0x18]
div r8
cmp rsi, rbp
mov qword [r12 + 0x68], rax
mov qword [r9 + 0x10], rax
jne 0x44f2b0
jmp 0x44f0b7
mov r11, qword [rcx + 0xe8]
test r11, r11
je 0x44f097
cmp qword [r11 + 0x90], 0
je 0x44f097
add r9, 1
mov r8, rcx
jmp 0x44f057
mov rax, qword [r15 + 8]
mov rcx, r15
mov rbx, qword [r14 + 0xe8]
mov rax, qword [rax + 0x370]
mov qword [rsp + 0x98], rax
mov rax, qword [rsi + 0x20]
mov edx, dword [rax]
call fcn.00467a10
test rax, rax
mov r13, rax
je 0x44f7a4
cmp qword [rbx + 0x58], 0
mov rax, qword [rsi + 0x20]
mov rdi, qword [rax + 0x10]
je 0x44f550
add rbx, 0x58
mov ecx, dword [rbx + 8]
cmp dword [rsi + 8], 3
mov rdx, qword [rbx + 0x10]
lea r11, [rdx + rcx*8]
jne 0x44f495
mov rax, qword [rax + 8]
mov eax, dword [rax + 0xe0]
test eax, eax
mov dword [rsp + 0x60], eax
je 0x44f680
mov qword [r11], 0
test byte [r13 + 7], 4
je 0x44f3c2
test rdi, rdi
jne 0x44f57b
movzx eax, byte [rbp]
mov rdx, qword [rsi + 0x10]
and eax, 3
cmp al, 2
je 0x44f3d5
add rdx, qword [r14 + 0x30]
mov rax, qword [rsp + 0x98]
mov r9, qword [rax + 0x320]
movzx ecx, byte [r9 + 9]
test ecx, ecx
je 0x44f420
mov r10, qword [rsp + 0x90]
sub ecx, 1
lea rcx, [rcx + rcx*2 + 3]
lea rcx, [r10 + rcx*8]
mov rax, r10
mov qword [rax], rdx
mov qword [rax + 8], 0
add rax, 0x18
mov qword [rax - 8], 0
cmp rcx, rax
jne 0x44f404
cmp byte [r9 + 0xa], 0x20
je 0x44f512
mov edx, dword [r13]
mov rax, qword [rsp + 0x60]
shl rax, 0x20
add rax, rdx
mov qword [rsp + 0x118], rax
mov rax, qword [rbx]
cmp dword [rax + 4], 9
mov rdx, qword [rax + 0x48]
je 0x44f4f1
mov qword [rsp + 0x120], rdi
movzx eax, byte [r9 + 4]
mov rcx, r15
imul eax, dword [rbx + 8]
lea r8, [rdx + rax]
mov rdx, qword [rsp + 0x90]
call qword [r9 + 0x78]
add dword [rbx + 8], 1
jmp 0x44f185
lea rcx, str._pA_has_both_ordered_and_unordered_sections
mov rdx, r13
call fcn.0040a1e0
jmp 0x44f239
mov r8, qword [rax + 8]
xor r9d, r9d
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], 0
mov rdx, rbp
mov rcx, r15
mov qword [rsp + 0x60], r11
call fcn.00462aa0
test rax, rax
je 0x44f776
movzx ecx, byte [rax + 0x18]
mov r11, qword [rsp + 0x60]
lea edx, [rcx - 3]
cmp dl, 1
jbe 0x44f750
mov dword [rax + 0x38], 0xfffffffe
mov dword [rsp + 0x60], 0
mov qword [r11], rax
jmp 0x44f3b2
movzx eax, byte [r9 + 3]
mov rcx, r15
imul eax, dword [rbx + 8]
lea r8, [rdx + rax]
mov rdx, qword [rsp + 0x90]
call qword [r9 + 0x68]
jmp 0x44f478
movzx eax, byte [r13]
mov edx, dword [rsp + 0x60]
shl edx, 8
add eax, edx
mov qword [rsp + 0x118], rax
jmp 0x44f443
mov rcx, r12
call fcn.0040f490
test rax, rax
mov qword [rsp + 0x188], rax
jne 0x44e94e
jmp 0x44ed21
cmp qword [rbx + 0x70], 0
je 0x44f560
add rbx, 0x70
jmp 0x44f380
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elflink.c
mov edx, 0x2cfc
call fcn.0040a300
mov rax, qword [0x10]
ud2
mov rcx, r13
call fcn.00466ee0
mov eax, eax
mov rcx, rax
mov qword [rsp + 0xa8], rax
call fcn.0040f580
test rax, rax
mov qword [rsp + 0x70], rax
jne 0x44f5ae
cmp qword [rsp + 0xa8], 0
jne 0x44ed21
mov r9, qword [rsp + 0x70]
mov r8, rdi
mov rdx, r15
mov rcx, r13
call fcn.004676c0
cmp eax, 2
je 0x44f611
cmp eax, 3
jne 0x44f7bb
cmp dword [rsi + 8], 3
mov rax, qword [rsi + 0x20]
je 0x44f7eb
mov r8, qword [rax + 8]
mov rax, qword [rbp + 0x20]
mov r9, qword [r13 + 0x20]
xor edx, edx
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov rcx, rbp
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], rdi
call qword [rax + 0x38]
mov rax, qword [rsi + 0x10]
mov rdx, r14
mov rcx, r15
mov qword [rsp + 0xb0], rax
call fcn.0040a030
mov r9d, eax
mov rcx, qword [rsp + 0xa8]
mov r8, qword [rsp + 0x70]
imul r9, qword [rsp + 0xb0]
mov rdx, r14
mov qword [rsp + 0x20], rcx
mov rcx, r15
call fcn.00412050
mov rcx, qword [rsp + 0x70]
mov dword [rsp + 0xa8], eax
call sub.msvcrt.dll_free
mov eax, dword [rsp + 0xa8]
test eax, eax
jne 0x44f3c2
jmp 0x44ed21
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elflink.c
mov edx, 0x2d04
mov qword [rsp + 0x70], r11
call fcn.0040a300
mov r11, qword [rsp + 0x70]
jmp 0x44f3ab
mov r14, qword [r14 + 0x18]
test r14, r14
jne 0x44f142
movzx r14d, byte [rsp + 0xc0]
mov rax, qword [rsp + 0x238]
cmp byte [rax + 4], 0
js 0x44f7f7
mov rax, qword [rsp + 0x238]
mov rbx, qword [rax + 0x60]
test rbx, rbx
jne 0x44f6f0
jmp 0x44f7f7
mov rbx, qword [rbx + 0xf0]
test rbx, rbx
je 0x44f7f7
mov rax, qword [rbx + 8]
cmp dword [rax + 8], 5
jne 0x44f6e0
mov rax, qword [rbx + 0xf8]
mov rcx, qword [rax + 0x358]
call sub.msvcrt.dll_free
mov rax, qword [rbx + 0xf8]
mov qword [rax + 0x358], 0
jmp 0x44f6e0
mov rcx, qword [rsp + 0x98]
shl rcx, 2
call fcn.0040f490
test rax, rax
mov qword [rsp + 0x1a8], rax
jne 0x44ea17
jmp 0x44ed21
mov rdx, qword [rax + 0x28]
mov rax, qword [rdx + 0x70]
add rdi, qword [rdx + 0x68]
mov ecx, dword [rax + 0xe0]
add rdi, qword [rax + 0x30]
mov qword [r11], 0
mov dword [rsp + 0x60], ecx
jmp 0x44f3b2
mov rax, qword [rsi + 0x20]
xor r9d, r9d
xor r8d, r8d
mov rcx, rbp
mov rdx, qword [rax + 8]
mov rax, qword [rbp + 0x20]
mov qword [rsp + 0x20], 0
call qword [rax + 0x48]
mov dword [rsp + 0x60], 0
jmp 0x44f3b2
mov ecx, 0x11
lea r13, [rsp + 0x160]
call fcn.0040a380
jmp 0x44ed29
lea r8, str.elf_reloc_link_order
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elflink.c
mov edx, 0x2d46
call fcn.0040a320
lea r8, str.bfd_elf_final_link
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elflink.c
mov edx, 0x2fc9
call fcn.0040a320
mov rax, qword [rax + 8]
mov r8, qword [rax]
jmp 0x44f5e1
mov rax, qword [rsp + 0x238]
lea rbp, [rsp + 0xd0]
lea r13, [rsp + 0x160]
lea rdx, [0x00440f80]
mov dword [rsp + 0xd0], 0
mov dword [rsp + 0xd4], 1
mov r8, rbp
mov qword [rsp + 0xe0], r13
mov dword [rsp + 0xd8], 0
mov rcx, qword [rax + 0x28]
call fcn.0040ef00
mov ebx, dword [rsp + 0xd0]
test ebx, ebx
jne 0x44e32d
mov rax, qword [rsp + 0x48]
mov r10, qword [rax + 0x1a8]
test r10, r10
je 0x44f892
mov rax, qword [rsp + 0x238]
mov eax, dword [rax]
mov dword [rsp + 0x60], eax
and eax, 0x18000
cmp eax, 0x18000
jne 0x4511dc
test r14b, r14b
jne 0x4511dc
mov r11d, dword [rsp + 0x80]
mov eax, dword [r15 + 0xb0]
mov rcx, qword [rsp + 0x88]
test r11d, r11d
mov dword [rcx + 0x8c], eax
je 0x44fa0a
mov rcx, qword [rsp + 0x50]
mov rax, qword [rcx + 0x208]
test rax, rax
je 0x44fa0a
mov r9, qword [0x0050ae40]
mov rdx, qword [rax + 0x70]
add r9, 0x250
cmp rdx, r9
je 0x44fa0a
mov r12, qword [rax + 0xb8]
mov rax, qword [rcx + 0x98]
mov rdx, qword [rdx + 0xe8]
mov qword [rsp + 0x60], rax
mov eax, dword [rsp + 0x60]
add eax, 1
mov dword [rdx + 0x2c], eax
mov rax, qword [rsp + 0x238]
test byte [rax], 1
jne 0x44fc55
mov r10d, dword [rcx + 0x54]
test r10d, r10d
jne 0x44fc55
mov rax, qword [rsp + 0x50]
mov rsi, qword [rax + 0x160]
lea rax, [rsp + 0x110]
mov qword [rsp + 0x60], rax
test rsi, rsi
je 0x44fa0a
mov rax, qword [rsi + 0x18]
mov qword [rsp + 0x110], rax
mov rax, qword [rsi + 0x20]
mov qword [rsp + 0x118], rax
mov rax, qword [rsi + 0x28]
mov qword [rsp + 0x120], rax
mov rax, qword [rsi + 0x30]
and byte [rsp + 0x125], 0xfc
mov rcx, qword [rsi + 8]
mov qword [rsp + 0x128], rax
mov edx, dword [rsi + 0x30]
call fcn.0042f3d0
test rax, rax
mov rdi, rax
je 0x44f9d4
mov rcx, qword [rax + 0x70]
mov rax, qword [rcx + 0xe8]
mov eax, dword [rax + 0x88]
mov dword [rsp + 0x128], eax
sub eax, 0xff00
cmp eax, 0xfffeffff
jbe 0x451201
mov rax, qword [rsi + 0x18]
add rax, qword [rdi + 0x68]
add rax, qword [rcx + 0x30]
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x48]
xor r9d, r9d
mov rdx, qword [rsp + 0x60]
mov rcx, r15
mov r10, qword [rax + 0x320]
movzx eax, byte [r10 + 5]
imul eax, dword [rsi + 0x14]
cdqe
lea r8, [r12 + rax]
call qword [r10 + 0x38]
mov rsi, qword [rsi]
test rsi, rsi
jne 0x44f94c
mov rax, qword [rsp + 0x238]
lea rdx, [0x00440f80]
mov r8, rbp
mov dword [rsp + 0xd0], 0
mov dword [rsp + 0xd4], 0
mov qword [rsp + 0xe0], r13
mov rcx, qword [rax + 0x28]
call fcn.0040ef00
mov ebx, dword [rsp + 0xd0]
test ebx, ebx
jne 0x44e32d
mov rax, qword [rsp + 0x48]
mov r10, qword [rax + 0x1b0]
test r10, r10
je 0x44fa8a
mov rax, qword [rsp + 0x238]
mov eax, dword [rax]
mov dword [rsp + 0x60], eax
and eax, 0x18000
cmp eax, 0x18000
jne 0x44fe15
test r14b, r14b
jne 0x44fe15
mov rcx, qword [rsp + 0x170]
call fcn.00454d40
mov rax, qword [rsp + 0x160]
mov rsi, qword [rax + 0x28]
mov rax, qword [rsi + 0xa8]
test rax, rax
je 0x44fd9e
mov rdx, qword [rsp + 0x168]
mov rcx, qword [rdx + 0xf8]
mov r9d, dword [rcx + 0xc70]
test r9d, r9d
jne 0x44faee
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elflink.c
mov edx, 0x25d9
call fcn.0040a300
mov rdx, qword [rsp + 0x168]
mov rax, qword [rsi + 0xa8]
mov rdx, qword [rdx + 8]
mov rbp, qword [rdx + 0x370]
mov rdx, qword [rbp + 0x320]
movzx ecx, byte [rdx + 5]
imul rcx, rax
call fcn.0040f490
test rax, rax
mov r12, rax
je 0x44e32d
cmp qword [rsp + 0x1c8], 0
je 0x44fb4c
mov rax, qword [rsp + 0x168]
mov ecx, dword [rax + 0xb0]
shl rcx, 2
call fcn.0040f580
test rax, rax
mov qword [rsp + 0x1c8], rax
je 0x44fd38
mov rdx, qword [rsi + 0xa8]
xor r14d, r14d
mov qword [rsp + 0x60], 0
test rdx, rdx
je 0x44fbce
mov rdi, r14
add rdi, qword [rsi + 0xb8]
mov eax, dword [rdi + 0x10]
cmp eax, 0xffffffff
jne 0x44fd45
mov dword [rdi + 0x10], 0
mov r10, qword [rbp + 0x320]
mov ecx, dword [rdi + 0x24]
add r14, 0x28
mov rdx, qword [rsp + 0x1c8]
movzx eax, byte [r10 + 5]
imul eax, dword [rdi + 0x20]
lea r9, [rdx + rcx*4]
mov rdx, rdi
mov rcx, qword [rsp + 0x168]
lea r8, [r12 + rax]
call qword [r10 + 0x38]
add qword [rsp + 0x60], 1
mov rdx, qword [rsi + 0xa8]
mov rax, qword [rsp + 0x60]
cmp rax, rdx
jb 0x44fb64
mov rax, qword [rsp + 0x160]
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 0x78]
test rax, rax
je 0x44fbf4
mov rcx, qword [rsi + 0xb8]
mov r8, qword [rsp + 0x170]
call rax
mov rcx, qword [rsp + 0x168]
mov rax, qword [rbp + 0x320]
xor r8d, r8d
mov rdi, qword [rcx + 0xf8]
movzx ebp, byte [rax + 5]
imul rbp, qword [rsi + 0xa8]
mov rdx, qword [rdi + 0x80]
add rdx, qword [rdi + 0x78]
call fcn.0040c350
test eax, eax
je 0x44fd5c
mov rcx, r12
call sub.msvcrt.dll_free
mov rcx, qword [rsi + 0xb8]
call sub.msvcrt.dll_free
mov qword [rsi + 0xb8], 0
jmp 0x44e32f
mov rdi, qword [r15 + 0x88]
mov qword [rsp + 0x118], 0
mov dword [rsp + 0x120], 0
mov byte [rsp + 0x124], 3
mov byte [rsp + 0x125], 0
mov byte [rsp + 0x126], 0
test rdi, rdi
je 0x44f92a
lea rax, [rsp + 0x110]
mov dword [rsp + 0x60], ebx
mov rbx, rdi
mov qword [rsp + 0x70], rax
mov rax, qword [rbx + 0xe8]
mov esi, dword [rax + 0x8c]
test esi, esi
jle 0x44fd22
mov edi, dword [rax + 0x88]
test edi, edi
jg 0x44fcd4
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elflink.c
mov edx, 0x3122
call fcn.0040a300
mov dword [rsp + 0x128], edi
sub edi, 0xff00
cmp edi, 0xfffeffff
jbe 0x44fdfc
mov rax, qword [rbx + 0x30]
xor r9d, r9d
mov rdx, qword [rsp + 0x70]
mov rcx, r15
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x48]
mov r11, qword [rax + 0x320]
movzx eax, byte [r11 + 5]
imul eax, esi
cdqe
lea r8, [r12 + rax]
call qword [r11 + 0x38]
mov rbx, qword [rbx + 0x18]
test rbx, rbx
jne 0x44fca8
mov ebx, dword [rsp + 0x60]
jmp 0x44f92a
mov rcx, r12
call sub.msvcrt.dll_free
jmp 0x44e32f
mov rcx, qword [rsp + 0x170]
mov edx, eax
call fcn.00454b40
mov dword [rdi + 0x10], eax
jmp 0x44fb81
mov r8, qword [rsp + 0x168]
mov rdx, rbp
mov rcx, r12
call fcn.0040c1b0
cmp rbp, rax
jne 0x44fc31
add qword [rdi + 0x80], rbp
mov rcx, r12
call sub.msvcrt.dll_free
mov rcx, qword [rsi + 0xb8]
call sub.msvcrt.dll_free
mov qword [rsi + 0xb8], 0
mov r8d, dword [r15 + 0xb0]
test r8d, r8d
jne 0x45027c
mov rax, qword [rsp + 0x238]
mov rdi, qword [rax + 0x58]
test rdi, rdi
je 0x45005f
mov rax, qword [r15 + 8]
mov edx, 1
mov rcx, rdi
mov rbp, qword [rax + 0x370]
call fcn.0040e7a0
test eax, eax
jne 0x44fe3a
mov rax, qword [rsp + 0x238]
lea rcx, str._pB:_failed_to_generate_import_library
mov rdx, qword [rax + 0x58]
call fcn.0040a1e0
jmp 0x44e32f
mov rcx, r15
call fcn.0043ec30
test eax, eax
jne 0x44fced
mov ebx, dword [rsp + 0x60]
jmp 0x44e32f
lea r9, [fcn.0043ec70]
mov r8, r13
mov rdx, qword [rsp + 0x238]
mov rcx, r15
call r10
test eax, eax
jne 0x44fa8a
jmp 0x44e32d
xor edx, edx
mov rcx, rdi
mov esi, dword [r15 + 0x40]
call fcn.0040b090
test eax, eax
je 0x44fddf
and esi, 0xfffffffc
mov rcx, rdi
mov edx, esi
call fcn.0040a2b0
test eax, eax
je 0x44fddf
mov rcx, r15
call fcn.00409f10
mov rcx, r15
mov esi, eax
call fcn.00409f20
mov r9, qword [rdi + 8]
mov r8d, eax
mov edx, esi
mov rcx, rdi
call qword [r9 + 0x290]
test eax, eax
jne 0x44feab
test byte [r15 + 0x44], 0x40
jne 0x44fddf
mov rcx, r15
call fcn.00409f10
mov rcx, rdi
mov esi, eax
call fcn.00409f10
cmp esi, eax
jne 0x44fddf
mov rax, qword [r15 + 8]
mov rcx, r15
call qword [rax + 0x1f0]
test eax, eax
js 0x44fddf
movsxd rcx, eax
call fcn.0040f490
test rax, rax
mov rsi, rax
je 0x44fddf
mov rax, qword [r15 + 8]
mov rdx, rsi
mov rcx, r15
call qword [rax + 0x1f8]
test eax, eax
mov dword [rsp + 0x60], eax
js 0x44ff44
mov rax, qword [rdi + 8]
mov rdx, rdi
mov rcx, r15
call qword [rax + 0x160]
test eax, eax
je 0x44ff44
mov rax, qword [rbp + 0x1b8]
mov r8, rsi
mov rdx, qword [rsp + 0x238]
mov rcx, r15
mov r9d, dword [rsp + 0x60]
test rax, rax
je 0x451237
call rax
mov ebp, eax
test ebp, ebp
jne 0x44ff51
mov ecx, 7
call fcn.0040a380
lea rcx, str._pB:_no_symbol_found_for_import_library
mov rdx, rdi
call fcn.0040a1e0
mov rcx, rsi
call sub.msvcrt.dll_free
jmp 0x44fddf
movsxd rax, ebp
mov rcx, rdi
lea rdx, [rax + rax*2]
shl rdx, 5
call fcn.00410a80
test rax, rax
je 0x44ff44
test ebp, ebp
jle 0x45001f
mov r9, qword [0x0050ae40]
lea edx, [rbp - 1]
mov rcx, rsi
lea r8, [rsi + rdx*8 + 8]
lea r10, [r9 + 0x250]
mov rdx, qword [rcx]
add rcx, 8
mov r9, qword [rdx]
mov qword [rax], r9
mov r9, qword [rdx + 8]
mov qword [rax + 8], r9
mov r9, qword [rdx + 0x10]
mov qword [rax + 0x10], r9
mov r11, qword [rdx + 0x18]
mov qword [rax + 0x18], r11
mov r11, qword [rdx + 0x20]
mov qword [rax + 0x20], r11
mov r11, qword [rdx + 0x28]
mov qword [rax + 0x28], r11
mov r11, qword [rdx + 0x30]
mov qword [rax + 0x30], r11
mov r11, qword [rdx + 0x38]
mov qword [rax + 0x38], r11
mov r11, qword [rdx + 0x40]
mov qword [rax + 0x40], r11
mov r11, qword [rdx + 0x48]
mov qword [rax + 0x48], r11
mov r11, qword [rdx + 0x50]
mov qword [rax + 0x50], r11
mov rdx, qword [rdx + 0x58]
mov qword [rax + 0x20], r10
mov dword [rax + 0x48], 0xfffffff1
mov qword [rax + 0x58], rdx
mov rdx, qword [rcx - 8]
mov rdx, qword [rdx + 0x20]
add r9, qword [rdx + 0x30]
mov qword [rax + 0x10], r9
mov qword [rax + 0x30], r9
mov qword [rcx - 8], rax
add rax, 0x60
cmp rcx, r8
jne 0x44ff8a
mov r8d, ebp
mov rdx, rsi
mov rcx, rdi
call fcn.00469340
mov rax, qword [rdi + 8]
mov rdx, rdi
mov rcx, r15
call qword [rax + 0x138]
test eax, eax
je 0x44ff44
mov rcx, rdi
call fcn.004108a0
mov rcx, rsi
mov edi, eax
call sub.msvcrt.dll_free
test edi, edi
je 0x44fddf
mov rbx, qword [r15 + 0x88]
mov rbp, qword [rsp + 0x238]
test rbx, rbx
je 0x45010a
test byte [rbx + 0x28], 4
mov rsi, qword [rbx + 0xe8]
je 0x4500fd
mov rax, qword [rsp + 0x48]
mov edi, 1
mov rax, qword [rax + 0x210]
test rax, rax
je 0x4500a7
xor edi, edi
mov rcx, rbx
call rax
test eax, eax
setne dil
cmp qword [rsi + 0x58], 0
je 0x4500cd
lea r8, [rsi + 0x58]
mov qword [rsp + 0x20], rbp
mov r9d, edi
mov rdx, rbx
mov rcx, r15
call fcn.0049d690
test eax, eax
je 0x44e32d
cmp qword [rsi + 0x70], 0
je 0x4500f3
lea r8, [rsi + 0x70]
mov qword [rsp + 0x20], rbp
mov r9d, edi
mov rdx, rbx
mov rcx, r15
call fcn.0049d690
test eax, eax
je 0x44e32d
mov dword [rbx + 0x90], 0
mov rbx, qword [rbx + 0x18]
test rbx, rbx
jne 0x450077
mov edx, dword [rsp + 0x80]
test edx, edx
je 0x450661
mov rax, qword [rsp + 0x238]
test byte [rax + 5], 2
je 0x450272
cmp qword [rsp + 0x78], 0
je 0x450272
mov rax, qword [r15 + 8]
xor edx, edx
mov rcx, r15
mov rax, qword [rax + 0x370]
mov qword [rsp + 0x80], rax
mov rdi, rax
mov rax, qword [rax + 0x320]
movzx eax, byte [rax + 9]
mov dword [rsp + 0x98], eax
call fcn.0040a030
lea rdx, str..rela.dyn
mov rcx, r15
mov dword [rsp + 0x88], eax
call fcn.004119b0
lea rdx, str..rel.dyn
mov rbx, rax
mov rcx, r15
call fcn.004119b0
test rbx, rbx
mov r11, rax
je 0x450493
mov rax, qword [rbx + 0x40]
test rax, rax
mov qword [rsp + 0x60], rax
je 0x450487
test r11, r11
je 0x450487
mov r12, qword [r11 + 0x40]
test r12, r12
je 0x450fd1
mov r14, qword [rbx + 0x110]
test r14, r14
je 0x450fa3
mov r8, qword [rdi + 0x320]
mov esi, 1
mov rdi, r14
xor ecx, ecx
cmp dword [rdi + 8], 1
je 0x4503e9
mov rdi, qword [rdi]
test rdi, rdi
jne 0x4501e6
mov rbp, qword [r11 + 0x110]
test rbp, rbp
mov rdi, rbp
je 0x450219
cmp dword [rdi + 8], 1
je 0x45043a
mov rdi, qword [rdi]
test rdi, rdi
jne 0x450207
xor ecx, 1
or esi, ecx
and esi, 1
je 0x4504bf
movzx eax, byte [r8 + 4]
mov qword [rsp + 0x70], rax
mov rax, qword [r8 + 0x70]
mov qword [rsp + 0x90], rax
mov rax, qword [r8 + 0x78]
mov qword [rsp + 0xa8], rax
test r14, r14
je 0x450272
xor eax, eax
cmp dword [r14 + 8], 1
jne 0x45025f
mov rdx, qword [r14 + 0x20]
add rax, qword [rdx + 0x40]
mov r14, qword [r14]
test r14, r14
jne 0x450250
cmp rax, qword [rsp + 0x60]
je 0x450a0a
xor ebx, ebx
xor r12d, r12d
jmp 0x45050f
mov rdi, qword [r15 + 0xf8]
mov rax, qword [rsp + 0x88]
mov rbp, qword [rdi + 0x2e0]
mov rsi, qword [rax + 0x80]
add rsi, qword [rax + 0x78]
test rbp, rbp
je 0x4502ad
mov ecx, dword [rbp]
test ecx, ecx
jne 0x450370
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x170]
mov dword [rdi + 0x104], 3
mov eax, dword [rax + 0x3c8]
mov qword [rdi + 0x110], 0
mov qword [rdi + 0x108], rax
call fcn.00454b20
lea rcx, [rdi + 0x100]
mov r8d, 1
mov rdx, rsi
mov qword [rdi + 0x120], rax
mov qword [rdi + 0x138], 0
mov dword [rdi + 0x128], 0
mov dword [rdi + 0x12c], 0
mov qword [rdi + 0x130], 1
call fcn.0042faf0
mov rdx, qword [r15 + 0xf8]
xor r8d, r8d
mov rcx, r15
mov rdx, qword [rdx + 0xc90]
mov qword [rdx + 0x40], rax
mov rdx, qword [rdi + 0x118]
call fcn.0040c350
test eax, eax
jne 0x44e32d
mov rdx, qword [rsp + 0x170]
mov rcx, r15
call fcn.00454c50
test eax, eax
jne 0x44fdae
jmp 0x44e32d
mov dword [rbp + 4], 0x12
mov edi, dword [r15 + 0xb0]
mov rdx, rsi
mov r8d, 1
mov rcx, rbp
mov qword [rbp + 0x38], 4
mov qword [rbp + 0x30], 4
shl rdi, 2
mov qword [rbp + 0x20], rdi
call fcn.0042faf0
mov rdx, qword [rbp + 0x18]
xor r8d, r8d
mov rcx, r15
mov rsi, rax
call fcn.0040c350
test eax, eax
jne 0x44e32d
mov rcx, qword [rsp + 0x1c8]
mov r8, r15
mov rdx, rdi
call fcn.0040c1b0
cmp rdi, rax
jne 0x44e32d
mov rdi, qword [r15 + 0xf8]
jmp 0x4502ad
mov rax, qword [rdi + 0x20]
movzx r10d, byte [r8 + 4]
xor edx, edx
mov r9, qword [rax + 0x40]
mov rax, r9
div r10
movzx r10d, byte [r8 + 3]
mov rax, r9
test rdx, rdx
mov edx, 0
jne 0x45080e
div r10
test rdx, rdx
je 0x4501f0
xor esi, 1
test esi, ecx
jne 0x4504f1
mov ecx, 1
mov esi, 1
jmp 0x4501f0
mov rax, qword [rdi + 0x20]
movzx r10d, byte [r8 + 4]
xor edx, edx
mov r9, qword [rax + 0x40]
mov rax, r9
div r10
movzx r10d, byte [r8 + 3]
mov rax, r9
test rdx, rdx
mov edx, 0
jne 0x4509ec
div r10
test rdx, rdx
je 0x450211
xor esi, 1
test esi, ecx
jne 0x4504f1
mov ecx, 1
mov esi, 1
jmp 0x450211
cmp qword [rsp + 0x60], 0
jne 0x450fd1
test r11, r11
je 0x450272
mov r12, qword [r11 + 0x40]
test r12, r12
je 0x450272
mov rax, qword [rsp + 0x80]
mov rbp, qword [r11 + 0x110]
mov r8, qword [rax + 0x320]
movzx eax, byte [r8 + 3]
mov r14, rbp
mov qword [rsp + 0x60], r12
mov rbx, r11
mov qword [rsp + 0x70], rax
mov rax, qword [r8 + 0x60]
mov qword [rsp + 0x90], rax
mov rax, qword [r8 + 0x68]
mov qword [rsp + 0xa8], rax
jmp 0x450249
lea rcx, str._pB:_unable_to_sort_relocs___they_are_in_more_than_one_size
mov rdx, r15
call fcn.0040a1e0
xor ebx, ebx
mov ecx, 5
xor r12d, r12d
call fcn.0040a380
mov rcx, qword [rsp + 0x78]
lea rdx, str..dynamic
call fcn.00411a70
test rax, rax
mov rsi, rax
jne 0x450539
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elflink.c
mov edx, 0x31c6
call fcn.0040a300
mov r14, qword [rsi + 0xb8]
mov rax, r14
add rax, qword [rsi + 0x40]
cmp r14, rax
mov qword [rsp + 0x70], rax
jae 0x450661
lea rcx, [rsp + 0x110]
mov rbp, qword [rsp + 0x48]
mov qword [rsp + 0x60], rcx
mov rcx, qword [0x0050ae40]
mov rax, qword [rbp + 0x320]
add rcx, 0x250
mov qword [rsp + 0x80], rcx
mov r8, qword [rsp + 0x60]
mov rdx, r14
mov rcx, qword [rsp + 0x78]
call qword [rax + 0x50]
mov rax, qword [rsp + 0x110]
cmp rax, 0x12
jbe 0x45095f
cmp rax, 0x20
je 0x450956
jbe 0x4508f1
cmp rax, 0x6ffffff0
je 0x4508e5
ja 0x4508c8
cmp rax, 0x21
je 0x450889
cmp rax, 0x6ffffef5
lea rdi, str..gnu.hash
jne 0x450873
mov rcx, qword [rsp + 0x78]
mov rdx, rdi
call fcn.00411a70
mov rsi, rax
test rsi, rsi
je 0x450855
mov rdx, qword [rsi + 0x70]
cmp rdx, qword [rsp + 0x80]
je 0x450855
mov rax, qword [rdx + 0xe8]
cmp dword [rax + 4], 7
je 0x450828
mov rax, qword [rsi + 0x68]
add rax, qword [rdx + 0x30]
mov qword [rsp + 0x118], rax
mov rax, qword [rbp + 0x320]
mov r8, r14
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x78]
call qword [rax + 0x58]
mov rax, qword [rbp + 0x320]
movzx edx, byte [rax + 6]
add r14, rdx
cmp qword [rsp + 0x70], r14
ja 0x450584
cmp qword [rsp + 0x78], 0
je 0x4506dc
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x238]
mov rcx, r15
call qword [rax + 0x140]
test eax, eax
je 0x44ed29
mov rax, qword [rsp + 0x238]
test byte [rax + 4], 0x18
jne 0x450ed5
mov rax, qword [rsp + 0x78]
mov r12, qword [rax + 0x88]
test r12, r12
je 0x4506dc
mov rax, qword [0x0050ae40]
mov r14, qword [rsp + 0x50]
lea rbp, str..dynstr
lea rbx, [rax + 0x250]
mov edx, dword [r12 + 0x28]
test dh, 1
jne 0x450de5
mov r12, qword [r12 + 0x18]
test r12, r12
jne 0x4506c4
mov rax, qword [rsp + 0x238]
test byte [rax + 1], 0x20
jne 0x450742
mov rax, qword [rsp + 0x238]
mov dword [rsp + 0x110], 0
movzx eax, byte [rax]
mov byte [rsp + 0x48], al
and eax, 3
cmp al, 2
je 0x45071c
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elflink.c
mov edx, 0x32da
call fcn.0040a300
lea r8, [rsp + 0x110]
lea rdx, [0x0042ad40]
mov rcx, r15
call fcn.00411f40
mov eax, dword [rsp + 0x110]
test eax, eax
jne 0x44ed29
mov rax, qword [rsp + 0x50]
cmp qword [rax + 0x130], 0
je 0x45076d
mov rdx, qword [rsp + 0x50]
mov rcx, r15
add rdx, 0x100
call fcn.004691c0
test eax, eax
je 0x44ed29
mov rdx, qword [rsp + 0x238]
mov rcx, r15
call fcn.00458fd0
test eax, eax
je 0x44ed29
mov rax, qword [rsp + 0x238]
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 0x80]
test rax, rax
je 0x45079f
call rax
lea rcx, [r15 + 0x88]
mov rdx, r13
mov ebx, 1
call fcn.0043f500
mov r14, qword [rsp + 0x58]
test r14, r14
je 0x44e32f
mov rdi, qword [rsp + 0xa0]
mov rcx, rdi
call fcn.0040f490
test rax, rax
mov rsi, rax
je 0x44e32d
mov r8, rdi
mov rdx, rax
mov rcx, r15
call fcn.00453960
mov rcx, r15
mov qword [rsp + 0x20], rdi
xor r9d, r9d
mov r8, rsi
mov rdx, r14
call fcn.00412050
mov rcx, rsi
call sub.msvcrt.dll_free
jmp 0x44e32f
div r10
test rdx, rdx
jne 0x450846
and esi, ecx
jne 0x4504f1
mov ecx, 1
jmp 0x4501f0
lea rcx, str.warning:_section__s_is_being_made_into_a_note
mov rdx, rdi
call fcn.0040a1e0
mov ecx, 0xf
call fcn.0040a380
jmp 0x44ed29
mov rdx, r15
lea rcx, str._pB:_unable_to_sort_relocs___they_are_of_an_unknown_size
jmp 0x4504fb
lea rcx, str.could_not_find_section__s
mov rdx, rdi
call fcn.0040a1e0
jmp 0x44ed29
cmp rax, 8
jbe 0x4510bc
mov rax, qword [rbp + 0x320]
movzx edx, byte [rax + 6]
add rdx, r14
mov r14, rdx
jmp 0x450656
lea rdi, str..preinit_array
mov rdx, rdi
mov rcx, r15
call fcn.004119b0
test rax, rax
mov rsi, rax
je 0x450855
mov rax, qword [rax + 0x40]
test rax, rax
jne 0x450629
lea rcx, str.warning:__s_section_has_zero_size
mov rdx, rdi
call fcn.0040a1e0
mov rax, qword [rsi + 0x40]
jmp 0x450629
cmp rax, 0x6ffffffc
je 0x450911
cmp rax, 0x6ffffffe
lea rdi, str..gnu.version_r
je 0x4505e5
jmp 0x450873
lea rdi, str..gnu.version
jmp 0x4505e5
cmp rax, 0x1a
je 0x45094d
jbe 0x450929
cmp rax, 0x1b
je 0x45091d
cmp rax, 0x1c
lea rdi, str..fini_array
je 0x450890
jmp 0x450873
lea rdi, str..gnu.version_d
jmp 0x4505e5
lea rdi, str..init_array
jmp 0x450890
cmp rax, 0x19
lea rdi, str..init_array
jne 0x450873
mov rdx, rdi
mov rcx, r15
call fcn.004119b0
mov rsi, rax
jmp 0x4505f5
lea rdi, str..fini_array
jmp 0x45093a
lea rdi, str..preinit_array
jmp 0x45093a
cmp rax, 0x11
jae 0x4510bc
cmp rax, 6
je 0x4510b0
ja 0x45101a
cmp rax, 4
je 0x45100e
ja 0x45122b
test rax, rax
jne 0x450873
mov rax, qword [rbp + 0x320]
movzx edx, byte [rax + 6]
add rdx, r14
test r12, r12
je 0x450881
cmp qword [rsp + 0x70], rdx
jbe 0x450881
mov rcx, qword [rbx + 0xe8]
mov ecx, dword [rcx + 4]
cmp ecx, 4
je 0x45121a
cmp ecx, 9
jne 0x450881
mov qword [rsp + 0x110], 0x6ffffffa
mov qword [rsp + 0x118], r12
xor r12d, r12d
jmp 0x450638
div r10
test rdx, rdx
jne 0x450846
and esi, ecx
jne 0x4504f1
mov ecx, 1
jmp 0x450211
mov edx, dword [rsp + 0x98]
sub edx, 1
movsxd rdx, edx
lea rdx, [rdx + rdx*2]
lea rcx, [rdx*8 + 0x28]
xor edx, edx
div qword [rsp + 0x70]
mov qword [rsp + 0x60], rcx
test rax, rax
mov rbp, rax
je 0x450272
imul rcx, rax
call fcn.0040f580
test rax, rax
mov r10, rax
je 0x450b8c
mov rax, qword [rsp + 0x80]
movabs rdx, 0xffffffff00000000
mov r9, qword [rbx + 0x110]
mov rax, qword [rax + 0x320]
cmp byte [rax + 0xa], 0x20
mov rax, 0xffffffffffffff00
cmovne rax, rdx
test r9, r9
mov qword [rsp + 0x98], rax
mov eax, dword [rsp + 0x88]
mov qword [rsp + 0xb0], rax
je 0x450ac0
mov r11, r13
mov r13, rbp
mov rbp, rbx
cmp dword [r9 + 8], 1
je 0x450d1d
mov r9, qword [r9]
test r9, r9
jne 0x450aa4
mov rbx, rbp
mov rbp, r13
mov r13, r11
mov r8, qword [rsp + 0x60]
lea r9, [0x0043e7b0]
mov rcx, r10
mov rdx, rbp
mov qword [rsp + 0x80], r10
xor r12d, r12d
call sub.msvcrt.dll_qsort
mov r10, qword [rsp + 0x80]
mov rcx, r10
cmp dword [rcx + 8], 1
jne 0x450bcc
add r12, 1
add rcx, qword [rsp + 0x60]
cmp rbp, r12
jne 0x450aed
mov r8, qword [rsp + 0x60]
mov rdx, rbp
lea r9, [0x00440c00]
sub rdx, r12
mov qword [rsp + 0x80], r10
call sub.msvcrt.dll_qsort
mov rax, qword [rsp + 0x238]
mov r10, qword [rsp + 0x80]
mov rax, qword [rax + 0x28]
mov rdx, qword [rax + 0x1c0]
test rdx, rdx
je 0x450b4e
cmp rbx, qword [rdx + 0x70]
je 0x450c0c
mov rbp, qword [rbx + 0x110]
mov eax, dword [rsp + 0x88]
mov r14, r10
test rbp, rbp
mov qword [rsp + 0x80], rax
je 0x450b7f
cmp dword [rbp + 8], 1
je 0x450c70
mov rbp, qword [rbp]
test rbp, rbp
jne 0x450b6c
mov rcx, r10
call sub.msvcrt.dll_free
jmp 0x45050f
mov rax, qword [rsp + 0x238]
mov r9, r15
xor r8d, r8d
lea rdx, str.not_enough_memory_to_sort_relocations
mov rcx, qword [rsp + 0x238]
xor ebx, ebx
xor r12d, r12d
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
call qword [rax + 0x28]
jmp 0x45050f
cmp rbp, r12
mov r9, r12
mov r8, rcx
mov rax, rcx
jbe 0x450b05
mov rdx, qword [rax + 0x18]
xor rdx, qword [r8 + 0x18]
test qword [rsp + 0x98], rdx
cmovne r8, rax
add r9, 1
mov rdx, qword [r8 + 0x10]
mov qword [rax], rdx
add rax, qword [rsp + 0x60]
cmp rbp, r9
jne 0x450bde
jmp 0x450b05
lea rax, [rbp + rbp*4]
lea rcx, [r10 + rax*8]
xor eax, eax
cmp dword [rcx - 0x20], 4
jne 0x450ce4
add rax, 1
sub rcx, 0x28
cmp rbp, rax
jne 0x450c17
imul rax, qword [rsp + 0x70]
cmp qword [rdx + 0x40], rax
jne 0x450b4e
mov rax, qword [rbx + 0x110]
lea r8, [rbx + 0x110]
test rax, rax
je 0x450d07
cmp dword [rax + 8], 1
je 0x450cf2
mov r8, rax
mov rcx, qword [rax]
mov rax, r14
mov r14, rax
mov rax, rcx
jmp 0x450c4c
mov rax, r14
xor edx, edx
mov rcx, qword [rbp + 0x20]
sub rax, r10
div qword [rsp + 0x60]
mov rsi, qword [rcx + 0xb8]
xor edx, edx
imul rax, qword [rsp + 0x70]
mov rdi, rsi
add rdi, qword [rcx + 0x40]
div qword [rsp + 0x80]
cmp rsi, rdi
mov qword [rcx + 0x68], rax
jae 0x450b76
mov qword [rsp + 0x88], r10
lea rdx, [r14 + 0x10]
mov r8, rsi
mov rcx, r15
mov rax, qword [rsp + 0xa8]
call rax
add rsi, qword [rsp + 0x70]
add r14, qword [rsp + 0x60]
mov r10, qword [rsp + 0x88]
cmp rdi, rsi
ja 0x450cac
jmp 0x450b76
test rax, rax
je 0x450b4e
jmp 0x450c2e
cmp rdx, qword [rax + 0x20]
jne 0x450c5f
mov rcx, qword [rax]
mov qword [r8], rcx
jmp 0x450c68
mov qword [r8], r14
mov qword [r14], 0
mov qword [rbx + 0x118], r14
jmp 0x450b4e
mov r12, qword [r9 + 0x20]
mov rsi, qword [r12 + 0xb8]
test rsi, rsi
je 0x450e7a
mov rax, qword [rsp + 0xb0]
xor edx, edx
mov rbx, rsi
imul rax, qword [r12 + 0x68]
add rbx, qword [r12 + 0x40]
div qword [rsp + 0x70]
imul rax, qword [rsp + 0x60]
cmp rsi, rbx
jae 0x450aaf
lea rdi, [r10 + rax + 0x10]
mov qword [rsp + 0xc8], r11
mov qword [rsp + 0xc0], r9
mov r8, rdi
mov qword [rsp + 0xb8], r10
mov rdx, rsi
mov rcx, r15
mov rax, qword [rsp + 0x90]
call rax
mov rax, qword [rsp + 0x80]
mov r8, rdi
mov rdx, r12
mov rcx, qword [rsp + 0x238]
call qword [rax + 0x240]
add rsi, qword [rsp + 0x70]
mov dword [rdi - 8], eax
mov rax, qword [rsp + 0x98]
mov r10, qword [rsp + 0xb8]
mov r9, qword [rsp + 0xc0]
mov r11, qword [rsp + 0xc8]
mov qword [rdi - 0x10], rax
add rdi, qword [rsp + 0x60]
cmp rbx, rsi
ja 0x450d63
jmp 0x450aaf
cmp qword [r12 + 0x40], 0
je 0x4506d2
mov rax, qword [r12 + 0x70]
cmp rax, rbx
je 0x4506d2
and edx, 0x100000
je 0x4506d2
cmp qword [r14 + 0x130], r12
je 0x4506d2
cmp qword [r14 + 0x138], r12
je 0x4506d2
mov rsi, qword [r12]
mov ecx, 8
mov rdi, rbp
repe cmpsb byte [rsi], byte [rdi]
je 0x450e9b
mov rsi, qword [r12 + 0x68]
mov rdx, r12
mov rcx, r15
call fcn.0040a030
mov eax, eax
mov rcx, qword [r12 + 0x40]
mov r8, qword [r12 + 0xb8]
imul rax, rsi
mov rdx, qword [r12 + 0x70]
mov qword [rsp + 0x20], rcx
mov rcx, r15
mov r9, rax
call fcn.00412050
test eax, eax
jne 0x4506d2
jmp 0x44ed29
cmp qword [r12 + 0x40], 0
je 0x450aaf
mov rcx, r10
mov r13, r11
xor ebx, ebx
call sub.msvcrt.dll_free
xor r12d, r12d
jmp 0x45050f
mov rax, qword [rax + 0xe8]
xor r8d, r8d
mov rcx, r15
mov rdx, qword [rax + 0x18]
call fcn.0040c350
test eax, eax
jne 0x44ed29
mov rdx, qword [r14 + 0xa0]
mov rcx, r15
call fcn.00454c50
test eax, eax
jne 0x4506d2
jmp 0x44ed29
mov rcx, qword [rsp + 0x78]
lea rdx, str..dynamic
call fcn.00411a70
test rax, rax
je 0x450699
mov rbx, qword [rax + 0xb8]
mov rsi, rbx
add rsi, qword [rax + 0x40]
cmp rbx, rsi
jae 0x450699
mov rax, qword [rsp + 0x48]
lea rcx, [rsp + 0x110]
mov qword [rsp + 0x60], rcx
mov rax, qword [rax + 0x320]
mov r8, qword [rsp + 0x60]
mov rdx, rbx
mov rcx, qword [rsp + 0x78]
call qword [rax + 0x50]
cmp qword [rsp + 0x110], 0x16
je 0x450f57
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x320]
movzx edx, byte [rax + 6]
add rbx, rdx
cmp rsi, rbx
ja 0x450f1f
jmp 0x450699
mov rax, qword [rsp + 0x238]
movzx eax, byte [rax + 4]
mov byte [rsp + 0x48], al
and eax, 0x18
cmp al, 0x10
mov rax, qword [rsp + 0x238]
je 0x450ffb
movzx eax, byte [rax]
mov byte [rsp + 0x48], al
and eax, 3
cmp al, 3
mov rax, qword [rsp + 0x238]
mov rax, qword [rax + 0x20]
je 0x450fec
lea rcx, str._P:_warning:_creating_DT_TEXTREL_in_a_PIE_n
call qword [rax + 0x58]
jmp 0x450699
mov rbp, qword [r11 + 0x110]
mov rax, qword [rsp + 0x80]
test rbp, rbp
mov rdi, rbp
mov r8, qword [rax + 0x320]
je 0x450227
xor ecx, ecx
mov esi, 1
jmp 0x450207
mov rax, qword [rsp + 0x80]
mov r14, qword [rbx + 0x110]
mov r8, qword [rax + 0x320]
jmp 0x450227
lea rcx, str._P:_warning:_creating_DT_TEXTREL_in_a_shared_object_n
call qword [rax + 0x58]
jmp 0x450699
mov rax, qword [rax + 0x20]
lea rcx, str._P_X:_read_only_segment_has_dynamic_relocations_n
call qword [rax + 0x58]
jmp 0x450699
lea rdi, str..hash
jmp 0x4505e5
cmp rax, 0xc
je 0x451243
jbe 0x450869
cmp rax, 0xd
jne 0x450873
mov rax, qword [rsp + 0x238]
mov rdx, qword [rax + 0x90]
mov rcx, qword [rsp + 0x50]
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], 1
call fcn.00462850
test rax, rax
je 0x450873
movzx ecx, byte [rax + 0x18]
lea edx, [rcx - 3]
cmp dl, 1
ja 0x450873
mov rdx, qword [rax + 0x30]
mov qword [rsp + 0x118], rdx
mov rsi, qword [rax + 0x28]
mov rcx, qword [rsi + 0x70]
test rcx, rcx
je 0x451140
mov rax, rdx
add rax, qword [rsi + 0x68]
add rax, qword [rcx + 0x30]
mov qword [rsp + 0x118], rax
mov rax, qword [rbp + 0x320]
jmp 0x450638
lea rdi, str..dynsym
jmp 0x4505e5
mov rcx, qword [r15 + 0xf8]
lea rdx, [rax - 0x11]
cmp rdx, 2
mov r8d, dword [rcx + 0x2f4]
sbb edx, edx
and edx, 5
add edx, 4
cmp r8d, 1
jbe 0x451175
mov rcx, qword [rcx + 0x50]
sub r8d, 2
xor edi, edi
lea r9, [rcx + 8]
lea r10, [rcx + r8*8 + 0x10]
xor r8d, r8d
mov rcx, qword [r9]
cmp edx, dword [rcx + 4]
je 0x451158
add r9, 8
cmp r10, r9
jne 0x4510fa
cmp byte [rbp + 0x3cc], 0
js 0x45126b
cmp rax, 0x12
je 0x451257
cmp rax, 8
je 0x451257
mov qword [rsp + 0x118], rdi
mov rax, qword [rbp + 0x320]
jmp 0x450638
mov qword [rsp + 0x118], 0
mov rax, qword [rbp + 0x320]
jmp 0x450638
test byte [rcx + 8], 2
je 0x451102
add r8, qword [rcx + 0x20]
test rdi, rdi
mov rcx, qword [rcx + 0x10]
je 0x451170
cmp rcx, rdi
jae 0x451102
mov rdi, rcx
jmp 0x451102
xor edi, edi
xor r8d, r8d
jmp 0x45110b
lea rbx, str.ELFCLASS32
jmp 0x44ed02
lea r8, str.bfd_elf_final_link
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elflink.c
mov edx, 0x30ba
call fcn.0040a320
lea rsi, str.ELFCLASSNONE
jmp 0x44ece5
lea rsi, str.ELFCLASS32
jmp 0x44ece5
lea r8, str.bfd_elf_final_link
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elflink.c
mov edx, 0x30c2
call fcn.0040a320
lea rbx, str.ELFCLASSNONE
jmp 0x44ed02
lea r9, [fcn.0043ec70]
mov r8, r13
mov rdx, qword [rsp + 0x238]
mov rcx, r15
call r10
test eax, eax
jne 0x44f892
jmp 0x44e32d
mov rcx, r15
call fcn.0043ec30
test eax, eax
je 0x44e32f
mov rcx, qword [rdi + 0x70]
jmp 0x44f9c0
mov qword [rsp + 0x110], 0x6ffffff9
jmp 0x4509dc
lea rdi, str..dynstr
jmp 0x4505e5
call fcn.0042fa20
mov ebp, eax
jmp 0x44ff27
mov rax, qword [rsp + 0x238]
mov rdx, qword [rax + 0x88]
jmp 0x451043
mov qword [rsp + 0x118], r8
mov rax, qword [rbp + 0x320]
jmp 0x450638
mov rcx, qword [rsp + 0x50]
cmp qword [rcx + 0x1c0], 0
je 0x451118
mov rdx, rsi
mov rcx, r15
mov qword [rsp + 0x88], r8
call fcn.0040a030
mov rcx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x88]
mov rdx, qword [rcx + 0x1c0]
mov rcx, qword [rdx + 0x40]
sub r8, rcx
jne 0x4512bd
mov rax, qword [rsp + 0x110]
xor edi, edi
jmp 0x451118
mov r9, qword [rdx + 0x70]
mov rdx, qword [rdx + 0x68]
mov eax, eax
add rdx, qword [r9 + 0x30]
imul rax, rdx
cmp rax, rdi
jne 0x4512d7
add rdi, rcx
mov rax, qword [rsp + 0x110]
jmp 0x451118