Function at 0x457850
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 0x45649d
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 0x4564c0
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 0x45609d
mov r8, qword [rsp + 0x58]
test r8, r8
jne 0x456d19
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 0x456623
mov rax, qword [0x004d84c0]
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 [0x004d84c0]
mov qword [rsp + 0x40], rax
lea rdi, [rax + 0x128]
jmp 0x456137
movzx eax, byte [rbx + 0x14]
shr al, 4
test al, al
je 0x45614e
mov qword [r15], 0
add rbx, 0x20
add r14, 4
add r15, 8
cmp rsi, rbx
jbe 0x456620
mov dword [r14], 0xffffffff
mov rax, qword [r13 + 0xf8]
test byte [rax + 0xc85], 0x40
jne 0x456110
mov edx, dword [rbx + 0x18]
test edx, edx
jne 0x4564f0
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 0x456122
movzx eax, byte [rbx + 0x14]
and eax, 0xf
cmp al, 3
je 0x456122
mov rcx, qword [rbp]
mov eax, dword [rcx]
and eax, 0x18000
cmp eax, 0x18000
je 0x456122
movzx eax, byte [rcx + 2]
and eax, 6
cmp al, 6
je 0x456122
mov eax, dword [rbx + 0x18]
sub eax, 1
cmp eax, 0xfffffefe
ja 0x4561e6
mov r8, qword [rdx + 0x70]
test r8, r8
je 0x4568f0
mov rax, qword [r8 + 0x18]
test rax, rax
je 0x456600
cmp qword [rax + 0x20], r8
setne al
movzx eax, al
test eax, eax
jne 0x456122
mov rax, qword [rsp + 0x60]
mov r8d, dword [rbx + 0x10]
mov rcx, r13
mov edx, dword [rax + 0x88]
call fcn.00435be0
test rax, rax
mov qword [rsp + 0x48], rax
je 0x456881
mov rdx, qword [rbp]
mov eax, dword [rdx]
and eax, 0x18000
cmp eax, 0x10000
je 0x456810
movzx eax, byte [rdx + 2]
and eax, 6
jne 0x4565c0
mov rax, qword [rsp + 0x118]
test byte [rax + 0x2a], 0x80
je 0x456260
movzx eax, byte [rdx]
and eax, 3
cmp al, 2
je 0x456260
mov rax, qword [r13 + 8]
mov rdx, qword [rsp + 0x48]
mov rcx, r13
call qword [rax + 0x220]
test eax, eax
jne 0x456122
movzx eax, byte [rbx + 0x14]
and eax, 0xf
cmp al, 4
je 0x4565d7
mov r9d, dword [rsp + 0x68]
test r9d, r9d
jne 0x4562f7
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 0x4562d6
mov rdx, qword [r13]
lea r9, [r12 + 0x250]
mov qword [rsp + 0x20], 0
mov rcx, rbp
call fcn.004481c0
test eax, eax
je 0x456881
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.0043dcc0
cmp eax, 0xfffffeff
mov dword [rsp + 0x138], eax
je 0x456881
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 0x4563a2
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 0x456840
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.004481c0
test eax, eax
je 0x456881
cmp eax, 1
je 0x4565f0
mov dword [rsp + 0x68], 1
jmp 0x456122
mov rax, qword [rbp + 0x28]
lea r8, [rsp + 0x110]
mov rdx, r15
mov rcx, r12
mov qword [rsp + 0x110], rax
call fcn.0041cc50
test eax, eax
je 0x456881
mov eax, dword [r15 + 0x28]
test al, 4
jne 0x456920
mov rax, qword [r13 + 0x280]
test rax, rax
je 0x456443
mov r9, qword [rsp + 0x110]
mov r8, r15
mov rdx, qword [rbp]
mov rcx, qword [rsp + 0x50]
call rax
test eax, eax
jne 0x456490
movzx eax, word [r15 + 0x2c]
shr ax, 7
and eax, 7
cmp al, 2
je 0x456dec
jbe 0x456d5c
cmp al, 3
je 0x456caf
cmp al, 6
jne 0x456e21
mov r9, qword [rsp + 0x110]
mov rdx, qword [rbp]
mov r8, r15
mov rcx, qword [rsp + 0x50]
call fcn.004612e0
test eax, eax
je 0x456881
nop
mov r15, qword [r15 + 0x18]
test r15, r15
jne 0x4566c1
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 0x456062
cmp edx, 0xfffffff1
je 0x4565a0
cmp edx, 0xfffffff2
jne 0x456515
mov r12, qword [0x004d84c0]
mov qword [rsp + 0x118], r12
mov rax, r12
jmp 0x456169
mov rcx, r13
call fcn.00438920
test rax, rax
mov qword [rsp + 0x118], rax
je 0x456159
movzx edx, word [rax + 0x2c]
mov r12, qword [0x004d84c0]
and dx, 0x380
cmp dx, 0x100
jne 0x456169
movzx edx, byte [rbx + 0x14]
mov r12, qword [rsp + 0xa0]
and edx, 0xf
cmp dl, 3
je 0x456169
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.00479d40
mov r12, qword [0x004d84c0]
mov qword [rbx], rax
mov rax, qword [rsp + 0x118]
jmp 0x456169
mov rax, qword [rsp + 0x80]
mov r12, qword [rsp + 0x78]
mov qword [rsp + 0x118], rax
jmp 0x456169
cmp al, 4
je 0x456246
movzx eax, byte [rbx + 0x14]
and eax, 0xf
cmp al, 4
jne 0x45626f
test byte [r13 + 0x46], 8
jne 0x456122
add qword [rbp + 0x70], 1
jmp 0x4562f7
mov dword [r14], r12d
jmp 0x4563dd
mov rax, qword [rsp + 0x50]
cmp qword [rax + 0x90], r8
setne al
movzx eax, al
jmp 0x4561de
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 0x45649d
mov rax, qword [0x004d84c0]
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 0x456490
mov rdx, qword [rbp]
mov eax, dword [r15 + 0x28]
test byte [rdx + 1], 0x20
jne 0x4566ee
mov ecx, eax
and ecx, 0x2100000
cmp ecx, 0x2000000
je 0x456771
test ah, 1
je 0x456490
mov rcx, qword [r15 + 0x40]
test rcx, rcx
jne 0x456708
test al, 4
je 0x456490
test eax, 0x100000
jne 0x456490
mov rdx, qword [r15 + 0xe8]
mov rdx, qword [rdx + 0x48]
test rdx, rdx
je 0x4563ea
test byte [r13 + 0x3cf], 2
mov qword [rsp + 0x110], rdx
je 0x456415
mov r8, qword [r15 + 0x48]
cmp rcx, r8
jbe 0x456415
test r8, r8
je 0x456415
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 0x456415
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 0x45679a
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_riscv32_esp_elf_src_binutils_bfd_elflink.c
mov edx, 0x2a4d
call fcn.0041a650
mov edx, esi
cmp qword [rsp + 0x58], rdx
jbe 0x4568a0
mov rax, qword [r12 + 0xf8]
test byte [rax + 0xc85], 0x40
jne 0x456888
mov rax, rdx
shl rax, 5
add rax, qword [rsp + 0x70]
movzx ecx, byte [rax + 0x14]
and ecx, 0xf
cmp cl, 3
je 0x457267
mov rcx, qword [rbp + 0x58]
lea rsi, [rdx*4]
mov r14d, dword [rcx + rdx*4]
cmp r14d, 0xffffffff
je 0x4575d0
mov rax, qword [rbx + 0xe8]
mov dword [rax + 0x2c], r14d
mov eax, dword [r15 + 0x28]
jmp 0x4566ee
mov rcx, qword [rdx + 0x30]
mov rdx, qword [rsp + 0x48]
xor r9d, r9d
xor r8d, r8d
call fcn.0041f2f0
test rax, rax
je 0x456122
mov rdx, qword [rbp]
jmp 0x456221
mov rcx, qword [rcx + 0x28]
mov rcx, qword [rcx + 0x170]
test rcx, rcx
je 0x4574d0
sub rax, qword [rcx + 0x30]
mov qword [rsp + 0x120], rax
jmp 0x4563a2
lea rcx, str.error:__pB:_size_of_section__pA_is_not_multiple_of_address_size
mov r8, r15
mov rdx, r12
call fcn.0041a530
mov ecx, 0x11
call fcn.0041a6d0
xor eax, eax
jmp 0x4564a2
mov rax, qword [rbp + 0x60]
cmp qword [rax + rdx*8], 0
jne 0x4567bc
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 0x4568cf
nop
mov rdx, qword [rdx + 0x28]
movzx eax, byte [rdx + 0x18]
sub eax, 6
cmp al, 1
jbe 0x4568c0
mov rax, qword [rbx + 0xe8]
mov dword [rdx + 0x38], 0xfffffffe
mov dword [rax + 0x2c], 0xfffffffe
mov eax, dword [r15 + 0x28]
jmp 0x4566ee
movzx eax, byte [rcx + 7]
and eax, 0x60
cmp al, 0x60
jne 0x4561c7
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.0041a530
jmp 0x456122
mov dword [rsp + 0x20], 0
mov r9, qword [rbp + 0x38]
mov rdx, r15
mov r8, qword [rbp + 0x30]
mov rcx, r12
call fcn.0044de00
test rax, rax
mov qword [rsp + 0x90], rax
je 0x4575b2
mov rdx, qword [r15 + 0x40]
cmp qword [rsp + 0xa0], rdx
jae 0x4569a3
mov rax, qword [r15]
lea rdi, str..ctors
mov ecx, 6
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
jne 0x456ce2
mov rcx, qword [r15 + 0x70]
lea rdi, str..init_array
mov rsi, qword [rcx]
mov ecx, 0xc
repe cmpsb byte [rsi], byte [rdi]
jne 0x456ce2
movzx eax, byte [rax + 6]
test al, al
je 0x4574f0
cmp al, 0x2e
je 0x4574f0
movzx ecx, word [r15 + 0x2c]
shr cx, 7
and ecx, 7
cmp cl, 7
je 0x4569d0
mov eax, 1
shl rax, cl
test al, 0x4a
je 0x4569d0
mov dword [rsp + 0x48], 0xffffffff
jmp 0x456a05
mov rax, qword [r15 + 0xf8]
mov rax, qword [rax + 8]
mov rax, qword [rax + 0x370]
mov rax, qword [rax + 0x250]
test rax, rax
je 0x4569f7
mov rcx, r15
call rax
test eax, eax
jne 0x4569c0
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 0x456eac
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 0x456b0d
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 0x456a95
test r9, r9
je 0x456b2d
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.004360b0
mov qword [rsp + 0x118], rax
and r13d, 0xf
lea eax, [r13 - 8]
cmp eax, 1
jbe 0x456ba7
cmp dword [rsp + 0x48], 0xffffffff
je 0x456b00
test rdi, rdi
je 0x456b00
mov rbx, qword [rdi]
mov rax, qword [rsp + 0x80]
cmp rbx, rax
je 0x456b00
test rbx, rbx
je 0x456b00
cmp qword [rbx + 0x70], rax
je 0x45728c
nop word [rax + rax]
add rsi, 0x18
cmp rbp, rsi
jbe 0x456e9e
mov r8, qword [rsi + 8]
movzx ecx, byte [rsp + 0x40]
mov rbx, r8
shr rbx, cl
test ebx, ebx
je 0x456b00
mov ebx, ebx
cmp qword [rsp + 0x58], rbx
ja 0x456a70
mov rax, rbx
sub rax, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x78]
mov rax, qword [rdi + rax*8]
test rax, rax
jne 0x456b54
jmp 0x4576a3
mov rax, qword [rax + 0x28]
movzx edx, byte [rax + 0x18]
lea ecx, [rdx - 6]
cmp cl, 1
jbe 0x456b50
test byte [rax + 0x19], 3
movzx r13d, byte [rax + 0x60]
je 0x456b77
sub edx, 3
cmp dl, 1
jbe 0x456db5
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 0x456acf
mov rax, qword [r12]
movzx eax, byte [rax]
and eax, 3
cmp al, 2
je 0x456acf
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.00448ca0
test eax, eax
je 0x456881
mov r13, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x120]
cmp r13, rbx
jbe 0x456c62
mov rax, rbx
shl rax, 5
add rax, qword [rsp + 0x70]
movzx edx, byte [rax + 0x14]
shr dl, 4
test dl, dl
je 0x457744
mov rax, qword [r14 + 0xf8]
xor r13d, r13d
test byte [rax + 0xc85], 0x40
jne 0x456c69
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_riscv32_esp_elf_src_binutils_bfd_elflink.c
mov edx, 0x2117
call fcn.0041a650
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 0x456c91
mov rdx, qword [rdx + 0x28]
movzx eax, byte [rdx + 0x18]
sub eax, 6
cmp al, 1
jbe 0x456c82
mov rax, qword [0x004d84c0]
mov byte [rdx + 0x18], 3
mov qword [rdx + 0x30], rdi
add rax, 0x250
mov qword [rdx + 0x28], rax
jmp 0x456b00
mov r9, qword [rsp + 0x110]
mov rdx, qword [rbp]
mov r8, r15
mov rcx, qword [rsp + 0x50]
call fcn.00461520
test eax, eax
je 0x456881
mov r15, qword [r15 + 0x18]
test r15, r15
jne 0x4566c1
jmp 0x45649d
lea rdi, str..dtors
mov ecx, 6
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
jne 0x4569a3
mov rcx, qword [r15 + 0x70]
lea rdi, str..fini_array
mov rsi, qword [rcx]
mov ecx, 0xc
repe cmpsb byte [rsi], byte [rdi]
jne 0x4569a3
jmp 0x45698f
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.00435cf0
test rax, rax
mov qword [rsp + 0x70], rax
jne 0x45609d
xor eax, eax
jmp 0x4564a2
cmp al, 1
jne 0x456e21
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.0047c2c0
test eax, eax
je 0x456881
mov r15, qword [r15 + 0x18]
test r15, r15
jne 0x4566c1
jmp 0x45649d
mov rdx, qword [rax + 0x28]
test byte [rdx + 0x2a], 0x10
jne 0x456b77
mov rdx, qword [rdx + 0xf8]
test rdx, rdx
je 0x456b77
test byte [rdx + 0x42], 1
je 0x456b77
mov byte [rax + 0x18], 1
mov qword [rax + 0x28], rdx
xor edi, edi
jmp 0x456b8e
mov rax, qword [r15 + 0xe8]
mov rcx, qword [rsp + 0x50]
mov rdx, r15
mov r8, qword [rax + 0xe0]
call fcn.00479ad0
test eax, eax
je 0x456881
mov r15, qword [r15 + 0x18]
test r15, r15
jne 0x4566c1
jmp 0x45649d
test byte [r15 + 0x29], 0x80
jne 0x456490
mov r14, qword [rsp + 0x50]
mov rdi, qword [r15 + 0x68]
mov rdx, r15
mov rbx, qword [r15 + 0x40]
mov rcx, r14
call fcn.0041a380
mov esi, eax
imul rsi, rdi
test byte [r15 + 0x2b], 4
je 0x457765
mov rax, qword [rsp + 0xa0]
sub rbx, rax
mov rdi, rax
jmp 0x456e74
test rbx, rbx
je 0x456490
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.004227e0
test eax, eax
jne 0x456e65
xor eax, eax
jmp 0x4564a2
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 0x456881
mov rcx, qword [rbp]
movzx r10d, byte [rcx]
and r10d, 3
cmp eax, 2
je 0x456f1b
cmp r10b, 2
je 0x456f1b
test byte [rcx + 3], 0x40
je 0x45641d
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 0x457753
mov r8, qword [rbx + 0x38]
test r8, r8
jne 0x4574df
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 0x456fbc
add rdi, qword [r9 + 0x30]
mov rax, qword [rsp + 0x90]
mov r14, r11
cmp rax, r11
jae 0x4577b0
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 0x457047
mov qword [rbx], rdi
mov qword [rbx + 8], 0
mov qword [rbx + 0x10], 0
add rbx, 0x18
add esi, 1
cmp r14, rbx
jbe 0x457454
mov rdx, qword [rbp]
mov rax, qword [r13 + 0x320]
movzx eax, byte [rax + 9]
cmp eax, esi
je 0x457175
cmp qword [rsp + 0x48], rbx
je 0x4577d2
mov r9, qword [rbx]
mov r8, r15
mov rcx, r12
call fcn.00445810
cmp rax, 0xfffffffffffffffd
mov qword [rbx], rax
ja 0x457020
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 0x45709f
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 0x457033
mov r10d, eax
cmp qword [rsp + 0x58], r10
mov rcx, qword [rsp + 0x198]
mov rcx, qword [rcx + 0xf8]
jbe 0x457182
test byte [rcx + 0xc85], 0x40
je 0x4571ee
mov r9, qword [rbp + 0x60]
mov r9, qword [r9 + r10*8]
test r9, r9
je 0x457182
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 0x4571fb
mov rax, qword [rbp + 0x58]
mov r11d, dword [rax + r10*4]
cmp r11d, 0xffffffff
je 0x457305
movzx ecx, byte [rsp + 0x40]
shl r11, cl
and r8, qword [rsp + 0xa8]
or r8, r11
mov qword [rbx + 8], r8
jmp 0x457033
add qword [rsp + 0x68], 8
xor esi, esi
jmp 0x45705a
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 0x4571b0
mov r8, qword [r8 + 0x28]
movzx eax, byte [r8 + 0x18]
sub eax, 6
cmp al, 1
jbe 0x4571a0
mov ecx, dword [r8 + 0x38]
test ecx, ecx
js 0x4571d9
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_riscv32_esp_elf_src_binutils_bfd_elflink.c
mov edx, 0x2be8
mov qword [rsp + 0xc0], r8
call fcn.0041a650
mov r8, qword [rsp + 0xc0]
mov rax, qword [rsp + 0x68]
mov dword [r8 + 0x38], 0xfffffffe
mov qword [rax], r8
jmp 0x457033
mov rax, qword [rbp + 0x60]
mov r9, qword [rax + r10*8]
jmp 0x4570ed
cmp r9, qword [rsp + 0xb8]
je 0x457709
test r9, r9
je 0x457790
cmp qword [r9 + 0xf8], 0
je 0x457790
mov rdx, qword [r9 + 0x70]
cmp rdx, qword [rsp + 0xb8]
je 0x457711
mov eax, dword [rdx + 0xe0]
test eax, eax
je 0x4576c6
movzx ecx, byte [rsp + 0x40]
mov r11d, eax
shl r11, cl
mov edx, dword [rsp + 0xc8]
test edx, edx
je 0x457161
mov rax, qword [r9 + 0x68]
add qword [rbx + 0x10], rax
jmp 0x457161
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 0x4566ee
movzx eax, word [rbx + 0x2c]
and ax, 0x380
sub ax, 0x100
test ax, 0xfe80
je 0x456b00
mov eax, dword [rsp + 0x68]
test eax, eax
jne 0x4572d2
test byte [rsp + 0x48], 2
je 0x456b00
mov rdx, qword [r12]
mov rcx, rbx
call fcn.00455f10
test rax, rax
je 0x456b00
mov qword [rdi], rax
jmp 0x456b00
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 0x4572aa
mov eax, dword [rdx]
and eax, 0x18000
cmp eax, 0x18000
je 0x4577c1
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.00435be0
test rax, rax
mov qword [rsp + 0xc0], rax
je 0x456881
mov r9, qword [rsp + 0xf0]
mov rcx, r12
mov r8, qword [r9 + 0x70]
mov rdx, r8
mov qword [rsp + 0x100], r8
call fcn.0043dcc0
cmp eax, 0xfffffeff
mov dword [rsp + 0x138], eax
je 0x456881
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 0x4573e9
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 0x45758d
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.004481c0
test eax, eax
je 0x456881
cmp eax, 1
jne 0x45782a
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 0x457159
mov rax, qword [rsp + 0xd0]
mov r12, qword [rsp + 0x198]
mov rbx, qword [rax + 0x58]
test rbx, rbx
je 0x457478
cmp qword [rbx + 0x20], 0
jne 0x457525
mov rax, qword [rsp + 0xd0]
mov r8, qword [rax + 0x70]
test r8, r8
je 0x45641d
cmp qword [r8 + 0x20], 0
je 0x45641d
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 0x45641d
xor eax, eax
jmp 0x4564a2
and edx, 0xfffffff0
mov byte [rsp + 0x134], dl
jmp 0x4563a2
mov rax, qword [rbx + 0x20]
xor edx, edx
div r8
mov r8, rax
jmp 0x456f8a
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 0x456865
or dword [r15 + 0x28], 0x4000000
jmp 0x4569a3
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 0x456881
mov rcx, qword [rbx + 0x38]
test rcx, rcx
je 0x457569
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 0x457478
mov rdx, qword [rdx + 0x28]
mov rdx, qword [rdx + 0x170]
test rdx, rdx
je 0x4577a1
sub rax, qword [rdx + 0x30]
mov qword [rsp + 0x120], rax
jmp 0x4573e9
mov r8d, dword [r15 + 0x90]
test r8d, r8d
je 0x45694c
xor eax, eax
jmp 0x4564a2
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.00435be0
test rax, rax
mov rdi, rax
je 0x456881
mov rdx, r14
mov r14, qword [rsp + 0x50]
mov rcx, r14
call fcn.0043dcc0
cmp eax, 0xfffffeff
mov dword [rsp + 0x138], eax
je 0x456881
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.004481c0
test eax, eax
je 0x456881
cmp eax, 1
jne 0x457812
add rsi, qword [rbp + 0x58]
mov dword [rsi], r14d
jmp 0x4567f2
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.0041a530
mov ecx, 0x11
call fcn.0041a6d0
xor eax, eax
jmp 0x4564a2
mov r8, qword [rdx + 0x30]
add qword [rbx + 0x10], r8
mov rcx, r12
mov qword [rsp + 0xc0], r9
call fcn.004786a0
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 0x45724b
xor r11d, r11d
jmp 0x45724b
mov rax, qword [r9 + 0xd0]
test rax, rax
je 0x457709
mov rdx, qword [rax + 0x70]
test rdx, rdx
je 0x457709
mov rax, qword [rdx + 0x30]
xor r11d, r11d
sub qword [rbx + 0x10], rax
cmp rdx, qword [rsp + 0xb8]
je 0x45724b
jmp 0x457232
mov dword [rax + 0x18], 0xfffffff1
mov qword [rax], rdi
jmp 0x456b00
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x48], rax
jmp 0x456fae
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.004227e0
test eax, eax
jne 0x456490
jmp 0x456881
mov ecx, 0x11
call fcn.0041a6d0
xor eax, eax
jmp 0x4564a2
and ecx, 0xfffffff0
mov byte [rsp + 0x134], cl
jmp 0x4573e9
mov qword [rsp + 0xe0], 0
jmp 0x457468
mov ecx, 5
call fcn.0041a6d0
xor eax, eax
jmp 0x4564a2
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 0x457065
lea r8, str.elf_link_input_bfd
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_riscv32_esp_elf_src_binutils_bfd_elflink.c
mov edx, 0x2a80
call fcn.0041a670
lea r8, str.elf_link_input_bfd
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_riscv32_esp_elf_src_binutils_bfd_elflink.c
mov edx, 0x2c63
call fcn.0041a670
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 0x457895
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 0x45828d
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 0x4578f9
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.0045dc40
test rax, rax
mov qword [rsp + 0x170], rax
je 0x45787d
mov esi, dword [rsp + 0x80]
test esi, esi
jne 0x458315
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 0x4584f0
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 0x457a6f
mov ecx, 0x10
mov rdi, r12
repe cmpsb byte [rsi], byte [rdi]
je 0x457a86
mov eax, dword [r14 + 0x28]
test eax, 0x2000000
je 0x457a66
cmp qword [r14 + 0x40], 0
jne 0x457a66
nop
mov rdx, qword [r14 + 0x20]
or ah, 0x80
mov dword [r14 + 0x28], eax
mov rax, qword [r14 + 0x18]
test rdx, rdx
je 0x4581c8
mov qword [rdx + 0x18], rax
test rax, rax
je 0x4581bc
mov qword [rax + 0x20], rdx
sub dword [r15 + 0x98], 1
mov ebp, 1
mov r14, qword [r14 + 0x18]
test r14, r14
je 0x457aed
test r13, r13
mov rsi, qword [r14]
je 0x457a10
mov rdx, r13
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x457a10
mov rax, qword [r14 + 0x110]
test rax, rax
jne 0x457a9c
jmp 0x457ab5
mov rax, qword [rax]
test rax, rax
je 0x457ab5
cmp dword [rax + 8], 1
jne 0x457a94
mov rdx, qword [rax + 0x20]
mov rax, qword [rax]
and dword [rdx + 0x28], 0xfffffeff
test rax, rax
jne 0x457a9c
mov rcx, r15
call fcn.0045ce70
mov rcx, r14
mov rbx, rax
mov rdx, rax
call fcn.004227a0
test rbx, rbx
mov qword [r14 + 0x110], 0
je 0x457fe0
mov qword [rsp + 0x58], r14
mov r14, qword [r14 + 0x18]
test r14, r14
jne 0x457a6f
test ebp, ebp
movzx r14d, byte [rsp + 0x60]
mov qword [rsp + 0xa0], rbx
jne 0x458300
mov rsi, qword [r15 + 0x88]
test rsi, rsi
je 0x458505
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 0x458131
mov r15d, 1
jmp 0x457b85
cmp eax, 1
je 0x458010
mov rbx, qword [rbx]
test rbx, rbx
je 0x457c11
mov eax, dword [rbx + 8]
lea edx, [rax - 3]
cmp edx, 1
ja 0x457b70
mov edx, 1
xor ecx, ecx
xor r8d, r8d
add dword [rsi + 0x90], edx
cmp eax, 1
jne 0x457ff0
test r14b, r14b
je 0x457ff0
mov rdx, qword [rcx + 0x58]
test rdx, rdx
je 0x457bdc
mov rdi, qword [rdx + 0x38]
xor eax, eax
mov r11d, dword [rbp + 0x60]
test rdi, rdi
je 0x457bd3
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 0x457b79
mov r11, qword [rdx + 0x38]
xor eax, eax
mov ecx, dword [rbp + 0x78]
test r11, r11
je 0x457bfc
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 0x457b85
mov ebx, dword [rsi + 0x90]
test ebx, ebx
je 0x458131
or dword [rsi + 0x28], 4
movabs rax, 0x100000001
test qword [rsi + 0x28], rax
jne 0x457c3b
mov qword [rsi + 0x30], 0
mov rsi, qword [rsi + 0x18]
test rsi, rsi
jne 0x457b40
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 0x457c83
and r13d, 1
jne 0x4582d1
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 0x4582ea
mov rdx, qword [rsp + 0x238]
mov rcx, r15
call fcn.0043a040
test eax, eax
je 0x458271
mov rbp, qword [r15 + 0x88]
test rbp, rbp
je 0x457dc0
lea rbx, str..ctf
jmp 0x457cfd
mov rbp, qword [rbp + 0x18]
test rbp, rbp
je 0x457dc0
test byte [rbp + 0x28], 4
mov r13, qword [rbp + 0xe8]
je 0x457d40
cmp qword [r13 + 0x58], 0
je 0x457d25
lea rdx, [r13 + 0x58]
mov rcx, r15
call fcn.004488c0
test eax, eax
je 0x458271
cmp qword [r13 + 0x70], 0
je 0x457d40
lea rdx, [r13 + 0x70]
mov rcx, r15
call fcn.004488c0
test eax, eax
je 0x458271
cmp qword [r13 + 0x18], 0xffffffffffffffff
mov dword [rbp + 0xe0], 0
mov dword [r13 + 0x60], 0
mov dword [r13 + 0x78], 0
jne 0x457cf0
mov rax, qword [rbp]
mov ecx, 4
mov rdi, rbx
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
jne 0x457d88
movzx eax, byte [rax + 4]
test al, al
je 0x457cf0
cmp al, 0x2e
je 0x457cf0
test byte [rbp + 0x2b], 8
je 0x458d23
cmp qword [r13 + 0x48], 0
jne 0x458d23
mov rcx, qword [r13 + 0x20]
call fcn.0041fc20
test rax, rax
je 0x458271
mov rbp, qword [rbp + 0x18]
mov qword [r13 + 0x48], rax
test rbp, rbp
jne 0x457cfd
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.0041fc20
test rax, rax
mov qword [rdi + 0xb8], rax
je 0x458271
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 0x45834d
test r14b, r14b
jne 0x45834d
test r12, r12
jne 0x458a7d
cmp qword [rsp + 0x70], 0
jne 0x4584c8
cmp qword [rsp + 0x60], 0
je 0x457ed5
mov rax, qword [rsp + 0x60]
lea rcx, [rax + rax*2]
shl rcx, 3
call fcn.0041fc20
test rax, rax
mov qword [rsp + 0x198], rax
je 0x458271
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x320]
movzx ecx, byte [rax + 5]
imul rcx, rbx
call fcn.0041fc20
test rax, rax
mov qword [rsp + 0x1a0], rax
je 0x458271
mov rcx, rbx
shl rcx, 5
call fcn.0041fc20
test rax, rax
mov qword [rsp + 0x1b0], rax
je 0x458271
lea rcx, [rbx*4]
call fcn.0041fc20
test rax, rax
mov qword [rsp + 0x1b8], rax
je 0x458271
lea rcx, [rbx*8]
call fcn.0041fc20
test rax, rax
mov qword [rsp + 0x1c0], rax
je 0x458271
cmp qword [rsp + 0x98], 0
jne 0x458c71
mov rax, qword [rsp + 0x50]
mov rsi, qword [rax + 0x170]
xor eax, eax
test rsi, rsi
jne 0x457fb9
jmp 0x45857a
test byte [rsi + 0x29], 1
jne 0x457fd7
mov rdx, qword [rsi + 0x118]
mov ecx, eax
test rdx, rdx
je 0x457fa0
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 0x458537
test byte [rsi + 0x29], 4
je 0x458537
mov rbx, qword [rsi + 0x40]
mov rdx, rsi
mov rcx, r15
call fcn.0041a380
test rbx, rbx
je 0x457f80
mov ecx, eax
jmp 0x457fa0
mov eax, dword [r14 + 0x28]
jmp 0x457a30
test byte [rsi + 0x2d], 4
je 0x458000
add dword [rbp + 0x78], edx
jmp 0x457b79
add dword [rbp + 0x60], edx
jmp 0x457b79
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 0x457b79
test byte [rax + 0x40], 0x40
jne 0x457b79
mov rcx, qword [rax + 0xf8]
test byte [rcx + 0xc85], 0x40
je 0x4581b1
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 0x4580a3
cmp qword [rcx + 0x2e0], 0
cmovne r10, rax
mov eax, dword [rbp + 4]
cmp eax, 9
je 0x458150
cmp eax, 4
je 0x458150
test r14b, r14b
je 0x45813a
mov rax, qword [rsp + 0x48]
xor r8d, r8d
mov edx, dword [rdi + 0x90]
mov rax, qword [rax + 0x208]
test rax, rax
je 0x458111
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 0x458166
test edx, edx
je 0x457b79
add edx, r8d
mov eax, dword [rbx + 8]
jmp 0x457b9a
and dword [rsi + 0x28], 0xfffffffb
jmp 0x457c23
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x200]
test rax, rax
jne 0x458296
nop
and r11d, 4
mov rcx, qword [rdi + 0xe8]
je 0x457b79
xor r8d, r8d
xor edx, edx
mov rax, qword [rcx + 0x58]
test rax, rax
je 0x4584b4
mov r11, qword [rcx + 0x70]
mov rax, qword [rax + 0x20]
test r11, r11
je 0x458184
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 0x45811e
mov eax, dword [rcx + 0x8c]
jmp 0x45808b
mov qword [r15 + 0x90], rdx
jmp 0x457a59
mov qword [r15 + 0x88], rax
jmp 0x457a4c
cmp dword [rsi + 8], 1
mov rdi, r12
lea r13, [rsp + 0x160]
jne 0x458279
mov rax, qword [rdi + 8]
cmp dword [rax + 8], 5
jne 0x458279
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 0x458279
cmp dl, 1
je 0x45a6fc
jb 0x45a6f0
cmp dl, 2
jne 0x45a6d8
lea rsi, str.ELFCLASS64
cmp al, 1
je 0x45a6cc
jb 0x45a720
cmp al, 2
jne 0x45a708
lea rbx, str.ELFCLASS64
mov ecx, 3
call fcn.0041a6d0
lea rcx, str._pB:_file_class__s_incompatible_with__s
mov r9, rsi
mov r8, rbx
mov rdx, rdi
call fcn.0041a530
lea r13, [rsp + 0x160]
lea rcx, [r15 + 0x88]
mov rdx, r13
call fcn.00448a50
jmp 0x45787d
or dword [rcx + 0x40], 0x40
jmp 0x4578bd
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 0x458111
mov rcx, qword [rsp + 0x50]
lea rdx, [0x00448b00]
mov r8, r15
call fcn.004763c0
jmp 0x457c83
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_riscv32_esp_elf_src_binutils_bfd_elflink.c
mov edx, 0x2fa5
call fcn.0041a650
jmp 0x457cb9
mov rdx, qword [rsp + 0x238]
mov rcx, r15
call fcn.00478890
jmp 0x457b03
mov rdi, qword [rsp + 0x78]
lea rdx, str..hash
mov rcx, rdi
call fcn.00422200
lea rdx, str..gnu.version
mov rcx, rdi
mov qword [rsp + 0x178], rax
call fcn.00422200
mov qword [rsp + 0x180], rax
jmp 0x45794e
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.00439040
mov r9, qword [0x004d84c0]
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.004481c0
cmp eax, 1
jne 0x458279
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 0x457e95
mov esi, 1
mov rbp, qword [rsp + 0x238]
jmp 0x458456
mov rax, qword [r15 + 0xf8]
add esi, 1
cmp dword [rax + 0x2f4], esi
jbe 0x457e95
mov edx, esi
mov rcx, r15
call fcn.00438920
test rax, rax
mov r9, rax
je 0x458440
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 0x458494
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.004481c0
cmp eax, 1
je 0x458440
jmp 0x458279
mov r11, qword [rcx + 0x70]
xor eax, eax
test r11, r11
jne 0x458180
jmp 0x458195
mov rcx, qword [rsp + 0x70]
call fcn.0041fc20
test rax, rax
mov qword [rsp + 0x190], rax
jne 0x457eaa
jmp 0x458271
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 0x457c83
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 0x45856b
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 0x45861c
mov rax, qword [r13 + 0x110]
test rax, rax
je 0x45860f
xor r8d, r8d
xor r10d, r10d
xor edx, edx
xor r9d, r9d
jmp 0x4585c1
add rdx, 1
test rdx, rdx
je 0x4585b5
test r9, r9
jne 0x458750
mov rax, qword [rax]
test rax, rax
je 0x45879a
cmp dword [rax + 8], 1
jne 0x4585a3
mov rcx, qword [rax + 0x20]
test byte [rcx + 0x2a], 0x10
jne 0x4585e7
mov r11, qword [rcx + 0xf8]
mov r11, qword [r11 + 8]
cmp dword [r11 + 8], 5
je 0x45885b
add rdx, 1
mov r10, rcx
jmp 0x4585a7
lea r9, [0x00446780]
mov r8d, 8
xor edx, edx
mov rcx, rdi
call sub.msvcrt.dll_qsort
mov rcx, rdi
call fcn.0049fd58
mov r13, qword [r13 + 0x18]
test r13, r13
jne 0x45858a
mov rcx, qword [rsp + 0x238]
call fcn.00462400
test eax, eax
je 0x45787d
mov rax, qword [rsp + 0x238]
mov rax, qword [rax + 0x60]
test rax, rax
je 0x458652
and byte [rax + 0x45], 0xfb
mov rax, qword [rax + 0xf0]
test rax, rax
jne 0x458642
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 0x458c06
mov byte [rsp + 0xc0], r14b
mov r12, rdi
mov r14, rbx
mov rdi, qword [r14 + 0x110]
test rdi, rdi
je 0x458bf0
mov rsi, rdi
mov rbp, qword [rsp + 0x238]
jmp 0x4586e1
sub eax, 3
cmp eax, 1
jbe 0x458885
mov r9, rsi
mov r8, r14
mov rdx, rbp
mov rcx, r15
call fcn.00477e40
test eax, eax
je 0x4581d4
mov rsi, qword [rsi]
test rsi, rsi
je 0x458bf0
mov eax, dword [rsi + 8]
cmp eax, 1
jne 0x4586b0
mov rax, qword [rsi + 0x20]
mov r12, qword [rax + 0xf8]
mov rax, qword [r12 + 8]
cmp dword [rax + 8], 5
jne 0x4586bc
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 0x4586bc
test byte [r12 + 0x45], 4
jne 0x4586d5
mov rcx, qword [rsp + 0xb8]
mov rdx, r12
mov r13, rcx
call fcn.00455fe0
test eax, eax
je 0x458279
or byte [r12 + 0x45], 4
jmp 0x4586d5
test r10, r10
je 0x4589d1
test r8, r8
je 0x4589d1
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.0041a530
mov ecx, 0x11
xor ebx, ebx
call fcn.0041a6d0
jmp 0x45787f
test r9, r9
je 0x45860f
lea rcx, [r9*8]
call fcn.0041fc20
test rax, rax
mov rdi, rax
je 0x45787d
mov rax, qword [r13 + 0x110]
test rax, rax
je 0x4585f0
xor esi, esi
nop
add rsi, 1
mov qword [rdi + rsi*8 - 8], rax
mov rax, qword [rax]
test rax, rax
jne 0x4587d0
lea r9, [0x00446780]
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.0041a380
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 0x458800
jmp 0x458607
mov r11, qword [rcx + 0xe8]
test r11, r11
je 0x4585e7
cmp qword [r11 + 0x90], 0
je 0x4585e7
add r9, 1
mov r8, rcx
jmp 0x4585a7
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.0047acc0
test rax, rax
mov r13, rax
je 0x458cf4
cmp qword [rbx + 0x58], 0
mov rax, qword [rsi + 0x20]
mov rdi, qword [rax + 0x10]
je 0x458aa0
add rbx, 0x58
mov ecx, dword [rbx + 8]
cmp dword [rsi + 8], 3
mov rdx, qword [rbx + 0x10]
lea r11, [rdx + rcx*8]
jne 0x4589e5
mov rax, qword [rax + 8]
mov eax, dword [rax + 0xe0]
test eax, eax
mov dword [rsp + 0x60], eax
je 0x458bd0
mov qword [r11], 0
test byte [r13 + 7], 4
je 0x458912
test rdi, rdi
jne 0x458acb
movzx eax, byte [rbp]
mov rdx, qword [rsi + 0x10]
and eax, 3
cmp al, 2
je 0x458925
add rdx, qword [r14 + 0x30]
mov rax, qword [rsp + 0x98]
mov r9, qword [rax + 0x320]
movzx ecx, byte [r9 + 9]
test ecx, ecx
je 0x458970
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 0x458954
cmp byte [r9 + 0xa], 0x20
je 0x458a62
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 0x458a41
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 0x4586d5
lea rcx, str._pA_has_both_ordered_and_unordered_sections
mov rdx, r13
call fcn.0041a530
jmp 0x458789
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.00475d50
test rax, rax
je 0x458cc6
movzx ecx, byte [rax + 0x18]
mov r11, qword [rsp + 0x60]
lea edx, [rcx - 3]
cmp dl, 1
jbe 0x458ca0
mov dword [rax + 0x38], 0xfffffffe
mov dword [rsp + 0x60], 0
mov qword [r11], rax
jmp 0x458902
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 0x4589c8
movzx eax, byte [r13]
mov edx, dword [rsp + 0x60]
shl edx, 8
add eax, edx
mov qword [rsp + 0x118], rax
jmp 0x458993
mov rcx, r12
call fcn.0041fc20
test rax, rax
mov qword [rsp + 0x188], rax
jne 0x457e9e
jmp 0x458271
cmp qword [rbx + 0x70], 0
je 0x458ab0
add rbx, 0x70
jmp 0x4588d0
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_riscv32_esp_elf_src_binutils_bfd_elflink.c
mov edx, 0x2cfc
call fcn.0041a650
mov rax, qword [0x10]
ud2
mov rcx, r13
call fcn.0047a190
mov eax, eax
mov rcx, rax
mov qword [rsp + 0xa8], rax
call fcn.0041fd10
test rax, rax
mov qword [rsp + 0x70], rax
jne 0x458afe
cmp qword [rsp + 0xa8], 0
jne 0x458271
mov r9, qword [rsp + 0x70]
mov r8, rdi
mov rdx, r15
mov rcx, r13
call fcn.0047a970
cmp eax, 2
je 0x458b61
cmp eax, 3
jne 0x458d0b
cmp dword [rsi + 8], 3
mov rax, qword [rsi + 0x20]
je 0x458d3b
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.0041a380
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.004227e0
mov rcx, qword [rsp + 0x70]
mov dword [rsp + 0xa8], eax
call fcn.0049fd58
mov eax, dword [rsp + 0xa8]
test eax, eax
jne 0x458912
jmp 0x458271
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_riscv32_esp_elf_src_binutils_bfd_elflink.c
mov edx, 0x2d04
mov qword [rsp + 0x70], r11
call fcn.0041a650
mov r11, qword [rsp + 0x70]
jmp 0x4588fb
mov r14, qword [r14 + 0x18]
test r14, r14
jne 0x458692
movzx r14d, byte [rsp + 0xc0]
mov rax, qword [rsp + 0x238]
cmp byte [rax + 4], 0
js 0x458d47
mov rax, qword [rsp + 0x238]
mov rbx, qword [rax + 0x60]
test rbx, rbx
jne 0x458c40
jmp 0x458d47
mov rbx, qword [rbx + 0xf0]
test rbx, rbx
je 0x458d47
mov rax, qword [rbx + 8]
cmp dword [rax + 8], 5
jne 0x458c30
mov rax, qword [rbx + 0xf8]
mov rcx, qword [rax + 0x358]
call fcn.0049fd58
mov rax, qword [rbx + 0xf8]
mov qword [rax + 0x358], 0
jmp 0x458c30
mov rcx, qword [rsp + 0x98]
shl rcx, 2
call fcn.0041fc20
test rax, rax
mov qword [rsp + 0x1a8], rax
jne 0x457f67
jmp 0x458271
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 0x458902
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 0x458902
mov ecx, 0x11
lea r13, [rsp + 0x160]
call fcn.0041a6d0
jmp 0x458279
lea r8, str.elf_reloc_link_order
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_riscv32_esp_elf_src_binutils_bfd_elflink.c
mov edx, 0x2d46
call fcn.0041a670
lea r8, str.bfd_elf_final_link
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_riscv32_esp_elf_src_binutils_bfd_elflink.c
mov edx, 0x2fc9
call fcn.0041a670
mov rax, qword [rax + 8]
mov r8, qword [rax]
jmp 0x458b31
mov rax, qword [rsp + 0x238]
lea rbp, [rsp + 0xd0]
lea r13, [rsp + 0x160]
lea rdx, [0x0044a4d0]
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.0041f690
mov ebx, dword [rsp + 0xd0]
test ebx, ebx
jne 0x45787d
mov rax, qword [rsp + 0x48]
mov r10, qword [rax + 0x1a8]
test r10, r10
je 0x458de2
mov rax, qword [rsp + 0x238]
mov eax, dword [rax]
mov dword [rsp + 0x60], eax
and eax, 0x18000
cmp eax, 0x18000
jne 0x45a72c
test r14b, r14b
jne 0x45a72c
mov r11d, dword [rsp + 0x80]
mov eax, dword [r15 + 0xb0]
mov rcx, qword [rsp + 0x88]
test r11d, r11d
mov dword [rcx + 0x8c], eax
je 0x458f5a
mov rcx, qword [rsp + 0x50]
mov rax, qword [rcx + 0x208]
test rax, rax
je 0x458f5a
mov r9, qword [0x004d84c0]
mov rdx, qword [rax + 0x70]
add r9, 0x250
cmp rdx, r9
je 0x458f5a
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 0x4591a5
mov r10d, dword [rcx + 0x54]
test r10d, r10d
jne 0x4591a5
mov rax, qword [rsp + 0x50]
mov rsi, qword [rax + 0x160]
lea rax, [rsp + 0x110]
mov qword [rsp + 0x60], rax
test rsi, rsi
je 0x458f5a
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.00438920
test rax, rax
mov rdi, rax
je 0x458f24
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 0x45a751
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 0x458e9c
mov rax, qword [rsp + 0x238]
lea rdx, [0x0044a4d0]
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.0041f690
mov ebx, dword [rsp + 0xd0]
test ebx, ebx
jne 0x45787d
mov rax, qword [rsp + 0x48]
mov r10, qword [rax + 0x1b0]
test r10, r10
je 0x458fda
mov rax, qword [rsp + 0x238]
mov eax, dword [rax]
mov dword [rsp + 0x60], eax
and eax, 0x18000
cmp eax, 0x18000
jne 0x459365
test r14b, r14b
jne 0x459365
mov rcx, qword [rsp + 0x170]
call fcn.0045e290
mov rax, qword [rsp + 0x160]
mov rsi, qword [rax + 0x28]
mov rax, qword [rsi + 0xa8]
test rax, rax
je 0x4592ee
mov rdx, qword [rsp + 0x168]
mov rcx, qword [rdx + 0xf8]
mov r9d, dword [rcx + 0xc70]
test r9d, r9d
jne 0x45903e
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_riscv32_esp_elf_src_binutils_bfd_elflink.c
mov edx, 0x25d9
call fcn.0041a650
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.0041fc20
test rax, rax
mov r12, rax
je 0x45787d
cmp qword [rsp + 0x1c8], 0
je 0x45909c
mov rax, qword [rsp + 0x168]
mov ecx, dword [rax + 0xb0]
shl rcx, 2
call fcn.0041fd10
test rax, rax
mov qword [rsp + 0x1c8], rax
je 0x459288
mov rdx, qword [rsi + 0xa8]
xor r14d, r14d
mov qword [rsp + 0x60], 0
test rdx, rdx
je 0x45911e
mov rdi, r14
add rdi, qword [rsi + 0xb8]
mov eax, dword [rdi + 0x10]
cmp eax, 0xffffffff
jne 0x459295
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 0x4590b4
mov rax, qword [rsp + 0x160]
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 0x78]
test rax, rax
je 0x459144
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.0041c6a0
test eax, eax
je 0x4592ac
mov rcx, r12
call fcn.0049fd58
mov rcx, qword [rsi + 0xb8]
call fcn.0049fd58
mov qword [rsi + 0xb8], 0
jmp 0x45787f
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 0x458e7a
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 0x459272
mov edi, dword [rax + 0x88]
test edi, edi
jg 0x459224
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_riscv32_esp_elf_src_binutils_bfd_elflink.c
mov edx, 0x3122
call fcn.0041a650
mov dword [rsp + 0x128], edi
sub edi, 0xff00
cmp edi, 0xfffeffff
jbe 0x45934c
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 0x4591f8
mov ebx, dword [rsp + 0x60]
jmp 0x458e7a
mov rcx, r12
call fcn.0049fd58
jmp 0x45787f
mov rcx, qword [rsp + 0x170]
mov edx, eax
call fcn.0045e090
mov dword [rdi + 0x10], eax
jmp 0x4590d1
mov r8, qword [rsp + 0x168]
mov rdx, rbp
mov rcx, r12
call fcn.0041c500
cmp rbp, rax
jne 0x459181
add qword [rdi + 0x80], rbp
mov rcx, r12
call fcn.0049fd58
mov rcx, qword [rsi + 0xb8]
call fcn.0049fd58
mov qword [rsi + 0xb8], 0
mov r8d, dword [r15 + 0xb0]
test r8d, r8d
jne 0x4597cc
mov rax, qword [rsp + 0x238]
mov rdi, qword [rax + 0x58]
test rdi, rdi
je 0x4595af
mov rax, qword [r15 + 8]
mov edx, 1
mov rcx, rdi
mov rbp, qword [rax + 0x370]
call fcn.0041ef30
test eax, eax
jne 0x45938a
mov rax, qword [rsp + 0x238]
lea rcx, str._pB:_failed_to_generate_import_library
mov rdx, qword [rax + 0x58]
call fcn.0041a530
jmp 0x45787f
mov rcx, r15
call fcn.00448180
test eax, eax
jne 0x45923d
mov ebx, dword [rsp + 0x60]
jmp 0x45787f
lea r9, [fcn.004481c0]
mov r8, r13
mov rdx, qword [rsp + 0x238]
mov rcx, r15
call r10
test eax, eax
jne 0x458fda
jmp 0x45787d
xor edx, edx
mov rcx, rdi
mov esi, dword [r15 + 0x40]
call fcn.0041b3e0
test eax, eax
je 0x45932f
and esi, 0xfffffffc
mov rcx, rdi
mov edx, esi
call fcn.0041a600
test eax, eax
je 0x45932f
mov rcx, r15
call fcn.0041a260
mov rcx, r15
mov esi, eax
call fcn.0041a270
mov r9, qword [rdi + 8]
mov r8d, eax
mov edx, esi
mov rcx, rdi
call qword [r9 + 0x290]
test eax, eax
jne 0x4593fb
test byte [r15 + 0x44], 0x40
jne 0x45932f
mov rcx, r15
call fcn.0041a260
mov rcx, rdi
mov esi, eax
call fcn.0041a260
cmp esi, eax
jne 0x45932f
mov rax, qword [r15 + 8]
mov rcx, r15
call qword [rax + 0x1f0]
test eax, eax
js 0x45932f
movsxd rcx, eax
call fcn.0041fc20
test rax, rax
mov rsi, rax
je 0x45932f
mov rax, qword [r15 + 8]
mov rdx, rsi
mov rcx, r15
call qword [rax + 0x1f8]
test eax, eax
mov dword [rsp + 0x60], eax
js 0x459494
mov rax, qword [rdi + 8]
mov rdx, rdi
mov rcx, r15
call qword [rax + 0x160]
test eax, eax
je 0x459494
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 0x45a787
call rax
mov ebp, eax
test ebp, ebp
jne 0x4594a1
mov ecx, 7
call fcn.0041a6d0
lea rcx, str._pB:_no_symbol_found_for_import_library
mov rdx, rdi
call fcn.0041a530
mov rcx, rsi
call fcn.0049fd58
jmp 0x45932f
movsxd rax, ebp
mov rcx, rdi
lea rdx, [rax + rax*2]
shl rdx, 5
call fcn.00421210
test rax, rax
je 0x459494
test ebp, ebp
jle 0x45956f
mov r9, qword [0x004d84c0]
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 0x4594da
mov r8d, ebp
mov rdx, rsi
mov rcx, rdi
call fcn.00422e20
mov rax, qword [rdi + 8]
mov rdx, rdi
mov rcx, r15
call qword [rax + 0x138]
test eax, eax
je 0x459494
mov rcx, rdi
call fcn.00421030
mov rcx, rsi
mov edi, eax
call fcn.0049fd58
test edi, edi
je 0x45932f
mov rbx, qword [r15 + 0x88]
mov rbp, qword [rsp + 0x238]
test rbx, rbx
je 0x45965a
test byte [rbx + 0x28], 4
mov rsi, qword [rbx + 0xe8]
je 0x45964d
mov rax, qword [rsp + 0x48]
mov edi, 1
mov rax, qword [rax + 0x210]
test rax, rax
je 0x4595f7
xor edi, edi
mov rcx, rbx
call rax
test eax, eax
setne dil
cmp qword [rsi + 0x58], 0
je 0x45961d
lea r8, [rsi + 0x58]
mov qword [rsp + 0x20], rbp
mov r9d, edi
mov rdx, rbx
mov rcx, r15
call fcn.004a2ab0
test eax, eax
je 0x45787d
cmp qword [rsi + 0x70], 0
je 0x459643
lea r8, [rsi + 0x70]
mov qword [rsp + 0x20], rbp
mov r9d, edi
mov rdx, rbx
mov rcx, r15
call fcn.004a2ab0
test eax, eax
je 0x45787d
mov dword [rbx + 0x90], 0
mov rbx, qword [rbx + 0x18]
test rbx, rbx
jne 0x4595c7
mov edx, dword [rsp + 0x80]
test edx, edx
je 0x459bb1
mov rax, qword [rsp + 0x238]
test byte [rax + 5], 2
je 0x4597c2
cmp qword [rsp + 0x78], 0
je 0x4597c2
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.0041a380
lea rdx, str..rela.dyn
mov rcx, r15
mov dword [rsp + 0x88], eax
call fcn.00422140
lea rdx, str..rel.dyn
mov rbx, rax
mov rcx, r15
call fcn.00422140
test rbx, rbx
mov r11, rax
je 0x4599e3
mov rax, qword [rbx + 0x40]
test rax, rax
mov qword [rsp + 0x60], rax
je 0x4599d7
test r11, r11
je 0x4599d7
mov r12, qword [r11 + 0x40]
test r12, r12
je 0x45a521
mov r14, qword [rbx + 0x110]
test r14, r14
je 0x45a4f3
mov r8, qword [rdi + 0x320]
mov esi, 1
mov rdi, r14
xor ecx, ecx
cmp dword [rdi + 8], 1
je 0x459939
mov rdi, qword [rdi]
test rdi, rdi
jne 0x459736
mov rbp, qword [r11 + 0x110]
test rbp, rbp
mov rdi, rbp
je 0x459769
cmp dword [rdi + 8], 1
je 0x45998a
mov rdi, qword [rdi]
test rdi, rdi
jne 0x459757
xor ecx, 1
or esi, ecx
and esi, 1
je 0x459a0f
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 0x4597c2
xor eax, eax
cmp dword [r14 + 8], 1
jne 0x4597af
mov rdx, qword [r14 + 0x20]
add rax, qword [rdx + 0x40]
mov r14, qword [r14]
test r14, r14
jne 0x4597a0
cmp rax, qword [rsp + 0x60]
je 0x459f5a
xor ebx, ebx
xor r12d, r12d
jmp 0x459a5f
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 0x4597fd
mov ecx, dword [rbp]
test ecx, ecx
jne 0x4598c0
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.0045e070
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.00439040
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.0041c6a0
test eax, eax
jne 0x45787d
mov rdx, qword [rsp + 0x170]
mov rcx, r15
call fcn.0045e1a0
test eax, eax
jne 0x4592fe
jmp 0x45787d
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.00439040
mov rdx, qword [rbp + 0x18]
xor r8d, r8d
mov rcx, r15
mov rsi, rax
call fcn.0041c6a0
test eax, eax
jne 0x45787d
mov rcx, qword [rsp + 0x1c8]
mov r8, r15
mov rdx, rdi
call fcn.0041c500
cmp rdi, rax
jne 0x45787d
mov rdi, qword [r15 + 0xf8]
jmp 0x4597fd
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 0x459d5e
div r10
test rdx, rdx
je 0x459740
xor esi, 1
test esi, ecx
jne 0x459a41
mov ecx, 1
mov esi, 1
jmp 0x459740
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 0x459f3c
div r10
test rdx, rdx
je 0x459761
xor esi, 1
test esi, ecx
jne 0x459a41
mov ecx, 1
mov esi, 1
jmp 0x459761
cmp qword [rsp + 0x60], 0
jne 0x45a521
test r11, r11
je 0x4597c2
mov r12, qword [r11 + 0x40]
test r12, r12
je 0x4597c2
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 0x459799
lea rcx, str._pB:_unable_to_sort_relocs___they_are_in_more_than_one_size
mov rdx, r15
call fcn.0041a530
xor ebx, ebx
mov ecx, 5
xor r12d, r12d
call fcn.0041a6d0
mov rcx, qword [rsp + 0x78]
lea rdx, [0x004b71d2]
call fcn.00422200
test rax, rax
mov rsi, rax
jne 0x459a89
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_riscv32_esp_elf_src_binutils_bfd_elflink.c
mov edx, 0x31c6
call fcn.0041a650
mov r14, qword [rsi + 0xb8]
mov rax, r14
add rax, qword [rsi + 0x40]
cmp r14, rax
mov qword [rsp + 0x70], rax
jae 0x459bb1
lea rcx, [rsp + 0x110]
mov rbp, qword [rsp + 0x48]
mov qword [rsp + 0x60], rcx
mov rcx, qword [0x004d84c0]
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 0x459eaf
cmp rax, 0x20
je 0x459ea6
jbe 0x459e41
cmp rax, 0x6ffffff0
je 0x459e35
ja 0x459e18
cmp rax, 0x21
je 0x459dd9
cmp rax, 0x6ffffef5
lea rdi, str..gnu.hash
jne 0x459dc3
mov rcx, qword [rsp + 0x78]
mov rdx, rdi
call fcn.00422200
mov rsi, rax
test rsi, rsi
je 0x459da5
mov rdx, qword [rsi + 0x70]
cmp rdx, qword [rsp + 0x80]
je 0x459da5
mov rax, qword [rdx + 0xe8]
cmp dword [rax + 4], 7
je 0x459d78
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 0x459ad4
cmp qword [rsp + 0x78], 0
je 0x459c2c
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x238]
mov rcx, r15
call qword [rax + 0x140]
test eax, eax
je 0x458279
mov rax, qword [rsp + 0x238]
test byte [rax + 4], 0x18
jne 0x45a425
mov rax, qword [rsp + 0x78]
mov r12, qword [rax + 0x88]
test r12, r12
je 0x459c2c
mov rax, qword [0x004d84c0]
mov r14, qword [rsp + 0x50]
lea rbp, str..dynstr
lea rbx, [rax + 0x250]
mov edx, dword [r12 + 0x28]
test dh, 1
jne 0x45a335
mov r12, qword [r12 + 0x18]
test r12, r12
jne 0x459c14
mov rax, qword [rsp + 0x238]
test byte [rax + 1], 0x20
jne 0x459c92
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 0x459c6c
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_riscv32_esp_elf_src_binutils_bfd_elflink.c
mov edx, 0x32da
call fcn.0041a650
lea r8, [rsp + 0x110]
lea rdx, [0x00434290]
mov rcx, r15
call fcn.004226d0
mov eax, dword [rsp + 0x110]
test eax, eax
jne 0x458279
mov rax, qword [rsp + 0x50]
cmp qword [rax + 0x130], 0
je 0x459cbd
mov rdx, qword [rsp + 0x50]
mov rcx, r15
add rdx, 0x100
call fcn.0047c470
test eax, eax
je 0x458279
mov rdx, qword [rsp + 0x238]
mov rcx, r15
call fcn.00462520
test eax, eax
je 0x458279
mov rax, qword [rsp + 0x238]
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 0x80]
test rax, rax
je 0x459cef
call rax
lea rcx, [r15 + 0x88]
mov rdx, r13
mov ebx, 1
call fcn.00448a50
mov r14, qword [rsp + 0x58]
test r14, r14
je 0x45787f
mov rdi, qword [rsp + 0xa0]
mov rcx, rdi
call fcn.0041fc20
test rax, rax
mov rsi, rax
je 0x45787d
mov r8, rdi
mov rdx, rax
mov rcx, r15
call fcn.0045ceb0
mov rcx, r15
mov qword [rsp + 0x20], rdi
xor r9d, r9d
mov r8, rsi
mov rdx, r14
call fcn.004227e0
mov rcx, rsi
call fcn.0049fd58
jmp 0x45787f
div r10
test rdx, rdx
jne 0x459d96
and esi, ecx
jne 0x459a41
mov ecx, 1
jmp 0x459740
lea rcx, str.warning:_section__s_is_being_made_into_a_note
mov rdx, rdi
call fcn.0041a530
mov ecx, 0xf
call fcn.0041a6d0
jmp 0x458279
mov rdx, r15
lea rcx, str._pB:_unable_to_sort_relocs___they_are_of_an_unknown_size
jmp 0x459a4b
lea rcx, str.could_not_find_section__s
mov rdx, rdi
call fcn.0041a530
jmp 0x458279
cmp rax, 8
jbe 0x45a60c
mov rax, qword [rbp + 0x320]
movzx edx, byte [rax + 6]
add rdx, r14
mov r14, rdx
jmp 0x459ba6
lea rdi, str..preinit_array
mov rdx, rdi
mov rcx, r15
call fcn.00422140
test rax, rax
mov rsi, rax
je 0x459da5
mov rax, qword [rax + 0x40]
test rax, rax
jne 0x459b79
lea rcx, str.warning:__s_section_has_zero_size
mov rdx, rdi
call fcn.0041a530
mov rax, qword [rsi + 0x40]
jmp 0x459b79
cmp rax, 0x6ffffffc
je 0x459e61
cmp rax, 0x6ffffffe
lea rdi, str..gnu.version_r
je 0x459b35
jmp 0x459dc3
lea rdi, str..gnu.version
jmp 0x459b35
cmp rax, 0x1a
je 0x459e9d
jbe 0x459e79
cmp rax, 0x1b
je 0x459e6d
cmp rax, 0x1c
lea rdi, str..fini_array
je 0x459de0
jmp 0x459dc3
lea rdi, str..gnu.version_d
jmp 0x459b35
lea rdi, str..init_array
jmp 0x459de0
cmp rax, 0x19
lea rdi, str..init_array
jne 0x459dc3
mov rdx, rdi
mov rcx, r15
call fcn.00422140
mov rsi, rax
jmp 0x459b45
lea rdi, str..fini_array
jmp 0x459e8a
lea rdi, str..preinit_array
jmp 0x459e8a
cmp rax, 0x11
jae 0x45a60c
cmp rax, 6
je 0x45a600
ja 0x45a56a
cmp rax, 4
je 0x45a55e
ja 0x45a77b
test rax, rax
jne 0x459dc3
mov rax, qword [rbp + 0x320]
movzx edx, byte [rax + 6]
add rdx, r14
test r12, r12
je 0x459dd1
cmp qword [rsp + 0x70], rdx
jbe 0x459dd1
mov rcx, qword [rbx + 0xe8]
mov ecx, dword [rcx + 4]
cmp ecx, 4
je 0x45a76a
cmp ecx, 9
jne 0x459dd1
mov qword [rsp + 0x110], 0x6ffffffa
mov qword [rsp + 0x118], r12
xor r12d, r12d
jmp 0x459b88
div r10
test rdx, rdx
jne 0x459d96
and esi, ecx
jne 0x459a41
mov ecx, 1
jmp 0x459761
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 0x4597c2
imul rcx, rax
call fcn.0041fd10
test rax, rax
mov r10, rax
je 0x45a0dc
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 0x45a010
mov r11, r13
mov r13, rbp
mov rbp, rbx
cmp dword [r9 + 8], 1
je 0x45a26d
mov r9, qword [r9]
test r9, r9
jne 0x459ff4
mov rbx, rbp
mov rbp, r13
mov r13, r11
mov r8, qword [rsp + 0x60]
lea r9, [0x00447d00]
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 0x45a11c
add r12, 1
add rcx, qword [rsp + 0x60]
cmp rbp, r12
jne 0x45a03d
mov r8, qword [rsp + 0x60]
mov rdx, rbp
lea r9, [0x0044a150]
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 0x45a09e
cmp rbx, qword [rdx + 0x70]
je 0x45a15c
mov rbp, qword [rbx + 0x110]
mov eax, dword [rsp + 0x88]
mov r14, r10
test rbp, rbp
mov qword [rsp + 0x80], rax
je 0x45a0cf
cmp dword [rbp + 8], 1
je 0x45a1c0
mov rbp, qword [rbp]
test rbp, rbp
jne 0x45a0bc
mov rcx, r10
call fcn.0049fd58
jmp 0x459a5f
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 0x459a5f
cmp rbp, r12
mov r9, r12
mov r8, rcx
mov rax, rcx
jbe 0x45a055
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 0x45a12e
jmp 0x45a055
lea rax, [rbp + rbp*4]
lea rcx, [r10 + rax*8]
xor eax, eax
cmp dword [rcx - 0x20], 4
jne 0x45a234
add rax, 1
sub rcx, 0x28
cmp rbp, rax
jne 0x45a167
imul rax, qword [rsp + 0x70]
cmp qword [rdx + 0x40], rax
jne 0x45a09e
mov rax, qword [rbx + 0x110]
lea r8, [rbx + 0x110]
test rax, rax
je 0x45a257
cmp dword [rax + 8], 1
je 0x45a242
mov r8, rax
mov rcx, qword [rax]
mov rax, r14
mov r14, rax
mov rax, rcx
jmp 0x45a19c
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 0x45a0c6
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 0x45a1fc
jmp 0x45a0c6
test rax, rax
je 0x45a09e
jmp 0x45a17e
cmp rdx, qword [rax + 0x20]
jne 0x45a1af
mov rcx, qword [rax]
mov qword [r8], rcx
jmp 0x45a1b8
mov qword [r8], r14
mov qword [r14], 0
mov qword [rbx + 0x118], r14
jmp 0x45a09e
mov r12, qword [r9 + 0x20]
mov rsi, qword [r12 + 0xb8]
test rsi, rsi
je 0x45a3ca
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 0x459fff
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 0x45a2b3
jmp 0x459fff
cmp qword [r12 + 0x40], 0
je 0x459c22
mov rax, qword [r12 + 0x70]
cmp rax, rbx
je 0x459c22
and edx, 0x100000
je 0x459c22
cmp qword [r14 + 0x130], r12
je 0x459c22
cmp qword [r14 + 0x138], r12
je 0x459c22
mov rsi, qword [r12]
mov ecx, 8
mov rdi, rbp
repe cmpsb byte [rsi], byte [rdi]
je 0x45a3eb
mov rsi, qword [r12 + 0x68]
mov rdx, r12
mov rcx, r15
call fcn.0041a380
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.004227e0
test eax, eax
jne 0x459c22
jmp 0x458279
cmp qword [r12 + 0x40], 0
je 0x459fff
mov rcx, r10
mov r13, r11
xor ebx, ebx
call fcn.0049fd58
xor r12d, r12d
jmp 0x459a5f
mov rax, qword [rax + 0xe8]
xor r8d, r8d
mov rcx, r15
mov rdx, qword [rax + 0x18]
call fcn.0041c6a0
test eax, eax
jne 0x458279
mov rdx, qword [r14 + 0xa0]
mov rcx, r15
call fcn.0045e1a0
test eax, eax
jne 0x459c22
jmp 0x458279
mov rcx, qword [rsp + 0x78]
lea rdx, [0x004b71d2]
call fcn.00422200
test rax, rax
je 0x459be9
mov rbx, qword [rax + 0xb8]
mov rsi, rbx
add rsi, qword [rax + 0x40]
cmp rbx, rsi
jae 0x459be9
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 0x45a4a7
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x320]
movzx edx, byte [rax + 6]
add rbx, rdx
cmp rsi, rbx
ja 0x45a46f
jmp 0x459be9
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 0x45a54b
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 0x45a53c
lea rcx, str._P:_warning:_creating_DT_TEXTREL_in_a_PIE_n
call qword [rax + 0x58]
jmp 0x459be9
mov rbp, qword [r11 + 0x110]
mov rax, qword [rsp + 0x80]
test rbp, rbp
mov rdi, rbp
mov r8, qword [rax + 0x320]
je 0x459777
xor ecx, ecx
mov esi, 1
jmp 0x459757
mov rax, qword [rsp + 0x80]
mov r14, qword [rbx + 0x110]
mov r8, qword [rax + 0x320]
jmp 0x459777
lea rcx, str._P:_warning:_creating_DT_TEXTREL_in_a_shared_object_n
call qword [rax + 0x58]
jmp 0x459be9
mov rax, qword [rax + 0x20]
lea rcx, str._P_X:_read_only_segment_has_dynamic_relocations_n
call qword [rax + 0x58]
jmp 0x459be9
lea rdi, str..hash
jmp 0x459b35
cmp rax, 0xc
je 0x45a793
jbe 0x459db9
cmp rax, 0xd
jne 0x459dc3
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.00475b00
test rax, rax
je 0x459dc3
movzx ecx, byte [rax + 0x18]
lea edx, [rcx - 3]
cmp dl, 1
ja 0x459dc3
mov rdx, qword [rax + 0x30]
mov qword [rsp + 0x118], rdx
mov rsi, qword [rax + 0x28]
mov rcx, qword [rsi + 0x70]
test rcx, rcx
je 0x45a690
mov rax, rdx
add rax, qword [rsi + 0x68]
add rax, qword [rcx + 0x30]
mov qword [rsp + 0x118], rax
mov rax, qword [rbp + 0x320]
jmp 0x459b88
lea rdi, str..dynsym
jmp 0x459b35
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 0x45a6c5
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 0x45a6a8
add r9, 8
cmp r10, r9
jne 0x45a64a
cmp byte [rbp + 0x3cc], 0
js 0x45a7bb
cmp rax, 0x12
je 0x45a7a7
cmp rax, 8
je 0x45a7a7
mov qword [rsp + 0x118], rdi
mov rax, qword [rbp + 0x320]
jmp 0x459b88
mov qword [rsp + 0x118], 0
mov rax, qword [rbp + 0x320]
jmp 0x459b88
test byte [rcx + 8], 2
je 0x45a652
add r8, qword [rcx + 0x20]
test rdi, rdi
mov rcx, qword [rcx + 0x10]
je 0x45a6c0
cmp rcx, rdi
jae 0x45a652
mov rdi, rcx
jmp 0x45a652
xor edi, edi
xor r8d, r8d
jmp 0x45a65b
lea rbx, str.ELFCLASS32
jmp 0x458252
lea r8, str.bfd_elf_final_link
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_riscv32_esp_elf_src_binutils_bfd_elflink.c
mov edx, 0x30ba
call fcn.0041a670
lea rsi, str.ELFCLASSNONE
jmp 0x458235
lea rsi, str.ELFCLASS32
jmp 0x458235
lea r8, str.bfd_elf_final_link
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_riscv32_esp_elf_src_binutils_bfd_elflink.c
mov edx, 0x30c2
call fcn.0041a670
lea rbx, str.ELFCLASSNONE
jmp 0x458252
lea r9, [fcn.004481c0]
mov r8, r13
mov rdx, qword [rsp + 0x238]
mov rcx, r15
call r10
test eax, eax
jne 0x458de2
jmp 0x45787d
mov rcx, r15
call fcn.00448180
test eax, eax
je 0x45787f
mov rcx, qword [rdi + 0x70]
jmp 0x458f10
mov qword [rsp + 0x110], 0x6ffffff9
jmp 0x459f2c
lea rdi, str..dynstr
jmp 0x459b35
call fcn.00438f70
mov ebp, eax
jmp 0x459477
mov rax, qword [rsp + 0x238]
mov rdx, qword [rax + 0x88]
jmp 0x45a593
mov qword [rsp + 0x118], r8
mov rax, qword [rbp + 0x320]
jmp 0x459b88
mov rcx, qword [rsp + 0x50]
cmp qword [rcx + 0x1c0], 0
je 0x45a668
mov rdx, rsi
mov rcx, r15
mov qword [rsp + 0x88], r8
call fcn.0041a380
mov rcx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x88]
mov rdx, qword [rcx + 0x1c0]
mov rcx, qword [rdx + 0x40]
sub r8, rcx
jne 0x45a80d
mov rax, qword [rsp + 0x110]
xor edi, edi
jmp 0x45a668
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 0x45a827
add rdi, rcx
mov rax, qword [rsp + 0x110]
jmp 0x45a668