Function at 0x4167d0
Capabilities:
Inspect section memory permissions

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x100
mov qword [rbp + 0x10], rcx
mov qword [rbp + 0x18], rdx
movabs rax, 0x28
mov r8, rax
mov eax, 0
mov r11, rax
lea rax, [rbp - 0x60]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_memset
call fcn.00408e92
lea rax, [rbp - 0x60]
mov r10, rax
mov rcx, r10
call fcn.00415062
mov eax, dword [0x00457020]
cmp eax, 0x7b
je 0x416928
mov eax, dword [0x00457020]
mov dword [rbp - 4], eax
call fcn.00408e92
mov eax, dword [rbp - 4]
cmp eax, 0x100
jge 0x41685c
lea rax, str.struct_union_enum_name
mov r10, rax
mov rcx, r10
call fcn.0040106c
mov eax, dword [rbp - 4]
mov r10, rax
mov rcx, r10
call fcn.0044bdad
mov qword [rbp - 0x28], rax
mov rax, qword [rbp - 0x28]
cmp rax, 0
je 0x416923
mov rax, qword [rbp - 0x28]
add rax, 0xc
mov eax, dword [rax]
mov ecx, dword [0x004776d0]
cmp eax, ecx
je 0x4168a3
mov eax, dword [0x00457020]
cmp eax, 0x7b
je 0x416923
mov rax, qword [rbp - 0x28]
add rax, 0x10
mov ecx, dword [rbp + 0x18]
mov eax, dword [rax]
cmp ecx, eax
jne 0x4168bd
jmp 0x4169bd
mov eax, dword [rbp + 0x18]
cmp eax, 0x200000
jne 0x4168ed
mov rax, qword [rbp - 0x28]
add rax, 0x10
mov eax, dword [rax]
and eax, 0xfff00080
cmp eax, 0x200000
jne 0x4168ed
jmp 0x4169bd
movabs rax, 0
mov r11, rax
mov eax, dword [rbp - 4]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00401e0d
mov r11, rax
lea rax, str.redefinition_of__s
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00442694
jmp 0x41693c
mov eax, dword [0x004570d4]
mov ecx, eax
add eax, 1
mov dword [0x004570d4], eax
mov dword [rbp - 4], ecx
mov eax, dword [rbp + 0x18]
cmp eax, 0x200000
jne 0x416959
mov eax, dword [rbp + 0x18]
or eax, 3
or eax, 0x10
jmp 0x416961
mov eax, dword [rbp + 0x18]
jmp 0x416961
mov dword [rbp - 0x98], eax
movabs rax, 0
mov qword [rbp - 0x90], rax
mov eax, dword [rbp - 4]
or eax, 0x40000000
mov ecx, 0xffffffff
mov r9, rcx
mov ecx, 0
mov r8, rcx
lea rcx, [rbp - 0x98]
mov r11, rcx
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.0040babf
mov qword [rbp - 0x28], rax
mov rax, qword [rbp - 0x28]
add rax, 4
mov ecx, 0
mov word [rax], cx
mov rax, qword [rbp + 0x10]
mov rcx, qword [rbp - 0x28]
add rcx, 0x10
mov ecx, dword [rcx]
mov dword [rax], ecx
mov rax, qword [rbp + 0x10]
add rax, 8
mov rcx, qword [rbp - 0x28]
mov qword [rax], rcx
mov eax, dword [0x00457020]
cmp eax, 0x7b
jne 0x41746e
call fcn.00408e92
mov rax, qword [rbp - 0x28]
add rax, 8
mov eax, dword [rax]
cmp eax, 0xffffffff
je 0x416a15
lea rax, str.struct_union_enum_already_defined
mov r10, rax
mov rcx, r10
call fcn.00442694
mov rax, qword [rbp - 0x28]
add rax, 8
mov ecx, 0xfffffffe
mov dword [rax], ecx
mov rax, qword [rbp - 0x28]
add rax, 0x20
mov qword [rbp - 0x38], rax
mov eax, dword [rbp + 0x18]
cmp eax, 0x200000
jne 0x416dc1
movabs rax, 0
mov qword [rbp - 0xb0], rax
movabs rax, 0
mov qword [rbp - 0xb8], rax
movabs rax, 0
mov qword [rbp - 0xc0], rax
mov rax, qword [rbp - 0x28]
mov qword [rbp - 0xc8], rax
mov eax, 0x302003
mov dword [rbp - 0xd0], eax
mov eax, dword [0x00457020]
mov dword [rbp - 4], eax
mov eax, dword [rbp - 4]
cmp eax, 0x140
jge 0x416ab2
lea rax, [0x0045094c]
mov r10, rax
mov rcx, r10
call fcn.0040106c
mov eax, dword [rbp - 4]
mov r10, rax
mov rcx, r10
call fcn.0044be0e
mov qword [rbp - 0x30], rax
mov rax, qword [rbp - 0x30]
cmp rax, 0
je 0x416b19
mov rax, qword [0x00457078]
cmp rax, 0
jne 0x416b19
movabs rax, 0
mov r11, rax
mov eax, dword [rbp - 4]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00401e0d
mov r11, rax
lea rax, str.redefinition_of_enumerator__s
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00442694
call fcn.00408e92
mov eax, dword [0x00457020]
cmp eax, 0x3d
jne 0x416b3e
call fcn.00408e92
call fcn.0044c004
mov qword [rbp - 0xb0], rax
mov eax, 0
mov r9, rax
mov eax, 0x30
mov r8, rax
lea rax, [rbp - 0xd0]
mov r11, rax
mov eax, dword [rbp - 4]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.0040babf
mov qword [rbp - 0x30], rax
mov rax, qword [rbp - 0x30]
add rax, 8
mov rcx, qword [rbp - 0xb0]
mov qword [rax], rcx
mov rax, qword [rbp - 0x38]
mov rcx, qword [rbp - 0x30]
mov qword [rax], rcx
mov rax, qword [rbp - 0x30]
add rax, 0x20
mov qword [rbp - 0x38], rax
mov rax, qword [rbp - 0xb0]
mov rcx, qword [rbp - 0xc0]
cmp rax, rcx
jge 0x416bbb
mov rax, qword [rbp - 0xb0]
mov qword [rbp - 0xc0], rax
mov rax, qword [rbp - 0xb0]
mov rcx, qword [rbp - 0xb8]
cmp rax, rcx
jle 0x416be0
mov rax, qword [rbp - 0xb0]
mov qword [rbp - 0xb8], rax
mov eax, dword [0x00457020]
cmp eax, 0x2c
je 0x416bf4
jmp 0x416c27
call fcn.00408e92
mov rax, qword [rbp - 0xb0]
mov rcx, rax
add rax, 1
mov qword [rbp - 0xb0], rax
mov eax, dword [0x00457020]
cmp eax, 0x7d
jne 0x416c22
jmp 0x416c27
jmp 0x416a88
mov eax, 0x7d
mov r10, rax
mov rcx, r10
call fcn.00401000
mov eax, 3
mov dword [rbp - 0xd0], eax
mov rax, qword [rbp - 0xc0]
cmp rax, 0
jl 0x416c88
mov eax, dword [rbp - 0xb8]
mov rcx, qword [rbp - 0xb8]
cmp rcx, rax
je 0x416c74
mov eax, 4
mov dword [rbp - 0xd0], eax
mov eax, dword [rbp - 0xd0]
or eax, 0x10
mov dword [rbp - 0xd0], eax
jmp 0x416cc5
mov eax, dword [rbp - 0xb8]
movsxd rax, eax
mov rcx, qword [rbp - 0xb8]
cmp rcx, rax
jne 0x416cba
mov eax, dword [rbp - 0xc0]
movsxd rax, eax
mov rcx, qword [rbp - 0xc0]
cmp rcx, rax
je 0x416cc5
mov eax, 4
mov dword [rbp - 0xd0], eax
mov rax, qword [rbp - 0x28]
add rax, 0x10
mov rcx, qword [rbp + 0x10]
mov edx, dword [rbp - 0xd0]
or edx, 0x200000
mov dword [rcx], edx
mov dword [rax], edx
mov rax, qword [rbp - 0x28]
add rax, 8
mov ecx, 0
mov dword [rax], ecx
mov rax, qword [rbp - 0x28]
add rax, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x30], rax
mov rax, qword [rbp - 0x30]
cmp rax, 0
je 0x416dbc
jmp 0x416d23
mov rax, qword [rbp - 0x30]
add rax, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x30], rax
jmp 0x416cff
mov rax, qword [rbp - 0x30]
add rax, 8
mov rax, qword [rax]
mov qword [rbp - 0xb0], rax
mov eax, dword [rbp - 0xb0]
movsxd rax, eax
mov rcx, qword [rbp - 0xb0]
cmp rcx, rax
jne 0x416d53
jmp 0x416d12
mov eax, dword [rbp - 0xd0]
and eax, 0x10
cmp eax, 0
je 0x416d9d
mov rax, qword [rbp - 0x30]
add rax, 0x10
mov qword [rbp - 0xd8], rax
mov eax, dword [rax]
or eax, 0x10
mov rcx, qword [rbp - 0xd8]
mov dword [rcx], eax
mov eax, dword [rbp - 0xb0]
mov rcx, qword [rbp - 0xb0]
cmp rcx, rax
jne 0x416d9d
jmp 0x416d12
mov rax, qword [rbp - 0x30]
add rax, 0x10
mov rcx, qword [rbp - 0x30]
add rcx, 0x10
mov ecx, dword [rcx]
and ecx, 0xfffffff0
or ecx, 4
mov dword [rax], ecx
jmp 0x416d12
jmp 0x41746e
mov eax, 0
mov dword [rbp - 8], eax
mov eax, 0
mov dword [rbp - 0x14], eax
mov eax, dword [0x00457020]
cmp eax, 0x7d
je 0x4173b6
mov eax, dword [0x00457020]
cmp eax, 0x127
jne 0x416dfc
call fcn.00421c87
jmp 0x416dd1
mov eax, 0
mov r8, rax
lea rax, [rbp - 0x88]
mov r11, rax
lea rax, [rbp - 0xa8]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00417568
cmp eax, 0
jne 0x416e41
mov eax, 0x3b
mov r10, rax
mov rcx, r10
call fcn.00401000
jmp 0x416dd1
mov eax, dword [rbp - 0x14]
cmp eax, 0
je 0x416e83
movabs rax, 0
mov r11, rax
mov eax, dword [rbp - 4]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00401e0d
mov r11, rax
lea rax, str.flexible_array_member__s_not_at_the_end_of_struct
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00442694
mov eax, 0xffffffff
mov dword [rbp - 0x18], eax
mov eax, 0
mov dword [rbp - 4], eax
push rsi
push rdi
lea rsi, [rbp - 0xa8]
lea rdi, [rbp - 0x98]
movsq qword [rdi], qword [rsi]
movsq qword [rdi], qword [rsi]
pop rdi
pop rsi
mov eax, dword [0x00457020]
cmp eax, 0x3a
je 0x41708b
mov eax, dword [0x00457020]
cmp eax, 0x3b
je 0x416ef5
mov eax, 2
mov r9, rax
lea rax, [rbp - 4]
mov r8, rax
lea rax, [rbp - 0x88]
mov r11, rax
lea rax, [rbp - 0x98]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00418a98
mov eax, dword [rbp - 4]
cmp eax, 0
jne 0x416f8a
mov eax, dword [rbp - 0x98]
and eax, 0xf
cmp eax, 7
je 0x416f25
lea rax, [0x004509ab]
mov r10, rax
mov rcx, r10
call fcn.0040106c
mov rax, qword [rbp - 0xa0]
mov eax, dword [rax]
mov dword [rbp - 0xdc], eax
mov eax, dword [rbp - 0xdc]
and eax, 0x20000000
cmp eax, 0
jne 0x416f8a
mov eax, dword [rbp - 0xdc]
and eax, 0xbfffffff
cmp eax, 0x10000000
jge 0x416f8a
mov rax, qword [section..bss]
add rax, 0x12
movzx eax, byte [rax]
cmp eax, 0
jne 0x416f8a
lea rax, [0x004509b6]
mov r10, rax
mov rcx, r10
call fcn.0040106c
lea rax, [rbp - 0x10]
mov r11, rax
lea rax, [rbp - 0x98]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00413fdf
cmp eax, 0
jge 0x41701c
mov eax, dword [rbp + 0x18]
cmp eax, 7
jne 0x416fe6
mov eax, dword [rbp - 0x98]
and eax, 0x40
cmp eax, 0
je 0x416fe6
mov eax, dword [rbp - 8]
cmp eax, 0
je 0x416fe6
mov eax, 1
mov dword [rbp - 0x14], eax
jmp 0x41701c
movabs rax, 0
mov r11, rax
mov eax, dword [rbp - 4]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00401e0d
mov r11, rax
lea rax, str.field__s_has_incomplete_type
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00442694
mov eax, dword [rbp - 0x98]
and eax, 0xf
cmp eax, 6
je 0x417055
mov eax, dword [rbp - 0x98]
and eax, 0xf
cmp eax, 0
je 0x417055
mov eax, dword [rbp - 0x98]
and eax, 0xf000
cmp eax, 0
je 0x41708b
movabs rax, 0
mov r11, rax
mov eax, dword [rbp - 4]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00401e0d
mov r11, rax
lea rax, str.invalid_type_for__s
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00442694
mov eax, dword [0x00457020]
cmp eax, 0x3a
jne 0x417149
call fcn.00408e92
call fcn.0041c4b8
mov dword [rbp - 0x18], eax
mov eax, dword [rbp - 0x18]
cmp eax, 0
jge 0x4170e9
movabs rax, 0
mov r11, rax
mov eax, dword [rbp - 4]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00401e0d
mov r11, rax
lea rax, str.negative_width_in_bit_field__s
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00442694
mov eax, dword [rbp - 4]
cmp eax, 0
je 0x417137
mov eax, dword [rbp - 0x18]
cmp eax, 0
jne 0x417137
movabs rax, 0
mov r11, rax
mov eax, dword [rbp - 4]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00401e0d
mov r11, rax
lea rax, str.zero_width_for_bit_field__s
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00442694
lea rax, [rbp - 0x88]
mov r10, rax
mov rcx, r10
call fcn.00415062
lea rax, [rbp - 0x10]
mov r11, rax
lea rax, [rbp - 0x98]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00413fdf
mov dword [rbp - 0xc], eax
mov eax, dword [rbp - 0x18]
cmp eax, 0
jl 0x417295
mov eax, dword [rbp - 0x98]
and eax, 0xf
mov dword [rbp - 0x20], eax
mov eax, dword [rbp - 0x20]
cmp eax, 3
je 0x4171ce
mov eax, dword [rbp - 0x20]
cmp eax, 1
je 0x4171ce
mov eax, dword [rbp - 0x20]
cmp eax, 2
je 0x4171ce
mov eax, dword [rbp - 0x20]
cmp eax, 0xb
je 0x4171ce
mov eax, dword [rbp - 0x20]
cmp eax, 4
je 0x4171ce
lea rax, str.bitfields_must_have_scalar_type
mov r10, rax
mov rcx, r10
call fcn.00442694
mov eax, dword [rbp - 0xc]
shl eax, 3
mov dword [rbp - 0x1c], eax
mov eax, dword [rbp - 0x18]
mov ecx, dword [rbp - 0x1c]
cmp eax, ecx
jle 0x41721b
movabs rax, 0
mov r11, rax
mov eax, dword [rbp - 4]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00401e0d
mov r11, rax
lea rax, str.width_of__s_exceeds_its_type
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00442694
mov eax, dword [rbp - 0x18]
mov ecx, dword [rbp - 0x1c]
cmp eax, ecx
jne 0x417257
movzx eax, word [rbp - 0x60]
shl eax, 0x1a
shr eax, 0x1f
cmp eax, 0
jne 0x417257
movzx eax, word [rbp - 0x88]
shl eax, 0x1a
shr eax, 0x1f
cmp eax, 0
jne 0x417257
jmp 0x417295
mov eax, dword [rbp - 0x18]
cmp eax, 0x40
jne 0x417275
lea rax, str.field_width_64_not_implemented
mov r10, rax
mov rcx, r10
call fcn.00442694
mov eax, dword [rbp - 0x98]
and eax, 0xfff7f
or eax, 0x80
mov ecx, dword [rbp - 0x18]
shl ecx, 0x1a
or eax, ecx
mov dword [rbp - 0x98], eax
mov eax, dword [rbp - 4]
cmp eax, 0
jne 0x4172b3
mov eax, dword [rbp - 0x98]
and eax, 0xf
cmp eax, 7
jne 0x4172bb
mov eax, 1
mov dword [rbp - 8], eax
mov eax, dword [rbp - 4]
cmp eax, 0
jne 0x4172f9
mov eax, dword [rbp - 0x98]
and eax, 0xf
cmp eax, 7
je 0x4172e5
mov eax, dword [rbp - 0x18]
cmp eax, 0
jl 0x4172f9
mov eax, dword [0x004570d4]
mov ecx, eax
add eax, 1
mov dword [0x004570d4], eax
mov dword [rbp - 4], ecx
mov eax, dword [rbp - 4]
cmp eax, 0
je 0x417369
mov eax, dword [rbp - 4]
or eax, 0x20000000
mov ecx, 0
mov r9, rcx
mov ecx, 0
mov r8, rcx
lea rcx, [rbp - 0x98]
mov r11, rcx
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.0040babf
mov qword [rbp - 0x30], rax
mov rax, qword [rbp - 0x30]
add rax, 6
push rsi
push rdi
lea rsi, [rbp - 0x88]
mov rdi, rax
movsw word [rdi], word [rsi]
pop rdi
pop rsi
mov rax, qword [rbp - 0x38]
mov rcx, qword [rbp - 0x30]
mov qword [rax], rcx
mov rax, qword [rbp - 0x30]
add rax, 0x20
mov qword [rbp - 0x38], rax
mov eax, dword [0x00457020]
cmp eax, 0x3b
je 0x417387
mov eax, dword [0x00457020]
cmp eax, 0xffffffff
jne 0x41738c
jmp 0x4173a1
mov eax, 0x2c
mov r10, rax
mov rcx, r10
call fcn.00401000
jmp 0x416e41
mov eax, 0x3b
mov r10, rax
mov rcx, r10
call fcn.00401000
jmp 0x416dd1
mov eax, 0x7d
mov r10, rax
mov rcx, r10
call fcn.00401000
lea rax, [rbp - 0x60]
mov r10, rax
mov rcx, r10
call fcn.00415062
mov rax, qword [rbp - 0x50]
cmp rax, 0
je 0x4173f5
lea rax, str.attribute___cleanup___ignored_on_type
mov r10, rax
mov rcx, r10
call fcn.004426ea
mov eax, 1
mov r11, rax
mov rax, qword [rbp + 0x10]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00415daf
mov eax, 0
mov r11, rax
mov rax, qword [rbp + 0x10]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00415daf
lea rax, [rbp - 0x60]
mov r11, rax
mov rax, qword [rbp + 0x10]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00415edc
movsx eax, byte [0x004570e0]
cmp eax, 0
je 0x41746e
mov rax, qword [rbp + 0x10]
mov r11, rax
mov rax, qword [section..bss]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00427486
leave
ret