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 (0x8da5cb5b > var0) {
if (0x2eb2c2d6 > var0) {
if (var0 == 0xfdd58e) {
// Dispatch table entry for balanceOf(address,uint256)
var var1 = 0x016f;
var var2 = 0x016a;
var var3 = msg.data.length;
var var4 = 0x04;
var2, var3 =
func_1AA2(var3, var4);
var1 =
func_016A(var2, var3);
label_016F:
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = var1;
var1 = temp0 + 0x20;
label_0179:
var temp1 = memory[0x40:0x60];
return memory[temp1:temp1 + var1 - temp1];
} else if (var0 == 0x01ffc9a7) {
// Dispatch table entry for supportsInterface(bytes4)
var1 = 0x0195;
var2 = 0x0190;
var3 = msg.data.length;
var4 = 0x04;
var2 =
func_1AE2(var3, var4);
var1 =
func_0190(var2);
label_0195:
var temp2 = memory[0x40:0x60];
memory[temp2:temp2 + 0x20] = !!var1;
var1 = temp2 + 0x20;
goto label_0179;
} else if (var0 == 0x05496cf4) {
// Dispatch table entry for 0x05496cf4 (unknown)
var1 = 0x01b8;
var2 = 0x01b3;
var3 = msg.data.length;
var4 = 0x04;
var var5;
var2, var3, var4, var5 =
func_1C5F(var3, var4);
func_01B3(var2, var3, var4, var5);
stop();
} else if (var0 == 0x0e89341c) {
// Dispatch table entry for uri(uint256)
var1 = 0x01cd;
var2 = 0x01c8;
var3 = msg.data.length;
var4 = 0x04;
var2 =
func_1D1A(var3, var4);
var1 =
func_01C8(var2);
var temp3 = var1;
var1 = 0x0179;
var2 = temp3;
var3 = memory[0x40:0x60];
var temp4 = var3;
memory[temp4:temp4 + 0x20] = 0x20;
var4 = 0x00;
var5 = 0x1303;
var var6 = temp4 + 0x20;
var var7 = var2;
var5 =
func_1D57(var6, var7);
label_1303:
var1 = var5;
// Error: Could not resolve jump destination!
} else if (var0 == 0x1a5a3b86) {
// Dispatch table entry for 0x1a5a3b86 (unknown)
var1 = 0x0195;
var2 = 0x01e8;
var3 = msg.data.length;
var4 = 0x04;
var2 =
func_1D1A(var3, var4);
var1 =
func_01E8(var2);
goto label_0195;
} else if (var0 == 0x234b0fa8) {
// Dispatch table entry for lockSupply(uint256)
var1 = 0x01b8;
var2 = 0x01fb;
var3 = msg.data.length;
var4 = 0x04;
var2 =
func_1D1A(var3, var4);
func_01FB(var2);
stop();
} else { revert(memory[0x00:0x00]); }
} else if (var0 == 0x2eb2c2d6) {
// Dispatch table entry for safeBatchTransferFrom(address,address,uint256[],uint256[],bytes)
var1 = 0x01b8;
var2 = 0x020e;
var3 = msg.data.length;
var4 = 0x04;
var5 = 0x00;
var6 = var5;
var7 = 0x00;
var var8 = var7;
var var9 = 0x00;
if (var3 - var4 i< 0xa0) { revert(memory[0x00:0x00]); }
var var10 = 0x1e34;
var var11 = var4;
var10 =
func_1A86(var11);
var5 = var10;
var10 = 0x1e42;
var11 = var4 + 0x20;
var10 =
func_1A86(var11);
var6 = var10;
var10 = msg.data[var4 + 0x40:var4 + 0x40 + 0x20];
var11 = (0x01 << 0x40) - 0x01;
if (var10 > var11) { revert(memory[0x00:0x00]); }
var var12 = 0x1e6a;
var var13 = var3;
var var14 = var4 + var10;
var12 =
func_1B64(var13, var14);
var7 = var12;
var10 = msg.data[var4 + 0x60:var4 + 0x60 + 0x20];
if (var10 > var11) { revert(memory[0x00:0x00]); }
var12 = 0x1e8c;
var13 = var3;
var14 = var4 + var10;
var12 =
func_1B64(var13, var14);
var8 = var12;
var10 = msg.data[var4 + 0x80:var4 + 0x80 + 0x20];
if (var10 > var11) { revert(memory[0x00:0x00]); }
var11 = 0x1eaf;
var12 = var3;
var13 = var4 + var10;
label_1DF3:
var14 = 0x00;
if (var13 + 0x1f i>= var12) { revert(memory[0x00:0x00]); }
var var15 = 0x1303;
var var16 = var12;
var temp5 = var13;
var var17 = msg.data[temp5:temp5 + 0x20];
var var18 = temp5 + 0x20;
var15 =
func_1D96(var16, var17, var18);
goto label_1303;
} else if (var0 == 0x4e1273f4) {
// Dispatch table entry for balanceOfBatch(address[],uint256[])
var1 = 0x0226;
var2 = 0x0221;
var3 = msg.data.length;
var4 = 0x04;
var2, var3 =
func_1EBC(var3, var4);
var1 =
func_0221(var2, var3);
var temp6 = var1;
var1 = 0x0179;
var2 = temp6;
var3 = memory[0x40:0x60];
var temp7 = var3;
memory[temp7:temp7 + 0x20] = 0x20;
var4 = 0x00;
var5 = 0x1303;
var6 = temp7 + 0x20;
var7 = var2;
var5 =
func_1F86(var6, var7);
goto label_1303;
} else if (var0 == 0x631a1264) {
// Dispatch table entry for 0x631a1264 (unknown)
var1 = 0x01b8;
var2 = 0x0241;
var3 = msg.data.length;
var4 = 0x04;
var2 =
func_1FD4(var3, var4);
var3 = 0x07b5;
func_0B80();
var3 = 0x07be;
var4 = var2;
var5 = 0x02;
var6 = 0x0915;
var7 = var4;
var8 = var5;
func_2556(var7, var8);
// Error: Could not resolve jump destination!
} else if (var0 == 0x6b20c454) {
// Dispatch table entry for burnBatch(address,uint256[],uint256[])
var1 = 0x01b8;
var2 = 0x0254;
var3 = msg.data.length;
var4 = 0x04;
var2, var3, var4 =
func_201C(var3, var4);
var5 = msg.sender == var2 & (0x01 << 0xa0) - 0x01;
if (var5) {
label_07DD:
if (var5) {
var5 = 0x0804;
var6 = var2;
var7 = var3;
var8 = var4;
func_0F1C(var6, var7, var8);
// Error: Could not resolve jump destination!
} else {
var temp8 = memory[0x40:0x60];
memory[temp8:temp8 + 0x20] = 0x461bcd << 0xe5;
var6 = temp8 + 0x04;
var5 = 0x03f8;
var5 =
func_238D(var6);
label_03F8:
var temp9 = memory[0x40:0x60];
revert(memory[temp9:temp9 + var5 - temp9]);
}
} else {
var5 = 0x07dd;
var6 = var2;
var7 = msg.sender;
var5 =
func_0319(var6, var7);
goto label_07DD;
}
} else if (var0 == 0x715018a6) {
// Dispatch table entry for renounceOwnership()
var1 = 0x01b8;
var2 = 0x0811;
func_10A7();
var2 = 0x081b;
var3 = 0x00;
func_1101(var3);
// Error: Could not resolve jump destination!
} else if (var0 == 0x75829def) {
// Dispatch table entry for transferAdmin(address)
var1 = 0x01b8;
var2 = 0x026f;
var3 = msg.data.length;
var4 = 0x04;
var2 =
func_208F(var3, var4);
func_026F(var2);
stop();
} else { revert(memory[0x00:0x00]); }
} else if (0xccbcdd8c > var0) {
if (var0 == 0x8da5cb5b) {
// Dispatch table entry for owner()
var temp10 = memory[0x40:0x60];
memory[temp10:temp10 + 0x20] = storage[0x03] & (0x01 << 0xa0) - 0x01 & (0x01 << 0xa0) - 0x01;
var1 = temp10 + 0x20;
goto label_0179;
} else if (var0 == 0x945633c1) {
// Dispatch table entry for 0x945633c1 (unknown)
var1 = 0x016f;
var2 = 0x02a7;
var3 = msg.data.length;
var4 = 0x04;
var2 =
func_1D1A(var3, var4);
var2 =
func_02A7(var2);
goto label_016F;
} else if (var0 == 0x97aba7f9) {
// Dispatch table entry for recoverSigner(bytes32,bytes)
var1 = 0x0281;
var2 = 0x02ba;
var3 = msg.data.length;
var4 = 0x04;
var5 = 0x00;
var6 = var5;
if (var3 - var4 i< 0x40) { revert(memory[0x00:0x00]); }
var temp11 = var4;
var5 = msg.data[temp11:temp11 + 0x20];
var7 = msg.data[temp11 + 0x20:temp11 + 0x20 + 0x20];
if (var7 > (0x01 << 0x40) - 0x01) { revert(memory[0x00:0x00]); }
var8 = 0x1f7c;
var9 = var3;
var10 = var4 + var7;
goto label_1DF3;
} else if (var0 == 0x9a90d277) {
// Dispatch table entry for 0x9a90d277 (unknown)
var1 = 0x016f;
var2 = 0x02cd;
var3 = msg.data.length;
var4 = 0x04;
var5 = 0x00;
var6 = var5;
if (var3 - var4 i< 0x40) { revert(memory[0x00:0x00]); }
var7 = msg.data[var4:var4 + 0x20];
if (var7 > (0x01 << 0x40) - 0x01) { revert(memory[0x00:0x00]); }
var8 = 0x211b;
var9 = var3;
var10 = var4 + var7;
goto label_1DF3;
} else if (var0 == 0xa22cb465) {
// Dispatch table entry for setApprovalForAll(address,bool)
var1 = 0x01b8;
var2 = 0x02e0;
var3 = msg.data.length;
var4 = 0x04;
var2, var3 =
func_212A(var3, var4);
func_02E0(var2, var3);
stop();
} else if (var0 == 0xc11d23f0) {
// Dispatch table entry for 0xc11d23f0 (unknown)
var1 = 0x0195;
var2 = 0x02f3;
var3 = msg.data.length;
var4 = 0x04;
var5 = 0x00;
if (var3 - var4 i< 0x20) { revert(memory[0x00:0x00]); }
var6 = msg.data[var4:var4 + 0x20];
if (var6 > (0x01 << 0x40) - 0x01) { revert(memory[0x00:0x00]); }
var7 = 0x08c2;
var8 = var3;
var9 = var4 + var6;
var7 =
func_1B64(var8, var9);
var2 = var7;
// Error: Could not resolve jump destination!
} else { revert(memory[0x00:0x00]); }
} else if (var0 == 0xccbcdd8c) {
// Dispatch table entry for 0xccbcdd8c (unknown)
var1 = 0x01b8;
var2 = 0x0306;
var3 = msg.data.length;
var4 = 0x04;
var5 = 0x00;
var6 = var5;
var7 = 0x00;
var8 = var7;
var9 = 0x00;
var10 = var9;
if (var3 - var4 i< 0xc0) { revert(memory[0x00:0x00]); }
var11 = 0x21bc;
var12 = var4;
var11 =
func_1A86(var12);
var5 = var11;
var11 = msg.data[var4 + 0x20:var4 + 0x20 + 0x20];
var12 = (0x01 << 0x40) - 0x01;
if (var11 > var12) { revert(memory[0x00:0x00]); }
var13 = 0x21e4;
var14 = var3;
var15 = var4 + var11;
var13 =
func_1B64(var14, var15);
var6 = var13;
var11 = msg.data[var4 + 0x40:var4 + 0x40 + 0x20];
if (var11 > var12) { revert(memory[0x00:0x00]); }
var13 = 0x2206;
var14 = var3;
var15 = var4 + var11;
var13 =
func_1B64(var14, var15);
var7 = var13;
var temp12 = var4;
var8 = msg.data[temp12 + 0x60:temp12 + 0x60 + 0x20];
var9 = msg.data[temp12 + 0x80:temp12 + 0x80 + 0x20];
var11 = msg.data[temp12 + 0xa0:temp12 + 0xa0 + 0x20];
if (var11 > var12) { revert(memory[0x00:0x00]); }
var12 = 0x2237;
var13 = var3;
var14 = var4 + var11;
goto label_1DF3;
} else if (var0 == 0xe985e9c5) {
// Dispatch table entry for isApprovedForAll(address,address)
var1 = 0x0195;
var2 = 0x0319;
var3 = msg.data.length;
var4 = 0x04;
var2, var3 =
func_2244(var3, var4);
var1 =
func_0319(var2, var3);
goto label_0195;
} else if (var0 == 0xf242432a) {
// Dispatch table entry for safeTransferFrom(address,address,uint256,uint256,bytes)
var1 = 0x01b8;
var2 = 0x0355;
var3 = msg.data.length;
var4 = 0x04;
var5 = 0x00;
var6 = var5;
var7 = 0x00;
var8 = var7;
var9 = 0x00;
if (var3 - var4 i< 0xa0) { revert(memory[0x00:0x00]); }
var10 = 0x2298;
var11 = var4;
var10 =
func_1A86(var11);
var5 = var10;
var10 = 0x22a6;
var11 = var4 + 0x20;
var10 =
func_1A86(var11);
var6 = var10;
var temp13 = var4;
var7 = msg.data[temp13 + 0x40:temp13 + 0x40 + 0x20];
var8 = msg.data[temp13 + 0x60:temp13 + 0x60 + 0x20];
var10 = msg.data[temp13 + 0x80:temp13 + 0x80 + 0x20];
if (var10 > (0x01 << 0x40) - 0x01) { revert(memory[0x00:0x00]); }
var11 = 0x1eaf;
var12 = var3;
var13 = var4 + var10;
goto label_1DF3;
} else if (var0 == 0xf2fde38b) {
// Dispatch table entry for transferOwnership(address)
var1 = 0x01b8;
var2 = 0x0368;
var3 = msg.data.length;
var4 = 0x04;
var2 =
func_208F(var3, var4);
var3 = 0x0acf;
func_10A7();
if (var2 & (0x01 << 0xa0) - 0x01) {
var3 = 0x07be;
var4 = var2;
func_1101(var4);
// Error: Could not resolve jump destination!
} else {
var temp14 = memory[0x40:0x60];
memory[temp14:temp14 + 0x20] = 0x461bcd << 0xe5;
memory[temp14 + 0x04:temp14 + 0x04 + 0x20] = 0x20;
memory[temp14 + 0x24:temp14 + 0x24 + 0x20] = 0x26;
memory[temp14 + 0x44:temp14 + 0x44 + 0x20] = 0x4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061;
memory[temp14 + 0x64:temp14 + 0x64 + 0x20] = 0x646472657373 << 0xd0;
var3 = temp14 + 0x84;
goto label_03F8;
}
} else if (var0 == 0xf5298aca) {
// Dispatch table entry for burn(address,uint256,uint256)
var1 = 0x01b8;
var2 = 0x037b;
var3 = msg.data.length;
var4 = 0x04;
var2, var3, var4 =
func_22DB(var3, var4);
func_037B(var2, var3, var4);
stop();
} else if (var0 == 0xf851a440) {
// Dispatch table entry for admin()
var1 = storage[0x04] & (0x01 << 0xa0) - 0x01;
var temp15 = memory[0x40:0x60];
memory[temp15:temp15 + 0x20] = var1 & (0x01 << 0xa0) - 0x01;
var1 = temp15 + 0x20;
goto label_0179;
} else { revert(memory[0x00:0x00]); }
}
function func_016A(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
if (arg0 & (0x01 << 0xa0) - 0x01) {
memory[0x00:0x20] = arg1;
memory[0x20:0x40] = 0x00;
var temp0 = keccak256(memory[0x00:0x40]);
memory[0x00:0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = temp0;
return storage[keccak256(memory[0x00:0x40])];
} else {
var temp1 = memory[0x40:0x60];
memory[temp1:temp1 + 0x20] = 0x461bcd << 0xe5;
memory[temp1 + 0x04:temp1 + 0x04 + 0x20] = 0x20;
memory[temp1 + 0x24:temp1 + 0x24 + 0x20] = 0x2a;
memory[temp1 + 0x44:temp1 + 0x44 + 0x20] = 0x455243313135353a2061646472657373207a65726f206973206e6f7420612076;
memory[temp1 + 0x64:temp1 + 0x64 + 0x20] = 0x30b634b21037bbb732b9 << 0xb1;
var var1 = temp1 + 0x84;
var temp2 = memory[0x40:0x60];
revert(memory[temp2:temp2 + var1 - temp2]);
}
}
function func_0190(var arg0) returns (var r0) {
var var0 = 0x00;
var var1 = arg0 & ~((0x01 << 0xe0) - 0x01) == 0x6cdb3d13 << 0xe1;
if (!var1) {
var1 = arg0 & ~((0x01 << 0xe0) - 0x01) == 0x03a24d07 << 0xe2;
if (var1) { goto label_0424; }
else { goto label_0461; }
} else if (var1) {
label_0424:
return var1;
} else {
label_0461:
var1 = arg0 & ~((0x01 << 0xe0) - 0x01) == 0x01ffc9a7 << 0xe0;
goto label_0424;
}
}
function func_01B3(var arg0, var arg1, var arg2, var arg3) {
var var0 = 0x0482;
func_0B80();
var0 = 0x00;
if (var0 >= arg1) {
label_0512:
return;
} else {
var var1 = 0x0500;
var var2 = arg0;
var var3 = arg1;
var var4 = var0;
if (var4 < var3) {
var temp0 = var4 * 0x20 + var2;
var temp1 = temp0 + 0x20;
var2 = 0x04b7;
var3 = temp1;
var4 = temp0;
var2 =
func_208F(var3, var4);
var3 = arg2;
var4 = var0;
if (var4 < memory[var3:var3 + 0x20]) {
var3 = memory[var4 * 0x20 + 0x20 + var3:var4 * 0x20 + 0x20 + var3 + 0x20];
var4 = arg3;
var var5 = var0;
if (var5 < memory[var4:var4 + 0x20]) {
var4 = memory[var5 * 0x20 + 0x20 + var4:var5 * 0x20 + 0x20 + var4 + 0x20];
var temp2 = memory[0x40:0x60];
var5 = temp2;
memory[0x40:0x60] = var5 + 0x20;
memory[var5:var5 + 0x20] = 0x00;
if (!(var2 & (0x01 << 0xa0) - 0x01)) {
var temp9 = memory[0x40:0x60];
memory[temp9:temp9 + 0x20] = 0x461bcd << 0xe5;
memory[temp9 + 0x04:temp9 + 0x04 + 0x20] = 0x20;
memory[temp9 + 0x24:temp9 + 0x24 + 0x20] = 0x21;
memory[temp9 + 0x44:temp9 + 0x44 + 0x20] = 0x455243313135353a206d696e7420746f20746865207a65726f20616464726573;
memory[temp9 + 0x64:temp9 + 0x64 + 0x20] = 0x73 << 0xf8;
var6 = temp9 + 0x84;
goto label_03F8;
} else if (memory[var3:var3 + 0x20] == memory[var4:var4 + 0x20]) {
var var6 = msg.sender;
var var7 = 0x00;
if (var7 >= memory[var3:var3 + 0x20]) {
label_0D0C:
var7 = var2 & (0x01 << 0xa0) - 0x01;
var var8 = (0x01 << 0xa0) - 0x01 & 0x00;
var var9 = var6 & (0x01 << 0xa0) - 0x01;
var var10 = 0x4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb;
var var11 = 0x0d5d;
var var12 = var3;
var var13 = var4;
var var14 = memory[0x40:0x60];
var11 =
func_2453(var12, var13, var14);
var temp3 = memory[0x40:0x60];
log(memory[temp3:temp3 + var11 - temp3], [stack[-2], stack[-3], stack[-4], stack[-5]]);
var7 = 0x0512;
var8 = var6;
var9 = 0x00;
var10 = var2;
var11 = var3;
var12 = var4;
var13 = var5;
func_153D(var8, var9, var10, var11, var12, var13);
goto label_0512;
} else {
label_0C7E:
var8 = var4;
var9 = var7;
if (var9 < memory[var8:var8 + 0x20]) {
var8 = memory[var9 * 0x20 + 0x20 + var8:var9 * 0x20 + 0x20 + var8 + 0x20];
var9 = 0x00;
var10 = var9;
var11 = var3;
var12 = var7;
if (var12 < memory[var11:var11 + 0x20]) {
var temp4 = var10;
memory[temp4:temp4 + 0x20] = memory[var12 * 0x20 + 0x20 + var11:var12 * 0x20 + 0x20 + var11 + 0x20];
var temp5 = temp4 + 0x20;
memory[temp5:temp5 + 0x20] = var9;
var temp6 = keccak256(memory[0x00:0x00 + temp5 + 0x20]);
memory[0x00:0x20] = var2 & (0x01 << 0xa0) - 0x01 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = temp6;
var9 = keccak256(memory[0x00:0x40]);
var10 = 0x00;
var11 = 0x0cf4;
var13 = storage[var9];
var12 = var8;
var11 =
func_2440(var12, var13);
storage[var9] = var11;
var8 = var7;
var9 = 0x0d04;
var10 = var8;
var9 =
func_233A(var10);
var7 = var9;
if (var7 >= memory[var3:var3 + 0x20]) { goto label_0D0C; }
else { goto label_0C7E; }
} else {
var13 = 0x0cac;
label_230E:
memory[0x00:0x20] = 0x4e487b71 << 0xe0;
memory[0x04:0x24] = 0x32;
revert(memory[0x00:0x24]);
}
} else {
var10 = 0x0c8f;
goto label_230E;
}
}
} else {
var temp7 = memory[0x40:0x60];
memory[temp7:temp7 + 0x20] = 0x461bcd << 0xe5;
var7 = temp7 + 0x04;
var6 = 0x03f8;
var6 =
func_23F8(var7);
label_03F8:
var temp8 = memory[0x40:0x60];
revert(memory[temp8:temp8 + var6 - temp8]);
}
} else {
var6 = 0x04e3;
goto label_230E;
}
} else {
var5 = 0x04c9;
goto label_230E;
}
} else {
var5 = 0x04a2;
goto label_230E;
}
}
}
function func_01C8(var arg0) returns (var r0) {
var var0 = 0x60;
var var1 = 0x02;
var var2 = 0x0528;
var var3 = storage[var1];
var2 =
func_2353(var3);
var temp0 = var2;
var temp1 = memory[0x40:0x60];
memory[0x40:0x60] = temp1 + (temp0 + 0x1f) / 0x20 * 0x20 + 0x20;
var temp2 = var1;
var1 = temp1;
var2 = temp2;
var3 = temp0;
memory[var1:var1 + 0x20] = var3;
var var4 = var1 + 0x20;
var var5 = var2;
var var7 = storage[var5];
var var6 = 0x0554;
var6 =
func_2353(var7);
if (!var6) {
label_05A1:
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_0598; }
label_0584:
var temp6 = var5;
var temp7 = var6;
memory[temp7:temp7 + 0x20] = storage[temp6];
var5 = temp6 + 0x01;
var6 = temp7 + 0x20;
if (var4 > var6) { goto label_0584; }
label_0598:
var temp8 = var4;
var temp9 = temp8 + (var6 - temp8 & 0x1f);
var6 = temp8;
var4 = temp9;
goto label_05A1;
} else {
var temp10 = var4;
memory[temp10:temp10 + 0x20] = storage[var5] / 0x0100 * 0x0100;
var6 = var6;
var4 = temp10 + 0x20;
goto label_05A1;
}
}
function func_01E8(var arg0) returns (var r0) {
var var0 = 0x00;
var var1 = var0;
var var2 = var1;
if (var2 >= storage[0x05]) {
label_05FB:
return var1;
} else {
label_05BD:
var var3 = arg0;
var var4 = 0x05;
var var5 = var2;
if (var5 < storage[var4]) {
memory[0x00:0x20] = var4;
if (storage[keccak256(memory[0x00:0x20]) + var5] - var3) {
var3 = var2;
var4 = 0x05f3;
var5 = var3;
var4 =
func_233A(var5);
var2 = var4;
if (var2 >= storage[0x05]) { goto label_05FB; }
else { goto label_05BD; }
} else {
var1 = 0x01;
goto label_05FB;
}
} else {
var var6 = 0x05d0;
memory[0x00:0x20] = 0x4e487b71 << 0xe0;
memory[0x04:0x24] = 0x32;
revert(memory[0x00:0x24]);
}
}
}
function func_01FB(var arg0) {
var var0 = 0x060a;
func_0B80();
var temp0 = storage[0x05];
storage[0x05] = temp0 + 0x01;
memory[0x00:0x20] = 0x05;
storage[temp0 + 0x036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0] = arg0;
}
function func_0221(var arg0, var arg1) returns (var r0) {
var var0 = 0x60;
if (memory[arg0:arg0 + 0x20] == memory[arg1:arg1 + 0x20]) {
var var1 = 0x00;
var var2 = memory[arg0:arg0 + 0x20];
if (var2 <= (0x01 << 0x40) - 0x01) {
var temp0 = memory[0x40:0x60];
var temp1 = var2;
var2 = temp0;
var var3 = temp1;
memory[var2:var2 + 0x20] = var3;
memory[0x40:0x60] = var2 + var3 * 0x20 + 0x20;
if (!var3) {
var1 = var2;
var2 = 0x00;
if (var2 >= memory[arg0:arg0 + 0x20]) {
label_07A5:
return var1;
} else {
label_073D:
var3 = 0x0778;
var var4 = arg0;
var var5 = var2;
if (var5 < memory[var4:var4 + 0x20]) {
var3 =
func_0751(arg1, var2, var4, var5);
var4 = var1;
var5 = var2;
if (var5 < memory[var4:var4 + 0x20]) {
memory[var5 * 0x20 + var4 + 0x20:var5 * 0x20 + var4 + 0x20 + 0x20] = var3;
var3 = 0x079e;
var4 = var2;
var3 =
func_233A(var4);
var2 = var3;
if (var2 >= memory[arg0:arg0 + 0x20]) { goto label_07A5; }
else { goto label_073D; }
} else {
var var6 = 0x078a;
label_230E:
memory[0x00:0x20] = 0x4e487b71 << 0xe0;
memory[0x04:0x24] = 0x32;
revert(memory[0x00:0x24]);
}
} else {
var6 = 0x0751;
goto label_230E;
}
}
} else {
var temp2 = var3 * 0x20;
memory[var2 + 0x20:var2 + 0x20 + temp2] = msg.data[msg.data.length:msg.data.length + temp2];
var1 = var2;
var2 = 0x00;
if (var2 >= memory[arg0:arg0 + 0x20]) { goto label_07A5; }
else { goto label_073D; }
}
} else {
var3 = 0x0704;
memory[0x00:0x20] = 0x4e487b71 << 0xe0;
memory[0x04:0x24] = 0x41;
revert(memory[0x00:0x24]);
}
} else {
var temp3 = memory[0x40:0x60];
memory[temp3:temp3 + 0x20] = 0x461bcd << 0xe5;
memory[temp3 + 0x04:temp3 + 0x04 + 0x20] = 0x20;
memory[temp3 + 0x24:temp3 + 0x24 + 0x20] = 0x29;
memory[temp3 + 0x44:temp3 + 0x44 + 0x20] = 0x455243313135353a206163636f756e747320616e6420696473206c656e677468;
memory[temp3 + 0x64:temp3 + 0x64 + 0x20] = 0x040dad2e6dac2e8c6d << 0xbb;
var1 = temp3 + 0x84;
var temp4 = memory[0x40:0x60];
revert(memory[temp4:temp4 + var1 - temp4]);
}
}
function func_026F(var arg0) {
var var0 = 0x0825;
func_10A7();
storage[0x04] = (arg0 & (0x01 << 0xa0) - 0x01) | (storage[0x04] & ~((0x01 << 0xa0) - 0x01));
}
function func_02A7(var arg0) returns (var arg0) {
var var0 = 0x05;
var var1 = arg0;
if (var1 >= storage[var0]) { revert(memory[0x00:0x00]); }
memory[0x00:0x20] = var0;
return storage[keccak256(memory[0x00:0x20]) + var1];
}
function func_02E0(var arg0, var arg1) {
var var0 = 0x0915;
var var1 = msg.sender;
var var2 = arg0;
var var3 = arg1;
func_116F(var1, var2, var3);
}
function func_0319(var arg0, var arg1) returns (var r0) {
var temp0 = (0x01 << 0xa0) - 0x01;
memory[0x00:0x20] = temp0 & arg0;
memory[0x20:0x40] = 0x01;
var temp1 = keccak256(memory[0x00:0x40]);
memory[0x00:0x20] = temp0 & arg1;
memory[0x20:0x40] = temp1;
return storage[keccak256(memory[0x00:0x40])] & 0xff;
}
function func_037B(var arg0, var arg1, var arg2) {
var var0 = msg.sender == arg0 & (0x01 << 0xa0) - 0x01;
if (var0) {
label_0B59:
if (var0) {
var0 = 0x0804;
var var1 = arg0;
var var2 = arg1;
var var3 = arg2;
func_1434(var1, var2, var3);
return;
} else {
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x461bcd << 0xe5;
var0 = 0x03f8;
var1 = temp0 + 0x04;
var0 =
func_238D(var1);
var temp1 = memory[0x40:0x60];
revert(memory[temp1:temp1 + var0 - temp1]);
}
} else {
var0 = 0x0b59;
var1 = arg0;
var2 = msg.sender;
var0 =
func_0319(var1, var2);
goto label_0B59;
}
}
function func_0751(var arg0, var arg1, var arg2, var arg3) returns (var r0) {
arg2 = memory[arg3 * 0x20 + 0x20 + arg2:arg3 * 0x20 + 0x20 + arg2 + 0x20];
arg3 = arg0;
var var0 = arg1;
if (var0 < memory[arg3:arg3 + 0x20]) {
arg3 = memory[var0 * 0x20 + 0x20 + arg3:var0 * 0x20 + 0x20 + arg3 + 0x20];
var0 = 0x00;
if (arg2 & (0x01 << 0xa0) - 0x01) {
memory[0x00:0x20] = arg3;
memory[0x20:0x40] = 0x00;
var temp0 = keccak256(memory[0x00:0x40]);
memory[0x00:0x20] = arg2 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = temp0;
return storage[keccak256(memory[0x00:0x40])];
} else {
var temp1 = memory[0x40:0x60];
memory[temp1:temp1 + 0x20] = 0x461bcd << 0xe5;
memory[temp1 + 0x04:temp1 + 0x04 + 0x20] = 0x20;
memory[temp1 + 0x24:temp1 + 0x24 + 0x20] = 0x2a;
memory[temp1 + 0x44:temp1 + 0x44 + 0x20] = 0x455243313135353a2061646472657373207a65726f206973206e6f7420612076;
memory[temp1 + 0x64:temp1 + 0x64 + 0x20] = 0x30b634b21037bbb732b9 << 0xb1;
var var1 = temp1 + 0x84;
var temp2 = memory[0x40:0x60];
revert(memory[temp2:temp2 + var1 - temp2]);
}
} else {
var1 = 0x076b;
memory[0x00:0x20] = 0x4e487b71 << 0xe0;
memory[0x04:0x24] = 0x32;
revert(memory[0x00:0x24]);
}
}
function func_0B80() {
var var0 = msg.sender == storage[0x03] & (0x01 << 0xa0) - 0x01;
if (var0) {
if (var0) {
label_081B:
return;
} else {
label_0BA8:
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x461bcd << 0xe5;
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = 0x20;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = 0x20;
memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = 0x43616c6c6572206973206e6f7420746865206f776e6572206f722061646d696e;
var0 = temp0 + 0x64;
var temp1 = memory[0x40:0x60];
revert(memory[temp1:temp1 + var0 - temp1]);
}
} else if (msg.sender == storage[0x04] & (0x01 << 0xa0) - 0x01) { goto label_081B; }
else { goto label_0BA8; }
}
function func_0F1C(var arg0, var arg1, var arg2) {
if (!(arg0 & (0x01 << 0xa0) - 0x01)) {
var temp9 = memory[0x40:0x60];
memory[temp9:temp9 + 0x20] = 0x461bcd << 0xe5;
var1 = temp9 + 0x04;
var0 = 0x03f8;
var0 =
func_2615(var1);
goto label_03F8;
} else if (memory[arg1:arg1 + 0x20] == memory[arg2:arg2 + 0x20]) {
var temp0 = memory[0x40:0x60];
memory[0x40:0x60] = temp0 + 0x20;
memory[temp0:temp0 + 0x20] = 0x00;
var var0 = msg.sender;
var var1 = 0x00;
if (var1 >= memory[arg1:arg1 + 0x20]) {
label_1039:
var1 = (0x01 << 0xa0) - 0x01 & 0x00;
var var2 = arg0 & (0x01 << 0xa0) - 0x01;
var var3 = var0 & (0x01 << 0xa0) - 0x01;
var var4 = 0x4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb;
var var5 = 0x108a;
var var6 = arg1;
var var7 = arg2;
var var8 = memory[0x40:0x60];
var5 =
func_2453(var6, var7, var8);
var temp1 = memory[0x40:0x60];
log(memory[temp1:temp1 + var5 - temp1], [stack[-2], stack[-3], stack[-4], stack[-5]]);
var temp2 = memory[0x40:0x60];
memory[0x40:0x60] = temp2 + 0x20;
memory[temp2:temp2 + 0x20] = 0x00;
return;
} else {
label_0F81:
var2 = 0x00;
var3 = arg1;
var4 = var1;
if (var4 < memory[var3:var3 + 0x20]) {
var2 = memory[var4 * 0x20 + 0x20 + var3:var4 * 0x20 + 0x20 + var3 + 0x20];
var3 = 0x00;
var4 = arg2;
var5 = var1;
if (var5 < memory[var4:var4 + 0x20]) {
var temp3 = memory[var5 * 0x20 + var4 + 0x20:var5 * 0x20 + var4 + 0x20 + 0x20];
memory[0x00:0x20] = var2;
memory[0x20:0x40] = 0x00;
var temp4 = keccak256(memory[0x00:0x40]);
memory[0x00:0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = temp4;
var4 = storage[keccak256(memory[0x00:0x40])];
var3 = temp3;
if (var4 >= var3) {
memory[0x00:0x20] = var2;
memory[0x20:0x40] = 0x00;
var temp5 = keccak256(memory[0x00:0x40]);
memory[0x00:0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = temp5;
storage[keccak256(memory[0x00:0x40])] = var4 - var3;
var2 = var1;
var3 = 0x1031;
var4 = var2;
var3 =
func_233A(var4);
var1 = var3;
if (var1 >= memory[arg1:arg1 + 0x20]) { goto label_1039; }
else { goto label_0F81; }
} else {
var temp6 = memory[0x40:0x60];
memory[temp6:temp6 + 0x20] = 0x461bcd << 0xe5;
var5 = 0x03f8;
var6 = temp6 + 0x04;
var5 =
func_2658(var6);
label_03F8:
var temp7 = memory[0x40:0x60];
revert(memory[temp7:temp7 + var5 - temp7]);
}
} else {
var6 = 0x0fb2;
label_230E:
memory[0x00:0x20] = 0x4e487b71 << 0xe0;
memory[0x04:0x24] = 0x32;
revert(memory[0x00:0x24]);
}
} else {
var5 = 0x0f94;
goto label_230E;
}
}
} else {
var temp8 = memory[0x40:0x60];
memory[temp8:temp8 + 0x20] = 0x461bcd << 0xe5;
var1 = temp8 + 0x04;
var0 = 0x03f8;
var0 =
func_23F8(var1);
goto label_03F8;
}
}
function func_10A7() {
if (msg.sender == storage[0x03] & (0x01 << 0xa0) - 0x01) { return; }
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x461bcd << 0xe5;
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = 0x20;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = 0x20;
memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572;
var var0 = temp0 + 0x64;
var temp1 = memory[0x40:0x60];
revert(memory[temp1:temp1 + var0 - temp1]);
}
function func_1101(var arg0) {
var temp0 = storage[0x03];
var temp1 = (0x01 << 0xa0) - 0x01;
var temp2 = temp1 & arg0;
storage[0x03] = temp2 | (temp0 & ~((0x01 << 0xa0) - 0x01));
log(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00], [0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0, storage[0x03] & (0x01 << 0xa0) - 0x01, stack[-1] & (0x01 << 0xa0) - 0x01]);
}
function func_116F(var arg0, var arg1, var arg2) {
if ((arg0 & (0x01 << 0xa0) - 0x01) - (arg1 & (0x01 << 0xa0) - 0x01)) {
var temp0 = (0x01 << 0xa0) - 0x01;
var temp1 = temp0 & arg0;
memory[0x00:0x20] = temp1;
memory[0x20:0x40] = 0x01;
var temp2 = keccak256(memory[0x00:0x40]);
var temp3 = arg1 & temp0;
memory[0x00:0x20] = temp3;
memory[0x20:0x40] = temp2;
var temp4 = keccak256(memory[0x00:0x40]);
var temp5 = !!arg2;
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 + 0x20) - temp7], [0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31, stack[-3] & (0x01 << 0xa0) - 0x01, 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] = 0x29;
memory[temp8 + 0x44:temp8 + 0x44 + 0x20] = 0x455243313135353a2073657474696e6720617070726f76616c20737461747573;
memory[temp8 + 0x64:temp8 + 0x64 + 0x20] = 0x103337b91039b2b633 << 0xb9;
var var0 = temp8 + 0x84;
var temp9 = memory[0x40:0x60];
revert(memory[temp9:temp9 + var0 - temp9]);
}
}
function func_1434(var arg0, var arg1, var arg2) {
if (arg0 & (0x01 << 0xa0) - 0x01) {
var var0 = msg.sender;
var var1 = 0x00;
var var2 = 0x1466;
var var3 = arg1;
var2 =
func_1893(var3);
var1 = var2;
var2 = 0x00;
var3 = 0x1473;
var var4 = arg2;
var3 =
func_1893(var4);
var temp0 = memory[0x40:0x60];
memory[0x40:0x60] = temp0 + 0x20;
memory[temp0:temp0 + 0x20] = 0x00;
memory[0x00:0x20] = arg1;
memory[0x20:0x40] = 0x00;
var temp1 = keccak256(memory[0x00:0x40]);
memory[0x00:0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = temp1;
var temp2 = var3;
var3 = storage[keccak256(memory[0x00:0x40])];
var2 = temp2;
if (var3 >= arg2) {
var temp3 = arg1;
memory[0x00:0x20] = temp3;
memory[0x20:0x40] = 0x00;
var temp4 = keccak256(memory[0x00:0x40]);
var temp5 = (0x01 << 0xa0) - 0x01;
var temp6 = temp5 & arg0;
memory[0x00:0x20] = temp6;
memory[0x20:0x40] = temp4;
var temp7 = arg2;
storage[keccak256(memory[0x00:0x40])] = var3 - temp7;
var temp8 = memory[0x40:0x60];
memory[temp8:temp8 + 0x20] = temp3;
memory[temp8 + 0x20:temp8 + 0x20 + 0x20] = temp7;
var temp9 = memory[0x40:0x60];
log(memory[temp9:temp9 + (temp8 + 0x40) - temp9], [0xc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62, stack[-4] & (0x01 << 0xa0) - 0x01, stack[-7] & (0x01 << 0xa0) - 0x01, 0x00]);
var temp10 = memory[0x40:0x60];
memory[0x40:0x60] = temp10 + 0x20;
memory[temp10:temp10 + 0x20] = 0x00;
return;
} else {
var temp11 = memory[0x40:0x60];
memory[temp11:temp11 + 0x20] = 0x461bcd << 0xe5;
var var5 = temp11 + 0x04;
var4 = 0x03f8;
var4 =
func_2658(var5);
label_03F8:
var temp12 = memory[0x40:0x60];
revert(memory[temp12:temp12 + var4 - temp12]);
}
} else {
var temp13 = memory[0x40:0x60];
memory[temp13:temp13 + 0x20] = 0x461bcd << 0xe5;
var1 = temp13 + 0x04;
var0 = 0x03f8;
var0 =
func_2615(var1);
goto label_03F8;
}
}
function func_153D(var arg0, var arg1, var arg2, var arg3, var arg4, var arg5) {
if (!address(arg2 & (0x01 << 0xa0) - 0x01).code.length) { return; }
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0xbc197c81 << 0xe0;
var var0 = arg2 & (0x01 << 0xa0) - 0x01;
var var1 = 0xbc197c81;
var var2 = 0x1581;
var var3 = arg0;
var var4 = arg1;
var var5 = arg3;
var var6 = arg4;
var var7 = arg5;
var var8 = temp0 + 0x04;
var2 =
func_269C(var3, var4, var5, var6, var7, var8);
var temp1 = memory[0x40:0x60];
var temp2;
temp2, memory[temp1:temp1 + 0x20] = address(var0).call.gas(msg.gas)(memory[temp1:temp1 + var2 - temp1]);
if (temp2) {
var temp9 = memory[0x40:0x60];
var temp10 = returndata.length;
memory[0x40:0x60] = temp9 + (temp10 + 0x1f & ~0x1f);
var0 = 0x15b9;
var2 = temp9;
var1 = var2 + temp10;
var3 = 0x00;
if (var1 - var2 i< 0x20) { revert(memory[0x00:0x00]); }
var4 = memory[var2:var2 + 0x20];
var5 = 0x1303;
var6 = var4;
func_1ACC(var6);
goto label_1303;
} else if (!var0) {
var0 = 0x15c8;
var0 =
func_2717();
if (0x08c379a0 - var0) {
var temp5 = memory[0x40:0x60];
memory[temp5:temp5 + 0x20] = 0x461bcd << 0xe5;
memory[temp5 + 0x04:temp5 + 0x04 + 0x20] = 0x20;
memory[temp5 + 0x24:temp5 + 0x24 + 0x20] = 0x34;
memory[temp5 + 0x44:temp5 + 0x44 + 0x20] = 0x455243313135353a207472616e7366657220746f206e6f6e2045524331313535;
memory[temp5 + 0x64:temp5 + 0x64 + 0x20] = 0x2932b1b2b4bb32b91034b6b83632b6b2b73a32b9 << 0x61;
var0 = temp5 + 0x84;
goto label_03F8;
} else {
var0 = 0x15dc;
var0 =
func_2733();
label_15DC:
if (var0) {
var temp6 = memory[0x40:0x60];
memory[temp6:temp6 + 0x20] = 0x461bcd << 0xe5;
var1 = 0x03f8;
var2 = var0;
var3 = temp6 + 0x04;
var temp7 = var3;
memory[temp7:temp7 + 0x20] = 0x20;
var4 = 0x00;
var5 = 0x1303;
var6 = temp7 + 0x20;
var7 = var2;
var5 =
func_1D57(var6, var7);
label_1303:
var1 = var5;
// Error: Could not resolve jump destination!
} 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] = 0x34;
memory[temp8 + 0x44:temp8 + 0x44 + 0x20] = 0x455243313135353a207472616e7366657220746f206e6f6e2045524331313535;
memory[temp8 + 0x64:temp8 + 0x64 + 0x20] = 0x2932b1b2b4bb32b91034b6b83632b6b2b73a32b9 << 0x61;
var0 = temp8 + 0x84;
goto label_03F8;
}
}
} else if (arg5 & ~((0x01 << 0xe0) - 0x01) == 0xbc197c81 << 0xe0) {
// Error: StackRead before write???
var var-8;
// Error: Could not resolve jump destination!
} else {
var temp3 = memory[0x40:0x60];
memory[temp3:temp3 + 0x20] = 0x461bcd << 0xe5;
var1 = temp3 + 0x04;
var0 = 0x03f8;
var0 =
func_27BC(var1);
label_03F8:
var temp4 = memory[0x40:0x60];
revert(memory[temp4:temp4 + var0 - temp4]);
}
}
function func_1893(var arg0) returns (var r0) {
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x01;
memory[0x40:0x60] = temp0 + 0x40;
var var0 = 0x60;
memory[temp0 + 0x20:temp0 + 0x20 + 0x20] = msg.data[msg.data.length:msg.data.length + 0x20];
var var1 = temp0;
var var2 = arg0;
var var3 = var1;
var var4 = 0x00;
if (var4 < memory[var3:var3 + 0x20]) {
memory[var4 * 0x20 + var3 + 0x20:var4 * 0x20 + var3 + 0x20 + 0x20] = var2;
return var1;
} else {
var var5 = 0x18cd;
memory[0x00:0x20] = 0x4e487b71 << 0xe0;
memory[0x04:0x24] = 0x32;
revert(memory[0x00:0x24]);
}
}
function func_1A86(var arg0) returns (var r0) {
var temp0 = msg.data[arg0:arg0 + 0x20];
var var0 = temp0;
if (var0 == var0 & (0x01 << 0xa0) - 0x01) { return var0; }
else { revert(memory[0x00:0x00]); }
}
function func_1AA2(var arg0, var arg1) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = var0;
if (arg0 - arg1 i< 0x40) { revert(memory[0x00:0x00]); }
var var2 = 0x1abe;
var var3 = arg1;
var2 =
func_1A86(var3);
r0 = var2;
arg0 = msg.data[arg1 + 0x20:arg1 + 0x20 + 0x20];
return r0, arg0;
}
function func_1ACC(var arg0) {
var temp0 = arg0;
if (temp0 == temp0 & ~((0x01 << 0xe0) - 0x01)) { return; }
else { revert(memory[0x00:0x00]); }
}
function func_1AE2(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
if (arg0 - arg1 i< 0x20) { revert(memory[0x00:0x00]); }
var var1 = msg.data[arg1:arg1 + 0x20];
var var2 = 0x1303;
var var3 = var1;
func_1ACC(var3);
return var1;
}
function func_1B15(var arg0, var arg1) {
var temp0 = arg1;
var temp1 = temp0 + (arg0 + 0x1f & ~0x1f);
var var0 = temp1;
if (!((var0 < temp0) | (var0 > (0x01 << 0x40) - 0x01))) {
memory[0x40:0x60] = var0;
return;
} else {
var var1 = 0x1b3a;
memory[0x00:0x20] = 0x4e487b71 << 0xe0;
memory[0x04:0x24] = 0x41;
revert(memory[0x00:0x24]);
}
}
function func_1B41(var arg0) returns (var r0) {
var var0 = 0x00;
if (arg0 <= (0x01 << 0x40) - 0x01) { return (arg0 << 0x05) + 0x20; }
var var1 = 0x1b5a;
memory[0x00:0x20] = 0x4e487b71 << 0xe0;
memory[0x04:0x24] = 0x41;
revert(memory[0x00:0x24]);
}
function func_1B64(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
if (arg1 + 0x1f i>= arg0) { revert(memory[0x00:0x00]); }
var var1 = msg.data[arg1:arg1 + 0x20];
var var2 = 0x20;
var var3 = 0x1b82;
var var4 = var1;
var3 =
func_1B41(var4);
var4 = memory[0x40:0x60];
var var5 = 0x1b8f;
var var6 = var3;
var var7 = var4;
func_1B15(var6, var7);
var temp0 = var1;
var temp1 = var4;
memory[temp1:temp1 + 0x20] = temp0;
var temp2 = var2;
var1 = temp2 + arg1 + (temp0 << 0x05);
var4 = temp1;
var3 = var4 + temp2;
if (var1 > arg0) { revert(memory[0x00:0x00]); }
var5 = arg1 + var2;
if (var5 >= var1) {
label_1BCA:
return var4;
} else {
label_1BBC:
var temp3 = var5;
var temp4 = var3;
memory[temp4:temp4 + 0x20] = msg.data[temp3:temp3 + 0x20];
var temp5 = var2;
var3 = temp5 + temp4;
var5 = temp5 + temp3;
if (var5 >= var1) { goto label_1BCA; }
else { goto label_1BBC; }
}
}
function func_1BD5(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
if (arg1 + 0x1f i>= arg0) { revert(memory[0x00:0x00]); }
var var1 = msg.data[arg1:arg1 + 0x20];
var var2 = 0x20;
var var3 = 0x1bf3;
var var4 = var1;
var3 =
func_1B41(var4);
var4 = memory[0x40:0x60];
var var5 = 0x1c00;
var var6 = var3;
var var7 = var4;
func_1B15(var6, var7);
var temp0 = var1;
var temp1 = var4;
memory[temp1:temp1 + 0x20] = temp0;
var temp2 = var2;
var1 = temp2 + arg1 + (temp0 << 0x05);
var4 = temp1;
var3 = var4 + temp2;
if (var1 > arg0) { revert(memory[0x00:0x00]); }
var5 = arg1 + var2;
if (var5 >= var1) {
label_1BCA:
return var4;
} else {
label_1C2D:
var6 = msg.data[var5:var5 + 0x20];
if (var6 <= (0x01 << 0x40) - 0x01) {
var7 = 0x1c51;
var var8 = arg0;
var var9 = arg1 + var6 + var2;
var7 =
func_1B64(var8, var9);
var temp3 = var3;
memory[temp3:temp3 + 0x20] = var7;
var temp4 = var2;
var3 = temp4 + temp3;
var5 = temp4 + var5;
if (var5 >= var1) { goto label_1BCA; }
else { goto label_1C2D; }
} else {
var7 = 0x00;
revert(memory[var7:var7 + var7]);
}
}
}
function func_1C5F(var arg0, var arg1) returns (var r0, var arg0, var arg1, var r3) {
r3 = 0x00;
var var1 = r3;
var var2 = 0x00;
var var3 = var2;
if (arg0 - arg1 i< 0x60) { revert(memory[0x00:0x00]); }
var var4 = msg.data[arg1:arg1 + 0x20];
var var5 = (0x01 << 0x40) - 0x01;
if (var4 > var5) { revert(memory[0x00:0x00]); }
var temp0 = arg1 + var4;
var4 = temp0;
if (var4 + 0x1f i>= arg0) { revert(memory[0x00:0x00]); }
var var6 = msg.data[var4:var4 + 0x20];
if (var6 > var5) { revert(memory[0x00:0x00]); }
if (var4 + (var6 << 0x05) + 0x20 > arg0) { revert(memory[0x00:0x00]); }
r3 = var4 + 0x20;
var1 = var6;
var temp1 = var5;
var4 = msg.data[arg1 + 0x20:arg1 + 0x20 + 0x20];
var5 = temp1;
if (var4 > var5) { revert(memory[0x00:0x00]); }
var6 = 0x1ceb;
var var7 = arg0;
var var8 = arg1 + var4;
var6 =
func_1BD5(var7, var8);
var2 = var6;
var4 = msg.data[arg1 + 0x40:arg1 + 0x40 + 0x20];
if (var4 > var5) { revert(memory[0x00:0x00]); }
var5 = 0x1d0e;
var6 = arg0;
var7 = arg1 + var4;
var5 =
func_1BD5(var6, var7);
var temp2 = r3;
r3 = var5;
r0 = temp2;
arg0 = var1;
arg1 = var2;
return r0, arg0, arg1, r3;
}
function func_1D1A(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
if (arg0 - arg1 i>= 0x20) { return msg.data[arg1:arg1 + 0x20]; }
else { revert(memory[0x00:0x00]); }
}
function func_1D33(var arg0, var arg1, var arg2) {
var var0 = 0x00;
if (var0 >= arg0) {
label_1D4E:
memory[arg0 + arg1:arg0 + arg1 + 0x20] = 0x00;
return;
} else {
label_1D3F:
var temp0 = var0;
memory[temp0 + arg1:temp0 + arg1 + 0x20] = memory[temp0 + arg2:temp0 + arg2 + 0x20];
var0 = temp0 + 0x20;
if (var0 >= arg0) { goto label_1D4E; }
else { goto label_1D3F; }
}
}
function func_1D57(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
var temp0 = arg1;
var temp1 = memory[temp0:temp0 + 0x20];
var var1 = temp1;
var temp2 = arg0;
memory[temp2:temp2 + 0x20] = var1;
var var2 = 0x1d6f;
var var3 = var1;
var var4 = temp2 + 0x20;
var var5 = temp0 + 0x20;
func_1D33(var3, var4, var5);
return (var1 + 0x1f & ~0x1f) + arg0 + 0x20;
}
function func_1D96(var arg0, var arg1, var arg2) returns (var r0) {
var var0 = 0x00;
if (arg1 <= (0x01 << 0x40) - 0x01) {
var var1 = memory[0x40:0x60];
var var2 = 0x1dc6;
var var3 = (arg1 + 0x1f & ~0x1f) + 0x20;
var var4 = var1;
func_1B15(var3, var4);
var0 = var1;
var temp0 = arg1;
memory[var0:var0 + 0x20] = temp0;
if (arg2 + temp0 > arg0) { revert(memory[0x00:0x00]); }
var temp1 = arg1;
var temp2 = var1;
memory[temp2 + 0x20:temp2 + 0x20 + temp1] = msg.data[arg2:arg2 + temp1];
memory[temp2 + temp1 + 0x20:temp2 + temp1 + 0x20 + 0x20] = 0x00;
return var0;
} else {
var1 = 0x1daf;
memory[0x00:0x20] = 0x4e487b71 << 0xe0;
memory[0x04:0x24] = 0x41;
revert(memory[0x00:0x24]);
}
}
function func_1EBC(var arg0, var arg1) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = var0;
if (arg0 - arg1 i< 0x40) { revert(memory[0x00:0x00]); }
var var2 = msg.data[arg1:arg1 + 0x20];
var var3 = (0x01 << 0x40) - 0x01;
if (var2 > var3) { revert(memory[0x00:0x00]); }
var temp0 = arg1 + var2;
var2 = temp0;
if (var2 + 0x1f i>= arg0) { revert(memory[0x00:0x00]); }
var var4 = msg.data[var2:var2 + 0x20];
var var5 = 0x20;
var var6 = 0x1f07;
var var7 = var4;
var6 =
func_1B41(var7);
var7 = memory[0x40:0x60];
var var8 = 0x1f14;
var var9 = var6;
var var10 = var7;
func_1B15(var9, var10);
var temp1 = var4;
var temp2 = var7;
memory[temp2:temp2 + 0x20] = temp1;
var temp3 = var5;
var4 = temp3 + var2 + (temp1 << 0x05);
var7 = temp2;
var6 = var7 + temp3;
if (var4 > arg0) { revert(memory[0x00:0x00]); }
var temp4 = var5 + var2;
var7 = var7;
var2 = temp4;
if (var2 >= var4) {
label_1F59:
var0 = var7;
var2 = msg.data[arg1 + var5:arg1 + var5 + 0x20];
if (var2 > var3) { revert(memory[0x00:0x00]); }
var3 = 0x1f7c;
var4 = arg0;
var5 = arg1 + var2;
var3 =
func_1B64(var4, var5);
arg0 = var3;
r0 = var0;
return r0, arg0;
} else {
label_1F42:
var8 = 0x1f4a;
var9 = var2;
var8 =
func_1A86(var9);
var temp5 = var6;
memory[temp5:temp5 + 0x20] = var8;
var temp6 = var5;
var2 = temp6 + var2;
var6 = temp6 + temp5;
var7 = var7;
if (var2 >= var4) { goto label_1F59; }
else { goto label_1F42; }
}
}
function func_1F86(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
var temp0 = arg1;
var temp1 = memory[temp0:temp0 + 0x20];
var var1 = temp1;
var temp2 = arg0;
memory[temp2:temp2 + 0x20] = var1;
var var2 = 0x20;
arg0 = temp2 + var2;
var var3 = temp0 + var2;
var var4 = 0x00;
if (var4 >= var1) {
label_1FB6:
return arg0;
} else {
label_1FA3:
var temp3 = var3;
var temp4 = arg0;
memory[temp4:temp4 + 0x20] = memory[temp3:temp3 + 0x20];
var temp5 = var2;
arg0 = temp5 + temp4;
var3 = temp5 + temp3;
var4 = var4 + 0x01;
if (var4 >= var1) { goto label_1FB6; }
else { goto label_1FA3; }
}
}
function func_1FD4(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
if (arg0 - arg1 i< 0x20) { revert(memory[0x00:0x00]); }
var var1 = msg.data[arg1:arg1 + 0x20];
if (var1 > (0x01 << 0x40) - 0x01) { revert(memory[0x00:0x00]); }
var temp0 = arg1 + var1;
var1 = temp0;
if (arg0 i<= var1 + 0x1f) { revert(memory[0x00:0x00]); }
var var2 = 0x08c2;
var var3 = arg0;
var temp1 = var1;
var var4 = msg.data[temp1:temp1 + 0x20];
var var5 = temp1 + 0x20;
return
func_1D96(var3, var4, var5);
}
function func_201C(var arg0, var arg1) returns (var r0, var arg0, var arg1) {
var var0 = 0x00;
var var1 = var0;
var var2 = 0x00;
if (arg0 - arg1 i< 0x60) { revert(memory[0x00:0x00]); }
var var3 = 0x203a;
var var4 = arg1;
var3 =
func_1A86(var4);
var0 = var3;
var3 = msg.data[arg1 + 0x20:arg1 + 0x20 + 0x20];
var4 = (0x01 << 0x40) - 0x01;
if (var3 > var4) { revert(memory[0x00:0x00]); }
var var5 = 0x2062;
var var6 = arg0;
var var7 = arg1 + var3;
var5 =
func_1B64(var6, var7);
var1 = var5;
var3 = msg.data[arg1 + 0x40:arg1 + 0x40 + 0x20];
if (var3 > var4) { revert(memory[0x00:0x00]); }
var4 = 0x2085;
var5 = arg0;
var6 = arg1 + var3;
var4 =
func_1B64(var5, var6);
arg1 = var4;
arg0 = var1;
r0 = var0;
return r0, arg0, arg1;
}
function func_208F(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
if (arg0 - arg1 i< 0x20) { revert(memory[0x00:0x00]); }
var var1 = 0x1303;
var var2 = arg1;
return
func_1A86(var2);
}
function func_212A(var arg0, var arg1) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = var0;
if (arg0 - arg1 i< 0x40) { revert(memory[0x00:0x00]); }
var var2 = 0x2146;
var var3 = arg1;
var2 =
func_1A86(var3);
var0 = var2;
var temp0 = msg.data[arg1 + 0x20:arg1 + 0x20 + 0x20];
var2 = temp0;
if (var2 != !!var2) { revert(memory[0x00:0x00]); }
arg0 = var2;
r0 = var0;
return r0, arg0;
}
function func_2244(var arg0, var arg1) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = var0;
if (arg0 - arg1 i< 0x40) { revert(memory[0x00:0x00]); }
var var2 = 0x2260;
var var3 = arg1;
var2 =
func_1A86(var3);
var0 = var2;
var2 = 0x226e;
var3 = arg1 + 0x20;
var2 =
func_1A86(var3);
arg0 = var2;
r0 = var0;
return r0, arg0;
}
function func_22DB(var arg0, var arg1) returns (var r0, var arg0, var arg1) {
var var0 = 0x00;
var var1 = var0;
var var2 = 0x00;
if (arg0 - arg1 i< 0x60) { revert(memory[0x00:0x00]); }
var var3 = 0x22f9;
var var4 = arg1;
var3 =
func_1A86(var4);
r0 = var3;
var temp0 = arg1;
arg0 = msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20];
arg1 = msg.data[temp0 + 0x40:temp0 + 0x40 + 0x20];
return r0, arg0, arg1;
}
function func_233A(var arg0) returns (var r0) {
var var0 = 0x00;
if (arg0 + 0x01) { return arg0 + 0x01; }
var var1 = 0x234c;
memory[0x00:0x20] = 0x4e487b71 << 0xe0;
memory[0x04:0x24] = 0x11;
revert(memory[0x00:0x24]);
}
function func_2353(var arg0) returns (var r0) {
var temp0 = arg0;
var var0 = temp0 >> 0x01;
var var1 = temp0 & 0x01;
if (!var1) {
var temp1 = var0 & 0x7f;
var0 = temp1;
if (var1 - (var0 < 0x20)) { goto label_2387; }
else { goto label_2372; }
} else if (var1 - (var0 < 0x20)) {
label_2387:
return var0;
} else {
label_2372:
memory[0x00:0x20] = 0x4e487b71 << 0xe0;
memory[0x04:0x24] = 0x22;
revert(memory[0x00:0x24]);
}
}
function func_238D(var arg0) returns (var r0) {
var temp0 = arg0;
memory[temp0:temp0 + 0x20] = 0x20;
memory[temp0 + 0x20:temp0 + 0x20 + 0x20] = 0x2f;
memory[temp0 + 0x40:temp0 + 0x40 + 0x20] = 0x455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e;
memory[temp0 + 0x60:temp0 + 0x60 + 0x20] = 0x195c881b9bdc88185c1c1c9bdd9959 << 0x8a;
return temp0 + 0x80;
}
function func_23F8(var arg0) returns (var r0) {
var temp0 = arg0;
memory[temp0:temp0 + 0x20] = 0x20;
memory[temp0 + 0x20:temp0 + 0x20 + 0x20] = 0x28;
memory[temp0 + 0x40:temp0 + 0x40 + 0x20] = 0x455243313135353a2069647320616e6420616d6f756e7473206c656e67746820;
memory[temp0 + 0x60:temp0 + 0x60 + 0x20] = 0x0dad2e6dac2e8c6d << 0xc3;
return temp0 + 0x80;
}
function func_2440(var arg0, var arg1) returns (var r0) {
var temp0 = arg1;
var var0 = arg0 + temp0;
if (temp0 <= var0) { return var0; }
var var1 = 0x0424;
memory[0x00:0x20] = 0x4e487b71 << 0xe0;
memory[0x04:0x24] = 0x11;
revert(memory[0x00:0x24]);
}
function func_2453(var arg0, var arg1, var arg2) returns (var r0) {
var temp0 = arg2;
memory[temp0:temp0 + 0x20] = 0x40;
var var0 = 0x00;
var var1 = 0x2466;
var var2 = temp0 + 0x40;
var var3 = arg0;
var1 =
func_1F86(var2, var3);
var temp1 = arg2;
memory[temp1 + 0x20:temp1 + 0x20 + 0x20] = var1 - temp1;
var2 = 0x2478;
var3 = var1;
var var4 = arg1;
return
func_1F86(var3, var4);
}
function func_2556(var arg0, var arg1) {
var var0 = memory[arg0:arg0 + 0x20];
if (var0 <= (0x01 << 0x40) - 0x01) {
var var1 = 0x2583;
var var2 = var0;
var var3 = 0x257d;
var var4 = storage[arg1];
var3 =
func_2353(var4);
func_257D(arg1, var2, var3);
var1 = 0x20;
var2 = var1;
var3 = var0 > 0x1f;
if (var3 == 0x01) {
memory[0x00:0x20] = arg1;
var var5 = keccak256(memory[0x00:0x20]);
var var6 = 0x00;
var4 = var0 & ~0x1f;
if (var6 >= var4) {
label_25E7:
if (var4 >= var0) {
storage[arg1] = (var0 << 0x01) + 0x01;
return;
} else {
var temp0 = var0;
storage[var5] = ~(~0x00 >> ((temp0 << 0x03) & 0xf8)) & memory[var1 + arg0:var1 + arg0 + 0x20];
storage[arg1] = (temp0 << 0x01) + 0x01;
return;
}
} else {
label_25D1:
var temp1 = var1;
var temp2 = var5;
storage[temp2] = memory[temp1 + arg0:temp1 + arg0 + 0x20];
var temp3 = var2;
var1 = temp3 + temp1;
var5 = temp2 + 0x01;
var6 = temp3 + var6;
if (var6 >= var4) { goto label_25E7; }
else { goto label_25D1; }
}
} else {
var4 = 0x00;
if (!var0) {
var temp4 = var0;
storage[arg1] = (temp4 << 0x01) | (~(~0x00 >> (temp4 << 0x03)) & var4);
label_0F08:
return;
} else {
var temp5 = var0;
storage[arg1] = (temp5 << 0x01) | (~(~0x00 >> (temp5 << 0x03)) & memory[var1 + arg0:var1 + arg0 + 0x20]);
goto label_0F08;
}
}
} else {
var1 = 0x256f;
memory[0x00:0x20] = 0x4e487b71 << 0xe0;
memory[0x04:0x24] = 0x41;
revert(memory[0x00:0x24]);
}
}
function func_257D(var arg0, var arg1, var arg2) {
var var0 = arg0;
if (arg2 <= 0x1f) { return; }
var var1 = 0x00;
memory[var1:var1 + 0x20] = var0;
var var2 = keccak256(memory[var1:var1 + 0x20]);
var temp0 = arg1;
var var3 = var2 + (temp0 + 0x1f >> 0x05);
if (temp0 >= 0x20) {
var temp1 = var2 + (arg2 + 0x1f >> 0x05);
var2 = temp1;
if (var3 >= var2) {
label_0F08:
return;
} else {
label_254C:
var temp2 = var3;
storage[temp2] = var1;
var3 = temp2 + 0x01;
if (var3 >= var2) { goto label_0F08; }
else { goto label_254C; }
}
} else {
var temp3 = var2;
var3 = temp3;
var2 = var3 + (arg2 + 0x1f >> 0x05);
if (var3 >= var2) { goto label_0F08; }
else { goto label_254C; }
}
}
function func_2615(var arg0) returns (var r0) {
var temp0 = arg0;
memory[temp0:temp0 + 0x20] = 0x20;
memory[temp0 + 0x20:temp0 + 0x20 + 0x20] = 0x23;
memory[temp0 + 0x40:temp0 + 0x40 + 0x20] = 0x455243313135353a206275726e2066726f6d20746865207a65726f2061646472;
memory[temp0 + 0x60:temp0 + 0x60 + 0x20] = 0x657373 << 0xe8;
return temp0 + 0x80;
}
function func_2658(var arg0) returns (var r0) {
var temp0 = arg0;
memory[temp0:temp0 + 0x20] = 0x20;
memory[temp0 + 0x20:temp0 + 0x20 + 0x20] = 0x24;
memory[temp0 + 0x40:temp0 + 0x40 + 0x20] = 0x455243313135353a206275726e20616d6f756e7420657863656564732062616c;
memory[temp0 + 0x60:temp0 + 0x60 + 0x20] = 0x616e6365 << 0xe0;
return temp0 + 0x80;
}
function func_269C(var arg0, var arg1, var arg2, var arg3, var arg4, var arg5) returns (var r0) {
var temp0 = (0x01 << 0xa0) - 0x01;
var temp1 = arg5;
memory[temp1:temp1 + 0x20] = temp0 & arg0;
memory[temp1 + 0x20:temp1 + 0x20 + 0x20] = arg1 & temp0;
memory[temp1 + 0x40:temp1 + 0x40 + 0x20] = 0xa0;
var var0 = 0x00;
var var1 = 0x26c8;
var var2 = temp1 + 0xa0;
var var3 = arg2;
var1 =
func_1F86(var2, var3);
var temp2 = arg5;
memory[temp2 + 0x60:temp2 + 0x60 + 0x20] = var1 - temp2;
var2 = 0x26da;
var3 = var1;
var var4 = arg3;
var2 =
func_1F86(var3, var4);
var temp3 = var2;
var1 = temp3;
var temp4 = arg5;
memory[temp4 + 0x80:temp4 + 0x80 + 0x20] = var1 - temp4;
var2 = 0x26ee;
var3 = var1;
var4 = arg4;
return
func_1D57(var3, var4);
}
function func_2717() returns (var r0) {
var var0 = 0x00;
if (returndata.length <= 0x03) { return var0; }
memory[0x00:0x04] = returndata[0x00:0x04];
return memory[0x00:0x20] >> 0xe0;
}
function func_2733() returns (var r0) {
var var0 = 0x00;
if (returndata.length < 0x44) { return var0; }
var temp0 = memory[0x40:0x60];
var var1 = temp0;
var var2 = ~0x03;
var temp1 = var2 + returndata.length;
memory[var1:var1 + temp1] = returndata[0x04:0x04 + temp1];
var temp2 = memory[var1:var1 + 0x20];
var var3 = temp2;
var var4 = returndata.length;
var var5 = (0x01 << 0x40) - 0x01;
if ((var3 > var5) | (var3 + 0x24 > var4)) { return var0; }
var4 = var1 + var3;
var var6 = memory[var4:var4 + 0x20];
if (var6 > var5) { return var0; }
if (var4 + var6 + 0x20 > var1 + returndata.length + var2) { return var0; }
var var7 = 0x27b1;
var var8 = var3 + var6 + 0x20;
var var9 = var1;
func_1B15(var8, var9);
return var4;
}
function func_27BC(var arg0) returns (var r0) {
var temp0 = arg0;
memory[temp0:temp0 + 0x20] = 0x20;
memory[temp0 + 0x20:temp0 + 0x20 + 0x20] = 0x28;
memory[temp0 + 0x40:temp0 + 0x40 + 0x20] = 0x455243313135353a204552433131353552656365697665722072656a65637465;
memory[temp0 + 0x60:temp0 + 0x60 + 0x20] = 0x6420746f6b656e73 << 0xc0;
return temp0 + 0x80;
}
}