Wan-Lei Zhao

44 papers A* 4A 5Journal 32Unranked 3
YearRankTypeTitle / Venue / Authors
2025 J jnl
CoRR
Qi-Ying Sun, Wan-Lei Zhao, Yi-Bo Miao, Chong-Wah Ngo
2025 J jnl
IEEE Trans. Big Data
Jie-Feng Wang, Wan-Lei Zhao, Shihai Xiao, Jiajie Yao, Xuecang Zhang
2025 A* conf
SIGIR
Cheng Zhang, Jianzhi Wang, Wan-Lei Zhao, Shihai Xiao
2025 J jnl
Int. J. Mach. Learn. Cybern.
Min-Hua Zheng, Shi-Ying Lan, Wan-Lei Zhao, Jie Zhao
2023 A conf
ICME
Gao-Dong Liu, Wan-Lei Zhao, Jie Zhao
2023 J jnl
IEEE Trans. Intell. Transp. Syst.
Wei Chen, Jie Zhao, Wan-Lei Zhao, Song-Yuan Wu
2022 J jnl
IEEE Trans. Multim.
Wan-Lei Zhao, Hui Wang, Chong-Wah Ngo
2022 J jnl
ACM Trans. Multim. Comput. Commun. Appl.
Hui-Chu Xiao, Wan-Lei Zhao, Jie Lin, Yi-Geng Hong, Chong-Wah Ngo
2022 J jnl
CoRR
Hui Wang, Yong Wang, Wan-Lei Zhao
2022 J jnl
IEEE Trans. Big Data
Wan-Lei Zhao, Hui Wang, Peng-Cheng Lin, Chong-Wah Ngo
2022 A conf
ICME
Gao-Dong Liu, Wan-Lei Zhao, Jie Zhao
2022 J jnl
CoRR
Gao-Dong Liu, Wan-Lei Zhao, Jie Zhao
2022 J jnl
CoRR
Wei Chen, Jie Zhao, Wan-Lei Zhao, Song-Yuan Wu
2021 J jnl
Neurocomputing
Run-Qing Chen, Guang-Hui Shi, Wan-Lei Zhao, Chang-Hui Liang
2021 J jnl
CoRR
Shi-Ying Lan, Run-Qing Chen, Wan-Lei Zhao
2021 J jnl
Pattern Recognit. Lett.
Chang-Hui Liang, Wan-Lei Zhao, Run-Qing Chen
2021 A conf
CIKM
Hui Wang, Wan-Lei Zhao, Xiangxiang Zeng, Jianye Yang
2021 J jnl
Neurocomputing
Jie Lin, Yu Zhan, Wan-Lei Zhao
2021 J jnl
J. Vis. Commun. Image Represent.
Yu Zhan, Wan-Lei Zhao
2021 J jnl
CoRR
Hui Wang, Wan-Lei Zhao, Xiangxiang Zeng
2021 A* conf
ACM Multimedia
Yi-Geng Hong, Hui-Chu Xiao, Wan-Lei Zhao
2021 J jnl
CoRR
Yi-Geng Hong, Hui-Chu Xiao, Wan-Lei Zhao
2021 A conf
CIKM
Wan-Lei Zhao, Shi-Ying Lan, Run-Qing Chen, Chong-Wah Ngo
2020 J jnl
CoRR
Hui-Chu Xiao, Wan-Lei Zhao, Jie Lin, Chong-Wah Ngo
2020 J jnl
CoRR
Chang-Hui Liang, Wan-Lei Zhao, Run-Qing Chen
2020 J jnl
CoRR
Wan-Lei Zhao, Run-Qing Chen, Hui Ye, Chong-Wah Ngo
2019 J jnl
CoRR
Peng-Cheng Lin, Wan-Lei Zhao
2019 J jnl
CoRR
Peng-Cheng Lin, Wan-Lei Zhao
2019 J jnl
Multim. Tools Appl.
Xiuwen Liu, Zhi Liu, Qihan Jiao, Olivier Le Meur, Wan-Lei Zhao
2019 J jnl
CoRR
Run-Qing Chen, Guang-Hui Shi, Wan-Lei Zhao, Chang-Hui Liang
2018 J jnl
CoRR
Cheng-Hao Deng, Wan-Lei Zhao
2018 A* conf
ICDE
Cheng-Hao Deng, Wan-Lei Zhao
2018 J jnl
CoRR
Yu Zhan, Wan-Lei Zhao
2018 J jnl
IEEE Trans. Cybern.
Guanjun Guo, Hanzi Wang, Wan-Lei Zhao, Yan Yan, Xuelong Li
2018 J jnl
CoRR
Wan-Lei Zhao
2017 conf
ICIMCS
Jie Yang, Wan-Lei Zhao, Cheng-Hao Deng, Hanzi Wang, Sangwhan Moon
2017 J jnl
CoRR
Cheng-Hao Deng, Wan-Lei Zhao
2017 J jnl
CoRR
Wan-Lei Zhao, Jie Yang, Cheng-Hao Deng
2015 J jnl
IEEE Signal Process. Lett.
Linwei Ye, Zhi Liu, Junhao Li, Wan-Lei Zhao, Liquan Shen
2015 J jnl
Multim. Tools Appl.
Cong Bai, Jinglin Zhang, Zhi Liu, Wan-Lei Zhao
2013 conf
VISAPP (1)
Wan-Lei Zhao, Wonmin Byeon, Thomas M. Breuel
2013 A conf
BMVC
Wan-Lei Zhao, Guillaume Gravier, Hervé Jégou
2013 A* conf
ACM Multimedia
Wan-Lei Zhao, Hervé Jégou, Guillaume Gravier
2011 conf
TRECVID
Wan-Lei Zhao, Damian Borth, Thomas M. Breuel
redb/extractors/decompiler/bninja/analysis/medium_level_normalization.py
← Index redb/extractors/decompiler/bninja/analysis/medium_level_normalization.py python
from binaryninja import (
    MediumLevelILInstruction,
    Variable, SSAVariable,
    ILIntrinsic,
)


