Xianxiang Yu

111 papers C 2Misc 2Journal 96Unranked 11
YearRankTypeTitle / Venue / Authors
2026 J jnl
IEEE Trans. Cogn. Commun. Netw.
Kai Zhong, Jinfeng Hu, Dongxu An, Huan Wan, Yiran Zhang, Xin Tai, Yongfeng Zuo, Ye Yuan, Cunhua Pan, Kah Chan Teh, Xianxiang Yu, Huiyong Li, Guolong Cui
2026 J jnl
IEEE Trans. Cogn. Commun. Netw.
Kai Zhong, Hezhe Jia, Ren Wang, Jinfeng Hu, Kah Chan Teh, Jun Liu, Yuankai Wang, Huiyong Li, Chaohai Li, Xianxiang Yu
2026 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Kai Zhong, Yipeng Zhong, Jinfeng Hu, Xin Cheng, Huiyong Li, Xu Cheng, Cunhua Pan, Kah Chan Teh, Xin Tai, Xianxiang Yu, Guolong Cui
2026 J jnl
IEEE Trans. Signal Process.
Jing Yang, Tao Fan, Xianxiang Yu, Zhengyu Zhu, Chenguang Shi, Yangyang Dong, Guolong Cui
2026 J jnl
Signal Process.
Yukai Kong, Xianxiang Yu, Jiachen Li, Kui Xiong, Guolong Cui
2026 J jnl
IEEE Trans. Cogn. Commun. Netw.
Hui Qiu, Xianxiang Yu, Tao Fan, Jing Yang, Guolong Cui, Lan Lan, Guan Gui
2026 J jnl
Signal Process.
Wenjie Wang, Tao Fan, Linchuan Gan, Yin Li, Yuanhao Wu, Xianxiang Yu, Guolong Cui
2026 J jnl
IEEE Trans. Signal Process.
Wenqiang Wei, Xianxiang Yu, Tao Fan, Peijie Zhu, Guolong Cui
2026 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Jing Yang, Xianxiang Yu, Fasong Wang, Xue Yao, Lan Lan
2025 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Tao Fan, Xianxiang Yu, Yin Li, Jingyi Xiong, Guolong Cui
2025 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Linchuan Gan, Kui Xiong, Maosen Liao, Xianxiang Yu, Guolong Cui
2025 J jnl
IEEE Trans. Signal Process.
Yi Wang, Xianxiang Yu, Jing Yang, Guolong Cui
2025 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Xianxiang Yu, Guolong Cui, Yi Wang, Rui Tan, Wenmin Wang
2025 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Yi Bu, Xianxiang Yu, Jing Yang, Guolong Cui, Xiaobo Yang
2025 J jnl
Signal Process.
Jiachen Li, Jiaxian Hao, Yukai Kong, Xianxiang Yu, Zhaoyin Xiang, Guolong Cui, Wenmin Wang
2025 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Maosen Liao, Kui Xiong, Long Zhang, Xianxiang Yu, Guolong Cui
2025 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Yi Bu, Xiaobo Yang, Xianxiang Yu, Qiao Shi, Guolong Cui
2025 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Jiachen Li, Zhi Sun, Xianxiang Yu, Yukai Kong, Guolong Cui, Zhaoyin Xiang
2025 J jnl
IEEE Trans. Cogn. Commun. Netw.
Kai Zhong, Jinfeng Hu, Ye Yuan, Yuankai Wang, Kah Chan Teh, Cunhua Pan, Huiyong Li, Xianxiang Yu, Guolong Cui
2025 J jnl
Signal Process.
Yi Bu, Xianxiang Yu, Jing Yang, Guolong Cui, Xiaobo Yang
2025 conf
ICVISP
Zihan Ni, Mou Wang, Xianxiang Yu, Guolong Cui, Lingjiang Kong
2025 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Kangan Feng, Xianxiang Yu, Mou Wang, Yu Huang, Lidong Zhang, Wei Yi, Lingjiang Kong
2025 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Tao Fan, Xianxiang Yu, Yuanhao Wu, Yin Li, Guolong Cui, Wenmin Wang
2025 J jnl
IEEE Trans. Signal Process.
Tao Fan, Augusto Aubry, Vincenzo Carotenuto, Antonio De Maio, Xianxiang Yu, Guolong Cui
2025 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Jingyi Xiong, Guolong Cui, Tao Fan, Yin Li, Xianxiang Yu, Lingjiang Kong, Xiaobo Yang
2025 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Wenqiang Wei, Xianxiang Yu, Guolong Cui
2025 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Hui Qiu, Xianxiang Yu, Guolong Cui, Jing Yang, Lingjiang Kong
2024 J jnl
Signal Process.
Yuanhao Wu, Tao Fan, Peijie Zhu, Rui Tan, Xianxiang Yu, Guolong Cui
2024 J jnl
IEEE Trans. Signal Process.
Wenqiang Wei, Guolong Cui, Xianxiang Yu, Ruitao Liu, Xiangrong Wang
2024 J jnl
IEEE Trans. Veh. Technol.
Yukai Kong, Senlin Xia, Luxin Dong, Xianxiang Yu, Guolong Cui
2024 conf
EUSIPCO
Yi Wang, Xianxiang Yu, Tao Fan, Guolong Cui
2024 C conf
IGARSS
Yi Wang, Hui Qiu, Xianxiang Yu, Guolong Cui
2024 J jnl
IEEE Trans. Veh. Technol.
Xue Yao, Yi Wang, Bunian Pan, Xianxiang Yu, Guolong Cui, Lingxia Su
2024 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Xue Yao, Jing Yang, Kui Xiong, Xianxiang Yu, Guolong Cui, Xiangfei Nie
2024 J jnl
Signal Process.
Yin Li, Xianxiang Yu, Tao Fan, Wenmin Wang, Yuanhao Wu, Guolong Cui, Lingjiang Kong
2024 J jnl
IEEE Trans. Signal Process.
Tao Fan, Guolong Cui, Xianxiang Yu, Yi Bu, Lingjiang Kong, Xiaobo Yang
2024 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Kai Zhong, Jinfeng Hu, Ziwei Zhao, Xianxiang Yu, Guolong Cui, Bin Liao, Haotian Hu
2024 J jnl
IEEE Trans. Signal Process.
Zhongping Yang, Zhihui Li, Xianxiang Yu, Qingsong Zhou, Chao Huang, Jianyun Zhang
2024 conf
GLOBECOM (Workshops)
Junhui Qian, Zhuoran Sun, Jie Wang, Le Zheng, Difan Zou, Xianxiang Yu, Jing Yang
2024 J jnl
IEEE Trans. Cogn. Commun. Netw.
Kai Zhong, Jinfeng Hu, Jun Liu, Dongxu An, Cunhua Pan, Kah Chan Teh, Xianxiang Yu, Huiyong Li
2024 J jnl
IEEE Trans. Veh. Technol.
Ruitao Liu, Xianxiang Yu, Wenqiang Wei, Guolong Cui, Kah Chan Teh
2024 conf
EUSIPCO
Tao Fan, Yi Wang, Xianxiang Yu, Guolong Cui, Wenmin Wang
2023 Misc conf
ICASSP
Xue Yao, Guolong Cui, Xianxiang Yu
2023 J jnl
Signal Process.
Xue Yao, Yu Liu, Hui Qiu, Zaichen Zhang, Xianxiang Yu, Guolong Cui
2023 J jnl
Remote. Sens.
Mohammad A. B. Mohammad, Guolong Cui, Xianxiang Yu, Maged Fakirah, Nihad A. A. Elhag
2023 J jnl
IEEE Trans. Veh. Technol.
Xinyu Liu, Tianxian Zhang, Qiao Shi, Xianxiang Yu, Guolong Cui, Lingjiang Kong
2023 J jnl
Remote. Sens.
Xue Yao, Bunian Pan, Tao Fan, Xianxiang Yu, Guolong Cui, Xiangfei Nie
2023 J jnl
Sci. China Inf. Sci.
Jing Yang, Xianxiang Yu, Minghui Sha, Wen Fan, Guolong Cui
2023 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Maosen Liao, Guolong Cui, Kui Xiong, Tao Fan, Xianxiang Yu
2023 J jnl
IEEE Trans. Geosci. Remote. Sens.
Jing Yang, Youshan Tan, Xianxiang Yu, Guolong Cui, Di Zhang
2023 J jnl
IEEE Signal Process. Lett.
Wenqiang Wei, Xianxiang Yu, Qinghui Lu, Xiangrong Wang, Guolong Cui
2022 J jnl
IEEE Geosci. Remote. Sens. Lett.
Yukai Kong, Xiang Wang, Changxin Wu, Xianxiang Yu, Guolong Cui
2022 J jnl
IEEE Trans. Geosci. Remote. Sens.
Yukai Kong, Xianxiang Yu, Tao Fan, Guolong Cui, Lingjiang Kong
2022 J jnl
Signal Process.
Qinghui Lu, Guolong Cui, Xianxiang Yu, Shiqiang Chen, Hongyin Kuang, Lingjiang Kong
2022 J jnl
Sci. China Inf. Sci.
Yi Bu, Hui Qiu, Tao Fan, Xianxiang Yu, Guolong Cui, Lingjiang Kong
2022 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Xianxiang Yu, Tao Fan, Hui Qiu, Ruijia Wang, Guolong Cui, Lingjiang Kong
2022 J jnl
IEEE Trans. Circuits Syst. II Express Briefs
Wenqiang Wei, Ruitao Liu, Xianxiang Yu, Guolong Cui
2022 conf
EUSIPCO
Xianxiang Yu, Xue Yao, Hui Qiu, Guolong Cui
2022 J jnl
IEEE Trans. Signal Process.
Xianxiang Yu, Xue Yao, Jing Yang, Lidong Zhang, Lingjiang Kong, Guolong Cui
2022 J jnl
IEEE Trans. Geosci. Remote. Sens.
Youshan Tan, Zhongyu Li, Jing Yang, Xianxiang Yu, Hongyang An, Junjie Wu, Jianyu Yang
2022 J jnl
IEEE Trans. Instrum. Meas.
Kui Xiong, Guolong Cui, Xianxiang Yu, Shiyuan Wang, Lingjiang Kong
2022 J jnl
Signal Process.
Xinyu Liu, Tianxian Zhang, Xianxiang Yu, Qiao Shi, Guolong Cui, Lingjiang Kong
2022 J jnl
IEEE Commun. Lett.
Kai Zhong, Jinfeng Hu, Cunhua Pan, Xianxiang Yu, Xinghe Li
2022 C conf
IGARSS
Hongyu Chen, Kangan Feng, Yukai Kong, Lidong Zhang, Xianxiang Yu, Wei Yi
2022 J jnl
IEEE Trans. Signal Process.
Jing Yang, Augusto Aubry, Antonio De Maio, Xianxiang Yu, Guolong Cui
2022 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Xianxiang Yu, Hui Qiu, Jing Yang, Wenqiang Wei, Guolong Cui, Lingjiang Kong
2022 J jnl
IEEE Trans. Veh. Technol.
Ashenafi Yadessa Gemechu, Guolong Cui, Xianxiang Yu
2022 J jnl
IEEE Syst. J.
Qiao Shi, Tianxian Zhang, Xianxiang Yu, Xinyu Liu, Inkyu Lee
2022 J jnl
IEEE Trans. Veh. Technol.
Ruitao Liu, Wei Zhang, Xianxiang Yu, Qinghui Lu, Wenqiang Wei, Lingjiang Kong, Guolong Cui
2022 J jnl
Signal Process.
Qiao Shi, Tianxian Zhang, Xianxiang Yu, Xinyu Liu, Inkyu Lee
2021 J jnl
Signal Process.
Yi Bu, Xianxiang Yu, Jing Yang, Tao Fan, Guolong Cui
2021 conf
ICCAIS
Ruitao Liu, Wenqiang Wei, Xianxiang Yu, Qinghui Lu, Guolong Cui, Xueli Fang, Lei Zhang
2021 conf
ICCAIS
Wenqiang Wei, Ruitao Liu, Xianxiang Yu, Qinghui Lu, Guolong Cui, Xueli Fang, Lei Zhang
2021 J jnl
Signal Process.
Mengmeng Ge, Xianxiang Yu, Zhengxin Yan, Guolong Cui, Lingjiang Kong
2021 J jnl
IEEE Trans. Geosci. Remote. Sens.
Guohao Sun, Zishu He, Jun Tong, Xianxiang Yu, Shengnan Shi
2021 conf
ICCC Workshops
Tuanwei Tian, Hao Deng, Jianhua Lu, Xianxiang Yu, Xianyuan Wang
2021 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Tao Fan, Xianxiang Yu, Na Gan, Yi Bu, Guolong Cui, Salvatore Iommelli
2021 J jnl
Signal Process.
Lifang Feng, Guolong Cui, Xianxiang Yu, Ruitao Liu, Qinghui Lu
2020 J jnl
Signal Process.
Weijian Zhang, Jinfeng Hu, Zhiyong Wei, Hong Ma, Xianxiang Yu, Huiyong Li
2020 J jnl
IEEE Signal Process. Lett.
Jing Yang, Augusto Aubry, Antonio De Maio, Xianxiang Yu, Guolong Cui
2020 conf
SAM
Xianxiang Yu, Guolong Cui, Zhenghong Zhang, Lin Zhou, Jing Yang, Lingjiang Kong
2020 J jnl
IEEE Trans. Veh. Technol.
Jing Yang, Guolong Cui, Xianxiang Yu, Lingjiang Kong
2020 J jnl
IEEE Access
Zhimei Hao, Xianxiang Yu, Na Gan, Guolong Cui
2020 J jnl
IEEE Trans. Veh. Technol.
Xianxiang Yu, Guolong Cui, Jing Yang, Lingjiang Kong
2020 J jnl
IEEE Trans. Signal Process.
Xianxiang Yu, Khaled Alhujaili, Guolong Cui, Vishal Monga
2020 conf
SAM
Mengmeng Ge, Guolong Cui, Zhenghong Zhang, Lin Zhou, Xianxiang Yu, Feng Yang, Lingjiang Kong
2020 J jnl
Digit. Signal Process.
Mengmeng Ge, Guolong Cui, Xianxiang Yu, Lingjiang Kong
2020 J jnl
Signal Process.
Lifang Feng, Guolong Cui, Xianxiang Yu, Zhenghong Zhang, Lingjiang Kong
2020 conf
SAM
Mohammad A. B. Mohammad, Guolong Cui, Xianxiang Yu, Mohammad Ahmed, Ashenafi Yadessa Gemechu
2020 J jnl
IEEE Trans. Signal Process.
Xianxiang Yu, Guolong Cui, Jing Yang, Jian Li, Lingjiang Kong
2020 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Khaled Alhujaili, Xianxiang Yu, Guolong Cui, Vishal Monga
2019 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Xianxiang Yu, Guolong Cui, Lingjiang Kong, Jian Li, Guan Gui
2019 J jnl
Sensors
Shijie Hao, Feng-Xiang Ge, Xianxiang Yu, Guolong Cui, Li Ma
2019 Misc conf
ACSSC
Xianxiang Yu, Khaled Alhujaili, Guolong Cui, Vishal Monga
2019 J jnl
IEEE Trans. Signal Process.
Xianxiang Yu, Guolong Cui, Jing Yang, Lingjiang Kong, Jian Li
2019 J jnl
Signal Process.
Xianxiang Yu, Guolong Cui, Jing Yang, Lingjiang Kong
2018 J jnl
IEEE Access
Jing Yang, Guolong Cui, Xianxiang Yu, Yindong Xiao, Lingjiang Kong
2018 J jnl
Signal Process.
Xianxiang Yu, Guolong Cui, Tianxian Zhang, Lingjiang Kong
2018 J jnl
IEEE Access
Guolong Cui, Jing Yang, Shuping Lu, Xianxiang Yu, Lingjiang Kong
2018 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Guolong Cui, Yue Fu, Xianxiang Yu, Jian Li
2018 J jnl
Signal Process.
Guolong Cui, Yue Fu, Xianxiang Yu, Jian Li, Guan Gui
2017 J jnl
Sensors
Jingjing Li, Xianxiang Yu, Guolong Cui
2017 J jnl
Signal Process.
Guolong Cui, Hongmin Ji, Vincenzo Carotenuto, Salvatore Iommelli, Xianxiang Yu
2017 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Guolong Cui, Xianxiang Yu, Ya Yang, Lingjiang Kong
2017 J jnl
Signal Process.
Guolong Cui, Xianxiang Yu, Marco Piezzo, Lingjiang Kong
2017 J jnl
IEEE Signal Process. Lett.
Guolong Cui, Yue Fu, Xianxiang Yu, Jian Li
2017 J jnl
IEEE Trans. Signal Process.
Guolong Cui, Xianxiang Yu, Goffredo Foglia, Yongwei Huang, Jian Li
2017 J jnl
EURASIP J. Adv. Signal Process.
Xianxiang Yu, Guolong Cui, Marco Piezzo, Salvatore Iommelli, Lingjiang Kong
2017 J jnl
IEEE Trans. Signal Process.
Guolong Cui, Xianxiang Yu, Vincenzo Carotenuto, Lingjiang Kong
2016 J jnl
IEEE Signal Process. Lett.
Guolong Cui, Xianxiang Yu, Salvatore Iommelli, Lingjiang Kong
2016 J jnl
EURASIP J. Adv. Signal Process.
Xianxiang Yu, Guolong Cui, Meifang Luo, Lingjiang Kong, Dan Ran
redb/extractors/macho_extractor.py
← Index redb/extractors/macho_extractor.py python
import logging
from abc import ABCMeta, abstractmethod
import inspect
import sys
import os

