neo-decompiler 0.8.1

Neo N3 NEF decompiler: parse, disassemble, lift bytecode to high-level pseudocode and C# skeletons, with a CLI, JSON reports, and optional WebAssembly bindings.
Documentation
// This file is @generated by tools/scrape_syscalls.py. Do not edit manually.

pub struct SyscallInfo {
    pub hash: u32,
    pub name: &'static str,
    pub handler: &'static str,
    pub price: &'static str,
    pub call_flags: &'static str,
    pub returns_value: bool,
    /// Number of evaluation-stack arguments consumed by this syscall.
    pub param_count: u8,
}

pub const SYSCALLS: &[SyscallInfo] = &[
    SyscallInfo { hash: 0x028799CF, name: "System.Contract.CreateStandardAccount", handler: "CreateStandardAccount", price: "0", call_flags: "CallFlags.None", returns_value: true, param_count: 1 },
    SyscallInfo { hash: 0x0388C3B7, name: "System.Runtime.GetTime", handler: "GetTime", price: "1 << 3", call_flags: "CallFlags.None", returns_value: true, param_count: 0 },
    SyscallInfo { hash: 0x09E9336A, name: "System.Contract.CreateMultisigAccount", handler: "CreateMultisigAccount", price: "0", call_flags: "CallFlags.None", returns_value: true, param_count: 2 },
    SyscallInfo { hash: 0x0AE30C39, name: "System.Storage.Local.Put", handler: "PutLocal", price: "1 << 15", call_flags: "CallFlags.WriteStates", returns_value: false, param_count: 2 },
    SyscallInfo { hash: 0x165DA144, name: "System.Contract.NativePostPersist", handler: "NativePostPersistAsync", price: "0", call_flags: "CallFlags.States", returns_value: false, param_count: 0 },
    SyscallInfo { hash: 0x1DBF54F3, name: "System.Iterator.Value", handler: "IteratorValue", price: "1 << 4", call_flags: "CallFlags.None", returns_value: true, param_count: 1 },
    SyscallInfo { hash: 0x27B3E756, name: "System.Crypto.CheckSig", handler: "CheckSig", price: "CheckSigPrice", call_flags: "CallFlags.None", returns_value: true, param_count: 2 },
    SyscallInfo { hash: 0x28A9DE6B, name: "System.Runtime.GetRandom", handler: "GetRandom", price: "0", call_flags: "CallFlags.None", returns_value: true, param_count: 0 },
    SyscallInfo { hash: 0x3008512D, name: "System.Runtime.GetScriptContainer", handler: "GetScriptContainer", price: "1 << 3", call_flags: "CallFlags.None", returns_value: true, param_count: 0 },
    SyscallInfo { hash: 0x31E85D92, name: "System.Storage.Get", handler: "Get", price: "1 << 15", call_flags: "CallFlags.ReadStates", returns_value: true, param_count: 2 },
    SyscallInfo { hash: 0x38E2B4F9, name: "System.Runtime.GetEntryScriptHash", handler: "EntryScriptHash", price: "1 << 4", call_flags: "CallFlags.None", returns_value: true, param_count: 0 },
    SyscallInfo { hash: 0x3ADCD09E, name: "System.Crypto.CheckMultisig", handler: "CheckMultisig", price: "0", call_flags: "CallFlags.None", returns_value: true, param_count: 2 },
    SyscallInfo { hash: 0x3C6E5339, name: "System.Runtime.GetCallingScriptHash", handler: "CallingScriptHash", price: "1 << 4", call_flags: "CallFlags.None", returns_value: true, param_count: 0 },
    SyscallInfo { hash: 0x43112784, name: "System.Runtime.GetInvocationCounter", handler: "GetInvocationCounter", price: "1 << 4", call_flags: "CallFlags.None", returns_value: true, param_count: 0 },
    SyscallInfo { hash: 0x525B7D62, name: "System.Contract.Call", handler: "CallContract", price: "1 << 15", call_flags: "CallFlags.ReadStates | CallFlags.AllowCall", returns_value: true, param_count: 4 },
    SyscallInfo { hash: 0x616F0195, name: "System.Runtime.Notify", handler: "RuntimeNotify", price: "1 << 15", call_flags: "CallFlags.AllowNotify", returns_value: false, param_count: 2 },
    SyscallInfo { hash: 0x677BF71A, name: "System.Contract.CallNative", handler: "CallNativeContract", price: "0", call_flags: "CallFlags.None", returns_value: true, param_count: 1 },
    SyscallInfo { hash: 0x74A8FEDB, name: "System.Runtime.GetExecutingScriptHash", handler: "CurrentScriptHash", price: "1 << 4", call_flags: "CallFlags.None", returns_value: true, param_count: 0 },
    SyscallInfo { hash: 0x813ADA95, name: "System.Contract.GetCallFlags", handler: "GetCallFlags", price: "1 << 10", call_flags: "CallFlags.None", returns_value: true, param_count: 0 },
    SyscallInfo { hash: 0x84183FE6, name: "System.Storage.Put", handler: "Put", price: "1 << 15", call_flags: "CallFlags.WriteStates", returns_value: false, param_count: 3 },
    SyscallInfo { hash: 0x8B18F1AC, name: "System.Runtime.CurrentSigners", handler: "GetCurrentSigners", price: "1 << 4", call_flags: "CallFlags.None", returns_value: true, param_count: 0 },
    SyscallInfo { hash: 0x8CEC27F8, name: "System.Runtime.CheckWitness", handler: "CheckWitness", price: "1 << 10", call_flags: "CallFlags.None", returns_value: true, param_count: 1 },
    SyscallInfo { hash: 0x8F800CB3, name: "System.Runtime.LoadScript", handler: "RuntimeLoadScript", price: "1 << 15", call_flags: "CallFlags.AllowCall", returns_value: true, param_count: 3 },
    SyscallInfo { hash: 0x93BCDB2E, name: "System.Contract.NativeOnPersist", handler: "NativeOnPersistAsync", price: "0", call_flags: "CallFlags.States", returns_value: false, param_count: 0 },
    SyscallInfo { hash: 0x94F55475, name: "System.Storage.Local.Delete", handler: "DeleteLocal", price: "1 << 15", call_flags: "CallFlags.WriteStates", returns_value: false, param_count: 1 },
    SyscallInfo { hash: 0x9647E7CF, name: "System.Runtime.Log", handler: "RuntimeLog", price: "1 << 15", call_flags: "CallFlags.AllowNotify", returns_value: false, param_count: 1 },
    SyscallInfo { hash: 0x9AB830DF, name: "System.Storage.Find", handler: "Find", price: "1 << 15", call_flags: "CallFlags.ReadStates", returns_value: true, param_count: 3 },
    SyscallInfo { hash: 0x9CED089C, name: "System.Iterator.Next", handler: "IteratorNext", price: "1 << 15", call_flags: "CallFlags.None", returns_value: true, param_count: 1 },
    SyscallInfo { hash: 0xA0387DE9, name: "System.Runtime.GetTrigger", handler: "Trigger", price: "1 << 3", call_flags: "CallFlags.None", returns_value: true, param_count: 0 },
    SyscallInfo { hash: 0xBC8C5AC3, name: "System.Runtime.BurnGas", handler: "BurnGas", price: "1 << 4", call_flags: "CallFlags.None", returns_value: false, param_count: 1 },
    SyscallInfo { hash: 0xCE67F69B, name: "System.Storage.GetContext", handler: "GetStorageContext", price: "1 << 4", call_flags: "CallFlags.ReadStates", returns_value: true, param_count: 0 },
    SyscallInfo { hash: 0xCED88814, name: "System.Runtime.GasLeft", handler: "GasLeft", price: "1 << 4", call_flags: "CallFlags.None", returns_value: true, param_count: 0 },
    SyscallInfo { hash: 0xDC92494C, name: "System.Runtime.GetAddressVersion", handler: "GetAddressVersion", price: "1 << 3", call_flags: "CallFlags.None", returns_value: true, param_count: 0 },
    SyscallInfo { hash: 0xE0A0FBC5, name: "System.Runtime.GetNetwork", handler: "GetNetwork", price: "1 << 3", call_flags: "CallFlags.None", returns_value: true, param_count: 0 },
    SyscallInfo { hash: 0xE26BB4F6, name: "System.Storage.GetReadOnlyContext", handler: "GetReadOnlyContext", price: "1 << 4", call_flags: "CallFlags.ReadStates", returns_value: true, param_count: 0 },
    SyscallInfo { hash: 0xE85E8DD5, name: "System.Storage.Local.Get", handler: "GetLocal", price: "1 << 15", call_flags: "CallFlags.ReadStates", returns_value: true, param_count: 1 },
    SyscallInfo { hash: 0xE9BF4C76, name: "System.Storage.AsReadOnly", handler: "AsReadOnly", price: "1 << 4", call_flags: "CallFlags.ReadStates", returns_value: true, param_count: 1 },
    SyscallInfo { hash: 0xEDC5582F, name: "System.Storage.Delete", handler: "Delete", price: "1 << 15", call_flags: "CallFlags.WriteStates", returns_value: false, param_count: 2 },
    SyscallInfo { hash: 0xF1354327, name: "System.Runtime.GetNotifications", handler: "GetNotifications", price: "1 << 12", call_flags: "CallFlags.None", returns_value: true, param_count: 1 },
    SyscallInfo { hash: 0xF3527607, name: "System.Storage.Local.Find", handler: "FindLocal", price: "1 << 15", call_flags: "CallFlags.ReadStates", returns_value: true, param_count: 2 },
    SyscallInfo { hash: 0xF6FC79B2, name: "System.Runtime.Platform", handler: "GetPlatform", price: "1 << 3", call_flags: "CallFlags.None", returns_value: true, param_count: 0 },
];