def METHOD_NAME(instruction):
    if CS_GRP_INT not in instruction.groups:
        return None
    syscall_register = pwndbg.lib.abi.ABI.syscall().syscall_register
    syscall_arch = pwndbg.gdblib.arch.current
    # On x86/x64 `syscall` and `int <value>` instructions are in CS_GRP_INT
    # but only `syscall` and `int 0x80` actually execute syscalls on Linux.
    # So here, we return no syscall name for other instructions and we also
    # handle a case when 32-bit syscalls are executed on x64
    if syscall_register in ("eax", "rax"):
        mnemonic = instruction.mnemonic
        is_32bit = mnemonic == "int" and instruction.op_str == "0x80"
        if not (mnemonic == "syscall" or is_32bit):
            return None
        # On x64 the int 0x80 instruction executes 32-bit syscalls from i386
        # On x86, the syscall_arch is already i386, so its all fine
        if is_32bit:
            syscall_arch = "i386"
    syscall_number = getattr(pwndbg.gdblib.regs, syscall_register)
    return pwndbg.constants.syscall(syscall_number, syscall_arch) or "<unk_%d>" % syscall_number