Function at 0x475f20
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, 0x108
test byte [rcx + 0x45], 4
mov r13, rcx
mov qword [rsp + 0x158], rdx
jne 0x476110
mov rax, qword [rcx + 8]
mov rbx, qword [rax + 0x370]
mov rax, qword [rbx + 0x148]
test rax, rax
je 0x475f61
call rax
mov rdx, qword [rsp + 0x158]
mov rcx, r13
call qword [rbx + 0x198]
test eax, eax
jne 0x475fa0
mov dword [rsp + 0x3c], 0
mov eax, dword [rsp + 0x3c]
add rsp, 0x108
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsp + 0x158]
lea r8, [rsp + 0xd0]
lea rdx, [0x00470c10]
mov rcx, r13
mov dword [rsp + 0xd8], 0
mov qword [rsp + 0xd0], rax
call fcn.00447e10
mov eax, dword [rsp + 0xd8]
test eax, eax
mov dword [rsp + 0x3c], eax
jne 0x475f76
mov rbp, qword [r13 + 0xf8]
mov rax, qword [rbp + 0xc90]
mov rcx, qword [rax + 8]
call fcn.00499df0
cmp qword [rsp + 0x158], 0
je 0x476120
mov rax, qword [rsp + 0x158]
test byte [rax + 1], 0x20
je 0x476120
mov rdi, qword [r13 + 0x88]
mov r12d, 2
mov r15d, 1
test rdi, rdi
jne 0x4760a7
jmp 0x4761b4
mov edx, dword [rax]
lea r14d, [r12 + 1]
mov dword [rsi + 0x64], r12d
cmp edx, 0xffffffff
je 0x476067
mov rax, qword [r13 + 0xf8]
mov rax, qword [rax + 0xc90]
mov rcx, qword [rax + 8]
call fcn.00499cd0
mov rax, qword [rsi + 0x70]
test rax, rax
je 0x476104
mov edx, dword [rax]
lea r15d, [r14 + 1]
mov dword [rsi + 0x7c], r14d
cmp edx, 0xffffffff
je 0x47609a
mov rax, qword [r13 + 0xf8]
mov rax, qword [rax + 0xc90]
mov rcx, qword [rax + 8]
call fcn.00499cd0
mov rdi, qword [rdi + 0x18]
test rdi, rdi
je 0x4761b0
mov rsi, qword [rdi + 0xe8]
mov r12d, r15d
cmp dword [rsi + 4], 0x11
je 0x4760c2
add r12d, 1
mov dword [rsi + 0x88], r15d
mov edx, dword [rsi]
cmp edx, 0xffffffff
je 0x4760e0
mov rax, qword [r13 + 0xf8]
mov rax, qword [rax + 0xc90]
mov rcx, qword [rax + 8]
call fcn.00499cd0
mov rax, qword [rsi + 0x58]
test rax, rax
jne 0x476040
mov rax, qword [rsi + 0x70]
mov dword [rsi + 0x64], 0
mov r14d, r12d
test rax, rax
jne 0x476074
mov dword [rsi + 0x7c], 0
mov r15d, r14d
jmp 0x47609a
mov dword [rsp + 0x3c], 1
jmp 0x475f7e
mov rdi, qword [r13 + 0x88]
test rdi, rdi
je 0x476199
xor eax, eax
mov r15d, 1
jmp 0x476156
mov edx, dword [rdi + 0x90]
mov rdi, qword [rdi + 0x18]
add rax, rdx
test rdi, rdi
je 0x4769f0
mov rdx, qword [rdi + 0xe8]
cmp dword [rdx + 4], 0x11
jne 0x476140
test byte [rdi + 0x2a], 0x10
je 0x4766b3
mov rdx, qword [rdi + 0x20]
mov rcx, qword [rdi + 0x18]
test rdx, rdx
je 0x477022
mov qword [rdx + 0x18], rcx
test rcx, rcx
je 0x477016
mov qword [rcx + 0x20], rdx
sub dword [r13 + 0x98], 1
jmp 0x476140
mov r12d, 2
mov r15d, 1
and dword [r13 + 0x40], 0xfffffffe
jmp 0x47602c
lea r12d, [r15 + 1]
mov eax, dword [r13 + 0xb0]
test eax, eax
jne 0x476920
xor esi, esi
cmp qword [rsp + 0x158], 0
je 0x47690b
mov rax, qword [r13 + 0xf8]
mov edx, dword [rbp + 0xb0]
mov rax, qword [rax + 0xc90]
mov rcx, qword [rax + 8]
mov dword [rax + 0x4c], r15d
call fcn.00499cd0
mov rax, qword [r13 + 0xf8]
cmp r12d, 0xfffffeff
mov rdx, qword [rax + 0xc90]
mov edx, dword [rdx + 0x4c]
mov dword [rax + 0x48], edx
ja 0x476a43
mov edx, r12d
mov dword [rax + 0x2f4], r12d
mov dword [rax + 0x44], r12d
shl rdx, 3
mov rcx, r13
call fcn.004459f0
test rax, rax
mov r14, rax
je 0x475f76
mov edx, 0x50
mov rcx, r13
call fcn.004459f0
test rax, rax
mov qword [r14], rax
je 0x478a38
mov rax, qword [r13 + 0xf8]
lea rdx, [rbp + 0xb0]
test esi, esi
mov qword [rax + 0x50], r14
mov rax, qword [rax + 0xc90]
mov eax, dword [rax + 0x4c]
mov qword [r14 + rax*8], rdx
je 0x4762f4
mov rax, qword [r13 + 0xf8]
lea rdx, [rbp + 0x60]
mov eax, dword [rax + 0xc70]
mov qword [r14 + rax*8], rdx
mov rax, qword [r13 + 0xf8]
cmp dword [rax + 0x2f4], 0xff00
jbe 0x4762c8
mov rsi, qword [rax + 0x2e0]
test rsi, rsi
je 0x478f7d
mov eax, dword [rsi + 0x50]
mov qword [r14 + rax*8], rsi
mov rax, qword [r13 + 0xf8]
mov edx, dword [rax + 0xc70]
mov dword [rsi + 0x28], edx
mov rax, qword [rax + 0xc90]
lea rdx, [rbp + 0x100]
mov eax, dword [rax + 0x50]
mov qword [r14 + rax*8], rdx
mov rax, qword [r13 + 0xf8]
mov rax, qword [rax + 0xc90]
mov eax, dword [rax + 0x50]
mov dword [rbp + 0x88], eax
mov r15, qword [r13 + 0x88]
test r15, r15
je 0x47671c
mov rax, qword [0x00557240]
mov qword [rsp + 0x40], rbx
mov rbx, r14
mov r14, qword [rsp + 0x158]
lea r12, [rax + 0x250]
jmp 0x47644f
mov rcx, qword [rbp + 0x58]
mov qword [rbx + rax*8], rcx
movsxd rax, dword [rbp + 0x7c]
test eax, eax
je 0x479231
mov rcx, qword [rbp + 0x70]
mov qword [rbx + rax*8], rcx
mov rcx, qword [r13 + 0xf8]
mov rax, qword [rbp + 0x58]
mov r8d, dword [rcx + 0xc70]
or qword [rax + 8], 0x40
mov dword [rax + 0x2c], edx
mov dword [rax + 0x28], r8d
mov rax, qword [rbp + 0x70]
mov ecx, dword [rcx + 0xc70]
or qword [rax + 8], 0x40
mov dword [rax + 0x2c], edx
mov dword [rax + 0x28], ecx
test byte [rbp + 8], 0x80
je 0x4763d4
mov rax, qword [r15 + 0xe8]
mov rsi, qword [rax + 0x90]
test rsi, rsi
je 0x476a20
test r14, r14
je 0x476660
cmp rsi, r12
je 0x4766a0
mov rax, qword [rsi + 0x70]
cmp rax, r12
je 0x4766c3
test rax, rax
je 0x4764c0
mov rax, qword [rax + 0xe8]
mov eax, dword [rax + 0x88]
mov dword [rbp + 0x28], eax
mov eax, dword [rbp + 4]
cmp eax, 0xb
je 0x4765f0
ja 0x476490
cmp eax, 5
je 0x4765bd
ja 0x4764e0
cmp eax, 3
jne 0x476640
mov rdx, qword [r15]
lea rdi, [0x005490c4]
mov ecx, 5
mov rsi, rdx
repe cmpsb byte [rsi], byte [rdi]
jne 0x476442
mov rcx, rdx
mov qword [rsp + 0x30], rdx
lea rdi, [0x00549277]
call sub.msvcrt.dll_strlen
mov rdx, qword [rsp + 0x30]
lea r8, [rax - 3]
mov ecx, 4
lea rsi, [rdx + r8]
repe cmpsb byte [rsi], byte [rdi]
je 0x476a5a
mov r15, qword [r15 + 0x18]
test r15, r15
je 0x476717
mov rbp, qword [r15 + 0xe8]
movsxd rax, dword [rbp + 0x88]
mov rdx, rax
mov qword [rbx + rax*8], rbp
movsxd rax, dword [rbp + 0x64]
test eax, eax
jne 0x476330
movsxd rax, dword [rbp + 0x7c]
test eax, eax
je 0x47637f
mov rcx, qword [rbp + 0x70]
mov qword [rbx + rax*8], rcx
mov rcx, qword [r13 + 0xf8]
jmp 0x47636a
cmp eax, 0x6ffffff7
je 0x476610
ja 0x4765a0
cmp eax, 0x11
jne 0x476650
mov rax, qword [r13 + 0xf8]
mov eax, dword [rax + 0xc70]
mov dword [rbp + 0x28], eax
jmp 0x476442
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elf.c
mov edx, 0xf55
call fcn.0043f7d0
mov rax, qword [0xe8]
ud2
cmp eax, 6
je 0x4765f0
cmp eax, 9
jne 0x476442
lea rdx, [0x0054926f]
mov rcx, r13
call fcn.00447880
test rax, rax
je 0x476516
mov rax, qword [rax + 0xe8]
mov eax, dword [rax + 0x88]
mov dword [rbp + 0x28], eax
mov rax, qword [r15 + 0xe8]
mov eax, dword [rax + 4]
cmp eax, 9
je 0x47652e
cmp eax, 4
jne 0x476442
mov r8, qword [r15]
lea rdi, [0x00548b2d]
mov ecx, 4
mov rsi, r8
repe cmpsb byte [rsi], byte [rdi]
jne 0x476442
cmp eax, 4
lea rdx, [r8 + 4]
jne 0x476560
cmp byte [r8 + 4], 0x61
lea rdx, [r8 + 5]
jne 0x476442
mov rcx, qword [r15 + 0xf8]
mov rax, qword [rcx + 8]
mov rax, qword [rax + 0x370]
call qword [rax + 0x2f8]
test rax, rax
je 0x476442
mov rax, qword [rax + 0xe8]
mov eax, dword [rax + 0x88]
or qword [rbp + 8], 0x40
mov dword [rbp + 0x2c], eax
jmp 0x476442
cmp eax, 0x6ffffffd
jb 0x476442
cmp eax, 0x6ffffffe
jbe 0x4765f0
cmp eax, 0x6fffffff
jne 0x476442
lea rdx, [0x0054926f]
mov rcx, r13
call fcn.00447880
test rax, rax
je 0x476442
mov rax, qword [rax + 0xe8]
mov eax, dword [rax + 0x88]
mov dword [rbp + 0x28], eax
jmp 0x476442
lea rdx, [0x005491d0]
mov rcx, r13
call fcn.00447880
test rax, rax
jne 0x4765d5
jmp 0x476442
test byte [r15 + 0x28], 1
lea rax, str..gnu.libstr
lea rdx, [0x005491d0]
mov rcx, r13
cmove rdx, rax
call fcn.00447880
test rax, rax
jne 0x4765d5
jmp 0x476442
cmp eax, 4
je 0x4764f2
jmp 0x476442
cmp eax, 0x6ffffff6
je 0x4765bd
jmp 0x476442
mov rax, qword [rsi + 0x70]
test rax, rax
jne 0x4763c4
mov rax, qword [rsi + 0xf8]
mov r8, qword [rbp + 0x40]
lea rcx, str._pB:_sh_link_of_section___pA_points_to_removed_section___pA_of___pB
mov r9, rsi
mov rdx, r13
mov qword [rsp + 0x20], rax
call fcn.0043f6b0
mov ecx, 0x11
call fcn.0043f850
jmp 0x475f7e
mov rax, qword [0x00557240]
mov rax, qword [rax + 0x2c0]
jmp 0x4763bb
mov dword [rdx + 0x88], r15d
add r15d, 1
jmp 0x476140
movzx edx, word [rsi + 0x2c]
and dx, 0x380
sub dx, 0x100
test dx, 0xfe80
je 0x4763c4
mov rax, qword [rsi + 0xf8]
mov r8, qword [rbp + 0x40]
lea rcx, str._pB:_sh_link_of_section___pA_points_to_discarded_section___pA_of___pB
mov r9, rsi
mov rdx, r13
mov qword [rsp + 0x20], rax
call fcn.0043f6b0
mov rdx, r14
mov rcx, rsi
call fcn.00491df0
test rax, rax
je 0x47668f
mov rax, qword [rax + 0x70]
jmp 0x4763bb
mov rbx, qword [rsp + 0x40]
cmp qword [rsp + 0x158], 0
je 0x4783cf
mov dword [rsp + 0xcc], 0
mov dword [rsp + 0xa8], 0
mov qword [rsp + 0xa0], 0
mov edi, dword [rbx + 0x3c8]
mov rax, qword [r13 + 0xf8]
test byte [r13 + 0x40], 0x42
mov qword [rsp + 0x98], rax
mov dword [rax + 0xb4], 3
mov qword [rax + 0xb8], rdi
mov qword [rax + 0xc0], 0
mov rdi, rax
mov qword [rax + 0xe8], 0
mov dword [rax + 0xd8], 0
mov dword [rax + 0xdc], 0
mov qword [rax + 0xe0], 1
mov rax, qword [r13 + 8]
mov rax, qword [rax + 0x370]
mov qword [rsp + 0x60], rax
jne 0x476ad0
movzx eax, byte [r13 + 0x44]
and eax, 7
cmp al, 3
je 0x476ad0
mov eax, dword [rdi + 0x2f4]
mov r11, qword [rdi + 0x50]
mov r12d, dword [rdi + 0x34]
cmp eax, 1
jbe 0x4789c0
mov rdi, qword [rsp + 0x98]
sub eax, 2
mov qword [rsp + 0x150], r13
lea r15, [rax + 1]
mov rbx, 0xffffffffffffffff
xor eax, eax
mov r14, qword [rdi + 0xc90]
mov r13, rdi
jmp 0x4768cd
mov rbp, qword [r8]
lea rdi, [0x0054931b]
mov ecx, 4
mov rsi, rbp
repe cmpsb byte [rsi], byte [rdi]
jne 0x476850
movzx ecx, byte [rbp + 4]
test cl, cl
je 0x476a09
cmp cl, 0x2e
je 0x476a09
nop dword [rax + rax]
cmp dword [r13 + 0xc70], r10d
je 0x4768fe
mov rcx, qword [r13 + 0x2e0]
test rcx, rcx
je 0x476876
mov ecx, dword [rcx + 0x50]
cmp rdx, qword [r11 + rcx*8]
je 0x4768fe
cmp dword [r14 + 0x50], r10d
je 0x4768fe
cmp dword [r14 + 0x4c], r10d
je 0x4768fe
mov rcx, qword [rdx + 0x30]
cmp rcx, 1
jbe 0x4768a5
lea r10, [rcx + r12 - 1]
neg rcx
and rcx, r10
cmp r12, r10
cmova rcx, rbx
mov r12, rcx
test r8, r8
mov qword [rdx + 0x18], r12
je 0x4768b5
mov qword [r8 + 0x98], r12
cmp r9d, 8
je 0x4768c0
add r12, qword [rdx + 0x20]
nop
add rax, 1
cmp r15, rax
je 0x476e29
mov rdx, qword [r11 + rax*8 + 8]
lea r10d, [rax + 1]
mov r9d, dword [rdx + 4]
mov r8, qword [rdx + 0x40]
cmp r9d, 9
je 0x476904
cmp r9d, 4
je 0x476904
test r8, r8
je 0x476850
test byte [r8 + 0x2b], 8
je 0x476820
mov qword [rdx + 0x18], rbx
jmp 0x4768c0
test r8, r8
jne 0x4768f3
jmp 0x4768fe
mov eax, dword [r13 + 0x40]
and eax, 0x43
cmp eax, 1
jne 0x4761d4
nop dword [rax + rax]
mov rax, qword [r13 + 0xf8]
mov edx, dword [rbp + 0x60]
mov esi, r12d
mov dword [rax + 0xc70], r15d
mov rax, qword [rax + 0xc90]
mov rcx, qword [rax + 8]
call fcn.00499cd0
cmp r12d, 0xfefe
jbe 0x4769ba
mov rax, qword [r13 + 0xf8]
cmp qword [rax + 0x2e0], 0
je 0x47696f
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elf.c
mov edx, 0xeda
call fcn.0043f7d0
mov edx, 0x60
mov rcx, r13
lea esi, [r15 + 2]
call fcn.004459f0
mov rdi, rax
mov dword [rax + 0x50], r12d
mov rax, qword [r13 + 0xf8]
lea rdx, str..symtab_shndx
xor r8d, r8d
mov qword [rax + 0x2e0], rdi
mov rax, qword [rax + 0xc90]
mov rcx, qword [rax + 8]
call fcn.00499be0
cmp eax, 0xffffffff
mov dword [rdi], eax
je 0x475f76
mov rax, qword [r13 + 0xf8]
mov edx, dword [rbp + 0x100]
lea r15d, [rsi + 1]
lea r12d, [rsi + 2]
mov rax, qword [rax + 0xc90]
mov rcx, qword [rax + 8]
mov dword [rax + 0x50], esi
mov esi, 1
call fcn.00499cd0
jmp 0x4761d4
test rax, rax
je 0x476fbf
lea r12d, [r15 + 1]
mov rdi, qword [r13 + 0x88]
jmp 0x47602c
mov rdi, qword [rsp + 0x150]
cmp byte [rdi + 0x45], 0
jns 0x476850
jmp 0x4768fe
mov rax, qword [r13 + 8]
mov r8, r15
mov rdx, r13
lea rcx, str._pB:_warning:_sh_link_not_set_for_section___pA
mov rax, qword [rax + 0x370]
call qword [rax + 0x308]
jmp 0x4763d4
lea rcx, str._pB:_too_many_sections:__u
mov r8d, r12d
mov rdx, r13
call fcn.0043f6b0
jmp 0x475f7e
lea rcx, [rax - 2]
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x30], rax
call fcn.00444070
test rax, rax
mov rsi, rax
je 0x475f76
mov r8, qword [rsp + 0x48]
mov rdx, qword [r15]
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov r9, qword [rsp + 0x30]
mov rdx, rsi
mov rcx, r13
mov byte [rsi + r9 - 3], 0
call fcn.00447880
mov rcx, rsi
mov rdi, rax
call sub.msvcrt.dll_free
test rdi, rdi
je 0x476442
mov rax, qword [rdi + 0xe8]
mov edx, dword [rbp + 0x88]
mov qword [rax + 0x38], 0xc
mov dword [rax + 0x28], edx
jmp 0x476442
xor edx, edx
mov rcx, r13
call fcn.0043f500
cmp qword [rsp + 0x158], 0
mov ebx, eax
je 0x478f10
mov rcx, qword [r13 + 0xf8]
xor edx, edx
mov r10, qword [rcx + 0xc90]
mov rax, qword [r10]
test rax, rax
je 0x47702e
nop word [rax + rax]
mov dword [rax + 0x34], edx
mov rax, qword [rax]
lea r8d, [rdx + 1]
mov edx, r8d
test rax, rax
jne 0x476b10
test r8d, r8d
mov dword [rsp + 0x90], r8d
je 0x47702e
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x320]
movzx edx, byte [rax]
mov qword [rcx + 0x18], rdx
movzx r8d, byte [rax + 1]
mov eax, r8d
mov dword [rcx + 0x38], r8d
mov r9, qword [r10 + 0x38]
mov edi, dword [rsp + 0x90]
cmp r9, 0xffffffffffffffff
mov dword [rcx + 0x3c], edi
je 0x478865
movzx ecx, al
xor edx, edx
mov rax, r9
div rcx
mov edx, r8d
imul edx, eax
mov rsi, rax
mov dword [rsp + 0x94], eax
cmp r9, rdx
je 0x476b9b
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elf.c
mov edx, 0x156b
call fcn.0043f7d0
cmp esi, dword [rsp + 0x90]
jb 0x478905
mov r11d, dword [rsp + 0x90]
test r11d, r11d
jne 0x4772e0
mov rbx, qword [rsp + 0x60]
mov rax, qword [r13 + 0xf8]
mov rdx, qword [rbx + 0x320]
mov rax, qword [rax + 0xc90]
movzx edx, byte [rdx]
mov qword [rax + 0x40], rdx
mov rax, qword [r13 + 8]
xor edx, edx
mov rcx, r13
mov rax, qword [rax + 0x370]
mov qword [rsp + 0x48], rax
call fcn.0043f500
mov dword [rsp + 0x40], eax
mov rax, qword [r13 + 0xf8]
mov edx, dword [rax + 0x2f4]
mov r14, qword [rax + 0x50]
lea rbp, [r14 + 8]
lea r15, [r14 + rdx*8]
mov rdx, qword [rax + 0xc90]
cmp r15, rbp
mov r12, qword [rdx + 0x40]
ja 0x476d3b
jmp 0x47706f
mov edx, dword [rbx + 4]
cmp edx, 8
je 0x476d7a
test byte [rbx + 8], 2
jne 0x476d8b
mov edx, dword [rbx + 4]
cmp edx, 9
je 0x477008
cmp edx, 4
je 0x477008
cmp qword [rsp + 0x30], 0
je 0x476c9c
mov rax, qword [rsp + 0x30]
test byte [rax + 0x2b], 8
jne 0x476ffb
mov rax, qword [rax]
lea rdi, [0x0054931b]
mov ecx, 4
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
jne 0x476c9c
movzx eax, byte [rax + 4]
test al, al
je 0x476ff0
cmp al, 0x2e
je 0x476ff0
mov rax, qword [r13 + 0xf8]
mov ecx, dword [rax + 0xc70]
cmp rbx, qword [r14 + rcx*8]
je 0x476ffb
mov rcx, qword [rax + 0x2e0]
test rcx, rcx
je 0x476ccc
mov ecx, dword [rcx + 0x50]
cmp rbx, qword [r14 + rcx*8]
je 0x476ffb
mov rax, qword [rax + 0xc90]
mov ecx, dword [rax + 0x50]
cmp rbx, qword [r14 + rcx*8]
je 0x476ffb
mov eax, dword [rax + 0x4c]
cmp rbx, qword [r14 + rax*8]
je 0x476ffb
mov rax, qword [rbx + 0x30]
cmp rax, 1
jbe 0x476d10
lea rcx, [r12 + rax - 1]
neg rax
and rax, rcx
cmp r12, rcx
mov r12, 0xffffffffffffffff
cmovbe r12, rax
mov rax, qword [rsp + 0x30]
mov qword [rbx + 0x18], r12
test rax, rax
je 0x476d25
mov qword [rax + 0x98], r12
cmp edx, 8
je 0x476d2e
add r12, qword [rbx + 0x20]
add rbp, 8
cmp r15, rbp
jbe 0x477061
mov rbx, qword [rbp]
mov rax, qword [rbx + 0x40]
test rax, rax
mov qword [rsp + 0x30], rax
je 0x476c3c
mov rax, qword [rax + 0x98]
test rax, rax
je 0x476c30
cmp rax, qword [rbx + 0x18]
je 0x476d2e
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elf.c
mov edx, 0x17ef
call fcn.0043f7d0
jmp 0x476d2e
cmp qword [rbx + 0x48], 0
je 0x476d61
test byte [rbx + 8], 2
je 0x476c63
cmp qword [rbx + 0x20], 0
je 0x476fd8
mov rax, qword [r13 + 8]
cmp dword [rax + 8], 5
je 0x478936
mov rax, qword [rsp + 0x30]
lea r8, str.unknown
test rax, rax
je 0x476db8
mov r8, qword [rax]
lea rcx, str._pB:_warning:_allocated_section___s_not_in_segment
mov rdx, r13
call fcn.0043f6b0
test byte [r13 + 0x41], 1
je 0x476fcf
cmp qword [rbx + 0x20], 0
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x30], rax
je 0x476fd8
mov rax, qword [rsp + 0x48]
xor edx, edx
mov rcx, qword [rax + 0x18]
mov rax, qword [rbx + 0x10]
test rcx, rcx
je 0x476e02
sub rax, r12
xor edx, edx
div rcx
mov rax, qword [rsp + 0x30]
add r12, rdx
mov qword [rbx + 0x18], r12
test rax, rax
je 0x476e1a
mov qword [rax + 0x98], r12
cmp dword [rbx + 4], 8
jne 0x476d2a
jmp 0x476d2e
mov r13, qword [rsp + 0x150]
mov qword [r14 + 0x40], r12
mov qword [r14 + 0x38], 0
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x158]
mov rcx, r13
call qword [rax + 0x168]
test eax, eax
je 0x475f76
mov rax, qword [rsp + 0x98]
mov ebx, dword [rax + 0x3c]
test ebx, ebx
jne 0x4787b0
mov edx, dword [rsp + 0xa8]
test edx, edx
je 0x476fad
mov rax, qword [r13 + 0xf8]
mov rcx, qword [rax + 0x90]
mov r9, qword [rax + 0xc90]
cmp rcx, 1
mov rdx, qword [r9 + 0x40]
jbe 0x476eaf
lea r8, [rcx - 1]
add rdx, r8
jb 0x47927e
neg rcx
and rdx, rcx
mov rcx, qword [rax + 0xa0]
mov qword [rax + 0x78], rdx
test rcx, rcx
je 0x476ec6
mov qword [rcx + 0x98], rdx
cmp dword [rax + 0x64], 8
je 0x476ed3
add rdx, qword [rax + 0x80]
mov rcx, qword [rax + 0x2e0]
test rcx, rcx
je 0x476f24
mov r8, qword [rcx + 0x20]
test r8, r8
je 0x476f24
mov r10, qword [rcx + 0x30]
cmp r10, 1
jbe 0x476f05
lea r11, [r10 - 1]
add rdx, r11
jb 0x479252
neg r10
and rdx, r10
mov r10, qword [rcx + 0x40]
mov qword [rcx + 0x18], rdx
test r10, r10
je 0x476f19
mov qword [r10 + 0x98], rdx
add r8, rdx
cmp dword [rcx + 4], 8
cmovne rdx, r8
mov rcx, qword [rax + 0x130]
cmp rcx, 1
jbe 0x476f44
lea r8, [rcx - 1]
add rdx, r8
jb 0x47925b
neg rcx
and rdx, rcx
mov rcx, qword [rax + 0x140]
mov qword [rax + 0x118], rdx
test rcx, rcx
je 0x476f5e
mov qword [rcx + 0x98], rdx
cmp dword [rax + 0x104], 8
mov rcx, rdx
je 0x476f71
add rcx, qword [rax + 0x120]
mov qword [r9 + 0x40], rcx
xor r8d, r8d
mov rcx, r13
call fcn.004aa400
test eax, eax
jne 0x475f76
mov rdx, qword [rsp + 0xa0]
mov rcx, r13
call fcn.0049a080
test eax, eax
je 0x475f76
mov rcx, qword [rsp + 0xa0]
call fcn.00499bb0
or byte [r13 + 0x45], 4
mov dword [rsp + 0x3c], 1
jmp 0x475f7e
mov rdi, qword [r13 + 0x88]
lea r12d, [r15 + 1]
jmp 0x4761a5
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x30], rax
mov rcx, qword [rbx + 0x30]
xor edx, edx
mov rax, qword [rbx + 0x10]
test rcx, rcx
je 0x476e02
jmp 0x476dfa
cmp byte [r13 + 0x45], 0
jns 0x476c9c
mov qword [rbx + 0x18], 0xffffffffffffffff
jmp 0x476d2e
cmp qword [rsp + 0x30], 0
jne 0x476c63
jmp 0x476ffb
mov qword [r13 + 0x90], rdx
jmp 0x47618f
mov qword [r13 + 0x88], rcx
jmp 0x476182
mov rax, qword [rsp + 0x60]
mov qword [rcx + 0x18], 0
mov dword [rcx + 0x38], 0
mov dword [rsp + 0x90], 0
mov rax, qword [rax + 0x320]
movzx r8d, byte [rax + 1]
mov eax, r8d
jmp 0x476b52
mov rax, qword [r13 + 0xf8]
mov rdx, qword [rax + 0xc90]
mov rbx, qword [rdx]
mov r15, qword [rax + 0x58]
xor r14d, r14d
mov qword [rdx + 0x40], r12
mov r12d, dword [rsp + 0x40]
test rbx, rbx
mov rsi, r15
je 0x476e3d
mov rbp, qword [rsp + 0x158]
mov qword [rsp + 0x30], r15
nop dword [rax + rax]
mov edx, dword [rsi]
cmp edx, 0x6474e552
je 0x477135
cmp edx, 0x6474e551
je 0x477250
mov eax, dword [rbx + 0x38]
test eax, eax
je 0x477120
cmp edx, 1
je 0x477120
cmp edx, 4
je 0x47727e
cmp edx, 6
je 0x477294
test byte [rbx + 0x30], 0x30
jne 0x478f34
mov rdx, qword [rbx + 0x40]
mov qword [rsi + 0x20], 0
sub eax, 1
mov r8, qword [rdx + 0x98]
mov qword [rsi + 8], r8
jmp 0x47711b
mov edx, eax
sub eax, 1
mov rcx, qword [rbx + rdx*8 + 0x40]
mov rdx, qword [rcx + 0xe8]
cmp dword [rdx + 4], 8
jne 0x477267
cmp eax, 0xffffffff
jne 0x477100
mov rbx, qword [rbx]
add rsi, 0x38
test rbx, rbx
jne 0x4770a0
jmp 0x476e3d
test rbp, rbp
je 0x4772a0
mov r11, qword [rbp + 0xd0]
mov r10, qword [rbp + 0xd8]
cmp r11, r10
jae 0x47720c
mov rax, qword [r13 + 0xf8]
mov rax, qword [rax + 0xc90]
mov rcx, qword [rax]
test rcx, rcx
je 0x477207
mov r8, qword [rsp + 0x30]
jmp 0x47718c
mov rcx, qword [rcx]
add r8, 0x38
test rcx, rcx
je 0x477207
cmp dword [r8], 1
jne 0x477180
mov r9d, dword [rcx + 0x38]
test r9d, r9d
je 0x477180
lea eax, [r9 - 1]
mov r15, qword [rcx + rax*8 + 0x40]
xor eax, eax
mov edx, dword [r15 + 0x28]
mov rdi, qword [r15 + 0x30]
and edx, 0x402
cmp edx, 0x400
je 0x4771c5
mov rax, qword [r15 + 0x40]
xor edx, edx
div r12
add rdi, rax
cmp rdi, r11
jbe 0x477180
mov rdi, qword [rcx + 0x40]
mov rdx, qword [rdi + 0x30]
cmp rdx, r10
jae 0x477180
xor eax, eax
jmp 0x4771e9
mov rdi, qword [rcx + rax*8 + 0x40]
mov rdx, qword [rdi + 0x30]
cmp r10, rdx
jbe 0x4771fe
cmp r11, rdx
ja 0x4771fe
cmp qword [rdi + 0x40], 0
jne 0x47887f
add rax, 1
cmp r9d, eax
ja 0x4771e0
test rbp, rbp
je 0x47721d
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elf.c
mov edx, 0x187f
call fcn.0043f7d0
lea rdi, [rsi + 8]
mov rcx, rsi
mov rax, r14
mov qword [rsi], 0
mov qword [rsi + 0x30], 0
and rdi, 0xfffffffffffffff8
sub rcx, rdi
add ecx, 0x38
shr ecx, 3
rep stosq qword [rdi], rax
jmp 0x477120
test byte [rbx + 0x30], 8
je 0x477120
mov rax, qword [rbx + 0x28]
mov qword [rsi + 0x28], rax
jmp 0x477120
mov rax, qword [rcx + 0x98]
sub rax, r8
add rax, qword [rdx + 0x20]
mov qword [rsi + 0x20], rax
jmp 0x477120
movzx edx, byte [r13 + 0x44]
and edx, 7
cmp dl, 3
jne 0x4770d8
jmp 0x477120
mov dword [rbx + 0x38], 0
jmp 0x477120
mov ecx, dword [rbx + 0x38]
test ecx, ecx
je 0x47721d
test byte [rbx + 0x30], 8
je 0x479294
mov rax, qword [rbx + 0x40]
xor edx, edx
mov r11, qword [rax + 0x30]
mov rax, qword [rbx + 0x28]
div r12
lea r10, [rax + r11]
cmp r11, r10
jae 0x47721d
jmp 0x477155
mov eax, dword [rsp + 0x94]
mov edi, dword [rsp + 0x90]
mov rcx, r13
lea rsi, [rax*8]
sub rsi, rax
lea rdx, [rsi + rdi]
shl rdx, 3
call fcn.004459f0
mov rcx, rax
mov qword [rsp + 0x80], rax
lea rax, [rax + rsi*8]
test rcx, rcx
mov qword [rsp + 0x70], rax
mov rax, qword [r13 + 0xf8]
mov qword [rax + 0x58], rcx
je 0x475f76
mov rax, qword [rax + 0xc90]
xor r12d, r12d
lea rsi, [0x0046f8d0]
mov r14, qword [rsp + 0x70]
mov rbp, qword [rax]
test rbp, rbp
je 0x4773a7
nop
mov ecx, dword [rbp + 0x38]
mov eax, r12d
mov qword [r14 + rax*8], rbp
cmp ecx, 1
jbe 0x47739a
mov rdx, qword [r13 + 0xf8]
xor eax, eax
cmp word [rdx + 0x30], 4
je 0x4782f0
mov rdx, qword [rbp + rax*8 + 0x40]
mov dword [rdx + 0xe0], eax
add rax, 1
cmp ecx, eax
ja 0x477373
mov edx, ecx
lea rcx, [rbp + 0x40]
mov r9, rsi
mov r8d, 8
call sub.msvcrt.dll_qsort
mov rbp, qword [rbp]
add r12d, 1
test rbp, rbp
jne 0x477350
cmp dword [rsp + 0x90], 1
jbe 0x4773cb
mov rcx, qword [rsp + 0x70]
lea r9, [0x0046fa10]
mov r8d, 8
mov rdx, rdi
call sub.msvcrt.dll_qsort
test byte [r13 + 0x41], 1
mov qword [rsp + 0xb0], 1
je 0x4773ef
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 0x320]
movzx eax, byte [rcx]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x70]
mov rax, qword [rax]
cmp dword [rax + 8], 1
mov qword [rsp + 0x68], rax
jne 0x47745e
test byte [rax + 0x30], 0x20
jne 0x477478
mov esi, dword [rsp + 0x90]
mov rdi, qword [rsp + 0x70]
lea edx, [rsi - 1]
mov rax, rdi
add rax, 8
lea rdx, [rdi + rdx*8 + 8]
jmp 0x477459
mov r8, qword [rax]
cmp dword [r8 + 8], 1
jne 0x47745e
add rax, 8
test byte [r8 + 0x30], 0x20
jne 0x4789b6
cmp rax, rdx
jne 0x477440
movzx eax, byte [rcx + 1]
mov qword [rsp + 0x68], 0
imul eax, dword [rsp + 0x94]
add qword [rsp + 0x30], rax
mov eax, ebx
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x150], r13
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0xe0]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x70]
mov rbp, qword [rdi + rax*8]
mov dword [rsp + 0x88], eax
mov rdi, qword [rsp + 0x80]
mov edx, dword [rbp + 0x34]
mov r10d, dword [rbp + 0x38]
mov r9d, dword [rbp + 8]
mov r12d, dword [rbp + 0xc]
lea rax, [rdx*8]
sub rax, rdx
test r10d, r10d
lea rbx, [rdi + rax*8]
mov dword [rbx], r9d
mov dword [rbx + 4], r12d
jne 0x477b60
mov rax, qword [rsp + 0x48]
movzx r8d, byte [rbp + 0x30]
imul rax, qword [rbp + 0x18]
mov r14d, r8d
and r14d, 2
mov qword [rbx + 0x10], rax
jne 0x477b50
mov qword [rbx + 0x18], 0
cmp r9d, 1
je 0x477e00
test r8b, 4
je 0x477ce0
mov rax, qword [rbp + 0x20]
mov qword [rbx + 0x30], rax
cmp rbp, qword [rsp + 0x68]
je 0x477e3b
cmp r9d, 1
je 0x477d10
cmp r9d, 2
je 0x478190
cmp r9d, 4
jne 0x47758a
test r10d, r10d
je 0x47758a
lea edx, [r10 - 1]
lea rax, [rbp + 0x40]
lea rcx, [rbp + rdx*8 + 0x48]
nop word cs:[rax + rax]
mov rdx, qword [rax]
add rax, 8
cmp rax, rcx
mov rdx, qword [rdx + 0xe8]
mov dword [rdx + 4], 7
jne 0x477570
xor r13d, r13d
mov qword [rsp + 0x50], 0
mov ecx, r8d
and ecx, 0x10
je 0x477bf0
mov r11d, r8d
and r11d, 1
jne 0x4775b3
or r12d, 4
mov dword [rbx + 4], r12d
mov rax, qword [rsp + 0x60]
cmp r9d, 1
mov rdx, qword [rax + 0x320]
movzx eax, byte [rdx]
mov qword [rbx + 0x20], rax
mov qword [rbx + 0x28], rax
je 0x47829e
mov rdi, qword [rsp + 0x70]
mov rsi, qword [rdi]
test byte [rsi + 0x30], 0x10
je 0x477611
mov edi, dword [rsi + 0x34]
lea rsi, [rdi*8]
sub rsi, rdi
mov rdi, qword [rsp + 0x80]
test r14b, r14b
lea rsi, [rdi + rsi*8]
mov rdi, qword [rsi + 0x10]
mov qword [rbx + 0x10], rdi
jne 0x477611
mov rsi, qword [rsi + 0x18]
mov qword [rbx + 0x18], rsi
test r8b, 0x20
je 0x4776b3
mov rsi, rax
test r11b, r11b
jne 0x477627
or dword [rbx + 4], 4
movzx r11d, byte [rdx + 1]
imul r11d, dword [rsp + 0x94]
add rax, r11
add rsi, r11
test cl, cl
mov qword [rbx + 0x20], rax
mov qword [rbx + 0x28], rsi
jne 0x477ba0
cmp r9d, 1
je 0x478323
mov rdi, qword [rsp + 0x68]
test rdi, rdi
je 0x47892a
mov ecx, dword [rdi + 0x34]
mov rsi, qword [rsp + 0x80]
lea rax, [rcx*8]
sub rax, rcx
lea rcx, [rsi + rax*8]
movzx eax, byte [rdi + 0x30]
mov byte [rsp + 0x40], al
and eax, 0x10
je 0x47768d
movzx eax, byte [rdx]
movzx eax, al
mov rdx, rax
add rdx, qword [rcx + 0x10]
test r14b, r14b
mov qword [rbx + 0x10], rdx
jne 0x4776ab
mov rdx, rax
add rdx, qword [rcx + 0x18]
mov qword [rbx + 0x18], rdx
add rax, qword [rcx + 8]
mov qword [rbx + 8], rax
cmp r9d, 4
je 0x478236
mov r10d, dword [rbp + 0x38]
lea rax, [rbp + 0x40]
mov qword [rsp + 0x78], rax
mov r13, rax
test r10d, r10d
je 0x4787a8
mov edx, dword [rbx]
mov r15, qword [rsp + 0x30]
xor r12d, r12d
mov r10d, edx
mov dword [rsp + 0x30], edx
jmp 0x477782
test al, al
jne 0x4777aa
cmp r10d, 4
je 0x477818
cmp r10d, 1
je 0x47789b
cmp dword [rsi + 4], 8
je 0x4778c2
mov rax, qword [rsi + 0x20]
add qword [rbx + 0x20], rax
test byte [rsi + 8], 2
je 0x477728
add qword [rbx + 0x28], rax
cmp r14, qword [rbx + 0x30]
movzx eax, byte [rbp + 0x30]
jbe 0x477744
test al, 4
jne 0x477744
cmp r10d, 1
je 0x477962
mov qword [rbx + 0x30], r14
test al, 1
jne 0x47776b
mov eax, dword [rbx + 4]
mov edx, eax
or edx, 4
mov dword [rbx + 4], edx
mov rdx, qword [rsi + 8]
test dl, 4
je 0x477762
or eax, 5
mov dword [rbx + 4], eax
and edx, 1
je 0x47776b
or dword [rbx + 4], 2
mov r10d, dword [rsp + 0x30]
add r12d, 1
add r13, 8
cmp r12d, dword [rbp + 0x38]
jae 0x4779e0
mov rdi, qword [r13]
mov r14d, 1
mov ecx, dword [rdi + 0x78]
mov rsi, qword [rdi + 0xe8]
shl r14, cl
cmp r10d, 7
sete al
cmp r10d, 1
jne 0x4776f0
mov edx, dword [rsi + 4]
cmp edx, 8
je 0x477915
mov rcx, qword [rbx + 0x28]
xor r8d, r8d
mov r9, qword [rsp + 0x48]
mov rax, rcx
add rax, qword [rbx + 0x18]
setb r8b
imul r9, qword [rdi + 0x38]
mov r11, r9
sub r11, rax
je 0x4777ec
cmp rax, r9
ja 0x477980
test r8, r8
jne 0x477980
lea r9, [r11 + rcx]
cmp r10d, 1
mov qword [rbx + 0x28], r9
je 0x477871
cmp edx, 8
je 0x477953
mov rax, r11
add rax, qword [rbx + 0x20]
cmp r10d, 4
mov qword [rbx + 0x20], rax
jne 0x477702
mov rax, qword [rsp + 0x150]
mov r10d, 4
movzx eax, byte [rax + 0x44]
mov byte [rsp + 0x40], al
and eax, 7
cmp al, 3
jne 0x47770c
test r12d, r12d
jne 0x477b00
mov rax, qword [rsi + 0x20]
mov qword [rdi + 0x98], r15
mov qword [rsi + 0x18], r15
mov qword [rbx + 0x28], 0
mov qword [rbx + 0x30], 1
add r15, rax
mov qword [rbx + 0x20], rax
movzx eax, byte [rbp + 0x30]
jmp 0x477744
cmp edx, 8
je 0x477b31
mov r10, qword [rbx + 0x20]
lea rax, [r11 + r10]
cmp r9, rax
ja 0x477c20
add r15, r11
mov qword [rbx + 0x20], rax
mov qword [rsp + 0x50], 0
cmp dword [rsi + 4], 8
mov qword [rdi + 0x98], r15
mov qword [rsi + 0x18], r15
je 0x477940
mov rax, qword [rsi + 0x20]
mov r10d, 1
add r15, rax
jmp 0x47771a
mov rax, qword [rsi + 8]
test ah, 4
je 0x4778f5
cmp qword [rsi + 0x18], 0
jne 0x4778f5
xor edx, edx
test r14, r14
mov rcx, qword [rsi + 0x10]
je 0x4778e7
lea rdx, [r14 - 1]
sub rcx, r15
and rdx, rcx
add rdx, r15
mov qword [rdi + 0x98], rdx
mov qword [rsi + 0x18], rdx
test al, 2
je 0x477728
cmp r10d, 7
je 0x47790c
test ah, 4
jne 0x477728
mov rax, qword [rsi + 0x20]
jmp 0x477724
mov rcx, qword [rsi + 8]
test cl, 2
je 0x4776f8
and ch, 4
je 0x4777b6
test al, al
je 0x4776f8
jmp 0x4777b6
mov rax, qword [rsi + 8]
mov r10d, 1
test al, 2
jne 0x477903
jmp 0x477728
cmp r10d, 4
jne 0x47770c
jmp 0x477818
mov rdi, qword [rsp + 0x150]
test byte [rdi + 0x41], 1
jne 0x477744
jmp 0x477740
mov rcx, qword [rsp + 0x48]
xor edx, edx
mov r8, rdi
div rcx
xor edx, edx
mov r10, rax
mov rax, r9
div rcx
mov rdx, qword [rsp + 0x150]
lea rcx, str._pB:_section__pA_lma__I64x_adjusted_to__I64x
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x30], r10
mov r9, rax
call fcn.0043f6b0
mov r10, qword [rsp + 0x30]
mov eax, dword [rbx]
xor r11d, r11d
mov rcx, qword [rbx + 0x28]
mov edx, dword [rsi + 4]
mov qword [rdi + 0x38], r10
mov dword [rsp + 0x30], eax
mov r10d, eax
jmp 0x4777ec
mov qword [rsp + 0x30], r15
mov r12, qword [rsp + 0x30]
sub r12, qword [rsp + 0x50]
cmp r10d, 6
mov qword [rsp + 0x30], r12
jne 0x477a06
cmp qword [rsp + 0x68], 0
je 0x4787f5
cmp r10d, 1
je 0x477e70
add qword [rsp + 0x58], 1
mov rax, qword [rsp + 0x58]
cmp dword [rsp + 0x90], eax
ja 0x4774a0
mov r13, qword [rsp + 0x150]
cmp qword [rsp + 0x158], 0
mov rax, qword [r13 + 0xf8]
mov rax, qword [rax + 0xc90]
mov qword [rax + 0x40], r12
je 0x476bda
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x476bda
test byte [rax + 0x30], 0x10
je 0x476bda
mov rax, qword [rsp + 0x158]
lea rdx, str.__ehdr_start
xor r9d, r9d
xor r8d, r8d
mov rcx, qword [rax + 0x28]
mov dword [rsp + 0x20], 1
call fcn.004ab830
test rax, rax
mov rcx, rax
je 0x476bda
movzx eax, byte [rax + 0x18]
cmp al, 2
jbe 0x477aab
cmp al, 5
jne 0x476bda
mov rbx, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x80]
xor edx, edx
mov eax, dword [rbx + 0x34]
imul rax, rax, 0x38
mov rax, qword [rdi + rax + 0x10]
div qword [rsp + 0x48]
cmp dword [rbx + 0x38], 0
je 0x479063
mov rdx, qword [rbx + 0x40]
test rdx, rdx
je 0x479264
sub rax, qword [rdx + 0x30]
mov qword [rcx + 0x28], rdx
mov qword [rcx + 0x30], rax
mov byte [rcx + 0x18], 3
or byte [rcx + 0x63], 2
and byte [rcx + 0x64], 0xfe
jmp 0x476bda
mov qword [rdi + 0x98], 0
mov qword [rdi + 0x40], 0
mov dword [rdi + 0x28], 0
jmp 0x477770
mov eax, dword [rbx]
mov qword [rsp + 0x50], 0
mov dword [rsp + 0x30], eax
mov r10d, eax
test r12d, r12d
jne 0x4776f8
add r15, r11
add qword [rsp + 0x50], r11
jmp 0x4776f8
mov rax, qword [rbp + 0x10]
mov qword [rbx + 0x18], rax
jmp 0x477513
mov rdx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x18]
movzx r8d, byte [rbp + 0x30]
mov rcx, rax
add rcx, qword [rdx + 0x30]
imul rcx, qword [rsp + 0x48]
mov r14d, r8d
and r14d, 2
mov qword [rbx + 0x10], rcx
jne 0x477b50
add rax, qword [rdx + 0x38]
imul rax, qword [rsp + 0x48]
mov qword [rbx + 0x18], rax
jmp 0x477513
cmp r9d, 1
jne 0x4776b3
and r8d, 0x30
jne 0x478273
mov rax, qword [rsp + 0x30]
test r13d, r13d
mov qword [rbx + 8], rax
je 0x4776bd
mov rdi, qword [rsp + 0xb0]
cmp qword [rbx + 0x30], rdi
mov rcx, rdi
cmovae rcx, qword [rbx + 0x30]
xor edx, edx
test rcx, rcx
je 0x477be6
xor edx, edx
div rcx
mov qword [rbx + 8], rdx
jmp 0x4776bd
test r8b, 0x20
je 0x477ba0
mov rax, qword [rsp + 0x60]
mov r11d, r8d
mov rsi, qword [rbx + 0x28]
and r11d, 1
mov rdx, qword [rax + 0x320]
mov rax, qword [rbx + 0x20]
jmp 0x47761e
mov rcx, qword [rsp + 0x150]
xor r8d, r8d
mov rdx, r15
mov qword [rsp + 0x40], r10
mov qword [rsp + 0x30], r9
call fcn.004aa400
test eax, eax
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x40]
jne 0x475f76
mov r11, r9
sub r11, r10
mov rcx, r11
mov qword [rsp + 0x30], r11
call fcn.00444160
test rax, rax
je 0x475f76
mov r11, qword [rsp + 0x30]
mov r8, qword [rsp + 0x150]
mov rcx, rax
mov qword [rsp + 0x40], rax
mov rdx, r11
mov qword [rsp + 0x50], r11
call fcn.004aa260
mov r9, qword [rsp + 0x40]
mov qword [rsp + 0x30], rax
mov rcx, r9
call sub.msvcrt.dll_free
mov rax, qword [rsp + 0x30]
mov r11, qword [rsp + 0x50]
cmp r11, rax
jne 0x475f76
cmp dword [rsi + 4], 8
je 0x477b1f
mov ecx, dword [rbx]
mov rax, r11
add r15, r11
add rax, qword [rbx + 0x20]
mov qword [rsp + 0x50], 0
mov dword [rsp + 0x30], ecx
mov r10d, ecx
jmp 0x47780a
test r10d, r10d
jne 0x47752f
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x320]
movzx ecx, byte [rax + 0xb]
mov eax, 1
shl eax, cl
cdqe
mov qword [rbx + 0x30], rax
jmp 0x47752f
test r10d, r10d
je 0x47758a
test r8b, 4
je 0x478366
lea rax, [rbp + 0x40]
mov rsi, qword [rbx + 0x30]
lea r11d, [r10 - 1]
mov qword [rsp + 0x78], rax
mov rdx, qword [rsp + 0x78]
lea r11, [rbp + r11*8 + 0x48]
mov rax, rdx
mov rcx, qword [rax]
test dword [rcx + 0x28], 0x102
jne 0x477d5b
mov rcx, qword [rcx + 0xe8]
mov dword [rcx + 4], 8
add rax, 8
cmp r11, rax
jne 0x477d41
mov rcx, qword [rdx]
mov rcx, qword [rcx + 0xe8]
cmp dword [rcx + 4], 8
jne 0x47835e
add rdx, 8
cmp rdx, rax
jne 0x477d64
mov r13d, 1
imul rsi, qword [rsp + 0x48]
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x50], 0
test rsi, rsi
je 0x477dae
sub rax, qword [rsp + 0x30]
xor edx, edx
div rsi
mov qword [rsp + 0x50], rdx
cmp qword [rsp + 0x58], 0
je 0x477dd6
mov rax, qword [rsp + 0x150]
test byte [rax + 0x41], 1
je 0x477dd6
mov rax, qword [rsp + 0x60]
cmp byte [rax + 0x3ce], 0
js 0x478956
mov rax, qword [rsp + 0x30]
add rax, qword [rsp + 0x50]
mov qword [rsp + 0x30], rax
test r13d, r13d
mov eax, 0
cmovne rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], rax
jmp 0x477596
mov rax, qword [rsp + 0x150]
test byte [rax + 0x41], 1
je 0x47751d
test r8b, 4
je 0x477e24
mov rax, qword [rbp + 0x20]
mov qword [rsp + 0xb0], rax
cmp rbp, qword [rsp + 0x68]
mov rax, qword [rsp + 0xb0]
mov qword [rbx + 0x30], rax
jne 0x477d10
test r8b, 0x10
jne 0x477e4a
mov rax, qword [rsp + 0x30]
mov qword [rbx + 8], rax
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x320]
movzx eax, byte [rax + 1]
imul eax, dword [rsp + 0x94]
add qword [rsp + 0x30], rax
jmp 0x47753a
mov rax, qword [rsp + 0x150]
movzx eax, byte [rax + 0x44]
mov byte [rsp + 0x40], al
and eax, 7
cmp al, 3
je 0x477a10
mov edx, dword [rbp + 0x38]
cmp edx, 1
jbe 0x478260
sub edx, 2
mov rax, qword [rsp + 0x78]
lea r8, [rbp + rdx*8 + 0x48]
jmp 0x477ebd
add rax, 8
cmp r8, rax
je 0x478268
mov rdx, qword [rax + 8]
mov rcx, qword [rax]
mov rdi, qword [rcx + 0x30]
cmp qword [rdx + 0x30], rdi
jne 0x477eb0
mov rdx, qword [rdx + 0xe8]
test byte [rdx + 9], 4
je 0x477ee1
cmp dword [rdx + 4], 8
je 0x477eb0
cmp qword [rdx + 0x20], 0
je 0x477eb0
mov rdx, qword [rcx + 0xe8]
test byte [rdx + 9], 4
je 0x477efb
cmp dword [rdx + 4], 8
je 0x477eb0
cmp qword [rdx + 0x20], 0
je 0x477eb0
xor r13d, r13d
mov r14d, dword [rsp + 0x88]
mov r15, qword [rsp + 0x150]
and r13d, 1
xor esi, esi
mov qword [rsp + 0x40], r12
mov byte [rsp + 0x50], r13b
mov eax, esi
mov r8, qword [rbp + rax*8 + 0x40]
mov rdx, qword [r8 + 0xe8]
mov rax, qword [rdx + 8]
mov rcx, rax
and ecx, 0x400
jne 0x478145
lea r9d, [r10 - 6]
cmp r9d, 1
jbe 0x47807f
and eax, 2
jne 0x478170
lea r9d, [r10 - 0x6474e550]
cmp r9d, 2
lea r9d, [r10 - 1]
setbe r11b
cmp r9d, 1
setbe r9b
or r9b, r11b
jne 0x478070
lea r11d, [r10 - 0x6474e555]
cmp r11d, 0xfff
jbe 0x478070
mov r11d, dword [rdx + 4]
cmp r11d, 8
je 0x478006
nop
mov r9, qword [rdx + 0x18]
mov rdi, qword [rbx + 8]
cmp r9, rdi
jb 0x47807f
add r9, qword [rdx + 0x20]
sub r9, rdi
cmp r9, qword [rbx + 0x20]
ja 0x47807f
movzx edi, byte [rsp + 0x50]
test rax, rax
setne r9b
and dil, r9b
je 0x478006
mov rax, qword [rdx + 0x10]
mov r9, qword [rbx + 0x10]
cmp rax, r9
jb 0x478070
sub rax, r9
test rcx, rcx
je 0x477ff6
cmp r11d, 8
je 0x478f6b
mov r9, qword [rdx + 0x20]
add rax, r9
cmp rax, qword [rbx + 0x28]
ja 0x478070
mov r9d, edi
lea eax, [r10 - 2]
and eax, 0xfffffffd
jne 0x478131
cmp qword [rdx + 0x20], 0
jne 0x478131
mov rdi, qword [rbx + 0x28]
test rdi, rdi
je 0x478131
cmp r11d, 8
je 0x478047
mov rax, qword [rdx + 0x18]
mov r11, qword [rbx + 8]
cmp rax, r11
jbe 0x47807f
sub rax, r11
cmp rax, qword [rbx + 0x20]
jae 0x47807f
test r9b, r9b
je 0x478131
mov rax, qword [rdx + 0x10]
mov r9, qword [rbx + 0x10]
cmp rax, r9
jbe 0x478070
sub rax, r9
cmp rdi, rax
ja 0x478131
nop dword [rax]
test rcx, rcx
je 0x47807f
cmp dword [rdx + 4], 8
je 0x478183
lea rcx, str._pB:_section___pA_cant_be_allocated_in_segment__d
mov r9d, r14d
mov rdx, r15
call fcn.0043f6b0
mov r12d, dword [rbp + 8]
mov ecx, r12d
call fcn.0046f820
test rax, rax
mov rdi, rax
je 0x4781f0
call qword [sym.imp.msvcrt.dll___iob_func]
lea rcx, [rax + 0x30]
xor r13d, r13d
call sub.msvcrt.dll_fflush
call qword [sym.imp.msvcrt.dll___iob_func]
lea rdx, [0x00549464]
lea rcx, [rax + 0x60]
mov r8, rdi
lea rdi, [0x00548de8]
call sub.msvcrt.dll_fprintf
mov r9d, dword [rbp + 0x38]
test r9d, r9d
je 0x47810e
mov eax, r13d
add r13d, 1
mov rax, qword [rbp + rax*8 + 0x40]
mov r12, qword [rax]
call qword [sym.imp.msvcrt.dll___iob_func]
lea rcx, [rax + 0x60]
mov rdx, rdi
mov r8, r12
call sub.msvcrt.dll_fprintf
cmp r13d, dword [rbp + 0x38]
jb 0x4780e4
call qword [sym.imp.msvcrt.dll___iob_func]
lea rdx, [rax + 0x60]
mov ecx, 0xa
call sub.msvcrt.dll_putc
call qword [sym.imp.msvcrt.dll___iob_func]
lea rcx, [rax + 0x60]
call sub.msvcrt.dll_fflush
add esi, 1
cmp esi, dword [rbp + 0x38]
jae 0x478256
mov r10d, dword [rbx]
jmp 0x477f25
cmp r10d, 7
setne r11b
cmp r10d, 0x6474e552
setne r9b
test r11b, r9b
je 0x477f54
cmp r10d, 1
jne 0x478075
jmp 0x477f54
mov r11d, dword [rdx + 4]
cmp r11d, 8
jne 0x477fa0
jmp 0x477fc2
cmp r10d, 7
jne 0x478131
jmp 0x47807f
cmp r10d, 1
jbe 0x47758a
mov rax, qword [rbp + 0x40]
lea rdi, [0x0054898a]
mov ecx, 9
mov rsi, qword [rax]
repe cmpsb byte [rsi], byte [rdi]
seta r13b
setb al
sub r13d, eax
movsx r13d, r13b
test r13d, r13d
je 0x47758d
mov r13, qword [rsp + 0x150]
lea rcx, str._pB:_The_first_section_in_the_PT_DYNAMIC_segment_is_not_the_.dynamic_section
mov rdx, r13
call fcn.0043f6b0
mov ecx, 0x11
call fcn.0043f850
jmp 0x475f7e
lea r8d, [r12 - 0x70000000]
cmp r8d, 0xfffffff
jbe 0x4783b3
lea r8d, [r12 - 0x60000000]
cmp r8d, 0xfffffff
ja 0x4782ff
mov rdi, qword [rsp + 0xb8]
lea rdx, str.LOOS_7.7x
mov rcx, rdi
call sub.msvcrt.dll_sprintf
jmp 0x4780a9
mov rax, qword [rsp + 0x150]
movzx eax, byte [rax + 0x44]
mov byte [rsp + 0x40], al
and eax, 7
cmp al, 3
jne 0x4776bd
jmp 0x477baa
mov r12, qword [rsp + 0x40]
jmp 0x477a10
test edx, edx
je 0x477a10
mov r13d, 1
jmp 0x477f05
mov rax, qword [rbx + 0x20]
mov rdi, qword [rsp + 0x30]
mov rdx, rax
add rdx, qword [rbx + 8]
sub rdi, rdx
test r13d, r13d
mov rdx, rdi
jne 0x478295
add rax, rdi
mov qword [rbx + 0x20], rax
add qword [rbx + 0x28], rdx
jmp 0x4776bd
test r10d, r10d
je 0x4782de
mov rsi, qword [rbx + 0x10]
mov r15, qword [rsp + 0x30]
cmp rsi, r15
jb 0x47903d
test r14b, r14b
jne 0x4788ee
mov rdi, qword [rbx + 0x18]
cmp r15, rdi
ja 0x47903d
mov r15, qword [rsp + 0x30]
sub rsi, r15
sub rdi, r15
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], rdi
test r8b, 0x20
mov rsi, rax
jne 0x47761e
jmp 0x477baa
cmp dword [rbp + 8], 4
jne 0x477373
jmp 0x47739a
mov rdi, qword [rsp + 0xb8]
lea r8, str._8.8x
mov r9d, r12d
mov edx, 0x20
mov rcx, rdi
call fcn.00471420
jmp 0x4780a9
mov rdi, qword [rsp + 0x150]
mov rax, qword [rbx + 8]
test r10d, r10d
mov rdx, qword [rdi + 0xf8]
mov qword [rdx + 0x18], rax
je 0x477baa
sub rax, qword [rsp + 0x30]
add qword [rbx + 0x10], rax
test r14b, r14b
jne 0x477baa
add qword [rbx + 0x18], rax
jmp 0x477baa
xor r13d, r13d
jmp 0x477d87
lea rax, [rbp + 0x40]
lea edx, [r10 - 1]
xor ecx, ecx
lea rsi, [rax + rdx*8 + 8]
mov qword [rsp + 0x78], rax
mov r11, rdx
nop dword [rax]
mov rdx, qword [rax]
mov edx, dword [rdx + 0x78]
cmp ecx, edx
cmovb ecx, edx
add rax, 8
cmp rax, rsi
jne 0x478380
mov rdi, qword [rsp + 0xb0]
mov eax, 1
shl rax, cl
cmp rax, rdi
cmovb rax, rdi
mov rsi, rax
jmp 0x477d34
mov rdi, qword [rsp + 0xb8]
lea rdx, str.LOPROC_7.7x
mov rcx, rdi
call sub.msvcrt.dll_sprintf
jmp 0x4780a9
mov edi, dword [r13 + 0xb0]
mov eax, dword [r13 + 0x40]
test edi, edi
mov dword [rsp + 0x94], eax
jne 0x47843a
and eax, 0x43
cmp eax, 1
je 0x47843a
mov dword [rsp + 0xa8], 0
mov qword [rsp + 0xa0], 0
lea r8, [rsp + 0xcc]
lea rdx, [0x00470170]
mov rcx, r13
mov dword [rsp + 0xcc], 0
call fcn.00447e10
mov eax, dword [rsp + 0xcc]
test eax, eax
je 0x47674d
jmp 0x475f76
mov rax, qword [r13 + 0xa8]
xor edx, edx
mov qword [rsp + 0x30], rax
mov rax, qword [r13 + 0x88]
test rax, rax
je 0x478f01
nop dword [rax + rax]
mov ecx, dword [rax + 0x10]
mov rax, qword [rax + 0x18]
cmp edx, ecx
cmovb edx, ecx
test rax, rax
jne 0x478460
add edx, 1
mov rbp, rdx
shl rdx, 3
mov rcx, r13
call fcn.004459f0
test rax, rax
mov rsi, rax
je 0x475f76
mov rax, qword [r13 + 0xf8]
test edi, edi
mov rax, qword [rax + 0xc90]
mov qword [rax + 0x10], rsi
mov dword [rax + 0x48], ebp
je 0x47855d
mov rcx, qword [rsp + 0x30]
lea eax, [rdi - 1]
lea rbp, [rcx + rax*8 + 8]
mov rax, qword [0x00557240]
mov r14, rcx
mov r12, rcx
lea r10, [rax + 0x250]
mov qword [rsp + 0x40], r10
mov r15, qword [r12]
test byte [r15 + 0x19], 1
je 0x478512
cmp qword [r15 + 0x10], 0
jne 0x478512
mov rdx, r15
mov rcx, r13
call fcn.0046fed0
test eax, eax
jne 0x478512
mov rax, qword [r15 + 0x20]
cmp rax, qword [rsp + 0x40]
je 0x478512
cmp r13, qword [rax + 0xf8]
je 0x47850b
mov rax, qword [rax + 0x70]
mov eax, dword [rax + 0x10]
mov qword [rsi + rax*8], r15
add r12, 8
cmp rbp, r12
jne 0x4784d2
xor ebp, ebp
xor r15d, r15d
jmp 0x47852f
add r15d, 1
add r14, 8
cmp r12, r14
je 0x478562
mov rdx, qword [r14]
mov rcx, r13
call fcn.0046fe80
test eax, eax
jne 0x478522
mov rdx, qword [r14]
test rdx, rdx
je 0x478558
test byte [rdx + 0x19], 1
je 0x478558
mov rcx, r13
call fcn.0046fed0
test eax, eax
jne 0x478526
add ebp, 1
jmp 0x478526
xor ebp, ebp
xor r15d, r15d
mov r12, qword [r13 + 0x88]
test r12, r12
je 0x47858a
nop
mov eax, dword [r12 + 0x10]
cmp qword [rsi + rax*8], 0
je 0x478751
mov r12, qword [r12 + 0x18]
test r12, r12
jne 0x478570
lea edx, [rbp + r15]
mov rcx, r13
mov dword [rsp + 0x40], edx
shl rdx, 3
call fcn.00445660
test rax, rax
mov r12, rax
je 0x475f76
test edi, edi
je 0x478f27
mov r14, qword [rsp + 0x30]
lea eax, [rdi - 1]
xor ecx, ecx
mov qword [rsp + 0x30], rbx
xor edi, edi
mov qword [rsp + 0x48], rsi
lea rax, [r14 + rax*8 + 8]
mov rbx, r14
mov r14d, ecx
mov r15, rax
jmp 0x4785fd
lea eax, [rbp + rdi]
add edi, 1
lea edx, [rax + 1]
mov qword [r12 + rax*8], rsi
mov eax, edx
mov qword [rsi + 0x28], rax
add rbx, 8
cmp r15, rbx
je 0x478635
mov rsi, qword [rbx]
mov rcx, r13
mov rdx, rsi
call fcn.0046fe80
test eax, eax
jne 0x4785e0
test rsi, rsi
je 0x478629
test byte [rsi + 0x19], 1
je 0x478629
mov rdx, rsi
mov rcx, r13
call fcn.0046fed0
test eax, eax
jne 0x4785f4
lea edx, [r14 + 1]
mov eax, r14d
mov r14d, edx
jmp 0x4785ea
mov rsi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x30]
mov dword [rsp + 0x30], r14d
mov r15, qword [r13 + 0x88]
test r15, r15
je 0x47866b
mov eax, dword [r15 + 0x10]
lea rax, [rsi + rax*8]
cmp qword [rax], 0
je 0x478771
mov r15, qword [r15 + 0x18]
test r15, r15
jne 0x478650
mov r8d, dword [rsp + 0x40]
mov rdx, r12
mov rcx, r13
call fcn.004481b0
call fcn.00499b20
test rax, rax
mov qword [rsp + 0xa0], rax
je 0x475f76
mov rax, qword [r13 + 8]
mov r12, qword [r13 + 0xf8]
add ebp, 1
mov edi, dword [r13 + 0xb0]
mov rax, qword [rax + 0x370]
mov dword [r12 + 0x64], 2
lea esi, [rdi + 1]
mov dword [rsp + 0x78], edi
mov rdx, qword [rax + 0x320]
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x80], esi
movzx eax, byte [rdx + 5]
mov dword [r12 + 0x8c], ebp
mov qword [r12 + 0x98], rax
imul rax, rsi
mov qword [r12 + 0x80], rax
movzx ecx, byte [rdx + 0xb]
mov eax, 1
movabs rdx, 0xcccccccccccccccd
mov dword [r12 + 0x104], 3
shl rax, cl
lea rcx, [rsi + rsi*4]
mov qword [r12 + 0x90], rax
shl rcx, 3
mov rax, rcx
mul rdx
shr rdx, 5
cmp rsi, rdx
je 0x4789cc
mov ecx, 6
call fcn.0043f850
mov rcx, qword [rsp + 0xa0]
call fcn.00499bb0
jmp 0x475f7e
mov rdx, qword [r12 + 0x100]
mov rcx, r13
call fcn.0046fe80
test eax, eax
jne 0x4788fc
add ebp, 1
jmp 0x478580
mov r14, qword [r15 + 0x100]
mov rcx, r13
mov qword [rax], r14
mov rdx, r14
call fcn.0046fe80
test eax, eax
jne 0x47891b
mov eax, dword [rsp + 0x30]
lea edx, [rax + 1]
mov dword [rsp + 0x30], edx
mov qword [r12 + rax*8], r14
mov eax, edx
mov qword [r14 + 0x28], rax
jmp 0x478662
mov r10d, dword [rbx]
jmp 0x4779e5
mov rdx, qword [rax + 0x18]
xor r8d, r8d
mov rcx, r13
call fcn.004aa400
test eax, eax
jne 0x475f76
mov rax, qword [rsp + 0x98]
mov r8d, ebx
mov rcx, r13
mov rdx, qword [rax + 0x58]
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x320]
call qword [rax + 0x10]
test eax, eax
jne 0x475f76
jmp 0x476e6e
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x170]
test rax, rax
je 0x478824
mov r8d, dword [rsp + 0x90]
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x150]
call rax
test eax, eax
jne 0x47885d
mov rdx, qword [rsp + 0x150]
lea rcx, str._pB:_error:_PHDR_segment_not_covered_by_LOAD_segment
call fcn.0043f6b0
cmp qword [rsp + 0x158], 0
je 0x475f76
mov rax, qword [rsp + 0x158]
lea rcx, [0x00549415]
mov rax, qword [rax + 0x20]
call qword [rax + 0x60]
mov r10d, dword [rbx]
jmp 0x477a06
mov edx, r8d
mov eax, edi
imul edx, edi
mov dword [rsp + 0x94], eax
mov edi, edx
mov qword [r10 + 0x38], rdi
jmp 0x476ba8
cmp r9d, eax
jbe 0x477207
imul rdx, r12
mov rax, r12
imul r10, r12
mov qword [rsi + 0x10], rdx
imul rax, qword [rdi + 0x38]
sub r10, rdx
mov qword [rsi + 0x18], rax
mov rax, qword [rdi + 0x98]
mov qword [rsi + 0x28], r10
mov qword [rsi + 0x20], r10
mov qword [rsi + 8], rax
mov rax, qword [r8 + 0x20]
add rax, qword [r8 + 0x10]
sub rax, rdx
cmp r10, rax
jbe 0x4788ca
mov qword [rsi + 0x20], rax
movzx eax, byte [rbx + 0x30]
test al, 4
jne 0x4788da
mov qword [rsi + 0x30], 1
test al, 1
jne 0x477120
mov dword [rsi + 4], 4
jmp 0x477120
sub rsi, qword [rsp + 0x30]
mov qword [rbx + 0x10], rsi
jmp 0x4782de
add r15d, 1
jmp 0x478580
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elf.c
mov edx, 0x156c
call fcn.0043f7d0
jmp 0x476ba8
lea eax, [rbp + rdi]
add edi, 1
lea edx, [rax + 1]
jmp 0x478799
movzx eax, byte [rdx]
mov qword [rbx + 8], rax
jmp 0x4776b3
mov rcx, r13
call fcn.00471300
test eax, eax
je 0x476da4
test byte [r13 + 0x41], 1
jne 0x476de6
jmp 0x476fd8
mov rax, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0x30]
sub rax, 1
test rdi, rax
je 0x478a2b
mov rcx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x50]
mov r11, qword [rsp + 0xb0]
mov rax, rcx
mov rdi, rcx
add rax, rsi
mov rdx, r11
xor rcx, rax
neg rdx
test rcx, rdx
jne 0x477de0
mov rax, rsi
add rax, r11
mov rsi, rax
mov qword [rsp + 0x50], rax
mov rax, rdi
add rax, rsi
jmp 0x477de0
mov qword [rsp + 0x68], r8
jmp 0x477478
mov r14, qword [rdi + 0xc90]
jmp 0x476e31
call fcn.00444070
test rax, rax
mov r14, rax
je 0x478735
mov rax, qword [rsp + 0x40]
mov rcx, rsi
mov rax, qword [rax + 0x320]
movzx r8d, byte [rax + 5]
imul rcx, r8
test r8b, r8b
je 0x478a48
xor edx, edx
mov rax, rcx
div r8
cmp rsi, rax
je 0x478a48
mov ecx, 6
call fcn.0043f850
mov rcx, r14
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0xa0]
call fcn.00499bb0
jmp 0x475f7e
mov rax, rdi
add rax, qword [rsp + 0x50]
jmp 0x477de0
mov rdx, r14
mov rcx, r13
call fcn.00445a20
jmp 0x475f7e
mov rdx, rcx
mov rcx, r13
call fcn.00445660
test rax, rax
mov qword [rsp + 0x88], rax
je 0x478a07
mov rax, qword [rsp + 0x88]
mov qword [r12 + 0xa8], rax
mov rax, qword [r13 + 0xf8]
mov rdi, qword [rax + 0x2e0]
test rdi, rdi
je 0x4791d3
mov eax, dword [rdi]
test eax, eax
je 0x4791d3
shl rsi, 2
mov rcx, r13
mov rdx, rsi
call fcn.004459f0
test rax, rax
mov qword [rsp + 0x50], rax
je 0x478a11
mov qword [rdi + 0x48], rax
mov dword [rdi + 4], 0x12
mov qword [rdi + 0x20], rsi
mov qword [rdi + 0x30], 4
mov qword [rdi + 0x38], 4
mov dword [rsp + 0x48], 1
mov qword [r14], 0
mov qword [r14 + 8], 0
mov dword [r14 + 0x10], 0
mov byte [r14 + 0x14], 0
mov byte [r14 + 0x15], 0
mov byte [r14 + 0x16], 0
mov dword [r14 + 0x18], 0
mov dword [r14 + 0x20], 0
mov dword [r14 + 0x24], 0
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x88]
test rax, rax
je 0x479287
mov rcx, r13
call rax
test eax, eax
setne al
movzx eax, al
mov dword [rsp + 0x68], eax
cmp dword [rsp + 0x78], 0
mov r9, qword [r13 + 0xa8]
je 0x4790aa
mov rax, qword [0x00557240]
lea rdi, [r14 + 0x28]
mov qword [rsp + 0xb8], r12
mov qword [rsp + 0x70], r14
mov dword [rsp + 0x60], 1
mov r12, r9
mov qword [rsp + 0xb0], rbx
mov r14, rdi
lea rsi, [rax + 0x250]
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0x98], rsi
jmp 0x478ce4
test byte [rdx + 0x29], 0x10
je 0x478d6c
test rdi, rdi
je 0x478bad
mov r15, qword [rdi + 0x30]
test r15, r15
jne 0x478bbf
cmp qword [rsp + 0x30], 0xf
mov r15d, 0x10
jbe 0x4791b0
mov rax, qword [rdx + 0xe8]
test rax, rax
je 0x478bd5
mov ebx, dword [rax + 0x88]
test ebx, ebx
jne 0x478be7
mov rcx, r13
call fcn.00471350
mov ebx, eax
mov rax, qword [r12]
mov rdx, qword [rax + 0x20]
test esi, 0x40000
mov eax, 6
jne 0x478c31
test esi, 0x400000
mov eax, 0xa
jne 0x478c31
test sil, 8
mov eax, 2
jne 0x478c31
test esi, 0x10000
mov eax, 1
jne 0x478c31
test esi, 0x80000
mov eax, 8
jne 0x478c31
mov eax, esi
shl eax, 0xb
sar eax, 0x1f
and eax, 9
test byte [rdx + 0x29], 4
mov edx, 6
cmovne eax, edx
test rdi, rdi
je 0x478c59
mov rcx, qword [rsp + 0x40]
mov r8, qword [rcx + 0x78]
test r8, r8
je 0x478c59
lea rcx, [rdi + 0x30]
mov edx, eax
call r8
mov ebp, dword [rsp + 0x90]
test ebp, ebp
je 0x478e36
and esi, 2
cmp esi, 1
sbb edx, edx
and edx, 0xfffffff0
add edx, 0x13
test rdi, rdi
je 0x478ef1
movzx ecx, byte [rdi + 0x45]
movzx eax, byte [rdi + 0x46]
mov byte [r14 + 0x16], al
mov eax, dword [rsp + 0x60]
mov rdi, qword [rsp + 0x30]
mov dword [r14 + 0x18], ebx
mov ebx, dword [rsp + 0x48]
mov qword [r14], r15
mov dword [r14 + 0x20], eax
add eax, 1
cmp qword [rsp + 0x50], 1
mov qword [r14 + 8], rdi
mov edi, dword [rsp + 0x58]
mov dword [r14 + 0x24], ebx
mov byte [r14 + 0x14], dl
mov byte [r14 + 0x15], cl
mov dword [rsp + 0x60], eax
sbb ebx, 0xffffffff
mov dword [r14 + 0x10], edi
add r12, 8
add r14, 0x28
cmp dword [rsp + 0x80], eax
mov dword [rsp + 0x48], ebx
je 0x479095
mov rax, qword [r12]
mov r15d, dword [rsp + 0x68]
mov rbx, qword [rax + 0x10]
test r15d, r15d
mov esi, dword [rax + 0x18]
mov qword [rsp + 0x30], rbx
jne 0x478d12
mov edx, esi
and edx, 0x102
cmp edx, 0x100
je 0x478ee4
mov rdx, qword [rax + 8]
mov rcx, qword [rsp + 0xa0]
xor r8d, r8d
call fcn.00499be0
cmp eax, 0xffffffff
mov dword [rsp + 0x58], eax
je 0x479227
mov rax, qword [r12]
mov rdx, qword [rax]
test rdx, rdx
je 0x478efa
mov rcx, qword [rdx + 8]
xor edi, edi
cmp dword [rcx + 8], 5
je 0x478e76
mov ebx, esi
mov rdx, qword [rax + 0x20]
and ebx, 0x100
mov dword [rsp + 0x90], ebx
je 0x478b95
mov rbp, qword [rdx + 0x70]
test rbp, rbp
je 0x478f5e
mov r15, qword [rsp + 0x30]
add r15, qword [rdx + 0x68]
test byte [rsp + 0x94], 0x42
je 0x478d90
add r15, qword [rbp + 0x30]
test rdi, rdi
je 0x478df1
cmp rbp, qword [rsp + 0x98]
mov rax, qword [rdi + 0x38]
mov qword [rsp + 0x30], rax
jne 0x478dfa
mov ebx, dword [rdi + 0x48]
test ebx, ebx
je 0x478dfa
cmp ebx, 0xffffff43
je 0x479317
ja 0x4792fd
cmp ebx, 0xffffff41
je 0x47934c
ja 0x4792e7
cmp ebx, 0xffffff40
jne 0x4792ac
mov rax, qword [r13 + 0xf8]
mov ebx, dword [rax + 0xc70]
jmp 0x478be7
mov qword [rsp + 0x30], 0
mov rax, qword [rbp + 0xe8]
test rax, rax
je 0x478e10
mov ebx, dword [rax + 0x88]
test ebx, ebx
jne 0x478e1d
mov rdx, rbp
mov rcx, r13
call fcn.00471350
mov ebx, eax
cmp ebx, 0xfffffeff
je 0x478f93
mov rax, qword [r12]
mov rdx, qword [rax + 0x20]
jmp 0x478be7
mov rdx, qword [r12]
mov rdx, qword [rdx + 0x20]
test byte [rdx + 0x29], 0x10
je 0x478e87
cmp eax, 6
mov edx, 0x16
je 0x478c76
mov eax, dword [r13 + 0x40]
test eax, 0x40000
je 0x479010
and eax, 0x80000
cmp eax, 1
sbb edx, edx
and edx, 0xfffffffc
add edx, 0x15
jmp 0x478c76
cmp qword [rdx + 0xf8], 0
cmovne rdi, rax
jmp 0x478d53
mov rcx, qword [rsp + 0xa8]
add rcx, 0x128
cmp rdx, rcx
je 0x479023
test esi, 0x4000
mov edx, 4
jne 0x478c76
xor edx, edx
test sil, 1
jne 0x478eda
test esi, 0x800000
mov edx, 0xffffffa0
jne 0x478eda
test sil, 0x80
mov edx, 0x20
jne 0x478eda
shr esi, 1
mov edx, esi
and edx, 1
shl edx, 4
and eax, 0xf
add edx, eax
jmp 0x478c76
mov dword [rsp + 0x58], 0xffffffff
jmp 0x478d37
xor eax, eax
xor ecx, ecx
jmp 0x478c87
xor edi, edi
jmp 0x478d53
mov edx, 8
mov ebp, 1
jmp 0x47847b
xor edx, edx
mov rcx, r13
call fcn.00475010
test eax, eax
jne 0x476aeb
jmp 0x475f76
mov dword [rsp + 0x30], 0
jmp 0x478644
mov r15, qword [rsp + 0x30]
lea rcx, str._pB:_error:_non_load_segment__d_includes_file_header_and_or_program_header
mov rdx, r13
sub rsi, r15
mov r8, rsi
sar r8, 3
imul r8d, r8d, 0xb6db6db7
call fcn.0043f6b0
jmp 0x475f7e
mov rbp, rdx
mov r15, qword [rsp + 0x30]
jmp 0x478d82
xor r9d, r9d
cmp r10d, 7
jne 0x477ffa
jmp 0x477ff6
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elf.c
mov edx, 0xf10
call fcn.0043f7d0
jmp 0x4762b1
mov rdx, qword [rbp]
mov rcx, r13
call fcn.00447880
test rax, rax
je 0x478fd3
mov rdx, qword [rax + 0xe8]
test rdx, rdx
je 0x478fba
mov ebx, dword [rdx + 0x88]
test ebx, ebx
jne 0x478fc7
mov rdx, rax
mov rcx, r13
call fcn.00471350
mov ebx, eax
cmp ebx, 0xfffffeff
jne 0x478e29
mov rax, qword [r12]
mov r11, rbp
lea rcx, str.unable_to_find_equivalent_output_section_for_symbol__s_from_section__s
mov r8, qword [r11]
mov r14, qword [rsp + 0x70]
mov rdx, qword [rax + 8]
lea rax, str._Local_sym_
test rdx, rdx
cmove rdx, rax
call fcn.0043f6b0
mov ecx, 5
call fcn.0043f850
jmp 0x478a11
and esi, 0x40
cmp esi, 1
sbb edx, edx
and edx, 0xfffffffc
add edx, 0x15
jmp 0x478c76
and esi, 0x80
cmp esi, 1
sbb edx, edx
and eax, 0xf
and edx, 0xfffffff0
lea edx, [rdx + rax + 0x20]
jmp 0x478c76
mov r13, qword [rsp + 0x150]
lea rcx, str._pB:_not_enough_room_for_program_headers__try_linking_with__N
mov rdx, r13
call fcn.0043f6b0
mov ecx, 0x11
call fcn.0043f850
jmp 0x475f7e
mov rdx, qword [r13 + 0xf8]
mov rdx, qword [rdx + 0xc90]
mov rdx, qword [rdx]
test rdx, rdx
je 0x479264
cmp dword [rdx + 8], 1
jne 0x479071
mov r8d, dword [rdx + 0x38]
test r8d, r8d
je 0x479071
mov rdx, qword [rdx + 0x40]
jmp 0x477ad9
mov rbx, qword [rsp + 0xb0]
mov r12, qword [rsp + 0xb8]
mov r14, qword [rsp + 0x70]
mov rcx, qword [rsp + 0xa0]
xor edi, edi
call fcn.0049a170
mov rbp, qword [rsp + 0x40]
jmp 0x479102
mov dword [rsi + 0x10], 0
mov r10, qword [rbp + 0x320]
mov edx, dword [rsi + 0x24]
add edi, 1
mov rcx, qword [rsp + 0x50]
movzx eax, byte [r10 + 5]
imul eax, dword [rsi + 0x20]
lea r9, [rcx + rdx*4]
mov rcx, qword [rsp + 0x88]
mov rdx, rsi
lea r8, [rcx + rax]
mov rcx, r13
call qword [r10 + 0x38]
cmp dword [rsp + 0x78], edi
jb 0x479128
mov eax, edi
lea rax, [rax + rax*4]
lea rsi, [r14 + rax*8]
mov eax, dword [rsi + 0x10]
cmp eax, 0xffffffff
je 0x4790c0
mov rcx, qword [rsp + 0xa0]
mov edx, eax
call fcn.00499f70
mov dword [rsi + 0x10], eax
jmp 0x4790c7
mov rcx, r14
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0xa0]
call fcn.00499f50
mov qword [r12 + 0x120], rax
mov rax, qword [rsp + 0x40]
mov dword [r12 + 0x104], 3
mov dword [rsp + 0xa8], 1
mov eax, dword [rax + 0x3c8]
mov qword [r12 + 0x110], 0
mov qword [r12 + 0x138], 0
mov dword [r12 + 0x128], 0
mov dword [r12 + 0x12c], 0
mov qword [r12 + 0x130], 1
mov qword [r12 + 0x108], rax
jmp 0x478404
mov rcx, qword [rsp + 0x30]
call fcn.00444790
mov ecx, eax
mov rax, qword [r12]
mov edx, 1
shl edx, cl
movsxd r15, edx
mov rdx, qword [rax + 0x20]
jmp 0x478bbf
mov qword [r14], 0
mov qword [r14 + 8], 0
mov dword [r14 + 0x10], 0
mov byte [r14 + 0x14], 0
mov byte [r14 + 0x15], 0
mov byte [r14 + 0x16], 0
mov dword [r14 + 0x18], 0
mov dword [r14 + 0x20], 0
mov dword [r14 + 0x24], 0
mov qword [rsp + 0x50], 0
mov dword [rsp + 0x48], 0
jmp 0x478b13
mov r14, qword [rsp + 0x70]
jmp 0x478a11
mov rcx, qword [r13 + 0xf8]
mov rax, qword [rbp + 0x58]
mov ecx, dword [rcx + 0xc70]
mov dword [rax + 0x2c], edx
or qword [rax + 8], 0x40
mov dword [rax + 0x28], ecx
jmp 0x47637f
or rdx, 0xffffffffffffffff
jmp 0x476f05
or rdx, 0xffffffffffffffff
jmp 0x476f44
mov qword [rcx + 0x30], rax
mov rax, qword [0x00557240]
add rax, 0x250
mov qword [rcx + 0x28], rax
jmp 0x477aee
or rdx, 0xffffffffffffffff
jmp 0x476eaf
mov dword [rsp + 0x68], 0
jmp 0x478b39
lea r8, str.assign_file_positions_for_non_load_sections
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elf.c
mov edx, 0x1832
call fcn.0043f7f0
lea eax, [rbx + 0x100]
cmp eax, 0x3f
ja 0x47935e
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x3a0]
test rax, rax
je 0x478be7
mov rdx, rdi
mov rcx, r13
call rax
mov ebx, eax
mov rax, qword [r12]
mov rdx, qword [rax + 0x20]
jmp 0x478be7
mov rax, qword [r13 + 0xf8]
mov rax, qword [rax + 0xc90]
mov ebx, dword [rax + 0x50]
jmp 0x478be7
cmp ebx, 0xffffff44
je 0x47932d
lea eax, [rbx + 0xf]
cmp eax, 1
ja 0x4792ac
mov ebx, 0xfffffff1
jmp 0x478be7
mov rax, qword [r13 + 0xf8]
mov rax, qword [rax + 0xc90]
mov ebx, dword [rax + 0x4c]
jmp 0x478be7
mov rax, qword [r13 + 0xf8]
mov rax, qword [rax + 0x2e0]
test rax, rax
je 0x478be7
mov ebx, dword [rax + 0x50]
jmp 0x478be7
mov rax, qword [r13 + 0xf8]
mov ebx, dword [rax + 0xc74]
jmp 0x478be7
lea eax, [rbx + 0xc0]
cmp eax, 0xbe
ja 0x47930d
lea rcx, str._pB:_Unable_to_handle_section_index__x_in_ELF_symbol.__Using_ABS_instead.
mov r8d, ebx
mov rdx, r13
mov ebx, 0xfffffff1
call fcn.0043f6b0
mov rax, qword [r12]
mov rdx, qword [rax + 0x20]
jmp 0x478be7