Xiaojun Chen

11 papers B 3C 1Journal 4Unranked 3
YearRankTypeTitle / Venue / Authors
2017 J jnl
IEEE Trans. Veh. Technol.
Zan Li, Fuhui Zhou, Xiaojun Chen, Yuquan Li, Feifei Gao
2015 B conf
GLOBECOM
Zan Li, Xiaojun Chen, Yuquan Li, Norman C. Beaulieu, Mohammad S. Obaidat
2014 C conf
CIT
Rui Gao, Xiaojun Chen, Zan Li, Mengqiu Yang, Haixun Chang
2011 J jnl
Sci. China Inf. Sci.
Xiaojun Chen, Jiangbo Si, Zan Li, Jueping Cai, Baoming Bai
2011 J jnl
Int. J. Commun. Syst.
Jueping Cai, Zan Li, Xiaojun Chen, Benjian Hao
2011 conf
ICC
Xiaojun Chen, Zan Li, Jiangbo Si, Benjian Hao, Baoming Bai
2011 J jnl
IEEE Commun. Lett.
Jiangbo Si, Zan Li, Xiaojun Chen, Benjian Hao, Zeng-Ji Liu
2009 B conf
WCNC
Zan Li, Jiangbo Si, Feng Lan, Xiaojun Chen
2009 B conf
WCNC
Zan Li, Jueping Cai, Xiaojun Chen, Xiaofeng Lu
2009 conf
ICC
Jiangbo Si, Zan Li, Zeng-Ji Liu, Xiaojun Chen
2008 conf
ICC
Xiaofeng Lu, Zan Li, Jueping Cai, Xiaojun Chen
redb/extractors/decompiler/bninja/analysis/api.py
← Index redb/extractors/decompiler/bninja/analysis/api.py python
from enum import Enum


class ApiCategory(Enum):
    FILE_OP = [
        "CreateFile",
        "ReadFile",
        "WriteFile",
        "DeleteFile",
        "SetFilePointer",
        "CopyFile",
        "MoveFile",
        "FindFirstFile",
        "FindNextFile",
    ]
    MEMORY_OP = [
        "VirtualAlloc",
        "VirtualFree",
        "HeapAlloc",
        "HeapFree",
        "LocalAlloc",
        "GlobalAlloc",
        "MapViewOfFile",
        "VirtualProtect",
    ]
    NETWORK_OP = [
        "socket",
        "connect",
        "bind",
        "send",
        "recv",
        "WSAStartup",
        "InternetOpen",
        "InternetConnect",
        "HttpOpenRequest",
        "HttpSendRequest",
        "InternetReadFile",
        "URLDownloadToFile",
    ]
    REGISTRY_OP = [
        "RegOpenKey",
        "RegCreateKey",
        "RegSetValue",
        "RegQueryValue",
        "RegDeleteKey",
        "RegEnumKey",
        "RegFlushKey",
    ]
    PROCESS_OP = [
        "CreateProcess",
        "OpenProcess",
        "TerminateProcess",
        "GetProcessId",
        "CreateProcessAsUser",
        "NtCreateProcess",
    ]
    THREAD_OP = [
        "CreateThread",
        "SuspendThread",
        "ResumeThread",
        "CreateRemoteThread",
        "SetThreadContext",
        "GetThreadContext",
    ]
    INJECTION_OP = [
        "WriteProcessMemory",
        "VirtualAllocEx",
        "NtWriteVirtualMemory",
        "SetWindowsHookEx",
        "QueueUserAPC",
        "NtMapViewOfSection",
    ]
    EVASION_OP = [
        "IsDebuggerPresent",
        "CheckRemoteDebuggerPresent",
        "NtQueryInformationProcess",
        "GetTickCount",
        "OutputDebugString",
        "Sleep",
        "QueryPerformanceCounter",
    ]
    SPYING_OP = [
        "GetAsyncKeyState",
        "GetKeyboardState",
        "GetKeyState",
        "GetForegroundWindow",
        "SetWindowsHookEx",
        "BitBlt",
        "GetClipboardData",
    ]
    SYSTEM_OP = [
        "CreateToolhelp32Snapshot",
        "EnumDeviceDrivers",
        "EnumProcesses",
        "GetSystemDirectoryA",
        "GetLogicalDrives",
    ]
    SERVICE_OP = [
        "CreateServiceA",
        "OpenServiceA",
        "StartServiceA",
        "DeleteService",
        "OpenSCManagerA",
        "ControlService",
    ]
    CRYPTO_OP = [
        "CryptAcquireContext",
        "CryptGenKey",
        "CryptEncrypt",
        "CryptDecrypt",
        "CryptCreateHash",
        "CryptHashData",
        "CryptGenRandom",
    ]
    DLL_OP = ["LoadLibrary", "GetProcAddress", "FreeLibrary", "LdrLoadDll"]
    UNKNOWN_OP = []

    @classmethod
    def from_api(cls, api_name):
        for category in cls:
            if any(api_name.startswith(api) for api in category.value):
                return category
        return cls.UNKNOWN_OP