示例#1
0
        internal static void Decompile(DecompilerContext context, DecompilerTableEntry entry, ref List <object> operands, ref List <int> branchTargets)
        {
            operands.Add(context.DecompileExpression());

            var offset = context.ReadUInt16();

            operands.Add(offset);

            branchTargets.Add(offset);
        }
示例#2
0
        internal static void Decompile(DecompilerContext context, DecompilerTableEntry entry, ref List <object> operands, ref List <int> branchTargets)
        {
            operands.Add(context.DecompileExpression());

            var optionsCount = (int)context.Reader.ReadUInt16();

            var options = new List <Option>();

            for (var i = 0; i < optionsCount; ++i)
            {
                var option = new Option(context.Reader.ReadUInt16(), context.Reader.ReadUInt16());
                options.Add(option);
                branchTargets.Add(option.Offset);
            }

            operands.Add(options.ToArray());

            var offset = context.Reader.ReadUInt16();

            operands.Add(offset);

            branchTargets.Add(offset);
        }
示例#3
0
 internal static void Decompile2(DecompilerContext context, DecompilerTableEntry entry, ref List <object> operands, ref List <int> branchTargets)
 {
     InternalDecompile(context, ref operands, 4);
 }