1.language ECMAScript 2 3.function any .func_main_0(any a0, any a1, any a2) { 4 mov v0, a0 5 mov v1, a1 6 mov v2, a2 7 createarraywithbuffer 0x0, _0 8 sta v6 9 sta v6 10 getiterator 0x1 11 sta v9 12 lda v9 13 ldobjbyname 0x3, next 14 sta v8 15 ldfalse 16 sta v7 17 ldfalse 18 sta v11 19 ldundefined 20 sta v12 21LABEL_0: 22LABEL_4: 23 lda v8 24 callthis0 0x5, v9 25 sta v10 26 throw.ifnotobject v10 27 lda v10 28 ldobjbyname 0x7, done 29 sta v11 30 isfalse 31 jnez LABEL_8 32 ldtrue 33 sta v11 34 ldundefined 35 ldundefined 36 jmp LABEL_9 37LABEL_8: 38 lda v10 39 ldobjbyname 0x9, value 40 sta v12 41LABEL_9: 42LABEL_5: 43 jmp LABEL_7 44LABEL_6: 45 sta v12 46 ldtrue 47 sta v11 48 lda v12 49 throw 50LABEL_7: 51 sttoglobalrecord 0xb, a 52LABEL_10: 53 lda v8 54 callthis0 0xc, v9 55 sta v10 56 throw.ifnotobject v10 57 lda v10 58 ldobjbyname 0xe, done 59 sta v11 60 isfalse 61 jnez LABEL_14 62 ldtrue 63 sta v11 64 ldundefined 65 ldundefined 66 jmp LABEL_15 67LABEL_14: 68 lda v10 69 ldobjbyname 0x10, value 70 sta v12 71LABEL_15: 72LABEL_11: 73 jmp LABEL_13 74LABEL_12: 75 sta v12 76 ldtrue 77 sta v11 78 lda v12 79 throw 80LABEL_13: 81 sttoglobalrecord 0x12, b 82LABEL_1: 83 lda v11 84 istrue 85 jnez LABEL_3 86 sta v13 87 lda v7 88 istrue 89 jnez LABEL_16 90 ldtrue 91 sta v7 92 ldundefined 93 sta v14 94 ldhole 95 sta v15 96LABEL_17: 97 lda v9 98 ldobjbyname 0x13, return 99 sta v8 100 sta v16 101 ldundefined 102 eq 0x15, v16 103 jnez LABEL_16 104 lda v8 105 callthis0 0x16, v9 106 sta v14 107LABEL_18: 108 jmp LABEL_20 109LABEL_19: 110 sta v15 111LABEL_20: 112 lda v15 113 sta v16 114 ldhole 115 sta v17 116 lda v16 117 noteq 0x18, v17 118 jeqz LABEL_21 119LABEL_22: 120 lda v16 121 throw 122LABEL_21: 123 lda v14 124 throw.ifnotobject v14 125LABEL_16: 126 lda v13 127 jmp LABEL_3 128LABEL_2: 129 sta v12 130 lda v11 131 istrue 132 jnez LABEL_23 133 lda v12 134 sta v13 135 lda v7 136 istrue 137 jnez LABEL_24 138 ldtrue 139 sta v7 140 ldundefined 141 sta v14 142 ldhole 143 sta v15 144LABEL_25: 145 lda v9 146 ldobjbyname 0x19, return 147 sta v8 148 sta v16 149 ldundefined 150 eq 0x1b, v16 151 jnez LABEL_24 152 lda v8 153 callthis0 0x1c, v9 154 sta v14 155LABEL_26: 156 jmp LABEL_28 157LABEL_27: 158 sta v15 159LABEL_28: 160 lda v13 161 throw 162 lda v14 163 throw.ifnotobject v14 164LABEL_24: 165 lda v13 166 throw 167LABEL_23: 168 lda v12 169 throw 170LABEL_3: 171 lda v6 172 ldundefined 173 returnundefined 174} 175 176.catchall LABEL_4, LABEL_5, LABEL_6 177 178.catchall LABEL_10, LABEL_11, LABEL_12 179 180.catchall LABEL_17, LABEL_18, LABEL_19 181 182.catchall LABEL_25, LABEL_26, LABEL_27 183 184.catchall LABEL_0, LABEL_1, LABEL_2 185 186 187