Xiangyu Fu

14 papers A* 1A 2C 2Journal 8Unranked 1
YearRankTypeTitle / Venue / Authors
2025 A conf
IROS
Fengyi Wang, Xiangyu Fu, Nitish V. Thakor, Gordon Cheng
2025 J jnl
CoRR
Fengyi Wang, Xiangyu Fu, Nitish V. Thakor, Gordon Cheng
2025 J jnl
CoRR
Fengyi Wang, Xiangyu Fu, Nitish V. Thakor, Gordon Cheng
2025 J jnl
CoRR
Yang Qiu, Yixiong Zou, Jun Wang, Wei Liu, Xiangyu Fu, Ruixuan Li
2024 C conf
INDIN
Junsheng Ding, Xiangyu Fu, Tiantian Wei, Alexander Perzylo
2024 conf
BioRob
Fengyi Wang, Xiangyu Fu, Nitish V. Thakor, Gordon Cheng
2023 J jnl
Remote. Sens.
Xiangyu Fu, Qiangyu Zeng, Ming Zhu, Tao Zhang, Hao Wang, Qingqing Chen, Qiu Yu, Linlin Xie
2023 J jnl
Remote. Sens.
Qiu Yu, Ming Zhu, Qiangyu Zeng, Hao Wang, Qingqing Chen, Xiangyu Fu, Zhipeng Qing
2020 J jnl
IEEE Trans. Syst. Man Cybern. Syst.
Zhe Liu, Weidong Chen, Hesheng Wang, Yun-Hui Liu, Yi Shen, Xiangyu Fu
2019 J jnl
CoRR
Weixin Lu, Guowei Wan, Yao Zhou, Xiangyu Fu, Pengfei Yuan, Shiyu Song
2019 A* conf
ICCV
Weixin Lu, Guowei Wan, Yao Zhou, Xiangyu Fu, Pengfei Yuan, Shiyu Song
2019 J jnl
IEEE J. Biomed. Health Informatics
Yanyun Tao, Yenming J. Chen, Xiangyu Fu, Bin Jiang, Yuzhen Zhang
2016 C conf
IAS
Xiangyu Fu, Weidong Chen, Zhe Liu, Jingchuan Wang, Hesheng Wang
2015 A conf
IROS
Zhe Liu, Jianjun Ju, Weidong Chen, Xiangyu Fu, Hesheng Wang
redb/extractors/decompiler/bninja/function_type.py
← Index redb/extractors/decompiler/bninja/function_type.py python
from enum import Enum

import binaryninja


class FunctionType(Enum):
    USER = "USER"
    LIBRARY = "LIBRARY"
    EXTERNAL = "EXTERNAL"
    THUNK = "THUNK"
    UNKNOWN = "UNKNOWN"


class FunctionTypeAnalysis:
    """Get the function kind based on the symbol type associated to this function"""

    def __init__(self, function):
        """Sets the function type dependent on the symbol type associated to this function. If
        any errors occur, then returns UNKNOWN
        """
        self.func_type = FunctionType.USER

        try:
            symbol_type = function.symbol.type
            # Check if it's an external function (there should not be, already skipping these)
            if symbol_type == binaryninja.enums.SymbolType.ImportedFunctionSymbol:
                self.func_type = FunctionType.EXTERNAL

            # Library functions detected by Binary Ninja
            if symbol_type == binaryninja.enums.SymbolType.LibraryFunctionSymbol:
                self.func_type = FunctionType.LIBRARY

            # Check if it's a thunk function
            if function.is_thunk:
                self.func_type = FunctionType.THUNK

        except Exception as _:
            self.func_type = FunctionType.UNKNOWN

    def get_function_type(self):
        return self.func_type