Function at 0x45b490
Capabilities:
Enumerate pe sections

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
xor edi, edi
mov rax, qword [rcx + 0x50]
mov rax, qword [rax + 8]
mov rbx, rcx
mov r12, rdx
mov rax, qword [rax + 0x360]
mov rax, qword [rax + 0x2f8]
cmp byte [rax + 0xc], 2
movsx eax, byte [rcx + 6]
sete dil
shr eax, 0x1f
add edi, 2
mov esi, eax
or esi, 2
test byte [rcx + 7], 1
mov rcx, qword [rcx + 0x60]
cmove rsi, rax
xor ebp, ebp
test rcx, rcx
jne 0x45b4fc
jmp 0x45b54d
mov rcx, qword [rcx + 0xe8]
test rcx, rcx
je 0x45b540
mov rax, qword [rcx + 8]
cmp dword [rax + 8], 5
jne 0x45b4f0
mov r9d, dword [rcx + 0x98]
test r9d, r9d
je 0x45b4f0
mov rax, qword [rcx + 0xf0]
cmp qword [rax + 0x360], 0
jne 0x45b890
mov rbp, rcx
mov rcx, qword [rcx + 0xe8]
test rcx, rcx
jne 0x45b4fc
nop word cs:[rax + rax]
test esi, esi
je 0x45b54d
test rbp, rbp
jne 0x45b82e
mov rcx, rbx
call fcn.00486920
mov rsi, qword [rbx + 0x28]
mov rbp, rax
cmp dword [rsi + 0x40], 1
je 0x45b580
mov rax, rbp
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rbx + 0x50]
mov rax, qword [rax + 8]
mov r14, qword [rax + 0x360]
mov eax, dword [r14 + 4]
cmp dword [rsi + 0x48], eax
jne 0x45b562
mov rax, qword [r12 + 0x28]
movzx edx, byte [rbx]
mov qword [rsi + 0x748], rax
mov rax, qword [r12 + 0x30]
mov qword [rsi + 0x750], rax
mov eax, edx
and eax, 3
cmp al, 2
je 0x45b562
movzx eax, byte [r12 + 0x20]
xor ecx, ecx
mov byte [rsi + 0x740], al
movzx eax, byte [rbx + 6]
and eax, 0xc0
setne cl
mov dword [rsp + 0x30], ecx
jne 0x45b5f8
test rbp, rbp
je 0x45b5f8
mov rax, qword [rbp + 0xf0]
mov rax, qword [rax + 0x360]
test rax, rax
jne 0x45b812
mov r15, qword [rsi + 0x58]
test r15, r15
je 0x45b950
mov r13d, dword [rsi + 0x764]
and edx, 1
mov dword [rsi + 0x22c], 1
mov rax, qword [rsi + 0x190]
test r13d, r13d
mov qword [rsp + 0x28], rax
je 0x45b8b8
mov rax, qword [r12]
mov qword [rsi + 0x250], 0
mov qword [rsi + 0x248], rax
test dl, dl
je 0x45b965
mov rdx, qword [rax + 0x40]
mov qword [rsi + 0x218], rdx
mov rdx, qword [rax + 0x48]
mov qword [rsi + 0x220], rdx
mov edx, dword [rax + 0x18]
mov dword [rsp + 0x34], 1
mov dword [rsi + 0x228], edx
mov edx, dword [rax + 0x28]
mov dword [rsi + 0x230], edx
mov edx, dword [rax + 0x34]
mov dword [rsi + 0x234], edx
mov edx, dword [rax + 0x58]
mov rax, qword [rax + 0x50]
mov dword [rsi + 0x240], edx
mov qword [rsi + 0x238], rax
cmp dword [rsi + 0x764], 1
je 0x45b9f1
mov rdx, qword [rsi + 0x178]
test rdx, rdx
je 0x45bace
xor eax, eax
cmp dword [r14 + 4], 0x20
mov rcx, r15
sete al
add eax, 2
mov dword [rdx + 0x70], eax
mov rdx, qword [rsi + 0x180]
mov dword [rdx + 0x70], eax
mov rdx, rbx
call fcn.0045bbc0
test eax, eax
jne 0x45b6ed
mov rax, qword [rbx + 0x20]
lea rcx, str._F_P:_failed_to_create_ifunc_sections_n
call qword [rax + 0x58]
mov ecx, dword [rsi + 0x228]
call fcn.00428820
cmp qword [rsp + 0x28], 0
mov r12d, eax
je 0x45b7de
movzx eax, byte [rbx]
and eax, 3
cmp al, 1
jbe 0x45b9aa
test r13d, r13d
je 0x45ba1e
test byte [rbx + 5], 2
jne 0x45b562
lea rdx, [0x004f7ee8]
mov r8d, 0x10410b
mov rcx, r15
call fcn.0042a950
test rax, rax
mov r14, rax
jne 0x45b753
mov rax, qword [rbx + 0x20]
lea rcx, str._F_P:_failed_to_create_PLT_.eh_frame_section_n
call qword [rax + 0x58]
cmp qword [rsi + 0x208], 0
mov dword [r14 + 0x70], edi
mov qword [rsi + 0x1f0], r14
je 0x45b79e
lea rdx, [0x004f7ee8]
mov r8d, 0x10410b
mov rcx, r15
call fcn.0042a950
test rax, rax
mov r14, rax
jne 0x45b793
mov rax, qword [rbx + 0x20]
lea rcx, str._F_P:_failed_to_create_GOT_PLT_.eh_frame_section_n
call qword [rax + 0x58]
mov dword [r14 + 0x70], edi
mov qword [rsi + 0x210], r14
cmp qword [rsi + 0x1f8], 0
je 0x45b7de
lea rdx, [0x004f7ee8]
mov r8d, 0x10410b
mov rcx, r15
call fcn.0042a950
test rax, rax
mov r14, rax
jne 0x45b7d3
mov rax, qword [rbx + 0x20]
lea rcx, str._F_P:_failed_to_create_the_second_PLT_.eh_frame_section_n
call qword [rax + 0x58]
mov dword [r14 + 0x70], edi
mov qword [rsi + 0x200], r14
test r13d, r13d
jne 0x45b562
mov rax, qword [rsi + 0x1c8]
test rax, rax
je 0x45b562
mov dword [rax + 0x70], r12d
jmp 0x45b562
ja 0x45b5f8
mov rax, qword [rax]
test rax, rax
je 0x45b5f8
cmp dword [rax + 8], 0xc0000002
jne 0x45b800
mov r15, qword [rax + 0x10]
mov eax, r15d
and eax, 1
mov dword [rsp + 0x30], eax
jmp 0x45b5f8
mov r8d, 4
mov edx, 0xc0000002
mov rcx, rbp
call fcn.00486530
mov r8d, 0x412b
mov rcx, rbp
or qword [rax + 8], rsi
mov dword [rax + 0x10], 4
lea rdx, [0x004f7f99]
call fcn.0042aa10
test rax, rax
mov rsi, rax
jne 0x45b877
mov rax, qword [rbx + 0x20]
lea rcx, str._F_P:_failed_to_create_GNU_property_section_n
call qword [rax + 0x58]
mov rax, qword [rsi + 0xe0]
mov dword [rsi + 0x70], edi
mov dword [rax + 4], 7
jmp 0x45b54d
test esi, esi
je 0x45b54d
mov r8d, 4
mov edx, 0xc0000002
call fcn.00486530
or qword [rax + 8], rsi
mov dword [rax + 0x10], 4
jmp 0x45b54d
mov r8d, dword [rsp + 0x30]
test r8d, r8d
je 0x45b97f
mov rax, qword [r12 + 0x10]
mov qword [rsi + 0x248], rax
mov rax, qword [r12 + 0x18]
mov qword [rsi + 0x250], rax
test rax, rax
je 0x45b8f5
mov ecx, dword [rsi + 0x22c]
test ecx, ecx
je 0x45b901
cmp qword [rsp + 0x28], 0
je 0x45b901
mov rax, qword [rsi + 0x248]
jmp 0x45b644
test dl, dl
je 0x45b99b
mov rdx, qword [rax + 8]
mov qword [rsi + 0x220], rdx
mov edx, dword [rax + 0x10]
mov dword [rsp + 0x34], 0
mov dword [rsi + 0x228], edx
mov edx, dword [rax + 0x14]
mov dword [rsi + 0x230], edx
mov edx, dword [rax + 0x18]
mov dword [rsi + 0x234], edx
mov edx, dword [rax + 0x28]
mov rax, qword [rax + 0x20]
mov dword [rsi + 0x240], edx
mov qword [rsi + 0x238], rax
jmp 0x45b699
test rbp, rbp
je 0x45baf7
mov qword [rsi + 0x58], rbp
mov r15, rbp
jmp 0x45b605
mov rdx, qword [rax]
mov qword [rsi + 0x218], rdx
mov rdx, qword [rax + 0x10]
mov qword [rsi + 0x220], rdx
jmp 0x45b662
mov rax, qword [r12]
mov qword [rsi + 0x248], rax
mov rax, qword [r12 + 8]
mov qword [rsi + 0x250], rax
jmp 0x45b8de
mov rdx, qword [rax]
mov qword [rsi + 0x220], rdx
jmp 0x45b914
test byte [rbx + 7], 2
jne 0x45b715
lea rdx, [0x004f7e47]
mov rcx, r15
call fcn.0042a660
test rax, rax
je 0x45bb69
movsxd rdx, dword [rsi + 0x780]
mov qword [rax + 0x38], rdx
mov rdx, qword [rsi + 0x788]
mov qword [rax + 0xb0], rdx
mov qword [rsi + 0x1e8], rax
jmp 0x45b715
lea r8, [rsi + 0x728]
mov rdx, rbx
mov rcx, r15
call fcn.004a1410
test eax, eax
jne 0x45b6a6
mov rax, qword [rbx + 0x20]
lea rcx, str._F_P:_failed_to_create_VxWorks_dynamic_sections_n
call qword [rax + 0x58]
jmp 0x45b562
mov eax, dword [r14 + 0x28]
or eax, 0x1b
mov r14d, eax
mov dword [rsp + 0x38], eax
mov rax, qword [rsi + 0x250]
mov ecx, dword [rax + 0x10]
call fcn.00428820
mov r8d, r14d
mov rcx, r15
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0x28]
lea rdx, [0x004f7e4f]
mov dword [rax + 0x70], r12d
call fcn.0042a950
test rax, rax
mov r14, rax
jne 0x45ba70
mov rax, qword [rbx + 0x20]
lea rcx, str._F_P:_failed_to_create_GOT_PLT_section_n
call qword [rax + 0x58]
mov edx, dword [rsp + 0x34]
mov eax, dword [rsp + 0x3c]
test edx, edx
mov dword [r14 + 0x70], eax
mov qword [rsi + 0x208], r14
je 0x45babf
mov eax, dword [rsp + 0x30]
test eax, eax
jne 0x45bb36
xor r14d, r14d
test byte [rbx + 6], 0x20
je 0x45bab8
mov rax, qword [r15 + 8]
mov rax, qword [rax + 0x360]
mov rax, qword [rax + 0x2f8]
cmp byte [rax + 0xc], 2
je 0x45bb81
mov qword [rsi + 0x1f8], r14
test byte [rbx + 5], 2
jne 0x45b7e7
jmp 0x45b728
mov rdx, rbx
mov rcx, r15
call fcn.00474740
test eax, eax
jne 0x45baeb
mov rax, qword [rbx + 0x20]
lea rcx, str._F_P:_failed_to_create_GOT_sections_n
call qword [rax + 0x58]
mov rdx, qword [rsi + 0x178]
jmp 0x45b6b6
mov r15, qword [rbx + 0x60]
test r15, r15
jne 0x45bb15
jmp 0x45b562
mov r15, qword [r15 + 0xe8]
test r15, r15
je 0x45b562
mov rax, qword [r15 + 8]
cmp dword [rax + 8], 5
jne 0x45bb05
mov eax, dword [r15 + 0x40]
shr eax, 5
test eax, 0x11040
jne 0x45bb05
mov qword [rsi + 0x58], r15
jmp 0x45b605
mov r8d, dword [rsp + 0x38]
lea rdx, [0x004f7e80]
mov rcx, r15
call fcn.0042a950
test rax, rax
mov r14, rax
jne 0x45bb60
mov rax, qword [rbx + 0x20]
lea rcx, str._F_P:_failed_to_create_IBT_enabled_PLT_section_n
call qword [rax + 0x58]
mov dword [r14 + 0x70], r12d
jmp 0x45bab8
lea r8, str._bfd_x86_elf_link_setup_gnu_properties
mov edx, 0xa3b
lea rcx, str..._.._.._src_binutils_2.30_bfd_elfxx_x86.c
call fcn.004240d0
mov r8d, dword [rsp + 0x38]
lea rdx, [0x004f7e80]
mov rcx, r15
call fcn.0042a950
test rax, rax
mov r14, rax
jne 0x45bbab
mov rax, qword [rbx + 0x20]
lea rcx, str._F_P:_failed_to_create_BND_PLT_section_n
call qword [rax + 0x58]
mov eax, dword [rsp + 0x3c]
mov dword [r14 + 0x70], eax
jmp 0x45bab8