Hanqing Jin

13 papers Journal 9Unranked 4
YearRankTypeTitle / Venue / Authors
2025 J jnl
CoRR
Hanqing Jin, Renyuan Xu, Yanzhao Yang
2021 J jnl
Manag. Sci.
Min Dai, Hanqing Jin, Steven Kou, Yuhong Xu
2021 conf
SBC@AsiaCCS
Zhijie Ren, Haitao Xiang, Ziheng Zhou, Ning Wang, Hanqing Jin
2020 J jnl
CoRR
Haitao Xiang, Zhijie Ren, Ziheng Zhou, Ning Wang, Hanqing Jin
2018 J jnl
Eur. J. Oper. Res.
Junna Bi, Hanqing Jin, Qingbin Meng
2017 J jnl
SIAM J. Control. Optim.
Ying Hu, Hanqing Jin, Xun Yu Zhou
2015 J jnl
Math. Oper. Res.
Xue Dong He, Hanqing Jin, Xun Yu Zhou
2012 J jnl
SIAM J. Control. Optim.
Ying Hu, Hanqing Jin, Xun Yu Zhou
2011 J jnl
J. Econ. Theory
Min Dai, Hanqing Jin, Hong Liu
2009 J jnl
J. Comput. Appl. Math.
Gang George Yin, Hanqing Jin, Zhuo Jin
2008 conf
CDC
Hanqing Jin, Xun Yu Zhou
2004 conf
CDC
Hanqing Jin, Jia-An Yan, Xun Yu Zhou
2003 conf
CDC
Tomasz R. Bielecki, Stanley R. Pliska, Hanqing Jin, Xun Yu Zhou
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