1.language ECMAScript 2 3slotNum = 0x26 4.function any .func_main_0(any a0, any a1, any a2) { 5 nop 6label_49: 7label_0: 8 createarraywithbuffer 0x0, _1 9 getiterator 0x1 10 sta v0 11 ldobjbyname 0x3, next 12 sta v1 13 ldfalse 14 sta v2 15 ldfalse 16 sta v3 17 ldundefined 18label_33: 19label_25: 20label_35: 21 mov v6, v3 22 mov v4, v3 23 lda v3 24 callruntime.istrue 0x5 25 jnez label_1 26label_2: 27 lda v1 28 callthis0 0x6, v0 29 sta v8 30 throw.ifnotobject v8 31 ldobjbyname 0x8, done 32 sta v3 33 mov v6, v3 34 mov v4, v3 35 callruntime.isfalse 0xa 36 jnez label_3 37label_4: 38 ldtrue 39 sta v3 40 mov v6, v3 41 mov v4, v3 42 ldundefined 43 jmp label_1 44label_3: 45 lda v8 46 ldobjbyname 0xb, value 47 sta v8 48 jmp label_5 49label_1: 50 mov v6, v3 51 mov v4, v3 52 ldundefined 53 sta v8 54label_26: 55end_label_26: 56 jmp label_5 57label_51: 58 sta v7 59label_44: 60 mov v4, v6 61 ldtrue 62 sta v1 63 mov v4, v1 64 lda v7 65 throw 66label_5: 67 mov v4, v3 68 lda v8 69 sttoglobalrecord 0xd, a 70label_27: 71label_38: 72 mov v6, v3 73 lda v3 74 callruntime.istrue 0xe 75 jnez label_6 76label_7: 77 lda v1 78 callthis0 0xf, v0 79 sta v1 80 throw.ifnotobject v1 81 ldobjbyname 0x11, done 82 sta v3 83 mov v6, v3 84 mov v4, v3 85 callruntime.isfalse 0x13 86 jnez label_8 87label_9: 88 ldtrue 89 sta v3 90 mov v6, v3 91 mov v4, v3 92 ldundefined 93 jmp label_6 94label_8: 95 lda v1 96 ldobjbyname 0x14, value 97 sta v1 98 jmp label_10 99label_6: 100 mov v6, v3 101 mov v4, v3 102 ldundefined 103 sta v1 104label_28: 105end_label_28: 106 jmp label_10 107label_52: 108 sta v7 109label_45: 110 mov v4, v6 111 ldtrue 112 sta v1 113 mov v4, v1 114 lda v7 115 throw 116label_10: 117 mov v4, v3 118 lda v1 119 sttoglobalrecord 0x16, b 120label_34: 121end_label_34: 122label_36: 123 lda v3 124 callruntime.istrue 0x17 125 jnez label_11 126label_12: 127 lda v2 128 callruntime.istrue 0x18 129 jnez label_11 130label_14: 131 ldtrue 132 ldundefined 133 sta v1 134 ldhole 135 sta v2 136label_29: 137label_40: 138 lda v0 139 ldobjbyname 0x19, return 140 sta v6 141 ldundefined 142 eq 0x1b, v6 143 jnez label_11 144label_15: 145 lda v6 146 callthis0 0x1c, v0 147 sta v0 148label_30: 149end_label_30: 150 jmp label_56 151label_53: 152 sta v3 153 mov v2, v3 154 jmp label_16 155label_56: 156 mov v1, v0 157label_16: 158 ldhole 159 sta v0 160 lda v2 161 noteq 0x1e, v0 162 jeqz label_17 163label_18: 164 lda v2 165 throw 166label_17: 167 throw.ifnotobject v1 168 jmp label_11 169label_54: 170 sta v5 171label_47: 172 lda v4 173 callruntime.istrue 0x1f 174 jnez label_19 175label_20: 176 lda v2 177 callruntime.istrue 0x20 178 jnez label_21 179label_22: 180 ldtrue 181 ldundefined 182 ldhole 183label_31: 184label_42: 185 lda v0 186 ldobjbyname 0x21, return 187 sta v1 188 ldundefined 189 eq 0x23, v1 190 jnez label_21 191label_23: 192 lda v1 193 callthis0 0x24, v0 194label_32: 195end_label_32: 196 jmp label_24 197label_55: 198label_24: 199 lda v5 200 throw 201label_21: 202 lda v5 203 throw 204label_19: 205 lda v5 206 throw 207label_11: 208 ldundefined 209 returnundefined 210label_50: 211} 212 213.catchall label_25, end_label_26, label_51 214 215.catchall label_27, end_label_28, label_52 216 217.catchall label_29, end_label_30, label_53 218 219.catchall label_31, end_label_32, label_55 220 221.catchall label_33, end_label_34, label_54 222 223 224