{
  "identity": {
    "args": ["obj"]
  },

  "1/": {
    "args": ["x"]
  },

  "+": {
    "args": ["x", "y"]
  },

  "-": {
    "args": ["x", "y"]
  },

  "*": {
    "args": ["x", "y"]
  },

  "/": {
    "args": ["x", "y"]
  },

  "ash": {
    "args": ["value", "shift-amount"]
  },

  "mod": {
    "args": ["x", "y"]
  },

  "rem": {
    "args": ["x", "y"]
  },

  "abs": {
    "args": ["x"]
  },

  "min": {
    "args": ["x", "y"]
  },

  "max": {
    "args": ["x", "y"]
  },

  "logior": {
    "args": ["x", "y"]
  },

  "logand": {
    "args": ["x", "y"]
  },

  "lognor": {
    "args": ["x", "y"]
  },

  "logxor": {
    "args": ["x", "y"]
  },

  "lognot": {
    "args": ["x"]
  },

  "basic-type?": {
    "args": ["obj", "parent-type"],
    "vars": { "v1-0": "obj-type", "a0-1": "end-type" }
  },

  "type-type?": {
    "args": ["child-type", "parent-type"],
    "vars": { "v1-0": "end-type" }
  },

  "find-parent-method": {
    "args": ["child-type", "method-id"],
    "vars": {
      "v0-0": "current-method",
      "v1-2": "original-method",
      "v1-5": "unused1"
    }
  },

  "ref": {
    "args": ["lst", "index"],
    "vars": { "v1-0": "count" }
  },

  "(method 4 pair)": {
    "vars": { "v0-0": "result", "v1-1": "iter" }
  },

  "last": {
    "args": ["lst"],
    "vars": { "v0-0": "iter" }
  },
  "member": {
    "args": ["obj", "lst"],
    "vars": { "v1-0": "iter" }
  },
  "nmember": {
    "args": ["obj", "lst"]
  },
  "assoc": {
    "args": ["item", "alist"],
    "vars": { "v1-0": "iter" }
  },
  "assoce": {
    "args": ["item", "alist"],
    "vars": { "v1-0": "iter" }
  },
  "nassoc": {
    "args": ["item-name", "alist"],
    "vars": { "a1-1": "key" }
  },
  "nassoce": {
    "args": ["item-name", "alist"],
    "vars": { "s4-0": "key" }
  },
  "append!": {
    "args": ["front", "back"],
    "vars": { "v1-1": "iter" }
  },
  "delete!": {
    "args": ["item", "lst"],
    "vars": { "a2-0": "iter", "v1-1": "iter-prev" }
  },
  "delete-car!": {
    "args": ["item", "lst"],
    "vars": { "a2-0": "iter", "v1-2": "iter-prev" }
  },
  "insert-cons!": {
    "args": ["kv", "alist"],
    "vars": { "a3-0": "updated-list" }
  },
  "sort": {
    "args": ["lst", "compare-func"],
    "vars": {
      "s4-0": "unsorted-count",
      "s3-0": "iter",
      "s2-0": "first-elt",
      "s1-0": "second-elt",
      "v1-1": "compare-result"
    }
  },
  "(method 0 inline-array-class)": {
    "args": ["allocation", "type-to-make", "size"],
    "vars": { "v0-0": "obj" }
  },
  "(method 0 array)": {
    "args": ["allocation", "type-to-make", "content-type", "len"],
    "vars": { "v0-1": "obj" }
  },

  "(method 2 array)": {
    "vars": { "v1-1": "content-type-sym" }
  },

  "(method 3 array)": {
    "vars": { "v1-1": "content-type-sym" }
  },

  "mem-copy!": {
    "args": ["dst", "src", "size"],
    "vars": { "v0-0": "result", "v1-0": "i" }
  },
  "qmem-copy<-!": {
    "args": ["dst", "src", "size"],
    "vars": { "v0-0": "result", "v1-1": "qwc", "a2-1": "value" }
  },
  "qmem-copy->!": {
    "args": ["dst", "src", "size"],
    "vars": {
      "v0-0": "result",
      "v1-1": "qwc",
      "a1-1": "src-ptr",
      "a0-1": "dst-ptr",
      "a2-3": "value"
    }
  },
  "mem-set32!": {
    "args": ["dst", "size", "value"],
    "vars": { "v0-0": "result", "v1-0": "i" }
  },
  "mem-or!": {
    "args": ["dst", "src", "size"],
    "vars": { "v0-0": "result", "v1-0": "i" }
  },
  "fact": {
    "args": ["x"]
  },
  "mem-print": {
    "args": ["data", "word-count"],
    "vars": { "s4-0": "current-qword" }
  },
  "print-tree-bitmask": {
    "args": ["bits", "count"],
    "vars": { "s4-0": "i" }
  },
  "valid?": {
    "args": ["obj", "expected-type", "name", "allow-false", "print-dest"],
    "vars": { "v1-1": "in-goal-mem" }
  },

  // GKERNEL

  "(method 0 cpu-thread)": {
    "vars": { "v0-0": ["obj", "cpu-thread"] }
  },

  "inspect-process-heap": {
    "vars": { "s5-0": ["obj", "pointer"] }
  },

  "(method 23 dead-pool-heap)": {
    "args": ["this", "rec"]
  },

  "(method 0 dead-pool-heap)": {
    "vars": { "v0-0": ["obj", "dead-pool-heap"] }
  },

  "seek": {
    "args": ["x", "target", "diff"],
    "vars": { "f2-0": "err" }
  },

  "lerp": {
    "args": ["minimum", "maximum", "amount"]
  },

  "lerp-scale": {
    "args": ["min-out", "max-out", "in", "min-in", "max-in"],
    "vars": { "f0-1": "scale" }
  },

  "lerp-clamp": {
    "args": ["minimum", "maximum", "amount"]
  },

  "rand-vu-int-range": {
    "args": ["first", "second"],
    "vars": { "f0-4": "float-in-range" }
  },

  "(method 0 bit-array)": {
    "args": ["allocation", "type-to-make", "length"],
    "vars": { "v0-0": "obj" }
  },

  "(method 12 bit-array)": {
    "vars": { "v1-2": "idx" }
  },

  "box-vector-enside?": {
    "args": ["box", "pt"]
  },

  "box-vector-inside?": {
    "args": ["box", "pt"]
  },

  "string=": {
    "args": ["str-a", "str-b"],
    "vars": { "a2-0": "a-ptr", "v1-0": "b-ptr" }
  },

  "string-charp=": {
    "args": ["str", "charp"],
    "vars": { "v1-0": "str-ptr" }
  },

  "copyn-string<-charp": {
    "args": ["str", "charp", "len"],
    "vars": { "a3-0": "i", "v1-0": "str-ptr" }
  },

  "string<-charp": {
    "args": ["str", "charp"],
    "vars": { "v1-0": "str-ptr" }
  },

  "charp<-string": {
    "args": ["charp", "str"],
    "vars": { "v1-0": "str-ptr" }
  },

  "copy-charp<-charp": {
    "args": ["dst", "src"]
  },

  "cat-string<-string": {
    "args": ["a", "b"],
    "vars": { "v1-0": "a-ptr", "a1-1": "b-ptr" }
  },

  "catn-string<-charp": {
    "args": ["a", "b", "len"],
    "vars": { "v1-0": "a-ptr", "a3-2": "i" }
  },

  "cat-string<-string_to_charp": {
    "args": ["a", "b", "end-ptr"],
    "vars": { "v1-0": "b-ptr", "v0-0": "a-ptr" }
  },

  "append-character-to-string": {
    "args": ["str", "char"],
    "vars": { "v1-0": "str-ptr" }
  },

  "charp-basename": {
    "args": ["charp"],
    "vars": { "v1-0": "ptr" }
  },

  "string<?": {
    "args": ["a", "b"],
    "vars": { "s4-1": "len", "v1-4": "i" }
  },

  "string>?": {
    "args": ["a", "b"],
    "vars": { "s4-1": "len", "v1-4": "i" }
  },
  "string<=?": {
    "args": ["a", "b"],
    "vars": { "s4-1": "len", "v1-4": "i" }
  },
  "string>=?": {
    "args": ["a", "b"],
    "vars": { "s4-1": "len", "v1-4": "i" }
  },
  "string-cat-to-last-char": {
    "args": ["base-str", "append-str", "char"],
    "vars": { "s4-0": "end-of-append", "v1-0": "location-of-char" }
  },
  "string-suck-up!": {
    "args": ["str", "location"],
    "vars": { "v1-2": "str-ptr" }
  },
  "string-strip-trailing-whitespace!": {
    "args": ["str"],
    "vars": { "v1-6": "ptr" }
  },

  "string-get-arg!!": {
    "args": ["a-str", "arg"],
    "vars": { "s4-0": "arg-word-start", "s4-1": "arg-end", "v1-3": "arg-start" }
  },

  "string->int": {
    "args": ["str"],
    "vars": {
      "a0-1": "str-ptr",
      "v0-0": "result",
      "a0-2": "next-char-1",
      "a0-3": "next-char-2"
    }
  },

  "string-get-flag!!": {
    "args": ["result", "in", "first-flag", "second-flag"]
  },

  "(method 0 state)": {
    "args": [
      "allocation",
      "type-to-make",
      "name",
      "code",
      "trans",
      "enter",
      "exit",
      "event"
    ],
    "vars": { "v0-0": "obj" }
  },

  "previous-brother": {
    "args": ["proc"],
    "vars": { "v1-0": "parent", "v1-2": "child" }
  },

  // Matrix
  "matrix-identity": {
    "args": ["mat"],
    "vars": { "f0-0": "one" }
  },

  "matrix+!": {
    "args": ["dst", "src1", "src2"],
    "vars": { "v1-0": "i" }
  },

  "matrix-!": {
    "args": ["dst", "src1", "src2"],
    "vars": { "v1-0": "i" }
  },

  "matrix*!": {
    "args": ["dst", "src1", "src2"]
  },

  "matrixp*!": {
    "args": ["dst", "src1", "src2"],
    "vars": { "s5-0": "temp-mat" }
  },

  "vector-matrix*!": {
    "args": ["dst", "vec", "mat"]
  },

  "vector-rotate*!": {
    "args": ["dst", "vec", "mat"]
  },

  "vector3s-matrix*!": {
    "args": ["dst", "vec", "mat"],
    "vars": { "s5-0": "temp-vec3" }
  },

  "vector3s-rotate*!": {
    "args": ["dst", "vec", "mat"],
    "vars": { "s5-0": "temp-vec3" }
  },

  "matrix-transpose!": {
    "args": ["dst", "src"]
  },

  "matrix-inverse-of-rot-trans!": {
    "args": ["dst", "src"]
  },

  "matrix-4x4-inverse!": {
    "args": ["dst", "src"]
  },

  "matrix-translate!": {
    "args": ["dst", "trans"]
  },

  "matrix-translate+!": {
    "args": ["dst", "src", "trans"]
  },

  "matrix-scale!": {
    "args": ["dst", "scale"]
  },

  "scale-matrix!": {
    "args": ["dst", "scale", "src"]
  },

  "matrix-inv-scale!": {
    "args": ["dst", "scale"]
  },

  "column-scale-matrix!": {
    "args": ["dst", "scale", "src"]
  },

  "matrix-rotate-x!": {
    "args": ["dst", "rot-deg"],
    "vars": { "f30-0": "rot-sin", "f0-0": "rot-cos" }
  },

  "matrix-rotate-y!": {
    "args": ["dst", "rot-deg"],
    "vars": { "f30-0": "rot-sin", "f0-0": "rot-cos" }
  },

  "matrix-rotate-z!": {
    "args": ["dst", "rot-deg"],
    "vars": { "f30-0": "rot-sin", "f0-0": "rot-cos" }
  },

  "matrix-rotate-zyx!": {
    "args": ["dst", "rot-xyz-deg"],
    "vars": { "gp-0": "temp-mat", "s5-0": "rot-mat" }
  },

  "matrix-rotate-xyz!": {
    "args": ["dst", "rot-xyz-deg"],
    "vars": { "gp-0": "temp-mat", "s5-0": "rot-mat" }
  },

  "matrix-rotate-zxy!": {
    "args": ["dst", "rot-xyz-deg"],
    "vars": { "gp-0": "temp-mat", "s5-0": "rot-mat" }
  },

  "matrix-rotate-yxz!": {
    "args": ["dst", "rot-xyz-deg"],
    "vars": { "gp-0": "temp-mat", "s5-0": "rot-mat" }
  },

  "matrix-rotate-yzx!": {
    "args": ["dst", "rot-xyz-deg"],
    "vars": { "gp-0": "temp-mat", "s5-0": "rot-mat" }
  },

  "matrix-rotate-yxy!": {
    "args": ["dst", "rots-deg"],
    "vars": {
      "a2-0": "sincos-input",
      "s5-0": "sin-vec",
      "s4-0": "cos-vec",
      "f1-1": "cos-y",
      "f0-5": "sin-y",
      "f2-0": "cos-x",
      "f5-0": "sin-x",
      "f3-0": "cos-z",
      "f4-0": "sin-z"
    }
  },

  "matrix-rotate-yx!": {
    "args": ["dst", "rot-y-deg", "rot-x-deg"]
  },

  "matrix-axis-angle!": {
    "args": ["dst", "axis", "angle-deg"]
  },

  "matrix-lerp!": {
    "args": ["dst", "src1", "src2", "alpha"]
  },

  "matrix-3x3-determinant": {
    "args": ["mat"]
  },

  "matrix-3x3-inverse!": {
    "args": ["dst", "src"]
  },

  "matrix-3x3-inverse-transpose!": {
    "args": ["dst", "src"]
  },

  "matrix3-inverse-transpose!": {
    "args": ["dst", "src"]
  },

  "matrix-4x4-determinant": {
    "args": ["dst", "src"]
  },

  "matrix-4x4-inverse-transpose!": {
    "args": ["dst", "src"]
  },

  "matrix-y-angle": {
    "args": ["mat"],
    "vars": { "v1-0": "z-row" }
  },

  "(method 0 trs)": {
    "vars": { "gp-0": "obj" }
  },

  "transform-matrix-calc!": {
    "args": ["tf", "dst-mat"]
  },

  "transform-matrix-parent-calc!": {
    "args": ["tf", "dst-mat", "inv-scale"]
  },

  "trs-matrix-calc!": {
    "args": ["tf", "dst-mat"]
  },

  "quaternion-axis-angle!": {
    "args": ["quat", "x", "y", "z", "angle"]
  },

  "quaternion-vector-angle!": {
    "args": ["quat", "axis", "angle"]
  },

  "vector-flatten!": {
    "args": ["dst", "src", "plane-normal"]
  },

  "vector-reflect!": {
    "args": ["dst", "src", "plane-normal"]
  },

  "vector-reflect-flat!": {
    "args": ["dst", "src", "plane-normal"]
  },

  "vector-reflect-true-flat!": {
    "args": ["dst", "src", "plane-normal"]
  },

  "vector-reflect-flat-above!": {
    "args": ["dst", "src", "plane-normal"]
  },

  "deg-seek": {
    "args": ["in", "target", "max-diff"],
    "vars": {
      "v1-1": "in-int",
      "a0-2": "target-int",
      "a1-2": "max-diff-int",
      "a2-1": "diff",
      "a3-0": "abs-diff"
    }
  },

  "deg-seek-smooth": {
    "args": ["in", "target", "max-diff", "amount"],
    "vars": { "f0-1": "step" }
  },

  "deg-lerp-clamp": {
    "args": ["min-val", "max-val", "in"]
  },

  "sinerp-clamp": {
    "args": ["minimum", "maximum", "amount"]
  },

  "coserp-clamp": {
    "args": ["minimum", "maximum", "amount"]
  },
  "coserp": {
    "args": ["minimum", "maximum", "amount"]
  },

  "coserp180-clamp": {
    "args": ["minimum", "maximum", "amount"]
  },
  "coserp180": {
    "args": ["minimum", "maximum", "amount"]
  },
  "ease-in-out": {
    "args": ["total", "progress"]
  },
  "dma-send-to-spr": {
    "args": ["sadr", "madr", "qwc", "sync"]
  },
  "dma-send-to-spr-no-flush": {
    "args": ["sadr", "madr", "qwc", "sync"]
  },
  "dma-send-from-spr": {
    "args": ["madr", "sadr", "qwc", "sync"]
  },
  "dma-send-from-spr-no-flush": {
    "args": ["madr", "sadr", "qwc", "sync"]
  },
  "dump-vu1-range": {
    "args": ["start", "total-count"]
  },
  "ultimate-memcpy": {
    "args": ["dst", "src", "size-bytes"],
    "vars": {
      "s2-0": "qwc-remaining",
      "s1-0": "qwc-transferred-now",
      "s4-0": "spr-to-bank",
      "s3-0": "spr-from-bank"
    }
  },

  "dma-buffer-add-vu-function": {
    "args": ["dma-buf", "vu-func"],
    "vars": {
      "t1-1": "dma-buf-2",
      "v1-0": "func-ptr",
      "a3-0": "qlen",
      "a1-1": "origin",
      "t0-1": "qwc-now",
      "t2-0": ["buf-ptr", "dma-packet"]
    }
  },

  "dma-buffer-add-buckets": {
    "args": ["dma-buf", "count"],
    "vars": { "a2-0": "i", "v1-0": ["current-bucket", "dma-bucket"] }
  },

  "dma-buffer-patch-buckets": {
    "args": ["bucket", "count"],
    "vars": { "v1-1": "i" }
  },

  "dma-bucket-insert-tag": {
    "args": ["base", "idx", "tag-start", "tag-end"],
    "vars": { "v1-1": "bucket" }
  },

  "disasm-vif-details": {
    "args": ["stream", "data", "kind", "count"],
    "vars": { "s4-0": "count2", "s3-0": "data-ptr", "s2-0": "i" }
  },

  "disasm-vif-tag": {
    "args": ["data", "words", "stream", "details"],
    "vars": {
      "gp-0": "byte-idx",
      "v1-0": "cmd-template-idx",
      "a0-12": "print-kind",
      "s1-0": "first-tag",
      "s0-0": "packet-size",
      "t1-1": ["stcycl-imm", "vif-stcycl-imm"],
      "sv-16": "cmd",
      "sv-32": "data-ptr",
      "sv-48": "data-idx",
      "sv-64": "unpack-imm"
    }
  },

  "disasm-dma-list": {
    "args": ["data", "mode", "verbose", "stream", "expected-size"],
    "vars": {
      "sv-16": "addr",
      "sv-32": "data-2",
      "sv-48": "qwc",
      "sv-64": "ra-1",
      "sv-80": "ra-2",
      "sv-96": "call-depth",
      "sv-112": "current-tag",
      "s2-0": "mode-2",
      "s3-0": "verbose-2",
      "gp-0": "stream-2",
      "s1-0": "expected-size-2",
      "s0-0": "end-condition",
      "s4-0": "total-qwc",
      "s5-0": "total-tags"
    }
  },

  "cpad-invalid!": {
    "args": ["pad"]
  },

  "(method 0 cpad-info)": {
    "args": ["alloction", "type-to-make", "idx"],
    "vars": { "s5-0": "obj" }
  },

  "analog-input": {
    "args": ["in", "offset", "center-val", "max-val", "out-range"],
    "vars": {
      "f1-1": "offset-in",
      "f0-3": "magnitude",
      "v1-0": "max-magnitude"
    }
  },

  "cpad-set-buzz!": {
    "args": ["pad", "buzz-idx", "buzz-amount", "duration"]
  },

  "service-cpads": {
    "vars": {
      "gp-0": "pad-list",
      "s5-0": "pad-idx",
      "s4-0": "pad",
      "s3-0": "buzz-idx",
      "v1-29": "current-button0"
    }
  },

  "buzz-stop!": {
    "args": ["idx"]
  },

  "default-buffer-init": {
    "args": ["buff"],
    "vars": {
      "v1-0": "buff-ptr",
      "v1-1": "buff-ptr2",
      "v1-3": "buff-ptr3",
      "v1-4": "buff-ptr4",
      "a1-4": ["packet", "dma-gif-packet"],
      "a1-6": ["gif-tag", "gs-gif-tag"],
      "a1-8": ["data", "(pointer uint64)"],
      "a0-1": ["ret-packet", "dma-packet"],
      "v1-2": "buff-ptr5"
    }
  },

  "add-reg-gif-packet": {
    "args": ["packet", "reg-idx", "reg-val"],
    "vars": { "v1-0": "tag" }
  },

  "(method 9 font-context)": {
    "args": ["obj", "mat"]
  },
  "(method 10 font-context)": {
    "args": ["obj", "x", "y"]
  },
  "(method 11 font-context)": {
    "args": ["obj", "z"]
  },
  "(method 12 font-context)": {
    "args": ["obj", "w"]
  },
  "(method 13 font-context)": {
    "args": ["obj", "width"]
  },
  "(method 14 font-context)": {
    "args": ["obj", "height"]
  },
  "(method 15 font-context)": {
    "args": ["obj", "proj"]
  },
  "(method 16 font-context)": {
    "args": ["obj", "color"]
  },
  "(method 17 font-context)": {
    "args": ["obj", "flags"]
  },
  "(method 18 font-context)": {
    "args": ["obj", "start-line"]
  },
  "(method 19 font-context)": {
    "args": ["obj", "scale"]
  },
  "(method 0 font-context)": {
    "args": [
      "allocation",
      "type-to-make",
      "mat",
      "x",
      "y",
      "z",
      "color",
      "flags"
    ],
    "vars": { "v0-0": "obj" }
  },
  "font-set-tex0": {
    "args": ["ptr-tex0", "tex", "tex-addr", "psm", "clut-addr"]
  },

  "(method 0 display-frame)": {
    "vars": { "gp-0": "obj" }
  },

  "(method 0 draw-context)": {
    "args": [
      "allocation",
      "type-to-make",
      "org-x",
      "org-y",
      "width",
      "height",
      "color-0"
    ]
  },

  "(method 0 display)": {
    "args": ["allocation", "type-to-make", "psm", "w", "h", "ztest", "zpsm"],
    "vars": { "gp-0": "obj" }
  },

  "(method 0 ripple-control)": {
    "vars": { "v0-0": "obj" }
  },

  "vector-seek-2d-xz-smooth!": {
    "args": ["vec", "target", "max-step", "alpha"],
    "vars": {
      "f0-1": "x-diff",
      "f2-1": "z-diff",
      "f1-5": "x-step",
      "f0-3": "z-step",
      "f2-4": "step-len"
    }
  },

  "vector-seek-2d-yz-smooth!": {
    "args": ["vec", "target", "max-step", "alpha"],
    "vars": {
      "f0-1": "y-diff",
      "f2-1": "z-diff",
      "f1-5": "y-step",
      "f0-3": "z-step",
      "f2-4": "step-len",
      "f2-6": "step-scale"
    }
  },

  "vector-seek-3d-smooth!": {
    "args": ["vec", "target", "max-step", "alpha"],
    "vars": {
      "f0-1": "x-diff",
      "f1-2": "y-diff",
      "f3-1": "z-diff",
      "f2-6": "x-step",
      "f1-3": "y-step",
      "f0-4": "z-step",
      "f3-5": "step-len",
      "f3-7": "step-scale"
    }
  },

  "seek-with-smooth": {
    "args": ["value", "target", "max-step", "alpha", "deadband"],
    "vars": { "f0-1": "diff", "f0-2": "step", "f1-4": "min-step" }
  },

  "vector-v+!": {
    "args": ["result", "position", "velocity"]
  },

  "vector-v*float+!": {
    "args": ["result", "position", "velocity", "velocity-scale"]
  },

  "vector-v++!": {
    "args": ["position", "velocity"]
  },

  "vector-v*float!": {
    "args": ["delta-p", "velocity", "scale"]
  },

  "vector-v*float++!": {
    "args": ["position", "velocity", "scale"]
  },

  "vector-lerp!": {
    "args": ["out", "a", "b", "alpha"]
  },

  "vector-lerp-clamp!": {
    "args": ["out", "a", "b", "alpha"]
  },

  "vector4-lerp!": {
    "args": ["out", "a", "b", "alpha"]
  },

  "vector4-lerp-clamp!": {
    "args": ["out", "a", "b", "alpha"]
  },

  "vector-deg-lerp-clamp!": {
    "args": ["out", "min-val", "max-val", "in"]
  },

  "make-file-name": {
    "args": ["kind", "name", "art-group-version"]
  },

  "make-vfile-name": {
    "args": ["kind", "name"]
  },

  "file-info-correct-version?": {
    "args": ["info", "kind", "version-override"],
    "vars": { "s5-0": "expected-version", "s4-0": "kind-name" }
  },

  "(method 0 load-dir)": {
    "args": ["allocation", "type-to-make", "length", "unk"],
    "vars": { "s4-0": "obj" }
  },

  "(method 0 load-dir-art-group)": {
    "args": ["allocation", "type-to-make", "length", "unk"],
    "vars": { "v0-0": "obj" }
  },

  "(method 0 external-art-buffer)": {
    "args": ["allocation", "type-to-make", "idx"],
    "vars": { "v0-0": "obj" }
  },

  "(method 0 external-art-control)": {
    "vars": { "gp-0": "obj", "s4-0": "buff-idx", "v1-9": "rec-idx" }
  },

  "(method 9 display)": {
    "args": ["obj", "slowdown"],
    "vars": { "gp-0": "obj", "s5-0": "ratio" }
  },

  "set-draw-env-offset": {
    "args": ["env", "x", "y"]
  },

  "set-display-env": {
    "args": ["env", "psm", "width", "height", "dx", "dy", "fbp"]
  },

  "set-draw-env": {
    "args": ["env", "psm", "width", "height", "ztest", "zpsm", "fbp"]
  },

  "set-display": {
    "args": ["disp", "psm", "w", "h", "ztest", "zpsm"]
  },

  "set-display2": {
    "args": ["disp", "psm", "w", "h", "ztest", "zpsm"]
  },

  "(method 11 profile-bar)": {
    "args": ["obj", "name", "color"],
    "vars": { "s5-0": "new-frame" }
  },

  "(method 12 profile-bar)": {
    "args": ["obj", "name", "color"],
    "vars": { "v0-0": "new-frame" }
  },

  "gs-set-default-store-image": {
    "args": [
      "packet",
      "src-fbp",
      "src-w",
      "src-psm",
      "ssax",
      "ssay",
      "rrw",
      "rrh"
    ]
  },

  "store-image": {
    "args": ["oddeven"],
    "vars": {
      "s4-0": "buff0",
      "s1-0": "buff1",
      "s0-0": "packet",
      "gp-0": "file",
      "s3-0": "width",
      "s2-0": "height",
      "s0-1": "ptr-0",
      "sv-16": "ptr-1",
      "sv-32": "y-idx",
      "sv-48": "y-idx-2"
    }
  },

  "(method 0 draw-context)": {
    "args": [
      "allocation",
      "type-to-make",
      "org-x",
      "org-y",
      "width",
      "height",
      "color-0"
    ],
    "vars": { "v0-0": "obj" }
  },

  "draw-context-set-xy": {
    "args": ["ctxt", "x", "y"]
  },

  "texture-qwc": {
    "args": ["w", "h", "tex-format"]
  },

  "gs-find-block": {
    "args": ["bx", "by", "tex-format"]
  },

  "gs-largest-block": {
    "args": ["tex-width", "tex-height", "tex-format"],
    "vars": {
      "s5-0": "block-width",
      "v1-0": "block-height",
      "a0-6": "real-width",
      "a1-4": "real-height",
      "s5-1": "width-blocks",
      "s3-1": "height-blocks",
      "s2-0": "x",
      "s1-0": "y",
      "s4-1": "max-block"
    }
  },

  "gs-blocks-used": {
    "args": ["tex-width", "tex-height", "tex-format"],
    "vars": {
      "s4-0": "page-width",
      "v1-0": "page-height",
      "a0-6": "real-width",
      "a1-4": "real-height",
      "s3-0": "width-blocks",
      "s1-0": "height-blocks"
    }
  },

  "dma-buffer-add-ref-texture": {
    "args": ["buf", "data", "tex-w", "tex-h", "tex-format"],
    "vars": {
      "s5-0": "data-ptr",
      "v1-0": "qwc",
      "a0-4": "qwc-this-time",
      "a1-3": "eop",
      "a3-1": ["setup-dma", "dma-packet"],
      "a3-3": ["setup-dif", "gs-gif-tag"],
      "a2-4": ["data-dma", "dma-packet"]
    }
  },

  "(method 15 texture-pool)": {
    "args": ["obj", "word-count"]
  },

  "(method 22 texture-pool)": {
    "args": ["obj", "tpage-id"]
  },

  "(method 10 texture-page)": {
    "args": ["obj", "segment-count", "additional-size"]
  },

  "(method 16 texture-pool)": {
    "args": ["obj", "segment", "size"]
  },

  "(method 9 texture-page)": {
    "args": ["obj", "seg"]
  },

  "texture-page-default-allocate": {
    "args": ["pool", "page", "seg", "tpage-id"],
    "vars": { "s3-0": "seg-id" }
  },

  "texture-page-common-allocate": {
    "args": ["pool", "page", "seg", "tpage-id"],
    "vars": { "s4-0": "seg-id" }
  },

  "(method 12 texture-page)": {
    "args": ["obj", "new-dest", "seg-id"],
    "vars": {
      "a3-4": "dst-block",
      "t0-1": "tex-id",
      "t1-6": "tex",
      "t2-0": "num-mips",
      "t3-4": "mip-id"
    }
  },

  "texture-page-common-boot-allocate": {
    "args": ["pool", "page", "heap", "tpage-id"],
    "vars": { "s2-0": "tex-id" }
  },

  "upload-vram-data": {
    "args": ["buf", "dest", "tex-data", "tex-h"],
    "vars": {
      "a3-2": "height-this-time",
      "a0-1": ["dma", "dma-packet"],
      "a0-3": ["gif", "gs-gif-tag"],
      "a0-5": "gs-data"
    }
  },

  "upload-vram-pages": {
    "args": ["pool", "segment", "page", "mode", "bucket-idx"],
    "vars": {
      "s3-0": "dma-buf",
      "sv-16": "tex-data",
      "sv-20": "tex-dest-base-chunk",
      "sv-24": "chunk-count",
      "sv-48": "tex-id",
      "s1-0": "upload-chunk-idx",
      "v1-24": "current-dest-chunk",
      "sv-32": "chunks-to-upload-count",
      "sv-40": "first-chunk-idx-to-upload",
      "gp-0": "total-upload-size",
      "s4-0": "dma-start",
      "a0-26": ["dma", "dma-packet"],
      "a0-28": ["gif", "gs-gif-tag"],
      "a0-30": "gif-data",
      "v1-50": ["dma-end", "dma-packet"]
    }
  },

  "update-vram-pages": {
    "args": ["pool", "pool-segment", "page", "mode"],
    "vars": {
      "t1-0": "dest-block",
      "t2-0": "sz",
      "t0-1": "page-id",
      "a1-4": "upload-chunks",
      "a2-3": "chunk-idx",
      "v1-2": "modified-chunk-count",
      "a3-8": "vram-chunk"
    }
  },

  "upload-vram-pages-pris": {
    "args": ["pool", "segment", "page", "bucket-idx", "allow-cache-mask"],
    "vars": {
      "s3-0": "dma-buf",
      "sv-16": "tex-data",
      "sv-20": "tex-dest-base-chunk",
      "sv-24": "chunk-count",
      "sv-32": "chunks-to-upload-count",
      "sv-40": "first-chunk-idx-to-upload",
      "sv-48": "page-id",
      "s0-0": "upload-chunk-idx",
      "sv-52": "current-dest-chunk",
      "sv-56": "need-tex",
      "gp-0": "total-upload-size",
      "a0-21": ["dma", "dma-packet"],
      "a0-23": ["gif", "gs-gif-tag"],
      "v1-55": ["dma-end", "dma-packet"]
    }
  },

  "texture-page-near-allocate-0": {
    "args": ["pool", "page", "heap", "mode"],
    "vars": {
      "s3-0": "common-dest",
      "s2-0": "page-seg-idx",
      "a1-5": "page-seg-2-size",
      "v1-15": "after-seg-2-data",
      "a0-8": "seg-2-data"
    }
  },

  "texture-page-near-allocate-1": {
    "args": ["pool", "page", "heap", "mode"],
    "vars": {
      "s4-0": "seg2-size",
      "a1-1": "seg2-dest",
      "s2-0": "common-dest",
      "s1-0": "page-seg-idx"
    }
  },

  "texture-page-level-allocate": {
    "args": ["pool", "page", "heap", "mode"],
    "vars": {
      "s2-0": "common-id",
      "v1-6": "level-idx"
    }
  },

  "texture-page-dir-inspect": {
    "args": ["dir", "mode"],
    "vars": {
      "v1-0": "pool",
      "s4-0": "level-idx",
      "a1-3": "lev",
      "s4-1": "entry-idx",
      "s3-0": "entry-page",
      "s2-0": "entry-link",
      "s1-0": "entry-list-length"
    }
  },

  "texture-page-size-check": {
    "args": ["pool", "level", "hide-prints"],
    "vars": {
      "gp-0": "oversize",
      "s3-0": "tfrag-page",
      "v1-0": "tfrag-mip0-size",
      "v1-3": "pris-page",
      "v1-5": "shrub-page",
      "v1-7": "alpha-page",
      "v1-9": "water-page"
    }
  },

  "(method 13 texture-pool)": {
    "args": ["obj", "level", "max-page-kind", "id-array"],
    "vars": {
      "v1-0": "page-idx",
      "v1-5": "tfrag-dir-entry",
      "v1-7": "pris-dir-entry",
      "v1-9": "shrub-dir-entry",
      "v1-11": "alpha-dir-entry",
      "v1-13": "water-dir-entry",
      "a2-7": "overflow-bits"
    }
  },

  "(method 14 texture-pool)": {
    "args": ["obj", "level", "tex-page-kind"],
    "vars": {
      "s3-0": "tfrag-page",
      "s2-0": "tfrag-bucket",
      "f30-0": "distance",
      "a2-4": "pris-page",
      "a3-3": "pris-bucket",
      "a2-5": "shrub-page",
      "f0-5": "shrub-closest",
      "t0-4": "shrub-bucket",
      "a3-4": "shrub-mode",
      "s3-1": "alpha-page",
      "f0-6": "alpha-closest",
      "s2-1": "alpha-bucket",
      "s1-3": "alpha-mode",
      "s0-0": "alpha-dest-chunk",
      "a2-7": "water-page",
      "a3-6": "water-bucket"
    }
  },

  "(method 13 texture-page)": {
    "args": ["obj", "dma-buff", "mode"],
    "vars": {
      "sv-16": "total-size",
      "v1-7": "start-segment",
      "s5-0": "chunk-count",
      "s4-0": "current-dest",
      "s3-0": "current-data",
      "a3-1": "chunks-now",
      "a0-1": ["pkt", "dma-packet"],
      "a0-3": ["gs-tag", "gs-gif-tag"],
      "a0-5": "gs-reg-data"
    }
  },

  "texture-relocate": {
    "args": ["dma-buff", "tex", "dest-loc", "dest-fmt", "clut-dst"],
    "vars": {
      "v1-0": "mip-level",
      "t1-1": "mip-w",
      "t2-3": "mip-h",
      "t4-0": ["dma-pkt", "dma-packet"],
      "t4-2": ["gs-pkt", "gs-gif-tag"]
    }
  },

  "(method 11 texture-pool)": {
    "vars": {
      "s3-0": "font-clut",
      "sv-16": "heap-before-font-tex",
      "sv-20": "clut-dest-addr",
      "s4-0": "dma-buff",
      "s5-0": "main-font-tx",
      "s2-0": "font-tx-1",
      "s1-0": "font-tx-1-dest",
      "s0-0": "font-tx-1-fmt",
      "s2-1": "font-tx-0",
      "s1-1": "font-tx-0-dest",
      "s0-1": "font-tx-0-fmt",
      "s2-2": "font-tx-3",
      "s1-2": "font-tx-3-dest",
      "s0-2": "font-tx-3-fmt",
      "s2-3": "font-tx-2",
      "s1-3": "font-tx-2-dest",
      "s0-3": "font-tx-2-fmt"
    }
  },

  "link-texture-by-id": {
    "vars": {
      "s4-0": "dir-entry"
    }
  },

  "(method 9 texture-page-dir)": {
    "args": ["obj", "heap"],
    "vars": {
      "v1-0": "mem-start",
      "a1-1": "mem-end",
      "a2-0": "entry-idx",
      "t1-0": "entry",
      "t0-0": "tex-page",
      "a3-4": "link-arr",
      "t0-3": "tex-count",
      "t1-4": "tex-idx",
      "t2-0": "link-slot",
      "t3-2": ["shader", "adgif-shader"],
      "t4-1": "dist-past-end"
    }
  },

  "display-loop": {
    "vars": {
      "s3-0": "debug-buf",
      "gp-0": "disp",
      "s5-2": "debug-txt-buf"
    }
  },

  "adgif-shader-login": {
    "args": "shader",
    "vars": {
      "s5-0": "tex"
    }
  },

  "adgif-shader-login-fast": {
    "args": ["shader"],
    "vars": {
      "v1-4": "tex-id",
      "a0-9": "dir-entry",
      "s5-0": "tex"
    }
  },

  "texture-page-login": {
    "args": ["id", "alloc-func", "heap"],
    "vars": {
      "s5-0": "dir-entry",
      "s4-0": "old-alloc-func",
      "s3-0": "file-name"
    }
  },

  "(method 9 __assert-info-private-struct)": {
    "args": ["obj", "filename", "line-num", "column-num"]
  },

  "__assert": {
    "args": ["exp", "msg"]
  },

  "__assert-min-max-range-float": {
    "args": ["exp", "minimum", "maximum", "msg-exp", "msg-min", "msg-max"]
  },

  "__assert-min-max-range-int": {
    "args": ["exp", "minimum", "maximum", "msg-exp", "msg-min", "msg-max"]
  },

  "__assert-zero-lim-range-int": {
    "args": ["exp", "maximum", "msg-exp", "msg-max"]
  },

  "fog-corrector-setup": {
    "args": ["corrector", "math-cam"]
  },

  "update-math-camera": {
    "args": ["math-cam", "video-mode", "aspect"],
    "vars": {
      "f0-4": "temp1",
      "v1-1": "elim1",
      "f0-6": "temp2",
      "v1-2": "elim2",
      "f1-3": "x-rat",
      "f0-7": "y-rat",
      "v1-3": "cull-info",
      "f2-2": "unused-x-thing",
      "f2-5": "y-thing",
      "f3-11": "one-plus-2x-squared",
      "f3-14": "one-plus-2y-squared",
      "f2-9": "temp3",
      "a0-2": "elim3",
      "f2-11": "near-x",
      "f1-5": "near-y",
      "f0-10": "near-corner-dist-sqr",
      "f2-8": "unused-thing-2",
      "f1-8": "near-z",
      "f0-12": "temp4",
      "a0-6": "elim4",
      "f1-12": "dx-rat-2",
      "f0-14": "d-temp-2",
      "f2-13": "dx-rat-times-4",
      "f3-21": "d-temp-3",
      "f4-21": "inverse-x-len",
      "f5-11": "inverse-x-len-2",
      "f0-16": "temp5",
      "a0-7": "elim5",
      "f1-15": "dy-rat",
      "f0-18": "d-temp-4",
      "f2-15": "dy-rat-times-4",
      "f3-22": "d-temp-5",
      "f4-26": "inverse-y-len",
      "f5-16": "inverse-y-len-2",
      "f0-20": "temp6",
      "v1-4": "elim6",
      "v0-2": "cam-mat",
      "f2-16": "fog-constant-1",
      "f3-23": "fog-constant-2",
      "f0-12": "fog-contsant-3",
      "f0-24": "fog-at-near-plane",
      "f1-22": "fog-factor-2",
      "f4-35": "cam-fov-mult",
      "f5-19": "corrected-fog",
      "f5-23": "hvdf-x",
      "f6-29": "hvdf-y",
      "f2-18": "hvdf-z",
      "f4-40": "hvdf-w",
      "f2-19": "persp-xx",
      "f3-36": "persp-yy",
      "f1-32": "persp-x",
      "v1-11": "sprite-row-0",
      "v1-12": "sprite-row-1",
      "v1-13": "sprite-row-2",
      "v1-14": "sprite-row-3",
      "f1-37": "temp7",
      "v1-16": "elim7",
      "v1-24": "pfog",
      "a0-12": "vis-gif-0",
      "a0-13": "vis-gif-1",
      "a0-14": "vis-gif-1-again",
      "a0-15": "vis-gif-1-again-again"
    }
  },

  "move-target-from-pad": {
    "args": ["trans", "pad-idx"],
    "vars": {
      "s4-0": "local-trans",
      "a0-5": "inv-cam-rot",
      "s3-0": "cam-rot-mat"
    }
  },

  "(method 13 profile-bar)": {
    "args": ["obj", "buf", "bar-pos"],
    "vars": {
      "v1-1": "height",
      "a1-4": "block-idx",
      "a2-1": "block-count",
      "t0-0": "left",
      "v1-3": "end-time",
      "s4-0": "worst-time-cache",
      "a3-1": "screen-y",
      "t2-0": ["direct-tag", "dma-packet"],
      "t2-2": ["start-gif-tag", "gs-gif-tag"],
      "t1-4": "block"
    }
  },

  "draw-sprite2d-xy": {
    "args": ["buf", "x", "y", "w", "h", "color"],
    "vars": {
      "t2-1": "context",
      "a0-3": "draw-x",
      "a1-9": "draw-y",
      "t1-2": "draw-w",
      "t0-2": "draw-h",
      "a3-2": ["dma", "dma-packet"],
      "a3-4": ["gif", "gs-gif-tag"],
      "v1-10": ["end-dma", "dma-packet"],
      "a0-13": "total-qwc",
      "a3-6": "gif-buf"
    }
  },

  "draw-quad2d": {
    "args": ["buf", "context"],
    "vars": {
      "a2-1": "draw-x",
      "a3-7": "draw-y",
      "t3-0": "draw-w",
      "t2-0": "draw-h",
      "v1-8": "end-dma",
      "t1-0": ["dma", "dma-packet"],
      "t1-2": ["gif", "gs-gif-tag"],
      "t1-4": "gif-buf",
      "a1-11": "total-qwc"
    }
  },

  "set-display-gs-state": {
    "args": ["dma-buf", "fbp", "scx", "scy", "fb-msk", "psm"],
    "vars": {
      "t3-0": ["dma", "dma-packet"],
      "t3-2": ["gif", "gs-gif-tag"],
      "t3-4": "gif-buf",
      "t2-0": "fbw"
    }
  },

  "set-display-gs-state-offset": {
    "args": [
      "dma-buf",
      "fbp",
      "width",
      "height",
      "fb-msk",
      "psm",
      "off-x",
      "off-y"
    ],
    "vars": {
      "t4-0": "fbw",
      "t5-0": ["dma", "dma-packet"],
      "t5-2": ["gif", "gs-gif-tag"],
      "t5-4": ["gif-data", "(pointer uint64)"]
    }
  },

  "reset-display-gs-state": {
    "args": ["disp", "dma-buf", "oddeven"],
    "vars": {
      "a3-0": "onscreen",
      "v1-0": "hoff",
      "a2-6": "fbp",
      "t0-0": ["dma", "dma-packet"],
      "t0-2": ["gif", "gs-gif-tag"],
      "a3-3": ["gif-data", "(pointer uint64)"]
    }
  },

  "(method 0 engine)": {
    "args": ["allocation", "type-to-make", "name", "length"],
    "vars": { "v0-0": "obj", "v1-11": "idx-to-link", "a0-1": "end-idx" }
  },

  "(method 10 engine)": {
    "args": ["obj", "f"],
    "vars": { "a0-1": "current", "s4-0": "next" }
  },

  "(method 11 engine)": {
    "args": ["obj", "f"],
    "vars": { "s4-0": "iter" }
  },

  "(method 12 engine)": {
    "vars": { "s4-0": ["ct", "connection"] }
  },

  "(method 13 engine)": {
    "vars": { "s4-0": ["ct", "connection"], "v1-2": "result" }
  },

  "(method 19 engine)": {
    "args": ["obj", "p1-value"],
    "vars": { "a0-1": "current", "s4-0": "next" }
  },

  "(method 20 engine)": {
    "args": ["obj", "p2-value"],
    "vars": { "a0-1": "current", "s4-0": "next" }
  },

  "connection-process-apply": {
    "args": ["proc", "func"],
    "vars": { "s5-0": "iter" }
  },

  "(method 15 engine)": {
    "args": ["obj", "proc", "func", "p1", "p2", "p3"],
    "vars": { "v1-0": "con" }
  },

  "surface-interp!": {
    "args": ["dst", "src0", "src1", "amount"]
  },

  "surface-mult!": {
    "args": ["dst", "src0", "src1"]
  },

  "(method 0 collide-shape-prim)": {
    "args": ["allocation", "type-to-make", "cshape", "prim-id", "size-bytes"]
  },

  "(method 0 collide-shape-prim-sphere)": {
    "args": ["allocation", "type-to-make", "cshape", "prim-id"],
    "vars": { "v0-0": ["obj", "collide-shape-prim-sphere"] }
  },
  "(method 0 collide-shape-prim-mesh)": {
    "args": ["allocation", "type-to-make", "cshape", "mesh-id", "prim-id"],
    "vars": { "v0-0": ["obj", "collide-shape-prim-mesh"] }
  },
  "(method 0 collide-shape-prim-group)": {
    "args": ["allocation", "type-to-make", "cshape", "elt-count", "prim-id"],
    "vars": { "v0-0": ["obj", "collide-shape-prim-group"] }
  },
  "(method 0 collide-shape)": {
    "args": [
      "allocation",
      "type-to-make",
      "proc",
      "collide-list-kind",
      "prim-id"
    ],
    "vars": { "s5-0": "obj" }
  },
  "(method 0 collide-sticky-rider-group)": {
    "vars": { "v0-0": "obj" }
  },
  "(method 11 touching-prims-entry-pool)": {
    "vars": { "a1-0": "current", "v1-0": "prev", "a2-0": "next" }
  },
  "(method 0 touching-list)": {
    "vars": { "v0-0": ["obj", "touching-list"] }
  },

  "cspace-by-name-no-fail": {
    "vars": { "v0-0": ["result", "cspace"] }
  },

  "num-func-loop!": {
    "args": ["chan", "inc"],
    "vars": { "f0-1": "duration", "f1-2": "after-inc", "f0-3": "wrapped" }
  },

  "shrubbery-login-post-texture": {
    "args": ["obj"],
    "vars": {
      "v1-1": "shader-count",
      "a1-1": ["dst", "qword"],
      "a2-5": ["tex-dst", "qword"],
      "a3-0": ["src", "qword"],
      "a2-6": ["text-dst2", "qword"],
      "a3-1": ["src-2", "qword"],
      "a3-2": ["src-3", "qword"]
    }
  },

  "(method 20 actor-link-info)": {
    "args": ["obj", "message"],
    "vars": {
      "s4-0": "iter",
      "s5-0": "result",
      "a0-1": "proc",
      "a1-1": "msg-block"
    }
  },

  // LEVEL
  "lookup-level-info": {
    "args": ["name"],
    "vars": {
      "a1-1": ["info", "level-load-info"],
      "v1-0": "rest",
      "a1-0": "current-sym"
    }
  },

  "(method 21 level-group)": {
    "args": ["obj", "name", "cmd-idx"],
    "vars": { "v1-1": "cmd-lst" }
  },

  // SHADOW-CPU-H
  "(method 0 shadow-control)": {
    "args": [
      "allocation",
      "type-to-make",
      "bottom-offset",
      "top-offset",
      "dir",
      "center",
      "fade"
    ],
    "vars": { "v0-0": "obj" }
  },

  // RES
  "(method 0 res-lump)": {
    "args": ["allocation", "type-to-make", "data-count", "data-size"],
    "vars": { "v0-0": "obj" }
  },
  "(method 20 res-lump)": {
    "args": ["obj", "time", "result", "buf"],
    "vars": {
      "t0-2": "tag-lo",
      "t1-2": "tag-hi",
      "v1-6": "elt-count",
      "f0-2": "interp",
      "a1-6": "src-lo",
      "a2-13": "src-hi"
    }
  },
  "(method 3 res-lump)": {
    "vars": { "s5-0": "i" }
  },
  "(method 9 res-lump)": {
    "args": ["obj", "name", "mode", "time", "default", "tag-addr", "buf-addr"],
    "vars": { "s3-0": "tag-pair" }
  },
  "(method 10 res-lump)": {
    "args": ["obj", "name", "mode", "time", "default", "tag-addr", "buf-addr"],
    "vars": { "s3-0": "tag-pair", "v1-4": "tag" }
  },
  "(method 11 res-lump)": {
    "args": ["obj", "name", "mode", "time", "default", "tag-addr", "buf-addr"],
    "vars": {
      "a2-1": "tag-pair",
      "s1-0": "tag",
      "s0-0": "tag-type",
      "gp-1": "data"
    }
  },
  "(method 12 res-lump)": {
    "args": ["obj", "name", "mode", "time", "default", "tag-addr", "buf-addr"],
    "vars": {
      "a2-1": "tag-pair",
      "s1-0": "tag",
      "s0-0": "tag-type",
      "gp-1": "data"
    }
  },
  "(method 16 res-lump)": {
    "vars": {
      "v1-0": "tags-sorted",
      "a1-0": "i",
      "a2-1": "tag-stop",
      "a3-2": "tag1",
      "t0-3": "tag2",
      "t1-6": "tag-name1",
      "t2-6": "tag-name2"
    }
  },
  "(method 15 res-lump)": {
    "vars": {
      "s5-0": ["tag-pair", "res-tag-pair"],
      "s2-0": "existing-tag",
      "s3-0": "data-size",
      "v1-25": "resource-mem"
    }
  },

  "(method 17 res-lump)": {
    "vars": {
      "a0-2": "new-tag",
      "s4-0": "tag-mem"
    }
  },

  "(method 8 res-lump)": {
    "args": ["obj", "block", "flags"],
    "vars": {
      "s3-0": "mem-use-id",
      "s2-0": "mem-use-name",
      "v1-22": "obj-size",
      "s1-0": "tag-idx",
      "s0-0": "tag-data"
    }
  },

  // FACT-H
  "(method 0 fact-info-target)": {
    "vars": { "gp-0": "obj" }
  },
  "(method 0 fact-info-enemy)": {
    "vars": {
      "gp-0": "obj",
      "s5-0": "entity"
    }
  },

  "(method 0 fact-info)": {
    "args": ["allocation", "type-to-make", "proc", "pkup-type", "pkup-amount"],
    "vars": {
      "gp-0": ["obj", "fact-info"],
      "s5-0": "ent",
      "sv-16": "tag"
    }
  },

  "(method 0 align-control)": {
    "vars": { "v0-0": ["obj", "align-control"] }
  },

  "str-load": {
    "args": ["name", "chunk-id", "address", "len"],
    "vars": { "s2-0": ["cmd", "load-chunk-msg"] }
  },

  "str-load-status": {
    "args": ["length-out"],
    "vars": { "v1-7": "response" }
  },

  "str-play-async": {
    "args": ["name", "addr"],
    "vars": { "s4-0": "cmd" }
  },

  "str-play-stop": {
    "args": ["name"],
    "vars": { "s5-0": "cmd" }
  },

  "str-play-queue": {
    "args": ["name"],
    "vars": { "s5-0": "cmd" }
  },

  "str-ambient-play": {
    "args": ["name"],
    "vars": { "s5-0": "cmd" }
  },

  "str-ambient-stop": {
    "args": ["name"],
    "vars": { "s5-0": "cmd" }
  },

  "string->sound-name": {
    "args": ["str"],
    "vars": {
      "v1-0": "snd-name",
      "a1-0": ["out-ptr", "(pointer uint8)"],
      "a2-0": "in-ptr"
    }
  },
  "dgo-load-begin": {
    "args": ["name", "buffer1", "buffer2", "current-heap"],
    "vars": { "s2-0": "cmd" }
  },

  "dgo-load-get-next": {
    "args": ["last-object"],
    "vars": { "gp-0": ["load-location", "pointer"], "v1-5": "response" }
  },

  "dgo-load-continue": {
    "args": ["current-heap"],
    "vars": { "gp-0": "cmd" }
  },
  "dgo-load-cancel": {
    "vars": { "a2-0": "cmd" }
  },

  "find-temp-buffer": {
    "args": ["size"],
    "vars": { "gp-0": "qwc" }
  },

  "dgo-load-link": {
    "args": ["obj-file", "heap", "print-login", "last-object"],
    "vars": { "s4-0": "obj-data" }
  },

  "ramdisk-load": {
    "args": ["file-id", "offset", "length", "buffer"],
    "vars": { "v1-1": "cmd" }
  },

  "show-mc-info": {
    "args": ["dma-buf"],
    "vars": { "s5-0": "info", "s4-0": "slot-idx" }
  },

  "(method 19 res-lump)": {
    "args": ["obj", "name-sym", "mode", "time"],
    "vars": {
      "t2-4": "type-chars",
      "t3-1": "max-search",
      "t4-0": "min-search",
      "t6-5": "diff",
      "t5-2": "check-idx",
      "t4-1": "tag-idx",
      "t3-13": "interp-tag-idx",
      "t4-4": "tag-ptr",
      "t0-6": "lo-tag-idx-out",
      "v1-14": "hi-tag-idx-out",
      "t1-0": "most-recent-invalid-time-idx"
    }
  },

  "entity-actor-count": {
    "args": ["res", "name"],
    "vars": {
      "sv-16": "tag"
    }
  },

  "(method 0 joint-mod)": {
    "args": ["allocation", "type-to-make", "mode", "proc", "joint-idx"],
    "vars": {
      "gp-0": "obj",
      "v1-7": "twist-max"
    }
  },

  "joint-mod-debug-draw": {
    "args": ["mod"]
  },

  "(method 9 joint-mod)": {
    "args": ["obj", "handler-mode"],
    "vars": { "v1-0": "joint", "a0-1": "mode" }
  },

  "(method 10 joint-mod)": {
    "args": ["obj", "target-trans"],
    "vars": { "f0-0": "distance" }
  },

  "(method 13 joint-mod)": { "args": ["obj", "x", "y", "z"] },
  "(method 14 joint-mod)": { "args": ["obj", "trans", "rot", "scale"] },
  "(method 11 joint-mod)": {
    "args": ["obj", "target-trans", "option", "proc"],
    "vars": {
      "s1-0": "proc-drawable",
      "s3-1": ["enemy-facts", "fact-info-enemy"],
      "f30-0": "dist"
    }
  },

  "joint-mod-look-at-handler": { "args": ["csp", "xform", "mat"] },
  "(method 9 collide-history)": {
    "args": ["obj", "cshape", "xs", "transv", "transv-out"]
  },

  "add-debug-sphere-from-table": {
    "vars": { "s1-0": ["points", "(inline-array vector)"] }
  },

  "entity-actor-lookup": {
    "args": ["lump", "name", "idx"]
  },

  "(method 0 actor-link-info)": {
    "args": ["allocation", "type-to-make", "proc"],
    "vars": { "s5-0": "obj", "a0-1": "ent" }
  },

  "(method 25 actor-link-info)": {
    "vars": { "s5-0": "actor", "gp-0": "count" }
  },

  "(method 9 actor-link-info)": {
    "args": ["obj", "matching-type"],
    "vars": { "s3-0": "actor", "s5-0": "mask", "s4-0": "current-bit" }
  },

  "(method 10 actor-link-info)": {
    "vars": { "s5-0": "this-actor", "s4-0": "actor", "gp-0": "count" }
  },

  "alt-actor-list-subtask-incomplete-count": {
    "vars": {
      "s4-0": "alt-actor-count",
      "gp-0": "incomplete-count",
      "s3-0": "alt-actor-idx"
    }
  },

  "check-irx-version": {
    "vars": { "gp-0": ["cmd", "sound-rpc-get-irx-version"] }
  },
  "sound-bank-load": {
    "vars": { "v1-1": ["cmd", "sound-rpc-load-bank"] }
  },
  "sound-bank-unload": {
    "vars": { "v1-1": ["cmd", "sound-rpc-unload-bank"] }
  },
  "sound-music-load": {
    "vars": { "v1-1": ["cmd", "sound-rpc-load-music"] }
  },
  "sound-music-unload": {
    "vars": { "v1-1": ["cmd", "sound-rpc-unload-music"] }
  },
  "sound-reload-info": {
    "vars": { "v1-1": ["cmd", "sound-rpc-reload-info"] }
  },
  "set-language": {
    "vars": { "v1-1": ["cmd", "sound-rpc-set-language"] }
  },
  "list-sounds": {
    "vars": { "v1-1": ["cmd", "sound-rpc-list-sounds"] }
  },
  "sound-set-volume": {
    "vars": { "v1-0": ["cmd", "sound-rpc-set-master-volume"] }
  },
  "sound-set-reverb": {
    "vars": { "v1-0": ["cmd", "sound-rpc-set-reverb"] }
  },
  "sound-set-ear-trans": {
    "vars": { "gp-0": ["cmd", "sound-rpc-set-ear-trans"] }
  },
  "sound-play-by-name": {
    "args": ["name", "id", "vol", "pitch", "bend", "group", "trans"],
    "vars": {
      "s5-0": ["cmd", "sound-rpc-play"],
      "s3-1": ["proc", "process-drawable"],
      "s4-0": "sound-trans"
    }
  },
  "sound-play-by-spec": {
    "args": ["spec", "id", "trans"],
    "vars": {
      "s5-0": ["cmd", "sound-rpc-play"],
      "s3-1": ["proc", "process-drawable"]
    }
  },
  "sound-pause": {
    "vars": { "v1-0": ["cmd", "sound-rpc-pause-sound"] }
  },
  "sound-stop": {
    "vars": { "v1-0": ["cmd", "sound-rpc-stop-sound"] }
  },
  "sound-continue": {
    "vars": { "v1-0": ["cmd", "sound-rpc-continue-sound"] }
  },
  "sound-group-pause": {
    "vars": { "v1-0": ["cmd", "sound-rpc-pause-group"] }
  },
  "sound-group-stop": {
    "vars": { "v1-0": ["cmd", "sound-rpc-stop-group"] }
  },
  "sound-group-continue": {
    "vars": { "v1-0": ["cmd", "sound-rpc-continue-group"] }
  },
  "sound-set-falloff-curve": {
    "vars": { "v1-0": ["cmd", "sound-rpc-set-falloff-curve"] }
  },
  "sound-set-sound-falloff": {
    "vars": { "v1-0": ["cmd", "sound-rpc-set-sound-falloff"] }
  },
  "sound-set-flava": {
    "vars": { "v1-0": ["cmd", "sound-rpc-set-flava"] }
  },
  "(method 0 ambient-sound)": {
    "vars": { "s5-1": ["obj", "ambient-sound"], "v1-2": "bc" }
  },
  "(method 9 ambient-sound)": {
    "vars": { "s5-1": "spec", "s4-2": "spec-volume" }
  },
  "(method 11 ambient-sound)": {
    "vars": { "gp-0": ["cmd", "sound-rpc-set-param"] }
  },
  "(method 12 ambient-sound)": {
    "vars": { "v1-2": ["cmd", "sound-rpc-set-param"] }
  },
  "sound-buffer-dump": {
    "vars": { "s3-0": ["cmd", "sound-rpc-play"] }
  },

  "(method 0 path-control)": {
    "args": ["allocation", "type-to-make", "proc", "name", "time"],
    "vars": {
      "gp-0": ["obj", "path-control"],
      "s3-1": "ent",
      "v1-7": "lookup-entity",
      "sv-16": "tag",
      "v1-9": "data"
    }
  },

  "(method 0 curve-control)": {
    "args": ["allocation", "type-to-make", "proc", "name", "time"],
    "vars": { "gp-0": "obj", "s3-1": "ent", "v1-3": "lookup-entity" }
  },

  "nav-mesh-connect": {
    "args": ["proc", "trans", "nav-cont"],
    "vars": {
      "s2-0": "ent",
      "v0-0": "lookup-entity",
      "s3-0": "entity-nav-mesh"
    }
  },

  "(method 0 nav-control)": {
    "args": [
      "allocation",
      "type-to-make",
      "shape",
      "sphere-count",
      "nearest-y-threshold-default"
    ],
    "vars": { "s5-0": ["obj", "nav-control"], "a0-3": "ent" }
  },

  "add-debug-point": {
    "args": ["enable-draw", "bucket", "pt"],
    "vars": {
      "a0-6": ["a0-6", "(pointer uint64)"],
      "a0-7": ["a0-7", "dma-packet"],
      "a3-0": ["a3-0", "dma-packet"],
      "a3-2": ["a3-2", "gs-gif-tag"],
      "a3-4": ["a3-4", "vector4w-2"],
      "a3-6": ["a3-6", "vector4w-2"],
      "a3-8": ["a3-8", "vector4w-2"],
      "a1-30": ["a1-30", "vector4w-2"],
      "v1-7": "buf"
    }
  },
  "internal-draw-debug-line": {
    "vars": {
      "s2-0": ["s2-0", "rgba"],
      "s5-0": ["s5-0", "rgba"],
      "a3-1": ["a3-1", "dma-packet"],
      "a3-3": ["a3-3", "gs-gif-tag"],
      "a1-43": ["a1-43", "(inline-array vector4w-2)"],
      "a0-31": ["a0-31", "(pointer uint64)"],
      "a0-32": ["a0-32", "dma-packet"]
    }
  },
  "add-debug-flat-triangle": {
    "vars": {
      "a3-1": ["a3-1", "dma-packet"],
      "a3-3": ["a3-3", "gs-gif-tag"],
      "a3-5": ["a3-5", "(inline-array vector4w-3)"],
      "a0-9": ["a0-9", "(pointer uint64)"],
      "a0-10": ["a0-10", "dma-packet"]
    }
  },
  "add-debug-line2d": {
    "vars": {
      "a2-3": ["a2-3", "dma-packet"],
      "a2-5": ["a2-5", "gs-gif-tag"],
      "a2-7": ["a2-7", "(inline-array vector4w)"],
      "a2-9": ["a2-9", "(inline-array vector4w)"],
      "a0-20": ["a0-20", "(pointer uint64)"],
      "v1-10": ["v1-10", "dma-packet"]
    }
  },
  "debug-percent-bar": {
    "vars": {
      "v1-5": ["v1-5", "dma-packet"]
    }
  },
  "debug-pad-display": {
    "vars": {
      "v1-12": ["v1-12", "dma-packet"]
    }
  },
  "internal-draw-debug-text-3d": {
    "vars": {
      "v1-11": ["v1-11", "dma-packet"]
    }
  },

  "generic-init-buffers": {
    "vars": {
      "v1-8": ["packet", "dma-packet"],
      "gp-0": ["gp-0", "gs-zbuf"],
      "s5-0": ["s5-0", "gs-zbuf"]
    }
  },

  "level-update-after-load": {
    "args": ["loaded-level", "level-login-state"],
    "vars": {
      "s3-0": "level-drawable-trees",
      "s5-0": "initial-timer",
      "v1-4": "current-timer",
      "v1-5": "elapsed-timer",
      "s2-0": "current-login-pos",
      "s2-1": ["current-drawable", "drawable-tree"],
      "s1-0": "idx-in-drawable"
    }
  },

  "(method 9 setting-data)": {
    "vars": {
      "s3-0": ["conn", "connection"]
    }
  },

  "(method 12 level)": {
    "vars": {
      "s5-3": ["s5-3", "pair"]
    }
  },

  "update-sound-banks": {
    "vars": {
      "t0-0": ["t0-0", "symbol"]
    }
  },

  "(method 16 level-group)": {
    "vars": {
      "s1-0": ["s1-0", "continue-point"]
    }
  },

  "(method 20 level)": {
    "vars": {
      "s3-0": ["s3-0", "ramdisk-rpc-fill"]
    }
  },

  "(method 9 game-info)": {
    "args": ["obj", "cause", "save-to-load", "continue-point-override"],
    "vars": {
      "v1-0": "selected-cause",
      "s4-1": "lev-info"
    }
  },

  "(method 10 game-info)": {
    "args": ["obj", "item", "amount", "source"],
    "vars": {
      "v1-10": "proc",
      "s4-1": "level-idx",
      "a0-35": "buzz-task",
      "s4-2": "buzz-index",
      "f30-0": "buzz-count",
      "s3-0": "ctrl",
      "s5-2": "buzz-bits"
    }
  },

  "(method 14 game-info)": {
    "args": ["obj", "lev"],
    "vars": {
      "s5-0": "perms",
      "s4-0": "lev-entities",
      "s3-0": "lev-entity-idx",
      "s2-0": "lev-entity-perm",
      "v1-8": "info-entity-perm"
    }
  },

  "(method 15 game-info)": {
    "args": ["obj", "lev"],
    "vars": {
      "s5-0": "lev-entities",
      "s4-0": "lev-entity-idx",
      "s3-0": "lev-entity-perm",
      "v1-7": "info-entity-perm"
    }
  },

  "(method 25 game-info)": {
    "args": ["obj", "save"],
    "vars": {
      "v1-0": ["save-data", "game-save-tag"],
      "s4-0": ["data", "game-save-tag"],
      "v1-9": "old-base-frame",
      "v1-10": "frame-counter-diff"
    }
  },

  "(method 10 game-save)": {
    "args": ["obj", "filename"],
    "vars": {
      "s5-0": "stream",
      "s3-0": "in-size",
      "s4-0": "my-size"
    }
  },

  "(method 11 game-save)": {
    "args": ["obj", "detail"],
    "vars": {
      "s4-0": ["tag", "game-save-tag"],
      "s3-0": "tag-idx",
      "s2-1": "prog-lev-idx",
      "a2-13": "lev-name"
    }
  },

  "debug-menu-func-decode": {
    "vars": {
      "v0-0": ["ret-val", "symbol"]
    }
  },

  "letterbox": {
    "vars": {
      "s5-0": "dma-buf",
      "v1-5": ["pkt", "dma-packet"]
    }
  },

  "blackout": {
    "vars": {
      "s5-0": "dma-buf",
      "gp-0": "sprite-dma-data",
      "v1-4": ["pkt", "dma-packet"]
    }
  },

  "set-master-mode": {
    "args": ["new-mode"],
    "vars": { "v1-3": "mode" }
  },

  "main-cheats": {
    "vars": {
      "v1-13": "cheatmode-state",
      "v1-158": "cheatmode-debug-state",
      "v1-303": "cheat-language-state",
      "v1-394": "cheat-pal-state",
      "s5-9": "dma-buff",
      "gp-9": "dma-start",
      "v1-533": ["dma-pkt", "dma-packet"],
      "gp-10": "timeout",
      "v1-548": "inactive-timeout",
      "gp-11": "game-end-proc"
    }
  },

  "load-game-text-info": {
    "args": ["txt-name", "curr-text", "heap"],
    "vars": {
      "sv-16": "heap-sym-heap",
      "sv-24": "lang",
      "sv-32": "load-status",
      "sv-40": "heap-free"
    }
  },

  "(method 13 art-group)": {
    "vars": {
      "s3-0": "art-elt",
      "s4-0": "janim",
      "v1-9": "janim-group",
      "s2-0": "success"
    }
  },

  "(method 14 art-group)": {
    "vars": {
      "s3-0": "art-elt",
      "s4-0": "janim",
      "v1-9": "janim-group",
      "s3-1": "success"
    }
  },

  "(method 16 process-drawable)": {
    "vars": {
      "s3-0": "body-T-world",
      "s0-0": "world-T-body",
      "s2-0": "grav-rt-body",
      "a1-5": "vel-rt-body"
    }
  },

  "(method 11 cam-float-seeker)": {
    "args": ["obj", "offset"],
    "vars": {
      "f1-2": "pos-error",
      "f0-5": "partial-velocity-limit",
      "f1-3": "daccel",
      "f1-6": "abs-vel",
      "f0-6": "abs-vel-limit",
      "f0-10": "dpos"
    }
  },

  "(method 9 trsqv)": {
    "args": ["obj", "dir", "vel", "frame-count"],
    "vars": {
      "f0-0": "yaw-error",
      "f1-2": "yaw-limit",
      "f30-0": "saturated-yaw",
      "a1-2": "quat",
      "f0-2": "old-diff"
    }
  },

  "(method 13 trsqv)": {
    "args": ["obj", "yaw", "vel", "frame-count"]
  },

  "(method 16 trsqv)": {
    "vars": {
      "s5-0": "quat",
      "s1-0": "grav",
      "s3-0": "rot-mat",
      "s4-0": "dir-z",
      "a0-4": "dir-x"
    }
  },

  "(method 25 trsqv)": {
    "vars": {
      "s5-0": "quat",
      "gp-0": "dir-z",
      "s5-1": "dir-y",
      "a1-2": "dir-grav",
      "v1-2": "grav-z-plane",
      "f0-1": "grav-dot"
    }
  },

  "(method 17 trsqv)": {
    "args": ["obj", "target", "y-rate", "z-rate"],
    "vars": {
      "gp-0": "quat",
      "s5-0": "temp-quat"
    }
  },

  "raw-ray-sphere-intersect": {
    "vars": {
      "v0-0": ["result", "float"],
      "v1-0": ["v1-0", "float"]
    }
  },

  "ray-sphere-intersect": {
    "args": ["ray-origin", "ray-dir", "sph-origin", "radius"]
  },

  "ray-circle-intersect": {
    "args": ["ray-origin", "ray-dir", "circle-origin", "radius"]
  },

  "ray-cylinder-intersect": {
    "args": [
      "ray-origin",
      "ray-dir",
      "cyl-origin",
      "cyl-axis",
      "cyl-rad",
      "cyl-len"
    ]
  },

  "(method 10 cylinder)": {
    "args": ["obj", "probe-origin", "probe-dir"],
    "vars": {
      "f30-0": "result",
      "f0-5": "u-origin-sph",
      "s4-0": "end-pt",
      "f0-8": "u-end-sphere"
    }
  },

  "(method 10 cylinder-flat)": {
    "args": ["obj", "probe-origin", "probe-dir"],
    "vars": {
      "f30-0": "result",
      "f0-5": "u-origin-circle",
      "s5-0": "end-pt",
      "f0-8": "u-end-circle"
    }
  },

  "ray-arbitrary-circle-intersect": {
    "args": [
      "probe-origin",
      "probe-dir",
      "circle-origin",
      "circle-normal",
      "radius"
    ]
  },

  "print-tr-stat": {
    "args": ["stat", "name", "dest"]
  },

  "update-subdivide-settings!": {
    "args": ["settings", "math-cam", "idx"]
  },

  "start-perf-stat-collection": {
    "vars": {
      "v1-2": "frame-idx",
      "v1-5": "bucket",
      "a0-2": "which-stat",
      "a0-7": "stat-idx"
    }
  },

  "ja-play-spooled-anim": {
    "vars": {
      "sv-16": "spool-part",
      "sv-28": "old-skel-status",
      "sv-64": "spool-sound"
    }
  },

  "(method 3 anim-tester)": {
    "vars": {
      "s5-0": ["s5-0", "anim-test-obj"],
      "s4-0": ["s4-0", "anim-test-sequence"],
      "s3-0": ["s3-0", "anim-test-seq-item"]
    }
  },

  "anim-test-obj-item-valid?": {
    "vars": {
      "s5-0": ["s5-0", "anim-test-sequence"]
    }
  },

  "anim-test-obj-remove-invalid": {
    "vars": {
      //"s5-0": ["s5-0", "anim-test-sequence"],
      "v1-31": ["v1-31", "anim-test-sequence"],
      "s3-0": ["s3-0", "anim-test-seq-item"],
      "s2-0": ["s2-0", "anim-test-seq-item"]
    }
  },

  "anim-tester-reset": {
    "vars": {
      "v1-1": ["v1-1", "anim-test-obj"]
    }
  },

  "anim-tester-save-object-seqs": {
    "vars": {
      "s4-2": ["s4-2", "anim-test-seq-item"]
    }
  },

  "sprite-setup-header": {
    "args": ["hdr", "num-sprites"]
  },

  "(method 0 sprite-aux-list)": {
    "args": ["allocation", "type-to-make", "size"]
  },

  "sprite-setup-frame-data": {
    "args": ["data", "tbp-offset"]
  },

  "(method 0 sprite-array-2d)": {
    "args": ["allocation", "type-to-make", "group-0-size", "group-1-size"],
    "vars": {
      "v1-0": "sprite-count",
      "s4-0": "vec-data-size",
      "a2-3": "adgif-data-size"
    }
  },

  "(method 0 sprite-array-3d)": {
    "args": ["allocation", "type-to-make", "group-0-size", "group-1-size"],
    "vars": {
      "v1-0": "sprite-count",
      "s4-0": "vec-data-size",
      "a2-3": "adgif-data-size"
    }
  },

  "sprite-set-3d-quaternion": {
    "args": ["data", "quat"]
  },
  "sprite-get-3d-quaternion": {
    "args": ["data", "quat"]
  },
  "sprite-add-matrix-data": {
    "args": ["dma-buff", "matrix-mode"],
    "vars": {
      "v1-0": "count",
      "a2-1": ["pkt1", "dma-packet"],
      "a1-2": ["mtx", "matrix"],
      "a2-9": ["pkt2", "dma-packet"],
      "a1-11": "mtx2",
      "a1-20": "hvdf-idx"
    }
  },

  "sprite-add-frame-data": {
    "args": ["dma-buff", "tbp-offset"],
    "vars": {
      "a0-1": ["pkt", "dma-packet"]
    }
  },

  "sprite-add-2d-chunk": {
    "args": [
      "sprites",
      "start-sprite-idx",
      "num-sprites",
      "dma-buff",
      "mscal-addr"
    ],
    "vars": {
      "a0-1": ["pkt1", "dma-packet"],
      "s1-0": "qwc-pkt1",
      "a1-7": "qwc-pkt2",
      "a0-5": ["pkt2", "dma-packet"],
      "a1-11": "qwc-pkt3",
      "a0-7": ["pkt3", "dma-packet"],
      "v1-7": ["pkt4", "dma-packet"]
    }
  },

  "sprite-add-2d-all": {
    "args": ["sprites", "dma-buff", "group-idx"],
    "vars": {
      "s4-0": "current-sprite-idx",
      "s2-0": "remaining-sprites",
      "s3-0": "mscal-addr"
    }
  },

  "sprite-add-3d-chunk": {
    "args": ["sprites", "start-sprite-idx", "num-sprites", "dma-buff"],
    "vars": {
      "a0-1": ["pkt1", "dma-packet"],
      "s2-0": "qwc-pkt1",
      "a1-7": "qwc-pkt2",
      "a0-5": ["pkt2", "dma-packet"],
      "a1-11": "qwc-pkt3",
      "a0-7": ["pkt3", "dma-packet"],
      "v1-7": ["pkt4", "dma-packet"]
    }
  },

  "sprite-add-3d-all": {
    "args": ["sprites", "dma-buff", "group-idx"],
    "vars": {
      "s4-0": "current-sprite-idx",
      "s3-0": "remaining-sprites"
    }
  },

  "sprite-add-shadow-chunk": {
    "args": ["shadow-buff", "start-idx", "num-sprites", "dma-buff"],
    "vars": {
      "s2-0": "qwc-pkt1",
      "a0-1": ["pkt1", "dma-packet"],
      "a1-7": "qwc-pkt2",
      "a0-5": ["pkt2", "dma-packet"],
      "v1-5": "sprite-idx",
      "a0-7": "dma-vec-data",
      "a1-14": "in-vec-data",
      "a1-15": "qwc-pkt3",
      "a0-11": ["pkt3", "dma-packet"],
      "s2-1": "si",
      "s1-0": "dma-adgif-data",
      "s0-0": "in-adgif-data",
      "v1-21": ["pkt4", "dma-packet"]
    }
  },

  "sprite-add-shadow-all": {
    "args": ["shadow-buff", "dma-buff"],
    "vars": {
      "s4-0": "current-shadow",
      "s3-0": "remaining-shadows"
    }
  },

  "sprite-draw": {
    "args": "disp",
    "vars": {
      "gp-0": "dma-mem-begin",
      "s4-0": "dma-buff",
      "s5-0": "dma-bucket-begin",
      "a0-9": ["pkt1", "dma-packet"],
      "a0-11": ["giftag", "gs-gif-tag"],
      "a0-17": ["pkt2", "dma-packet"],
      "a0-19": ["pkt3", "dma-packet"],
      "a0-26": ["pkt4", "dma-packet"],
      "v1-26": ["pkt5", "dma-packet"],
      "v1-31": "mem-use"
    }
  },

  "mem-usage-bsp-tree": {
    "args": ["header", "node", "mem-use", "flags"]
  },

  "(method 8 bsp-header)": {
    "args": ["obj", "mem-use", "flags"]
  },

  "(method 10 bsp-header)": {
    "args": ["obj", "other-draw", "disp-frame"],
    "vars": {
      "s4-0": "lev",
      "a2-3": "vis-list-qwc",
      "v1-15": "vis-list-qwc2",
      "a0-9": ["vis-list-spad", "(pointer uint128)"],
      "a1-5": ["vis-list-lev", "(pointer uint128)"],
      "a2-4": "current-qw"
    }
  },

  "bsp-camera-asm": {
    "args": ["bsp-hdr", "camera-pos"],
    "vars": {
      "v1-0": ["next-node", "bsp-node"],
      "a1-1": "real-node"
    }
  },

  "level-remap-texture": {
    "args": ["tex-id"],
    "vars": {
      "v1-1": "bsp-hdr",
      "a3-0": "table-size",
      "v1-2": ["table-data-start", "(pointer uint64)"],
      "t0-0": "table-data-ptr",
      "a1-1": "mask1",
      "a2-1": "masked-tex-id",
      "a3-2": "table-data-end",
      "t0-3": "midpoint",
      "t1-1": "diff"
    }
  },

  "debug-menu-make-from-template": {
    "vars": {
      "s5-1": ["s5-1", "string"]
    }
  },

  "debug-menu-item-var-render": {
    "vars": {
      "v1-14": ["v1-14", "dma-packet"]
    }
  },

  "generic-add-constants": {
    "vars": {
      "a0-1": ["a0-1", "dma-packet"]
    }
  },

  "generic-init-buf": {
    "vars": {
      "a0-2": ["a0-2", "dma-packet"],
      "a0-4": ["a0-4", "gs-gif-tag"],
      "a0-9": ["a0-9", "dma-packet"],
      "v1-7": ["v1-7", "(pointer int32)"]
    }
  },

  "(anon-function 1 cam-combiner)": {
    "vars": {
      "pp": ["pp", "process"]
    }
  },

  "(anon-function 2 cam-combiner)": {
    "vars": {
      "a0-3": ["vec", "(pointer vector)"]
    }
  },

  "(method 14 sync-info)": {
    "args": ["obj", "period", "phase"],
    "vars": {
      "f0-1": "period-float",
      "f1-1": "value"
    }
  },

  "(method 14 sync-info-eased)": {
    "args": ["obj", "period", "phase", "out-param", "in-param"],
    "vars": {
      "f0-9": "total-easing-phase",
      "f1-11": "total-normal-phase",
      "f0-1": "period-float",
      "f1-1": "value",
      "f3-4": "y-end"
    }
  },

  "(method 14 sync-info-paused)": {
    "args": ["obj", "period", "phase", "out-param", "in-param"]
  },

  "(method 15 sync-info)": {
    "args": [
      "obj",
      "proc",
      "default-period",
      "default-phase",
      "default-out",
      "default-in"
    ]
  },

  "(method 15 sync-info-eased)": {
    "args": [
      "obj",
      "proc",
      "default-period",
      "default-phase",
      "default-out",
      "default-in"
    ]
  },

  "(method 15 sync-info-paused)": {
    "args": [
      "obj",
      "proc",
      "default-period",
      "default-phase",
      "default-out",
      "default-in"
    ]
  },

  "(method 10 sync-info)": {
    "vars": {
      "v1-0": "period",
      "f0-1": "period-float",
      "f1-2": "current-time"
    }
  },

  "(method 16 sync-info)": {
    "args": ["obj", "user-time-offset"],
    "vars": {
      "a2-0": "period",
      "f0-1": "period-float",
      "v1-0": "wrapped-user-offset",
      "f1-4": "current-time",
      "f1-6": "current-time-wrapped",
      "f1-10": "combined-offset",
      "f0-3": "combined-offset-wrapped"
    }
  },

  "(method 11 sync-info)": {
    "vars": {
      "v1-0": "period",
      "f0-1": "period-float",
      "f1-2": "current-time"
    }
  },

  "(method 11 sync-info-paused)": {
    "vars": {
      "v1-0": "period",
      "f1-0": "period-float",
      "f0-1": "max-phase",
      "f2-2": "current-time"
    }
  },

  "(method 9 sync-info)": {
    "args": ["obj", "max-val"],
    "vars": {
      "v1-0": "period",
      "f0-1": "period-float",
      "f1-2": "current-time"
    }
  },

  "(method 13 sync-info)": {
    "args": ["obj"],
    "vars": {
      "v1-0": "period",
      "f1-0": "period-float",
      "f2-2": "current-time",
      "f0-1": "max-val",
      "f0-2": "phase-out-of-2"
    }
  },

  "(method 13 sync-info-eased)": {
    "args": ["obj"],
    "vars": {
      "v1-0": "period",
      "f1-0": "period-float",
      "f0-1": "max-val",
      "f2-2": "current-time",
      "f0-2": "current-val",
      "v1-2": "in-mirror?",
      "f1-4": "tlo",
      "f0-7": "eased-phase"
    }
  },

  "(method 12 sync-info)": {
    "args": ["obj", "max-out-val"],
    "vars": {
      "v1-0": "period",
      "f1-0": "period-float",
      "f0-1": "max-val",
      "f2-2": "current-time",
      "f0-2": "current-val"
    }
  },

  "(method 12 sync-info-eased)": {
    "args": ["obj", "max-out-val"]
  },
  "(method 12 sync-info-paused)": {
    "args": ["obj", "max-out-val"]
  },

  "(method 9 delayed-rand-float)": {
    "args": ["obj", "min-tim", "max-time", "max-times-two"]
  },

  "(method 10 oscillating-float)": {
    "args": ["obj", "target-offset"],
    "vars": { "f0-3": "acc" }
  },

  "(method 9 oscillating-float)": {
    "args": ["obj", "init-val", "accel", "max-vel", "damping"]
  },

  "(method 9 bouncing-float)": {
    "args": [
      "obj",
      "init-val",
      "max-val",
      "min-val",
      "elast",
      "accel",
      "max-vel",
      "damping"
    ]
  },

  "(method 9 delayed-rand-vector)": {
    "args": ["obj", "min-time", "max-time", "xz-range", "y-range"]
  },

  "(method 9 oscillating-vector)": {
    "args": ["obj", "init-val", "accel", "max-vel", "damping"]
  },

  "(method 10 oscillating-vector)": {
    "args": ["obj", "target-offset"],
    "vars": { "f0-2": "vel" }
  },

  "(method 9 trajectory)": {
    "args": ["obj", "time", "result"]
  },

  "(method 10 trajectory)": {
    "args": ["obj", "time", "result"]
  },

  "(method 11 trajectory)": {
    "args": ["obj", "from", "to", "duration", "grav"],
    "vars": { "f0-3": "xz-vel" }
  },

  "(method 12 trajectory)": {
    "args": ["obj", "from", "to", "xz-vel", "grav"],
    "vars": { "f0-1": "duration" }
  },

  "(method 13 trajectory)": {
    "args": ["obj", "from", "to", "y-vel", "grav"]
  },

  "(method 15 trajectory)": {
    "vars": {
      "s5-0": "prev-pos",
      "s4-0": "pos",
      "s3-0": "num-segments",
      "f0-1": "t-eval"
    }
  },

  "set-font-color-alpha": {
    "args": ["idx", "alpha"]
  },

  "print-game-text-scaled": {
    "args": ["str", "scale", "font-ctxt", "alpha"]
  },

  "print-game-text": {
    "args": ["str", "font-ctxt", "alpha", "offset-thing"]
  },

  "display-frame-start": {
    "args": ["disp", "new-frame-idx", "odd-even"],
    "vars": {
      "f30-0": "time-ratio",
      "s3-0": "scaled-seconds",
      "s3-1": "new-frame"
    }
  },

  "display-frame-finish": {
    "args": ["disp"],
    "vars": {
      "s4-0": "this-frame",
      "s5-0": "this-calc-buf",
      "s3-0": "bucket-idx",
      "v1-7": "this-global-buf",
      "a0-15": "global-buf",
      "v1-19": "calc-current",
      "a2-1": "calc-start",
      "s4-1": "global-current",
      "s5-1": "global-start",
      "s3-1": "global-end"
    }
  },

  "display-sync": {
    "args": ["disp"],
    "vars": {
      "s4-0": "frame-idx",
      "s5-0": "syncv-result",
      "s3-0": "dma-buf-to-send",
      "a1-4": "next-frame"
    }
  },

  "draw-string": {
    "args": ["str-in", "context"],
    "vars": {
      "v1-5": "fw",
      "a1-1": "dma-out",
      "t2-0": "flags",
      "a3-0": "has-flag-size24",
      "a3-1": "font-table-12",
      "a3-2": "font-table-to-use",
      "t0-0": "q-lo-tmpl",
      "t1-0": "q-hi-tmpl",
      "t3-0": "in-color",
      "t3-1": "color-array-prod",
      "t4-0": "fw+col",
      "t3-2": "q-verts-0p",
      "t5-0": "q-verts-1p",
      "t3-3": "q-verts-2p",
      "t4-1": "q-verts-3p",
      "t5-1": "q-verts-1t",
      "t5-2": "q-verts-1",
      "t3-4": "q-verts-2t",
      "t3-5": "q-verts-2",
      "t6-0": "q-verts-0t",
      "t6-1": "q-verts-0",
      "t4-2": "q-verts-3t",
      "t4-3": "q-verts-3",
      "t3-6": "fw2",
      "t4-4": "str-char",
      "t5-3": "not-sc-lit1",
      "t5-4": "not-sc-~",
      "t4-14": "fc-cr",
      "r0-0": "r0",
      "r0-1": "r0",
      "r0-2": "r0",
      "r0-3": "r0"
    }
  },

  "add-debug-outline-triangle": {
    "args": ["enable", "bucket", "p0", "p1", "p2", "color"]
  },

  "unpack-comp-rle": {
    "args": ["out", "in"],
    "vars": {
      "v1-2": "current-input",
      "a2-0": "repeated-value",
      "v1-3": "copy-length",
      "a2-1": "src-val"
    }
  },

  "(method 16 level)": {
    "args": ["obj", "vis-info"],
    "vars": {
      "a0-1": "cam-leaf-idx",
      "v1-1": "curr-vis-str",
      "s4-0": "desired-vis-str",
      "s4-1": "vis-buffer",
      "s3-1": "vis-load-result",
      "v1-28": "dest-bits",
      "a1-3": "len",
      "a0-19": "bsp-bits",
      "a1-5": "len-qw",
      "s2-0": "lower-flag-bits",
      "s1-0": "spad-start",
      "s0-0": "spad-end",
      "s3-2": "list-len",
      "v1-49": "list-qwc",
      "v0-1": "result"
    }
  },

  "(method 9 merc-fragment)": {
    "vars": {
      "s5-0": "fp-data",
      "s4-0": "eye-ctrl",
      "s3-0": "shader",
      "v1-7": "eye-tex-block",
      "v1-34": "eye-tex-block-2",
      "v1-57": "tex",
      "a0-36": "seg"
    }
  },

  "(method 9 merc-effect)": {
    "vars": {
      "v1-0": "data",
      "v1-1": "tex",
      "a0-8": "seg",
      "s3-0": "frag-idx",
      "s2-0": "ctrl-size",
      "s1-0": "geo-size",
      "s4-0": ["geo", "merc-fragment"],
      "s5-0": ["ctrl", "merc-fragment-control"]
    }
  },

  "merc-vu1-add-vu-function": {
    "args": ["dma", "func", "flush-mode"],
    "vars": {
      "v1-0": "func-data",
      "a3-0": "qwc",
      "a1-1": "dst",
      "t0-1": "qwc-this-time"
    }
  },

  "(method 8 merc-ctrl)": {
    "vars": {
      "s4-0": "ctrl-mem",
      "s3-0": "effect-idx",
      "s2-0": ["fctrl", "merc-fragment-control"],
      "s1-0": "frag-idx",
      "v1-35": "effect-mem",
      "a0-15": "effect-idx2",
      "a1-9": ["bctrl", "merc-blend-ctrl"],
      "a2-1": "blend-frag-idx"
    }
  },

  "(method 9 merc-ctrl)": {
    "vars": {
      "v1-3": "seg",
      "s5-0": "effect-idx",
      "a0-4": "idx-with-bit1",
      "a0-7": "this-effect",
      "a1-5": "last-effect",
      "a2-6": "copy-idx"
    }
  },

  "merc-vu1-init-buffer": {
    "args": ["dma-bucket", "test"],
    "vars": {
      "gp-0": "bucket",
      "s4-0": "dma-buf"
    }
  },

  "(method 9 screen-filter)": {
    "vars": {
      "v1-4": ["v1-4", "dma-packet"],
      "s5-0": "buf"
    }
  },

  "(method 11 fact-info-target)": {
    "args": ["obj", "kind", "amount", "source-handle"],
    "vars": { "f0-29": "buzz-count", "f30-0": "eco-lev" }
  },

  "auto-save-init-by-other": {
    "args": ["desired-mode", "notify-proc", "card-idx", "file-idx"]
  },

  "debug-menu-item-var-make-int": {
    "args": [
      "item",
      "callback",
      "inc",
      "has-range",
      "range-min",
      "range-max",
      "hex"
    ]
  },

  "debug-menu-item-var-make-float": {
    "args": [
      "item",
      "callback",
      "inc",
      "has-range",
      "range-min",
      "range-max",
      "precision"
    ]
  },

  "(method 0 debug-menu-item-var)": {
    "args": ["allocation", "type-to-make", "name", "id", "max-width"]
  },

  "debug-menu-context-grab-joypad": {
    "args": ["menu", "callback-arg", "callback-func"]
  },

  "debug-menu-context-default-selection": {
    "args": ["ctxt", "keep-current"],
    "vars": {
      "s5-0": "menu",
      "s4-0": "currently-active"
    }
  },

  "debug-menu-rebuild": {
    "args": ["menu"],
    "vars": {
      "s4-0": "max-width",
      "s5-0": "entry-count",
      "s3-0": "iter",
      "a0-1": "current-item"
    }
  },

  "debug-menu-context-set-root-menu": {
    "args": ["context", "menu"],
    "vars": {
      "s4-0": "active"
    }
  },

  "debug-menu-append-item": {
    "args": ["menu", "item"],
    "vars": {
      "gp-0": "context",
      "s4-0": "was-active"
    }
  },

  "(anon-function 82 default-menu)": {
    "vars": { "s4-0": ["s4-0", "texture-id"] }
  },

  "process-status-bits": {
    "vars": { "s3-0": ["proc-draw", "process-drawable"] }
  },

  "(method 29 entity-actor)": {
    "args": ["obj", "mode", "expected-type"]
  },

  "(method 13 level-group)": {
    "args": ["obj", "mode", "expected-type"]
  },

  "(method 24 entity)": {
    "args": ["obj", "lev-group", "lev", "aid"],
    "vars": {
      "v1-4": "level-link",
      "t0-5": "other-prev",
      "t1-1": "other-front"
    }
  },

  "update-actor-vis-box": {
    "args": ["proc", "min-pt", "max-pt"],
    "vars": { "v1-4": "world-bounds-origin", "f0-0": "radius" }
  },

  "init-entity": {
    "args": ["proc", "ent"]
  },

  "(method 22 entity-actor)": {
    "vars": {
      "s5-0": "entity-type",
      "v1-0": "info",
      "s4-0": "entity-process"
    }
  },

  "(method 18 bsp-header)": {
    "vars": {
      "a2-0": "existing-actor-count",
      "s4-0": "birth-idx",
      "a0-4": "idx-to-birth",
      "v1-25": "actor-to-birth",
      "a2-5": "existing-amb-count",
      "s4-1": "amb-array",
      "s3-0": "bsp-ambs",
      "a0-10": "amb-to-birth",
      "s4-2": "cams"
    }
  },

  "(code falling beach-rock)": {
    "vars": {
      "gp-2": ["gp-2", "handle"],
      "s5-1": ["s5-1", "handle"]
    }
  },

  "draw-percent-bar": {
    "vars": {
      "v1-3": ["v1-3", "dma-packet"]
    }
  },

  "(dummy-17 progress)": {
    "vars": {
      "v1-20": ["v1-20", "dma-packet"],
      "v1-81": ["v1-81", "dma-packet"]
    }
  },

  "make-current-level-available-to-progress": {
    "vars": {
      "a0-0": "cur-lev",
      "v1-7": "lev-idx"
    }
  },

  "make-levels-with-tasks-available-to-progress": {
    "vars": {
      "gp-0": "i",
      "s4-0": "ii",
      "s5-0": "tasks"
    }
  },

  "get-next-task-up": {
    "args": ["cur-task-idx", "lev-idx"]
  },
  "get-next-task-down": {
    "args": ["cur-task-idx", "lev-idx"]
  },
  "get-next-level-up": {
    "args": ["lev-idx"]
  },
  "get-next-level-down": {
    "args": ["lev-idx"]
  },

  "calculate-completion": {
    "args": ["the-progress"],
    "vars": {
      "sv-40": "total-cells",
      "sv-48": "total-buzzers",
      "sv-56": "total-orbs",
      "sv-16": "current-cells",
      "sv-24": "current-buzzers",
      "sv-32": "current-orbs"
    }
  },

  "(method 48 progress)": {
    "args": ["obj", "screen", "option"]
  },

  "activate-progress": {
    "args": ["creator", "screen"]
  },

  "(method 23 progress)": {
    "args": ["obj", "aspect", "video-mode"]
  },

  "(method 35 progress)": {
    "vars": {
      "s4-0": ["s4-0", "text-id"]
    }
  },

  "(method 43 progress)": {
    "vars": {
      "s4-0": ["s4-0", "text-id"]
    }
  },

  "(method 38 progress)": {
    "vars": {
      "a1-1": ["a1-1", "text-id"]
    }
  },

  "(post progress-debug)": {
    "vars": {
      "v1-7": ["v1-7", "dma-packet"],
      "v1-16": ["v1-16", "dma-packet"],
      "v1-25": ["v1-25", "dma-packet"],
      "v1-34": ["v1-34", "dma-packet"]
    }
  },

  "voicebox-track": {
    "vars": {
      "a0-1": "target"
    }
  },

  "citb-drop-plat-drop-children": {
    "vars": {
      "v1-4": ["v1-4", "handle"]
    }
  },

  "master-track-target": {
    "vars": {
      "v0-1": ["v0-1", "symbol"],
      "v1-14": ["v1-14", "handle"]
    }
  },

  "cam-los-spline-collide": {
    "vars": {
      "s3-0": ["s3-0", "(inline-array collide-cache-tri)"]
    }
  },

  "cam-draw-collide-cache": {
    "vars": {
      "gp-0": ["gp-0", "(inline-array collide-cache-tri)"]
    }
  },

  "cam-los-collide": {
    "vars": {
      "s1-1": ["s1-1", "(inline-array collide-cache-tri)"]
    }
  },

  "(event cam-master-active)": {
    "vars": {
      // "v0-0": ["v0-0", "symbol"]
    }
  },

  "(code plunger-lurker-plunge)": {
    "vars": {
      "gp-1": ["gp-1", "handle"],
      "s5-0": ["s5-0", "othercam"]
    }
  },

  "flying-lurker-play-intro": {
    "vars": {
      "gp-1": ["gp-1", "handle"]
    }
  },

  "(code flying-lurker-start)": {
    "vars": {
      "v1-9": ["v1-9", "float"]
    }
  },

  "(code flying-lurker-fly)": {
    "vars": {
      "v1-42": ["v1-42", "float"]
    }
  },

  "(method 14 level-group)": {
    "vars": {
      "s1-1": ["s1-1", "process-drawable"]
    }
  },

  "level-hint-displayed?": {
    "vars": {
      "a0-1": ["a0-1", "level-hint"]
    }
  },

  "level-hint-init-by-other": {
    "vars": {
      "a0-6": ["a0-6", "string"]
    }
  },

  "(method 27 entity-ambient)": {
    "vars": {
      "s5-0": ["s5-0", "symbol"]
    }
  },

  "upload-vis-bits": {
    "vars": {
      "v1-2": "qwc",
      "a0-1": ["lev-vis-bits", "(pointer uint128)"],
      "a1-1": ["all-vis", "(pointer uint128)"],
      "a2-2": ["spad-vis", "(pointer uint128)"]
    }
  },

  "(event be-clone process-taskable)": {
    "vars": {
      "v0-0": ["v0-0", "shadow-geo"]
    }
  },

  "(event idle process-taskable)": {
    "vars": {
      "v0-0": ["v0-0", "symbol"]
    }
  },

  "(method 9 load-dir-art-group)": {
    "args": ["obj", "art-name", "do-reload", "heap", "version"]
  },

  "(method 15 hud-money)": {
    "vars": {
      "v1-8": ["v1-8", "dma-packet"]
    }
  },

  "(method 15 hud-money-all)": {
    "vars": {
      "v1-32": ["v1-32", "dma-packet"]
    }
  },

  "(trans fisher-done)": {
    "vars": {
      "v1-13": ["v1-13", "dma-packet"]
    }
  },

  "anim-tester-get-playing-item": {
    "vars": {
      "v0-0": ["v0-0", "anim-test-seq-item"]
    }
  },

  "light-eco-mother-default-event-handler": {
    "vars": {
      "v0-0": ["v0-0", "int"]
    }
  },

  "(method 7 sage-finalboss)": {
    "vars": {
      "v1-0": ["v1-0", "(inline-array sage-finalboss-particle)"]
    }
  },

  "(code robotboss-white-eco-movie)": {
    "vars": {
      "gp-1": ["gp-1", "handle"]
    }
  },

  "cam-collision-record-draw": {
    "vars": {
      "s5-0": ["s5-0", "cam-collision-record"]
    }
  },

  "cam-collision-record-save": {
    "vars": {
      "v1-5": ["v1-5", "cam-collision-record"]
    }
  },

  "cam-layout-save-cam-trans": {
    "vars": {
      "s5-1": ["s5-1", "vector"],
      "s2-1": ["s2-1", "vector"]
    }
  },

  "(method 15 level)": {
    "vars": {
      "v1-5": ["s5-1", "(inline-array box8s)"]
    }
  },

  "aaaaaaaaaaaaaaaaaaaaaaa": {}
}