class MediumLevelNormalization:
    def __init__(self):
        return

    def _collect_ops(self, il, ops):
        if il is None:
            return
        ops.append(int(il.operation))
        operands = getattr(il, "operands", None)
        if not operands:
            return
        for op in operands:
            if isinstance(op, MediumLevelILInstruction):
                self._collect_ops(op, ops)
            elif isinstance(op, (list, tuple)):
                for sub in op:
                    if isinstance(sub, MediumLevelILInstruction):
                        self._collect_ops(sub, ops)

    def normalize_instruction_all_levels(self, instr_il):
        ops = []
        self._collect_ops(instr_il, ops)
        return ops

    def _leaf_type(self, val):
        if isinstance(val, SSAVariable):
            return "SSA_VAR"
        if isinstance(val, Variable):
            return "VAR"
        if isinstance(val, ILIntrinsic):
            return "INTRINSIC"
        if isinstance(val, bool):
            return "BOOL"
        if isinstance(val, float):
            return "FLOAT_CONST"
        if isinstance(val, int):
            return "CONST"
        if isinstance(val, str):
            return "STR"
        return type(val).__name__.upper()

    def _collect(self, il, out_op):
        if il is None:
            return
        out_op.append(int(il.operation))
        operands = getattr(il, "operands", None)
        if not operands:
            return
        for op in operands:
            if isinstance(op, MediumLevelILInstruction):
                self._collect(op, out_op)
            elif isinstance(op, (list, tuple)):
                for sub in op:
                    if isinstance(sub, MediumLevelILInstruction):
                        self._collect(sub, out_op)
                    else:
                        out_op.append(self._leaf_type(sub))
            else:
                out_op.append(self._leaf_type(op))

    def normalize_instr_with_operands(self, instr_il):
        ops = []
        self._collect(instr_il, ops)
        return ops