contract Contract {
function main() {
memory[0x40:0x60] = 0x80;
if (msg.data.length < 0x04) { revert(memory[0x00:0x00]); }
var var0 = msg.data[0x00:0x20] / 0x0100000000000000000000000000000000000000000000000000000000 & 0xffffffff;
if (var0 == 0x01ffc9a7) {
// Dispatch table entry for
supportsInterface(bytes4)
var var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01b0;
var var2 = msg.data[0x04:0x24] & ~0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff;
var1 =
supportsInterface(var2);
label_01B0:
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 == 0x040b6583) {
// Dispatch table entry for
enableWhitelist(bool)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01de;
var2 = !!msg.data[0x04:0x24];
enableWhitelist(var2);
stop();
} else if (var0 == 0x06fdde03) {
// Dispatch table entry for
name()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01f5;
var1 =
name();
label_01F5:
var temp2 = memory[0x40:0x60];
memory[temp2:temp2 + 0x20] = 0x20;
var temp3 = var1;
memory[temp2 + 0x20:temp2 + 0x20 + 0x20] = memory[temp3:temp3 + 0x20];
var2 = temp2;
var var3 = var2;
var var4 = var3 + 0x40;
var var6 = memory[temp3:temp3 + 0x20];
var var5 = temp3 + 0x20;
var var7 = var6;
var var8 = var4;
var var9 = var5;
var var10 = 0x00;
if (var10 >= var7) {
label_022F:
var temp4 = var6;
var4 = temp4 + var4;
var5 = temp4 & 0x1f;
if (!var5) {
var temp5 = memory[0x40:0x60];
return memory[temp5:temp5 + var4 - temp5];
} else {
var temp6 = var5;
var temp7 = var4 - temp6;
memory[temp7:temp7 + 0x20] = ~(0x0100 ** (0x20 - temp6) - 0x01) & memory[temp7:temp7 + 0x20];
var temp8 = memory[0x40:0x60];
return memory[temp8:temp8 + (temp7 + 0x20) - temp8];
}
} else {
label_0220:
var temp9 = var10;
memory[temp9 + var8:temp9 + var8 + 0x20] = memory[temp9 + var9:temp9 + var9 + 0x20];
var10 = temp9 + 0x20;
if (var10 >= var7) { goto label_022F; }
else { goto label_0220; }
}
} else if (var0 == 0x081812fc) {
// Dispatch table entry for
getApproved(uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0282;
var2 = msg.data[0x04:0x24];
var1 =
getApproved(var2);
label_0282:
var temp10 = memory[0x40:0x60];
memory[temp10:temp10 + 0x20] = var1 & 0x02 ** 0xa0 - 0x01;
var temp11 = memory[0x40:0x60];
return memory[temp11:temp11 + temp10 - temp11 + 0x20];
} else if (var0 == 0x095ea7b3) {
// Dispatch table entry for
approve(address,uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01de;
var2 = msg.data[0x04:0x24] & 0x02 ** 0xa0 - 0x01;
var3 = msg.data[0x24:0x44];
approve(var2, var3);
stop();
} else if (var0 == 0x18160ddd) {
// Dispatch table entry for
totalSupply()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x02d7;
var1 =
totalSupply();
label_02D7:
var temp12 = memory[0x40:0x60];
memory[temp12:temp12 + 0x20] = var1;
var temp13 = memory[0x40:0x60];
return memory[temp13:temp13 + temp12 - temp13 + 0x20];
} else if (var0 == 0x23b872dd) {
// Dispatch table entry for
transferFrom(address,address,uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01de;
var temp14 = 0x02 ** 0xa0 - 0x01;
var2 = temp14 & msg.data[0x04:0x24];
var3 = msg.data[0x24:0x44] & temp14;
var4 = msg.data[0x44:0x64];
transferFrom(var2, var3, var4);
stop();
} else if (var0 == 0x2cb2f52e) {
// Dispatch table entry for updateTokenMetadata(uint256,string)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var temp15 = memory[0x40:0x60];
var temp16 = msg.data[0x24:0x44];
var temp17 = msg.data[temp16 + 0x04:temp16 + 0x04 + 0x20];
memory[0x40:0x60] = temp15 + (temp17 + 0x1f) / 0x20 * 0x20 + 0x20;
memory[temp15:temp15 + 0x20] = temp17;
var1 = 0x01de;
var2 = msg.data[0x04:0x24];
memory[temp15 + 0x20:temp15 + 0x20 + temp17] = msg.data[temp16 + 0x24:temp16 + 0x24 + temp17];
var3 = temp15;
var4 = var2;
var5 = 0x00;
var6 = 0x090a;
var7 = var4;
var6 =
ownerOf(var7);
var5 = var6;
if (msg.sender == var5 & 0x02 ** 0xa0 - 0x01) {
var6 = var2;
var7 = 0x00;
var8 = 0x0978;
var9 = var6;
var8 =
tokenCreator(var9);
var7 = var8;
if (msg.sender == var7 & 0x02 ** 0xa0 - 0x01) {
var8 = 0x09e4;
var9 = var2;
var10 = var3;
label_12A4:
var var11 = 0x12ad;
var var12 = var9;
var11 =
func_1076(var12);
if (!var11) { revert(memory[0x00:0x00]); }
memory[0x00:0x20] = var9;
memory[0x20:0x40] = 0x0b;
var12 = keccak256(memory[0x00:0x40]);
var temp18 = var10;
var11 = 0x0b42;
var var14 = memory[temp18:temp18 + 0x20];
var var13 = temp18 + 0x20;
var temp19 = var12;
var temp20 = storage[temp19];
memory[0x00:0x20] = temp19;
var var15 = keccak256(memory[0x00:0x20]);
var temp21 = var13;
var13 = var15 + ((!(temp20 & 0x01) * 0x0100 - 0x01 & temp20) / 0x02 + 0x1f) / 0x20;
var var16 = temp21;
if (0x1f < var14) {
var temp22 = var14;
storage[var12] = temp22 + temp22 + 0x01;
if (!temp22) {
label_193D:
var temp23 = var13;
var13 = 0x1949;
var14 = temp23;
var13 =
func_198D(var14, var15);
var11 = var12;
// Error: Could not resolve jump destination!
} else {
var temp24 = var14;
var temp25 = var16;
var14 = temp25;
var16 = var14 + temp24;
if (var16 <= var14) { goto label_193D; }
label_192B:
var temp26 = var14;
var temp27 = var15;
storage[temp27] = memory[temp26:temp26 + 0x20];
var14 = temp26 + 0x20;
var16 = var16;
var15 = temp27 + 0x01;
if (var16 <= var14) { goto label_193D; }
else { goto label_192B; }
}
} else {
var temp28 = var14;
storage[var12] = temp28 + temp28 | (memory[var16:var16 + 0x20] & ~0xff);
goto label_193D;
}
} else {
var temp29 = memory[0x40:0x60];
memory[temp29:temp29 + 0x20] = 0x461bcd * 0x02 ** 0xe5;
memory[temp29 + 0x04:temp29 + 0x04 + 0x20] = 0x20;
memory[temp29 + 0x24:temp29 + 0x24 + 0x20] = 0x20;
memory[temp29 + 0x44:temp29 + 0x44 + 0x20] = 0x6d757374206265207468652063726561746f72206f662074686520746f6b656e;
var temp30 = memory[0x40:0x60];
revert(memory[temp30:temp30 + temp29 - temp30 + 0x64]);
}
} else {
var temp31 = memory[0x40:0x60];
memory[temp31:temp31 + 0x20] = 0x461bcd * 0x02 ** 0xe5;
memory[temp31 + 0x04:temp31 + 0x04 + 0x20] = 0x20;
memory[temp31 + 0x24:temp31 + 0x24 + 0x20] = 0x1e;
memory[temp31 + 0x44:temp31 + 0x44 + 0x20] = 0x6d75737420626520746865206f776e6572206f662074686520746f6b656e0000;
var temp32 = memory[0x40:0x60];
revert(memory[temp32:temp32 + temp31 - temp32 + 0x64]);
}
} else if (var0 == 0x2f745c59) {
// Dispatch table entry for
tokenOfOwnerByIndex(address,uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x02d7;
var2 = msg.data[0x04:0x24] & 0x02 ** 0xa0 - 0x01;
var3 = msg.data[0x24:0x44];
var1 =
tokenOfOwnerByIndex(var2, var3);
goto label_02D7;
} else if (var0 == 0x3af32abf) {
// Dispatch table entry for
isWhitelisted(address)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01b0;
var2 = msg.data[0x04:0x24] & 0x02 ** 0xa0 - 0x01;
var1 =
isWhitelisted(var2);
goto label_01B0;
} else if (var0 == 0x40c1a064) {
// Dispatch table entry for
tokenCreator(uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0282;
var2 = msg.data[0x04:0x24];
var1 =
tokenCreator(var2);
goto label_0282;
} else if (var0 == 0x42842e0e) {
// Dispatch table entry for
safeTransferFrom(address,address,uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01de;
var temp33 = 0x02 ** 0xa0 - 0x01;
var2 = temp33 & msg.data[0x04:0x24];
var3 = msg.data[0x24:0x44] & temp33;
var4 = msg.data[0x44:0x64];
var5 = 0x0b42;
var6 = var2;
var7 = var3;
var8 = var4;
var temp34 = memory[0x40:0x60];
var9 = temp34;
memory[0x40:0x60] = var9 + 0x20;
memory[var9:var9 + 0x20] = 0x00;
safeTransferFrom(var6, var7, var8, var9);
label_0B42:
// Error: Could not resolve jump destination!
} else if (var0 == 0x4f6ccce7) {
// Dispatch table entry for
tokenByIndex(uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x02d7;
var2 = msg.data[0x04:0x24];
var1 =
tokenByIndex(var2);
goto label_02D7;
} else if (var0 == 0x6297c16c) {
// Dispatch table entry for deleteToken(uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01de;
var2 = msg.data[0x04:0x24];
var3 = var2;
var4 = 0x00;
var5 = 0x0b88;
var6 = var3;
var5 =
ownerOf(var6);
var4 = var5;
if (msg.sender == var4 & 0x02 ** 0xa0 - 0x01) {
var5 = 0x0b42;
var6 = msg.sender;
var7 = var2;
func_12D7(var6, var7);
goto label_0B42;
} else {
var temp35 = memory[0x40:0x60];
memory[temp35:temp35 + 0x20] = 0x461bcd * 0x02 ** 0xe5;
memory[temp35 + 0x04:temp35 + 0x04 + 0x20] = 0x20;
memory[temp35 + 0x24:temp35 + 0x24 + 0x20] = 0x1e;
memory[temp35 + 0x44:temp35 + 0x44 + 0x20] = 0x6d75737420626520746865206f776e6572206f662074686520746f6b656e0000;
var temp36 = memory[0x40:0x60];
revert(memory[temp36:temp36 + temp35 - temp36 + 0x64]);
}
} else if (var0 == 0x6352211e) {
// Dispatch table entry for
ownerOf(uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0282;
var2 = msg.data[0x04:0x24];
var1 =
ownerOf(var2);
goto label_0282;
} else if (var0 == 0x70a08231) {
// Dispatch table entry for
balanceOf(address)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x02d7;
var2 = msg.data[0x04:0x24] & 0x02 ** 0xa0 - 0x01;
var1 =
balanceOf(var2);
goto label_02D7;
} else if (var0 == 0x715018a6) {
// Dispatch table entry for
renounceOwnership()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01de;
renounceOwnership();
stop();
} else if (var0 == 0x8ab1d681) {
// Dispatch table entry for
removeFromWhitelist(address)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01de;
var2 = msg.data[0x04:0x24] & 0x02 ** 0xa0 - 0x01;
removeFromWhitelist(var2);
stop();
} else if (var0 == 0x8da5cb5b) {
// Dispatch table entry for
owner()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0282;
var1 =
owner();
goto label_0282;
} else if (var0 == 0x8f32d59b) {
// Dispatch table entry for
isOwner()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01b0;
var1 =
isOwner();
goto label_01B0;
} else if (var0 == 0x95d89b41) {
// Dispatch table entry for
symbol()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01f5;
var1 =
symbol();
goto label_01F5;
} else if (var0 == 0xa22cb465) {
// Dispatch table entry for
setApprovalForAll(address,bool)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01de;
var2 = msg.data[0x04:0x24] & 0x02 ** 0xa0 - 0x01;
var3 = !!msg.data[0x24:0x44];
setApprovalForAll(var2, var3);
stop();
} else if (var0 == 0xb85ecf93) {
// Dispatch table entry for
initWhitelist(address[])
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var temp37 = memory[0x40:0x60];
var temp38 = msg.data[0x04:0x24];
var temp39 = msg.data[temp38 + 0x04:temp38 + 0x04 + 0x20];
var temp40 = temp39 * 0x20;
memory[0x40:0x60] = temp37 + temp40 + 0x20;
memory[temp37:temp37 + 0x20] = temp39;
var1 = 0x01de;
memory[temp37 + 0x20:temp37 + 0x20 + temp40] = msg.data[temp38 + 0x24:temp38 + 0x24 + temp40];
var2 = temp37;
initWhitelist(var2);
stop();
} else if (var0 == 0xb88d4fde) {
// Dispatch table entry for
safeTransferFrom(address,address,uint256,bytes)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var temp41 = memory[0x40:0x60];
var temp42 = msg.data[0x64:0x84];
var temp43 = msg.data[temp42 + 0x04:temp42 + 0x04 + 0x20];
memory[0x40:0x60] = temp41 + (temp43 + 0x1f) / 0x20 * 0x20 + 0x20;
memory[temp41:temp41 + 0x20] = temp43;
var1 = 0x01de;
var temp44 = 0x02 ** 0xa0 - 0x01;
var2 = temp44 & msg.data[0x04:0x24];
var3 = temp44 & msg.data[0x24:0x44];
var4 = msg.data[0x44:0x64];
memory[temp41 + 0x20:temp41 + 0x20 + temp43] = msg.data[temp42 + 0x24:temp42 + 0x24 + temp43];
var5 = temp41;
safeTransferFrom(var2, var3, var4, var5);
stop();
} else if (var0 == 0xc87b56dd) {
// Dispatch table entry for
tokenURI(uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01f5;
var2 = msg.data[0x04:0x24];
var1 =
tokenURI(var2);
goto label_01F5;
} else if (var0 == 0xd9856c21) {
// Dispatch table entry for addNewToken(string)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var temp45 = memory[0x40:0x60];
var temp46 = msg.data[0x04:0x24];
var temp47 = msg.data[temp46 + 0x04:temp46 + 0x04 + 0x20];
memory[0x40:0x60] = temp45 + (temp47 + 0x1f) / 0x20 * 0x20 + 0x20;
memory[temp45:temp45 + 0x20] = temp47;
var1 = 0x01de;
memory[temp45 + 0x20:temp45 + 0x20 + temp47] = msg.data[temp46 + 0x24:temp46 + 0x24 + temp47];
var2 = temp45;
var3 = 0x0f4d;
var4 = msg.sender;
var3 =
isWhitelisted(var4);
if (var3) {
var3 = 0x0fd2;
var4 = var2;
var5 = msg.sender;
var temp48 = storage[0x10];
storage[0x10] = temp48 + 0x01;
var6 = 0x00;
var7 = temp48;
var8 = 0x14fe;
var9 = var5;
var10 = var7;
func_1771(var9, var10);
var8 = 0x1508;
var9 = var7;
var10 = var4;
goto label_12A4;
} else {
var temp49 = memory[0x40:0x60];
memory[temp49:temp49 + 0x20] = 0x461bcd * 0x02 ** 0xe5;
memory[temp49 + 0x04:temp49 + 0x04 + 0x20] = 0x20;
memory[temp49 + 0x24:temp49 + 0x24 + 0x20] = 0x24;
memory[temp49 + 0x44:temp49 + 0x44 + 0x20] = 0x6d7573742062652077686974656c697374656420746f2063726561746520746f;
memory[temp49 + 0x64:temp49 + 0x64 + 0x20] = 0x6b656e7300000000000000000000000000000000000000000000000000000000;
var temp50 = memory[0x40:0x60];
revert(memory[temp50:temp50 + temp49 - temp50 + 0x84]);
}
} else if (var0 == 0xe43252d7) {
// Dispatch table entry for
addToWhitelist(address)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01de;
var2 = msg.data[0x04:0x24] & 0x02 ** 0xa0 - 0x01;
addToWhitelist(var2);
stop();
} else if (var0 == 0xe985e9c5) {
// Dispatch table entry for
isApprovedForAll(address,address)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01b0;
var temp51 = 0x02 ** 0xa0 - 0x01;
var2 = temp51 & msg.data[0x04:0x24];
var3 = msg.data[0x24:0x44] & temp51;
var1 =
isApprovedForAll(var2, var3);
goto label_01B0;
} else if (var0 == 0xf2fde38b) {
// Dispatch table entry for
transferOwnership(address)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01de;
var2 = msg.data[0x04:0x24] & 0x02 ** 0xa0 - 0x01;
transferOwnership(var2);
stop();
} else { revert(memory[0x00:0x00]); }
}
function supportsInterface(var arg0) returns (var r0) {
memory[0x00:0x20] = arg0 & ~0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff;
memory[0x20:0x40] = 0x00;
return storage[keccak256(memory[0x00:0x40])] & 0xff;
}
function enableWhitelist(var arg0) {
var var0 = 0x06da;
var0 =
isOwner();
if (!var0) { revert(memory[0x00:0x00]); }
storage[0x0e] = !!arg0 | (storage[0x0e] & ~0xff);
}
function name() returns (var r0) {
var temp0 = storage[0x09];
var temp1 = memory[0x40:0x60];
var temp2 = (temp0 & !(temp0 & 0x01) * 0x0100 + ~0x00) / 0x02;
memory[0x40:0x60] = temp1 + (temp2 + 0x1f) / 0x20 * 0x20 + 0x20;
memory[temp1:temp1 + 0x20] = temp2;
var var0 = 0x60;
var var1 = temp1;
var var3 = temp2;
var var2 = 0x09;
var var4 = var1 + 0x20;
var var5 = var2;
var var6 = var3;
if (!var6) {
label_0784:
return var1;
} else if (0x1f < var6) {
var temp3 = var4;
var temp4 = temp3 + var6;
var4 = temp4;
memory[0x00:0x20] = var5;
var temp5 = keccak256(memory[0x00:0x20]);
memory[temp3:temp3 + 0x20] = storage[temp5];
var5 = temp5 + 0x01;
var6 = temp3 + 0x20;
if (var4 <= var6) { goto label_077B; }
label_0767:
var temp6 = var5;
var temp7 = var6;
memory[temp7:temp7 + 0x20] = storage[temp6];
var5 = temp6 + 0x01;
var6 = temp7 + 0x20;
if (var4 > var6) { goto label_0767; }
label_077B:
var temp8 = var4;
var temp9 = temp8 + (var6 - temp8 & 0x1f);
var6 = temp8;
var4 = temp9;
goto label_0784;
} else {
var temp10 = var4;
memory[temp10:temp10 + 0x20] = storage[var5] / 0x0100 * 0x0100;
var4 = temp10 + 0x20;
var6 = var6;
goto label_0784;
}
}
function getApproved(var arg0) returns (var r0) {
var var0 = 0x00;
var var1 = 0x079a;
var var2 = arg0;
var1 =
func_1076(var2);
if (!var1) { revert(memory[0x00:0x00]); }
memory[0x00:0x20] = arg0;
memory[0x20:0x40] = 0x02;
return storage[keccak256(memory[0x00:0x40])] & 0x02 ** 0xa0 - 0x01;
}
function approve(var arg0, var arg1) {
var var0 = 0x00;
var var1 = 0x07cc;
var var2 = arg1;
var1 =
ownerOf(var2);
var0 = var1;
var temp0 = 0x02 ** 0xa0 - 0x01;
if (var0 & temp0 == temp0 & arg0) { revert(memory[0x00:0x00]); }
var1 = var0 & 0x02 ** 0xa0 - 0x01 == msg.sender;
if (var1) {
label_0803:
if (!var1) { revert(memory[0x00:0x00]); }
var temp1 = arg1;
memory[0x00:0x20] = temp1;
memory[0x20:0x40] = 0x02;
var temp2 = keccak256(memory[0x00:0x40]);
var temp3 = 0x02 ** 0xa0 - 0x01;
var temp4 = temp3 & arg0;
storage[temp2] = temp4 | (storage[temp2] & ~(0x02 ** 0xa0 - 0x01));
log(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00], [0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925, stack[-1] & 0x02 ** 0xa0 - 0x01, stack[-3] & 0x02 ** 0xa0 - 0x01, stack[-2]]);
return;
} else {
var1 = 0x0803;
var2 = var0;
var var3 = msg.sender;
var1 =
isApprovedForAll(var2, var3);
goto label_0803;
}
}
function totalSupply() returns (var r0) { return storage[0x07]; }
function transferFrom(var arg0, var arg1, var arg2) {
var var0 = 0x087a;
var var1 = msg.sender;
var var2 = arg2;
var0 =
func_1093(var1, var2);
if (!var0) { revert(memory[0x00:0x00]); }
if (!(arg1 & 0x02 ** 0xa0 - 0x01)) { revert(memory[0x00:0x00]); }
var0 = 0x08a4;
var1 = arg0;
var2 = arg2;
func_10F2(var1, var2);
var0 = 0x08ae;
var1 = arg0;
var2 = arg2;
func_1154(var1, var2);
var0 = 0x08b8;
var1 = arg1;
var2 = arg2;
func_125B(var1, var2);
var temp0 = memory[0x40:0x60];
log(memory[temp0:temp0 + memory[0x40:0x60] - temp0], [0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef, stack[-3] & 0x02 ** 0xa0 - 0x01, stack[-2] & 0x02 ** 0xa0 - 0x01, stack[-1]]);
}
function tokenOfOwnerByIndex(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
var var1 = 0x0a91;
var var2 = arg0;
var1 =
balanceOf(var2);
if (arg1 >= var1) { revert(memory[0x00:0x00]); }
memory[0x00:0x20] = arg0 & 0x02 ** 0xa0 - 0x01;
memory[0x20:0x40] = 0x05;
var1 = keccak256(memory[0x00:0x40]);
var2 = arg1;
if (var2 >= storage[var1]) { assert(); }
memory[0x00:0x20] = var1;
return storage[keccak256(memory[0x00:0x20]) + var2];
}
function isWhitelisted(var arg0) returns (var r0) {
var var0 = 0x00;
if (!(storage[0x0e] & 0xff)) {
var0 = 0x01;
label_06CD:
return var0;
} else {
memory[0x00:0x20] = arg0 & 0x02 ** 0xa0 - 0x01;
memory[0x20:0x40] = 0x0d;
var0 = storage[keccak256(memory[0x00:0x40])] & 0xff;
goto label_06CD;
}
}
function tokenCreator(var arg0) returns (var r0) {
memory[0x00:0x20] = arg0;
memory[0x20:0x40] = 0x0f;
return storage[keccak256(memory[0x00:0x40])] & 0x02 ** 0xa0 - 0x01;
}
function tokenByIndex(var arg0) returns (var r0) {
var var0 = 0x00;
var var1 = 0x0b51;
var1 =
totalSupply();
if (arg0 >= var1) { revert(memory[0x00:0x00]); }
var1 = 0x07;
var var2 = arg0;
if (var2 >= storage[var1]) { assert(); }
memory[0x00:0x20] = var1;
return storage[keccak256(memory[0x00:0x20]) + var2];
}
function ownerOf(var arg0) returns (var r0) {
var var0 = 0x00;
memory[var0:var0 + 0x20] = arg0;
memory[0x20:0x40] = 0x01;
var var1 = storage[keccak256(memory[var0:var0 + 0x40])] & 0x02 ** 0xa0 - 0x01;
if (var1) { return var1; }
else { revert(memory[0x00:0x00]); }
}
function balanceOf(var arg0) returns (var r0) {
var var0 = 0x00;
if (!(arg0 & 0x02 ** 0xa0 - 0x01)) { revert(memory[0x00:0x00]); }
memory[0x00:0x20] = arg0 & 0x02 ** 0xa0 - 0x01;
memory[0x20:0x40] = 0x03;
return storage[keccak256(memory[0x00:0x40])];
}
function renounceOwnership() {
var var0 = 0x0c59;
var0 =
isOwner();
if (!var0) { revert(memory[0x00:0x00]); }
log(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00], [0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0, storage[0x0c] & 0x02 ** 0xa0 - 0x01, 0x00]);
storage[0x0c] = storage[0x0c] & ~(0x02 ** 0xa0 - 0x01);
}
function removeFromWhitelist(var arg0) {
var var0 = 0x0cb6;
var0 =
isOwner();
if (!var0) { revert(memory[0x00:0x00]); }
var0 = 0x0cca;
var var1 = arg0;
func_131F(var1);
log(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00], [0x1f756c8b089af6b33ee121fee8badac2553a2fa89c0575ea91ff8792617746c2, stack[-1] & 0x02 ** 0xa0 - 0x01]);
}
function owner() returns (var r0) { return storage[0x0c] & 0x02 ** 0xa0 - 0x01; }
function isOwner() returns (var r0) { return msg.sender == storage[0x0c] & 0x02 ** 0xa0 - 0x01; }
function symbol() returns (var r0) {
var temp0 = storage[0x0a];
var temp1 = memory[0x40:0x60];
var temp2 = (temp0 & !(temp0 & 0x01) * 0x0100 + ~0x00) / 0x02;
memory[0x40:0x60] = temp1 + (temp2 + 0x1f) / 0x20 * 0x20 + 0x20;
memory[temp1:temp1 + 0x20] = temp2;
var var0 = 0x60;
var var1 = temp1;
var var3 = temp2;
var var2 = 0x0a;
var var4 = var1 + 0x20;
var var5 = var2;
var var6 = var3;
if (!var6) {
label_0784:
return var1;
} else if (0x1f < var6) {
var temp3 = var4;
var temp4 = temp3 + var6;
var4 = temp4;
memory[0x00:0x20] = var5;
var temp5 = keccak256(memory[0x00:0x20]);
memory[temp3:temp3 + 0x20] = storage[temp5];
var5 = temp5 + 0x01;
var6 = temp3 + 0x20;
if (var4 <= var6) { goto label_077B; }
label_0767:
var temp6 = var5;
var temp7 = var6;
memory[temp7:temp7 + 0x20] = storage[temp6];
var5 = temp6 + 0x01;
var6 = temp7 + 0x20;
if (var4 > var6) { goto label_0767; }
label_077B:
var temp8 = var4;
var temp9 = temp8 + (var6 - temp8 & 0x1f);
var6 = temp8;
var4 = temp9;
goto label_0784;
} else {
var temp10 = var4;
memory[temp10:temp10 + 0x20] = storage[var5] / 0x0100 * 0x0100;
var4 = temp10 + 0x20;
var6 = var6;
goto label_0784;
}
}
function setApprovalForAll(var arg0, var arg1) {
if (msg.sender == arg0 & 0x02 ** 0xa0 - 0x01) { revert(memory[0x00:0x00]); }
var temp0 = msg.sender;
memory[0x00:0x20] = temp0;
memory[0x20:0x40] = 0x04;
var temp1 = keccak256(memory[0x00:0x40]);
var temp2 = arg0 & 0x02 ** 0xa0 - 0x01;
memory[0x00:0x20] = temp2;
memory[0x20:0x40] = temp1;
var temp3 = keccak256(memory[0x00:0x40]);
var temp4 = !!arg1;
storage[temp3] = temp4 | (storage[temp3] & ~0xff);
var temp5 = memory[0x40:0x60];
memory[temp5:temp5 + 0x20] = temp4;
var temp6 = memory[0x40:0x60];
log(memory[temp6:temp6 + temp5 - temp6 + 0x20], [0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31, msg.sender, stack[-2] & 0x02 ** 0xa0 - 0x01]);
}
function initWhitelist(var arg0) {
var var0 = 0x00;
var var1 = var0;
var var2 = 0x0e11;
var2 =
isOwner();
if (!var2) { revert(memory[0x00:0x00]); }
var0 = 0x00;
if (var0 >= memory[arg0:arg0 + 0x20]) {
label_0B42:
return;
} else {
label_0E2B:
var2 = arg0;
var var3 = var0;
if (var3 >= memory[var2:var2 + 0x20]) { assert(); }
var temp0 = memory[var3 * 0x20 + var2 + 0x20:var3 * 0x20 + var2 + 0x20 + 0x20];
var1 = temp0;
var2 = 0x0e4d;
var3 = var1;
var2 =
isWhitelisted(var3);
if (var2) {
label_0E5C:
var1 = var1;
var0 = var0 + 0x01;
if (var0 >= memory[arg0:arg0 + 0x20]) { goto label_0B42; }
else { goto label_0E2B; }
} else {
var2 = 0x0e5c;
var3 = var1;
func_1340(var3);
goto label_0E5C;
}
}
}
function safeTransferFrom(var arg0, var arg1, var arg2, var arg3) {
var var0 = 0x0e72;
var var1 = arg0;
var var2 = arg1;
var var3 = arg2;
transferFrom(var1, var2, var3);
var0 = 0x0e7e;
var1 = arg0;
var2 = arg1;
var3 = arg2;
var var4 = arg3;
var0 =
func_1364(var1, var2, var3, var4);
if (var0) { return; }
else { revert(memory[0x00:0x00]); }
}
function tokenURI(var arg0) returns (var r0) {
var var0 = 0x60;
var var1 = 0x0e9a;
var var2 = arg0;
var1 =
func_1076(var2);
if (!var1) { revert(memory[0x00:0x00]); }
memory[0x00:0x20] = arg0;
memory[0x20:0x40] = 0x0b;
var temp0 = keccak256(memory[0x00:0x40]);
var temp1 = storage[temp0];
var temp2 = memory[0x40:0x60];
var temp3 = (temp1 & !(temp1 & 0x01) * 0x0100 + ~0x00) / 0x02;
var1 = temp2;
memory[0x40:0x60] = var1 + (temp3 + 0x1f) / 0x20 * 0x20 + 0x20;
memory[var1:var1 + 0x20] = temp3;
var var3 = temp3;
var2 = temp0;
var var4 = var1 + 0x20;
var var5 = var2;
var var6 = var3;
if (!var6) {
label_0F38:
return var1;
} else if (0x1f < var6) {
var temp4 = var4;
var temp5 = temp4 + var6;
var4 = temp5;
memory[0x00:0x20] = var5;
var temp6 = keccak256(memory[0x00:0x20]);
memory[temp4:temp4 + 0x20] = storage[temp6];
var5 = temp6 + 0x01;
var6 = temp4 + 0x20;
if (var4 <= var6) { goto label_0F2F; }
label_0F1B:
var temp7 = var5;
var temp8 = var6;
memory[temp8:temp8 + 0x20] = storage[temp7];
var5 = temp7 + 0x01;
var6 = temp8 + 0x20;
if (var4 > var6) { goto label_0F1B; }
label_0F2F:
var temp9 = var4;
var temp10 = temp9 + (var6 - temp9 & 0x1f);
var6 = temp9;
var4 = temp10;
goto label_0F38;
} else {
var temp11 = var4;
memory[temp11:temp11 + 0x20] = storage[var5] / 0x0100 * 0x0100;
var6 = var6;
var4 = temp11 + 0x20;
goto label_0F38;
}
}
function addToWhitelist(var arg0) {
var var0 = 0x0fde;
var0 =
isOwner();
if (!var0) { revert(memory[0x00:0x00]); }
var0 = 0x0ff2;
var var1 = arg0;
func_1340(var1);
log(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00], [0x75b2135d1c8c3519f3c09c43fe6527089ef09f40c7981ebf0ed46e79e79032c7, stack[-1] & 0x02 ** 0xa0 - 0x01]);
}
function isApprovedForAll(var arg0, var arg1) returns (var r0) {
var temp0 = 0x02 ** 0xa0 - 0x01;
memory[0x00:0x20] = temp0 & arg0;
memory[0x20:0x40] = 0x04;
var temp1 = keccak256(memory[0x00:0x40]);
memory[0x00:0x20] = temp0 & arg1;
memory[0x20:0x40] = temp1;
return storage[keccak256(memory[0x00:0x40])] & 0xff;
}
function transferOwnership(var arg0) {
var var0 = 0x105f;
var0 =
isOwner();
if (!var0) { revert(memory[0x00:0x00]); }
var0 = 0x1073;
var var1 = arg0;
func_1519(var1);
}
function func_1076(var arg0) returns (var r0) {
memory[0x00:0x20] = arg0;
memory[0x20:0x40] = 0x01;
return !!(storage[keccak256(memory[0x00:0x40])] & 0x02 ** 0xa0 - 0x01);
}
function func_1093(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
var var1 = var0;
var var2 = 0x109f;
var var3 = arg1;
var2 =
ownerOf(var3);
var1 = var2;
var2 = arg0 & 0x02 ** 0xa0 - 0x01 == var1 & 0x02 ** 0xa0 - 0x01;
if (var2) {
label_10DA:
if (var2) {
label_10EA:
return var2;
} else {
var2 = 0x10ea;
var3 = var1;
var var4 = arg0;
var2 =
isApprovedForAll(var3, var4);
goto label_10EA;
}
} else {
var2 = arg0 & 0x02 ** 0xa0 - 0x01;
var3 = 0x10cf;
var4 = arg1;
var3 =
getApproved(var4);
var2 = var3 & 0x02 ** 0xa0 - 0x01 == var2;
goto label_10DA;
}
}
function func_10F2(var arg0, var arg1) {
var var0 = arg0 & 0x02 ** 0xa0 - 0x01;
var var1 = 0x1105;
var var2 = arg1;
var1 =
ownerOf(var2);
if (var1 & 0x02 ** 0xa0 - 0x01 != var0) { revert(memory[0x00:0x00]); }
memory[0x00:0x20] = arg1;
memory[0x20:0x40] = 0x02;
if (!(storage[keccak256(memory[0x00:0x40])] & 0x02 ** 0xa0 - 0x01)) { return; }
memory[0x00:0x20] = arg1;
memory[0x20:0x40] = 0x02;
var temp0 = keccak256(memory[0x00:0x40]);
storage[temp0] = storage[temp0] & ~(0x02 ** 0xa0 - 0x01);
}
function func_1154(var arg0, var arg1) {
var var0 = 0x00;
var var1 = var0;
var var2 = 0x00;
var var3 = 0x1163;
var var4 = arg0;
var var5 = arg1;
func_158A(var4, var5);
memory[0x00:0x20] = arg1;
memory[0x20:0x40] = 0x06;
var temp0 = storage[keccak256(memory[0x00:0x40])];
memory[0x00:0x20] = arg0 & 0x02 ** 0xa0 - 0x01;
memory[0x20:0x40] = 0x05;
var0 = temp0;
var3 = 0x119e;
var4 = storage[keccak256(memory[0x00:0x40])];
var5 = 0x01;
var3 =
func_1613(var4, var5);
memory[0x00:0x20] = arg0 & 0x02 ** 0xa0 - 0x01;
memory[0x20:0x40] = 0x05;
var temp1 = var3;
var1 = temp1;
var3 = keccak256(memory[0x00:0x40]);
var4 = var1;
if (var4 >= storage[var3]) { assert(); }
memory[0x00:0x20] = var3;
var2 = storage[keccak256(memory[0x00:0x20]) + var4];
var3 = var2;
memory[0x00:0x20] = arg0 & 0x02 ** 0xa0 - 0x01 & 0x02 ** 0xa0 - 0x01;
memory[0x20:0x40] = 0x05;
var4 = keccak256(memory[0x00:0x40]);
var5 = var0;
if (var5 >= storage[var4]) { assert(); }
memory[0x00:0x20] = var4;
storage[var5 + keccak256(memory[0x00:0x20])] = var3;
memory[0x00:0x20] = arg0 & 0x02 ** 0xa0 - 0x01;
memory[0x20:0x40] = 0x05;
var3 = storage[keccak256(memory[0x00:0x40])];
var4 = 0x123d;
var5 = keccak256(memory[0x00:0x40]);
var var6 = var3 + ~0x00;
func_18AB(var5, var6);
memory[0x00:0x20] = arg1;
memory[0x20:0x40] = 0x06;
storage[keccak256(memory[0x00:0x40])] = 0x00;
memory[0x00:0x20] = var2;
storage[keccak256(memory[0x00:0x40])] = var0;
}
function func_125B(var arg0, var arg1) {
var var0 = 0x00;
var var1 = 0x1267;
var var2 = arg0;
var var3 = arg1;
func_162A(var2, var3);
var temp0 = arg1;
memory[0x00:0x20] = arg0 & 0x02 ** 0xa0 - 0x01;
memory[0x20:0x40] = 0x05;
var temp1 = keccak256(memory[0x00:0x40]);
var temp2 = storage[temp1];
storage[temp1] = temp2 + 0x01;
memory[0x00:0x20] = temp1;
storage[temp2 + keccak256(memory[0x00:0x20])] = temp0;
memory[0x00:0x20] = temp0;
memory[0x20:0x40] = 0x06;
storage[keccak256(memory[0x00:0x40])] = temp2;
}
function func_12D7(var arg0, var arg1) {
var var0 = 0x12e1;
var var1 = arg0;
var var2 = arg1;
func_16AD(var1, var2);
memory[0x00:0x20] = arg1;
memory[0x20:0x40] = 0x0b;
var temp0 = storage[keccak256(memory[0x00:0x40])];
if (!((temp0 & !(temp0 & 0x01) * 0x0100 + ~0x00) / 0x02)) {
label_0FD2:
return;
} else {
memory[0x00:0x20] = arg1;
memory[0x20:0x40] = 0x0b;
var1 = keccak256(memory[0x00:0x40]);
var0 = 0x0fd2;
var2 = 0x00;
func_194D(var1, var2);
goto label_0FD2;
}
}
function func_131F(var arg0) {
memory[0x00:0x20] = arg0 & 0x02 ** 0xa0 - 0x01;
memory[0x20:0x40] = 0x0d;
var temp0 = keccak256(memory[0x00:0x40]);
storage[temp0] = storage[temp0] & ~0xff;
}
function func_1340(var arg0) {
memory[0x00:0x20] = arg0 & 0x02 ** 0xa0 - 0x01;
memory[0x20:0x40] = 0x0d;
var temp0 = keccak256(memory[0x00:0x40]);
storage[temp0] = (storage[temp0] & ~0xff) | 0x01;
}
function func_1364(var arg0, var arg1, var arg2, var arg3) returns (var r0) {
var var0 = 0x00;
var var1 = var0;
var var2 = 0x1379;
var var3 = arg1 & 0x02 ** 0xa0 - 0x01;
var2 =
func_1769(var3);
if (var2) {
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x150b7a0200000000000000000000000000000000000000000000000000000000;
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = msg.sender;
var temp1 = 0x02 ** 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];
var2 = arg1 & temp1;
var3 = 0x150b7a02;
var var8 = temp0 + 0x04;
var var4 = msg.sender;
var var5 = arg0;
var var6 = arg2;
var var7 = temp2;
var var9 = temp0 + 0x64;
var var10 = temp0 + 0xa4;
var var11 = var7 + 0x20;
var var12 = memory[var7:var7 + 0x20];
var var13 = var12;
var var14 = var10;
var var15 = var11;
var var16 = 0x00;
if (var16 >= var13) {
label_141B:
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_146A:
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) { revert(memory[0x00:0x00]); }
var0 = memory[var2:var2 + 0x20] & ~0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff == 0x150b7a0200000000000000000000000000000000000000000000000000000000;
var1 = memory[var2:var2 + 0x20];
label_14DD:
return var0;
} 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_146A; }
else { revert(memory[0x00:0x00]); }
}
} else {
label_140C:
var temp8 = var16;
memory[temp8 + var14:temp8 + var14 + 0x20] = memory[temp8 + var15:temp8 + var15 + 0x20];
var16 = temp8 + 0x20;
if (var16 >= var13) { goto label_141B; }
else { goto label_140C; }
}
} else {
var0 = 0x01;
goto label_14DD;
}
}
function func_1519(var arg0) {
if (!(arg0 & 0x02 ** 0xa0 - 0x01)) { revert(memory[0x00:0x00]); }
var temp0 = 0x02 ** 0xa0 - 0x01;
var temp1 = arg0;
log(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00], [0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0, storage[0x0c] & 0x02 ** 0xa0 - 0x01, stack[-1] & 0x02 ** 0xa0 - 0x01]);
storage[0x0c] = (temp1 & 0x02 ** 0xa0 - 0x01) | (storage[0x0c] & ~(0x02 ** 0xa0 - 0x01));
}
function func_158A(var arg0, var arg1) {
var var0 = arg0 & 0x02 ** 0xa0 - 0x01;
var var1 = 0x159d;
var var2 = arg1;
var1 =
ownerOf(var2);
if (var1 & 0x02 ** 0xa0 - 0x01 != var0) { revert(memory[0x00:0x00]); }
memory[0x00:0x20] = arg0 & 0x02 ** 0xa0 - 0x01;
memory[0x20:0x40] = 0x03;
var1 = storage[keccak256(memory[0x00:0x40])];
var0 = 0x15da;
var2 = 0x01;
var0 =
func_1613(var1, var2);
memory[0x00:0x20] = arg0 & 0x02 ** 0xa0 - 0x01;
memory[0x20:0x40] = 0x03;
storage[keccak256(memory[0x00:0x40])] = var0;
memory[0x00:0x20] = arg1;
memory[0x20:0x40] = 0x01;
var temp0 = keccak256(memory[0x00:0x40]);
storage[temp0] = storage[temp0] & ~(0x02 ** 0xa0 - 0x01);
}
function func_1613(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
var var1 = var0;
if (arg1 <= arg0) { return arg0 - arg1; }
else { revert(memory[0x00:0x00]); }
}
function func_162A(var arg0, var arg1) {
memory[0x00:0x20] = arg1;
memory[0x20:0x40] = 0x01;
if (storage[keccak256(memory[0x00:0x40])] & 0x02 ** 0xa0 - 0x01) { revert(memory[0x00:0x00]); }
memory[0x00:0x20] = arg1;
memory[0x20:0x40] = 0x01;
var temp0 = keccak256(memory[0x00:0x40]);
var temp1 = arg0 & 0x02 ** 0xa0 - 0x01;
storage[temp0] = temp1 | (storage[temp0] & ~(0x02 ** 0xa0 - 0x01));
memory[0x00:0x20] = temp1;
memory[0x20:0x40] = 0x03;
var var1 = storage[keccak256(memory[0x00:0x40])];
var var0 = 0x168d;
var var2 = 0x01;
var0 =
func_17EE(var1, var2);
memory[0x00:0x20] = arg0 & 0x02 ** 0xa0 - 0x01;
memory[0x20:0x40] = 0x03;
storage[keccak256(memory[0x00:0x40])] = var0;
}
function func_16AD(var arg0, var arg1) {
var var0 = 0x00;
var var1 = var0;
var var2 = 0x00;
var var3 = 0x16bc;
var var4 = arg0;
var var5 = arg1;
func_1800(var4, var5);
memory[0x00:0x20] = arg1;
memory[0x20:0x40] = 0x08;
var0 = storage[keccak256(memory[0x00:0x40])];
var3 = 0x16e2;
var4 = storage[0x07];
var5 = 0x01;
var3 =
func_1613(var4, var5);
var temp0 = var3;
var1 = temp0;
var3 = 0x07;
var4 = var1;
if (var4 >= storage[var3]) { assert(); }
memory[0x00:0x20] = var3;
var2 = storage[keccak256(memory[0x00:0x20]) + var4];
var3 = var2;
var4 = 0x07;
var5 = var0;
if (var5 >= storage[var4]) { assert(); }
memory[0x00:0x20] = var4;
var temp1 = var3;
var3 = 0x00;
storage[keccak256(memory[var3:var3 + 0x20]) + var5] = temp1;
var4 = 0x07;
var5 = var1;
if (var5 >= storage[var4]) { assert(); }
memory[0x00:0x20] = var4;
storage[keccak256(memory[0x00:0x20]) + var5] = var3;
var3 = storage[0x07];
var4 = 0x174b;
var5 = 0x07;
var var6 = var3 + ~0x00;
func_18AB(var5, var6);
memory[0x00:0x20] = arg1;
memory[0x20:0x40] = 0x08;
storage[keccak256(memory[0x00:0x40])] = 0x00;
memory[0x00:0x20] = var2;
storage[keccak256(memory[0x00:0x40])] = var0;
}
function func_1769(var arg0) returns (var r0) { return address(arg0).code.length > 0x00; }
function func_1771(var arg0, var arg1) {
var var0 = 0x177b;
var var1 = arg0;
var var2 = arg1;
func_1850(var1, var2);
var temp0 = storage[0x07];
var temp1 = arg1;
memory[0x00:0x20] = temp1;
memory[0x20:0x40] = 0x08;
storage[keccak256(memory[0x00:0x40])] = temp0;
storage[0x07] = temp0 + 0x01;
memory[0x00:0x20] = 0x07;
storage[temp0 + 0xa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688] = temp1;
}
function func_17EE(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
var temp0 = arg0;
var var1 = arg1 + temp0;
if (var1 >= temp0) { return var1; }
else { revert(memory[0x00:0x00]); }
}
function func_1800(var arg0, var arg1) {
var var0 = 0x180a;
var var1 = arg0;
var var2 = arg1;
func_10F2(var1, var2);
var0 = 0x1814;
var1 = arg0;
var2 = arg1;
func_1154(var1, var2);
log(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00], [0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef, stack[-2] & 0x02 ** 0xa0 - 0x01, 0x00, stack[-1]]);
}
function func_1850(var arg0, var arg1) {
if (!(arg0 & 0x02 ** 0xa0 - 0x01)) { revert(memory[0x00:0x00]); }
var var0 = 0x186f;
var var1 = arg0;
var var2 = arg1;
func_125B(var1, var2);
log(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00], [0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef, 0x00, stack[-2] & 0x02 ** 0xa0 - 0x01, stack[-1]]);
}
function func_18AB(var arg0, var arg1) {
var temp0 = arg0;
var temp1 = storage[temp0];
var var0 = temp1;
var temp2 = arg1;
storage[temp0] = temp2;
if (var0 <= temp2) {
label_0B42:
return;
} else {
memory[0x00:0x20] = arg0;
var temp3 = keccak256(memory[0x00:0x20]);
var temp4 = var0;
var0 = 0x0b42;
var var1 = temp3 + temp4;
var var2 = arg1 + temp3;
var0 =
func_198D(var1, var2);
goto label_0B42;
}
}
function func_194D(var arg0, var arg1) {
var temp0 = arg0;
var temp1 = storage[temp0];
arg1 = (!(temp1 & 0x01) * 0x0100 - 0x01 & temp1) / 0x02;
storage[temp0] = 0x00;
if (0x1f >= arg1) { return; }
memory[0x00:0x20] = arg0;
arg0 = 0x1073;
arg1 = keccak256(memory[0x00:0x20]) + (arg1 + 0x1f) / 0x20;
var var0 = keccak256(memory[0x00:0x20]);
arg0 =
func_198D(arg1, var0);
// Error: Could not resolve method call return address!
}
function func_198D(var arg0, var arg1) returns (var r0) {
var temp0 = arg0;
arg0 = 0x078c;
var temp1 = arg1;
arg1 = temp0;
var var0 = temp1;
if (arg1 > var0) { return
func_199C(arg1, var0); }
arg0 = arg1;
// Error: Could not resolve jump destination!
}
function func_199C(var arg0, var arg1) returns (var r0) {
var temp0 = arg1;
storage[temp0] = 0x00;
arg1 = temp0 + 0x01;
if (arg0 <= arg1) { return arg0; }
r0 =
func_199C(arg0, arg1);
// Error: Could not resolve method call return address!
}
}