Wei Zhang

13 papers Journal 12Unranked 1
YearRankTypeTitle / Venue / Authors
2023 J jnl
IEEE Access
Yue Liu, Shu-Lin Wang, Jun-Feng Zhang, Wei Zhang, Wen Li
2022 conf
BIBM
Yue Liu, Junfeng Zhang, Shulin Wang, Wei Zhang, Xiangxiang Zeng, Chee Keong Kwoh
2022 J jnl
Briefings Bioinform.
Yue Liu, Junfeng Zhang, Shu-Lin Wang, Xiangxiang Zeng, Wei Zhang
2021 J jnl
Neurocomputing
Yue Liu, Shu-Lin Wang, Jun-Feng Zhang, Wei Zhang, Wen Li
2021 J jnl
IEEE ACM Trans. Comput. Biol. Bioinform.
Yue Liu, Shu-Lin Wang, Jun-Feng Zhang, Wei Zhang, Su Zhou, Wen Li
2021 J jnl
J. Comput. Biol.
Wei Zhang, Shu-Lin Wang, Yue Liu
2020 J jnl
IEEE Access
Wei Zhang, Yue Liu, Lei Wang
2019 J jnl
IEEE ACM Trans. Comput. Biol. Bioinform.
Wei Zhang, Shu-Lin Wang
2019 J jnl
J. Comput. Biol.
Guo Mao, Shu-Lin Wang, Wei Zhang
2018 J jnl
Comput. Biol. Chem.
Wei Zhang, Shu-Lin Wang
2018 J jnl
IEEE Access
Wei Zhang, Shu-Lin Wang
2018 J jnl
J. Bioinform. Comput. Biol.
Dan Luo, Shu-Lin Wang, Jianwen Fang, Wei Zhang
2017 J jnl
J. Comput. Biol.
Chao Pei, Shu-Lin Wang, Jianwen Fang, Wei Zhang
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