Function at 0x467530
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, 0x2e8
xor eax, eax
lea rdi, [rsp + 0x160]
mov qword [rsp + 0x330], rcx
test rdx, rdx
mov ecx, 7
mov r15, rdx
mov qword [rsp + 0x340], r8
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x348], r9
mov qword [rsp + 0xf8], 0
rep stosq qword [rdi], rax
je 0x4676c0
cmp rdx, qword [rdx + 0x70]
je 0x4676c0
mov rbp, qword [rdx + 0xe8]
cmp rbp, 0xffffffffffffff18
je 0x4676c0
mov eax, dword [rbp + 0xe8]
mov ebx, 1
test eax, eax
je 0x4676a4
xor r14d, r14d
test byte [rdx + 0x2a], 0x10
je 0x4676e0
mov rax, qword [rsp + 0x330]
mov rbx, qword [r15 + 0x40]
movzx eax, byte [rax + 0x44]
mov byte [rsp + 0x40], al
and eax, 0x18
cmp al, 0x10
je 0x4675ee
mov rax, qword [r15 + 0x48]
test rax, rax
cmovne rbx, rax
mov rcx, qword [rsp + 0x330]
mov rdx, r15
call fcn.0043f500
xor edx, edx
mov ecx, eax
mov rax, rbx
div rcx
mov rcx, qword [rsp + 0x330]
mov rdx, r15
mov rbx, rax
mov rax, qword [rsp + 0x340]
movzx eax, byte [rax + 3]
mov r8d, eax
mov byte [rsp + 0x40], al
shr r8b, 5
and r8d, 1
call fcn.00461cb0
test rax, rax
mov qword [rsp + 0x58], rax
sete dl
test rbx, rbx
setne al
test dl, al
je 0x467720
mov rax, qword [rsp + 0xf8]
xor ebx, ebx
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x50]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x48]
call fcn.0045c7a0
mov rax, qword [r15 + 0xe8]
mov rdi, qword [rsp + 0x58]
cmp rdi, qword [rax + 0x48]
je 0x467693
mov rcx, rdi
call sub.msvcrt.dll_free
mov rax, qword [r15 + 0xe8]
cmp r14, qword [rax + 0x98]
je 0x4676a4
mov rcx, r14
call sub.msvcrt.dll_free
mov eax, ebx
add rsp, 0x2e8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elf32_xtensa.c
mov edx, 0x2263
call fcn.0043f7d0
mov eax, dword [pe_dos_header]
ud2
mov r14, qword [rbp + 0x98]
test r14, r14
jne 0x4675c8
mov rax, qword [rsp + 0x340]
mov rcx, qword [rsp + 0x330]
movzx eax, byte [rax + 3]
mov r8d, eax
mov byte [rsp + 0x40], al
shr r8b, 5
and r8d, 1
call fcn.0045e830
mov r14, rax
jmp 0x4675c8
mov rax, qword [rbp + 0xf8]
movsxd rdx, dword [rbp + 0x100]
lea r9, [0x0045e270]
mov r8d, 0x48
mov rcx, rax
mov qword [rsp + 0x80], rax
call sub.msvcrt.dll_qsort
mov edx, dword [r15 + 0x90]
lea r9, [0x00461c30]
mov r8d, 0x18
mov rcx, r14
call sub.msvcrt.dll_qsort
mov eax, dword [r15 + 0x28]
and eax, 0x2001
cmp eax, 1
je 0x468205
mov qword [rsp + 0xf8], 0
mov dword [rsp + 0x78], 0
mov eax, dword [rbp + 0x100]
test eax, eax
jle 0x467e98
mov rax, qword [rsp + 0x80]
mov rsi, qword [0x00557240]
mov r12d, 1
mov dword [rsp + 0x7c], 0
mov qword [rsp + 0x50], 0
mov edi, 0xffffffff
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x338], r15
lea rbx, [rax + 8]
lea rax, [rsp + 0x100]
add rsi, 0x128
mov qword [rsp + 0x98], rsi
mov qword [rsp + 0x90], rax
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x88], rax
lea rax, [rsp + 0x240]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0x2c8]
mov qword [rsp + 0xa0], rax
jmp 0x467842
mov r15d, r12d
mov rax, qword [rsp + 0x40]
add rbx, 0x48
add r12d, 1
cmp dword [rax + 0x100], r15d
jle 0x467e90
call fcn.0045c960
cmp eax, dword [rbx + 0x30]
lea ebp, [r12 - 1]
lea r13, [rbx - 8]
jne 0x467825
test r14, r14
mov r15, qword [rbx + 0x20]
je 0x467bd0
mov rax, qword [rsp + 0x338]
mov rcx, qword [rsp + 0x68]
mov r9d, 0x18
mov rdx, r14
mov qword [rsp + 0x240], r15
mov r8d, dword [rax + 0x90]
lea rax, [0x0045c430]
mov qword [rsp + 0x20], rax
call sub.msvcrt.dll_bsearch
test rax, rax
je 0x467bd0
sub rax, r14
movabs rdx, 0xaaaaaaaaaaaaaaab
sar rax, 3
imul rax, rdx
test eax, eax
je 0x468240
lea ecx, [rax - 1]
mov rdx, rcx
lea rcx, [rcx + rcx*2]
cmp r15, qword [r14 + rcx*8]
je 0x4678e5
jmp 0x468247
lea eax, [rdx - 1]
mov rcx, rax
lea rax, [rax + rax*2]
cmp r15, qword [r14 + rax*8]
jne 0x4678e9
mov edx, ecx
test edx, edx
jne 0x4678d3
mov rax, qword [rsp + 0x338]
mov ecx, dword [rax + 0x90]
cmp ecx, edx
jbe 0x467bd0
mov eax, edx
lea rax, [rax + rax*2]
lea rsi, [r14 + rax*8]
cmp byte [rsi + 8], 0
je 0x467914
cmp qword [rsi], r15
je 0x46794c
lea r8d, [rdx + 1]
sub ecx, 1
sub ecx, edx
lea rdx, [rcx + r8]
lea rax, [r8 + r8*2]
lea rdx, [rdx + rdx*2]
lea rax, [r14 + rax*8]
lea rdx, [r14 + rdx*8]
cmp rax, rdx
je 0x467bd0
mov rsi, rax
add rax, 0x18
cmp byte [rsi + 8], 0
je 0x467931
cmp qword [rsi], r15
jne 0x467931
movzx eax, byte [rsi + 8]
cmp rax, 1
je 0x467960
cmp rax, 6
jne 0x467825
test ebp, ebp
je 0x467977
cmp edi, 0xffffffff
je 0x467977
mov rax, qword [rbx + 0x20]
cmp qword [rbx - 0x28], rax
je 0x467825
mov eax, dword [rsp + 0x7c]
mov byte [rsp + 0x70], 0
test eax, eax
je 0x46799f
mov rax, qword [rsp + 0x50]
add rax, 4
cmp rax, qword [rbx + 0x20]
sete byte [rsp + 0x70]
movzx eax, byte [rsp + 0x70]
mov dword [rsp + 0x7c], eax
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x40]
mov edi, dword [rax + 0x100]
mov eax, dword [rbx + 0x38]
test eax, eax
je 0x467bef
mov r15d, dword [rsp + 0x78]
test r15d, r15d
jne 0x467f43
cmp edi, r12d
mov r15d, r12d
jle 0x467acf
movsxd rax, r12d
mov rcx, qword [rsp + 0x80]
lea rax, [rax + rax*8]
shl rax, 3
lea r11, [rcx + rax]
mov r9, qword [r11 + 0x28]
cmp r9, qword [rbx + 0x20]
jne 0x467acf
mov rcx, qword [rsp + 0x80]
sub edi, 2
mov qword [rsp + 0xa8], rsi
sub edi, ebp
mov qword [rsp + 0xc8], r13
mov qword [rsp + 0xb8], rbx
mov dword [rsp + 0xc0], r12d
mov r15, r11
mov dword [rsp + 0xb0], ebp
lea rdx, [rcx + rax + 0x70]
lea rax, [rdi + rdi*8]
mov r13, rcx
lea rax, [r11 + rax*8]
mov rsi, rdx
mov r10, rax
mov rax, rbx
mov rbx, r9
sub rax, rcx
mov rdi, rax
add rdi, 0x88
mov rax, rdi
mov rdi, r10
sub rax, r11
mov qword [rsp + 0x60], rax
jmp 0x467a89
mov rax, qword [rsp + 0x60]
add rsi, 0x48
cmp qword [rsi - 0x48], rbx
lea r8, [r15 + rax]
lea r15, [r13 + r8]
jne 0x467ab0
mov r11d, dword [r15 + 0x40]
test r11d, r11d
jne 0x467aab
mov rbp, qword [r15]
mov rcx, rbp
call fcn.0045e550
test eax, eax
jne 0x467aab
test byte [rbp + 0x29], 0x20
je 0x4682c5
cmp r15, rdi
jne 0x467a71
mov rsi, qword [rsp + 0xa8]
mov r15d, dword [rsp + 0xc0]
mov ebp, dword [rsp + 0xb0]
mov rbx, qword [rsp + 0xb8]
mov rax, qword [rsp + 0x338]
mov rax, qword [rax + 0x70]
cmp qword [rsp + 0x338], rax
je 0x467eaf
mov rax, qword [rsp + 0x338]
mov rdi, qword [rax + 0xe8]
cmp rdi, 0xffffffffffffff18
je 0x467eaf
mov r10d, dword [rsp + 0x78]
test r10d, r10d
jne 0x467fb9
lea rdx, [rdi + 0x110]
lea rcx, [rdi + 0x108]
xor r9d, r9d
mov r8, rbx
call fcn.00460e00
lea rax, [rdi + 0x128]
mov dword [rsp + 0x28], 4
mov r9, qword [rsp + 0x338]
mov r8d, 7
mov rcx, rax
mov qword [rsp + 0x60], rax
lea rax, [rdi + 0x130]
mov rdx, rax
mov qword [rsp + 0x70], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call fcn.00460f20
mov rax, qword [rsp + 0x338]
cmp dword [rax + 0x78], 2
ja 0x4682f4
test rsi, rsi
je 0x467bbc
mov rax, qword [rsp + 0x340]
mov rax, qword [rax + 0x28]
mov r9d, dword [rax + 0x4c]
test r9d, r9d
jne 0x4681d4
mov rax, qword [rsp + 0x338]
mov qword [rsi + 8], 0
mov rax, qword [rax + 0xe8]
mov qword [rax + 0x98], r14
mov rax, qword [rbx + 0x20]
mov edi, ebp
mov qword [rsp + 0x50], rax
jmp 0x467828
xor esi, esi
jmp 0x467960
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x40]
mov edi, dword [rax + 0x100]
mov rax, qword [rsp + 0x338]
mov rax, qword [rax + 0x70]
cmp qword [rsp + 0x338], rax
je 0x467eaf
mov rax, qword [rsp + 0x338]
cmp qword [rax + 0xe8], 0xffffffffffffff18
je 0x467eaf
mov r8, qword [rax + 0x40]
mov rax, qword [rsp + 0x330]
movzx eax, byte [rax + 0x44]
mov byte [rsp + 0x60], al
and eax, 0x18
cmp al, 0x10
je 0x467c50
mov rax, qword [rsp + 0x338]
mov rax, qword [rax + 0x48]
test rax, rax
cmovne r8, rax
mov rdx, qword [rsp + 0x338]
mov rcx, qword [rsp + 0x330]
mov qword [rsp + 0x60], r8
mov r15d, dword [rbx + 0x3c]
call fcn.0043f500
mov r8, qword [rsp + 0x60]
mov ecx, eax
xor edx, edx
mov rax, r8
div rcx
mov rcx, qword [rsp + 0x340]
movzx ecx, byte [rcx]
mov edx, ecx
mov byte [rsp + 0x60], cl
xor ecx, ecx
and edx, 3
cmp dl, 2
je 0x467cae
mov rcx, qword [rsp + 0x340]
mov rdx, qword [rcx + 0x28]
mov r8d, dword [rdx + 0x4c]
test r8d, r8d
sete cl
movzx ecx, cl
mov rdx, qword [rsp + 0x330]
mov r9, qword [rsp + 0x58]
mov dword [rsp + 0x60], ecx
mov rcx, qword [rsp + 0x90]
mov r8, rsi
mov qword [rsp + 0x20], rax
mov qword [rsp + 0xa8], rax
call fcn.0045ff80
xor edx, edx
test rsi, rsi
mov rax, qword [rsp + 0xa8]
je 0x468299
mov rax, qword [rsp + 0x100]
mov r9d, dword [rsp + 0x60]
sub edi, ebp
mov r8, qword [rsp + 0x88]
mov dword [rsp + 0x1d0], edx
mov dword [rsp + 0x1d4], r15d
mov dword [rsp + 0xb0], edi
mov qword [rsp + 0x1a0], rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x1a8], rax
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x1b0], rax
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0x1b8], rax
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x1c0], rax
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0x348]
lea rdx, [rax + 8]
mov rcx, rax
call fcn.0045ea80
test rax, rax
mov r15, rax
je 0x467ebe
mov rdx, qword [rax + 0x48]
mov rcx, qword [rax + 0x38]
shr rdx, 8
call fcn.0045e850
mov rdi, qword [rsp + 0x338]
mov rdi, qword [rdi + 0x70]
cmp qword [rax + 0x70], rdi
je 0x468303
mov rax, qword [rsp + 0x340]
movzx eax, byte [rax]
mov byte [rsp + 0xa8], al
and eax, 3
cmp al, 2
je 0x46824e
mov rax, qword [rsp + 0x348]
mov eax, dword [rax + 0x14]
test eax, eax
je 0x467df5
cmp byte [rsp + 0x70], 0
je 0x468463
mov rax, qword [rsp + 0x348]
mov rdi, qword [rsp + 0x348]
test r15, r15
mov dword [rax + 0x14], 1
mov rax, qword [rbx]
mov qword [rdi + 0x18], rax
mov rax, qword [rbx + 8]
mov qword [rdi + 0x20], rax
mov rax, qword [rbx + 0x10]
mov qword [rdi + 0x28], rax
mov rax, qword [rbx + 0x18]
mov qword [rdi + 0x30], rax
mov rax, qword [rbx + 0x20]
mov qword [rdi + 0x38], rax
mov rax, qword [rbx + 0x28]
mov qword [rdi + 0x40], rax
je 0x467f21
mov rax, qword [rbx]
mov qword [r15 + 0x38], rax
mov rax, qword [rbx + 8]
mov qword [r15 + 0x40], rax
mov rax, qword [rbx + 0x10]
mov qword [r15 + 0x48], rax
mov rax, qword [rbx + 0x18]
mov qword [r15 + 0x50], rax
mov rax, qword [rbx + 0x20]
mov qword [r15 + 0x58], rax
mov rax, qword [rbx + 0x28]
mov qword [r15 + 0x60], rax
mov dword [rsp + 0x7c], 1
mov rax, qword [rbx + 0x20]
mov r15d, r12d
mov edi, ebp
mov qword [rsp + 0x50], rax
jmp 0x467828
mov r15, qword [rsp + 0x338]
mov rax, qword [rsp + 0xf8]
mov ebx, 1
mov qword [rsp + 0x50], rax
jmp 0x46765e
mov r15, qword [rsp + 0x338]
xor ebx, ebx
jmp 0x46765e
mov rax, qword [rsp + 0x340]
movzx eax, byte [rax]
mov byte [rsp + 0xa8], al
and eax, 3
cmp al, 2
jne 0x467ddb
mov rax, qword [rsp + 0x348]
mov rdi, qword [rsp + 0x348]
mov dword [rax + 0x14], 1
mov rax, qword [rbx]
mov qword [rdi + 0x18], rax
mov rax, qword [rbx + 8]
mov qword [rdi + 0x20], rax
mov rax, qword [rbx + 0x10]
mov qword [rdi + 0x28], rax
mov rax, qword [rbx + 0x18]
mov qword [rdi + 0x30], rax
mov rax, qword [rbx + 0x20]
mov qword [rdi + 0x38], rax
mov rax, qword [rbx + 0x28]
mov qword [rdi + 0x40], rax
mov r9d, dword [rsp + 0x60]
mov rdx, qword [rsp + 0x88]
mov r8, rbx
mov rcx, qword [rsp + 0x348]
call fcn.0045ec60
jmp 0x467e73
mov rcx, qword [rsp + 0x338]
mov rax, qword [rbx + 0x20]
mov r9d, 0x18
movsxd r8, dword [rsp + 0x78]
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0x248], 1
mov dword [rsp + 0x250], 0
add rax, qword [rcx + 0x30]
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0x240], rax
lea rax, [0x0045c1a0]
mov qword [rsp + 0x20], rax
call sub.msvcrt.dll_bsearch
test rax, rax
je 0x467fa7
test byte [rax + 0x11], 1
jne 0x467bd7
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x50], rax
jmp 0x4679d0
mov rcx, qword [rsp + 0x338]
mov rax, qword [rbx + 0x20]
mov r9d, 0x18
movsxd r11, dword [rsp + 0x78]
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0x248], 1
mov dword [rsp + 0x250], 0
add rax, qword [rcx + 0x30]
mov rcx, qword [rsp + 0x68]
mov r8, r11
mov qword [rsp + 0xb0], r11
mov qword [rsp + 0x240], rax
lea rax, [0x0045c1a0]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0xa8], rax
call sub.msvcrt.dll_bsearch
lea rdx, [rdi + 0x110]
lea rcx, [rdi + 0x108]
xor r9d, r9d
mov r8, rbx
mov r13, rax
call fcn.00460e00
lea rax, [rdi + 0x128]
mov dword [rsp + 0x28], 4
mov r9, qword [rsp + 0x338]
mov r8d, 7
mov rcx, rax
mov qword [rsp + 0x60], rax
lea rax, [rdi + 0x130]
mov rdx, rax
mov qword [rsp + 0x70], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
call fcn.00460f20
mov rax, qword [rsp + 0x338]
cmp dword [rax + 0x78], 2
jbe 0x467b80
test r13, r13
mov r11, qword [rsp + 0xb0]
je 0x468f17
mov rax, qword [r13 + 8]
add rax, qword [r13]
mov r13, rax
mov rax, qword [rsp + 0x338]
sub r13, qword [rax + 0x30]
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x68]
mov r9d, 0x18
mov rdx, qword [rsp + 0x50]
mov r8, r11
mov qword [rsp + 0x240], r13
mov qword [rsp + 0x248], 1
mov dword [rsp + 0x250], 0
mov qword [rsp + 0x20], rax
call sub.msvcrt.dll_bsearch
mov rcx, rax
call fcn.004659b0
mov r8d, eax
mov rax, qword [rsp + 0x338]
cmp qword [rax + 0x40], r13
je 0x46818a
mov rcx, qword [rdi + 0x130]
mov rdx, qword [rsp + 0x68]
mov dword [rsp + 0x50], r8d
mov qword [rsp + 0x250], r13
mov dword [rsp + 0x240], 6
call fcn.004d2220
test rax, rax
mov r8d, dword [rsp + 0x50]
je 0x468182
mov rdi, qword [rax + 8]
mov rax, qword [rsp + 0x338]
mov r9, r13
mov dword [rsp + 0x28], r8d
mov dword [rsp + 0x20], 0xfffffffc
lea rdx, [rax + 0x40]
lea r8, [rax + 0x78]
mov rcx, rdi
call fcn.0045e380
test rdi, rdi
je 0x4681a9
add dword [rdi + 0x20], eax
jmp 0x467b80
mov rax, qword [rsp + 0x338]
mov dword [rsp + 0x28], r8d
lea rdx, [rax + 0x40]
lea r8, [rax + 0x78]
mov dword [rsp + 0x20], 0xfffffffc
mov r9, r13
xor ecx, ecx
call fcn.0045e380
mov r9, qword [rsp + 0x338]
mov rdx, qword [rsp + 0x70]
mov r8d, 6
mov rcx, qword [rsp + 0x60]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], r13
call fcn.00460f20
jmp 0x467b80
mov rax, qword [rsp + 0x330]
mov rcx, qword [rsp + 0x340]
lea r9, [rsi + 8]
lea rdx, [rax + 0xf8]
mov rax, qword [rsp + 0x338]
lea r8, [rax + 0x28]
call fcn.00460b10
jmp 0x467b9e
mov rcx, qword [rsp + 0x330]
lea r9, str..xt.prop
lea r8, [rsp + 0xf8]
mov dword [rsp + 0x20], 0
mov rdx, r15
call fcn.00462b90
test eax, eax
mov dword [rsp + 0x78], eax
js 0x46764f
jmp 0x46778d
xor edx, edx
jmp 0x4678e9
mov edx, eax
jmp 0x4678e9
mov rax, qword [rsp + 0x348]
mov rdi, qword [rsp + 0x348]
mov dword [rax + 0x14], 1
mov rax, qword [rbx]
mov qword [rdi + 0x18], rax
mov rax, qword [rbx + 8]
mov qword [rdi + 0x20], rax
mov rax, qword [rbx + 0x10]
mov qword [rdi + 0x28], rax
mov rax, qword [rbx + 0x18]
mov qword [rdi + 0x30], rax
mov rax, qword [rbx + 0x20]
mov qword [rdi + 0x38], rax
mov rax, qword [rbx + 0x28]
mov qword [rdi + 0x40], rax
jmp 0x467e44
mov rdx, qword [rbx + 0x20]
cmp rdx, rax
jae 0x4686a5
mov rax, qword [rsp + 0x58]
lea rcx, [rax + rdx]
mov rax, qword [rsp + 0x330]
mov rax, qword [rax + 8]
call qword [rax + 0x38]
mov edx, eax
jmp 0x467cf2
mov rax, qword [rsp + 0x40]
mov rsi, qword [rsp + 0xa8]
mov r13, qword [rsp + 0xc8]
mov ebp, dword [rsp + 0xb0]
mov rbx, qword [rsp + 0xb8]
mov edi, dword [rax + 0x100]
jmp 0x467bef
mov rax, qword [rbx + 0x20]
xor ecx, ecx
lea r13, [rax + 4]
jmp 0x468100
lea rdi, [r15 + 0x38]
mov edx, dword [rsp + 0xb0]
mov rcx, r13
mov r8, rdi
call fcn.00460040
test eax, eax
je 0x467dbe
mov rax, qword [rsp + 0x338]
mov rax, qword [rax + 0x70]
cmp qword [rsp + 0x338], rax
je 0x467dbe
mov rax, qword [rsp + 0x338]
mov rsi, qword [rax + 0xe8]
cmp rsi, 0xffffffffffffff18
je 0x467dbe
mov ecx, dword [rsp + 0x78]
test ecx, ecx
jne 0x468e0b
lea rdx, [rsi + 0x110]
lea rcx, [rsi + 0x108]
mov r9, rdi
mov r8, rbx
lea r15, [rsi + 0x128]
lea r13, [rsi + 0x130]
call fcn.00460e00
mov dword [rsp + 0x28], 4
mov rax, qword [rbx + 0x20]
mov r8d, 7
mov r9, qword [rsp + 0x338]
mov rdx, r13
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.00460f20
mov rax, qword [rsp + 0x338]
cmp dword [rax + 0x78], 2
jbe 0x467e7b
mov edx, dword [rsp + 0x78]
mov rax, qword [rbx + 0x20]
xor r8d, r8d
test edx, edx
lea rdi, [rax + 4]
jne 0x468d94
mov rax, qword [rsp + 0x338]
cmp qword [rax + 0x40], rdi
je 0x468d4e
mov rcx, qword [rsi + 0x130]
mov rdx, qword [rsp + 0x68]
mov dword [rsp + 0x50], r8d
mov qword [rsp + 0x250], rdi
mov dword [rsp + 0x240], 6
call fcn.004d2220
test rax, rax
mov r8d, dword [rsp + 0x50]
je 0x468d46
mov rsi, qword [rax + 8]
mov rax, qword [rsp + 0x338]
mov r9, rdi
mov dword [rsp + 0x28], r8d
mov dword [rsp + 0x20], 0xfffffffc
lea rdx, [rax + 0x40]
lea r8, [rax + 0x78]
mov rcx, rsi
call fcn.0045e380
test rsi, rsi
je 0x468d6d
add dword [rsi + 0x20], eax
jmp 0x467e7b
mov rax, qword [rsp + 0x348]
mov rax, qword [rax + 0x28]
mov qword [rsp + 0x70], rax
mov rdx, rax
mov rax, qword [rsp + 0x348]
shr rdx, 8
mov rcx, qword [rax + 0x18]
call fcn.0045e850
test rax, rax
je 0x467df5
mov rdi, qword [rsp + 0x338]
mov rdi, qword [rdi + 0x70]
cmp qword [rax + 0x70], rdi
jne 0x467df5
mov rax, qword [rsp + 0x348]
lea rdi, [rsp + 0x130]
mov ecx, 0xc
mov edx, dword [rsp + 0xb0]
lea rsi, [rax + 0x18]
lea rax, [rsp + 0x130]
rep movsd dword [rdi], dword [rsi]
mov r8, rax
mov rcx, r13
mov qword [rsp + 0xc8], rax
add qword [rsp + 0x158], 4
call fcn.00460040
test eax, eax
je 0x467df5
mov eax, dword [0x00516cf4]
test eax, eax
mov dword [rsp + 0xb0], eax
jne 0x467df5
mov rax, qword [rsp + 0x338]
mov rax, qword [rax + 0x70]
cmp qword [rsp + 0x338], rax
je 0x467df5
mov rax, qword [rsp + 0x338]
mov rax, qword [rax + 0xe8]
cmp rax, 0xffffffffffffff18
mov qword [rsp + 0xd0], rax
je 0x467df5
mov rdx, qword [rsp + 0x140]
mov rcx, qword [rsp + 0x130]
shr rdx, 8
call fcn.0045e850
test rax, rax
mov r13, rax
je 0x468f90
cmp rax, qword [rax + 0x70]
je 0x468f82
mov rax, qword [rax + 0xe8]
add rax, 0xe8
mov qword [rsp + 0x70], rax
cmp r13, qword [rsp + 0x98]
je 0x467df5
mov rax, qword [rsp + 0x338]
mov rax, qword [rax + 0x30]
add rax, qword [rbx + 0x20]
cmp dword [rsp + 0x78], 0
jne 0x468ff5
mov qword [rsp + 0x240], 0
mov qword [rsp + 0xc0], 0
cmp r13, qword [rsp + 0x160]
je 0x4687a0
mov rdi, qword [r13 + 0xf8]
mov rsi, qword [r13 + 0x40]
movzx eax, byte [rdi + 0x44]
and eax, 0x18
cmp al, 0x10
je 0x4685fc
mov rax, qword [r13 + 0x48]
test rax, rax
cmovne rsi, rax
mov rdx, r13
mov rcx, rdi
call fcn.0043f500
mov ecx, eax
mov rax, rsi
mov rsi, qword [rsp + 0x340]
xor edx, edx
div rcx
movzx esi, byte [rsi + 3]
mov rdx, r13
mov rcx, rdi
mov r8d, esi
mov byte [rsp + 0xa8], sil
shr r8b, 5
mov qword [rsp + 0xb8], rax
and r8d, 1
call fcn.00461cb0
test rax, rax
mov rsi, rax
mov qword [rsp + 0xa8], rax
jne 0x4686bf
cmp qword [rsp + 0xb8], 0
je 0x4686bf
mov rax, qword [r13 + 0xe8]
mov rdi, qword [rsp + 0xa8]
cmp rdi, qword [rax + 0x48]
je 0x468682
mov rcx, rdi
call sub.msvcrt.dll_free
mov rax, qword [r13 + 0xe8]
cmp qword [rax + 0x98], rsi
je 0x468693
mov rcx, rsi
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x240]
call sub.msvcrt.dll_free
jmp 0x467df5
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elf32_xtensa.c
mov edx, 0x238e
call fcn.0043f7d0
mov rdx, qword [rbx + 0x20]
jmp 0x4682a6
mov rax, qword [rsp + 0x340]
xor esi, esi
movzx eax, byte [rax + 3]
mov r8d, eax
mov byte [rsp + 0xd8], al
shr r8b, 5
and r8d, 1
test byte [r13 + 0x2a], 0x10
jne 0x468707
mov rax, qword [r13 + 0xe8]
mov rsi, qword [rax + 0x98]
test rsi, rsi
jne 0x468707
mov rdx, r13
mov rcx, rdi
call fcn.0045e830
mov rsi, rax
mov eax, dword [r13 + 0x28]
and eax, 0x2001
sub eax, 1
je 0x469053
mov qword [rsp + 0x240], 0
xor edx, edx
mov rdi, qword [rsp + 0x48]
mov dword [rsp + 0xd8], edx
mov rcx, rdi
call fcn.0045c7a0
xor eax, eax
mov ecx, 0xe
mov edx, dword [rsp + 0xd8]
rep stosd dword [rdi], eax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x160], r13
mov qword [rsp + 0x188], rsi
mov dword [rsp + 0x180], edx
mov qword [rsp + 0x168], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x170], rax
mov eax, dword [r13 + 0x90]
mov dword [rsp + 0x190], eax
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x178], rax
movsxd r8, dword [rsp + 0x180]
mov rax, qword [rsp + 0x150]
add rax, qword [r13 + 0x30]
mov rdx, qword [rsp + 0x178]
test r8d, r8d
je 0x467df5
mov rdi, qword [rsp + 0x68]
mov qword [rsp + 0x240], rax
lea rax, [0x0045c1a0]
mov r9d, 0x18
mov qword [rsp + 0x248], 1
mov dword [rsp + 0x250], 0
mov qword [rsp + 0x20], rax
mov qword [rsp + 0xa8], rax
mov rcx, rdi
call sub.msvcrt.dll_bsearch
test rax, rax
mov qword [rsp + 0xb8], rax
je 0x467df5
mov r8, qword [rsp + 0x160]
xor eax, eax
mov ecx, 0x26
mov r10, rdi
mov qword [rsp + 0x68], rdi
mov edx, dword [rsp + 0x190]
rep stosd dword [rdi], eax
mov qword [rsp + 0x240], r8
mov r8, qword [rsp + 0x168]
mov esi, 0xfffffffc
mov ecx, dword [rsp + 0x180]
mov rax, qword [rsp + 0x170]
mov rdi, r10
mov dword [rsp + 0x28], 1
mov r9, qword [rsp + 0x150]
mov qword [rsp + 0x248], r8
mov r8, qword [rsp + 0x178]
mov dword [rsp + 0x260], ecx
mov dword [rsp + 0x290], ecx
mov ecx, dword [r13 + 0x78]
mov qword [rsp + 0x250], rax
sub rax, 1
mov qword [rsp + 0x258], r8
mov qword [rsp + 0x288], rax
mov eax, 1
mov r8, qword [rsp + 0x188]
mov dword [rsp + 0x270], edx
shl eax, cl
mov dword [rsp + 0x294], edx
mov rcx, r10
sub esi, eax
xor edx, edx
mov qword [rsp + 0x268], r8
mov dword [rsp + 0x20], esi
mov r8d, 6
call fcn.00461000
mov rax, qword [rsp + 0xa0]
mov rcx, qword [r13 + 0xf8]
mov rdx, r13
mov r9, qword [rsp + 0x188]
mov r8, qword [rsp + 0x168]
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x30], rax
lea rax, [rdi + 0x7c]
mov qword [rsp + 0x28], rax
call fcn.00462fe0
test eax, eax
je 0x467df5
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x140]
mov rcx, qword [rsp + 0x130]
lea rdi, [rax + 0x40]
shr rdx, 8
mov qword [rsp + 0xd8], rdi
lea rdi, [rax + 0x48]
mov qword [rsp + 0xe0], rdi
call fcn.0045e850
mov ecx, 0x60
mov rdi, qword [rsp + 0x150]
mov rsi, qword [rsp + 0x158]
mov qword [rsp + 0xe8], rax
call fcn.00444160
mov rdx, qword [rsp + 0xe8]
mov r9, rax
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rsi
mov dword [rax], 8
lea rdi, [rax + 0x28]
mov rsi, qword [rsp + 0x88]
mov ecx, 0xe
mov qword [rsp + 0xe8], r9
mov qword [rax + 8], rdx
mov rdx, r9
rep movsd dword [rdi], dword [rsi]
mov dword [rax + 0x20], 0xfffffffc
mov rax, qword [rsp + 0x70]
mov rcx, qword [rax + 0x48]
call fcn.004d2220
test rax, rax
mov r9, qword [rsp + 0xe8]
je 0x468a09
lea rcx, str._builds_idf_crosstool_NG_.build_HOST_x86_64_w64_mingw32_xtensa_esp32s3_elf_src_binutils_bfd_elf32_xtensa.c
mov edx, 0x160a
call fcn.0043f7d0
mov r9, qword [rsp + 0xe8]
mov rdi, qword [rsp + 0x70]
mov r8, r9
mov rdx, r9
mov rcx, qword [rdi + 0x48]
call fcn.004d2070
add dword [rdi + 0x40], 1
mov rax, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0xc0]
cmp rax, rdi
setne byte [rsp + 0xb8]
cmp dword [r13 + 0x78], 2
movzx edi, byte [rsp + 0xb8]
jbe 0x468af8
test dil, dil
je 0x468af8
movsxd r8, dword [rsp + 0x180]
mov rsi, qword [rax + 8]
add rsi, qword [rax]
mov rdx, qword [rsp + 0x178]
sub rsi, qword [r13 + 0x30]
test r8d, r8d
jne 0x468f24
cmp rsi, qword [r13 + 0x40]
je 0x468c76
mov rax, qword [rsp + 0x70]
lea rdx, [rsp + 0x1e0]
mov dword [rsp + 0xe8], r8d
mov qword [rsp + 0x1f0], rsi
mov dword [rsp + 0x1e0], 6
mov rcx, qword [rax + 0x48]
call fcn.004d2220
test rax, rax
mov r8d, dword [rsp + 0xe8]
je 0x468c76
mov rdi, qword [rax + 8]
lea rdx, [r13 + 0x40]
mov dword [rsp + 0x28], r8d
lea r8, [r13 + 0x78]
mov dword [rsp + 0x20], 4
mov r9, rsi
mov rcx, rdi
call fcn.0045e380
test rdi, rdi
je 0x468c95
add dword [rdi + 0x20], eax
mov rdi, qword [rsp + 0xd0]
mov r9, qword [rsp + 0xc8]
mov r8, rbx
lea rdx, [rdi + 0x110]
lea rcx, [rdi + 0x108]
call fcn.00460e00
mov rax, rdi
mov dword [rsp + 0x28], 4
lea rdi, [rdi + 0x128]
lea r13, [rax + 0x130]
mov rax, qword [rbx + 0x20]
mov r9, qword [rsp + 0x338]
mov r8d, 7
mov rcx, rdi
mov qword [rsp + 0x70], rdi
mov rdx, r13
mov qword [rsp + 0x20], rax
call fcn.00460f20
mov rax, qword [rsp + 0x338]
cmp dword [rax + 0x78], 2
jbe 0x468c48
cmp byte [rsp + 0xb8], 0
je 0x468c48
mov rax, qword [rsp + 0xc0]
test rax, rax
je 0x4690ec
mov rsi, qword [rax + 8]
add rsi, qword [rax]
mov rax, qword [rsp + 0x338]
sub rsi, qword [rax + 0x30]
cmp dword [rsp + 0x78], 0
jne 0x469081
mov dword [rsp + 0xb0], 0
mov rax, qword [rsp + 0x338]
cmp qword [rax + 0x40], rsi
je 0x468cc9
mov rax, qword [rsp + 0xd0]
lea rdx, [rsp + 0x1e0]
mov qword [rsp + 0x1f0], rsi
mov dword [rsp + 0x1e0], 6
mov rcx, qword [rax + 0x130]
call fcn.004d2220
test rax, rax
je 0x468cc1
mov rdi, qword [rax + 8]
mov rax, qword [rsp + 0x338]
mov r9, rsi
mov dword [rsp + 0x20], 0xfffffffc
lea rdx, [rax + 0x40]
mov eax, dword [rsp + 0xb0]
mov rcx, rdi
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x338]
lea r8, [rax + 0x78]
call fcn.0045e380
test rdi, rdi
je 0x468cf6
add dword [rdi + 0x20], eax
mov rax, qword [rsp + 0x348]
add qword [rax + 0x40], 4
test r15, r15
je 0x468d1f
lea rdi, [r15 + 0x38]
mov ecx, 0xc
mov rsi, qword [rsp + 0xc8]
rep movsd dword [rdi], dword [rsi]
jmp 0x467e7b
mov dword [rsp + 0x28], r8d
lea rdx, [r13 + 0x40]
lea r8, [r13 + 0x78]
mov dword [rsp + 0x20], 4
mov r9, rsi
xor ecx, ecx
call fcn.0045e380
mov rdx, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xd8]
mov r9, r13
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rsi
mov r8d, 6
call fcn.00460f20
jmp 0x468af8
mov rax, qword [rsp + 0x338]
lea rdx, [rax + 0x40]
mov eax, dword [rsp + 0xb0]
mov dword [rsp + 0x20], 0xfffffffc
mov r9, rsi
xor ecx, ecx
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x338]
lea r8, [rax + 0x78]
call fcn.0045e380
mov r9, qword [rsp + 0x338]
mov rcx, qword [rsp + 0x70]
mov r8d, 6
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rsi
mov rdx, r13
call fcn.00460f20
jmp 0x468c48
mov r9d, dword [rsp + 0x60]
mov r8, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x348]
call fcn.0045ec60
jmp 0x467e7b
mov rax, qword [rsp + 0x338]
mov dword [rsp + 0x28], r8d
lea rdx, [rax + 0x40]
lea r8, [rax + 0x78]
mov dword [rsp + 0x20], 0xfffffffc
mov r9, rdi
xor ecx, ecx
call fcn.0045e380
mov r9, qword [rsp + 0x338]
mov dword [rsp + 0x28], eax
mov r8d, 6
mov qword [rsp + 0x20], rdi
mov rdx, r13
mov rcx, r15
call fcn.00460f20
jmp 0x467e7b
movsxd r11, dword [rsp + 0x78]
lea rax, [0x0045c1a0]
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0x50]
mov r8, r11
mov rcx, qword [rsp + 0x68]
mov r9d, 0x18
mov qword [rsp + 0x240], rdi
mov qword [rsp + 0x248], 1
mov dword [rsp + 0x250], 0
mov qword [rsp + 0x20], rax
call sub.msvcrt.dll_bsearch
xor r8d, r8d
test rax, rax
je 0x4683dd
test byte [rax + 0x10], 8
je 0x4683dd
mov r8d, dword [rax + 8]
jmp 0x4683dd
mov rcx, qword [rsp + 0x338]
mov rax, qword [rbx + 0x20]
mov r9d, 0x18
movsxd r11, dword [rsp + 0x78]
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0x248], 1
mov dword [rsp + 0x250], 0
add rax, qword [rcx + 0x30]
mov rcx, qword [rsp + 0x68]
mov r8, r11
mov qword [rsp + 0x60], r11
mov qword [rsp + 0x240], rax
lea rax, [0x0045c1a0]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0xa8], rax
call sub.msvcrt.dll_bsearch
test rax, rax
je 0x468363
test byte [rax + 0x11], 1
mov r11, qword [rsp + 0x60]
jne 0x467e7b
lea rdx, [rsi + 0x110]
lea rcx, [rsi + 0x108]
mov r9, rdi
mov r8, rbx
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x60], rax
call fcn.00460e00
mov dword [rsp + 0x28], 4
mov rdx, qword [rbx + 0x20]
lea r15, [rsi + 0x128]
lea r13, [rsi + 0x130]
mov r9, qword [rsp + 0x338]
mov r8d, 7
mov rcx, r15
mov qword [rsp + 0x20], rdx
mov rdx, r13
call fcn.00460f20
mov rax, qword [rsp + 0x338]
mov r11, qword [rsp + 0x70]
cmp dword [rax + 0x78], 2
mov rax, qword [rsp + 0x60]
jbe 0x467e7b
mov rdi, qword [rax + 8]
add rdi, qword [rax]
mov rax, qword [rsp + 0x338]
sub rdi, qword [rax + 0x30]
jmp 0x468da8
mov rax, qword [rbx + 0x20]
lea r13, [rax + 4]
jmp 0x4680b9
mov rax, qword [rsp + 0xa8]
lea rcx, [rsp + 0x1e0]
mov r9d, 0x18
mov qword [rsp + 0x1e0], rsi
mov qword [rsp + 0x1e8], 1
mov dword [rsp + 0x1f0], 0
mov qword [rsp + 0x20], rax
call sub.msvcrt.dll_bsearch
xor r8d, r8d
test rax, rax
je 0x468a7c
test byte [rax + 0x10], 8
je 0x468a7c
mov r8d, dword [rax + 8]
jmp 0x468a7c
mov qword [rsp + 0x70], 0
jmp 0x46858c
mov rax, qword [rsp + 0x338]
mov rax, qword [rax + 0x30]
add rax, qword [rbx + 0x20]
cmp dword [rsp + 0x78], 0
je 0x467df5
movsxd r8, dword [rsp + 0x78]
mov qword [rsp + 0x240], rax
lea rax, [0x0045c1a0]
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x68]
mov r9d, 0x18
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x248], 1
mov dword [rsp + 0x250], 0
call sub.msvcrt.dll_bsearch
jmp 0x467df5
movsxd r8, dword [rsp + 0x78]
mov qword [rsp + 0x240], rax
lea rax, [0x0045c1a0]
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x68]
mov r9d, 0x18
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x248], 1
mov dword [rsp + 0x250], 0
call sub.msvcrt.dll_bsearch
mov qword [rsp + 0x240], 0
mov qword [rsp + 0xc0], rax
jmp 0x4685cd
mov r8, qword [rsp + 0x68]
lea r9, str..xt.prop
mov rdx, r13
mov dword [rsp + 0x20], 0
mov rcx, rdi
call fcn.00462b90
test eax, eax
mov edx, eax
js 0x46865e
jmp 0x468727
mov rax, qword [rsp + 0xa8]
movsxd r8, dword [rsp + 0x78]
lea rcx, [rsp + 0x1e0]
mov rdx, qword [rsp + 0x50]
mov r9d, 0x18
mov qword [rsp + 0x1e0], rsi
mov qword [rsp + 0x1e8], 1
mov dword [rsp + 0x1f0], 0
mov qword [rsp + 0x20], rax
call sub.msvcrt.dll_bsearch
test rax, rax
je 0x468bb8
test byte [rax + 0x10], 8
je 0x468bb8
mov eax, dword [rax + 8]
mov dword [rsp + 0xb0], eax
jmp 0x468bb8
mov rax, qword [rbx + 0x20]
lea rsi, [rax + 4]
jmp 0x468ba2