import machofile

from redb.extractors.extractor import Extractor

logger = logging.getLogger(__name__)


@abstractmethod
class MachOExtractor(Extractor, metaclass=ABCMeta):

    def __init__(
        self,
        filepath,
        log,
        exporters=None,
        index_prefix=None,
        elastic_index=None,
        known_benign=False,
        known_malicious=False,
        macho=None,
    ):
        # Read binary and parse machofile BEFORE calling super().__init__
        # This avoids reading the file twice
        with open(filepath, "rb") as f:
            binary_data = f.read()

        # Parse machofile with binary data
        self.macho = macho if macho else self._generate_machofile_object(binary_data)

        # Extract hashes from machofile to pass to parent
        precomputed_hashes = None
        if self.macho:
            try:
                general_info = self.macho.get_general_info()
                if general_info:
                    # For FAT binaries, get_general_info() returns dict with 'fat' key
                    # For single-arch, it returns the info directly
                    if 'fat' in general_info:
                        fat_info = general_info['fat']
                        precomputed_hashes = {
                            'MD5': fat_info.get('MD5'),
                            'SHA1': fat_info.get('SHA1'),
                            'SHA256': fat_info.get('SHA256'),
                        }
                    else:
                        precomputed_hashes = {
                            'MD5': general_info.get('MD5'),
                            'SHA1': general_info.get('SHA1'),
                            'SHA256': general_info.get('SHA256'),
                        }
            except Exception as e:
                logger.debug(f"Could not get hashes from machofile: {e}")

        super().__init__(
            filepath,
            log,
            exporters,
            index_prefix,
            elastic_index,
            known_benign,
            known_malicious,
            precomputed_hashes=precomputed_hashes,
        )

        # Store binary data so base class doesn't re-read
        self._binary_data = binary_data

    @property
    def binary(self):
        """Override to use already-read binary data."""
        return self._binary_data

    def _generate_machofile_object(self, binary_data):
        """Generate and parse a machofile object from binary data."""
        macho = None
        try:
            macho = machofile.UniversalMachO(data=binary_data)
            if not macho:
                raise Exception("Empty file?")

            # Parse the MachO object once during initialization
            macho.parse()

        except Exception as e:
            logger.error(f"Format error parsing MachO: {e}")
        return macho

    # def _is_macho_file(self):
    #     """Check if the file is a valid Mach-O binary."""
    #     try:
    #         if not self.macho:
    #             return False
            
    #         # For Universal/FAT binaries, check if any architecture is valid
    #         if hasattr(self.macho, 'is_fat') and self.macho.is_fat:
    #             return len(self.macho.architectures) > 0
    #         else:
    #             # Single architecture binary
    #             return hasattr(self.macho, 'macho') and self.macho.macho is not None
    #     except Exception as e:
    #         self.log.error(f"Error checking Mach-O file: {e}")
    #         return False

    def _is_signed(self):
        """Check if the Mach-O binary is code signed using new API."""
        try:
            if not self.macho:
                return False

            # Get architectures using new API
            architectures = self.macho.get_architectures()

            # For each architecture, check if signed
            for arch in architectures:
                try:
                    signature_info = self.macho.get_code_signature_info(arch=arch)
                    if signature_info and signature_info.get('signed', False):
                        return True
                except Exception:
                    continue

            return False
        except Exception as e:
            self.log.error(f"Error checking Mach-O signature: {e}")
            return False

    def _get_architectures(self):
        """Get list of architectures in the Mach-O binary using new API."""
        try:
            if not self.macho:
                return []

            # Use new API method
            architectures = self.macho.get_architectures()
            return architectures if architectures else []
        except Exception as e:
            self.log.error(f"Error getting architectures: {e}")
            return []

    # def _get_macho_for_arch(self, arch_name=None):
    #     """Get MachO instance for specific architecture or default."""
    #     try:
    #         if not self.macho:
    #             return None
            
    #         if hasattr(self.macho, 'is_fat') and self.macho.is_fat:
    #             if arch_name:
    #                 return self.macho.architectures.get(arch_name)
    #             else:
    #                 # Return first available architecture
    #                 return next(iter(self.macho.architectures.values())) if self.macho.architectures else None
    #         else:
    #             # Single architecture binary
    #             return self.macho.macho if hasattr(self.macho, 'macho') else None
    #     except Exception as e:
    #         self.log.error(f"Error getting MachO for architecture: {e}")
    #         return None

    # def _get_formatted_header_values(self, header):
    #     """Get both raw and human-readable header values."""
    #     try:
    #         macho_instance = self._get_macho_for_arch()
    #         if not macho_instance:
    #             return None
            
    #         # Parse the MachO if not already parsed
    #         if not hasattr(macho_instance, 'header') or not macho_instance.header:
    #             macho_instance.parse()
            
    #         # Get human-readable values using machofile's formatting methods
    #         magic_str = macho_instance.format_magic_value(header.get('magic', 0))
            
    #         # Simple CPU type mapping since CPU_TYPE_MAP is not exposed
    #         cputype = header.get('cputype', 0)
    #         if cputype == 0x7:
    #             cputype_str = "x86"
    #         elif cputype == 0x1000007:
    #             cputype_str = "x86_64"
    #         elif cputype == 0xC:
    #             cputype_str = "ARM"
    #         elif cputype == 0x100000C:
    #             cputype_str = "ARM 64-bit"
    #         else:
    #             cputype_str = str(cputype)
            
    #         cpusubtype_str = macho_instance.decode_cpusubtype(header.get('cputype', 0), header.get('cpusubtype', 0))
    #         filetype_str = macho_instance.format_file_type(header.get('filetype', 0))
    #         flags_str = macho_instance.decode_flags(header.get('flags', 0))
            
    #         return {
    #             'raw': {
    #                 'magic': header.get('magic', 0),
    #                 'cputype': header.get('cputype', 0),
    #                 'cpusubtype': header.get('cpusubtype', 0),
    #                 'filetype': header.get('filetype', 0),
    #                 'flags': header.get('flags', 0),
    #             },
    #             'formatted': {
    #                 'magic_str': magic_str,
    #                 'cputype_str': cputype_str,
    #                 'cpusubtype_str': cpusubtype_str,
    #                 'filetype_str': filetype_str,
    #                 'flags_str': flags_str,
    #             }
    #         }
    #     except Exception as e:
    #         self.log.error(f"Error formatting header values: {e}")
    #         return None