contract Contract {
function main() {
memory[0x40:0x60] = 0x80;
var var0 = msg.value;
if (var0) { revert(memory[0x00:0x00]); }
if (msg.data.length < 0x04) { revert(memory[0x00:0x00]); }
var0 = msg.data[0x00:0x20] >> 0xe0;
if (0x7c69eae2 > var0) {
if (0x42842e0e > var0) {
if (0x081812fc > var0) {
if (var0 == 0x01ffc9a7) {
// Dispatch table entry for
supportsInterface(bytes4)
var var1 = 0x025e;
var var2 = 0x04;
var var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var1 =
supportsInterface(var2, var3);
label_025E:
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = !!var1;
var temp1 = memory[0x40:0x60];
return memory[temp1:temp1 + temp0 - temp1 + 0x20];
} else if (var0 == 0x02759c37) {
// Dispatch table entry for
controlledTransferFrom(address,address,uint256)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x60) { revert(memory[0x00:0x00]); }
var temp2 = (0x01 << 0xa0) - 0x01;
var temp3 = var2;
var2 = temp2 & msg.data[temp3:temp3 + 0x20];
var3 = temp2 & msg.data[temp3 + 0x20:temp3 + 0x20 + 0x20];
var var4 = msg.data[temp3 + 0x40:temp3 + 0x40 + 0x20];
var var5 = 0x0eba;
var var6 = msg.sender;
label_1694:
var var7 = 0x00;
var var8 = 0x1374;
var var9 = 0x01;
var var10 = var6;
var8 =
controlledTransferFrom(var9, var10);
label_1374:
var5 = var8;
// Error: Could not resolve jump destination!
} else if (var0 == 0x0467e014) {
// Dispatch table entry for 0x0467e014 (unknown)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x80) { revert(memory[0x00:0x00]); }
var temp4 = var2;
var2 = msg.data[temp4:temp4 + 0x20] & (0x01 << 0xa0) - 0x01;
var temp5 = var3;
var3 = msg.data[temp4 + 0x20:temp4 + 0x20 + 0x20];
var5 = temp4;
var4 = var5 + temp5;
var6 = var5 + 0x60;
var7 = msg.data[var5 + 0x40:var5 + 0x40 + 0x20];
if (var7 > 0x01 << 0x20) { revert(memory[0x00:0x00]); }
var temp6 = var5 + var7;
var7 = temp6;
if (var7 + 0x20 > var4) { revert(memory[0x00:0x00]); }
var temp7 = var7;
var temp8 = msg.data[temp7:temp7 + 0x20];
var7 = temp8;
var8 = var6;
var6 = temp7 + 0x20;
if ((var7 > 0x01 << 0x20) | (var6 + var7 > var4)) { revert(memory[0x00:0x00]); }
var temp9 = var8;
var temp10 = var4;
var4 = var6;
var temp11 = var5;
var5 = var7;
var7 = temp11;
var6 = temp10;
var8 = temp9 + 0x20;
var9 = msg.data[temp9:temp9 + 0x20];
if (var9 > 0x01 << 0x20) { revert(memory[0x00:0x00]); }
var temp12 = var7 + var9;
var9 = temp12;
if (var9 + 0x20 > var6) { revert(memory[0x00:0x00]); }
var temp13 = var9;
var temp14 = msg.data[temp13:temp13 + 0x20];
var9 = temp14;
var10 = var8;
var8 = temp13 + 0x20;
if ((var9 > 0x01 << 0x20) | (var8 + var9 > var6)) { revert(memory[0x00:0x00]); }
var6 = var8;
var7 = var9;
var8 = 0x0edc;
var9 = msg.sender;
goto label_1694;
} else if (var0 == 0x06fdde03) {
// Dispatch table entry for
name()
var1 = 0x0385;
var1 =
name();
label_0385:
var temp15 = memory[0x40:0x60];
memory[temp15:temp15 + 0x20] = 0x20;
var temp16 = var1;
memory[temp15 + 0x20:temp15 + 0x20 + 0x20] = memory[temp16:temp16 + 0x20];
var2 = temp15;
var3 = var2;
var4 = var3 + 0x40;
var6 = memory[temp16:temp16 + 0x20];
var5 = temp16 + 0x20;
var7 = var6;
var8 = var4;
var9 = var5;
var10 = 0x00;
if (var10 >= var7) {
label_03BF:
var temp17 = var6;
var4 = temp17 + var4;
var5 = temp17 & 0x1f;
if (!var5) {
var temp18 = memory[0x40:0x60];
return memory[temp18:temp18 + var4 - temp18];
} else {
var temp19 = var5;
var temp20 = var4 - temp19;
memory[temp20:temp20 + 0x20] = ~(0x0100 ** (0x20 - temp19) - 0x01) & memory[temp20:temp20 + 0x20];
var temp21 = memory[0x40:0x60];
return memory[temp21:temp21 + (temp20 + 0x20) - temp21];
}
} else {
label_03B0:
var temp22 = var10;
memory[temp22 + var8:temp22 + var8 + 0x20] = memory[temp22 + var9:temp22 + var9 + 0x20];
var10 = temp22 + 0x20;
if (var10 >= var7) { goto label_03BF; }
else { goto label_03B0; }
}
} else { revert(memory[0x00:0x00]); }
} else if (var0 == 0x081812fc) {
// Dispatch table entry for
getApproved(uint256)
var1 = 0x0417;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var1 =
getApproved(var2, var3);
label_0417:
var temp23 = memory[0x40:0x60];
memory[temp23:temp23 + 0x20] = var1 & (0x01 << 0xa0) - 0x01;
var temp24 = memory[0x40:0x60];
return memory[temp24:temp24 + temp23 - temp24 + 0x20];
} else if (var0 == 0x095ea7b3) {
// Dispatch table entry for
approve(address,uint256)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x40) { revert(memory[0x00:0x00]); }
approve(var2, var3);
stop();
} else if (var0 == 0x2392c189) {
// Dispatch table entry for
resolveTo(address,uint256)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x40) { revert(memory[0x00:0x00]); }
resolveTo(var2, var3);
stop();
} else if (var0 == 0x23b872dd) {
// Dispatch table entry for transferFrom(address,address,uint256)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x60) { revert(memory[0x00:0x00]); }
var temp25 = (0x01 << 0xa0) - 0x01;
var temp26 = var2;
var2 = temp25 & msg.data[temp26:temp26 + 0x20];
var3 = temp25 & msg.data[temp26 + 0x20:temp26 + 0x20 + 0x20];
var4 = msg.data[temp26 + 0x40:temp26 + 0x40 + 0x20];
label_1115:
var5 = 0x111f;
var6 = msg.sender;
var7 = var4;
var5 =
func_1AE6(var6, var7);
if (var5) {
var5 = 0x0ece;
var6 = var2;
var7 = var3;
var8 = var4;
func_1A57(var6, var7, var8);
// Error: Could not resolve jump destination!
} else {
var temp27 = memory[0x40:0x60];
memory[temp27:temp27 + 0x20] = 0x461bcd << 0xe5;
var temp28 = temp27 + 0x04;
var temp29 = temp28 + 0x20;
memory[temp28:temp28 + 0x20] = temp29 - temp28;
memory[temp29:temp29 + 0x20] = 0x31;
var temp30 = temp29 + 0x20;
memory[temp30:temp30 + 0x31] = code[0x28e0:0x2911];
var temp31 = memory[0x40:0x60];
revert(memory[temp31:temp31 + (temp30 + 0x40) - temp31]);
}
} else if (var0 == 0x2525d06a) {
// Dispatch table entry for controlledResolveTo(address,uint256)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x40) { revert(memory[0x00:0x00]); }
var temp32 = var2;
var2 = msg.data[temp32:temp32 + 0x20] & (0x01 << 0xa0) - 0x01;
var3 = msg.data[temp32 + 0x20:temp32 + 0x20 + 0x20];
var4 = 0x1163;
var5 = msg.sender;
goto label_1694;
} else { revert(memory[0x00:0x00]); }
} else if (0x5cbe1112 > var0) {
if (var0 == 0x42842e0e) {
// Dispatch table entry for safeTransferFrom(address,address,uint256)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x60) { revert(memory[0x00:0x00]); }
var temp33 = (0x01 << 0xa0) - 0x01;
var temp34 = var2;
var2 = temp33 & msg.data[temp34:temp34 + 0x20];
var3 = temp33 & msg.data[temp34 + 0x20:temp34 + 0x20 + 0x20];
var4 = msg.data[temp34 + 0x40:temp34 + 0x40 + 0x20];
var5 = 0x0ece;
var6 = var2;
var7 = var3;
var8 = var4;
var temp35 = memory[0x40:0x60];
var9 = temp35;
memory[0x40:0x60] = var9 + 0x20;
memory[var9:var9 + 0x20] = 0x00;
label_16FA:
var10 = 0x1705;
var var11 = var6;
var var12 = var7;
var var13 = var8;
goto label_1115;
} else if (var0 == 0x42966c68) {
// Dispatch table entry for burn(uint256)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var2 = msg.data[var2:var2 + 0x20];
var3 = 0x119f;
var4 = msg.sender;
var5 = var2;
var3 =
func_1AE6(var4, var5);
if (var3) {
var3 = 0x11e3;
var4 = var2;
label_1BF8:
var5 = 0x1c01;
var6 = var4;
var7 = 0x11e3;
var8 = 0x221b;
var9 = var6;
var8 =
func_1320(var9);
func_221B(var6, var8);
// Error: Could not resolve jump destination!
} else {
var temp36 = memory[0x40:0x60];
memory[temp36:temp36 + 0x20] = 0x461bcd << 0xe5;
var temp37 = temp36 + 0x04;
var temp38 = temp37 + 0x20;
memory[temp37:temp37 + 0x20] = temp38 - temp37;
memory[temp38:temp38 + 0x20] = 0x30;
var temp39 = temp38 + 0x20;
memory[temp39:temp39 + 0x30] = code[0x2936:0x2966];
var temp40 = memory[0x40:0x60];
revert(memory[temp40:temp40 + (temp39 + 0x40) - temp40]);
}
} else if (var0 == 0x430c2081) {
// Dispatch table entry for
isApprovedOrOwner(address,uint256)
var1 = 0x025e;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x40) { revert(memory[0x00:0x00]); }
var1 =
isApprovedOrOwner(var2, var3);
goto label_025E;
} else if (var0 == 0x538361a7) {
// Dispatch table entry for
sync(uint256,uint256)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x40) { revert(memory[0x00:0x00]); }
sync(var2, var3);
stop();
} else if (var0 == 0x57aac574) {
// Dispatch table entry for 0x57aac574 (unknown)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x80) { revert(memory[0x00:0x00]); }
var temp41 = (0x01 << 0xa0) - 0x01;
var temp42 = var2;
var2 = temp41 & msg.data[temp42:temp42 + 0x20];
var temp43 = var3;
var3 = temp41 & msg.data[temp42 + 0x20:temp42 + 0x20 + 0x20];
var4 = msg.data[temp42 + 0x40:temp42 + 0x40 + 0x20];
var6 = temp42;
var5 = var6 + temp43;
var7 = var6 + 0x80;
var8 = msg.data[var6 + 0x60:var6 + 0x60 + 0x20];
if (var8 > 0x01 << 0x20) { revert(memory[0x00:0x00]); }
var temp44 = var6 + var8;
var8 = temp44;
if (var8 + 0x20 > var5) { revert(memory[0x00:0x00]); }
var temp45 = var8;
var temp46 = msg.data[temp45:temp45 + 0x20];
var8 = temp46;
var temp47 = var7;
var7 = temp45 + 0x20;
var9 = temp47;
if ((var8 > 0x01 << 0x20) | (var7 + var8 > var5)) { revert(memory[0x00:0x00]); }
var5 = var7;
var6 = var8;
var7 = 0x1258;
var8 = msg.sender;
goto label_1694;
} else { revert(memory[0x00:0x00]); }
} else if (var0 == 0x5cbe1112) {
// Dispatch table entry for 0x5cbe1112 (unknown)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x40) { revert(memory[0x00:0x00]); }
var temp48 = var2;
var2 = msg.data[temp48:temp48 + 0x20];
var4 = temp48;
var3 = var4 + var3;
var5 = var4 + 0x40;
var6 = msg.data[var4 + 0x20:var4 + 0x20 + 0x20];
if (var6 > 0x01 << 0x20) { revert(memory[0x00:0x00]); }
var temp49 = var4 + var6;
var6 = temp49;
if (var6 + 0x20 > var3) { revert(memory[0x00:0x00]); }
var temp50 = var6;
var temp51 = msg.data[temp50:temp50 + 0x20];
var6 = temp51;
var7 = var5;
var5 = temp50 + 0x20;
if ((var6 > 0x01 << 0x20) | (var5 + var6 > var3)) { revert(memory[0x00:0x00]); }
var3 = var5;
var4 = var6;
var5 = var2;
var6 = 0x12c9;
var7 = msg.sender;
var8 = var5;
var6 =
func_1AE6(var7, var8);
if (!var6) { revert(memory[0x00:0x00]); }
var6 = 0x131a;
var7 = 0x1315;
var8 = var2;
var temp52 = var4;
var temp53 = memory[0x40:0x60];
memory[0x40:0x60] = temp53 + (temp52 + 0x1f) / 0x20 * 0x20 + 0x20;
var9 = temp53;
memory[var9:var9 + 0x20] = temp52;
var temp54 = var9 + 0x20;
memory[temp54:temp54 + temp52] = msg.data[var3:var3 + temp52];
memory[temp54 + temp52:temp54 + temp52 + 0x20] = 0x00;
var7 =
func_1DAC(var8, var9);
goto label_1BF8;
} else if (var0 == 0x6352211e) {
// Dispatch table entry for
ownerOf(uint256)
var1 = 0x0417;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var1 =
ownerOf(var2, var3);
goto label_0417;
} else if (var0 == 0x66ac3b68) {
// Dispatch table entry for
renounceController()
var1 = 0x02a8;
renounceController();
stop();
} else if (var0 == 0x68b62d32) {
// Dispatch table entry for
childIdOf(uint256,string)
var1 = 0x072c;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x40) { revert(memory[0x00:0x00]); }
var1 =
childIdOf(var2, var3);
label_072C:
var temp55 = memory[0x40:0x60];
memory[temp55:temp55 + 0x20] = var1;
var temp56 = memory[0x40:0x60];
return memory[temp56:temp56 + temp55 - temp56 + 0x20];
} else if (var0 == 0x70a08231) {
// Dispatch table entry for
balanceOf(address)
var1 = 0x072c;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var2 = msg.data[var2:var2 + 0x20] & (0x01 << 0xa0) - 0x01;
var3 = 0x00;
if (var2 & (0x01 << 0xa0) - 0x01) {
memory[0x00:0x20] = var2 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x04;
var4 = 0x1374;
var5 = keccak256(memory[0x00:0x40]);
var4 =
balanceOf(var5);
goto label_1374;
} else {
var temp57 = memory[0x40:0x60];
memory[temp57:temp57 + 0x20] = 0x461bcd << 0xe5;
var temp58 = temp57 + 0x04;
var temp59 = temp58 + 0x20;
memory[temp58:temp58 + 0x20] = temp59 - temp58;
memory[temp59:temp59 + 0x20] = 0x2a;
var temp60 = temp59 + 0x20;
memory[temp60:temp60 + 0x2a] = code[0x27d4:0x27fe];
var temp61 = memory[0x40:0x60];
revert(memory[temp61:temp61 + (temp60 + 0x40) - temp61]);
}
} else { revert(memory[0x00:0x00]); }
} else if (0xb5466669 > var0) {
if (0xa22cb465 > var0) {
if (var0 == 0x7c69eae2) {
// Dispatch table entry for 0x7c69eae2 (unknown)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x60) { revert(memory[0x00:0x00]); }
var temp62 = var2;
var2 = msg.data[temp62:temp62 + 0x20] & (0x01 << 0xa0) - 0x01;
var temp63 = var3;
var3 = msg.data[temp62 + 0x20:temp62 + 0x20 + 0x20];
var5 = temp62;
var4 = var5 + temp63;
var6 = var5 + 0x60;
var7 = msg.data[var5 + 0x40:var5 + 0x40 + 0x20];
if (var7 > 0x01 << 0x20) { revert(memory[0x00:0x00]); }
var temp64 = var5 + var7;
var7 = temp64;
if (var7 + 0x20 > var4) { revert(memory[0x00:0x00]); }
var temp65 = var7;
var temp66 = msg.data[temp65:temp65 + 0x20];
var7 = temp66;
var temp67 = var6;
var6 = temp65 + 0x20;
var8 = temp67;
if ((var7 > 0x01 << 0x20) | (var6 + var7 > var4)) { revert(memory[0x00:0x00]); }
var4 = var6;
var5 = var7;
var6 = var3;
var7 = 0x1442;
var8 = msg.sender;
var9 = var6;
var7 =
func_1AE6(var8, var9);
if (!var7) { revert(memory[0x00:0x00]); }
var7 = 0x12b7;
var8 = var2;
var9 = var3;
var temp68 = var5;
var temp69 = memory[0x40:0x60];
memory[0x40:0x60] = temp69 + (temp68 + 0x1f) / 0x20 * 0x20 + 0x20;
var10 = temp69;
memory[var10:var10 + 0x20] = temp68;
var temp70 = var10 + 0x20;
memory[temp70:temp70 + temp68] = msg.data[var4:var4 + temp68];
memory[temp70 + temp68:temp70 + temp68 + 0x20] = 0x00;
var temp71 = memory[0x40:0x60];
memory[0x40:0x60] = temp71 + 0x20;
memory[temp71:temp71 + 0x20] = 0x00;
var11 = temp71;
label_1A9F:
var12 = 0x1aaa;
var13 = var8;
var var14 = var9;
var var15 = var10;
label_2035:
var var16 = 0x00;
var var17 = 0x2041;
var var18 = var14;
var var19 = var15;
var17 =
func_1DAC(var18, var19);
var temp72 = var17;
var16 = temp72;
var17 = 0x204d;
var18 = var13;
var19 = var16;
func_236A(var18, var19);
if (!memory[var15:var15 + 0x20]) { revert(memory[0x00:0x00]); }
var17 = 0x2061;
var18 = var16;
var17 =
func_1AC9(var18);
if (!var17) { revert(memory[0x00:0x00]); }
var17 = 0x60;
var temp73 = var15;
var18 = temp73;
memory[0x00:0x20] = var14;
memory[0x20:0x40] = 0x06;
var19 = keccak256(memory[0x00:0x40]);
var var20 = memory[0x40:0x60] + 0x20;
var var21 = var20;
var var23 = memory[var18:var18 + 0x20];
var var22 = var18 + 0x20;
var var24 = var23;
var var25 = var21;
var var26 = var22;
if (var24 < 0x20) {
label_20B2:
var temp74 = 0x0100 ** (0x20 - var24) - 0x01;
var temp75 = var25;
memory[temp75:temp75 + 0x20] = (memory[var26:var26 + 0x20] & ~temp74) | (memory[temp75:temp75 + 0x20] & temp74);
var temp76 = var23 + var21;
memory[temp76:temp76 + 0x20] = 0x17 << 0xf9;
var21 = temp76 + 0x01;
var22 = var19;
var temp77 = storage[var22];
var23 = (!(temp77 & 0x01) * 0x0100 - 0x01 & temp77) / 0x02;
if (!var23) {
label_2137:
var temp78 = memory[0x40:0x60];
var temp79 = var21;
memory[temp78:temp78 + 0x20] = temp79 - temp78 + ~0x1f;
memory[0x40:0x60] = temp79;
memory[0x00:0x20] = var16;
memory[0x20:0x40] = 0x06;
var21 = memory[temp78:temp78 + 0x20];
var17 = temp78;
var18 = 0x216d;
var19 = keccak256(memory[0x00:0x40]);
var20 = var17 + 0x20;
var temp80 = var19;
var temp81 = storage[temp80];
memory[0x00:0x20] = temp80;
var22 = keccak256(memory[0x00:0x20]);
var temp82 = var20;
var20 = var22 + ((!(temp81 & 0x01) * 0x0100 - 0x01 & temp81) / 0x02 + 0x1f) / 0x20;
var23 = temp82;
if (0x1f < var21) {
var temp83 = var21;
storage[var19] = temp83 + temp83 + 0x01;
if (!temp83) {
label_263D:
var temp84 = var20;
var20 = 0x2649;
var21 = temp84;
var20 =
func_26FF(var21, var22);
var18 =
func_2649(var19, var20);
// Error: Could not resolve method call return address!
} else {
var temp85 = var21;
var temp86 = var23;
var21 = temp86;
var23 = var21 + temp85;
if (var23 <= var21) { goto label_263D; }
label_26ED:
var temp87 = var21;
var temp88 = var22;
storage[temp88] = memory[temp87:temp87 + 0x20];
var21 = temp87 + 0x20;
var22 = temp88 + 0x01;
var23 = var23;
if (var23 <= var21) { goto label_263D; }
else { goto label_26ED; }
}
} else {
var temp89 = var21;
storage[var19] = temp89 + temp89 | (memory[var23:var23 + 0x20] & ~0xff);
goto label_263D;
}
} else if (0x1f < var23) {
var temp90 = var21;
var temp91 = temp90 + var23;
var21 = temp91;
memory[0x00:0x20] = var22;
var temp92 = keccak256(memory[0x00:0x20]);
memory[temp90:temp90 + 0x20] = storage[temp92];
var22 = temp92 + 0x01;
var23 = temp90 + 0x20;
if (var21 <= var23) { goto label_2137; }
label_2123:
var temp93 = var22;
var temp94 = var23;
memory[temp94:temp94 + 0x20] = storage[temp93];
var22 = temp93 + 0x01;
var23 = temp94 + 0x20;
if (var21 > var23) { goto label_2123; }
else { goto label_2137; }
} else {
var temp95 = var21;
memory[temp95:temp95 + 0x20] = storage[var22] / 0x0100 * 0x0100;
var temp96 = var23 + temp95;
var23 = var23;
var21 = temp96;
goto label_2137;
}
} else {
label_209C:
var temp97 = var26;
var temp98 = var25;
memory[temp98:temp98 + 0x20] = memory[temp97:temp97 + 0x20];
var24 = var24 + ~0x1f;
var25 = temp98 + 0x20;
var26 = temp97 + 0x20;
if (var24 < 0x20) { goto label_20B2; }
else { goto label_209C; }
}
} else if (var0 == 0x95d89b41) {
// Dispatch table entry for
symbol()
var1 = 0x0385;
var1 =
symbol();
goto label_0385;
} else if (var0 == 0x9d743989) {
// Dispatch table entry for 0x9d743989 (unknown)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x80) { revert(memory[0x00:0x00]); }
func_0805(var2, var3);
stop();
} else if (var0 == 0x9e5be9a5) {
// Dispatch table entry for 0x9e5be9a5 (unknown)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x80) { revert(memory[0x00:0x00]); }
func_0893(var2, var3);
stop();
} else { revert(memory[0x00:0x00]); }
} else if (var0 == 0xa22cb465) {
// Dispatch table entry for
setApprovalForAll(address,bool)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x40) { revert(memory[0x00:0x00]); }
setApprovalForAll(var2, var3);
stop();
} else if (var0 == 0xa7fc7a07) {
// Dispatch table entry for addController(address)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var2 = msg.data[var2:var2 + 0x20] & (0x01 << 0xa0) - 0x01;
var3 = 0x1639;
var4 = msg.sender;
goto label_1694;
} else if (var0 == 0xab3b87fe) {
// Dispatch table entry for
setOwner(address,uint256)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x40) { revert(memory[0x00:0x00]); }
setOwner(var2, var3);
stop();
} else if (var0 == 0xb3f9e4cb) {
// Dispatch table entry for
resolverOf(uint256)
var1 = 0x0417;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var1 =
resolverOf(var2, var3);
goto label_0417;
} else if (var0 == 0xb429afeb) {
// Dispatch table entry for isController(address)
var1 = 0x025e;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var2 = msg.data[var2:var2 + 0x20] & (0x01 << 0xa0) - 0x01;
goto label_1694;
} else { revert(memory[0x00:0x00]); }
} else if (0xd284d97a > var0) {
if (var0 == 0xb5466669) {
// Dispatch table entry for 0xb5466669 (unknown)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x60) { revert(memory[0x00:0x00]); }
var temp99 = var2;
var2 = msg.data[temp99:temp99 + 0x20] & (0x01 << 0xa0) - 0x01;
var temp100 = var3;
var3 = msg.data[temp99 + 0x20:temp99 + 0x20 + 0x20];
var5 = temp99;
var4 = var5 + temp100;
var6 = var5 + 0x60;
var7 = msg.data[var5 + 0x40:var5 + 0x40 + 0x20];
if (var7 > 0x01 << 0x20) { revert(memory[0x00:0x00]); }
var temp101 = var5 + var7;
var7 = temp101;
if (var7 + 0x20 > var4) { revert(memory[0x00:0x00]); }
var temp102 = var7;
var temp103 = msg.data[temp102:temp102 + 0x20];
var7 = temp103;
var8 = var6;
var6 = temp102 + 0x20;
if ((var7 > 0x01 << 0x20) | (var6 + var7 > var4)) { revert(memory[0x00:0x00]); }
var4 = var6;
var5 = var7;
var6 = 0x16b0;
var7 = msg.sender;
goto label_1694;
} else if (var0 == 0xb88d4fde) {
// Dispatch table entry for safeTransferFrom(address,address,uint256,bytes)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x80) { revert(memory[0x00:0x00]); }
var temp104 = (0x01 << 0xa0) - 0x01;
var temp105 = var2;
var2 = temp104 & msg.data[temp105:temp105 + 0x20];
var temp106 = var3;
var3 = temp104 & msg.data[temp105 + 0x20:temp105 + 0x20 + 0x20];
var4 = msg.data[temp105 + 0x40:temp105 + 0x40 + 0x20];
var5 = temp105 + temp106;
var6 = temp105;
var7 = var6 + 0x80;
var8 = msg.data[var6 + 0x60:var6 + 0x60 + 0x20];
if (var8 > 0x01 << 0x20) { revert(memory[0x00:0x00]); }
var temp107 = var6 + var8;
var8 = temp107;
if (var8 + 0x20 > var5) { revert(memory[0x00:0x00]); }
var temp108 = var8;
var temp109 = msg.data[temp108:temp108 + 0x20];
var8 = temp109;
var9 = var7;
var7 = temp108 + 0x20;
if ((var8 > 0x01 << 0x20) | (var7 + var8 > var5)) { revert(memory[0x00:0x00]); }
var temp110 = var8;
var temp111 = memory[0x40:0x60];
memory[0x40:0x60] = temp111 + (temp110 + 0x1f) / 0x20 * 0x20 + 0x20;
memory[temp111:temp111 + 0x20] = temp110;
var temp112 = temp111 + 0x20;
memory[temp112:temp112 + temp110] = msg.data[var7:var7 + temp110];
memory[temp112 + temp110:temp112 + temp110 + 0x20] = 0x00;
var5 = temp111;
goto label_16FA;
} else if (var0 == 0xc29b52f9) {
// Dispatch table entry for 0xc29b52f9 (unknown)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0xa0) { revert(memory[0x00:0x00]); }
func_0B2B(var2, var3);
stop();
} else if (var0 == 0xc87b56dd) {
// Dispatch table entry for
tokenURI(uint256)
var1 = 0x0385;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var1 =
tokenURI(var2, var3);
goto label_0385;
} else if (var0 == 0xce9fb82b) {
// Dispatch table entry for 0xce9fb82b (unknown)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x80) { revert(memory[0x00:0x00]); }
var temp113 = var2;
var2 = msg.data[temp113:temp113 + 0x20] & (0x01 << 0xa0) - 0x01;
var temp114 = var3;
var3 = msg.data[temp113 + 0x20:temp113 + 0x20 + 0x20];
var4 = temp113 + temp114;
var5 = temp113;
var6 = var5 + 0x60;
var7 = msg.data[var5 + 0x40:var5 + 0x40 + 0x20];
if (var7 > 0x01 << 0x20) { revert(memory[0x00:0x00]); }
var temp115 = var5 + var7;
var7 = temp115;
if (var7 + 0x20 > var4) { revert(memory[0x00:0x00]); }
var temp116 = var7;
var temp117 = msg.data[temp116:temp116 + 0x20];
var7 = temp117;
var8 = var6;
var6 = temp116 + 0x20;
if ((var7 > 0x01 << 0x20) | (var6 + var7 > var4)) { revert(memory[0x00:0x00]); }
var temp118 = var8;
var temp119 = var4;
var4 = var6;
var temp120 = var5;
var5 = var7;
var7 = temp120;
var6 = temp119;
var8 = temp118 + 0x20;
var9 = msg.data[temp118:temp118 + 0x20];
if (var9 > 0x01 << 0x20) { revert(memory[0x00:0x00]); }
var temp121 = var7 + var9;
var9 = temp121;
if (var9 + 0x20 > var6) { revert(memory[0x00:0x00]); }
var temp122 = var9;
var temp123 = msg.data[temp122:temp122 + 0x20];
var9 = temp123;
var temp124 = var8;
var8 = temp122 + 0x20;
var10 = temp124;
if ((var9 > 0x01 << 0x20) | (var8 + var9 > var6)) { revert(memory[0x00:0x00]); }
var6 = var8;
var7 = var9;
var8 = var3;
var9 = 0x189d;
var10 = msg.sender;
var11 = var8;
var9 =
func_1AE6(var10, var11);
if (!var9) { revert(memory[0x00:0x00]); }
var9 = 0x178e;
var10 = var2;
var11 = var3;
var temp125 = var5;
var temp126 = memory[0x40:0x60];
memory[0x40:0x60] = temp126 + (temp125 + 0x1f) / 0x20 * 0x20 + 0x20;
var12 = temp126;
memory[var12:var12 + 0x20] = temp125;
var temp127 = var12 + 0x20;
memory[temp127:temp127 + temp125] = msg.data[var4:var4 + temp125];
memory[temp127 + temp125:temp127 + temp125 + 0x20] = 0x00;
var temp128 = memory[0x40:0x60];
var temp129 = var7;
memory[0x40:0x60] = temp128 + (temp129 + 0x1f) / 0x20 * 0x20 + 0x20;
memory[temp128:temp128 + 0x20] = temp129;
var13 = temp128;
var temp130 = var13 + 0x20;
memory[temp130:temp130 + temp129] = msg.data[var6:var6 + temp129];
memory[temp130 + temp129:temp130 + temp129 + 0x20] = 0x00;
goto label_1A9F;
} else { revert(memory[0x00:0x00]); }
} else if (var0 == 0xd284d97a) {
// Dispatch table entry for 0xd284d97a (unknown)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var temp131 = var2;
var temp132 = temp131 + var3;
var3 = temp131;
var2 = temp132;
var4 = var3 + 0x20;
var5 = msg.data[var3:var3 + 0x20];
if (var5 > 0x01 << 0x20) { revert(memory[0x00:0x00]); }
var temp133 = var3 + var5;
var5 = temp133;
if (var5 + 0x20 > var2) { revert(memory[0x00:0x00]); }
var temp134 = var5;
var temp135 = msg.data[temp134:temp134 + 0x20];
var5 = temp135;
var temp136 = var4;
var4 = temp134 + 0x20;
var6 = temp136;
if ((var5 > 0x01 << 0x20) | (var4 + var5 > var2)) { revert(memory[0x00:0x00]); }
var2 = var4;
var3 = var5;
var4 = 0x1924;
var5 = msg.sender;
goto label_1694;
} else if (var0 == 0xd8d3cc6e) {
// Dispatch table entry for 0xd8d3cc6e (unknown)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x60) { revert(memory[0x00:0x00]); }
var temp137 = var2;
var2 = msg.data[temp137:temp137 + 0x20] & (0x01 << 0xa0) - 0x01;
var temp138 = var3;
var3 = msg.data[temp137 + 0x20:temp137 + 0x20 + 0x20];
var4 = temp137 + temp138;
var5 = temp137;
var6 = var5 + 0x60;
var7 = msg.data[var5 + 0x40:var5 + 0x40 + 0x20];
if (var7 > 0x01 << 0x20) { revert(memory[0x00:0x00]); }
var temp139 = var5 + var7;
var7 = temp139;
if (var7 + 0x20 > var4) { revert(memory[0x00:0x00]); }
var temp140 = var7;
var temp141 = msg.data[temp140:temp140 + 0x20];
var7 = temp141;
var8 = var6;
var6 = temp140 + 0x20;
if ((var7 > 0x01 << 0x20) | (var6 + var7 > var4)) { revert(memory[0x00:0x00]); }
var4 = var6;
var5 = var7;
var6 = var3;
var7 = 0x19a9;
var8 = msg.sender;
var9 = var6;
var7 =
func_1AE6(var8, var9);
if (!var7) { revert(memory[0x00:0x00]); }
var7 = 0x12b7;
var8 = var2;
var9 = var3;
var temp142 = var5;
var temp143 = memory[0x40:0x60];
memory[0x40:0x60] = temp143 + (temp142 + 0x1f) / 0x20 * 0x20 + 0x20;
var10 = temp143;
memory[var10:var10 + 0x20] = temp142;
var temp144 = var10 + 0x20;
memory[temp144:temp144 + temp142] = msg.data[var4:var4 + temp142];
memory[temp144 + temp142:temp144 + temp142 + 0x20] = 0x00;
goto label_2035;
} else if (var0 == 0xe67ca8a3) {
// Dispatch table entry for controlledBurn(uint256)
var1 = 0x02a8;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var2 = msg.data[var2:var2 + 0x20];
var3 = 0x19fc;
var4 = msg.sender;
goto label_1694;
} else if (var0 == 0xe985e9c5) {
// Dispatch table entry for
isApprovedForAll(address,address)
var1 = 0x025e;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x40) { revert(memory[0x00:0x00]); }
var1 =
isApprovedForAll(var2, var3);
goto label_025E;
} else if (var0 == 0xebf0c717) {
// Dispatch table entry for
root()
var1 = 0x072c;
var1 =
root();
goto label_072C;
} else { revert(memory[0x00:0x00]); }
}
function supportsInterface(var arg0, var arg1) returns (var r0) {
arg0 = msg.data[arg0:arg0 + 0x20] & ~((0x01 << 0xe0) - 0x01);
memory[0x00:0x20] = arg0 & ~((0x01 << 0xe0) - 0x01);
memory[0x20:0x40] = 0x00;
return storage[keccak256(memory[0x00:0x40])] & 0xff;
}
function getApproved(var arg0, var arg1) returns (var r0) {
arg0 = msg.data[arg0:arg0 + 0x20];
r0 =
func_0F84(arg0);
// Error: Could not resolve method call return address!
}
function approve(var arg0, var arg1) {
var temp0 = arg0;
arg0 = msg.data[temp0:temp0 + 0x20] & (0x01 << 0xa0) - 0x01;
arg1 = msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20];
var var0 = 0x00;
var var1 = 0x0ff1;
var var2 = arg1;
var1 =
func_1320(var2);
var0 = var1;
if (arg0 & (0x01 << 0xa0) - 0x01 != var0 & (0x01 << 0xa0) - 0x01) {
var1 = var0 & (0x01 << 0xa0) - 0x01 == msg.sender;
if (var1) {
label_1060:
if (var1) {
var temp1 = arg1;
memory[0x00:0x20] = temp1;
memory[0x20:0x40] = 0x03;
var temp2 = keccak256(memory[0x00:0x40]);
var temp3 = (0x01 << 0xa0) - 0x01;
var temp4 = temp3 & arg0;
storage[temp2] = temp4 | (storage[temp2] & ~((0x01 << 0xa0) - 0x01));
log(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00], [0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925, stack[-1] & (0x01 << 0xa0) - 0x01, stack[-3] & (0x01 << 0xa0) - 0x01, stack[-2]]);
return;
} else {
var temp5 = memory[0x40:0x60];
memory[temp5:temp5 + 0x20] = 0x461bcd << 0xe5;
var temp6 = temp5 + 0x04;
var temp7 = temp6 + 0x20;
memory[temp6:temp6 + 0x20] = temp7 - temp6;
memory[temp7:temp7 + 0x20] = 0x38;
var temp8 = temp7 + 0x20;
memory[temp8:temp8 + 0x38] = code[0x279c:0x27d4];
var temp9 = memory[0x40:0x60];
revert(memory[temp9:temp9 + (temp8 + 0x40) - temp9]);
}
} else {
var1 = 0x1060;
var2 = var0;
var var3 = msg.sender;
var1 =
func_1A05(var2, var3);
goto label_1060;
}
} else {
var temp10 = memory[0x40:0x60];
memory[temp10:temp10 + 0x20] = 0x461bcd << 0xe5;
var temp11 = temp10 + 0x04;
var temp12 = temp11 + 0x20;
memory[temp11:temp11 + 0x20] = temp12 - temp11;
memory[temp12:temp12 + 0x20] = 0x21;
var temp13 = temp12 + 0x20;
memory[temp13:temp13 + 0x21] = code[0x28bf:0x28e0];
var temp14 = memory[0x40:0x60];
revert(memory[temp14:temp14 + (temp13 + 0x40) - temp14]);
}
}
function resolveTo(var arg0, var arg1) {
var temp0 = arg0;
arg0 = msg.data[temp0:temp0 + 0x20] & (0x01 << 0xa0) - 0x01;
arg1 = msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20];
var var0 = arg1;
var var1 = 0x1102;
var var2 = msg.sender;
var var3 = var0;
var1 =
func_1AE6(var2, var3);
if (!var1) { revert(memory[0x00:0x00]); }
var1 = 0x0ece;
var2 = arg0;
var3 = arg1;
func_1B82(var2, var3);
}
function isApprovedOrOwner(var arg0, var arg1) returns (var r0) {
var temp0 = arg0;
arg0 = msg.data[temp0:temp0 + 0x20] & (0x01 << 0xa0) - 0x01;
arg1 = msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20];
var var0 = 0x00;
var var1 = 0x11f2;
var var2 = arg0;
var var3 = arg1;
return
func_1AE6(var2, var3);
}
function sync(var arg0, var arg1) {
var temp0 = arg0;
arg0 = msg.data[temp0:temp0 + 0x20];
arg1 = msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20];
memory[0x00:0x20] = arg0;
memory[0x20:0x40] = 0x08;
if (msg.sender != storage[keccak256(memory[0x00:0x40])] & (0x01 << 0xa0) - 0x01) { revert(memory[0x00:0x00]); }
log(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00], [0xf10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f127, msg.sender, stack[-1], stack[-2]]);
}
function ownerOf(var arg0, var arg1) returns (var r0) {
arg0 = msg.data[arg0:arg0 + 0x20];
r0 =
func_1320(arg0);
// Error: Could not resolve method call return address!
}
function childIdOf(var arg0, var arg1) returns (var r0) {
var temp0 = arg0;
arg0 = msg.data[temp0:temp0 + 0x20];
var var0 = temp0;
arg1 = var0 + arg1;
var var1 = var0 + 0x40;
var var2 = msg.data[var0 + 0x20:var0 + 0x20 + 0x20];
if (var2 > 0x01 << 0x20) { revert(memory[0x00:0x00]); }
var temp1 = var0 + var2;
var2 = temp1;
if (var2 + 0x20 > arg1) { revert(memory[0x00:0x00]); }
var temp2 = var2;
var temp3 = msg.data[temp2:temp2 + 0x20];
var2 = temp3;
var var3 = var1;
var1 = temp2 + 0x20;
if ((var2 > 0x01 << 0x20) | (var1 + var2 > arg1)) { revert(memory[0x00:0x00]); }
arg1 = var1;
var0 = var2;
var1 = 0x00;
var2 = 0x13c7;
var3 = arg0;
var temp4 = var0;
var temp5 = memory[0x40:0x60];
memory[0x40:0x60] = temp5 + (temp4 + 0x1f) / 0x20 * 0x20 + 0x20;
var var4 = temp5;
memory[var4:var4 + 0x20] = temp4;
var temp6 = var4 + 0x20;
memory[temp6:temp6 + temp4] = msg.data[arg1:arg1 + temp4];
memory[temp6 + temp4:temp6 + temp4 + 0x20] = 0x00;
return
func_1DAC(var3, var4);
}
function func_0805(var arg0, var arg1) {
var temp0 = (0x01 << 0xa0) - 0x01;
var temp1 = arg0;
arg0 = temp0 & msg.data[temp1:temp1 + 0x20];
var temp2 = arg1;
arg1 = temp0 & msg.data[temp1 + 0x20:temp1 + 0x20 + 0x20];
var var0 = msg.data[temp1 + 0x40:temp1 + 0x40 + 0x20];
var var1 = temp1 + temp2;
var var2 = temp1;
var var3 = var2 + 0x80;
var var4 = msg.data[var2 + 0x60:var2 + 0x60 + 0x20];
if (var4 > 0x01 << 0x20) { revert(memory[0x00:0x00]); }
var temp3 = var2 + var4;
var4 = temp3;
if (var4 + 0x20 > var1) { revert(memory[0x00:0x00]); }
var temp4 = var4;
var temp5 = msg.data[temp4:temp4 + 0x20];
var4 = temp5;
var var5 = var3;
var3 = temp4 + 0x20;
if ((var4 > 0x01 << 0x20) | (var3 + var4 > var1)) { revert(memory[0x00:0x00]); }
var1 = var3;
var2 = var4;
var3 = 0x12b7;
var4 = arg0;
var5 = arg1;
var var6 = var0;
var temp6 = var2;
var temp7 = memory[0x40:0x60];
memory[0x40:0x60] = temp7 + (temp6 + 0x1f) / 0x20 * 0x20 + 0x20;
var var7 = temp7;
memory[var7:var7 + 0x20] = temp6;
var temp8 = var7 + 0x20;
memory[temp8:temp8 + temp6] = msg.data[var1:var1 + temp6];
memory[temp8 + temp6:temp8 + temp6 + 0x20] = 0x00;
var temp9 = memory[0x40:0x60];
memory[0x40:0x60] = temp9 + 0x20;
memory[temp9:temp9 + 0x20] = 0x00;
var var8 = temp9;
func_174C(var4, var5, var6, var7, var8);
}
function func_0893(var arg0, var arg1) {
var temp0 = (0x01 << 0xa0) - 0x01;
var temp1 = arg0;
arg0 = temp0 & msg.data[temp1:temp1 + 0x20];
var temp2 = arg1;
arg1 = temp0 & msg.data[temp1 + 0x20:temp1 + 0x20 + 0x20];
var var0 = msg.data[temp1 + 0x40:temp1 + 0x40 + 0x20];
var var2 = temp1;
var var1 = var2 + temp2;
var var3 = var2 + 0x80;
var var4 = msg.data[var2 + 0x60:var2 + 0x60 + 0x20];
if (var4 > 0x01 << 0x20) { revert(memory[0x00:0x00]); }
var temp3 = var2 + var4;
var4 = temp3;
if (var4 + 0x20 > var1) { revert(memory[0x00:0x00]); }
var temp4 = var4;
var temp5 = msg.data[temp4:temp4 + 0x20];
var4 = temp5;
var temp6 = var3;
var3 = temp4 + 0x20;
var var5 = temp6;
if ((var4 > 0x01 << 0x20) | (var3 + var4 > var1)) { revert(memory[0x00:0x00]); }
var1 = var3;
var2 = var4;
var3 = var0;
var4 = 0x1511;
var5 = msg.sender;
var var6 = var3;
var4 =
func_1AE6(var5, var6);
if (!var4) { revert(memory[0x00:0x00]); }
var4 = 0x0f5a;
var5 = arg0;
var6 = arg1;
var var7 = 0x155f;
var var8 = var0;
var temp7 = var2;
var temp8 = memory[0x40:0x60];
memory[0x40:0x60] = temp8 + (temp7 + 0x1f) / 0x20 * 0x20 + 0x20;
var var9 = temp8;
memory[var9:var9 + 0x20] = temp7;
var temp9 = var9 + 0x20;
memory[temp9:temp9 + temp7] = msg.data[var1:var1 + temp7];
memory[temp9 + temp7:temp9 + temp7 + 0x20] = 0x00;
var7 =
func_1DAC(var8, var9);
func_155F(var5, var6, var7);
}
function setApprovalForAll(var arg0, var arg1) {
var temp0 = arg0;
arg0 = msg.data[temp0:temp0 + 0x20] & (0x01 << 0xa0) - 0x01;
arg1 = !!msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20];
if (msg.sender != arg0 & (0x01 << 0xa0) - 0x01) {
var temp1 = msg.sender;
memory[0x00:0x20] = temp1;
memory[0x20:0x40] = 0x05;
var temp2 = keccak256(memory[0x00:0x40]);
var temp3 = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x00:0x20] = temp3;
memory[0x20:0x40] = temp2;
var temp4 = keccak256(memory[0x00:0x40]);
var temp5 = !!arg1;
storage[temp4] = temp5 | (storage[temp4] & ~0xff);
var temp6 = memory[0x40:0x60];
memory[temp6:temp6 + 0x20] = temp5;
var temp7 = memory[0x40:0x60];
log(memory[temp7:temp7 + temp6 - temp7 + 0x20], [0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31, msg.sender, stack[-2] & (0x01 << 0xa0) - 0x01]);
return;
} else {
var temp8 = memory[0x40:0x60];
memory[temp8:temp8 + 0x20] = 0x461bcd << 0xe5;
memory[temp8 + 0x04:temp8 + 0x04 + 0x20] = 0x20;
memory[temp8 + 0x24:temp8 + 0x24 + 0x20] = 0x19;
memory[temp8 + 0x44:temp8 + 0x44 + 0x20] = 0x4552433732313a20617070726f766520746f2063616c6c657200000000000000;
var temp9 = memory[0x40:0x60];
revert(memory[temp9:temp9 + temp8 - temp9 + 0x64]);
}
}
function setOwner(var arg0, var arg1) {
var temp0 = arg0;
arg0 = msg.data[temp0:temp0 + 0x20] & (0x01 << 0xa0) - 0x01;
arg1 = msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20];
var var0 = arg1;
var var1 = 0x1656;
var var2 = msg.sender;
var var3 = var0;
var1 =
func_1AE6(var2, var3);
if (!var1) { revert(memory[0x00:0x00]); }
var1 = 0x0ece;
var2 = 0x166b;
var3 = arg1;
var2 =
func_1320(var3);
func_166B(arg0, arg1, var2);
}
function resolverOf(var arg0, var arg1) returns (var r0) {
arg0 = msg.data[arg0:arg0 + 0x20];
arg1 = 0x00;
memory[arg1:arg1 + 0x20] = arg0;
memory[0x20:0x40] = 0x08;
var var0 = storage[keccak256(memory[arg1:arg1 + 0x40])] & (0x01 << 0xa0) - 0x01;
if (var0) { return var0; }
else { revert(memory[0x00:0x00]); }
}
function func_0B2B(var arg0, var arg1) {
var temp0 = (0x01 << 0xa0) - 0x01;
var temp1 = arg0;
arg0 = temp0 & msg.data[temp1:temp1 + 0x20];
var temp2 = arg1;
arg1 = temp0 & msg.data[temp1 + 0x20:temp1 + 0x20 + 0x20];
var var0 = msg.data[temp1 + 0x40:temp1 + 0x40 + 0x20];
var var1 = temp1 + temp2;
var var2 = temp1;
var var3 = var2 + 0x80;
var var4 = msg.data[var2 + 0x60:var2 + 0x60 + 0x20];
if (var4 > 0x01 << 0x20) { revert(memory[0x00:0x00]); }
var temp3 = var2 + var4;
var4 = temp3;
if (var4 + 0x20 > var1) { revert(memory[0x00:0x00]); }
var temp4 = var4;
var temp5 = msg.data[temp4:temp4 + 0x20];
var4 = temp5;
var temp6 = var3;
var3 = temp4 + 0x20;
var var5 = temp6;
if ((var4 > 0x01 << 0x20) | (var3 + var4 > var1)) { revert(memory[0x00:0x00]); }
var temp7 = var5;
var temp8 = var4;
var temp9 = memory[0x40:0x60];
memory[0x40:0x60] = temp9 + (temp8 + 0x1f) / 0x20 * 0x20 + 0x20;
memory[temp9:temp9 + 0x20] = temp8;
var temp10 = temp9 + 0x20;
memory[temp10:temp10 + temp8] = msg.data[var3:var3 + temp8];
memory[temp10 + temp8:temp10 + temp8 + 0x20] = 0x00;
var temp11 = var1;
var1 = temp9;
var temp12 = var2;
var2 = temp11;
var3 = temp12;
var4 = temp7 + 0x20;
var5 = msg.data[temp7:temp7 + 0x20];
if (var5 > 0x01 << 0x20) { revert(memory[0x00:0x00]); }
var temp13 = var3 + var5;
var5 = temp13;
if (var5 + 0x20 > var2) { revert(memory[0x00:0x00]); }
var temp14 = var5;
var temp15 = msg.data[temp14:temp14 + 0x20];
var5 = temp15;
var temp16 = var4;
var4 = temp14 + 0x20;
var var6 = temp16;
if ((var5 > 0x01 << 0x20) | (var4 + var5 > var2)) { revert(memory[0x00:0x00]); }
var temp17 = var5;
var temp18 = memory[0x40:0x60];
memory[0x40:0x60] = temp18 + (temp17 + 0x1f) / 0x20 * 0x20 + 0x20;
memory[temp18:temp18 + 0x20] = temp17;
var temp19 = temp18 + 0x20;
memory[temp19:temp19 + temp17] = msg.data[var4:var4 + temp17];
memory[temp19 + temp17:temp19 + temp17 + 0x20] = 0x00;
var2 = temp18;
func_174C(arg0, arg1, var0, var1, var2);
// Error: Could not resolve method call return address!
}
function tokenURI(var arg0, var arg1) returns (var r0) {
arg0 = msg.data[arg0:arg0 + 0x20];
arg1 = 0x60;
var var0 = 0x17a2;
var var1 = arg0;
var0 =
func_1AC9(var1);
if (!var0) { revert(memory[0x00:0x00]); }
var0 = 0x07;
memory[0x00:0x20] = arg0;
memory[0x20:0x40] = 0x06;
var1 = keccak256(memory[0x00:0x40]);
var var2 = memory[0x40:0x60] + 0x20;
var var3 = var2;
var var4 = var0;
var temp0 = storage[var4];
var var5 = (!(temp0 & 0x01) * 0x0100 - 0x01 & temp0) / 0x02;
if (!var5) {
label_181E:
var4 = var1;
var temp1 = storage[var4];
var5 = (!(temp1 & 0x01) * 0x0100 - 0x01 & temp1) / 0x02;
if (!var5) {
label_1877:
var temp2 = memory[0x40:0x60];
var temp3 = var3;
memory[temp2:temp2 + 0x20] = temp3 - temp2 + ~0x1f;
memory[0x40:0x60] = temp3;
return temp2;
} else if (0x1f < var5) {
var temp4 = var3;
var temp5 = temp4 + var5;
var3 = temp5;
memory[0x00:0x20] = var4;
var temp6 = keccak256(memory[0x00:0x20]);
memory[temp4:temp4 + 0x20] = storage[temp6];
var4 = temp6 + 0x01;
var5 = temp4 + 0x20;
if (var3 <= var5) { goto label_1877; }
label_1863:
var temp7 = var4;
var temp8 = var5;
memory[temp8:temp8 + 0x20] = storage[temp7];
var4 = temp7 + 0x01;
var5 = temp8 + 0x20;
if (var3 > var5) { goto label_1863; }
else { goto label_1877; }
} else {
var temp9 = var3;
memory[temp9:temp9 + 0x20] = storage[var4] / 0x0100 * 0x0100;
var temp10 = var5 + temp9;
var5 = var5;
var3 = temp10;
goto label_1877;
}
} else if (0x1f < var5) {
var temp11 = var3;
var temp12 = temp11 + var5;
var3 = temp12;
memory[0x00:0x20] = var4;
var temp13 = keccak256(memory[0x00:0x20]);
memory[temp11:temp11 + 0x20] = storage[temp13];
var4 = temp13 + 0x01;
var5 = temp11 + 0x20;
if (var3 <= var5) { goto label_181E; }
label_180A:
var temp14 = var4;
var temp15 = var5;
memory[temp15:temp15 + 0x20] = storage[temp14];
var4 = temp14 + 0x01;
var5 = temp15 + 0x20;
if (var3 > var5) { goto label_180A; }
else { goto label_181E; }
} else {
var temp16 = var3;
memory[temp16:temp16 + 0x20] = storage[var4] / 0x0100 * 0x0100;
var temp17 = var5 + temp16;
var5 = var5;
var3 = temp17;
goto label_181E;
}
}
function isApprovedForAll(var arg0, var arg1) returns (var r0) {
var temp0 = (0x01 << 0xa0) - 0x01;
var temp1 = arg0;
arg0 = temp0 & msg.data[temp1:temp1 + 0x20];
arg1 = msg.data[temp1 + 0x20:temp1 + 0x20 + 0x20] & temp0;
r0 =
func_1A05(arg0, arg1);
// Error: Could not resolve method call return address!
}
function name() returns (var r0) {
var temp0 = memory[0x40:0x60];
memory[0x40:0x60] = temp0 + 0x40;
memory[temp0:temp0 + 0x20] = 0x07;
memory[temp0 + 0x20:temp0 + 0x20 + 0x20] = 0x2e63727970746f << 0xc8;
return temp0;
}
function func_0F84(var arg0) returns (var r0) {
var var0 = 0x00;
var var1 = 0x0f8f;
var var2 = arg0;
var1 =
func_1AC9(var2);
if (var1) {
memory[0x00:0x20] = arg0;
memory[0x20:0x40] = 0x03;
return storage[keccak256(memory[0x00:0x40])] & (0x01 << 0xa0) - 0x01;
} else {
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x461bcd << 0xe5;
var temp1 = temp0 + 0x04;
var temp2 = temp1 + 0x20;
memory[temp1:temp1 + 0x20] = temp2 - temp1;
memory[temp2:temp2 + 0x20] = 0x2c;
var temp3 = temp2 + 0x20;
memory[temp3:temp3 + 0x2c] = code[0x2848:0x2874];
var temp4 = memory[0x40:0x60];
revert(memory[temp4:temp4 + (temp3 + 0x40) - temp4]);
}
}
function func_1320(var arg0) returns (var r0) {
var var0 = 0x00;
memory[var0:var0 + 0x20] = arg0;
memory[0x20:0x40] = 0x02;
var var1 = storage[keccak256(memory[var0:var0 + 0x40])] & (0x01 << 0xa0) - 0x01;
if (var1) { return var1; }
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x461bcd << 0xe5;
var temp1 = temp0 + 0x04;
var temp2 = temp1 + 0x20;
memory[temp1:temp1 + 0x20] = temp2 - temp1;
memory[temp2:temp2 + 0x20] = 0x29;
var temp3 = temp2 + 0x20;
memory[temp3:temp3 + 0x29] = code[0x27fe:0x2827];
var temp4 = memory[0x40:0x60];
revert(memory[temp4:temp4 + (temp3 + 0x40) - temp4]);
}
function renounceController() {
var var0 = 0x1383;
var var1 = msg.sender;
func_1E64(var1);
}
function symbol() returns (var r0) {
var temp0 = memory[0x40:0x60];
memory[0x40:0x60] = temp0 + 0x40;
memory[temp0:temp0 + 0x20] = 0x02;
memory[temp0 + 0x20:temp0 + 0x20 + 0x20] = 0x1551 << 0xf2;
return temp0;
}
function func_155F(var arg0, var arg1, var arg2) {
func_1A57(arg0, arg1, arg2);
// Error: Could not resolve method call return address!
}
function func_166B(var arg0, var arg1, var arg2) {
var var0 = arg0;
var var1 = arg1;
func_1E8A(arg2, var0, var1);
// Error: Could not resolve method call return address!
}
function func_174C(var arg0, var arg1, var arg2, var arg3, var arg4) {
var var0 = arg2;
var var1 = 0x1757;
var var2 = msg.sender;
var var3 = var0;
var1 =
func_1AE6(var2, var3);
if (!var1) { revert(memory[0x00:0x00]); }
var1 = 0x00;
var2 = 0x176c;
var3 = arg2;
var var4 = arg3;
var2 =
func_1DAC(var3, var4);
var temp0 = var2;
var1 = temp0;
var2 = 0x1779;
var3 = arg0;
var4 = arg1;
var var5 = var1;
func_1A57(var3, var4, var5);
var2 = 0x1785;
var3 = arg0;
var4 = arg1;
var5 = var1;
var var6 = arg4;
var2 =
func_1C79(var3, var4, var5, var6);
if (var2) { return; }
else { revert(memory[0x00:0x00]); }
}
function func_1A05(var arg0, var arg1) returns (var r0) {
var temp0 = (0x01 << 0xa0) - 0x01;
memory[0x00:0x20] = temp0 & arg0;
memory[0x20:0x40] = 0x05;
var temp1 = keccak256(memory[0x00:0x40]);
memory[0x00:0x20] = temp0 & arg1;
memory[0x20:0x40] = temp1;
return storage[keccak256(memory[0x00:0x40])] & 0xff;
}
function root() returns (var r0) { return 0x0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f; }
function func_1A57(var arg0, var arg1, var arg2) {
var var0 = 0x1a62;
var var1 = arg0;
var var2 = arg1;
var var3 = arg2;
func_1E8A(var1, var2, var3);
memory[0x00:0x20] = arg2;
memory[0x20:0x40] = 0x08;
if (!(storage[keccak256(memory[0x00:0x40])] & (0x01 << 0xa0) - 0x01)) { return; }
memory[0x00:0x20] = arg2;
memory[0x20:0x40] = 0x08;
var temp0 = keccak256(memory[0x00:0x40]);
storage[temp0] = storage[temp0] & ~((0x01 << 0xa0) - 0x01);
}
function func_1AC9(var arg0) returns (var r0) {
memory[0x00:0x20] = arg0;
memory[0x20:0x40] = 0x02;
return !!(storage[keccak256(memory[0x00:0x40])] & (0x01 << 0xa0) - 0x01);
}
function func_1AE6(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
var var1 = 0x1af1;
var var2 = arg1;
var1 =
func_1AC9(var2);
if (var1) {
var1 = 0x00;
var2 = 0x1b37;
var var3 = arg1;
var2 =
func_1320(var3);
var1 = var2;
var2 = arg0 & (0x01 << 0xa0) - 0x01 == var1 & (0x01 << 0xa0) - 0x01;
if (var2) {
label_1B72:
if (var2) {
label_13C7:
return var2;
} else {
var2 = 0x13c7;
var3 = var1;
var var4 = arg0;
var2 =
func_1A05(var3, var4);
goto label_13C7;
}
} else {
var2 = arg0 & (0x01 << 0xa0) - 0x01;
var3 = 0x1b67;
var4 = arg1;
var3 =
func_0F84(var4);
var2 = var3 & (0x01 << 0xa0) - 0x01 == var2;
goto label_1B72;
}
} else {
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x461bcd << 0xe5;
var temp1 = temp0 + 0x04;
var temp2 = temp1 + 0x20;
memory[temp1:temp1 + 0x20] = temp2 - temp1;
memory[temp2:temp2 + 0x20] = 0x2c;
var temp3 = temp2 + 0x20;
memory[temp3:temp3 + 0x2c] = code[0x2770:0x279c];
var temp4 = memory[0x40:0x60];
revert(memory[temp4:temp4 + (temp3 + 0x40) - temp4]);
}
}
function func_1B82(var arg0, var arg1) {
var var0 = 0x1b8b;
var var1 = arg1;
var0 =
func_1AC9(var1);
if (!var0) { revert(memory[0x00:0x00]); }
var temp0 = arg0;
var temp1 = arg1;
log(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00], [0xb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a5, stack[-1], stack[-2] & (0x01 << 0xa0) - 0x01]);
memory[0x00:0x20] = temp1;
memory[0x20:0x40] = 0x08;
var temp2 = keccak256(memory[0x00:0x40]);
storage[temp2] = (temp0 & (0x01 << 0xa0) - 0x01) | (storage[temp2] & ~((0x01 << 0xa0) - 0x01));
}
function func_1C79(var arg0, var arg1, var arg2, var arg3) returns (var r0) {
var var0 = 0x00;
var var1 = 0x1c8d;
var var2 = arg1 & (0x01 << 0xa0) - 0x01;
var1 =
func_2221(var2);
if (!var1) { return 0x01; }
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x0a85bd01 << 0xe1;
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = msg.sender;
var temp1 = (0x01 << 0xa0) - 0x01;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = temp1 & arg0;
memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = arg2;
memory[temp0 + 0x64:temp0 + 0x64 + 0x20] = 0x80;
var temp2 = arg3;
memory[temp0 + 0x84:temp0 + 0x84 + 0x20] = memory[temp2:temp2 + 0x20];
var1 = 0x00;
var2 = arg1 & temp1;
var var3 = 0x150b7a02;
var var4 = msg.sender;
var var5 = arg0;
var var9 = temp0 + 0x64;
var var6 = arg2;
var var7 = temp2;
var var8 = temp0 + 0x04;
var var10 = temp0 + 0xa4;
var var12 = memory[var7:var7 + 0x20];
var var11 = var7 + 0x20;
var var13 = var12;
var var14 = var10;
var var15 = var11;
var var16 = var1;
if (var16 >= var13) {
label_1D13:
var temp3 = var12;
var10 = temp3 + var10;
var11 = temp3 & 0x1f;
if (!var11) {
var4 = var10;
var5 = 0x20;
var6 = memory[0x40:0x60];
var7 = var4 - var6;
var8 = var6;
var9 = 0x00;
var10 = var2;
var11 = !address(var10).code.length;
if (var11) { revert(memory[0x00:0x00]); }
label_1D62:
var temp4;
temp4, memory[var6:var6 + var5] = address(var10).call.gas(msg.gas).value(var9)(memory[var8:var8 + var7]);
var5 = !temp4;
if (!var5) {
var2 = memory[0x40:0x60];
var3 = returndata.length;
if (var3 >= 0x20) { return memory[var2:var2 + 0x20] & ~((0x01 << 0xe0) - 0x01) == 0x0a85bd01 << 0xe1; }
else { revert(memory[0x00:0x00]); }
} else {
var temp5 = returndata.length;
memory[0x00:0x00 + temp5] = returndata[0x00:0x00 + temp5];
revert(memory[0x00:0x00 + returndata.length]);
}
} else {
var temp6 = var11;
var temp7 = var10 - temp6;
memory[temp7:temp7 + 0x20] = ~(0x0100 ** (0x20 - temp6) - 0x01) & memory[temp7:temp7 + 0x20];
var4 = temp7 + 0x20;
var5 = 0x20;
var6 = memory[0x40:0x60];
var7 = var4 - var6;
var8 = var6;
var9 = 0x00;
var10 = var2;
var11 = !address(var10).code.length;
if (!var11) { goto label_1D62; }
else { revert(memory[0x00:0x00]); }
}
} else {
label_1D04:
var temp8 = var16;
memory[temp8 + var14:temp8 + var14 + 0x20] = memory[temp8 + var15:temp8 + var15 + 0x20];
var16 = temp8 + 0x20;
if (var16 >= var13) { goto label_1D13; }
else { goto label_1D04; }
}
}
function func_1DAC(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
if (memory[arg1:arg1 + 0x20] == 0x00) { revert(memory[0x00:0x00]); }
var var1 = arg0;
var temp0 = arg1;
var var2 = temp0;
var var3 = memory[0x40:0x60] + 0x20;
var var4 = var3;
var var6 = memory[var2:var2 + 0x20];
var var5 = var2 + 0x20;
var var7 = var6;
var var8 = var4;
var var9 = var5;
if (var7 < 0x20) {
label_1DF1:
var temp1 = 0x0100 ** (0x20 - var7) - 0x01;
var temp2 = var8;
memory[temp2:temp2 + 0x20] = (memory[var9:var9 + 0x20] & ~temp1) | (memory[temp2:temp2 + 0x20] & temp1);
var temp3 = var6 + var4;
var temp4 = memory[0x40:0x60];
memory[temp4:temp4 + 0x20] = temp3 - temp4 - 0x20;
memory[0x40:0x60] = temp3;
var temp5 = keccak256(memory[temp4 + 0x20:temp4 + 0x20 + memory[temp4:temp4 + 0x20]]);
var temp6 = memory[0x40:0x60] + 0x20;
memory[temp6:temp6 + 0x20] = var1;
var temp7 = temp6 + 0x20;
memory[temp7:temp7 + 0x20] = temp5;
var temp8 = temp7 + 0x20;
var temp9 = memory[0x40:0x60];
memory[temp9:temp9 + 0x20] = temp8 - temp9 - 0x20;
memory[0x40:0x60] = temp8;
return keccak256(memory[temp9 + 0x20:temp9 + 0x20 + memory[temp9:temp9 + 0x20]]) >> 0x00;
} else {
label_1DDB:
var temp10 = var9;
var temp11 = var8;
memory[temp11:temp11 + 0x20] = memory[temp10:temp10 + 0x20];
var7 = var7 + ~0x1f;
var8 = temp11 + 0x20;
var9 = temp10 + 0x20;
if (var7 < 0x20) { goto label_1DF1; }
else { goto label_1DDB; }
}
}
function func_1E64(var arg0) {
var var0 = 0x11e3;
var var1 = 0x01;
var var2 = arg0;
func_2227(var1, var2);
}
function balanceOf(var arg0) returns (var r0) { return storage[arg0]; }
function func_1E8A(var arg0, var arg1, var arg2) {
var var0 = arg0 & (0x01 << 0xa0) - 0x01;
var var1 = 0x1e9d;
var var2 = arg2;
var1 =
func_1320(var2);
if (var1 & (0x01 << 0xa0) - 0x01 != var0) {
var temp9 = memory[0x40:0x60];
memory[temp9:temp9 + 0x20] = 0x461bcd << 0xe5;
var temp10 = temp9 + 0x04;
var temp11 = temp10 + 0x20;
memory[temp10:temp10 + 0x20] = temp11 - temp10;
memory[temp11:temp11 + 0x20] = 0x29;
var temp12 = temp11 + 0x20;
memory[temp12:temp12 + 0x29] = code[0x2896:0x28bf];
var temp13 = memory[0x40:0x60];
revert(memory[temp13:temp13 + (temp12 + 0x40) - temp13]);
} else if (arg1 & (0x01 << 0xa0) - 0x01) {
var0 = 0x1f30;
var1 = arg2;
func_230F(var1);
memory[0x00:0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x04;
var1 = keccak256(memory[0x00:0x40]);
var0 = 0x1f51;
func_234A(var1);
memory[0x00:0x20] = arg1 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x04;
var1 = keccak256(memory[0x00:0x40]);
var0 = 0x1f72;
func_2361(var1);
var temp0 = arg2;
memory[0x00:0x20] = temp0;
memory[0x20:0x40] = 0x02;
var temp1 = keccak256(memory[0x00:0x40]);
var temp2 = (0x01 << 0xa0) - 0x01;
var temp3 = temp2 & arg1;
storage[temp1] = temp3 | (storage[temp1] & ~((0x01 << 0xa0) - 0x01));
log(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00], [0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef, stack[-3] & (0x01 << 0xa0) - 0x01, stack[-2] & (0x01 << 0xa0) - 0x01, stack[-1]]);
return;
} else {
var temp4 = memory[0x40:0x60];
memory[temp4:temp4 + 0x20] = 0x461bcd << 0xe5;
var temp5 = temp4 + 0x04;
var temp6 = temp5 + 0x20;
memory[temp5:temp5 + 0x20] = temp6 - temp5;
memory[temp6:temp6 + 0x20] = 0x24;
var temp7 = temp6 + 0x20;
memory[temp7:temp7 + 0x24] = code[0x274c:0x2770];
var temp8 = memory[0x40:0x60];
revert(memory[temp8:temp8 + (temp7 + 0x40) - temp8]);
}
}
function controlledTransferFrom(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
if (arg1 & (0x01 << 0xa0) - 0x01) {
memory[0x00:0x20] = arg1 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = arg0;
return storage[keccak256(memory[0x00:0x40])] & 0xff;
} else {
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x461bcd << 0xe5;
var temp1 = temp0 + 0x04;
var temp2 = temp1 + 0x20;
memory[temp1:temp1 + 0x20] = temp2 - temp1;
memory[temp2:temp2 + 0x20] = 0x22;
var temp3 = temp2 + 0x20;
memory[temp3:temp3 + 0x22] = code[0x2874:0x2896];
var temp4 = memory[0x40:0x60];
revert(memory[temp4:temp4 + (temp3 + 0x40) - temp4]);
}
}
function func_221B(var arg0, var arg1) {
var var0 = arg0;
var var1 = arg1 & (0x01 << 0xa0) - 0x01;
var var2 = 0x24ae;
var var3 = var0;
var2 =
func_1320(var3);
if (var2 & (0x01 << 0xa0) - 0x01 == var1) {
var1 = 0x24fc;
var2 = var0;
func_230F(var2);
memory[0x00:0x20] = arg1 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x04;
var2 = keccak256(memory[0x00:0x40]);
var1 = 0x251d;
func_234A(var2);
var temp0 = var0;
memory[0x00:0x20] = temp0;
memory[0x20:0x40] = 0x02;
var temp1 = keccak256(memory[0x00:0x40]);
storage[temp1] = storage[temp1] & ~((0x01 << 0xa0) - 0x01);
log(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00], [0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef, stack[-2] & (0x01 << 0xa0) - 0x01, 0x00, stack[-1]]);
return;
} else {
var temp2 = memory[0x40:0x60];
memory[temp2:temp2 + 0x20] = 0x461bcd << 0xe5;
var temp3 = temp2 + 0x04;
var temp4 = temp3 + 0x20;
memory[temp3:temp3 + 0x20] = temp4 - temp3;
memory[temp4:temp4 + 0x20] = 0x25;
var temp5 = temp4 + 0x20;
memory[temp5:temp5 + 0x25] = code[0x2911:0x2936];
var temp6 = memory[0x40:0x60];
revert(memory[temp6:temp6 + (temp5 + 0x40) - temp6]);
}
}
function func_2221(var arg0) returns (var r0) { return !!address(arg0).code.length; }
function func_2227(var arg0, var arg1) {
var var0 = 0x2231;
var var1 = arg0;
var var2 = arg1;
var0 =
controlledTransferFrom(var1, var2);
if (var0) {
memory[0x00:0x20] = arg1 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = arg0;
var temp0 = keccak256(memory[0x00:0x40]);
storage[temp0] = storage[temp0] & ~0xff;
return;
} else {
var temp1 = memory[0x40:0x60];
memory[temp1:temp1 + 0x20] = 0x461bcd << 0xe5;
var temp2 = temp1 + 0x04;
var temp3 = temp2 + 0x20;
memory[temp2:temp2 + 0x20] = temp3 - temp2;
memory[temp3:temp3 + 0x20] = 0x21;
var temp4 = temp3 + 0x20;
memory[temp4:temp4 + 0x21] = code[0x2827:0x2848];
var temp5 = memory[0x40:0x60];
revert(memory[temp5:temp5 + (temp4 + 0x40) - temp5]);
}
}
function func_230F(var arg0) {
memory[0x00:0x20] = arg0;
memory[0x20:0x40] = 0x03;
if (!(storage[keccak256(memory[0x00:0x40])] & (0x01 << 0xa0) - 0x01)) { return; }
memory[0x00:0x20] = arg0;
memory[0x20:0x40] = 0x03;
var temp0 = keccak256(memory[0x00:0x40]);
storage[temp0] = storage[temp0] & ~((0x01 << 0xa0) - 0x01);
}
function func_234A(var arg0) {
var var0 = 0x235d;
var var1 = storage[arg0];
var var2 = 0x01;
var0 =
func_2572(var1, var2);
storage[arg0] = var0;
}
function func_2361(var arg0) {
var temp0 = arg0;
storage[temp0] = storage[temp0] + 0x01;
}
function func_236A(var arg0, var arg1) {
if (arg0 & (0x01 << 0xa0) - 0x01) {
var var0 = 0x23ce;
var var1 = arg1;
var0 =
func_1AC9(var1);
if (!var0) {
memory[0x00:0x20] = arg1;
memory[0x20:0x40] = 0x02;
var temp0 = keccak256(memory[0x00:0x40]);
var temp1 = arg0 & (0x01 << 0xa0) - 0x01;
storage[temp0] = temp1 | (storage[temp0] & ~((0x01 << 0xa0) - 0x01));
memory[0x00:0x20] = temp1;
memory[0x20:0x40] = 0x04;
var1 = keccak256(memory[0x00:0x40]);
var0 = 0x245f;
func_2361(var1);
log(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00], [0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef, 0x00, stack[-2] & (0x01 << 0xa0) - 0x01, stack[-1]]);
return;
} else {
var temp2 = memory[0x40:0x60];
memory[temp2:temp2 + 0x20] = 0x461bcd << 0xe5;
memory[temp2 + 0x04:temp2 + 0x04 + 0x20] = 0x20;
memory[temp2 + 0x24:temp2 + 0x24 + 0x20] = 0x1c;
memory[temp2 + 0x44:temp2 + 0x44 + 0x20] = 0x4552433732313a20746f6b656e20616c7265616479206d696e74656400000000;
var temp3 = memory[0x40:0x60];
revert(memory[temp3:temp3 + temp2 - temp3 + 0x64]);
}
} else {
var temp4 = memory[0x40:0x60];
memory[temp4:temp4 + 0x20] = 0x461bcd << 0xe5;
memory[temp4 + 0x04:temp4 + 0x04 + 0x20] = 0x20;
memory[temp4 + 0x24:temp4 + 0x24 + 0x20] = 0x20;
memory[temp4 + 0x44:temp4 + 0x44 + 0x20] = 0x4552433732313a206d696e7420746f20746865207a65726f2061646472657373;
var temp5 = memory[0x40:0x60];
revert(memory[temp5:temp5 + temp4 - temp5 + 0x64]);
}
}
function func_2572(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
if (arg1 <= arg0) { return arg0 - arg1; }
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x461bcd << 0xe5;
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = 0x20;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = 0x1e;
memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = 0x536166654d6174683a207375627472616374696f6e206f766572666c6f770000;
var temp1 = memory[0x40:0x60];
revert(memory[temp1:temp1 + temp0 - temp1 + 0x64]);
}
function func_2649(var arg0, var arg1) returns (var r0) { return arg0; }
function func_26FF(var arg0, var arg1) returns (var r0) {
var temp0 = arg0;
arg0 = 0x0f81;
var temp1 = arg1;
var var0 = temp1;
arg1 = temp0;
if (arg1 <= var0) { return
func_2649(arg1, var0); }
label_270E:
var temp2 = var0;
storage[temp2] = 0x00;
var0 = temp2 + 0x01;
if (arg1 > var0) { goto label_270E; }
arg0 =
func_2649(arg1, var0);
// Error: Could not resolve method call return address!
}
}