contract Contract {
function main() {
memory[0x40:0x60] = 0x80;
if (msg.data.length < 0x04) {
label_0288:
var var0 = 0x0292;
var var1 = msg.sender;
var var2 = msg.value;
label_0B18:
var var3 = 0x00;
if (storage[var3] / 0x010000 & 0xff) {
var var4 = 0x00;
storage[var4] = storage[var4] & ~0xff0000;
var var5 = 0x0b76;
var5 =
accrueInterest();
label_0B76:
if (var5 == var4) {
var4 = 0x00;
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x78cb4c05 * (0x01 << 0xe1);
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = address(this);
var temp1 = (0x01 << 0xa0) - 0x01;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = temp1 & var1;
var5 = temp1 & storage[var4] / 0x01000000;
var var6 = 0xf196980a;
var var7 = temp0 + 0x44;
var var8 = 0x20;
var var9 = memory[0x40:0x60];
var var10 = temp0 - var9 + 0x44;
var var11 = var9;
var var12 = var4;
var var13 = var5;
var var14 = !address(var13).code.length;
if (var14) { revert(memory[0x00:0x00]); }
var temp2;
temp2, memory[var9:var9 + var8] = address(var13).call.gas(msg.gas).value(var12)(memory[var11:var11 + var10]);
var8 = !temp2;
if (!var8) {
var5 = memory[0x40:0x60];
var6 = returndata.length;
if (var6 < 0x20) { revert(memory[0x00:0x00]); }
var4 = memory[var5:var5 + 0x20];
if (!var4) {
var5 = 0x0c88;
var5 =
func_23F2();
if (storage[0x08] == var5) {
var5 = 0x0cd1;
var5 =
func_5311();
var6 = 0x0cd9;
var6, var7 =
func_23F6();
var temp3 = var5;
memory[temp3 + 0x40:temp3 + 0x40 + 0x20] = var7;
var8 = temp3 + 0x20;
var9 = var6;
if (var9 > 0x03) { assert(); }
if (var9 > 0x03) { assert(); }
memory[var8:var8 + 0x20] = var9;
var6 = 0x00;
var7 = memory[var5 + 0x20:var5 + 0x20 + 0x20];
if (var7 > 0x03) { assert(); }
if (var7 == var6) {
var6 = 0x0d5a;
var7 = var1;
var8 = var2;
var6 =
func_24A1(var7, var8);
var temp4 = var5;
var temp5 = var6;
memory[temp4 + 0xc0:temp4 + 0xc0 + 0x20] = temp5;
var temp6 = memory[0x40:0x60];
memory[0x40:0x60] = temp6 + 0x20;
memory[temp6:temp6 + 0x20] = memory[temp4 + 0x40:temp4 + 0x40 + 0x20];
var6 = 0x0d7b;
var7 = temp5;
var8 = temp6;
var9 = 0x00;
var10 = var9;
var11 = 0x00;
var12 = 0x253f;
var12 =
func_5357();
var13 = 0x2549;
var14 = var7;
var var15 = var8;
var13, var14 =
func_42B4(var14, var15);
var temp7 = var13;
var11 = temp7;
var12 = var14;
var13 = 0x00;
var14 = var11;
if (var14 > 0x03) { assert(); }
if (var14 == var13) {
var13 = 0x00;
var14 = 0x2578;
var15 = var12;
var14 =
func_4313(var15);
var10 = var14;
var9 = var13;
label_257F:
var7 = var10;
var6 = var9;
// Error: Could not resolve jump destination!
} else {
var9 = var11;
var10 = 0x00;
goto label_257F;
}
} else {
var temp8 = memory[0x40:0x60];
memory[temp8:temp8 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp8 + 0x04:temp8 + 0x04 + 0x20] = 0x20;
memory[temp8 + 0x24:temp8 + 0x24 + 0x20] = 0x03;
memory[temp8 + 0x44:temp8 + 0x44 + 0x20] = 0x229899 * (0x01 << 0xe9);
var temp9 = memory[0x40:0x60];
revert(memory[temp9:temp9 + temp8 - temp9 + 0x64]);
}
} else {
var temp10 = memory[0x40:0x60];
memory[temp10:temp10 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp10 + 0x04:temp10 + 0x04 + 0x20] = 0x20;
memory[temp10 + 0x24:temp10 + 0x24 + 0x20] = 0x03;
memory[temp10 + 0x44:temp10 + 0x44 + 0x20] = 0x08a627 * (0x01 << 0xeb);
var temp11 = memory[0x40:0x60];
revert(memory[temp11:temp11 + temp10 - temp11 + 0x64]);
}
} else {
var temp12 = memory[0x40:0x60];
memory[temp12:temp12 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp12 + 0x04:temp12 + 0x04 + 0x20] = 0x20;
memory[temp12 + 0x24:temp12 + 0x24 + 0x20] = 0x03;
memory[temp12 + 0x44:temp12 + 0x44 + 0x20] = 0x045313 * (0x01 << 0xec);
var temp13 = memory[0x40:0x60];
revert(memory[temp13:temp13 + temp12 - temp13 + 0x64]);
}
} else {
var temp14 = returndata.length;
memory[0x00:0x00 + temp14] = returndata[0x00:0x00 + temp14];
revert(memory[0x00:0x00 + returndata.length]);
}
} else {
var temp15 = memory[0x40:0x60];
memory[temp15:temp15 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp15 + 0x04:temp15 + 0x04 + 0x20] = 0x20;
memory[temp15 + 0x24:temp15 + 0x24 + 0x20] = 0x02;
memory[temp15 + 0x44:temp15 + 0x44 + 0x20] = 0x4535 * (0x01 << 0xf0);
var temp16 = memory[0x40:0x60];
revert(memory[temp16:temp16 + temp15 - temp16 + 0x64]);
}
} else {
var temp17 = memory[0x40:0x60];
memory[temp17:temp17 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp17 + 0x04:temp17 + 0x04 + 0x20] = 0x20;
memory[temp17 + 0x24:temp17 + 0x24 + 0x20] = 0x03;
memory[temp17 + 0x44:temp17 + 0x44 + 0x20] = 0x453637 * (0x01 << 0xe8);
var temp18 = memory[0x40:0x60];
revert(memory[temp18:temp18 + temp17 - temp18 + 0x64]);
}
} else {
var0 = msg.data[0x00:0x20] >> 0xe0;
if (0x92eefe9b > var0) {
if (0x3af9e669 > var0) {
if (0x18160ddd > var0) {
if (var0 == 0x06fdde03) {
// Dispatch table entry for
name()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x02aa;
var2 =
name();
label_02AA:
var temp19 = memory[0x40:0x60];
memory[temp19:temp19 + 0x20] = 0x20;
var temp20 = var2;
memory[temp19 + 0x20:temp19 + 0x20 + 0x20] = memory[temp20:temp20 + 0x20];
var3 = temp19;
var4 = var3;
var5 = var4 + 0x40;
var7 = memory[temp20:temp20 + 0x20];
var6 = temp20 + 0x20;
var8 = var7;
var9 = var5;
var10 = var6;
var11 = 0x00;
if (var11 >= var8) {
label_02E4:
var temp21 = var7;
var5 = temp21 + var5;
var6 = temp21 & 0x1f;
if (!var6) {
var temp22 = memory[0x40:0x60];
return memory[temp22:temp22 + var5 - temp22];
} else {
var temp23 = var6;
var temp24 = var5 - temp23;
memory[temp24:temp24 + 0x20] = ~(0x0100 ** (0x20 - temp23) - 0x01) & memory[temp24:temp24 + 0x20];
var temp25 = memory[0x40:0x60];
return memory[temp25:temp25 + (temp24 + 0x20) - temp25];
}
} else {
label_02D5:
var temp26 = var11;
memory[temp26 + var9:temp26 + var9 + 0x20] = memory[temp26 + var10:temp26 + var10 + 0x20];
var11 = temp26 + 0x20;
if (var11 >= var8) { goto label_02E4; }
else { goto label_02D5; }
}
} else if (var0 == 0x095ea7b3) {
// Dispatch table entry for
approve(address,uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0358;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x40) { revert(memory[0x00:0x00]); }
var1 =
approve(var2, var3);
label_0358:
var temp27 = memory[0x40:0x60];
memory[temp27:temp27 + 0x20] = !!var1;
var temp28 = memory[0x40:0x60];
return memory[temp28:temp28 + temp27 - temp28 + 0x20];
} else if (var0 == 0x1249c58b) {
// Dispatch table entry for mint()
var1 = 0x0374;
var2 = 0x00;
var3 = 0x11a3;
var4 = msg.sender;
var5 = msg.value;
goto label_0B18;
} else if (var0 == 0x173b9904) {
// Dispatch table entry for
reserveFactorMantissa()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 =
reserveFactorMantissa();
label_0374:
var temp29 = memory[0x40:0x60];
memory[temp29:temp29 + 0x20] = var2;
var temp30 = memory[0x40:0x60];
return memory[temp30:temp30 + temp29 - temp30 + 0x20];
} else if (var0 == 0x17bfdfbc) {
// Dispatch table entry for
borrowBalanceCurrent(address)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var1 =
borrowBalanceCurrent(var2, var3);
goto label_0374;
} else { goto label_0288; }
} else if (var0 == 0x18160ddd) {
// Dispatch table entry for
totalSupply()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 =
totalSupply();
goto label_0374;
} else if (var0 == 0x182df0f5) {
// Dispatch table entry for
exchangeRateStored()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var1 =
exchangeRateStored();
goto label_0374;
} else if (var0 == 0x23b872dd) {
// Dispatch table entry for
transferFrom(address,address,uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0358;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x60) { revert(memory[0x00:0x00]); }
var1 =
transferFrom(var2, var3);
goto label_0358;
} else if (var0 == 0x2ebf040e) {
// Dispatch table entry for 0x2ebf040e (unknown)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 = 0x00;
var3 = var2;
var4 = 0x135d;
var4 =
accrueInterest();
label_135D:
if (var4 == var3) {
var3 = 0x13a2;
var3 =
func_23F2();
if (storage[0x08] == var3) {
var3 = 0x00;
var temp31 = memory[0x40:0x60];
memory[temp31:temp31 + 0x20] = 0xf53cc4b3 * (0x01 << 0xe0);
memory[temp31 + 0x04:temp31 + 0x04 + 0x20] = address(this);
memory[temp31 + 0x24:temp31 + 0x24 + 0x20] = msg.sender;
var4 = storage[var3] / 0x01000000 & (0x01 << 0xa0) - 0x01;
var5 = 0xf53cc4b3;
var6 = temp31 + 0x44;
var7 = 0x20;
var8 = memory[0x40:0x60];
var9 = temp31 - var8 + 0x44;
var10 = var8;
var11 = var3;
var12 = var4;
var13 = !address(var12).code.length;
if (var13) { revert(memory[0x00:0x00]); }
var temp32;
temp32, memory[var8:var8 + var7] = address(var12).call.gas(msg.gas).value(var11)(memory[var10:var10 + var9]);
var7 = !temp32;
if (!var7) {
var4 = memory[0x40:0x60];
var5 = returndata.length;
if (var5 < 0x20) { revert(memory[0x00:0x00]); }
var3 = memory[var4:var4 + 0x20];
if (!var3) {
var4 = 0x12cf;
var5 = msg.sender;
var6 = ~0x00;
var4 =
func_28BD(var5, var6);
var1 = var4;
// Error: Could not resolve jump destination!
} else {
var temp33 = memory[0x40:0x60];
memory[temp33:temp33 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp33 + 0x04:temp33 + 0x04 + 0x20] = 0x20;
memory[temp33 + 0x24:temp33 + 0x24 + 0x20] = 0x03;
memory[temp33 + 0x44:temp33 + 0x44 + 0x20] = 0x453733 * (0x01 << 0xe8);
var temp34 = memory[0x40:0x60];
revert(memory[temp34:temp34 + temp33 - temp34 + 0x64]);
}
} else {
var temp35 = returndata.length;
memory[0x00:0x00 + temp35] = returndata[0x00:0x00 + temp35];
revert(memory[0x00:0x00 + returndata.length]);
}
} else {
var temp36 = memory[0x40:0x60];
memory[temp36:temp36 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp36 + 0x04:temp36 + 0x04 + 0x20] = 0x20;
memory[temp36 + 0x24:temp36 + 0x24 + 0x20] = 0x03;
memory[temp36 + 0x44:temp36 + 0x44 + 0x20] = 0x453333 * (0x01 << 0xe8);
var temp37 = memory[0x40:0x60];
revert(memory[temp37:temp37 + temp36 - temp37 + 0x64]);
}
} else {
var temp38 = memory[0x40:0x60];
memory[temp38:temp38 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp38 + 0x04:temp38 + 0x04 + 0x20] = 0x20;
memory[temp38 + 0x24:temp38 + 0x24 + 0x20] = 0x02;
memory[temp38 + 0x44:temp38 + 0x44 + 0x20] = 0x4535 * (0x01 << 0xf0);
var temp39 = memory[0x40:0x60];
revert(memory[temp39:temp39 + temp38 - temp39 + 0x64]);
}
} else if (var0 == 0x313ce567) {
// Dispatch table entry for
decimals()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0465;
var2 =
decimals();
var temp40 = memory[0x40:0x60];
memory[temp40:temp40 + 0x20] = var2 & 0xff;
var temp41 = memory[0x40:0x60];
return memory[temp41:temp41 + temp40 - temp41 + 0x20];
} else if (var0 == 0x3ac4202f) {
// Dispatch table entry for
isDToken()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0358;
var2 =
isDToken();
goto label_0358;
} else { goto label_0288; }
} else if (0x6c540baf > var0) {
if (var0 == 0x3af9e669) {
// Dispatch table entry for
balanceOfUnderlying(address)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var1 =
balanceOfUnderlying(var2, var3);
goto label_0374;
} else if (var0 == 0x3b1d21a2) {
// Dispatch table entry for
getCash()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 = 0x00;
var3 = 0x11a3;
var3 =
getCash();
label_11A3:
var2 = var3;
label_11A6:
var1 = var2;
// Error: Could not resolve jump destination!
} else if (var0 == 0x47bd3718) {
// Dispatch table entry for
totalBorrows()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 =
totalBorrows();
goto label_0374;
} else if (var0 == 0x4dc3487d) {
// Dispatch table entry for 0x4dc3487d (unknown)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var2 =
func_0510(var2, var3);
goto label_0374;
} else if (var0 == 0x4e4d9fea) {
// Dispatch table entry for repayBorrow()
var1 = 0x0528;
var2 = 0x00;
var3 = var2;
var4 = var3;
var5 = 0x1596;
var5 =
accrueInterest();
label_1596:
if (var5 == var4) {
var4 = 0x15db;
var4 =
func_23F2();
if (storage[0x08] == var4) {
var4 = 0x1624;
var5 = msg.value;
var4, var5 =
func_309A(var5);
var3 = var5;
var2 = var4;
var temp42 = var2;
var2 = var3;
var1 = temp42;
// Error: Could not resolve jump destination!
} else {
var temp43 = memory[0x40:0x60];
memory[temp43:temp43 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp43 + 0x04:temp43 + 0x04 + 0x20] = 0x20;
memory[temp43 + 0x24:temp43 + 0x24 + 0x20] = 0x02;
memory[temp43 + 0x44:temp43 + 0x44 + 0x20] = 0x4537 * (0x01 << 0xf0);
var temp44 = memory[0x40:0x60];
revert(memory[temp44:temp44 + temp43 - temp44 + 0x64]);
}
} else {
var temp45 = memory[0x40:0x60];
memory[temp45:temp45 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp45 + 0x04:temp45 + 0x04 + 0x20] = 0x20;
memory[temp45 + 0x24:temp45 + 0x24 + 0x20] = 0x02;
memory[temp45 + 0x44:temp45 + 0x44 + 0x20] = 0x4535 * (0x01 << 0xf0);
var temp46 = memory[0x40:0x60];
revert(memory[temp46:temp46 + temp45 - temp46 + 0x64]);
}
} else if (var0 == 0x601a0bf1) {
// Dispatch table entry for _reduceReserves(uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var2 = msg.data[var2:var2 + 0x20];
var3 = 0x00;
var4 = var3;
var5 = 0x1638;
var5 =
accrueInterest();
label_1638:
var4 = var5;
if (!var4) {
var5 = 0x1681;
var6 = var2;
var5 =
func_3119(var6);
var1 = var5;
// Error: Could not resolve jump destination!
} else {
var temp47 = memory[0x40:0x60];
memory[temp47:temp47 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp47 + 0x04:temp47 + 0x04 + 0x20] = 0x20;
memory[temp47 + 0x24:temp47 + 0x24 + 0x20] = 0x02;
memory[temp47 + 0x44:temp47 + 0x44 + 0x20] = 0x4535 * (0x01 << 0xf0);
var temp48 = memory[0x40:0x60];
revert(memory[temp48:temp48 + temp47 - temp48 + 0x64]);
}
} else { goto label_0288; }
} else if (var0 == 0x6c540baf) {
// Dispatch table entry for
accrualBlockNumber()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 =
accrualBlockNumber();
goto label_0374;
} else if (var0 == 0x704b6c02) {
// Dispatch table entry for
setAdmin(address)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x05b3;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
setAdmin(var2, var3);
stop();
} else if (var0 == 0x70a08231) {
// Dispatch table entry for
balanceOf(address)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var1 =
balanceOf(var2, var3);
goto label_0374;
} else if (var0 == 0x73acee98) {
// Dispatch table entry for
totalBorrowsCurrent()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var1 =
totalBorrowsCurrent();
goto label_0374;
} else if (var0 == 0x852a12e3) {
// Dispatch table entry for redeemUnderlying(uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var2 = msg.data[var2:var2 + 0x20];
var3 = 0x00;
var4 = var3;
var5 = 0x181a;
var5 =
accrueInterest();
label_181A:
if (var5 == var4) {
var4 = 0x185f;
var4 =
func_23F2();
if (storage[0x08] == var4) {
var4 = 0x18aa;
var5 = msg.sender;
var6 = var2;
var4 =
func_28BD(var5, var6);
var1 = var4;
// Error: Could not resolve jump destination!
} else {
var temp49 = memory[0x40:0x60];
memory[temp49:temp49 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp49 + 0x04:temp49 + 0x04 + 0x20] = 0x20;
memory[temp49 + 0x24:temp49 + 0x24 + 0x20] = 0x03;
memory[temp49 + 0x44:temp49 + 0x44 + 0x20] = 0x453333 * (0x01 << 0xe8);
var temp50 = memory[0x40:0x60];
revert(memory[temp50:temp50 + temp49 - temp50 + 0x64]);
}
} else {
var temp51 = memory[0x40:0x60];
memory[temp51:temp51 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp51 + 0x04:temp51 + 0x04 + 0x20] = 0x20;
memory[temp51 + 0x24:temp51 + 0x24 + 0x20] = 0x02;
memory[temp51 + 0x44:temp51 + 0x44 + 0x20] = 0x4535 * (0x01 << 0xf0);
var temp52 = memory[0x40:0x60];
revert(memory[temp52:temp52 + temp51 - temp52 + 0x64]);
}
} else if (var0 == 0x8f840ddd) {
// Dispatch table entry for
totalReserves()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 =
totalReserves();
goto label_0374;
} else { goto label_0288; }
} else if (0xc5ebeaec > var0) {
if (0xaa5af0fd > var0) {
if (var0 == 0x92eefe9b) {
// Dispatch table entry for
setController(address)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var1 =
setController(var2, var3);
goto label_0374;
} else if (var0 == 0x954f92a3) {
// Dispatch table entry for 0x954f92a3 (unknown)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var2 =
func_0692(var2, var3);
goto label_0374;
} else if (var0 == 0x95d89b41) {
// Dispatch table entry for
symbol()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x02aa;
var2 =
symbol();
goto label_02AA;
} else if (var0 == 0x95dd9193) {
// Dispatch table entry for
borrowBalanceStored(address)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var1 =
borrowBalanceStored(var2, var3);
goto label_0374;
} else if (var0 == 0xa6afed95) {
// Dispatch table entry for
accrueInterest()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var1 =
accrueInterest();
goto label_0374;
} else if (var0 == 0xa9059cbb) {
// Dispatch table entry for
transfer(address,uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0358;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x40) { revert(memory[0x00:0x00]); }
var1 =
transfer(var2, var3);
goto label_0358;
} else { goto label_0288; }
} else if (var0 == 0xaa5af0fd) {
// Dispatch table entry for
borrowIndex()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 =
borrowIndex();
goto label_0374;
} else if (var0 == 0xaae40a2a) {
// Dispatch table entry for
liquidateBorrow(address,address)
var1 = 0x05b3;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x40) { revert(memory[0x00:0x00]); }
liquidateBorrow(var2, var3);
stop();
} else if (var0 == 0xae9d70b0) {
// Dispatch table entry for
supplyRatePerBlock()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var1 =
supplyRatePerBlock();
goto label_0374;
} else if (var0 == 0xb2a02ff1) {
// Dispatch table entry for
seize(address,address,uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x60) { revert(memory[0x00:0x00]); }
var1 =
seize(var2, var3);
goto label_0374;
} else if (var0 == 0xbd6d894d) {
// Dispatch table entry for
exchangeRateCurrent()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var1 =
exchangeRateCurrent();
goto label_0374;
} else if (var0 == 0xc37f68e2) {
// Dispatch table entry for
getAccountSnapshot(address)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x081b;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var1, var2, var3, var4 =
getAccountSnapshot(var2);
var temp53 = memory[0x40:0x60];
memory[temp53:temp53 + 0x20] = var1;
memory[temp53 + 0x20:temp53 + 0x20 + 0x20] = var2;
memory[temp53 + 0x40:temp53 + 0x40 + 0x20] = var3;
memory[temp53 + 0x60:temp53 + 0x60 + 0x20] = var4;
var temp54 = memory[0x40:0x60];
return memory[temp54:temp54 + temp53 - temp54 + 0x80];
} else { goto label_0288; }
} else if (0xf3fdb15a > var0) {
if (var0 == 0xc5ebeaec) {
// Dispatch table entry for borrow(uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var2 = msg.data[var2:var2 + 0x20];
var3 = 0x00;
var4 = 0x18aa;
var5 = var2;
var6 = 0x00;
if (storage[var6] / 0x010000 & 0xff) {
var7 = 0x00;
storage[var7] = storage[var7] & ~0xff0000;
var8 = 0x3af4;
var8 =
accrueInterest();
label_3AF4:
if (var8 == var7) {
var7 = 0x1253;
var8 = msg.sender;
var9 = var5;
var7 =
func_4E3D(var8, var9);
storage[0x00] = (storage[0x00] & ~0xff0000) | 0x010000;
var4 = var7;
// Error: Could not resolve jump destination!
} else {
var temp55 = memory[0x40:0x60];
memory[temp55:temp55 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp55 + 0x04:temp55 + 0x04 + 0x20] = 0x20;
memory[temp55 + 0x24:temp55 + 0x24 + 0x20] = 0x02;
memory[temp55 + 0x44:temp55 + 0x44 + 0x20] = 0x4535 * (0x01 << 0xf0);
var temp56 = memory[0x40:0x60];
revert(memory[temp56:temp56 + temp55 - temp56 + 0x64]);
}
} else {
var temp57 = memory[0x40:0x60];
memory[temp57:temp57 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp57 + 0x04:temp57 + 0x04 + 0x20] = 0x20;
memory[temp57 + 0x24:temp57 + 0x24 + 0x20] = 0x03;
memory[temp57 + 0x44:temp57 + 0x44 + 0x20] = 0x453637 * (0x01 << 0xe8);
var temp58 = memory[0x40:0x60];
revert(memory[temp58:temp58 + temp57 - temp58 + 0x64]);
}
} else if (var0 == 0xc7b7cc13) {
// Dispatch table entry for 0xc7b7cc13 (unknown)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x05b3;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0xe0) { revert(memory[0x00:0x00]); }
var temp59 = (0x01 << 0xa0) - 0x01;
var temp60 = var2;
var2 = temp59 & msg.data[temp60:temp60 + 0x20];
var temp61 = var3;
var3 = temp59 & msg.data[temp60 + 0x20:temp60 + 0x20 + 0x20];
var4 = msg.data[temp60 + 0x40:temp60 + 0x40 + 0x20];
var5 = temp60 + temp61;
var6 = temp60;
var7 = var6 + 0x80;
var8 = msg.data[var6 + 0x60:var6 + 0x60 + 0x20];
if (var8 > 0x0100000000) { revert(memory[0x00:0x00]); }
var temp62 = var6 + var8;
var8 = temp62;
if (var8 + 0x20 > var5) { revert(memory[0x00:0x00]); }
var temp63 = var8;
var temp64 = msg.data[temp63:temp63 + 0x20];
var8 = temp64;
var9 = var7;
var7 = temp63 + 0x20;
if ((var8 > 0x0100000000) | (var7 + var8 > var5)) { revert(memory[0x00:0x00]); }
var temp65 = var9;
var temp66 = var8;
var temp67 = memory[0x40:0x60];
memory[0x40:0x60] = temp67 + (temp66 + 0x1f) / 0x20 * 0x20 + 0x20;
memory[temp67:temp67 + 0x20] = temp66;
var temp68 = temp67 + 0x20;
memory[temp68:temp68 + temp66] = msg.data[var7:var7 + temp66];
memory[temp68 + temp66:temp68 + temp66 + 0x20] = 0x00;
var temp69 = var5;
var5 = temp67;
var temp70 = var6;
var6 = temp69;
var7 = temp70;
var8 = temp65 + 0x20;
var9 = msg.data[temp65:temp65 + 0x20];
if (var9 > 0x0100000000) { revert(memory[0x00:0x00]); }
var temp71 = var7 + var9;
var9 = temp71;
if (var9 + 0x20 > var6) { revert(memory[0x00:0x00]); }
var temp72 = var9;
var temp73 = msg.data[temp72:temp72 + 0x20];
var9 = temp73;
var10 = var8;
var8 = temp72 + 0x20;
if ((var9 > 0x0100000000) | (var8 + var9 > var6)) { revert(memory[0x00:0x00]); }
var temp74 = var10;
var temp75 = var9;
var temp76 = memory[0x40:0x60];
memory[0x40:0x60] = temp76 + (temp75 + 0x1f) / 0x20 * 0x20 + 0x20;
memory[temp76:temp76 + 0x20] = temp75;
var temp77 = temp76 + 0x20;
memory[temp77:temp77 + temp75] = msg.data[var8:var8 + temp75];
memory[temp77 + temp75:temp77 + temp75 + 0x20] = 0x00;
var6 = temp76;
var7 = msg.data[temp74:temp74 + 0x20];
var8 = msg.data[temp74 + 0x20:temp74 + 0x20 + 0x20] & 0xff;
var9 = storage[0x00] / 0x0100 & 0xff;
if (var9) {
label_2111:
if (var9) {
if (var9) {
label_215D:
var9 = !(storage[0x00] / 0x0100 & 0xff);
if (!var9) {
storage[0x05] = msg.sender * 0x0100 | (storage[0x05] & ~((0x01 << 0xa8) - 0x0100));
var10 = 0x21ae;
var11 = var2;
var12 = var3;
var13 = var4;
var14 = var5;
var15 = var6;
var var16 = var7;
var var17 = var8;
label_3B4C:
var var18 = storage[0x00] / 0x0100 & 0xff;
if (var18) {
label_3B65:
if (var18) {
if (var18) {
label_3BB1:
var18 = !(storage[0x00] / 0x0100 & 0xff);
if (var18) {
storage[0x00] = (((storage[0x00] & ~0xff00) | 0x0100) & ~0xff) | 0x01;
if (msg.sender == storage[0x05] / 0x0100 & (0x01 << 0xa0) - 0x01) { goto label_3C2B; }
else { goto label_3BF4; }
} else if (msg.sender == storage[0x05] / 0x0100 & (0x01 << 0xa0) - 0x01) {
label_3C2B:
var var19 = !storage[0x08];
if (!var19) {
if (var19) {
label_3C77:
storage[0x0c] = var13;
if (var13) {
storage[0x00] = (var11 & (0x01 << 0xa0) - 0x01) * 0x01000000 | (storage[0x00] & ~((0x01 << 0xb8) - 0x01000000));
var19 = 0x3ce5;
var19 =
func_23F2();
storage[0x08] = var19;
storage[0x09] = 0x0de0b6b3a7640000;
var19 = 0x00;
var var20 = 0x3cff;
var var21 = var12;
var20 =
func_3E60(var21);
var19 = var20;
if (!var19) {
var temp78 = var14;
var20 = 0x3d52;
var21 = 0x03;
var var22 = temp78 + 0x20;
var var23 = memory[temp78:temp78 + 0x20];
var temp79 = var21;
var temp80 = storage[temp79];
memory[0x00:0x20] = temp79;
var var24 = keccak256(memory[0x00:0x20]);
var var25 = var22;
var22 = var24 + ((!(temp80 & 0x01) * 0x0100 - 0x01 & temp80) / 0x02 + 0x1f) / 0x20;
if (0x1f < var23) {
var temp81 = var23;
storage[var21] = temp81 + temp81 + 0x01;
if (!temp81) {
label_5441:
var temp82 = var22;
var22 = 0x544d;
var23 = temp82;
var temp83 = var23;
var23 = 0x11a6;
var temp84 = var24;
var25 = temp84;
var24 = temp83;
if (var24 <= var25) {
var23 =
func_544D(var24, var25);
goto label_11A6;
} else {
label_5497:
var temp85 = var25;
storage[temp85] = 0x00;
var25 = temp85 + 0x01;
if (var24 > var25) { goto label_5497; }
var23 =
func_544D(var24, var25);
// Error: Could not resolve method call return address!
}
} else {
var temp86 = var23;
var temp87 = var25;
var23 = temp87;
var25 = var23 + temp86;
if (var25 <= var23) { goto label_5441; }
label_542F:
var temp88 = var23;
var temp89 = var24;
storage[temp89] = memory[temp88:temp88 + 0x20];
var23 = temp88 + 0x20;
var24 = temp89 + 0x01;
var25 = var25;
if (var25 <= var23) { goto label_5441; }
else { goto label_542F; }
}
} else {
var temp90 = var23;
storage[var21] = temp90 + temp90 | (memory[var25:var25 + 0x20] & ~0xff);
goto label_5441;
}
} else {
var temp91 = memory[0x40:0x60];
memory[temp91:temp91 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp91 + 0x04:temp91 + 0x04 + 0x20] = 0x20;
memory[temp91 + 0x24:temp91 + 0x24 + 0x20] = 0x02;
memory[temp91 + 0x44:temp91 + 0x44 + 0x20] = 0x114d * (0x01 << 0xf2);
var temp92 = memory[0x40:0x60];
revert(memory[temp92:temp92 + temp91 - temp92 + 0x64]);
}
} else {
var temp93 = memory[0x40:0x60];
memory[temp93:temp93 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp93 + 0x04:temp93 + 0x04 + 0x20] = 0x20;
memory[temp93 + 0x24:temp93 + 0x24 + 0x20] = 0x02;
memory[temp93 + 0x44:temp93 + 0x44 + 0x20] = 0x4533 * (0x01 << 0xf0);
var temp94 = memory[0x40:0x60];
revert(memory[temp94:temp94 + temp93 - temp94 + 0x64]);
}
} else {
label_3C40:
var temp95 = memory[0x40:0x60];
memory[temp95:temp95 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp95 + 0x04:temp95 + 0x04 + 0x20] = 0x20;
memory[temp95 + 0x24:temp95 + 0x24 + 0x20] = 0x02;
memory[temp95 + 0x44:temp95 + 0x44 + 0x20] = 0x2299 * (0x01 << 0xf1);
var temp96 = memory[0x40:0x60];
revert(memory[temp96:temp96 + temp95 - temp96 + 0x64]);
}
} else if (!storage[0x09]) { goto label_3C77; }
else { goto label_3C40; }
} else {
label_3BF4:
var temp97 = memory[0x40:0x60];
memory[temp97:temp97 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp97 + 0x04:temp97 + 0x04 + 0x20] = 0x20;
memory[temp97 + 0x24:temp97 + 0x24 + 0x20] = 0x02;
memory[temp97 + 0x44:temp97 + 0x44 + 0x20] = 0x4531 * (0x01 << 0xf0);
var temp98 = memory[0x40:0x60];
revert(memory[temp98:temp98 + temp97 - temp98 + 0x64]);
}
} else {
label_3B78:
var temp99 = memory[0x40:0x60];
memory[temp99:temp99 + 0x20] = 0x461bcd * (0x01 << 0xe5);
var temp100 = temp99 + 0x04;
var temp101 = temp100 + 0x20;
memory[temp100:temp100 + 0x20] = temp101 - temp100;
memory[temp101:temp101 + 0x20] = 0x2e;
var temp102 = temp101 + 0x20;
memory[temp102:temp102 + 0x2e] = code[0x54a3:0x54d1];
var temp103 = memory[0x40:0x60];
revert(memory[temp103:temp103 + (temp102 + 0x40) - temp103]);
}
} else if (!(storage[0x00] & 0xff)) { goto label_3BB1; }
else { goto label_3B78; }
} else {
var18 = 0x3b65;
var18 =
func_3B3B();
goto label_3B65;
}
} else {
storage[0x00] = (((storage[0x00] & ~0xff00) | 0x0100) & ~0xff) | 0x01;
storage[0x05] = msg.sender * 0x0100 | (storage[0x05] & ~((0x01 << 0xa8) - 0x0100));
var10 = 0x21ae;
var11 = var2;
var12 = var3;
var13 = var4;
var14 = var5;
var15 = var6;
var16 = var7;
var17 = var8;
goto label_3B4C;
}
} else {
label_2124:
var temp104 = memory[0x40:0x60];
memory[temp104:temp104 + 0x20] = 0x461bcd * (0x01 << 0xe5);
var temp105 = temp104 + 0x04;
var temp106 = temp105 + 0x20;
memory[temp105:temp105 + 0x20] = temp106 - temp105;
memory[temp106:temp106 + 0x20] = 0x2e;
var temp107 = temp106 + 0x20;
memory[temp107:temp107 + 0x2e] = code[0x54a3:0x54d1];
var temp108 = memory[0x40:0x60];
revert(memory[temp108:temp108 + (temp107 + 0x40) - temp108]);
}
} else if (!(storage[0x00] & 0xff)) { goto label_215D; }
else { goto label_2124; }
} else {
var9 = 0x2111;
var9 =
func_3B3B();
goto label_2111;
}
} else if (var0 == 0xd90a730e) {
// Dispatch table entry for
underlyingSymbol()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 =
underlyingSymbol();
goto label_0374;
} else if (var0 == 0xdd62ed3e) {
// Dispatch table entry for
allowance(address,address)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x40) { revert(memory[0x00:0x00]); }
var1 =
allowance(var2, var3);
goto label_0374;
} else if (var0 == 0xe5974619) {
// Dispatch table entry for repayBorrowBehalf(address)
var1 = 0x05b3;
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;
var4 = 0x2207;
var5 = var2;
var6 = msg.value;
var4, var5 =
func_3DAA(var5, var6);
var temp109 = var4;
var3 = temp109;
var4 = 0x2232;
var5 = var3;
var temp110 = memory[0x40:0x60];
var6 = temp110;
memory[0x40:0x60] = var6 + 0x40;
memory[var6:var6 + 0x20] = 0x03;
memory[var6 + 0x20:var6 + 0x20 + 0x20] = 0x453735 * (0x01 << 0xe8);
func_361A(var5, var6);
// Error: Could not resolve jump destination!
} else if (var0 == 0xf2b3abbd) {
// Dispatch table entry for
_setInterestRateModel(address)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var1 =
_setInterestRateModel(var2, var3);
goto label_0374;
} else { goto label_0288; }
} else if (var0 == 0xf3fdb15a) {
// Dispatch table entry for
interestRateModel()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0a8b;
var2 =
interestRateModel();
label_0A8B:
var temp111 = memory[0x40:0x60];
memory[temp111:temp111 + 0x20] = var2 & (0x01 << 0xa0) - 0x01;
var temp112 = memory[0x40:0x60];
return memory[temp112:temp112 + temp111 - temp112 + 0x20];
} else if (var0 == 0xf77c4791) {
// Dispatch table entry for
controller()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0a8b;
var2 =
controller();
goto label_0A8B;
} else if (var0 == 0xf851a440) {
// Dispatch table entry for
admin()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0a8b;
var2 =
admin();
goto label_0A8B;
} else if (var0 == 0xf8f9da28) {
// Dispatch table entry for
borrowRatePerBlock()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var1 =
borrowRatePerBlock();
goto label_0374;
} else if (var0 == 0xfca7820b) {
// Dispatch table entry for
_setReserveFactor(uint256)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x0374;
var2 = 0x04;
var3 = msg.data.length - var2;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var1 =
_setReserveFactor(var2, var3);
goto label_0374;
} else if (var0 == 0xfcb64147) {
// Dispatch table entry for
_addReserves()
var1 = 0x0374;
var2 = 0x00;
var3 = 0x11a3;
var4 = msg.value;
var3 =
_addReserves(var4);
goto label_11A3;
} else { goto label_0288; }
}
}
function approve(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 temp1 = msg.sender;
memory[0x00:0x20] = temp1;
memory[0x20:0x40] = 0x0e;
var temp2 = keccak256(memory[0x00:0x40]);
var temp3 = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x00:0x20] = temp3;
memory[0x20:0x40] = temp2;
var temp4 = arg1;
storage[keccak256(memory[0x00:0x40])] = temp4;
var temp5 = memory[0x40:0x60];
memory[temp5:temp5 + 0x20] = temp4;
var temp6 = memory[0x40:0x60];
log(memory[temp6:temp6 + temp5 - temp6 + 0x20], [0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925, msg.sender, stack[-2] & (0x01 << 0xa0) - 0x01]);
return 0x01;
}
function borrowBalanceCurrent(var arg0, var arg1) returns (var r0) {
arg0 = msg.data[arg0:arg0 + 0x20] & (0x01 << 0xa0) - 0x01;
arg1 = 0x00;
if (storage[arg1] / 0x010000 & 0xff) {
var var0 = 0x00;
storage[var0] = storage[var0] & ~0xff0000;
var var1 = 0x120d;
var1 =
accrueInterest();
label_120D:
if (var1 == var0) {
var0 = 0x1253;
var1 = arg0;
var0 =
func_19D9(var1);
storage[0x00] = (storage[0x00] & ~0xff0000) | 0x010000;
return var0;
} else {
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = 0x20;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = 0x02;
memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = 0x4535 * (0x01 << 0xf0);
var temp1 = memory[0x40:0x60];
revert(memory[temp1:temp1 + temp0 - temp1 + 0x64]);
}
} else {
var temp2 = memory[0x40:0x60];
memory[temp2:temp2 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp2 + 0x04:temp2 + 0x04 + 0x20] = 0x20;
memory[temp2 + 0x24:temp2 + 0x24 + 0x20] = 0x03;
memory[temp2 + 0x44:temp2 + 0x44 + 0x20] = 0x453637 * (0x01 << 0xe8);
var temp3 = memory[0x40:0x60];
revert(memory[temp3:temp3 + temp2 - temp3 + 0x64]);
}
}
function transferFrom(var arg0, var arg1) returns (var r0) {
var temp0 = (0x01 << 0xa0) - 0x01;
var temp1 = arg0;
arg0 = temp0 & msg.data[temp1:temp1 + 0x20];
arg1 = temp0 & msg.data[temp1 + 0x20:temp1 + 0x20 + 0x20];
var var0 = msg.data[temp1 + 0x40:temp1 + 0x40 + 0x20];
var var1 = 0x00;
if (storage[var1] / 0x010000 & 0xff) {
var var2 = 0x00;
storage[var2] = storage[var2] & ~0xff0000;
var var3 = 0x1337;
var var4 = msg.sender;
var var5 = arg0;
var var6 = arg1;
var var7 = var0;
var3 =
func_25AC(var4, var5, var6, var7);
label_1337:
storage[0x00] = (storage[0x00] & ~0xff0000) | 0x010000;
return var3 == var2;
} else {
var temp2 = memory[0x40:0x60];
memory[temp2:temp2 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp2 + 0x04:temp2 + 0x04 + 0x20] = 0x20;
memory[temp2 + 0x24:temp2 + 0x24 + 0x20] = 0x03;
memory[temp2 + 0x44:temp2 + 0x44 + 0x20] = 0x453637 * (0x01 << 0xe8);
var temp3 = memory[0x40:0x60];
revert(memory[temp3:temp3 + temp2 - temp3 + 0x64]);
}
}
function balanceOfUnderlying(var arg0, var arg1) returns (var r0) {
arg0 = msg.data[arg0:arg0 + 0x20] & (0x01 << 0xa0) - 0x01;
arg1 = 0x00;
var var0 = 0x14d0;
var0 =
func_5357();
var temp0 = memory[0x40:0x60];
var var1 = temp0;
memory[0x40:0x60] = var1 + 0x20;
var var2 = var1;
var var3 = 0x14e3;
var3 =
exchangeRateCurrent();
memory[var2:var2 + 0x20] = var3;
memory[0x00:0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x0d;
var temp1 = var1;
var0 = temp1;
var1 = 0x00;
var2 = var1;
var3 = 0x150f;
var var5 = storage[keccak256(memory[var2:var2 + 0x40])];
var var4 = var0;
var3, var4 =
func_3057(var4, var5);
var temp2 = var3;
var1 = temp2;
var2 = var4;
var3 = 0x00;
var4 = var1;
if (var4 > 0x03) { assert(); }
if (var4 == var3) { return var2; }
var temp3 = memory[0x40:0x60];
memory[temp3:temp3 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp3 + 0x04:temp3 + 0x04 + 0x20] = 0x20;
memory[temp3 + 0x24:temp3 + 0x24 + 0x20] = 0x03;
memory[temp3 + 0x44:temp3 + 0x44 + 0x20] = 0x453639 * (0x01 << 0xe8);
var temp4 = memory[0x40:0x60];
revert(memory[temp4:temp4 + temp3 - temp4 + 0x64]);
}
function func_0510(var arg0, var arg1) returns (var arg0) {
arg0 = msg.data[arg0:arg0 + 0x20] & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x0f;
memory[0x00:0x20] = arg0;
return storage[keccak256(memory[0x00:0x40])];
}
function setAdmin(var arg0, var arg1) {
arg0 = msg.data[arg0:arg0 + 0x20] & (0x01 << 0xa0) - 0x01;
if (msg.sender == storage[0x05] / 0x0100 & (0x01 << 0xa0) - 0x01) {
var temp0 = (0x01 << 0xa0) - 0x01;
var temp1 = (storage[0x05] & ~((0x01 << 0xa8) - 0x0100)) | (arg0 & temp0) * 0x0100;
storage[0x05] = temp1;
var temp2 = memory[0x40:0x60];
memory[temp2:temp2 + 0x20] = temp1 / 0x0100 & temp0;
var temp3 = memory[0x40:0x60];
log(memory[temp3:temp3 + temp2 - temp3 + 0x20], [0x71614071b88dee5e0b2ae578a9dd7b2ebbe9ae832ba419dc0242cd065a290b6c]);
return;
} else {
var temp4 = memory[0x40:0x60];
memory[temp4:temp4 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp4 + 0x04:temp4 + 0x04 + 0x20] = 0x20;
memory[temp4 + 0x24:temp4 + 0x24 + 0x20] = 0x02;
memory[temp4 + 0x44:temp4 + 0x44 + 0x20] = 0x4531 * (0x01 << 0xf0);
var temp5 = memory[0x40:0x60];
revert(memory[temp5:temp5 + temp4 - temp5 + 0x64]);
}
}
function balanceOf(var arg0, var arg1) returns (var r0) {
arg0 = msg.data[arg0:arg0 + 0x20] & (0x01 << 0xa0) - 0x01;
memory[0x00:0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x0d;
return storage[keccak256(memory[0x00:0x40])];
}
function setController(var arg0, var arg1) returns (var r0) {
arg0 = msg.data[arg0:arg0 + 0x20] & (0x01 << 0xa0) - 0x01;
arg1 = 0x00;
if (msg.sender == storage[0x05] / 0x0100 & (0x01 << 0xa0) - 0x01) {
var temp0 = arg0 & (0x01 << 0xa0) - 0x01;
storage[0x00] = (storage[0x00] & ~((0x01 << 0xb8) - 0x01000000)) | temp0 * 0x01000000;
var temp1 = memory[0x40:0x60];
memory[temp1:temp1 + 0x20] = temp0;
var temp2 = memory[0x40:0x60];
log(memory[temp2:temp2 + temp1 - temp2 + 0x20], [0xe253457d9ad994ca9682fc3bbc38c890dca73a2d5ecee3809e548bac8b00d7c6]);
var var0 = 0x00;
return var0;
} else {
var temp3 = memory[0x40:0x60];
memory[temp3:temp3 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp3 + 0x04:temp3 + 0x04 + 0x20] = 0x20;
memory[temp3 + 0x24:temp3 + 0x24 + 0x20] = 0x02;
memory[temp3 + 0x44:temp3 + 0x44 + 0x20] = 0x4531 * (0x01 << 0xf0);
var temp4 = memory[0x40:0x60];
revert(memory[temp4:temp4 + temp3 - temp4 + 0x64]);
}
}
function func_0692(var arg0, var arg1) returns (var arg0) {
arg0 = msg.data[arg0:arg0 + 0x20] & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x10;
memory[0x00:0x20] = arg0;
return storage[keccak256(memory[0x00:0x40])];
}
function borrowBalanceStored(var arg0, var arg1) returns (var r0) {
arg0 = msg.data[arg0:arg0 + 0x20] & (0x01 << 0xa0) - 0x01;
r0 =
func_19D9(arg0);
// Error: Could not resolve method call return address!
}
function transfer(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;
if (storage[var0] / 0x010000 & 0xff) {
var var1 = 0x00;
storage[var1] = storage[var1] & ~0xff0000;
var var2 = 0x1e27;
var var3 = msg.sender;
var var4 = msg.sender;
var var5 = arg0;
var var6 = arg1;
var2 =
func_25AC(var3, var4, var5, var6);
label_1E27:
storage[0x00] = (storage[0x00] & ~0xff0000) | 0x010000;
return var2 == var1;
} else {
var temp1 = memory[0x40:0x60];
memory[temp1:temp1 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp1 + 0x04:temp1 + 0x04 + 0x20] = 0x20;
memory[temp1 + 0x24:temp1 + 0x24 + 0x20] = 0x03;
memory[temp1 + 0x44:temp1 + 0x44 + 0x20] = 0x453637 * (0x01 << 0xe8);
var temp2 = memory[0x40:0x60];
revert(memory[temp2:temp2 + temp1 - temp2 + 0x64]);
}
}
function liquidateBorrow(var arg0, var arg1) {
var temp0 = (0x01 << 0xa0) - 0x01;
var temp1 = arg0;
arg0 = temp0 & msg.data[temp1:temp1 + 0x20];
arg1 = msg.data[temp1 + 0x20:temp1 + 0x20 + 0x20] & temp0;
var var0 = 0x00;
var var1 = 0x1e54;
var var2 = arg0;
var var3 = msg.value;
var var4 = arg1;
var1, var2 =
func_34A7(var2, var3, var4);
var temp2 = var1;
var0 = temp2;
var1 = 0x1e7f;
var2 = var0;
var temp3 = memory[0x40:0x60];
var3 = temp3;
memory[0x40:0x60] = var3 + 0x40;
memory[var3:var3 + 0x20] = 0x03;
memory[var3 + 0x20:var3 + 0x20 + 0x20] = 0x229b9b * (0x01 << 0xe9);
func_361A(var2, var3);
}
function seize(var arg0, var arg1) returns (var r0) {
var temp0 = (0x01 << 0xa0) - 0x01;
var temp1 = arg0;
arg0 = temp0 & msg.data[temp1:temp1 + 0x20];
arg1 = temp0 & msg.data[temp1 + 0x20:temp1 + 0x20 + 0x20];
var var0 = msg.data[temp1 + 0x40:temp1 + 0x40 + 0x20];
var var1 = 0x00;
if (storage[var1] / 0x010000 & 0xff) {
storage[0x00] = storage[0x00] & ~0xff0000;
var var2 = 0x1f85;
var var3 = msg.sender;
var var4 = arg0;
var var5 = arg1;
var var6 = var0;
var2 =
func_381C(var3, var4, var5, var6);
storage[0x00] = (storage[0x00] & ~0xff0000) | 0x010000;
return var2;
} else {
var temp2 = memory[0x40:0x60];
memory[temp2:temp2 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp2 + 0x04:temp2 + 0x04 + 0x20] = 0x20;
memory[temp2 + 0x24:temp2 + 0x24 + 0x20] = 0x03;
memory[temp2 + 0x44:temp2 + 0x44 + 0x20] = 0x453637 * (0x01 << 0xe8);
var temp3 = memory[0x40:0x60];
revert(memory[temp3:temp3 + temp2 - temp3 + 0x64]);
}
}
function getAccountSnapshot(var arg0) returns (var r0, var arg0, var r2, var r3) {
arg0 = msg.data[arg0:arg0 + 0x20] & (0x01 << 0xa0) - 0x01;
r2 = 0x00;
memory[r2:r2 + 0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x0d;
r3 = r2;
var var1 = r3;
var var3 = storage[keccak256(memory[var1:var1 + 0x40])];
var var2 = var1;
var var4 = var2;
var var5 = var4;
var var6 = var5;
var var7 = 0x2083;
var var8 = arg0;
var7, var8 =
func_330C(var8);
var4 = var8;
var temp0 = var7;
var6 = temp0;
var7 = 0x00;
var8 = var6;
if (var8 > 0x03) { assert(); }
if (var8 == var7) {
var7 = 0x20bb;
var7, var8 =
func_23F6();
var5 = var8;
var temp1 = var7;
var6 = temp1;
var7 = 0x00;
var8 = var6;
if (var8 > 0x03) { assert(); }
if (var8 == var7) {
r2 = 0x00;
r3 = var3;
var1 = var4;
var2 = var5;
label_20E6:
var temp2 = r3;
r3 = var2;
arg0 = temp2;
var temp3 = r2;
r2 = var1;
r0 = temp3;
return r0, arg0, r2, r3;
} else {
var7 = 0x09;
r2 = var7;
r3 = 0x00;
var1 = r3;
var2 = var1;
goto label_20E6;
}
} else {
r2 = 0x09;
r3 = 0x00;
var1 = r3;
var2 = var1;
goto label_20E6;
}
}
function allowance(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;
var temp2 = (0x01 << 0xa0) - 0x01;
memory[0x00:0x20] = temp2 & arg0;
memory[0x20:0x40] = 0x0e;
var temp3 = keccak256(memory[0x00:0x40]);
memory[0x00:0x20] = temp2 & arg1;
memory[0x20:0x40] = temp3;
return storage[keccak256(memory[0x00:0x40])];
}
function _setInterestRateModel(var arg0, var arg1) returns (var r0) {
arg0 = msg.data[arg0:arg0 + 0x20] & (0x01 << 0xa0) - 0x01;
arg1 = 0x00;
var var0 = arg1;
var var1 = 0x2241;
var1 =
accrueInterest();
label_2241:
var0 = var1;
if (!var0) {
var1 = 0x1681;
var var2 = arg0;
return
func_3E60(var2);
} else {
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = 0x20;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = 0x02;
memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = 0x4535 * (0x01 << 0xf0);
var temp1 = memory[0x40:0x60];
revert(memory[temp1:temp1 + temp0 - temp1 + 0x64]);
}
}
function _setReserveFactor(var arg0, var arg1) returns (var r0) {
arg0 = msg.data[arg0:arg0 + 0x20];
arg1 = 0x00;
if (storage[arg1] / 0x010000 & 0xff) {
var var0 = 0x00;
storage[var0] = storage[var0] & ~0xff0000;
var var1 = 0x2385;
var1 =
accrueInterest();
label_2385:
var0 = var1;
if (!var0) {
var1 = 0x23ce;
var var2 = arg0;
var1 =
func_3FD8(var2);
storage[0x00] = (storage[0x00] & ~0xff0000) | 0x010000;
return var1;
} else {
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = 0x20;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = 0x02;
memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = 0x4535 * (0x01 << 0xf0);
var temp1 = memory[0x40:0x60];
revert(memory[temp1:temp1 + temp0 - temp1 + 0x64]);
}
} else {
var temp2 = memory[0x40:0x60];
memory[temp2:temp2 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp2 + 0x04:temp2 + 0x04 + 0x20] = 0x20;
memory[temp2 + 0x24:temp2 + 0x24 + 0x20] = 0x03;
memory[temp2 + 0x44:temp2 + 0x44 + 0x20] = 0x453637 * (0x01 << 0xe8);
var temp3 = memory[0x40:0x60];
revert(memory[temp3:temp3 + temp2 - temp3 + 0x64]);
}
}
function name() returns (var r0) {
var temp0 = storage[0x03];
var temp1 = memory[0x40:0x60];
var temp2 = (temp0 & !(temp0 & 0x01) * 0x0100 + ~0x00) / 0x02;
var var2 = temp2;
memory[0x40:0x60] = temp1 + (var2 + 0x1f) / 0x20 * 0x20 + 0x20;
memory[temp1:temp1 + 0x20] = var2;
r0 = temp1;
var var1 = 0x03;
var var3 = r0 + 0x20;
var var4 = var1;
var var5 = var2;
if (!var5) {
label_1124:
return r0;
} else if (0x1f < var5) {
var temp3 = var3;
var temp4 = temp3 + var5;
var3 = temp4;
memory[0x00:0x20] = var4;
var temp5 = keccak256(memory[0x00:0x20]);
memory[temp3:temp3 + 0x20] = storage[temp5];
var4 = temp5 + 0x01;
var5 = temp3 + 0x20;
if (var3 <= var5) { goto label_111B; }
label_1107:
var temp6 = var4;
var temp7 = var5;
memory[temp7:temp7 + 0x20] = storage[temp6];
var4 = temp6 + 0x01;
var5 = temp7 + 0x20;
if (var3 > var5) { goto label_1107; }
label_111B:
var temp8 = var3;
var temp9 = temp8 + (var5 - temp8 & 0x1f);
var5 = temp8;
var3 = temp9;
goto label_1124;
} else {
var temp10 = var3;
memory[temp10:temp10 + 0x20] = storage[var4] / 0x0100 * 0x0100;
var3 = temp10 + 0x20;
var5 = var5;
goto label_1124;
}
}
function reserveFactorMantissa() returns (var r0) { return storage[0x0b]; }
function totalSupply() returns (var r0) { return storage[0x07]; }
function exchangeRateStored() returns (var r0) {
var var0 = 0x00;
var var1 = var0;
var var2 = 0x00;
var var3 = 0x127e;
var var4;
var3, var4 =
func_23F6();
var temp0 = var3;
var1 = temp0;
var2 = var4;
var3 = 0x00;
var4 = var1;
if (var4 > 0x03) { assert(); }
if (var4 == var3) { return var2; }
var temp1 = memory[0x40:0x60];
memory[temp1:temp1 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp1 + 0x04:temp1 + 0x04 + 0x20] = 0x20;
memory[temp1 + 0x24:temp1 + 0x24 + 0x20] = 0x03;
memory[temp1 + 0x44:temp1 + 0x44 + 0x20] = 0x08a6c7 * (0x01 << 0xeb);
var temp2 = memory[0x40:0x60];
revert(memory[temp2:temp2 + temp1 - temp2 + 0x64]);
}
function decimals() returns (var r0) { return storage[0x05] & 0xff; }
function isDToken() returns (var r0) { return 0x01; }
function totalBorrows() returns (var r0) { return storage[0x06]; }
function accrualBlockNumber() returns (var r0) { return storage[0x08]; }
function totalBorrowsCurrent() returns (var r0) {
var var0 = 0x00;
if (storage[var0] / 0x010000 & 0xff) {
var var1 = 0x00;
storage[var1] = storage[var1] & ~0xff0000;
var var2 = 0x17ba;
var2 =
accrueInterest();
label_17BA:
if (var2 == var1) {
var temp0 = storage[0x06];
storage[0x00] = (storage[0x00] & ~0xff0000) | 0x010000;
return temp0;
} else {
var temp1 = memory[0x40:0x60];
memory[temp1:temp1 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp1 + 0x04:temp1 + 0x04 + 0x20] = 0x20;
memory[temp1 + 0x24:temp1 + 0x24 + 0x20] = 0x02;
memory[temp1 + 0x44:temp1 + 0x44 + 0x20] = 0x4535 * (0x01 << 0xf0);
var temp2 = memory[0x40:0x60];
revert(memory[temp2:temp2 + temp1 - temp2 + 0x64]);
}
} else {
var temp3 = memory[0x40:0x60];
memory[temp3:temp3 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp3 + 0x04:temp3 + 0x04 + 0x20] = 0x20;
memory[temp3 + 0x24:temp3 + 0x24 + 0x20] = 0x03;
memory[temp3 + 0x44:temp3 + 0x44 + 0x20] = 0x453637 * (0x01 << 0xe8);
var temp4 = memory[0x40:0x60];
revert(memory[temp4:temp4 + temp3 - temp4 + 0x64]);
}
}
function totalReserves() returns (var r0) { return storage[0x0a]; }
function symbol() returns (var r0) {
var temp0 = storage[0x04];
var temp1 = memory[0x40:0x60];
var temp2 = (temp0 & !(temp0 & 0x01) * 0x0100 + ~0x00) / 0x02;
var var2 = temp2;
memory[0x40:0x60] = temp1 + (var2 + 0x1f) / 0x20 * 0x20 + 0x20;
memory[temp1:temp1 + 0x20] = var2;
r0 = temp1;
var var1 = 0x04;
var var3 = r0 + 0x20;
var var4 = var1;
var var5 = var2;
if (!var5) {
label_1124:
return r0;
} else if (0x1f < var5) {
var temp3 = var3;
var temp4 = temp3 + var5;
var3 = temp4;
memory[0x00:0x20] = var4;
var temp5 = keccak256(memory[0x00:0x20]);
memory[temp3:temp3 + 0x20] = storage[temp5];
var4 = temp5 + 0x01;
var5 = temp3 + 0x20;
if (var3 <= var5) { goto label_111B; }
label_1107:
var temp6 = var4;
var temp7 = var5;
memory[temp7:temp7 + 0x20] = storage[temp6];
var4 = temp6 + 0x01;
var5 = temp7 + 0x20;
if (var3 > var5) { goto label_1107; }
label_111B:
var temp8 = var3;
var temp9 = temp8 + (var5 - temp8 & 0x1f);
var5 = temp8;
var3 = temp9;
goto label_1124;
} else {
var temp10 = var3;
memory[temp10:temp10 + 0x20] = storage[var4] / 0x0100 * 0x0100;
var3 = temp10 + 0x20;
var5 = var5;
goto label_1124;
}
}
function func_19D9(var arg0) returns (var r0) {
var var0 = 0x00;
var var1 = var0;
var var2 = 0x00;
var var3 = 0x19e7;
var var4 = arg0;
var3, var4 =
func_330C(var4);
var temp0 = var3;
var1 = temp0;
var2 = var4;
var3 = 0x00;
var4 = var1;
if (var4 > 0x03) { assert(); }
if (var4 == var3) { return var2; }
var temp1 = memory[0x40:0x60];
memory[temp1:temp1 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp1 + 0x04:temp1 + 0x04 + 0x20] = 0x20;
memory[temp1 + 0x24:temp1 + 0x24 + 0x20] = 0x03;
memory[temp1 + 0x44:temp1 + 0x44 + 0x20] = 0x114dcd * (0x01 << 0xea);
var temp2 = memory[0x40:0x60];
revert(memory[temp2:temp2 + temp1 - temp2 + 0x64]);
}
function accrueInterest() returns (var r0) {
var var0 = 0x00;
var var1 = var0;
var var2 = 0x1a43;
var2 =
func_23F2();
var temp0 = var2;
var2 = storage[0x08];
var1 = temp0;
if (var1 == var2) { return 0x00; }
var var3 = 0x00;
var var4 = 0x1a66;
var4 =
getCash();
var temp1 = memory[0x40:0x60];
memory[temp1:temp1 + 0x20] = 0x15f24053 * (0x01 << 0xe0);
memory[temp1 + 0x04:temp1 + 0x04 + 0x20] = var4;
memory[temp1 + 0x24:temp1 + 0x24 + 0x20] = storage[0x06];
memory[temp1 + 0x44:temp1 + 0x44 + 0x20] = storage[0x0a];
var3 = var4;
var4 = storage[0x06];
var var5 = storage[0x0a];
var var6 = storage[0x09];
var var7 = 0x00;
var var8 = storage[0x01] & (0x01 << 0xa0) - 0x01;
var var9 = 0x15f24053;
var var10 = temp1 + 0x64;
var var11 = 0x20;
var var12 = memory[0x40:0x60];
var var13 = temp1 - var12 + 0x64;
var var14 = var12;
var var15 = var8;
var var16 = !address(var15).code.length;
if (var16) { revert(memory[0x00:0x00]); }
var temp2;
temp2, memory[var12:var12 + var11] = address(var15).staticcall.gas(msg.gas)(memory[var14:var14 + var13]);
var11 = !temp2;
if (!var11) {
var8 = memory[0x40:0x60];
var9 = returndata.length;
if (var9 < 0x20) { revert(memory[0x00:0x00]); }
var7 = memory[var8:var8 + 0x20];
if (var7 <= 0x048c27395000) {
var8 = 0x00;
var9 = var8;
var10 = 0x1b59;
var11 = var1;
var12 = var2;
var10, var11 =
func_33C0(var11, var12);
var temp3 = var10;
var8 = temp3;
var9 = var11;
var10 = 0x00;
var11 = var8;
if (var11 > 0x03) { assert(); }
if (var11 == var10) {
var10 = 0x1bb2;
var10 =
func_5357();
var11 = 0x00;
var12 = var11;
var13 = 0x00;
var14 = var13;
var15 = 0x1bd0;
var temp4 = memory[0x40:0x60];
var16 = temp4;
memory[0x40:0x60] = var16 + 0x20;
memory[var16:var16 + 0x20] = var7;
var var17 = var9;
var15, var16 =
func_33E3(var16, var17);
var temp5 = var15;
var8 = temp5;
var10 = var16;
var15 = 0x00;
var16 = var8;
if (var16 > 0x03) { assert(); }
if (var16 == var15) {
var15 = 0x1c2b;
var16 = var10;
var17 = var4;
var15, var16 =
func_3057(var16, var17);
var temp6 = var15;
var8 = temp6;
var11 = var16;
var15 = 0x00;
var16 = var8;
if (var16 > 0x03) { assert(); }
if (var16 == var15) {
var15 = 0x1c86;
var16 = var11;
var17 = var4;
var15, var16 =
func_2586(var16, var17);
var temp7 = var15;
var8 = temp7;
var12 = var16;
var15 = 0x00;
var16 = var8;
if (var16 > 0x03) { assert(); }
if (var16 == var15) {
var15 = 0x1cf2;
var temp8 = memory[0x40:0x60];
var16 = temp8;
memory[0x40:0x60] = var16 + 0x20;
memory[var16:var16 + 0x20] = storage[0x0b];
var17 = var11;
var var18 = var5;
var15, var16 =
func_344B(var16, var17, var18);
var temp9 = var15;
var8 = temp9;
var13 = var16;
var15 = 0x00;
var16 = var8;
if (var16 > 0x03) { assert(); }
if (var16 == var15) {
var15 = 0x1d4e;
var16 = var10;
var17 = var6;
var18 = var17;
var15, var16 =
func_344B(var16, var17, var18);
var temp10 = var15;
var8 = temp10;
var14 = var16;
var15 = 0x00;
var16 = var8;
if (var16 > 0x03) { assert(); }
if (var16 == var15) {
storage[0x08] = var1;
storage[0x09] = var14;
storage[0x06] = var12;
storage[0x0a] = var13;
return 0x00;
} else {
var temp11 = memory[0x40:0x60];
memory[temp11:temp11 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp11 + 0x04:temp11 + 0x04 + 0x20] = 0x20;
memory[temp11 + 0x24:temp11 + 0x24 + 0x20] = 0x03;
memory[temp11 + 0x44:temp11 + 0x44 + 0x20] = 0x229b1b * (0x01 << 0xe9);
var temp12 = memory[0x40:0x60];
revert(memory[temp12:temp12 + temp11 - temp12 + 0x64]);
}
} else {
var temp13 = memory[0x40:0x60];
memory[temp13:temp13 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp13 + 0x04:temp13 + 0x04 + 0x20] = 0x20;
memory[temp13 + 0x24:temp13 + 0x24 + 0x20] = 0x03;
memory[temp13 + 0x44:temp13 + 0x44 + 0x20] = 0x453635 * (0x01 << 0xe8);
var temp14 = memory[0x40:0x60];
revert(memory[temp14:temp14 + temp13 - temp14 + 0x64]);
}
} else {
var temp15 = memory[0x40:0x60];
memory[temp15:temp15 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp15 + 0x04:temp15 + 0x04 + 0x20] = 0x20;
memory[temp15 + 0x24:temp15 + 0x24 + 0x20] = 0x03;
memory[temp15 + 0x44:temp15 + 0x44 + 0x20] = 0x114d8d * (0x01 << 0xea);
var temp16 = memory[0x40:0x60];
revert(memory[temp16:temp16 + temp15 - temp16 + 0x64]);
}
} else {
var temp17 = memory[0x40:0x60];
memory[temp17:temp17 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp17 + 0x04:temp17 + 0x04 + 0x20] = 0x20;
memory[temp17 + 0x24:temp17 + 0x24 + 0x20] = 0x03;
memory[temp17 + 0x44:temp17 + 0x44 + 0x20] = 0x453633 * (0x01 << 0xe8);
var temp18 = memory[0x40:0x60];
revert(memory[temp18:temp18 + temp17 - temp18 + 0x64]);
}
} else {
var temp19 = memory[0x40:0x60];
memory[temp19:temp19 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp19 + 0x04:temp19 + 0x04 + 0x20] = 0x20;
memory[temp19 + 0x24:temp19 + 0x24 + 0x20] = 0x03;
memory[temp19 + 0x44:temp19 + 0x44 + 0x20] = 0x229b19 * (0x01 << 0xe9);
var temp20 = memory[0x40:0x60];
revert(memory[temp20:temp20 + temp19 - temp20 + 0x64]);
}
} else {
var temp21 = memory[0x40:0x60];
memory[temp21:temp21 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp21 + 0x04:temp21 + 0x04 + 0x20] = 0x20;
memory[temp21 + 0x24:temp21 + 0x24 + 0x20] = 0x03;
memory[temp21 + 0x44:temp21 + 0x44 + 0x20] = 0x453631 * (0x01 << 0xe8);
var temp22 = memory[0x40:0x60];
revert(memory[temp22:temp22 + temp21 - temp22 + 0x64]);
}
} else {
var temp23 = memory[0x40:0x60];
memory[temp23:temp23 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp23 + 0x04:temp23 + 0x04 + 0x20] = 0x20;
memory[temp23 + 0x24:temp23 + 0x24 + 0x20] = 0x03;
memory[temp23 + 0x44:temp23 + 0x44 + 0x20] = 0x045363 * (0x01 << 0xec);
var temp24 = memory[0x40:0x60];
revert(memory[temp24:temp24 + temp23 - temp24 + 0x64]);
}
} else {
var temp25 = returndata.length;
memory[0x00:0x00 + temp25] = returndata[0x00:0x00 + temp25];
revert(memory[0x00:0x00 + returndata.length]);
}
}
function borrowIndex() returns (var r0) { return storage[0x09]; }
function supplyRatePerBlock() returns (var r0) {
var var0 = 0x00;
var var1 = storage[0x01] & (0x01 << 0xa0) - 0x01;
var var2 = 0xb8168816;
var var3 = 0x1ea0;
var3 =
getCash();
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = (var2 & 0xffffffff) << 0xe0;
var temp1 = temp0 + 0x04;
memory[temp1:temp1 + 0x20] = var3;
var temp2 = temp1 + 0x20;
memory[temp2:temp2 + 0x20] = storage[0x06];
var temp3 = temp2 + 0x20;
memory[temp3:temp3 + 0x20] = storage[0x0a];
var temp4 = temp3 + 0x20;
memory[temp4:temp4 + 0x20] = storage[0x0b];
var3 = temp4 + 0x20;
var var4 = 0x20;
var var5 = memory[0x40:0x60];
var var6 = var3 - var5;
var var7 = var5;
var var8 = var1;
var var9 = !address(var8).code.length;
if (var9) { revert(memory[0x00:0x00]); }
var temp5;
temp5, memory[var5:var5 + var4] = address(var8).staticcall.gas(msg.gas)(memory[var7:var7 + var6]);
var4 = !temp5;
if (!var4) {
var1 = memory[0x40:0x60];
var2 = returndata.length;
if (var2 >= 0x20) { return memory[var1:var1 + 0x20]; }
else { revert(memory[0x00:0x00]); }
} else {
var temp6 = returndata.length;
memory[0x00:0x00 + temp6] = returndata[0x00:0x00 + temp6];
revert(memory[0x00:0x00 + returndata.length]);
}
}
function exchangeRateCurrent() returns (var r0) {
var var0 = 0x00;
if (storage[var0] / 0x010000 & 0xff) {
var var1 = 0x00;
storage[var1] = storage[var1] & ~0xff0000;
var var2 = 0x1ffd;
var2 =
accrueInterest();
label_1FFD:
if (var2 == var1) {
var1 = 0x2042;
var1 =
exchangeRateStored();
storage[0x00] = (storage[0x00] & ~0xff0000) | 0x010000;
return var1;
} else {
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = 0x20;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = 0x02;
memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = 0x4535 * (0x01 << 0xf0);
var temp1 = memory[0x40:0x60];
revert(memory[temp1:temp1 + temp0 - temp1 + 0x64]);
}
} else {
var temp2 = memory[0x40:0x60];
memory[temp2:temp2 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp2 + 0x04:temp2 + 0x04 + 0x20] = 0x20;
memory[temp2 + 0x24:temp2 + 0x24 + 0x20] = 0x03;
memory[temp2 + 0x44:temp2 + 0x44 + 0x20] = 0x453637 * (0x01 << 0xe8);
var temp3 = memory[0x40:0x60];
revert(memory[temp3:temp3 + temp2 - temp3 + 0x64]);
}
}
function underlyingSymbol() returns (var r0) { return storage[0x02]; }
function interestRateModel() returns (var r0) { return storage[0x01] & (0x01 << 0xa0) - 0x01; }
function controller() returns (var r0) { return storage[0x00] / 0x01000000 & (0x01 << 0xa0) - 0x01; }
function admin() returns (var r0) { return storage[0x05] / 0x0100 & (0x01 << 0xa0) - 0x01; }
function borrowRatePerBlock() returns (var r0) {
var var0 = 0x00;
var var1 = storage[0x01] & (0x01 << 0xa0) - 0x01;
var var2 = 0x15f24053;
var var3 = 0x22df;
var3 =
getCash();
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = (var2 & 0xffffffff) << 0xe0;
var temp1 = temp0 + 0x04;
memory[temp1:temp1 + 0x20] = var3;
var temp2 = temp1 + 0x20;
memory[temp2:temp2 + 0x20] = storage[0x06];
var temp3 = temp2 + 0x20;
memory[temp3:temp3 + 0x20] = storage[0x0a];
var3 = temp3 + 0x20;
var var4 = 0x20;
var var5 = memory[0x40:0x60];
var var6 = var3 - var5;
var var7 = var5;
var var8 = var1;
var var9 = !address(var8).code.length;
if (var9) { revert(memory[0x00:0x00]); }
var temp4;
temp4, memory[var5:var5 + var4] = address(var8).staticcall.gas(msg.gas)(memory[var7:var7 + var6]);
var4 = !temp4;
if (!var4) {
var1 = memory[0x40:0x60];
var2 = returndata.length;
if (var2 >= 0x20) { return memory[var1:var1 + 0x20]; }
else { revert(memory[0x00:0x00]); }
} else {
var temp5 = returndata.length;
memory[0x00:0x00 + temp5] = returndata[0x00:0x00 + temp5];
revert(memory[0x00:0x00 + returndata.length]);
}
}
function func_23F2() returns (var r0) { return block.number; }
function func_23F6() returns (var r0, var r1) {
r1 = 0x00;
var var1 = r1;
var var2 = storage[0x07];
if (var2) {
var var3 = 0x00;
var var4 = 0x241b;
var4 =
getCash();
var3 = var4;
var4 = 0x00;
var var5 = 0x2427;
var5 =
func_5357();
var var6 = 0x00;
var var7 = 0x2438;
var var8 = var3;
var var9 = storage[0x06];
var var10 = storage[0x0a];
var7, var8 =
func_41C6(var8, var9, var10);
var4 = var8;
var temp0 = var7;
var6 = temp0;
var7 = 0x00;
var8 = var6;
if (var8 > 0x03) { assert(); }
if (var8 == var7) {
var7 = 0x2469;
var8 = var4;
var9 = var2;
var7, var8 =
func_4204(var8, var9);
label_2469:
var5 = var8;
var temp1 = var7;
var6 = temp1;
var7 = 0x00;
var8 = var6;
if (var8 > 0x03) { assert(); }
if (var8 == var7) {
r1 = 0x00;
var1 = memory[var5:var5 + 0x20];
label_1629:
var temp2 = r1;
r1 = var1;
r0 = temp2;
return r0, r1;
} else {
r1 = var6;
var1 = 0x00;
goto label_1629;
}
} else {
r1 = var6;
var1 = 0x00;
goto label_1629;
}
} else {
var1 = storage[0x0c];
r1 = 0x00;
goto label_1629;
}
}
function func_24A1(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
if (arg0 & (0x01 << 0xa0) - 0x01 != msg.sender) {
var temp2 = memory[0x40:0x60];
memory[temp2:temp2 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp2 + 0x04:temp2 + 0x04 + 0x20] = 0x20;
memory[temp2 + 0x24:temp2 + 0x24 + 0x20] = 0x03;
memory[temp2 + 0x44:temp2 + 0x44 + 0x20] = 0x453737 * (0x01 << 0xe8);
var temp3 = memory[0x40:0x60];
revert(memory[temp3:temp3 + temp2 - temp3 + 0x64]);
} else if (msg.value == arg1) { return arg1; }
else {
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = 0x20;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = 0x03;
memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = 0x08a6e7 * (0x01 << 0xeb);
var temp1 = memory[0x40:0x60];
revert(memory[temp1:temp1 + temp0 - temp1 + 0x64]);
}
}
function func_2586(var arg0, var arg1) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = var0;
var temp0 = arg0;
var var2 = arg1 + temp0;
if (var2 < temp0) {
var0 = 0x02;
var1 = 0x00;
label_257F:
arg0 = var1;
r0 = var0;
return r0, arg0;
} else {
var0 = 0x00;
var1 = var2;
goto label_257F;
}
}
function func_25AC(var arg0, var arg1, var arg2, var arg3) returns (var r0) {
var var0 = 0x00;
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x17b9b84b * (0x01 << 0xe3);
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = address(this);
var temp1 = (0x01 << 0xa0) - 0x01;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = temp1 & arg1;
memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = temp1 & arg2;
memory[temp0 + 0x64:temp0 + 0x64 + 0x20] = arg3;
var var1 = var0;
var var2 = temp1 & storage[var1] / 0x01000000;
var var3 = 0xbdcdc258;
var var4 = temp0 + 0x84;
var var5 = 0x20;
var var6 = memory[0x40:0x60];
var var7 = temp0 - var6 + 0x84;
var var8 = var6;
var var9 = var1;
var var10 = var2;
var var11 = !address(var10).code.length;
if (var11) { revert(memory[0x00:0x00]); }
var temp2;
temp2, memory[var6:var6 + var5] = address(var10).call.gas(msg.gas).value(var9)(memory[var8:var8 + var7]);
var5 = !temp2;
if (!var5) {
var2 = memory[0x40:0x60];
var3 = returndata.length;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var1 = memory[var2:var2 + 0x20];
if (var1) {
var2 = 0x265d;
var3 = 0x03;
var4 = 0x4a;
var5 = var1;
var2 =
func_4322(var3, var4, var5);
goto label_265D;
} else if (arg1 & (0x01 << 0xa0) - 0x01 != arg2 & (0x01 << 0xa0) - 0x01) {
var2 = 0x00;
var temp3 = (0x01 << 0xa0) - 0x01;
if (arg1 & temp3 != temp3 & arg0) {
var temp4 = (0x01 << 0xa0) - 0x01;
memory[0x00:0x20] = arg1 & temp4;
memory[0x20:0x40] = 0x0e;
var temp5 = keccak256(memory[0x00:0x40]);
memory[0x00:0x20] = arg0 & temp4;
memory[0x20:0x40] = temp5;
var2 = storage[keccak256(memory[0x00:0x40])];
var3 = 0x00;
var4 = var3;
var5 = 0x00;
var6 = var5;
var7 = 0x26e2;
var8 = var2;
var9 = arg3;
var7, var8 =
func_33C0(var8, var9);
label_26E2:
var temp6 = var7;
var3 = temp6;
var4 = var8;
var7 = 0x00;
var8 = var3;
if (var8 > 0x03) { assert(); }
if (var8 == var7) {
memory[0x00:0x20] = arg1 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x0d;
var8 = storage[keccak256(memory[0x00:0x40])];
var7 = 0x2756;
var9 = arg3;
var7, var8 =
func_33C0(var8, var9);
var temp7 = var7;
var3 = temp7;
var5 = var8;
var7 = 0x00;
var8 = var3;
if (var8 > 0x03) { assert(); }
if (var8 == var7) {
memory[0x00:0x20] = arg2 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x0d;
var8 = storage[keccak256(memory[0x00:0x40])];
var7 = 0x27ca;
var9 = arg3;
var7, var8 =
func_2586(var8, var9);
var temp8 = var7;
var3 = temp8;
var6 = var8;
var7 = 0x00;
var8 = var3;
if (var8 > 0x03) { assert(); }
if (var8 == var7) {
var temp9 = (0x01 << 0xa0) - 0x01;
memory[0x00:0x20] = arg1 & temp9;
memory[0x20:0x40] = 0x0d;
storage[keccak256(memory[0x00:0x40])] = var5;
memory[0x00:0x20] = arg2 & temp9;
storage[keccak256(memory[0x00:0x40])] = var6;
if (var2 == ~0x00) {
var temp10 = memory[0x00:0x20];
memory[0x00:0x20] = code[0x54d1:0x54f1];
var temp11 = memory[0x00:0x20];
memory[0x00:0x20] = temp10;
var temp12 = memory[0x40:0x60];
memory[temp12:temp12 + 0x20] = arg3;
var temp13 = memory[0x40:0x60];
log(memory[temp13:temp13 + (temp12 + 0x20) - temp13], [memory[0x00:0x20], stack[-10] & (0x01 << 0xa0) - 0x01, stack[-9] & (0x01 << 0xa0) - 0x01]);
return 0x00;
} else {
var temp14 = (0x01 << 0xa0) - 0x01;
var temp15 = arg1;
memory[0x00:0x20] = temp15 & temp14;
memory[0x20:0x40] = 0x0e;
var temp16 = keccak256(memory[0x00:0x40]);
memory[0x00:0x20] = arg0 & temp14;
memory[0x20:0x40] = temp16;
storage[keccak256(memory[0x00:0x40])] = var4;
var temp17 = memory[0x00:0x20];
memory[0x00:0x20] = code[0x54d1:0x54f1];
var temp18 = memory[0x00:0x20];
memory[0x00:0x20] = temp17;
var temp19 = memory[0x40:0x60];
memory[temp19:temp19 + 0x20] = arg3;
var temp20 = memory[0x40:0x60];
log(memory[temp20:temp20 + (temp19 + 0x20) - temp20], [memory[0x00:0x20], stack[-10] & (0x01 << 0xa0) - 0x01, stack[-9] & (0x01 << 0xa0) - 0x01]);
return 0x00;
}
} else {
var temp21 = memory[0x40:0x60];
memory[temp21:temp21 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp21 + 0x04:temp21 + 0x04 + 0x20] = 0x20;
memory[temp21 + 0x24:temp21 + 0x24 + 0x20] = 0x03;
memory[temp21 + 0x44:temp21 + 0x44 + 0x20] = 0x229b99 * (0x01 << 0xe9);
var temp22 = memory[0x40:0x60];
revert(memory[temp22:temp22 + temp21 - temp22 + 0x64]);
}
} else {
var temp23 = memory[0x40:0x60];
memory[temp23:temp23 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp23 + 0x04:temp23 + 0x04 + 0x20] = 0x20;
memory[temp23 + 0x24:temp23 + 0x24 + 0x20] = 0x03;
memory[temp23 + 0x44:temp23 + 0x44 + 0x20] = 0x453731 * (0x01 << 0xe8);
var temp24 = memory[0x40:0x60];
revert(memory[temp24:temp24 + temp23 - temp24 + 0x64]);
}
} else {
var temp25 = memory[0x40:0x60];
memory[temp25:temp25 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp25 + 0x04:temp25 + 0x04 + 0x20] = 0x20;
memory[temp25 + 0x24:temp25 + 0x24 + 0x20] = 0x03;
memory[temp25 + 0x44:temp25 + 0x44 + 0x20] = 0x045373 * (0x01 << 0xec);
var temp26 = memory[0x40:0x60];
revert(memory[temp26:temp26 + temp25 - temp26 + 0x64]);
}
} else {
var2 = ~0x00;
var3 = 0x00;
var4 = var3;
var5 = 0x00;
var6 = var5;
var7 = 0x26e2;
var8 = var2;
var9 = arg3;
var7, var8 =
func_33C0(var8, var9);
goto label_26E2;
}
} else {
var2 = 0x265d;
var3 = 0x02;
var4 = 0x4b;
var2 =
func_4388(var3, var4);
label_265D:
return var2;
}
} else {
var temp27 = returndata.length;
memory[0x00:0x00 + temp27] = returndata[0x00:0x00 + temp27];
revert(memory[0x00:0x00 + returndata.length]);
}
}
function func_28BD(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
if (storage[var0] / 0x010000 & 0xff) {
storage[0x00] = storage[0x00] & ~0xff0000;
if (arg1) {
var var1 = 0x2959;
var1 =
func_536A();
var var2 = 0x2961;
var var3;
var2, var3 =
func_23F6();
var temp0 = var1;
memory[temp0 + 0x40:temp0 + 0x40 + 0x20] = var3;
var var4 = temp0 + 0x20;
var var5 = var2;
if (var5 > 0x03) { assert(); }
if (var5 > 0x03) { assert(); }
memory[var4:var4 + 0x20] = var5;
var2 = 0x00;
var3 = memory[var1 + 0x20:var1 + 0x20 + 0x20];
if (var3 > 0x03) { assert(); }
if (var3 == var2) {
var temp1 = memory[0x40:0x60];
memory[0x40:0x60] = temp1 + 0x20;
memory[temp1:temp1 + 0x20] = memory[var1 + 0x40:var1 + 0x40 + 0x20];
memory[0x00:0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x0d;
var2 = 0x00;
var3 = var2;
var5 = temp1;
var4 = 0x2a0c;
var var6 = storage[keccak256(memory[var3:var3 + 0x40])];
var4, var5 =
func_3057(var5, var6);
var temp2 = var4;
var2 = temp2;
var3 = var5;
var4 = 0x00;
var5 = var2;
if (var5 > 0x03) { assert(); }
if (var5 != var4) {
var temp47 = memory[0x40:0x60];
memory[temp47:temp47 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp47 + 0x04:temp47 + 0x04 + 0x20] = 0x20;
memory[temp47 + 0x24:temp47 + 0x24 + 0x20] = 0x03;
memory[temp47 + 0x44:temp47 + 0x44 + 0x20] = 0x22999b * (0x01 << 0xe9);
var temp48 = memory[0x40:0x60];
revert(memory[temp48:temp48 + temp47 - temp48 + 0x64]);
} else if (arg1 != ~0x00) {
var temp3 = var1;
memory[temp3 + 0xa0:temp3 + 0xa0 + 0x20] = arg1;
var temp4 = memory[0x40:0x60];
memory[0x40:0x60] = temp4 + 0x20;
memory[temp4:temp4 + 0x20] = memory[temp3 + 0x40:temp3 + 0x40 + 0x20];
var4 = 0x2ab3;
var6 = temp4;
var5 = arg1;
var var7 = 0x00;
var var8 = var7;
var var9 = 0x00;
var var10 = 0x253f;
var10 =
func_5357();
var var11 = 0x2549;
var var12 = var5;
var var13 = var6;
var11, var12 =
func_42B4(var12, var13);
var temp5 = var11;
var9 = temp5;
var10 = var12;
var11 = 0x00;
var12 = var9;
if (var12 > 0x03) { assert(); }
if (var12 == var11) {
var11 = 0x00;
var12 = 0x2578;
var13 = var10;
var12 =
func_4313(var13);
var8 = var12;
var7 = var11;
label_257F:
var5 = var8;
var4 = var7;
// Error: Could not resolve jump destination!
} else {
var7 = var9;
var8 = 0x00;
goto label_257F;
}
} else {
var temp6 = var1;
memory[temp6 + 0xa0:temp6 + 0xa0 + 0x20] = var3;
memory[0x00:0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x0d;
memory[temp6 + 0x80:temp6 + 0x80 + 0x20] = storage[keccak256(memory[0x00:0x40])];
memory[0x00:0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x0f;
if (var3 <= storage[keccak256(memory[0x00:0x40])]) {
var temp7 = var1;
memory[temp7 + 0x0120:temp7 + 0x0120 + 0x20] = 0x00;
if (memory[temp7 + 0xa0:temp7 + 0xa0 + 0x20] < memory[temp7 + 0x0120:temp7 + 0x0120 + 0x20]) {
label_2CFF:
var temp8 = memory[var1 + 0x80:var1 + 0x80 + 0x20];
var temp9 = memory[0x40:0x60];
memory[temp9:temp9 + 0x20] = 0xeabe7d91 * (0x01 << 0xe0);
memory[temp9 + 0x04:temp9 + 0x04 + 0x20] = address(this);
var temp10 = (0x01 << 0xa0) - 0x01;
memory[temp9 + 0x24:temp9 + 0x24 + 0x20] = temp10 & arg0;
memory[temp9 + 0x44:temp9 + 0x44 + 0x20] = temp8;
var4 = temp10 & storage[0x00] / 0x01000000;
var8 = memory[0x40:0x60];
var5 = 0xeabe7d91;
var6 = temp9 + 0x64;
var7 = 0x20;
var9 = temp9 - var8 + 0x64;
var10 = var8;
var11 = 0x00;
var12 = var4;
var13 = !address(var12).code.length;
if (var13) { revert(memory[0x00:0x00]); }
var temp11;
temp11, memory[var8:var8 + var7] = address(var12).call.gas(msg.gas).value(var11)(memory[var10:var10 + var9]);
var7 = !temp11;
if (!var7) {
var4 = memory[0x40:0x60];
var5 = returndata.length;
if (var5 < 0x20) { revert(memory[0x00:0x00]); }
var temp12 = memory[var4:var4 + 0x20];
memory[var1 + 0x60:var1 + 0x60 + 0x20] = temp12;
if (!temp12) {
var4 = 0x2dee;
var5 = storage[0x07];
var6 = memory[var1 + 0x80:var1 + 0x80 + 0x20];
var4, var5 =
func_33C0(var5, var6);
var temp13 = var1;
memory[temp13 + 0xc0:temp13 + 0xc0 + 0x20] = var5;
var6 = temp13 + 0x20;
var7 = var4;
if (var7 > 0x03) { assert(); }
if (var7 > 0x03) { assert(); }
memory[var6:var6 + 0x20] = var7;
var4 = 0x00;
var5 = memory[var1 + 0x20:var1 + 0x20 + 0x20];
if (var5 > 0x03) { assert(); }
if (var5 == var4) {
memory[0x00:0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x0d;
var4 = 0x2e8d;
var6 = memory[var1 + 0x80:var1 + 0x80 + 0x20];
var5 = storage[keccak256(memory[0x00:0x40])];
var4, var5 =
func_33C0(var5, var6);
var temp14 = var1;
memory[temp14 + 0xe0:temp14 + 0xe0 + 0x20] = var5;
var6 = temp14 + 0x20;
var7 = var4;
if (var7 > 0x03) { assert(); }
if (var7 > 0x03) { assert(); }
memory[var6:var6 + 0x20] = var7;
var4 = 0x00;
var5 = memory[var1 + 0x20:var1 + 0x20 + 0x20];
if (var5 > 0x03) { assert(); }
if (var5 == var4) {
var4 = memory[var1 + 0xa0:var1 + 0xa0 + 0x20];
var5 = 0x2f11;
var5 =
getCash();
if (var5 >= var4) {
var4 = 0x2f5e;
var5 = arg0;
var6 = memory[var1 + 0xa0:var1 + 0xa0 + 0x20];
var4 =
func_43EE(var5, var6);
var temp15 = var1;
memory[temp15 + 0x0180:temp15 + 0x0180 + 0x20] = var4;
var temp16 = memory[0x40:0x60];
memory[temp16:temp16 + 0x20] = memory[temp15 + 0x80:temp15 + 0x80 + 0x20];
var temp17 = memory[0x40:0x60];
var temp18 = arg0;
var temp19 = memory[0x00:0x20];
memory[0x00:0x20] = code[0x54d1:0x54f1];
var temp20 = memory[0x00:0x20];
memory[0x00:0x20] = temp19;
log(memory[temp17:temp17 + temp16 - temp17 + 0x20], [memory[0x00:0x20], stack[-7] & (0x01 << 0xa0) - 0x01, address(this)]);
storage[0x07] = memory[temp15 + 0xc0:temp15 + 0xc0 + 0x20];
var temp21 = memory[temp15 + 0xe0:temp15 + 0xe0 + 0x20];
var temp22 = (0x01 << 0xa0) - 0x01;
memory[0x00:0x20] = temp18 & temp22;
memory[0x20:0x40] = 0x0d;
storage[keccak256(memory[0x00:0x40])] = temp21;
var temp23 = memory[temp15 + 0x0180:temp15 + 0x0180 + 0x20];
var temp24 = memory[temp15 + 0x80:temp15 + 0x80 + 0x20];
var temp25 = memory[0x40:0x60];
memory[temp25:temp25 + 0x20] = 0x6640728d * (0x01 << 0xe1);
memory[temp25 + 0x04:temp25 + 0x04 + 0x20] = temp23;
memory[temp25 + 0x24:temp25 + 0x24 + 0x20] = temp24;
var4 = temp22 & storage[0x00] / 0x01000000;
var8 = memory[0x40:0x60];
var5 = 0xcc80e51a;
var6 = temp25 + 0x44;
var7 = 0x00;
var9 = temp25 - var8 + 0x44;
var10 = var8;
var11 = var7;
var12 = var4;
var13 = !address(var12).code.length;
if (var13) { revert(memory[0x00:0x00]); }
var temp26;
temp26, memory[var8:var8 + var7] = address(var12).call.gas(msg.gas).value(var11)(memory[var10:var10 + var9]);
var7 = !temp26;
if (!var7) {
var4 = 0x00;
storage[0x00] = (storage[0x00] & ~0xff0000) | 0x010000;
return var4;
} else {
var temp27 = returndata.length;
memory[0x00:0x00 + temp27] = returndata[0x00:0x00 + temp27];
revert(memory[0x00:0x00 + returndata.length]);
}
} else {
var temp28 = memory[0x40:0x60];
memory[temp28:temp28 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp28 + 0x04:temp28 + 0x04 + 0x20] = 0x20;
memory[temp28 + 0x24:temp28 + 0x24 + 0x20] = 0x03;
memory[temp28 + 0x44:temp28 + 0x44 + 0x20] = 0x453433 * (0x01 << 0xe8);
var temp29 = memory[0x40:0x60];
revert(memory[temp29:temp29 + temp28 - temp29 + 0x64]);
}
} else {
var temp30 = memory[0x40:0x60];
memory[temp30:temp30 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp30 + 0x04:temp30 + 0x04 + 0x20] = 0x20;
memory[temp30 + 0x24:temp30 + 0x24 + 0x20] = 0x03;
memory[temp30 + 0x44:temp30 + 0x44 + 0x20] = 0x229a19 * (0x01 << 0xe9);
var temp31 = memory[0x40:0x60];
revert(memory[temp31:temp31 + temp30 - temp31 + 0x64]);
}
} else {
var temp32 = memory[0x40:0x60];
memory[temp32:temp32 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp32 + 0x04:temp32 + 0x04 + 0x20] = 0x20;
memory[temp32 + 0x24:temp32 + 0x24 + 0x20] = 0x03;
memory[temp32 + 0x44:temp32 + 0x44 + 0x20] = 0x453431 * (0x01 << 0xe8);
var temp33 = memory[0x40:0x60];
revert(memory[temp33:temp33 + temp32 - temp33 + 0x64]);
}
} else {
var temp34 = memory[0x40:0x60];
memory[temp34:temp34 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp34 + 0x04:temp34 + 0x04 + 0x20] = 0x20;
memory[temp34 + 0x24:temp34 + 0x24 + 0x20] = 0x03;
memory[temp34 + 0x44:temp34 + 0x44 + 0x20] = 0x045343 * (0x01 << 0xec);
var temp35 = memory[0x40:0x60];
revert(memory[temp35:temp35 + temp34 - temp35 + 0x64]);
}
} else {
var temp36 = returndata.length;
memory[0x00:0x00 + temp36] = returndata[0x00:0x00 + temp36];
revert(memory[0x00:0x00 + returndata.length]);
}
} else {
label_2C05:
var4 = 0x2c17;
var temp37 = var1;
var5 = memory[temp37 + 0xa0:temp37 + 0xa0 + 0x20];
var6 = memory[temp37 + 0x0120:temp37 + 0x0120 + 0x20];
var4, var5 =
func_33C0(var5, var6);
var temp38 = var1;
memory[temp38 + 0x0140:temp38 + 0x0140 + 0x20] = var5;
var6 = temp38 + 0x20;
var7 = var4;
if (var7 > 0x03) { assert(); }
if (var7 > 0x03) { assert(); }
memory[var6:var6 + 0x20] = var7;
memory[0x00:0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x0f;
var4 = 0x2c67;
var5 = storage[keccak256(memory[0x00:0x40])];
var6 = memory[var1 + 0x0140:var1 + 0x0140 + 0x20];
var4, var5 =
func_33C0(var5, var6);
var temp39 = var1;
memory[temp39 + 0x0100:temp39 + 0x0100 + 0x20] = var5;
var6 = temp39 + 0x20;
var7 = var4;
if (var7 > 0x03) { assert(); }
if (var7 > 0x03) { assert(); }
memory[var6:var6 + 0x20] = var7;
var4 = 0x00;
var5 = memory[var1 + 0x20:var1 + 0x20 + 0x20];
if (var5 > 0x03) { assert(); }
if (var5 == var4) {
var temp40 = memory[var1 + 0x0100:var1 + 0x0100 + 0x20];
memory[0x00:0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x0f;
storage[keccak256(memory[0x00:0x40])] = temp40;
goto label_2CFF;
} else {
var temp41 = memory[0x40:0x60];
memory[temp41:temp41 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp41 + 0x04:temp41 + 0x04 + 0x20] = 0x20;
memory[temp41 + 0x24:temp41 + 0x24 + 0x20] = 0x03;
memory[temp41 + 0x44:temp41 + 0x44 + 0x20] = 0x453339 * (0x01 << 0xe8);
var temp42 = memory[0x40:0x60];
revert(memory[temp42:temp42 + temp41 - temp42 + 0x64]);
}
}
} else {
memory[0x00:0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x0f;
var4 = 0x2b6e;
var5 = var3;
var6 = storage[keccak256(memory[0x00:0x40])];
var4, var5 =
func_33C0(var5, var6);
var temp43 = var1;
memory[temp43 + 0x0120:temp43 + 0x0120 + 0x20] = var5;
var6 = temp43 + 0x20;
var7 = var4;
if (var7 > 0x03) { assert(); }
if (var7 > 0x03) { assert(); }
memory[var6:var6 + 0x20] = var7;
var4 = 0x00;
var5 = memory[var1 + 0x20:var1 + 0x20 + 0x20];
if (var5 > 0x03) { assert(); }
if (var5 == var4) {
var temp44 = var1;
if (memory[temp44 + 0xa0:temp44 + 0xa0 + 0x20] < memory[temp44 + 0x0120:temp44 + 0x0120 + 0x20]) { goto label_2CFF; }
else { goto label_2C05; }
} else {
var temp45 = memory[0x40:0x60];
memory[temp45:temp45 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp45 + 0x04:temp45 + 0x04 + 0x20] = 0x20;
memory[temp45 + 0x24:temp45 + 0x24 + 0x20] = 0x03;
memory[temp45 + 0x44:temp45 + 0x44 + 0x20] = 0x08a667 * (0x01 << 0xeb);
var temp46 = memory[0x40:0x60];
revert(memory[temp46:temp46 + temp45 - temp46 + 0x64]);
}
}
}
} else {
var temp49 = memory[0x40:0x60];
memory[temp49:temp49 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp49 + 0x04:temp49 + 0x04 + 0x20] = 0x20;
memory[temp49 + 0x24:temp49 + 0x24 + 0x20] = 0x03;
memory[temp49 + 0x44:temp49 + 0x44 + 0x20] = 0x453335 * (0x01 << 0xe8);
var temp50 = memory[0x40:0x60];
revert(memory[temp50:temp50 + temp49 - temp50 + 0x64]);
}
} else {
var temp51 = memory[0x40:0x60];
memory[temp51:temp51 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp51 + 0x04:temp51 + 0x04 + 0x20] = 0x20;
memory[temp51 + 0x24:temp51 + 0x24 + 0x20] = 0x03;
memory[temp51 + 0x44:temp51 + 0x44 + 0x20] = 0x114ccd * (0x01 << 0xea);
var temp52 = memory[0x40:0x60];
revert(memory[temp52:temp52 + temp51 - temp52 + 0x64]);
}
} else {
var temp53 = memory[0x40:0x60];
memory[temp53:temp53 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp53 + 0x04:temp53 + 0x04 + 0x20] = 0x20;
memory[temp53 + 0x24:temp53 + 0x24 + 0x20] = 0x03;
memory[temp53 + 0x44:temp53 + 0x44 + 0x20] = 0x453637 * (0x01 << 0xe8);
var temp54 = memory[0x40:0x60];
revert(memory[temp54:temp54 + temp53 - temp54 + 0x64]);
}
}
function func_3057(var arg0, var arg1) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = var0;
var var2 = 0x00;
var var3 = 0x3064;
var3 =
func_5357();
var var4 = 0x2549;
var var5 = arg0;
var var6 = arg1;
var4, var5 =
func_33E3(var5, var6);
var temp0 = var4;
var2 = temp0;
var3 = var5;
var4 = 0x00;
var5 = var2;
if (var5 > 0x03) { assert(); }
if (var5 == var4) {
var4 = 0x00;
var5 = 0x2578;
var6 = var3;
var5 =
func_4313(var6);
var1 = var5;
var0 = var4;
label_257F:
arg0 = var1;
r0 = var0;
return r0, arg0;
} else {
var0 = var2;
var1 = 0x00;
goto label_257F;
}
}
function getCash() returns (var r0) {
var var0 = 0x00;
var var1 = var0;
var var2 = var1;
var var3 = 0x307d;
var var4 = address(this).balance;
var var5 = msg.value;
var3, var4 =
func_33C0(var4, var5);
var temp0 = var3;
var1 = temp0;
var2 = var4;
var3 = 0x00;
var4 = var1;
if (var4 > 0x03) { assert(); }
if (var4 == var3) { return var2; }
else { revert(memory[0x00:0x00]); }
}
function func_309A(var arg0) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = var0;
if (storage[var1] / 0x010000 & 0xff) {
storage[0x00] = storage[0x00] & ~0xff0000;
var var2 = 0x30fd;
var var3 = msg.sender;
var var4 = var3;
var var5 = arg0;
var2, var3 =
func_442E(var3, var4, var5);
storage[0x00] = (storage[0x00] & ~0xff0000) | 0x010000;
r0 = var2;
arg0 = var3;
return r0, arg0;
} else {
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = 0x20;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = 0x03;
memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = 0x453637 * (0x01 << 0xe8);
var temp1 = memory[0x40:0x60];
revert(memory[temp1:temp1 + temp0 - temp1 + 0x64]);
}
}
function func_3119(var arg0) returns (var r0) {
var var0 = 0x00;
var var1 = var0;
if (msg.sender == storage[0x05] / 0x0100 & (0x01 << 0xa0) - 0x01) {
var var2 = 0x3175;
var2 =
func_23F2();
if (storage[0x08] == var2) {
var2 = arg0;
var var3 = 0x31be;
var3 =
getCash();
if (var3 < var2) {
var temp7 = memory[0x40:0x60];
memory[temp7:temp7 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp7 + 0x04:temp7 + 0x04 + 0x20] = 0x20;
memory[temp7 + 0x24:temp7 + 0x24 + 0x20] = 0x03;
memory[temp7 + 0x44:temp7 + 0x44 + 0x20] = 0x453231 * (0x01 << 0xe8);
var temp8 = memory[0x40:0x60];
revert(memory[temp8:temp8 + temp7 - temp8 + 0x64]);
} else if (arg0 <= storage[0x0a]) {
var temp0 = storage[0x0a];
var1 = temp0 - arg0;
if (var1 <= temp0) {
storage[0x0a] = var1;
var2 = 0x00;
var3 = 0x32ab;
var var4 = storage[0x05] / 0x0100 & (0x01 << 0xa0) - 0x01;
var var5 = arg0;
var3 =
func_43EE(var4, var5);
var temp1 = memory[0x40:0x60];
memory[temp1:temp1 + 0x20] = storage[0x05] / 0x0100 & (0x01 << 0xa0) - 0x01;
memory[temp1 + 0x20:temp1 + 0x20 + 0x20] = var3;
memory[temp1 + 0x40:temp1 + 0x40 + 0x20] = var1;
var temp2 = memory[0x40:0x60];
log(memory[temp2:temp2 + temp1 - temp2 + 0x60], [0x3bad0c59cf2f06e7314077049f48a93578cd16f5ef92329f1dab1420a99c177e]);
return 0x00;
} else {
var temp3 = memory[0x40:0x60];
memory[temp3:temp3 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp3 + 0x04:temp3 + 0x04 + 0x20] = 0x20;
memory[temp3 + 0x24:temp3 + 0x24 + 0x20] = 0x03;
memory[temp3 + 0x44:temp3 + 0x44 + 0x20] = 0x08a687 * (0x01 << 0xeb);
var temp4 = memory[0x40:0x60];
revert(memory[temp4:temp4 + temp3 - temp4 + 0x64]);
}
} else {
var temp5 = memory[0x40:0x60];
memory[temp5:temp5 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp5 + 0x04:temp5 + 0x04 + 0x20] = 0x20;
memory[temp5 + 0x24:temp5 + 0x24 + 0x20] = 0x03;
memory[temp5 + 0x44:temp5 + 0x44 + 0x20] = 0x453437 * (0x01 << 0xe8);
var temp6 = memory[0x40:0x60];
revert(memory[temp6:temp6 + temp5 - temp6 + 0x64]);
}
} else {
var temp9 = memory[0x40:0x60];
memory[temp9:temp9 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp9 + 0x04:temp9 + 0x04 + 0x20] = 0x20;
memory[temp9 + 0x24:temp9 + 0x24 + 0x20] = 0x02;
memory[temp9 + 0x44:temp9 + 0x44 + 0x20] = 0x4537 * (0x01 << 0xf0);
var temp10 = memory[0x40:0x60];
revert(memory[temp10:temp10 + temp9 - temp10 + 0x64]);
}
} else {
var temp11 = memory[0x40:0x60];
memory[temp11:temp11 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp11 + 0x04:temp11 + 0x04 + 0x20] = 0x20;
memory[temp11 + 0x24:temp11 + 0x24 + 0x20] = 0x02;
memory[temp11 + 0x44:temp11 + 0x44 + 0x20] = 0x4531 * (0x01 << 0xf0);
var temp12 = memory[0x40:0x60];
revert(memory[temp12:temp12 + temp11 - temp12 + 0x64]);
}
}
function func_330C(var arg0) returns (var r0, var arg0) {
var var0 = 0x00;
memory[var0:var0 + 0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x11;
var var1 = var0;
var var2 = var1;
var var5 = keccak256(memory[var2:var2 + 0x40]);
var var3 = var2;
var var4 = var3;
if (storage[var5]) {
var var6 = 0x3353;
var var7 = storage[var5];
var var8 = storage[0x09];
var6, var7 =
func_47E4(var7, var8);
var temp0 = var6;
var2 = temp0;
var3 = var7;
var6 = 0x00;
var7 = var2;
if (var7 > 0x03) { assert(); }
if (var7 == var6) {
var6 = 0x3389;
var7 = var3;
var8 = storage[var5 + 0x01];
var6, var7 =
func_4823(var7, var8);
var temp1 = var6;
var2 = temp1;
var4 = var7;
var6 = 0x00;
var7 = var2;
if (var7 > 0x03) { assert(); }
if (var7 == var6) {
var0 = 0x00;
var1 = var4;
label_33BB:
arg0 = var1;
r0 = var0;
return r0, arg0;
} else {
var0 = var2;
var1 = 0x00;
goto label_33BB;
}
} else {
var0 = var2;
var1 = 0x00;
goto label_33BB;
}
} else {
var0 = 0x00;
var1 = var0;
goto label_33BB;
}
}
function func_33C0(var arg0, var arg1) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = var0;
if (arg1 > arg0) {
var0 = 0x03;
var1 = 0x00;
label_257F:
arg0 = var1;
r0 = var0;
return r0, arg0;
} else {
var0 = 0x00;
var1 = arg0 - arg1;
goto label_257F;
}
}
function func_33E3(var arg0, var arg1) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = 0x33ed;
var1 =
func_5357();
var var2 = 0x00;
var var3 = var2;
var var4 = 0x33fe;
var var5 = memory[arg0:arg0 + 0x20];
var var6 = arg1;
var4, var5 =
func_47E4(var5, var6);
var temp0 = var4;
var2 = temp0;
var3 = var5;
var4 = 0x00;
var5 = var2;
if (var5 > 0x03) { assert(); }
if (var5 == var4) {
var temp1 = memory[0x40:0x60];
memory[0x40:0x60] = temp1 + 0x20;
memory[temp1:temp1 + 0x20] = var3;
r0 = 0x00;
arg0 = temp1;
return r0, arg0;
} else {
var temp2 = memory[0x40:0x60];
memory[0x40:0x60] = temp2 + 0x20;
memory[temp2:temp2 + 0x20] = 0x00;
var0 = var2;
var1 = temp2;
arg0 = var1;
r0 = var0;
return r0, arg0;
}
}
function func_344B(var arg0, var arg1, var arg2) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = var0;
var var2 = 0x00;
var var3 = 0x3458;
var3 =
func_5357();
var var4 = 0x3462;
var var5 = arg0;
var var6 = arg1;
var4, var5 =
func_33E3(var5, var6);
var temp0 = var4;
var2 = temp0;
var3 = var5;
var4 = 0x00;
var5 = var2;
if (var5 > 0x03) { assert(); }
if (var5 == var4) {
var4 = 0x3498;
var5 = 0x3492;
var6 = var3;
var5 =
func_4313(var6);
var4, var5 =
func_3492(arg2, var5);
var1 = var5;
var0 = var4;
label_349F:
arg0 = var1;
r0 = var0;
return r0, arg0;
} else {
var0 = var2;
var1 = 0x00;
goto label_349F;
}
}
function func_3492(var arg0, var arg1) returns (var r0, var arg1) {
var var0 = arg0;
r0, arg1 =
func_2586(arg1, var0);
// Error: Could not resolve method call return address!
}
function func_34A7(var arg0, var arg1, var arg2) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = var0;
if (storage[var1] / 0x010000 & 0xff) {
var var2 = 0x00;
storage[var2] = storage[var2] & ~0xff0000;
var var3 = 0x3507;
var3 =
accrueInterest();
label_3507:
var2 = var3;
if (!var2) {
var3 = arg2 & (0x01 << 0xa0) - 0x01;
var var4 = 0xa6afed95;
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = (var4 & 0xffffffff) << 0xe0;
var var5 = temp0 + 0x04;
var var6 = 0x20;
var var7 = memory[0x40:0x60];
var var8 = var5 - var7;
var var9 = var7;
var var10 = 0x00;
var var11 = var3;
var var12 = !address(var11).code.length;
if (var12) { revert(memory[0x00:0x00]); }
var temp1;
temp1, memory[var7:var7 + var6] = address(var11).call.gas(msg.gas).value(var10)(memory[var9:var9 + var8]);
var6 = !temp1;
if (!var6) {
var3 = memory[0x40:0x60];
var4 = returndata.length;
if (var4 < 0x20) { revert(memory[0x00:0x00]); }
var2 = memory[var3:var3 + 0x20];
if (!var2) {
var3 = 0x35fa;
var4 = msg.sender;
var5 = arg0;
var6 = arg1;
var7 = arg2;
var3, var4 =
func_484E(var4, var5, var6, var7);
storage[0x00] = (storage[0x00] & ~0xff0000) | 0x010000;
r0 = var3;
arg0 = var4;
return r0, arg0;
} else {
var temp2 = memory[0x40:0x60];
memory[temp2:temp2 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp2 + 0x04:temp2 + 0x04 + 0x20] = 0x20;
memory[temp2 + 0x24:temp2 + 0x24 + 0x20] = 0x02;
memory[temp2 + 0x44:temp2 + 0x44 + 0x20] = 0x4535 * (0x01 << 0xf0);
var temp3 = memory[0x40:0x60];
revert(memory[temp3:temp3 + temp2 - temp3 + 0x64]);
}
} else {
var temp4 = returndata.length;
memory[0x00:0x00 + temp4] = returndata[0x00:0x00 + temp4];
revert(memory[0x00:0x00 + returndata.length]);
}
} else {
var temp5 = memory[0x40:0x60];
memory[temp5:temp5 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp5 + 0x04:temp5 + 0x04 + 0x20] = 0x20;
memory[temp5 + 0x24:temp5 + 0x24 + 0x20] = 0x02;
memory[temp5 + 0x44:temp5 + 0x44 + 0x20] = 0x4535 * (0x01 << 0xf0);
var temp6 = memory[0x40:0x60];
revert(memory[temp6:temp6 + temp5 - temp6 + 0x64]);
}
} else {
var temp7 = memory[0x40:0x60];
memory[temp7:temp7 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp7 + 0x04:temp7 + 0x04 + 0x20] = 0x20;
memory[temp7 + 0x24:temp7 + 0x24 + 0x20] = 0x03;
memory[temp7 + 0x44:temp7 + 0x44 + 0x20] = 0x453637 * (0x01 << 0xe8);
var temp8 = memory[0x40:0x60];
revert(memory[temp8:temp8 + temp7 - temp8 + 0x64]);
}
}
function func_361A(var arg0, var arg1) {
if (!arg0) { return; }
var var0 = 0x60;
var temp0 = memory[arg1:arg1 + 0x20] + 0x05;
var temp1 = memory[0x40:0x60];
var var2 = temp0;
var var1 = temp1;
memory[var1:var1 + 0x20] = var2;
memory[0x40:0x60] = var1 + (var2 + 0x1f & ~0x1f) + 0x20;
if (!var2) {
var0 = var1;
var1 = 0x00;
if (var1 >= memory[arg1:arg1 + 0x20]) {
label_36A6:
var2 = 0x01 << 0xfd;
var var3 = var0;
var var4 = var1;
if (var4 >= memory[var3:var3 + 0x20]) { assert(); }
memory[var4 + 0x20 + var3:var4 + 0x20 + var3 + 0x01] = byte(var2 & ~((0x01 << 0xf8) - 0x01), 0x00);
var2 = 0x28 << 0xf8;
var3 = var0;
var4 = var1 + 0x01;
if (var4 >= memory[var3:var3 + 0x20]) { assert(); }
memory[var4 + 0x20 + var3:var4 + 0x20 + var3 + 0x01] = byte(var2 & ~((0x01 << 0xf8) - 0x01), 0x00);
var2 = arg0 / 0x0a + 0x30 << 0xf8;
var3 = var0;
var4 = var1 + 0x02;
if (var4 >= memory[var3:var3 + 0x20]) { assert(); }
memory[var4 + 0x20 + var3:var4 + 0x20 + var3 + 0x01] = byte(var2 & ~((0x01 << 0xf8) - 0x01), 0x00);
var2 = arg0 % 0x0a + 0x30 << 0xf8;
var3 = var0;
var4 = var1 + 0x03;
if (var4 >= memory[var3:var3 + 0x20]) { assert(); }
memory[var4 + 0x20 + var3:var4 + 0x20 + var3 + 0x01] = byte(var2 & ~((0x01 << 0xf8) - 0x01), 0x00);
var2 = 0x29 << 0xf8;
var3 = var0;
var4 = var1 + 0x04;
if (var4 >= memory[var3:var3 + 0x20]) { assert(); }
memory[var4 + 0x20 + var3:var4 + 0x20 + var3 + 0x01] = byte(var2 & ~((0x01 << 0xf8) - 0x01), 0x00);
var2 = var0;
if (!arg0) { return; }
var temp2 = memory[0x40:0x60];
memory[temp2:temp2 + 0x20] = 0x461bcd * (0x01 << 0xe5);
var temp3 = temp2 + 0x04;
var3 = temp3;
var4 = var3;
var temp4 = var4 + 0x20;
memory[var4:var4 + 0x20] = temp4 - var4;
var temp5 = var2;
memory[temp4:temp4 + 0x20] = memory[temp5:temp5 + 0x20];
var var5 = temp4 + 0x20;
var var6 = temp5 + 0x20;
var var7 = memory[temp5:temp5 + 0x20];
var var8 = var7;
var var9 = var5;
var var10 = var6;
var var11 = 0x00;
if (var11 >= var8) {
label_37DA:
var temp6 = var7;
var5 = temp6 + var5;
var6 = temp6 & 0x1f;
if (!var6) {
var temp7 = memory[0x40:0x60];
revert(memory[temp7:temp7 + var5 - temp7]);
} else {
var temp8 = var6;
var temp9 = var5 - temp8;
memory[temp9:temp9 + 0x20] = ~(0x0100 ** (0x20 - temp8) - 0x01) & memory[temp9:temp9 + 0x20];
var temp10 = memory[0x40:0x60];
revert(memory[temp10:temp10 + (temp9 + 0x20) - temp10]);
}
} else {
label_37CB:
var temp11 = var11;
memory[temp11 + var9:temp11 + var9 + 0x20] = memory[temp11 + var10:temp11 + var10 + 0x20];
var11 = temp11 + 0x20;
if (var11 >= var8) { goto label_37DA; }
else { goto label_37CB; }
}
} else {
label_3665:
var2 = arg1;
var3 = var1;
if (var3 >= memory[var2:var2 + 0x20]) { assert(); }
var2 = (memory[var3 + 0x20 + var2:var3 + 0x20 + var2 + 0x20] >> 0xf8) << 0xf8;
var3 = var0;
var4 = var1;
if (var4 >= memory[var3:var3 + 0x20]) { assert(); }
memory[var4 + 0x20 + var3:var4 + 0x20 + var3 + 0x01] = byte(var2 & ~((0x01 << 0xf8) - 0x01), 0x00);
var1 = var1 + 0x01;
if (var1 >= memory[arg1:arg1 + 0x20]) { goto label_36A6; }
else { goto label_3665; }
}
} else {
var temp12 = var2;
memory[var1 + 0x20:var1 + 0x20 + temp12] = code[code.length:code.length + temp12];
var0 = var1;
var1 = 0x00;
if (var1 >= memory[arg1:arg1 + 0x20]) { goto label_36A6; }
else { goto label_3665; }
}
}
function func_381C(var arg0, var arg1, var arg2, var arg3) returns (var r0) {
var var0 = 0x00;
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0xeafe967b * (0x01 << 0xe0);
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = address(this);
var temp1 = (0x01 << 0xa0) - 0x01;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = temp1 & arg0;
memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = temp1 & arg1;
memory[temp0 + 0x64:temp0 + 0x64 + 0x20] = temp1 & arg2;
var var1 = var0;
var var2 = temp1 & storage[var1] / 0x01000000;
var var3 = 0xeafe967b;
var var4 = temp0 + 0x84;
var var5 = 0x20;
var var6 = memory[0x40:0x60];
var var7 = temp0 - var6 + 0x84;
var var8 = var6;
var var9 = var1;
var var10 = var2;
var var11 = !address(var10).code.length;
if (var11) { revert(memory[0x00:0x00]); }
var temp2;
temp2, memory[var6:var6 + var5] = address(var10).call.gas(msg.gas).value(var9)(memory[var8:var8 + var7]);
var5 = !temp2;
if (!var5) {
var2 = memory[0x40:0x60];
var3 = returndata.length;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var1 = memory[var2:var2 + 0x20];
if (var1) {
var temp18 = memory[0x40:0x60];
memory[temp18:temp18 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp18 + 0x04:temp18 + 0x04 + 0x20] = 0x20;
memory[temp18 + 0x24:temp18 + 0x24 + 0x20] = 0x03;
memory[temp18 + 0x44:temp18 + 0x44 + 0x20] = 0x453537 * (0x01 << 0xe8);
var temp19 = memory[0x40:0x60];
revert(memory[temp19:temp19 + temp18 - temp19 + 0x64]);
} else if (arg2 & (0x01 << 0xa0) - 0x01 != arg1 & (0x01 << 0xa0) - 0x01) {
var2 = 0x00;
memory[var2:var2 + 0x20] = arg2 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x0d;
var3 = var2;
var4 = var3;
var5 = 0x3974;
var6 = storage[keccak256(memory[var4:var4 + 0x40])];
var7 = arg3;
var5, var6 =
func_33C0(var6, var7);
var temp3 = var5;
var2 = temp3;
var3 = var6;
var5 = 0x00;
var6 = var2;
if (var6 > 0x03) { assert(); }
if (var6 == var5) {
memory[0x00:0x20] = arg1 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x0d;
var5 = 0x39e8;
var6 = storage[keccak256(memory[0x00:0x40])];
var7 = arg3;
var5, var6 =
func_2586(var6, var7);
var temp4 = var5;
var2 = temp4;
var4 = var6;
var5 = 0x00;
var6 = var2;
if (var6 > 0x03) { assert(); }
if (var6 == var5) {
var temp5 = (0x01 << 0xa0) - 0x01;
var temp6 = arg2 & temp5;
memory[0x00:0x20] = temp6;
memory[0x20:0x40] = 0x0d;
storage[keccak256(memory[0x00:0x40])] = var3;
var temp7 = arg1 & temp5;
memory[0x00:0x20] = temp7;
storage[keccak256(memory[0x00:0x40])] = var4;
var temp8 = memory[0x40:0x60];
memory[temp8:temp8 + 0x20] = arg3;
var temp9 = memory[0x40:0x60];
var temp10 = memory[0x00:0x20];
memory[0x00:0x20] = code[0x54d1:0x54f1];
var temp11 = memory[0x00:0x20];
memory[0x00:0x20] = temp10;
log(memory[temp9:temp9 + temp8 - temp9 + 0x20], [memory[0x00:0x20], stack[-7] & (0x01 << 0xa0) - 0x01, stack[-8] & (0x01 << 0xa0) - 0x01]);
return 0x00;
} else {
var temp12 = memory[0x40:0x60];
memory[temp12:temp12 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp12 + 0x04:temp12 + 0x04 + 0x20] = 0x20;
memory[temp12 + 0x24:temp12 + 0x24 + 0x20] = 0x03;
memory[temp12 + 0x44:temp12 + 0x44 + 0x20] = 0x453539 * (0x01 << 0xe8);
var temp13 = memory[0x40:0x60];
revert(memory[temp13:temp13 + temp12 - temp13 + 0x64]);
}
} else {
var temp14 = memory[0x40:0x60];
memory[temp14:temp14 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp14 + 0x04:temp14 + 0x04 + 0x20] = 0x20;
memory[temp14 + 0x24:temp14 + 0x24 + 0x20] = 0x03;
memory[temp14 + 0x44:temp14 + 0x44 + 0x20] = 0x08a6a7 * (0x01 << 0xeb);
var temp15 = memory[0x40:0x60];
revert(memory[temp15:temp15 + temp14 - temp15 + 0x64]);
}
} else {
var temp16 = memory[0x40:0x60];
memory[temp16:temp16 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp16 + 0x04:temp16 + 0x04 + 0x20] = 0x20;
memory[temp16 + 0x24:temp16 + 0x24 + 0x20] = 0x03;
memory[temp16 + 0x44:temp16 + 0x44 + 0x20] = 0x045353 * (0x01 << 0xec);
var temp17 = memory[0x40:0x60];
revert(memory[temp17:temp17 + temp16 - temp17 + 0x64]);
}
} else {
var temp20 = returndata.length;
memory[0x00:0x00 + temp20] = returndata[0x00:0x00 + temp20];
revert(memory[0x00:0x00 + returndata.length]);
}
}
function func_3B3B() returns (var r0) {
var var0 = 0x00;
var var1 = 0x3b46;
var var2 = address(this);
var1 =
func_5216(var2);
return !var1;
}
function func_3DAA(var arg0, var arg1) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = var0;
if (storage[var1] / 0x010000 & 0xff) {
var var2 = 0x00;
storage[var2] = storage[var2] & ~0xff0000;
var var3 = 0x3e0a;
var3 =
accrueInterest();
label_3E0A:
var2 = var3;
if (!var2) {
var3 = 0x3e40;
var var4 = msg.sender;
var var5 = arg0;
var var6 = arg1;
var3, var4 =
func_442E(var4, var5, var6);
var1 = var4;
var0 = var3;
label_3E46:
storage[0x00] = (storage[0x00] & ~0xff0000) | 0x010000;
r0 = var0;
arg0 = var1;
return r0, arg0;
} else {
var3 = 0x3e28;
var4 = var2;
if (var4 > 0x10) { assert(); }
var3 =
func_3E21(var4);
var0 = var3;
var1 = 0x00;
goto label_3E46;
}
} else {
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = 0x20;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = 0x03;
memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = 0x453637 * (0x01 << 0xe8);
var temp1 = memory[0x40:0x60];
revert(memory[temp1:temp1 + temp0 - temp1 + 0x64]);
}
}
function func_3E21(var arg0) returns (var r0) {
var var0 = 0x35;
r0 =
func_4388(arg0, var0);
// Error: Could not resolve method call return address!
}
function func_3E60(var arg0) returns (var r0) {
var var0 = 0x00;
var var1 = var0;
if (msg.sender == storage[0x05] / 0x0100 & (0x01 << 0xa0) - 0x01) {
var var2 = 0x3ebc;
var2 =
func_23F2();
if (storage[0x08] == var2) {
var1 = storage[0x01] & (0x01 << 0xa0) - 0x01;
var2 = arg0 & (0x01 << 0xa0) - 0x01;
var var3 = 0x2191f92a;
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = (var3 & 0xffffffff) << 0xe0;
var var4 = temp0 + 0x04;
var var5 = 0x20;
var var6 = memory[0x40:0x60];
var var7 = var4 - var6;
var var8 = var6;
var var9 = var2;
var var10 = !address(var9).code.length;
if (var10) { revert(memory[0x00:0x00]); }
var temp1;
temp1, memory[var6:var6 + var5] = address(var9).staticcall.gas(msg.gas)(memory[var8:var8 + var7]);
var5 = !temp1;
if (!var5) {
var2 = memory[0x40:0x60];
var3 = returndata.length;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
if (memory[var2:var2 + 0x20]) {
storage[0x01] = (arg0 & (0x01 << 0xa0) - 0x01) | (storage[0x01] & ~((0x01 << 0xa0) - 0x01));
return 0x00;
} else {
var temp2 = memory[0x40:0x60];
memory[temp2:temp2 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp2 + 0x04:temp2 + 0x04 + 0x20] = 0x20;
memory[temp2 + 0x24:temp2 + 0x24 + 0x20] = 0x03;
memory[temp2 + 0x44:temp2 + 0x44 + 0x20] = 0x453435 * (0x01 << 0xe8);
var temp3 = memory[0x40:0x60];
revert(memory[temp3:temp3 + temp2 - temp3 + 0x64]);
}
} else {
var temp4 = returndata.length;
memory[0x00:0x00 + temp4] = returndata[0x00:0x00 + temp4];
revert(memory[0x00:0x00 + returndata.length]);
}
} else {
var temp5 = memory[0x40:0x60];
memory[temp5:temp5 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp5 + 0x04:temp5 + 0x04 + 0x20] = 0x20;
memory[temp5 + 0x24:temp5 + 0x24 + 0x20] = 0x02;
memory[temp5 + 0x44:temp5 + 0x44 + 0x20] = 0x4537 * (0x01 << 0xf0);
var temp6 = memory[0x40:0x60];
revert(memory[temp6:temp6 + temp5 - temp6 + 0x64]);
}
} else {
var temp7 = memory[0x40:0x60];
memory[temp7:temp7 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp7 + 0x04:temp7 + 0x04 + 0x20] = 0x20;
memory[temp7 + 0x24:temp7 + 0x24 + 0x20] = 0x02;
memory[temp7 + 0x44:temp7 + 0x44 + 0x20] = 0x4531 * (0x01 << 0xf0);
var temp8 = memory[0x40:0x60];
revert(memory[temp8:temp8 + temp7 - temp8 + 0x64]);
}
}
function func_3FD8(var arg0) returns (var r0) {
var var0 = 0x00;
if (msg.sender == storage[0x05] / 0x0100 & (0x01 << 0xa0) - 0x01) {
var var1 = 0x4032;
var1 =
func_23F2();
if (storage[0x08] != var1) {
var temp6 = memory[0x40:0x60];
memory[temp6:temp6 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp6 + 0x04:temp6 + 0x04 + 0x20] = 0x20;
memory[temp6 + 0x24:temp6 + 0x24 + 0x20] = 0x02;
memory[temp6 + 0x44:temp6 + 0x44 + 0x20] = 0x4537 * (0x01 << 0xf0);
var temp7 = memory[0x40:0x60];
revert(memory[temp7:temp7 + temp6 - temp7 + 0x64]);
} else if (arg0 <= 0x0de0b6b3a7640000) {
var temp0 = storage[0x0b];
var1 = temp0;
var temp1 = arg0;
storage[0x0b] = temp1;
var temp2 = memory[0x40:0x60];
memory[temp2:temp2 + 0x20] = var1;
memory[temp2 + 0x20:temp2 + 0x20 + 0x20] = temp1;
var temp3 = memory[0x40:0x60];
log(memory[temp3:temp3 + temp2 - temp3 + 0x40], [0xaaa68312e2ea9d50e16af5068410ab56e1a1fd06037b1a35664812c30f821460]);
var var2 = 0x00;
return var2;
} else {
var temp4 = memory[0x40:0x60];
memory[temp4:temp4 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp4 + 0x04:temp4 + 0x04 + 0x20] = 0x20;
memory[temp4 + 0x24:temp4 + 0x24 + 0x20] = 0x03;
memory[temp4 + 0x44:temp4 + 0x44 + 0x20] = 0x114d0d * (0x01 << 0xea);
var temp5 = memory[0x40:0x60];
revert(memory[temp5:temp5 + temp4 - temp5 + 0x64]);
}
} else {
var temp8 = memory[0x40:0x60];
memory[temp8:temp8 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp8 + 0x04:temp8 + 0x04 + 0x20] = 0x20;
memory[temp8 + 0x24:temp8 + 0x24 + 0x20] = 0x02;
memory[temp8 + 0x44:temp8 + 0x44 + 0x20] = 0x4531 * (0x01 << 0xf0);
var temp9 = memory[0x40:0x60];
revert(memory[temp9:temp9 + temp8 - temp9 + 0x64]);
}
}
function _addReserves(var arg0) returns (var r0) {
var var0 = 0x00;
if (storage[var0] / 0x010000 & 0xff) {
var var1 = 0x00;
storage[var1] = storage[var1] & ~0xff0000;
var var2 = 0x4163;
var2 =
accrueInterest();
label_4163:
var1 = var2;
if (!var1) {
var2 = 0x41ac;
var var3 = arg0;
var2, var3 =
func_521C(var3);
storage[0x00] = (storage[0x00] & ~0xff0000) | 0x010000;
return var2;
} else {
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = 0x20;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = 0x02;
memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = 0x4535 * (0x01 << 0xf0);
var temp1 = memory[0x40:0x60];
revert(memory[temp1:temp1 + temp0 - temp1 + 0x64]);
}
} else {
var temp2 = memory[0x40:0x60];
memory[temp2:temp2 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp2 + 0x04:temp2 + 0x04 + 0x20] = 0x20;
memory[temp2 + 0x24:temp2 + 0x24 + 0x20] = 0x03;
memory[temp2 + 0x44:temp2 + 0x44 + 0x20] = 0x453637 * (0x01 << 0xe8);
var temp3 = memory[0x40:0x60];
revert(memory[temp3:temp3 + temp2 - temp3 + 0x64]);
}
}
function func_41C6(var arg0, var arg1, var arg2) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = var0;
var var2 = 0x00;
var var3 = var2;
var var4 = 0x41d6;
var var5 = arg0;
var var6 = arg1;
var4, var5 =
func_2586(var5, var6);
var temp0 = var4;
var2 = temp0;
var3 = var5;
var4 = 0x00;
var5 = var2;
if (var5 > 0x03) { assert(); }
if (var5 == var4) {
var4 = 0x3498;
var5 = var3;
var6 = arg2;
var4, var5 =
func_33C0(var5, var6);
var1 = var5;
var0 = var4;
label_349F:
arg0 = var1;
r0 = var0;
return r0, arg0;
} else {
var0 = var2;
var1 = 0x00;
goto label_349F;
}
}
function func_4204(var arg0, var arg1) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = 0x420e;
var1 =
func_5357();
var var2 = 0x00;
var var3 = var2;
var var4 = 0x4223;
var var5 = arg0;
var var6 = 0x0de0b6b3a7640000;
var4, var5 =
func_47E4(var5, var6);
var temp0 = var4;
var2 = temp0;
var3 = var5;
var4 = 0x00;
var5 = var2;
if (var5 > 0x03) { assert(); }
if (var5 == var4) {
var4 = 0x00;
var5 = var4;
var6 = 0x4262;
var var7 = var3;
var var8 = arg1;
var6, var7 =
func_4823(var7, var8);
var temp1 = var6;
var4 = temp1;
var5 = var7;
var6 = 0x00;
var7 = var4;
if (var7 > 0x03) { assert(); }
if (var7 == var6) {
var temp2 = memory[0x40:0x60];
memory[0x40:0x60] = temp2 + 0x20;
memory[temp2:temp2 + 0x20] = var5;
r0 = 0x00;
arg0 = temp2;
return r0, arg0;
} else {
var temp3 = memory[0x40:0x60];
memory[0x40:0x60] = temp3 + 0x20;
memory[temp3:temp3 + 0x20] = 0x00;
var0 = var4;
var1 = temp3;
label_257F:
arg0 = var1;
r0 = var0;
return r0, arg0;
}
} else {
var temp4 = memory[0x40:0x60];
memory[0x40:0x60] = temp4 + 0x20;
memory[temp4:temp4 + 0x20] = 0x00;
var0 = var2;
var1 = temp4;
goto label_257F;
}
}
function func_42B4(var arg0, var arg1) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = 0x42be;
var1 =
func_5357();
var var2 = 0x00;
var var3 = var2;
var var4 = 0x42d3;
var var5 = 0x0de0b6b3a7640000;
var var6 = arg0;
var4, var5 =
func_47E4(var5, var6);
var temp0 = var4;
var2 = temp0;
var3 = var5;
var4 = 0x00;
var5 = var2;
if (var5 > 0x03) { assert(); }
if (var5 == var4) {
var4 = 0x2578;
var5 = var3;
var6 = memory[arg1:arg1 + 0x20];
var4, var5 =
func_4204(var5, var6);
var1 = var5;
var0 = var4;
label_257F:
arg0 = var1;
r0 = var0;
return r0, arg0;
} else {
var temp1 = memory[0x40:0x60];
memory[0x40:0x60] = temp1 + 0x20;
memory[temp1:temp1 + 0x20] = 0x00;
var0 = var2;
var1 = temp1;
goto label_257F;
}
}
function func_4313(var arg0) returns (var r0) { return memory[arg0:arg0 + 0x20] / 0x0de0b6b3a7640000; }
function func_4322(var arg0, var arg1, var arg2) returns (var r0) {
var var0 = 0x00;
var var1 = 0x45b96fe442630264581b197e84bbada861235052c5a1aadfff9ea4e40a969aa0;
var var2 = arg0;
if (var2 > 0x10) { assert(); }
var var3 = arg1;
if (var3 > 0x50) { assert(); }
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = var2;
memory[temp0 + 0x20:temp0 + 0x20 + 0x20] = var3;
memory[temp0 + 0x40:temp0 + 0x40 + 0x20] = arg2;
var temp1 = memory[0x40:0x60];
log(memory[temp1:temp1 + temp0 - temp1 + 0x60], [stack[-3]]);
var1 = arg0;
if (var1 <= 0x10) { return var1; }
else { assert(); }
}
function func_4388(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
var var1 = 0x45b96fe442630264581b197e84bbada861235052c5a1aadfff9ea4e40a969aa0;
var var2 = arg0;
if (var2 > 0x10) { assert(); }
var var3 = arg1;
if (var3 > 0x50) { assert(); }
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = var2;
memory[temp0 + 0x20:temp0 + 0x20 + 0x20] = var3;
memory[temp0 + 0x40:temp0 + 0x40 + 0x20] = 0x00;
var temp1 = memory[0x40:0x60];
log(memory[temp1:temp1 + temp0 - temp1 + 0x60], [stack[-3]]);
var1 = arg0;
if (var1 <= 0x10) { return var1; }
else { assert(); }
}
function func_43EE(var arg0, var arg1) returns (var r0) {
var temp0 = memory[0x40:0x60];
var var0 = 0x00;
var temp1 = arg1;
var temp2;
temp2, memory[temp0:temp0 + var0] = address(arg0 & (0x01 << 0xa0) - 0x01).call.gas(!temp1 * 0x08fc).value(temp1)(memory[temp0:temp0 + var0]);
var var1 = !temp2;
if (!var1) { return arg1; }
var temp3 = returndata.length;
memory[0x00:0x00 + temp3] = returndata[0x00:0x00 + temp3];
revert(memory[0x00:0x00 + returndata.length]);
}
function func_442E(var arg0, var arg1, var arg2) returns (var r0, var arg0) {
var var0 = 0x00;
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x3205e017 * (0x01 << 0xe0);
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = address(this);
var temp1 = (0x01 << 0xa0) - 0x01;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = temp1 & arg1;
var var1 = var0;
var var2 = var1;
var var3 = storage[var2] / 0x01000000 & temp1;
var var4 = 0x3205e017;
var var5 = temp0 + 0x44;
var var6 = 0x20;
var var7 = memory[0x40:0x60];
var var8 = temp0 - var7 + 0x44;
var var9 = var7;
var var10 = var2;
var var11 = var3;
var var12 = !address(var11).code.length;
if (var12) { revert(memory[0x00:0x00]); }
var temp2;
temp2, memory[var7:var7 + var6] = address(var11).call.gas(msg.gas).value(var10)(memory[var9:var9 + var8]);
var6 = !temp2;
if (!var6) {
var3 = memory[0x40:0x60];
var4 = returndata.length;
if (var4 < 0x20) { revert(memory[0x00:0x00]); }
var2 = memory[var3:var3 + 0x20];
var3 = 0x44c5;
var3 =
func_23F2();
if (storage[0x08] != var3) {
var temp29 = memory[0x40:0x60];
memory[temp29:temp29 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp29 + 0x04:temp29 + 0x04 + 0x20] = 0x20;
memory[temp29 + 0x24:temp29 + 0x24 + 0x20] = 0x03;
memory[temp29 + 0x44:temp29 + 0x44 + 0x20] = 0x08a647 * (0x01 << 0xeb);
var temp30 = memory[0x40:0x60];
revert(memory[temp30:temp30 + temp29 - temp30 + 0x64]);
} else if (!var2) {
var3 = 0x454d;
var3 =
func_5311();
memory[0x00:0x20] = arg1 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x11;
memory[var3 + 0x60:var3 + 0x60 + 0x20] = storage[keccak256(memory[0x00:0x40]) + 0x01];
var4 = 0x4577;
var5 = arg1;
var4, var5 =
func_330C(var5);
var temp3 = var3;
memory[temp3 + 0x80:temp3 + 0x80 + 0x20] = var5;
var6 = temp3 + 0x20;
var7 = var4;
if (var7 > 0x03) { assert(); }
if (var7 > 0x03) { assert(); }
memory[var6:var6 + 0x20] = var7;
var4 = 0x00;
var5 = memory[var3 + 0x20:var3 + 0x20 + 0x20];
if (var5 > 0x03) { assert(); }
if (var5 != var4) {
var temp25 = memory[0x40:0x60];
memory[temp25:temp25 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp25 + 0x04:temp25 + 0x04 + 0x20] = 0x20;
memory[temp25 + 0x24:temp25 + 0x24 + 0x20] = 0x03;
memory[temp25 + 0x44:temp25 + 0x44 + 0x20] = 0x045333 * (0x01 << 0xec);
var temp26 = memory[0x40:0x60];
revert(memory[temp26:temp26 + temp25 - temp26 + 0x64]);
} else if (arg2 != ~0x00) {
var temp4 = var3;
memory[temp4 + 0x40:temp4 + 0x40 + 0x20] = arg2;
var4 = 0x461d;
var5 = arg0;
var6 = memory[temp4 + 0x40:temp4 + 0x40 + 0x20];
var4 =
func_24A1(var5, var6);
label_461D:
var temp5 = var3;
memory[temp5 + 0xe0:temp5 + 0xe0 + 0x20] = var4;
var5 = memory[temp5 + 0x80:temp5 + 0x80 + 0x20];
var6 = var4;
var4 = 0x4632;
var4, var5 =
func_33C0(var5, var6);
var temp6 = var3;
memory[temp6 + 0xa0:temp6 + 0xa0 + 0x20] = var5;
var6 = temp6 + 0x20;
var7 = var4;
if (var7 > 0x03) { assert(); }
if (var7 > 0x03) { assert(); }
memory[var6:var6 + 0x20] = var7;
var4 = 0x00;
var5 = memory[var3 + 0x20:var3 + 0x20 + 0x20];
if (var5 > 0x03) { assert(); }
if (var5 == var4) {
var4 = 0x46b9;
var5 = storage[0x06];
var6 = memory[var3 + 0xe0:var3 + 0xe0 + 0x20];
var4, var5 =
func_33C0(var5, var6);
var temp7 = var3;
memory[temp7 + 0xc0:temp7 + 0xc0 + 0x20] = var5;
var6 = temp7 + 0x20;
var7 = var4;
if (var7 > 0x03) { assert(); }
if (var7 > 0x03) { assert(); }
memory[var6:var6 + 0x20] = var7;
var4 = 0x00;
var5 = memory[var3 + 0x20:var3 + 0x20 + 0x20];
if (var5 > 0x03) { assert(); }
if (var5 == var4) {
var temp8 = var3;
var temp9 = temp8 + 0xa0;
var temp10 = memory[temp9:temp9 + 0x20];
var temp11 = (0x01 << 0xa0) - 0x01;
var temp12 = arg1 & temp11;
memory[0x00:0x20] = temp12;
memory[0x20:0x40] = 0x10;
storage[keccak256(memory[0x00:0x40])] = temp10;
var temp13 = memory[temp9:temp9 + 0x20];
memory[0x20:0x40] = 0x11;
var temp14 = keccak256(memory[0x00:0x40]);
storage[temp14] = temp13;
storage[temp14 + 0x01] = storage[0x09];
var temp15 = memory[temp8 + 0xc0:temp8 + 0xc0 + 0x20];
storage[0x06] = temp15;
var temp16 = memory[temp8 + 0xe0:temp8 + 0xe0 + 0x20];
var temp17 = memory[temp9:temp9 + 0x20];
var temp18 = memory[0x40:0x60];
memory[temp18:temp18 + 0x20] = arg0 & temp11;
memory[temp18 + 0x20:temp18 + 0x20 + 0x20] = temp12;
memory[temp18 + 0x40:temp18 + 0x40 + 0x20] = temp16;
memory[temp18 + 0x60:temp18 + 0x60 + 0x20] = temp17;
memory[temp18 + 0x80:temp18 + 0x80 + 0x20] = temp15;
var temp19 = memory[0x40:0x60];
log(memory[temp19:temp19 + temp18 - temp19 + 0xa0], [0x1a2a22cb034d26d1854bdc6666a5b91fe25efbbb5dcad3b0355478d6f5c362a1]);
r0 = 0x00;
arg0 = memory[temp8 + 0xe0:temp8 + 0xe0 + 0x20];
return r0, arg0;
} else {
var temp20 = memory[0x40:0x60];
memory[temp20:temp20 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp20 + 0x04:temp20 + 0x04 + 0x20] = 0x20;
memory[temp20 + 0x24:temp20 + 0x24 + 0x20] = 0x03;
memory[temp20 + 0x44:temp20 + 0x44 + 0x20] = 0x229999 * (0x01 << 0xe9);
var temp21 = memory[0x40:0x60];
revert(memory[temp21:temp21 + temp20 - temp21 + 0x64]);
}
} else {
var temp22 = memory[0x40:0x60];
memory[temp22:temp22 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp22 + 0x04:temp22 + 0x04 + 0x20] = 0x20;
memory[temp22 + 0x24:temp22 + 0x24 + 0x20] = 0x03;
memory[temp22 + 0x44:temp22 + 0x44 + 0x20] = 0x453331 * (0x01 << 0xe8);
var temp23 = memory[0x40:0x60];
revert(memory[temp23:temp23 + temp22 - temp23 + 0x64]);
}
} else {
var temp24 = var3;
memory[temp24 + 0x40:temp24 + 0x40 + 0x20] = memory[temp24 + 0x80:temp24 + 0x80 + 0x20];
var4 = 0x461d;
var5 = arg0;
var6 = memory[var3 + 0x40:var3 + 0x40 + 0x20];
var4 =
func_24A1(var5, var6);
goto label_461D;
}
} else {
var temp27 = memory[0x40:0x60];
memory[temp27:temp27 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp27 + 0x04:temp27 + 0x04 + 0x20] = 0x20;
memory[temp27 + 0x24:temp27 + 0x24 + 0x20] = 0x03;
memory[temp27 + 0x44:temp27 + 0x44 + 0x20] = 0x453239 * (0x01 << 0xe8);
var temp28 = memory[0x40:0x60];
revert(memory[temp28:temp28 + temp27 - temp28 + 0x64]);
}
} else {
var temp31 = returndata.length;
memory[0x00:0x00 + temp31] = returndata[0x00:0x00 + temp31];
revert(memory[0x00:0x00 + returndata.length]);
}
}
function func_47E4(var arg0, var arg1) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = var0;
if (arg0) {
var var2 = arg1 * arg0;
var var3 = arg1;
var var4 = arg0;
var var5 = var2;
if (!var4) { assert(); }
if (var5 / var4 == var3) {
var0 = 0x00;
var1 = var2;
label_257F:
arg0 = var1;
r0 = var0;
return r0, arg0;
} else {
var0 = 0x02;
var1 = 0x00;
goto label_257F;
}
} else {
var0 = 0x00;
var1 = var0;
goto label_257F;
}
}
function func_4823(var arg0, var arg1) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = var0;
if (arg1) {
var var2 = 0x00;
var var3 = arg1;
var var4 = arg0;
if (!var3) { assert(); }
arg0 = var4 / var3;
r0 = var2;
return r0, arg0;
} else {
var0 = 0x01;
var1 = 0x00;
arg0 = var1;
r0 = var0;
return r0, arg0;
}
}
function func_484E(var arg0, var arg1, var arg2, var arg3) returns (var r0, var arg0) {
var var0 = 0x00;
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x6e2cf5af * (0x01 << 0xe0);
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = address(this);
var temp1 = (0x01 << 0xa0) - 0x01;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = temp1 & arg3;
memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = temp1 & arg1;
memory[temp0 + 0x64:temp0 + 0x64 + 0x20] = arg2;
var var1 = var0;
var var2 = var1;
var var3 = storage[var2] / 0x01000000 & temp1;
var var4 = 0x6e2cf5af;
var var5 = temp0 + 0x84;
var var6 = 0x20;
var var7 = memory[0x40:0x60];
var var8 = temp0 - var7 + 0x84;
var var9 = var7;
var var10 = var2;
var var11 = var3;
var var12 = !address(var11).code.length;
if (var12) { revert(memory[0x00:0x00]); }
var temp2;
temp2, memory[var7:var7 + var6] = address(var11).call.gas(msg.gas).value(var10)(memory[var9:var9 + var8]);
var6 = !temp2;
if (!var6) {
var3 = memory[0x40:0x60];
var4 = returndata.length;
if (var4 < 0x20) { revert(memory[0x00:0x00]); }
var2 = memory[var3:var3 + 0x20];
if (!var2) {
var3 = 0x4933;
var3 =
func_23F2();
if (storage[0x08] == var3) {
var3 = 0x497b;
var3 =
func_23F2();
var4 = arg3 & (0x01 << 0xa0) - 0x01;
var5 = 0x6c540baf;
var temp3 = memory[0x40:0x60];
memory[temp3:temp3 + 0x20] = (var5 & 0xffffffff) << 0xe0;
var6 = temp3 + 0x04;
var7 = 0x20;
var8 = memory[0x40:0x60];
var9 = var6 - var8;
var10 = var8;
var11 = var4;
var12 = !address(var11).code.length;
if (var12) { revert(memory[0x00:0x00]); }
var temp4;
temp4, memory[var8:var8 + var7] = address(var11).staticcall.gas(msg.gas)(memory[var10:var10 + var9]);
var7 = !temp4;
if (!var7) {
var4 = memory[0x40:0x60];
var5 = returndata.length;
if (var5 < 0x20) { revert(memory[0x00:0x00]); }
if (memory[var4:var4 + 0x20] != var3) {
var temp35 = memory[0x40:0x60];
memory[temp35:temp35 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp35 + 0x04:temp35 + 0x04 + 0x20] = 0x20;
memory[temp35 + 0x24:temp35 + 0x24 + 0x20] = 0x02;
memory[temp35 + 0x44:temp35 + 0x44 + 0x20] = 0x4537 * (0x01 << 0xf0);
var temp36 = memory[0x40:0x60];
revert(memory[temp36:temp36 + temp35 - temp36 + 0x64]);
} else if (arg1 & (0x01 << 0xa0) - 0x01 == arg0 & (0x01 << 0xa0) - 0x01) {
var temp33 = memory[0x40:0x60];
memory[temp33:temp33 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp33 + 0x04:temp33 + 0x04 + 0x20] = 0x20;
memory[temp33 + 0x24:temp33 + 0x24 + 0x20] = 0x03;
memory[temp33 + 0x44:temp33 + 0x44 + 0x20] = 0x045353 * (0x01 << 0xec);
var temp34 = memory[0x40:0x60];
revert(memory[temp34:temp34 + temp33 - temp34 + 0x64]);
} else if (!arg2) {
var temp31 = memory[0x40:0x60];
memory[temp31:temp31 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp31 + 0x04:temp31 + 0x04 + 0x20] = 0x20;
memory[temp31 + 0x24:temp31 + 0x24 + 0x20] = 0x03;
memory[temp31 + 0x44:temp31 + 0x44 + 0x20] = 0x453531 * (0x01 << 0xe8);
var temp32 = memory[0x40:0x60];
revert(memory[temp32:temp32 + temp31 - temp32 + 0x64]);
} else if (arg2 != ~0x00) {
var3 = 0x00;
var4 = var3;
var5 = 0x4aff;
var6 = arg0;
var7 = arg1;
var8 = arg2;
var5, var6 =
func_442E(var6, var7, var8);
var3 = var5;
var4 = var6;
if (!var3) {
var5 = 0x00;
var temp5 = memory[0x40:0x60];
memory[temp5:temp5 + 0x20] = 0xc488847b * (0x01 << 0xe0);
memory[temp5 + 0x04:temp5 + 0x04 + 0x20] = address(this);
var temp6 = (0x01 << 0xa0) - 0x01;
memory[temp5 + 0x24:temp5 + 0x24 + 0x20] = temp6 & arg3;
memory[temp5 + 0x44:temp5 + 0x44 + 0x20] = var4;
var6 = var5;
var7 = temp6 & storage[var6] / 0x01000000;
var10 = 0x40;
var8 = 0xc488847b;
var9 = temp5 + 0x64;
var11 = memory[var10:var10 + 0x20];
var12 = temp5 - var11 + 0x64;
var var13 = var11;
var var14 = var7;
var var15 = !address(var14).code.length;
if (var15) { revert(memory[0x00:0x00]); }
var temp7;
temp7, memory[var11:var11 + var10] = address(var14).staticcall.gas(msg.gas)(memory[var13:var13 + var12]);
var10 = !temp7;
if (!var10) {
var7 = memory[0x40:0x60];
var8 = returndata.length;
if (var8 < 0x40) { revert(memory[0x00:0x00]); }
var temp8 = var7;
var5 = memory[temp8:temp8 + 0x20];
var6 = memory[temp8 + 0x20:temp8 + 0x20 + 0x20];
if (!var5) {
var7 = var6;
var8 = arg3 & (0x01 << 0xa0) - 0x01;
var9 = 0x70a08231;
var temp9 = memory[0x40:0x60];
memory[temp9:temp9 + 0x20] = (var9 & 0xffffffff) << 0xe0;
var temp10 = temp9 + 0x04;
memory[temp10:temp10 + 0x20] = arg1 & (0x01 << 0xa0) - 0x01 & (0x01 << 0xa0) - 0x01;
var10 = temp10 + 0x20;
var11 = 0x20;
var12 = memory[0x40:0x60];
var13 = var10 - var12;
var14 = var12;
var15 = var8;
var var16 = !address(var15).code.length;
if (var16) { revert(memory[0x00:0x00]); }
var temp11;
temp11, memory[var12:var12 + var11] = address(var15).staticcall.gas(msg.gas)(memory[var14:var14 + var13]);
var11 = !temp11;
if (!var11) {
var8 = memory[0x40:0x60];
var9 = returndata.length;
if (var9 < 0x20) { revert(memory[0x00:0x00]); }
if (memory[var8:var8 + 0x20] >= var7) {
var7 = 0x00;
if (address(this) != arg3 & (0x01 << 0xa0) - 0x01) {
var temp12 = memory[0x40:0x60];
memory[temp12:temp12 + 0x20] = 0xb2a02ff1 * (0x01 << 0xe0);
var temp13 = (0x01 << 0xa0) - 0x01;
memory[temp12 + 0x04:temp12 + 0x04 + 0x20] = temp13 & arg0;
memory[temp12 + 0x24:temp12 + 0x24 + 0x20] = temp13 & arg1;
memory[temp12 + 0x44:temp12 + 0x44 + 0x20] = var6;
var8 = arg3 & temp13;
var9 = 0xb2a02ff1;
var10 = temp12 + 0x64;
var11 = 0x20;
var12 = memory[0x40:0x60];
var13 = temp12 - var12 + 0x64;
var14 = var12;
var15 = 0x00;
var16 = var8;
var var17 = !address(var16).code.length;
if (var17) { revert(memory[0x00:0x00]); }
var temp14;
temp14, memory[var12:var12 + var11] = address(var16).call.gas(msg.gas).value(var15)(memory[var14:var14 + var13]);
var11 = !temp14;
if (!var11) {
var8 = memory[0x40:0x60];
var9 = returndata.length;
if (var9 < 0x20) { revert(memory[0x00:0x00]); }
var7 = memory[var8:var8 + 0x20];
if (!var7) {
label_4DD0:
var temp15 = memory[0x40:0x60];
var temp16 = (0x01 << 0xa0) - 0x01;
memory[temp15:temp15 + 0x20] = arg0 & temp16;
memory[temp15 + 0x20:temp15 + 0x20 + 0x20] = arg1 & temp16;
memory[temp15 + 0x40:temp15 + 0x40 + 0x20] = var4;
memory[temp15 + 0x60:temp15 + 0x60 + 0x20] = arg3 & temp16;
memory[temp15 + 0x80:temp15 + 0x80 + 0x20] = var6;
var temp17 = memory[0x40:0x60];
log(memory[temp17:temp17 + temp15 - temp17 + 0xa0], [0x298637f684da70674f26509b10f07ec2fbc77a335ab1e7d6215a4b2484d8bb52]);
r0 = 0x00;
arg0 = var4;
return r0, arg0;
} else {
label_4D98:
var temp18 = memory[0x40:0x60];
memory[temp18:temp18 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp18 + 0x04:temp18 + 0x04 + 0x20] = 0x20;
memory[temp18 + 0x24:temp18 + 0x24 + 0x20] = 0x03;
memory[temp18 + 0x44:temp18 + 0x44 + 0x20] = 0x229a9b * (0x01 << 0xe9);
var temp19 = memory[0x40:0x60];
revert(memory[temp19:temp19 + temp18 - temp19 + 0x64]);
}
} else {
var temp20 = returndata.length;
memory[0x00:0x00 + temp20] = returndata[0x00:0x00 + temp20];
revert(memory[0x00:0x00 + returndata.length]);
}
} else {
var8 = 0x4cfd;
var9 = address(this);
var10 = arg0;
var11 = arg1;
var12 = var6;
var8 =
func_381C(var9, var10, var11, var12);
var7 = var8;
if (!var7) { goto label_4DD0; }
else { goto label_4D98; }
}
} else {
var temp21 = memory[0x40:0x60];
memory[temp21:temp21 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp21 + 0x04:temp21 + 0x04 + 0x20] = 0x20;
memory[temp21 + 0x24:temp21 + 0x24 + 0x20] = 0x03;
memory[temp21 + 0x44:temp21 + 0x44 + 0x20] = 0x453535 * (0x01 << 0xe8);
var temp22 = memory[0x40:0x60];
revert(memory[temp22:temp22 + temp21 - temp22 + 0x64]);
}
} else {
var temp23 = returndata.length;
memory[0x00:0x00 + temp23] = returndata[0x00:0x00 + temp23];
revert(memory[0x00:0x00 + returndata.length]);
}
} else {
var temp24 = memory[0x40:0x60];
memory[temp24:temp24 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp24 + 0x04:temp24 + 0x04 + 0x20] = 0x20;
memory[temp24 + 0x24:temp24 + 0x24 + 0x20] = 0x03;
memory[temp24 + 0x44:temp24 + 0x44 + 0x20] = 0x114d4d * (0x01 << 0xea);
var temp25 = memory[0x40:0x60];
revert(memory[temp25:temp25 + temp24 - temp25 + 0x64]);
}
} else {
var temp26 = returndata.length;
memory[0x00:0x00 + temp26] = returndata[0x00:0x00 + temp26];
revert(memory[0x00:0x00 + returndata.length]);
}
} else {
var temp27 = memory[0x40:0x60];
memory[temp27:temp27 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp27 + 0x04:temp27 + 0x04 + 0x20] = 0x20;
memory[temp27 + 0x24:temp27 + 0x24 + 0x20] = 0x03;
memory[temp27 + 0x44:temp27 + 0x44 + 0x20] = 0x453533 * (0x01 << 0xe8);
var temp28 = memory[0x40:0x60];
revert(memory[temp28:temp28 + temp27 - temp28 + 0x64]);
}
} else {
var temp29 = memory[0x40:0x60];
memory[temp29:temp29 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp29 + 0x04:temp29 + 0x04 + 0x20] = 0x20;
memory[temp29 + 0x24:temp29 + 0x24 + 0x20] = 0x03;
memory[temp29 + 0x44:temp29 + 0x44 + 0x20] = 0x229a99 * (0x01 << 0xe9);
var temp30 = memory[0x40:0x60];
revert(memory[temp30:temp30 + temp29 - temp30 + 0x64]);
}
} else {
var temp37 = returndata.length;
memory[0x00:0x00 + temp37] = returndata[0x00:0x00 + temp37];
revert(memory[0x00:0x00 + returndata.length]);
}
} else {
var temp38 = memory[0x40:0x60];
memory[temp38:temp38 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp38 + 0x04:temp38 + 0x04 + 0x20] = 0x20;
memory[temp38 + 0x24:temp38 + 0x24 + 0x20] = 0x02;
memory[temp38 + 0x44:temp38 + 0x44 + 0x20] = 0x4537 * (0x01 << 0xf0);
var temp39 = memory[0x40:0x60];
revert(memory[temp39:temp39 + temp38 - temp39 + 0x64]);
}
} else {
var temp40 = memory[0x40:0x60];
memory[temp40:temp40 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp40 + 0x04:temp40 + 0x04 + 0x20] = 0x20;
memory[temp40 + 0x24:temp40 + 0x24 + 0x20] = 0x03;
memory[temp40 + 0x44:temp40 + 0x44 + 0x20] = 0x453439 * (0x01 << 0xe8);
var temp41 = memory[0x40:0x60];
revert(memory[temp41:temp41 + temp40 - temp41 + 0x64]);
}
} else {
var temp42 = returndata.length;
memory[0x00:0x00 + temp42] = returndata[0x00:0x00 + temp42];
revert(memory[0x00:0x00 + returndata.length]);
}
}
function func_4E3D(var arg0, var arg1) returns (var r0) {
var var0 = 0x00;
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x368f5153 * (0x01 << 0xe2);
memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = address(this);
var temp1 = (0x01 << 0xa0) - 0x01;
memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = temp1 & arg0;
memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = arg1;
var var1 = var0;
var var2 = temp1 & storage[var1] / 0x01000000;
var var3 = 0xda3d454c;
var var4 = temp0 + 0x64;
var var5 = 0x20;
var var6 = memory[0x40:0x60];
var var7 = temp0 - var6 + 0x64;
var var8 = var6;
var var9 = var1;
var var10 = var2;
var var11 = !address(var10).code.length;
if (var11) { revert(memory[0x00:0x00]); }
var temp2;
temp2, memory[var6:var6 + var5] = address(var10).call.gas(msg.gas).value(var9)(memory[var8:var8 + var7]);
var5 = !temp2;
if (!var5) {
var2 = memory[0x40:0x60];
var3 = returndata.length;
if (var3 < 0x20) { revert(memory[0x00:0x00]); }
var1 = memory[var2:var2 + 0x20];
if (!var1) {
var2 = 0x4f1a;
var2 =
func_23F2();
if (storage[0x08] == var2) {
var2 = arg1;
var3 = 0x4f64;
var3 =
getCash();
if (var3 >= var2) {
var2 = 0x4fab;
var2 =
func_5451();
var3 = 0x4fb4;
var4 = arg0;
var3, var4 =
func_330C(var4);
memory[var2 + 0x20:var2 + 0x20 + 0x20] = var4;
var5 = var2;
var6 = var3;
if (var6 > 0x03) { assert(); }
if (var6 > 0x03) { assert(); }
memory[var5:var5 + 0x20] = var6;
var3 = 0x00;
var4 = memory[var2:var2 + 0x20];
if (var4 > 0x03) { assert(); }
if (var4 == var3) {
var3 = 0x5033;
var4 = memory[var2 + 0x20:var2 + 0x20 + 0x20];
var5 = arg1;
var3, var4 =
func_2586(var4, var5);
memory[var2 + 0x40:var2 + 0x40 + 0x20] = var4;
var5 = var2;
var6 = var3;
if (var6 > 0x03) { assert(); }
if (var6 > 0x03) { assert(); }
memory[var5:var5 + 0x20] = var6;
var3 = 0x00;
var4 = memory[var2:var2 + 0x20];
if (var4 > 0x03) { assert(); }
if (var4 == var3) {
var3 = 0x50b0;
var4 = storage[0x06];
var5 = arg1;
var3, var4 =
func_2586(var4, var5);
memory[var2 + 0x60:var2 + 0x60 + 0x20] = var4;
var5 = var2;
var6 = var3;
if (var6 > 0x03) { assert(); }
if (var6 > 0x03) { assert(); }
memory[var5:var5 + 0x20] = var6;
var3 = 0x00;
var4 = memory[var2:var2 + 0x20];
if (var4 > 0x03) { assert(); }
if (var4 == var3) {
var3 = 0x512b;
var4 = arg0;
var5 = arg1;
var3 =
func_43EE(var4, var5);
var temp3 = var2;
var temp4 = temp3 + 0x80;
memory[temp4:temp4 + 0x20] = var3;
var temp5 = memory[temp3 + 0x40:temp3 + 0x40 + 0x20];
memory[0x00:0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x11;
var temp6 = keccak256(memory[0x00:0x40]);
storage[temp6] = temp5;
storage[temp6 + 0x01] = storage[0x09];
storage[0x06] = memory[temp3 + 0x60:temp3 + 0x60 + 0x20];
memory[0x20:0x40] = 0x10;
var3 = 0x517b;
var4 = storage[keccak256(memory[0x00:0x40])];
var5 = memory[temp4:temp4 + 0x20];
var3, var4 =
func_2586(var4, var5);
memory[var2 + 0xa0:var2 + 0xa0 + 0x20] = var4;
var5 = var2;
var6 = var3;
if (var6 > 0x03) { assert(); }
if (var6 > 0x03) { assert(); }
memory[var5:var5 + 0x20] = var6;
var3 = 0x00;
var4 = memory[var2:var2 + 0x20];
if (var4 > 0x03) { assert(); }
if (var4 == var3) {
var temp7 = memory[var2 + 0xa0:var2 + 0xa0 + 0x20];
memory[0x00:0x20] = arg0 & (0x01 << 0xa0) - 0x01;
memory[0x20:0x40] = 0x10;
storage[keccak256(memory[0x00:0x40])] = temp7;
return 0x00;
} else {
var temp8 = memory[0x40:0x60];
memory[temp8:temp8 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp8 + 0x04:temp8 + 0x04 + 0x20] = 0x20;
memory[temp8 + 0x24:temp8 + 0x24 + 0x20] = 0x03;
memory[temp8 + 0x44:temp8 + 0x44 + 0x20] = 0x453237 * (0x01 << 0xe8);
var temp9 = memory[0x40:0x60];
revert(memory[temp9:temp9 + temp8 - temp9 + 0x64]);
}
} else {
var temp10 = memory[0x40:0x60];
memory[temp10:temp10 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp10 + 0x04:temp10 + 0x04 + 0x20] = 0x20;
memory[temp10 + 0x24:temp10 + 0x24 + 0x20] = 0x03;
memory[temp10 + 0x44:temp10 + 0x44 + 0x20] = 0x22991b * (0x01 << 0xe9);
var temp11 = memory[0x40:0x60];
revert(memory[temp11:temp11 + temp10 - temp11 + 0x64]);
}
} else {
var temp12 = memory[0x40:0x60];
memory[temp12:temp12 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp12 + 0x04:temp12 + 0x04 + 0x20] = 0x20;
memory[temp12 + 0x24:temp12 + 0x24 + 0x20] = 0x03;
memory[temp12 + 0x44:temp12 + 0x44 + 0x20] = 0x453235 * (0x01 << 0xe8);
var temp13 = memory[0x40:0x60];
revert(memory[temp13:temp13 + temp12 - temp13 + 0x64]);
}
} else {
var temp14 = memory[0x40:0x60];
memory[temp14:temp14 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp14 + 0x04:temp14 + 0x04 + 0x20] = 0x20;
memory[temp14 + 0x24:temp14 + 0x24 + 0x20] = 0x03;
memory[temp14 + 0x44:temp14 + 0x44 + 0x20] = 0x114c8d * (0x01 << 0xea);
var temp15 = memory[0x40:0x60];
revert(memory[temp15:temp15 + temp14 - temp15 + 0x64]);
}
} else {
var temp16 = memory[0x40:0x60];
memory[temp16:temp16 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp16 + 0x04:temp16 + 0x04 + 0x20] = 0x20;
memory[temp16 + 0x24:temp16 + 0x24 + 0x20] = 0x03;
memory[temp16 + 0x44:temp16 + 0x44 + 0x20] = 0x453233 * (0x01 << 0xe8);
var temp17 = memory[0x40:0x60];
revert(memory[temp17:temp17 + temp16 - temp17 + 0x64]);
}
} else {
var temp18 = memory[0x40:0x60];
memory[temp18:temp18 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp18 + 0x04:temp18 + 0x04 + 0x20] = 0x20;
memory[temp18 + 0x24:temp18 + 0x24 + 0x20] = 0x03;
memory[temp18 + 0x44:temp18 + 0x44 + 0x20] = 0x229919 * (0x01 << 0xe9);
var temp19 = memory[0x40:0x60];
revert(memory[temp19:temp19 + temp18 - temp19 + 0x64]);
}
} else {
var temp20 = memory[0x40:0x60];
memory[temp20:temp20 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp20 + 0x04:temp20 + 0x04 + 0x20] = 0x20;
memory[temp20 + 0x24:temp20 + 0x24 + 0x20] = 0x03;
memory[temp20 + 0x44:temp20 + 0x44 + 0x20] = 0x453231 * (0x01 << 0xe8);
var temp21 = memory[0x40:0x60];
revert(memory[temp21:temp21 + temp20 - temp21 + 0x64]);
}
} else {
var temp22 = returndata.length;
memory[0x00:0x00 + temp22] = returndata[0x00:0x00 + temp22];
revert(memory[0x00:0x00 + returndata.length]);
}
}
function func_5216(var arg0) returns (var r0) { return !!address(arg0).code.length; }
function func_521C(var arg0) returns (var r0, var arg0) {
var var0 = 0x00;
var var1 = var0;
var var2 = 0x00;
var var3 = var2;
var var4 = 0x522a;
var4 =
func_23F2();
if (storage[0x08] == var4) {
var4 = 0x5274;
var var5 = msg.sender;
var var6 = arg0;
var4 =
func_24A1(var5, var6);
var3 = var4;
var2 = storage[0x0a] + var3;
if (var2 >= storage[0x0a]) {
var temp0 = var2;
storage[0x0a] = temp0;
var temp1 = memory[0x40:0x60];
memory[temp1:temp1 + 0x20] = msg.sender;
memory[temp1 + 0x20:temp1 + 0x20 + 0x20] = var3;
memory[temp1 + 0x40:temp1 + 0x40 + 0x20] = temp0;
var temp2 = memory[0x40:0x60];
log(memory[temp2:temp2 + temp1 - temp2 + 0x60], [0xa91e67c5ea634cd43a12c5a482724b03de01e85ca68702a53d0c2f45cb7c1dc5]);
arg0 = var3;
r0 = 0x00;
return r0, arg0;
} else {
var temp3 = memory[0x40:0x60];
memory[temp3:temp3 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp3 + 0x04:temp3 + 0x04 + 0x20] = 0x20;
memory[temp3 + 0x24:temp3 + 0x24 + 0x20] = 0x03;
memory[temp3 + 0x44:temp3 + 0x44 + 0x20] = 0x229a1b * (0x01 << 0xe9);
var temp4 = memory[0x40:0x60];
revert(memory[temp4:temp4 + temp3 - temp4 + 0x64]);
}
} else {
var temp5 = memory[0x40:0x60];
memory[temp5:temp5 + 0x20] = 0x461bcd * (0x01 << 0xe5);
memory[temp5 + 0x04:temp5 + 0x04 + 0x20] = 0x20;
memory[temp5 + 0x24:temp5 + 0x24 + 0x20] = 0x02;
memory[temp5 + 0x44:temp5 + 0x44 + 0x20] = 0x4537 * (0x01 << 0xf0);
var temp6 = memory[0x40:0x60];
revert(memory[temp6:temp6 + temp5 - temp6 + 0x64]);
}
}
function func_5311() returns (var r0) {
var temp0 = memory[0x40:0x60];
memory[0x40:0x60] = temp0 + 0x0100;
memory[temp0:temp0 + 0x20] = 0x00;
var temp1 = temp0 + 0x20;
memory[temp1:temp1 + 0x20] = 0x00;
var temp2 = temp1 + 0x20;
memory[temp2:temp2 + 0x20] = 0x00;
var temp3 = temp2 + 0x20;
memory[temp3:temp3 + 0x20] = 0x00;
var temp4 = temp3 + 0x20;
memory[temp4:temp4 + 0x20] = 0x00;
var temp5 = temp4 + 0x20;
memory[temp5:temp5 + 0x20] = 0x00;
var temp6 = temp5 + 0x20;
memory[temp6:temp6 + 0x20] = 0x00;
memory[temp6 + 0x20:temp6 + 0x20 + 0x20] = 0x00;
return temp0;
}
function func_5357() returns (var r0) {
var temp0 = memory[0x40:0x60];
memory[0x40:0x60] = temp0 + 0x20;
memory[temp0:temp0 + 0x20] = 0x00;
return temp0;
}
function func_536A() returns (var r0) {
var temp0 = memory[0x40:0x60];
memory[0x40:0x60] = temp0 + 0x01a0;
memory[temp0:temp0 + 0x20] = 0x00;
var temp1 = temp0 + 0x20;
memory[temp1:temp1 + 0x20] = 0x00;
var temp2 = temp1 + 0x20;
memory[temp2:temp2 + 0x20] = 0x00;
var temp3 = temp2 + 0x20;
memory[temp3:temp3 + 0x20] = 0x00;
var temp4 = temp3 + 0x20;
memory[temp4:temp4 + 0x20] = 0x00;
var temp5 = temp4 + 0x20;
memory[temp5:temp5 + 0x20] = 0x00;
var temp6 = temp5 + 0x20;
memory[temp6:temp6 + 0x20] = 0x00;
var temp7 = temp6 + 0x20;
memory[temp7:temp7 + 0x20] = 0x00;
var temp8 = temp7 + 0x20;
memory[temp8:temp8 + 0x20] = 0x00;
var temp9 = temp8 + 0x20;
memory[temp9:temp9 + 0x20] = 0x00;
var temp10 = temp9 + 0x20;
memory[temp10:temp10 + 0x20] = 0x00;
var temp11 = temp10 + 0x20;
memory[temp11:temp11 + 0x20] = 0x00;
memory[temp11 + 0x20:temp11 + 0x20 + 0x20] = 0x00;
return temp0;
}
function func_544D(var arg0, var arg1) returns (var r0) { return arg0; }
function func_5451() returns (var r0) {
var temp0 = memory[0x40:0x60];
memory[0x40:0x60] = temp0 + 0xc0;
memory[temp0:temp0 + 0x20] = 0x00;
var temp1 = temp0 + 0x20;
memory[temp1:temp1 + 0x20] = 0x00;
var temp2 = temp1 + 0x20;
memory[temp2:temp2 + 0x20] = 0x00;
var temp3 = temp2 + 0x20;
memory[temp3:temp3 + 0x20] = 0x00;
var temp4 = temp3 + 0x20;
memory[temp4:temp4 + 0x20] = 0x00;
memory[temp4 + 0x20:temp4 + 0x20 + 0x20] = 0x00;
return temp0;
}
}