Online Solidity Decompiler

« Decompile another contract

Address

0xc14d550632db8592d1243edc8b95b0ad06703867 [etherscan.io | etherchain.org]

Public Methods

Method names cached from 4byte.directory.
0x02751cec removeLiquidityETH(address,uint256,uint256,uint256,address,uint256)
0x054d50d4 getAmountOut(uint256,uint256,uint256)
0x18cbafe5 swapExactTokensForETH(uint256,uint256,address[],address,uint256)
0x1f00ca74 getAmountsIn(uint256,address[])
0x2195995c removeLiquidityWithPermit(address,address,uint256,uint256,uint256,address,uint256,bool,uint8,bytes32,bytes32)
0x38ed1739 swapExactTokensForTokens(uint256,uint256,address[],address,uint256)
0x4a25d94a swapTokensForExactETH(uint256,uint256,address[],address,uint256)
0x5b0d5984 removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(address,uint256,uint256,uint256,address,uint256,bool,uint8,bytes32,bytes32)
0x5c11d795 swapExactTokensForTokensSupportingFeeOnTransferTokens(uint256,uint256,address[],address,uint256)
0x704c32cf Unknown
0x791ac947 swapExactTokensForETHSupportingFeeOnTransferTokens(uint256,uint256,address[],address,uint256)
0x7ff36ab5 swapExactETHForTokens(uint256,address[],address,uint256)
0x85f8c259 getAmountIn(uint256,uint256,uint256)
0x8803dbee swapTokensForExactTokens(uint256,uint256,address[],address,uint256)
0xad5c4648 WETH()
0xad615dec quote(uint256,uint256,uint256)
0xaf2979eb removeLiquidityETHSupportingFeeOnTransferTokens(address,uint256,uint256,uint256,address,uint256)
0xb66caf06 Unknown
0xb6f9de95 swapExactETHForTokensSupportingFeeOnTransferTokens(uint256,address[],address,uint256)
0xbaa2abde removeLiquidity(address,address,uint256,uint256,uint256,address,uint256)
0xc45a0155 factory()
0xd06ca61f getAmountsOut(uint256,address[])
0xded9382a removeLiquidityETHWithPermit(address,uint256,uint256,uint256,address,uint256,bool,uint8,bytes32,bytes32)
0xe8e33700 addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256)
0xf305d719 addLiquidityETH(address,uint256,uint256,uint256,address,uint256)
0xfb3bdb41 swapETHForExactTokens(uint256,address[],address,uint256)

Internal Methods

func_0366(arg0, arg1) returns (r0)
func_0519(arg0, arg1) returns (r0)
func_3727(arg0, arg1, arg2) returns (r0)
func_3851(arg0, arg1, arg2, arg5, arg7) returns (r0)
func_3A15(arg0, arg1, arg2) returns (r0)
func_3EFB(arg0, arg1, arg2) returns (r0)
func_402C(arg0, arg1, arg2, arg5, arg7) returns (r0)
func_4240(arg0, arg1, arg2) returns (r0)
func_4875(arg0, arg1, arg2) returns (r0)
func_49B7(arg0, arg1) returns (r0, r1)
func_4B61(arg0, arg1, arg2) returns (r0)
func_53BA(arg0)
func_53DF(arg0) returns (r0)
addLiquidityETH(arg0, arg1) returns (r0, r1, r2, r3, r4, r5)
getAmountIn(arg0, arg1) returns (r0, r1, r2)
func_5479(arg0, arg1) returns (r0, r1)
swapExactTokensForTokensSupportingFeeOnTransferTokens(arg0, arg1) returns (r0, r1, r2, r3, r4, r5)
func_5531(arg0, arg1) returns (r0)
func_55A4(arg0, arg1) returns (r0, r1)
func_5693(arg0)
func_56A1(arg0) returns (r0)
func_56B2(arg0, arg1) returns (r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, r10)
func_575C(arg0, arg1) returns (r0, r1, r2, r3, r4, r5, r6, r7, r8, r9)
swapETHForExactTokens(arg0, arg1) returns (r0, r1, r2, r3, r4)
removeLiquidity(arg0, arg1) returns (r0, r1, r2, r3, r4, r5, r6)
func_58CB(arg0, arg1) returns (r0, r1, r2, r3, r4, r5, r6, r7)
func_5976(arg0, arg1) returns (r0)
func_59D9(arg0, arg1) returns (r0)
func_5A7B(arg0, arg1) returns (r0)
func_5A93(arg0) returns (r0)
func_5B47(arg0) returns (r0)
func_5B7C(arg0, arg1) returns (r0)
func_5BB9(arg0, arg1) returns (r0)

Decompilation

contract Contract { function main() { memory[0x40:0x60] = 0x80; if (msg.data.length >= 0x04) { var0 = msg.data[0x00:0x20] >> 0xe0; if (0x8803dbee > var0) { if (0x4a25d94a > var0) { if (0x1f00ca74 > var0) { if (var0 == 0x02751cec) { // Dispatch table entry for removeLiquidityETH(address,uint256,uint256,uint256,address,uint256) var var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x0216; var var2 = 0x0211; var var3 = msg.data.length; var var4 = 0x04; var var5; var var6; var var7; var2, var3, var4, var5, var6, var7 = addLiquidityETH(var3, var4); label_059F: var var8 = 0x00; var var9 = var8; var var10 = var7; if (var10 >= block.timestamp) { var var11 = 0x0641; var var12 = var2; var var13 = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2; var var14 = var3; var var15 = var4; var var16 = var5; var var17 = address(this); var var18 = var7; label_26A8: var var19 = 0x00; var var20 = var19; var var21 = var18; if (var21 >= block.timestamp) { var var22 = 0x00; var var23 = 0x2743; var var24 = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f; var var25 = var12; var var26 = var13; var23 = func_3A15(var24, var25, var26); var temp0 = memory[0x40:0x60]; memory[temp0:temp0 + 0x20] = 0x23b872dd00000000000000000000000000000000000000000000000000000000; memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = msg.sender; var temp1 = var23; var temp2 = temp1 & 0xffffffffffffffffffffffffffffffffffffffff; memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = temp2; memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = var14; var23 = temp2; var22 = temp1; var24 = 0x23b872dd; var25 = temp0 + 0x64; var temp3 = memory[0x40:0x60]; var temp4; temp4, memory[temp3:temp3 + 0x20] = address(var23).call.gas(msg.gas)(memory[temp3:temp3 + var25 - temp3]); var26 = !temp4; if (!var26) { var temp5 = memory[0x40:0x60]; var temp6 = returndata.length; memory[0x40:0x60] = temp5 + (temp6 + 0x1f & ~0x1f); var23 = 0x27e3; var25 = temp5; var24 = var25 + temp6; var26 = 0x00; if (var24 - var25 i< 0x20) { revert(memory[0x00:0x00]); } var var27 = memory[var25:var25 + 0x20]; var var28 = 0x0bf3; var var29 = var27; func_5693(var29); label_0BF3: var23 = var27; // Error: Could not resolve jump destination! } else { var temp7 = returndata.length; memory[0x00:0x00 + temp7] = returndata[0x00:0x00 + temp7]; revert(memory[0x00:0x00 + returndata.length]); } } else { var temp8 = memory[0x40:0x60]; memory[temp8:temp8 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp8 + 0x04:temp8 + 0x04 + 0x20] = 0x20; memory[temp8 + 0x24:temp8 + 0x24 + 0x20] = 0x19; memory[temp8 + 0x44:temp8 + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000; var22 = temp8 + 0x64; label_0609: var temp9 = memory[0x40:0x60]; revert(memory[temp9:temp9 + var22 - temp9]); } } else { var temp10 = memory[0x40:0x60]; memory[temp10:temp10 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp10 + 0x04:temp10 + 0x04 + 0x20] = 0x20; memory[temp10 + 0x24:temp10 + 0x24 + 0x20] = 0x19; memory[temp10 + 0x44:temp10 + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000; var11 = temp10 + 0x64; goto label_0609; } } else if (var0 == 0x054d50d4) { // Dispatch table entry for getAmountOut(uint256,uint256,uint256) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x0250; var2 = 0x024b; var3 = msg.data.length; var4 = 0x04; var2, var3, var4 = getAmountIn(var3, var4); var temp11 = memory[0x40:0x60]; memory[temp11:temp11 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp11 + 0x04:temp11 + 0x04 + 0x20] = 0x20; memory[temp11 + 0x24:temp11 + 0x24 + 0x20] = 0x1d; memory[temp11 + 0x44:temp11 + 0x44 + 0x20] = 0x446570726563617465643a2055736520676574416d6f756e74734f7574000000; var5 = 0x00; var6 = temp11 + 0x64; goto label_0609; } else if (var0 == 0x18cbafe5) { // Dispatch table entry for swapExactTokensForETH(uint256,uint256,address[],address,uint256) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x027e; var2 = 0x0279; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6, var7 = swapExactTokensForTokensSupportingFeeOnTransferTokens(var3, var4); var8 = 0x60; var9 = var7; if (var9 >= block.timestamp) { var10 = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 & 0xffffffffffffffffffffffffffffffffffffffff; var11 = var4; var12 = var5; var13 = 0x081d; var14 = 0x01; var15 = var12; var13 = func_5976(var14, var15); if (var13 < var12) { var temp12 = var13 * 0x20 + var11; var temp13 = temp12 + 0x20; var11 = 0x0841; var13 = temp12; var12 = temp13; label_59BC: var14 = 0x00; if (var12 - var13 i< 0x20) { revert(memory[0x00:0x00]); } var15 = msg.data[var13:var13 + 0x20]; var16 = 0x0bf3; var17 = var15; func_53BA(var17); goto label_0BF3; } else { var14 = 0x082c; label_598D: memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x32; revert(memory[0x00:0x24]); } } else { var temp14 = memory[0x40:0x60]; memory[temp14:temp14 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp14 + 0x04:temp14 + 0x04 + 0x20] = 0x20; memory[temp14 + 0x24:temp14 + 0x24 + 0x20] = 0x19; memory[temp14 + 0x44:temp14 + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000; var10 = temp14 + 0x64; goto label_0609; } } else { revert(memory[0x00:0x00]); } } else if (var0 == 0x1f00ca74) { // Dispatch table entry for getAmountsIn(uint256,address[]) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x027e; var2 = 0x02a6; var3 = msg.data.length; var4 = 0x04; var2, var3 = func_55A4(var3, var4); var4 = 0x60; var5 = 0x0bf3; var6 = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f; var7 = var2; var8 = var3; var5 = func_3EFB(var6, var7, var8); goto label_0BF3; } else if (var0 == 0x2195995c) { // Dispatch table entry for removeLiquidityWithPermit(address,address,uint256,uint256,uint256,address,uint256,bool,uint8,bytes32,bytes32) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x0216; var2 = 0x02c6; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12 = func_56B2(var3, var4); var13 = 0x00; var14 = var13; var15 = 0x00; var16 = 0x0c2a; var17 = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f; var18 = var2; var19 = var3; var16 = func_3A15(var17, var18, var19); var15 = var16; var16 = 0x00; if (var9) { var temp15 = memory[0x40:0x60]; memory[temp15:temp15 + 0x20] = 0xd505accf00000000000000000000000000000000000000000000000000000000; memory[temp15 + 0x04:temp15 + 0x04 + 0x20] = msg.sender; memory[temp15 + 0x24:temp15 + 0x24 + 0x20] = address(this); memory[temp15 + 0x44:temp15 + 0x44 + 0x20] = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff; memory[temp15 + 0x64:temp15 + 0x64 + 0x20] = var8; memory[temp15 + 0x84:temp15 + 0x84 + 0x20] = var10 & 0xff; memory[temp15 + 0xa4:temp15 + 0xa4 + 0x20] = var11; memory[temp15 + 0xc4:temp15 + 0xc4 + 0x20] = var12; var16 = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff; var17 = var15 & 0xffffffffffffffffffffffffffffffffffffffff; var18 = 0xd505accf; var19 = temp15 + 0xe4; var20 = 0x00; var21 = memory[0x40:0x60]; var22 = var19 - var21; var23 = var21; var24 = 0x00; var25 = var17; var26 = !address(var25).code.length; if (var26) { revert(memory[0x00:0x00]); } label_0CF0: var temp16; temp16, memory[var21:var21 + var20] = address(var25).call.gas(msg.gas).value(var24)(memory[var23:var23 + var22]); var20 = !temp16; if (!var20) { var17 = 0x0d17; var18 = var2; var19 = var3; var20 = var4; var21 = var5; var22 = var6; var23 = var7; var24 = var8; goto label_26A8; } else { var temp17 = returndata.length; memory[0x00:0x00 + temp17] = returndata[0x00:0x00 + temp17]; revert(memory[0x00:0x00 + returndata.length]); } } else { var17 = var4; var temp18 = memory[0x40:0x60]; memory[temp18:temp18 + 0x20] = 0xd505accf00000000000000000000000000000000000000000000000000000000; memory[temp18 + 0x04:temp18 + 0x04 + 0x20] = msg.sender; memory[temp18 + 0x24:temp18 + 0x24 + 0x20] = address(this); memory[temp18 + 0x44:temp18 + 0x44 + 0x20] = var17; memory[temp18 + 0x64:temp18 + 0x64 + 0x20] = var8; memory[temp18 + 0x84:temp18 + 0x84 + 0x20] = var10 & 0xff; memory[temp18 + 0xa4:temp18 + 0xa4 + 0x20] = var11; memory[temp18 + 0xc4:temp18 + 0xc4 + 0x20] = var12; var16 = var17; var17 = var15 & 0xffffffffffffffffffffffffffffffffffffffff; var18 = 0xd505accf; var19 = temp18 + 0xe4; var20 = 0x00; var21 = memory[0x40:0x60]; var22 = var19 - var21; var23 = var21; var24 = 0x00; var25 = var17; var26 = !address(var25).code.length; if (!var26) { goto label_0CF0; } else { revert(memory[0x00:0x00]); } } } else if (var0 == 0x38ed1739) { // Dispatch table entry for swapExactTokensForTokens(uint256,uint256,address[],address,uint256) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x027e; var2 = 0x02e6; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6, var7 = swapExactTokensForTokensSupportingFeeOnTransferTokens(var3, var4); var8 = 0x60; var9 = var7; if (var9 >= block.timestamp) { var10 = 0x0dfc; var11 = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f; var12 = var2; var temp19 = var5; var temp20 = memory[0x40:0x60]; memory[0x40:0x60] = temp20 + temp19 * 0x20 + 0x20; var13 = temp20; memory[var13:var13 + 0x20] = temp19; var temp21 = var13 + 0x20; var temp22 = temp19 * 0x20; memory[temp21:temp21 + temp22] = msg.data[var4:var4 + temp22]; memory[temp21 + temp22:temp21 + temp22 + 0x20] = 0x00; var10 = func_3727(var11, var12, var13); var temp23 = var10; var8 = temp23; var10 = var3; var11 = var8; var12 = 0x0e0e; var14 = memory[var11:var11 + 0x20]; var13 = 0x01; var12 = func_5976(var13, var14); if (var12 >= memory[var11:var11 + 0x20]) { var13 = 0x0e1e; goto label_598D; } else if (memory[var12 * 0x20 + 0x20 + var11:var12 * 0x20 + 0x20 + var11 + 0x20] >= var10) { label_0EB4: var10 = 0x0eca; var11 = var4; var12 = var5; var13 = 0x00; if (var13 < var12) { var temp24 = var13 * 0x20 + var11; var temp25 = temp24 + 0x20; var11 = 0x09ff; var12 = temp25; var13 = temp24; goto label_59BC; } else { var14 = 0x09ea; goto label_598D; } } else { var temp26 = memory[0x40:0x60]; memory[temp26:temp26 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp26 + 0x04:temp26 + 0x04 + 0x20] = 0x20; memory[temp26 + 0x24:temp26 + 0x24 + 0x20] = 0x2c; memory[temp26 + 0x44:temp26 + 0x44 + 0x20] = 0x46726178737761705631526f757465723a20494e53554646494349454e545f4f; memory[temp26 + 0x64:temp26 + 0x64 + 0x20] = 0x55545055545f414d4f554e540000000000000000000000000000000000000000; var10 = temp26 + 0x84; goto label_0609; } } else { var temp27 = memory[0x40:0x60]; memory[temp27:temp27 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp27 + 0x04:temp27 + 0x04 + 0x20] = 0x20; memory[temp27 + 0x24:temp27 + 0x24 + 0x20] = 0x19; memory[temp27 + 0x44:temp27 + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000; var10 = temp27 + 0x64; goto label_0609; } } else { revert(memory[0x00:0x00]); } } else if (0x704c32cf > var0) { if (var0 == 0x4a25d94a) { // Dispatch table entry for swapTokensForExactETH(uint256,uint256,address[],address,uint256) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x027e; var2 = 0x0306; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6, var7 = swapExactTokensForTokensSupportingFeeOnTransferTokens(var3, var4); var8 = 0x60; var9 = var7; if (var9 >= block.timestamp) { var10 = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 & 0xffffffffffffffffffffffffffffffffffffffff; var11 = var4; var12 = var5; var13 = 0x0fba; var14 = 0x01; var15 = var12; var13 = func_5976(var14, var15); if (var13 < var12) { var temp28 = var13 * 0x20 + var11; var temp29 = temp28 + 0x20; var11 = 0x0fde; var13 = temp28; var12 = temp29; goto label_59BC; } else { var14 = 0x0fc9; goto label_598D; } } else { var temp30 = memory[0x40:0x60]; memory[temp30:temp30 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp30 + 0x04:temp30 + 0x04 + 0x20] = 0x20; memory[temp30 + 0x24:temp30 + 0x24 + 0x20] = 0x19; memory[temp30 + 0x44:temp30 + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000; var10 = temp30 + 0x64; goto label_0609; } } else if (var0 == 0x5b0d5984) { // Dispatch table entry for removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(address,uint256,uint256,uint256,address,uint256,bool,uint8,bytes32,bytes32) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x0250; var2 = 0x0326; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6, var7, var8, var9, var10, var11 = func_575C(var3, var4); var12 = 0x00; var13 = var12; var14 = 0x11b3; var15 = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f; var16 = var2; var17 = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2; var14 = func_3A15(var15, var16, var17); var13 = var14; var14 = 0x00; if (var8) { var temp31 = memory[0x40:0x60]; memory[temp31:temp31 + 0x20] = 0xd505accf00000000000000000000000000000000000000000000000000000000; memory[temp31 + 0x04:temp31 + 0x04 + 0x20] = msg.sender; memory[temp31 + 0x24:temp31 + 0x24 + 0x20] = address(this); memory[temp31 + 0x44:temp31 + 0x44 + 0x20] = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff; memory[temp31 + 0x64:temp31 + 0x64 + 0x20] = var7; memory[temp31 + 0x84:temp31 + 0x84 + 0x20] = var9 & 0xff; memory[temp31 + 0xa4:temp31 + 0xa4 + 0x20] = var10; memory[temp31 + 0xc4:temp31 + 0xc4 + 0x20] = var11; var14 = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff; var15 = var13 & 0xffffffffffffffffffffffffffffffffffffffff; var16 = 0xd505accf; var17 = temp31 + 0xe4; var18 = 0x00; var19 = memory[0x40:0x60]; var20 = var17 - var19; var21 = var19; var22 = 0x00; var23 = var15; var24 = !address(var23).code.length; if (var24) { revert(memory[0x00:0x00]); } label_1279: var temp32; temp32, memory[var19:var19 + var18] = address(var23).call.gas(msg.gas).value(var22)(memory[var21:var21 + var20]); var18 = !temp32; if (!var18) { var15 = 0x129f; var16 = var2; var17 = var3; var18 = var4; var19 = var5; var20 = var6; var21 = var7; label_2026: var22 = 0x00; var23 = var21; if (var23 >= block.timestamp) { var24 = 0x20c2; var25 = var16; var26 = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2; var27 = var17; var28 = var18; var29 = var19; var var30 = address(this); var var31 = var21; goto label_26A8; } else { var temp33 = memory[0x40:0x60]; memory[temp33:temp33 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp33 + 0x04:temp33 + 0x04 + 0x20] = 0x20; memory[temp33 + 0x24:temp33 + 0x24 + 0x20] = 0x19; memory[temp33 + 0x44:temp33 + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000; var24 = temp33 + 0x64; goto label_0609; } } else { var temp34 = returndata.length; memory[0x00:0x00 + temp34] = returndata[0x00:0x00 + temp34]; revert(memory[0x00:0x00 + returndata.length]); } } else { var15 = var3; var temp35 = memory[0x40:0x60]; memory[temp35:temp35 + 0x20] = 0xd505accf00000000000000000000000000000000000000000000000000000000; memory[temp35 + 0x04:temp35 + 0x04 + 0x20] = msg.sender; memory[temp35 + 0x24:temp35 + 0x24 + 0x20] = address(this); memory[temp35 + 0x44:temp35 + 0x44 + 0x20] = var15; memory[temp35 + 0x64:temp35 + 0x64 + 0x20] = var7; memory[temp35 + 0x84:temp35 + 0x84 + 0x20] = var9 & 0xff; memory[temp35 + 0xa4:temp35 + 0xa4 + 0x20] = var10; memory[temp35 + 0xc4:temp35 + 0xc4 + 0x20] = var11; var14 = var15; var15 = var13 & 0xffffffffffffffffffffffffffffffffffffffff; var16 = 0xd505accf; var17 = temp35 + 0xe4; var18 = 0x00; var19 = memory[0x40:0x60]; var20 = var17 - var19; var21 = var19; var22 = 0x00; var23 = var15; var24 = !address(var23).code.length; if (!var24) { goto label_1279; } else { revert(memory[0x00:0x00]); } } } else if (var0 == 0x5c11d795) { // Dispatch table entry for swapExactTokensForTokensSupportingFeeOnTransferTokens(uint256,uint256,address[],address,uint256) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x01ef; var2 = 0x0346; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6, var7 = swapExactTokensForTokensSupportingFeeOnTransferTokens(var3, var4); var8 = var7; if (var8 >= block.timestamp) { var9 = 0x13ac; var10 = var4; var11 = var5; var12 = 0x00; if (var12 < var11) { var temp36 = var12 * 0x20 + var10; var temp37 = temp36 + 0x20; var10 = 0x1346; var11 = temp37; var12 = temp36; goto label_59BC; } else { var13 = 0x1331; goto label_598D; } } else { var temp38 = memory[0x40:0x60]; memory[temp38:temp38 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp38 + 0x04:temp38 + 0x04 + 0x20] = 0x20; memory[temp38 + 0x24:temp38 + 0x24 + 0x20] = 0x19; memory[temp38 + 0x44:temp38 + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000; var9 = temp38 + 0x64; goto label_0609; } } else { revert(memory[0x00:0x00]); } } else if (var0 == 0x704c32cf) { // Dispatch table entry for 0x704c32cf (unknown) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x027e; var2 = 0x0366; var3 = msg.data.length; var4 = 0x04; var2, var3 = func_55A4(var3, var4); var1 = func_0366(var2, var3); label_027E: var temp39 = var1; var1 = 0x0227; var2 = temp39; var3 = memory[0x40:0x60]; var1 = func_5531(var2, var3); label_0227: var temp40 = memory[0x40:0x60]; return memory[temp40:temp40 + var1 - temp40]; } else if (var0 == 0x791ac947) { // Dispatch table entry for swapExactTokensForETHSupportingFeeOnTransferTokens(uint256,uint256,address[],address,uint256) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x01ef; var2 = 0x0386; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6, var7 = swapExactTokensForTokensSupportingFeeOnTransferTokens(var3, var4); var8 = var7; if (var8 >= block.timestamp) { var9 = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 & 0xffffffffffffffffffffffffffffffffffffffff; var10 = var4; var11 = var5; var12 = 0x16f5; var13 = 0x01; var14 = var11; var12 = func_5976(var13, var14); if (var12 < var11) { var temp41 = var12 * 0x20 + var10; var temp42 = temp41 + 0x20; var10 = 0x1719; var11 = temp42; var12 = temp41; goto label_59BC; } else { var13 = 0x1704; goto label_598D; } } else { var temp43 = memory[0x40:0x60]; memory[temp43:temp43 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp43 + 0x04:temp43 + 0x04 + 0x20] = 0x20; memory[temp43 + 0x24:temp43 + 0x24 + 0x20] = 0x19; memory[temp43 + 0x44:temp43 + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000; var9 = temp43 + 0x64; goto label_0609; } } else if (var0 == 0x7ff36ab5) { // Dispatch table entry for swapExactETHForTokens(uint256,address[],address,uint256) var1 = 0x027e; var2 = 0x0399; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6 = swapETHForExactTokens(var3, var4); var7 = 0x60; var8 = var6; if (var8 >= block.timestamp) { var9 = 0xffffffffffffffffffffffffffffffffffffffff & 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2; var10 = var3; var11 = var4; var12 = 0x00; if (var12 < var11) { var temp44 = var12 * 0x20 + var10; var temp45 = temp44 + 0x20; var10 = 0x1aa3; var12 = temp44; var11 = temp45; goto label_59BC; } else { var13 = 0x1a8e; goto label_598D; } } else { var temp46 = memory[0x40:0x60]; memory[temp46:temp46 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp46 + 0x04:temp46 + 0x04 + 0x20] = 0x20; memory[temp46 + 0x24:temp46 + 0x24 + 0x20] = 0x19; memory[temp46 + 0x44:temp46 + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000; var9 = temp46 + 0x64; goto label_0609; } } else if (var0 == 0x85f8c259) { // Dispatch table entry for getAmountIn(uint256,uint256,uint256) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x0250; var2 = 0x03b9; var3 = msg.data.length; var4 = 0x04; var2, var3, var4 = getAmountIn(var3, var4); var temp47 = memory[0x40:0x60]; memory[temp47:temp47 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp47 + 0x04:temp47 + 0x04 + 0x20] = 0x20; memory[temp47 + 0x24:temp47 + 0x24 + 0x20] = 0x1c; memory[temp47 + 0x44:temp47 + 0x44 + 0x20] = 0x446570726563617465643a2055736520676574416d6f756e7473496e00000000; var5 = 0x00; var6 = temp47 + 0x64; goto label_0609; } else { revert(memory[0x00:0x00]); } } else if (0xbaa2abde > var0) { if (0xaf2979eb > var0) { if (var0 == 0x8803dbee) { // Dispatch table entry for swapTokensForExactTokens(uint256,uint256,address[],address,uint256) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x027e; var2 = 0x03d9; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6, var7 = swapExactTokensForTokensSupportingFeeOnTransferTokens(var3, var4); var8 = 0x60; var9 = var7; if (var9 >= block.timestamp) { var10 = 0x1f65; var11 = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f; var12 = var2; var temp48 = var5; var temp49 = memory[0x40:0x60]; memory[0x40:0x60] = temp49 + temp48 * 0x20 + 0x20; var13 = temp49; memory[var13:var13 + 0x20] = temp48; var temp50 = var13 + 0x20; var temp51 = temp48 * 0x20; memory[temp50:temp50 + temp51] = msg.data[var4:var4 + temp51]; memory[temp50 + temp51:temp50 + temp51 + 0x20] = 0x00; var10 = func_4240(var11, var12, var13); var temp52 = var10; var8 = temp52; var10 = var3; var11 = var8; var12 = 0x00; if (var12 >= memory[var11:var11 + 0x20]) { var13 = 0x1f7b; goto label_598D; } else if (memory[var12 * 0x20 + 0x20 + var11:var12 * 0x20 + 0x20 + var11 + 0x20] <= var10) { goto label_0EB4; } else { var temp53 = memory[0x40:0x60]; memory[temp53:temp53 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp53 + 0x04:temp53 + 0x04 + 0x20] = 0x20; memory[temp53 + 0x24:temp53 + 0x24 + 0x20] = 0x28; memory[temp53 + 0x44:temp53 + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558434553534956455f494e5055; memory[temp53 + 0x64:temp53 + 0x64 + 0x20] = 0x545f414d4f554e54000000000000000000000000000000000000000000000000; var10 = temp53 + 0x84; goto label_0609; } } else { var temp54 = memory[0x40:0x60]; memory[temp54:temp54 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp54 + 0x04:temp54 + 0x04 + 0x20] = 0x20; memory[temp54 + 0x24:temp54 + 0x24 + 0x20] = 0x19; memory[temp54 + 0x44:temp54 + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000; var10 = temp54 + 0x64; goto label_0609; } } else if (var0 == 0xad5c4648) { // Dispatch table entry for WETH() var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x0412; var2 = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2; label_0412: var temp55 = memory[0x40:0x60]; memory[temp55:temp55 + 0x20] = var2 & 0xffffffffffffffffffffffffffffffffffffffff; var2 = temp55 + 0x20; goto label_0227; } else if (var0 == 0xad615dec) { // Dispatch table entry for quote(uint256,uint256,uint256) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x0250; var2 = 0x0452; var3 = msg.data.length; var4 = 0x04; var2, var3, var4 = getAmountIn(var3, var4); var5 = 0x00; var6 = 0x201e; var7 = var2; var8 = var3; var9 = var4; var6 = func_4875(var7, var8, var9); var1 = var6; // Error: Could not resolve jump destination! } else { revert(memory[0x00:0x00]); } } else if (var0 == 0xaf2979eb) { // Dispatch table entry for removeLiquidityETHSupportingFeeOnTransferTokens(address,uint256,uint256,uint256,address,uint256) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x0250; var2 = 0x0472; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6, var7 = addLiquidityETH(var3, var4); goto label_2026; } else if (var0 == 0xb66caf06) { // Dispatch table entry for 0xb66caf06 (unknown) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x027e; var2 = 0x0492; var3 = msg.data.length; var4 = 0x04; var2, var3 = func_55A4(var3, var4); var4 = 0x60; var5 = 0x0bf3; var6 = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f; var7 = var2; var8 = var3; var5 = func_4240(var6, var7, var8); goto label_0BF3; } else if (var0 == 0xb6f9de95) { // Dispatch table entry for swapExactETHForTokensSupportingFeeOnTransferTokens(uint256,address[],address,uint256) var1 = 0x01ef; var2 = 0x04a5; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6 = swapETHForExactTokens(var3, var4); var7 = var6; if (var7 >= block.timestamp) { var8 = 0xffffffffffffffffffffffffffffffffffffffff & 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2; var9 = var3; var10 = var4; var11 = 0x00; if (var11 < var10) { var temp56 = var11 * 0x20 + var9; var temp57 = temp56 + 0x20; var9 = 0x2302; var10 = temp57; var11 = temp56; goto label_59BC; } else { var12 = 0x22ed; goto label_598D; } } else { var temp58 = memory[0x40:0x60]; memory[temp58:temp58 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp58 + 0x04:temp58 + 0x04 + 0x20] = 0x20; memory[temp58 + 0x24:temp58 + 0x24 + 0x20] = 0x19; memory[temp58 + 0x44:temp58 + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000; var8 = temp58 + 0x64; goto label_0609; } } else { revert(memory[0x00:0x00]); } } else if (0xded9382a > var0) { if (var0 == 0xbaa2abde) { // Dispatch table entry for removeLiquidity(address,address,uint256,uint256,uint256,address,uint256) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x0216; var2 = 0x04c5; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6, var7, var8 = removeLiquidity(var3, var4); goto label_26A8; } else if (var0 == 0xc45a0155) { // Dispatch table entry for factory() var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x0412; var2 = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f; goto label_0412; } else if (var0 == 0xd06ca61f) { // Dispatch table entry for getAmountsOut(uint256,address[]) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x027e; var2 = 0x0519; var3 = msg.data.length; var4 = 0x04; var2, var3 = func_55A4(var3, var4); var1 = func_0519(var2, var3); goto label_027E; } else { revert(memory[0x00:0x00]); } } else if (var0 == 0xded9382a) { // Dispatch table entry for removeLiquidityETHWithPermit(address,uint256,uint256,uint256,address,uint256,bool,uint8,bytes32,bytes32) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x0216; var2 = 0x0539; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6, var7, var8, var9, var10, var11 = func_575C(var3, var4); var12 = 0x00; var13 = var12; var14 = 0x00; var15 = 0x2a7d; var16 = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f; var17 = var2; var18 = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2; var15 = func_3A15(var16, var17, var18); var14 = var15; var15 = 0x00; if (var8) { var temp59 = memory[0x40:0x60]; memory[temp59:temp59 + 0x20] = 0xd505accf00000000000000000000000000000000000000000000000000000000; memory[temp59 + 0x04:temp59 + 0x04 + 0x20] = msg.sender; memory[temp59 + 0x24:temp59 + 0x24 + 0x20] = address(this); memory[temp59 + 0x44:temp59 + 0x44 + 0x20] = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff; memory[temp59 + 0x64:temp59 + 0x64 + 0x20] = var7; memory[temp59 + 0x84:temp59 + 0x84 + 0x20] = var9 & 0xff; memory[temp59 + 0xa4:temp59 + 0xa4 + 0x20] = var10; memory[temp59 + 0xc4:temp59 + 0xc4 + 0x20] = var11; var15 = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff; var16 = var14 & 0xffffffffffffffffffffffffffffffffffffffff; var17 = 0xd505accf; var18 = temp59 + 0xe4; var19 = 0x00; var20 = memory[0x40:0x60]; var21 = var18 - var20; var22 = var20; var23 = 0x00; var24 = var16; var25 = !address(var24).code.length; if (var25) { revert(memory[0x00:0x00]); } label_2B43: var temp60; temp60, memory[var20:var20 + var19] = address(var24).call.gas(msg.gas).value(var23)(memory[var22:var22 + var21]); var19 = !temp60; if (!var19) { var16 = 0x2b69; var17 = var2; var18 = var3; var19 = var4; var20 = var5; var21 = var6; var22 = var7; goto label_059F; } else { var temp61 = returndata.length; memory[0x00:0x00 + temp61] = returndata[0x00:0x00 + temp61]; revert(memory[0x00:0x00 + returndata.length]); } } else { var16 = var3; var temp62 = memory[0x40:0x60]; memory[temp62:temp62 + 0x20] = 0xd505accf00000000000000000000000000000000000000000000000000000000; memory[temp62 + 0x04:temp62 + 0x04 + 0x20] = msg.sender; memory[temp62 + 0x24:temp62 + 0x24 + 0x20] = address(this); memory[temp62 + 0x44:temp62 + 0x44 + 0x20] = var16; memory[temp62 + 0x64:temp62 + 0x64 + 0x20] = var7; memory[temp62 + 0x84:temp62 + 0x84 + 0x20] = var9 & 0xff; memory[temp62 + 0xa4:temp62 + 0xa4 + 0x20] = var10; memory[temp62 + 0xc4:temp62 + 0xc4 + 0x20] = var11; var15 = var16; var16 = var14 & 0xffffffffffffffffffffffffffffffffffffffff; var17 = 0xd505accf; var18 = temp62 + 0xe4; var19 = 0x00; var20 = memory[0x40:0x60]; var21 = var18 - var20; var22 = var20; var23 = 0x00; var24 = var16; var25 = !address(var24).code.length; if (!var25) { goto label_2B43; } else { revert(memory[0x00:0x00]); } } } else if (var0 == 0xe8e33700) { // Dispatch table entry for addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256) var1 = msg.value; if (var1) { revert(memory[0x00:0x00]); } var1 = 0x055e; var2 = 0x0559; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6, var7, var8, var9 = func_58CB(var3, var4); var10 = 0x00; var11 = var10; var12 = 0x00; var13 = var9; if (var13 >= block.timestamp) { var14 = 0x2bfc; var15 = var2; var16 = var3; var17 = var4; var18 = var5; var19 = var6; var20 = var7; label_4E69: var temp63 = memory[0x40:0x60]; memory[temp63:temp63 + 0x20] = 0xe6a4390500000000000000000000000000000000000000000000000000000000; memory[temp63 + 0x04:temp63 + 0x04 + 0x20] = var15 & 0xffffffffffffffffffffffffffffffffffffffff; memory[temp63 + 0x24:temp63 + 0x24 + 0x20] = var16 & 0xffffffffffffffffffffffffffffffffffffffff; var21 = 0x00; var22 = var21; var23 = var22; var24 = 0xffffffffffffffffffffffffffffffffffffffff & 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f; var25 = 0xe6a43905; var26 = temp63 + 0x44; var temp64 = memory[0x40:0x60]; var temp65; temp65, memory[temp64:temp64 + 0x20] = address(var24).staticcall.gas(msg.gas)(memory[temp64:temp64 + var26 - temp64]); var27 = !temp65; if (!var27) { var temp66 = memory[0x40:0x60]; var temp67 = returndata.length; memory[0x40:0x60] = temp66 + (temp67 + 0x1f & ~0x1f); var24 = 0x4f2a; var25 = temp66 + temp67; var26 = temp66; var27 = 0x00; if (var25 - var26 i< 0x20) { revert(memory[0x00:0x00]); } var28 = memory[var26:var26 + 0x20]; var29 = 0x0bf3; var30 = var28; func_53BA(var30); goto label_0BF3; } else { var temp68 = returndata.length; memory[0x00:0x00 + temp68] = returndata[0x00:0x00 + temp68]; revert(memory[0x00:0x00 + returndata.length]); } } else { var temp69 = memory[0x40:0x60]; memory[temp69:temp69 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp69 + 0x04:temp69 + 0x04 + 0x20] = 0x20; memory[temp69 + 0x24:temp69 + 0x24 + 0x20] = 0x19; memory[temp69 + 0x44:temp69 + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000; var14 = temp69 + 0x64; goto label_0609; } } else if (var0 == 0xf305d719) { // Dispatch table entry for addLiquidityETH(address,uint256,uint256,uint256,address,uint256) var1 = 0x055e; var2 = 0x0587; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6, var7 = addLiquidityETH(var3, var4); var8 = 0x00; var9 = var8; var10 = 0x00; var11 = var7; if (var11 >= block.timestamp) { var12 = 0x2d8a; var13 = var2; var14 = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2; var15 = var3; var16 = msg.value; var17 = var4; var18 = var5; goto label_4E69; } else { var temp70 = memory[0x40:0x60]; memory[temp70:temp70 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp70 + 0x04:temp70 + 0x04 + 0x20] = 0x20; memory[temp70 + 0x24:temp70 + 0x24 + 0x20] = 0x19; memory[temp70 + 0x44:temp70 + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000; var12 = temp70 + 0x64; goto label_0609; } } else if (var0 == 0xfb3bdb41) { // Dispatch table entry for swapETHForExactTokens(uint256,address[],address,uint256) var1 = 0x027e; var2 = 0x059a; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6 = swapETHForExactTokens(var3, var4); var7 = 0x60; var8 = var6; if (var8 >= block.timestamp) { var9 = 0xffffffffffffffffffffffffffffffffffffffff & 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2; var10 = var3; var11 = var4; var12 = 0x00; if (var12 < var11) { var temp71 = var12 * 0x20 + var10; var temp72 = temp71 + 0x20; var10 = 0x30ba; var12 = temp71; var11 = temp72; goto label_59BC; } else { var13 = 0x30a5; goto label_598D; } } else { var temp73 = memory[0x40:0x60]; memory[temp73:temp73 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp73 + 0x04:temp73 + 0x04 + 0x20] = 0x20; memory[temp73 + 0x24:temp73 + 0x24 + 0x20] = 0x19; memory[temp73 + 0x44:temp73 + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000; var9 = temp73 + 0x64; goto label_0609; } } else { revert(memory[0x00:0x00]); } } else if (msg.data.length) { revert(memory[0x00:0x00]); } else if (msg.sender == 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 & 0xffffffffffffffffffffffffffffffffffffffff) { stop(); } else { var var0 = 0x01ef; memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x01; revert(memory[0x00:0x24]); } } function func_0366(var arg0, var arg1) returns (var r0) { var var0 = 0x60; var var1 = 0x0bf3; var var2 = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f; var var3 = arg0; var var4 = arg1; return func_3727(var2, var3, var4); } function func_0519(var arg0, var arg1) returns (var r0) { var var0 = 0x60; var var1 = 0x0bf3; var var2 = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f; var var3 = arg0; var var4 = arg1; return func_4B61(var2, var3, var4); } function func_3727(var arg0, var arg1, var arg2) returns (var r0) { var var0 = 0x60; if (memory[arg2:arg2 + 0x20] >= 0x02) { var var1 = memory[arg2:arg2 + 0x20]; if (var1 <= 0xffffffffffffffff) { var temp0 = memory[0x40:0x60]; var temp1 = var1; var1 = temp0; var var2 = temp1; memory[var1:var1 + 0x20] = var2; memory[0x40:0x60] = var1 + var2 * 0x20 + 0x20; if (!var2) { var temp2 = var1; var0 = temp2; var1 = arg1; var2 = var0; var var3 = 0x00; if (var3 < memory[var2:var2 + 0x20]) { label_3815: memory[var3 * 0x20 + 0x20 + var2:var3 * 0x20 + 0x20 + var2 + 0x20] = var1; var1 = 0x00; var2 = 0x3832; var var4 = memory[arg2:arg2 + 0x20]; var3 = 0x01; var2 = func_5976(var3, var4); label_3832: if (var1 >= var2) { return var0; } var2 = 0x00; var3 = 0x3884; var4 = arg0; var var5 = arg2; var var6 = var1; if (var6 < memory[var5:var5 + 0x20]) { var3 = func_3851(arg2, var1, var4, var5, var6); var temp3 = memory[0x40:0x60]; memory[temp3:temp3 + 0x20] = 0x2e0ae37500000000000000000000000000000000000000000000000000000000; memory[temp3 + 0x04:temp3 + 0x04 + 0x20] = block.timestamp; var2 = var3; var temp4 = var2 & 0xffffffffffffffffffffffffffffffffffffffff; var3 = temp4; var4 = 0x2e0ae375; var5 = temp3 + 0x24; var6 = 0x00; 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 temp5; temp5, memory[var7:var7 + var6] = address(var11).call.gas(msg.gas).value(var10)(memory[var9:var9 + var8]); var6 = !temp5; if (!var6) { var3 = var2 & 0xffffffffffffffffffffffffffffffffffffffff; var4 = 0xf140a35a; var5 = var0; var6 = var1; if (var6 < memory[var5:var5 + 0x20]) { var5 = memory[var6 * 0x20 + 0x20 + var5:var6 * 0x20 + 0x20 + var5 + 0x20]; var6 = arg2; var7 = var1; if (var7 < memory[var6:var6 + 0x20]) { var temp6 = memory[var7 * 0x20 + 0x20 + var6:var7 * 0x20 + 0x20 + var6 + 0x20]; var temp7 = memory[0x40:0x60]; memory[temp7:temp7 + 0x20] = (var4 & 0xffffffff) << 0xe0; var temp8 = temp7 + 0x04; memory[temp8:temp8 + 0x20] = var5; memory[temp8 + 0x20:temp8 + 0x20 + 0x20] = temp6 & 0xffffffffffffffffffffffffffffffffffffffff; var5 = temp8 + 0x40; var temp9 = memory[0x40:0x60]; var temp10; temp10, memory[temp9:temp9 + 0x20] = address(var3).staticcall.gas(msg.gas)(memory[temp9:temp9 + var5 - temp9]); var6 = !temp10; if (!var6) { var temp11 = memory[0x40:0x60]; var temp12 = returndata.length; memory[0x40:0x60] = temp11 + (temp12 + 0x1f & ~0x1f); var3 = 0x39d3; var4 = temp11 + temp12; var5 = temp11; var3 = func_59D9(var4, var5); var4 = var0; var5 = 0x39df; var6 = var1; var7 = 0x01; var5 = func_5A7B(var6, var7); if (var5 < memory[var4:var4 + 0x20]) { memory[var5 * 0x20 + var4 + 0x20:var5 * 0x20 + var4 + 0x20 + 0x20] = var3; var2 = var1; var3 = 0x3a05; var4 = var2; var3 = func_5A93(var4); var1 = var3; var2 = 0x3832; var4 = memory[arg2:arg2 + 0x20]; var3 = 0x01; var2 = func_5976(var3, var4); goto label_3832; } else { var6 = 0x39ef; label_598D: memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x32; revert(memory[0x00:0x24]); } } else { var temp13 = returndata.length; memory[0x00:0x00 + temp13] = returndata[0x00:0x00 + temp13]; revert(memory[0x00:0x00 + returndata.length]); } } else { var8 = 0x394e; goto label_598D; } } else { var7 = 0x3934; goto label_598D; } } else { var temp14 = returndata.length; memory[0x00:0x00 + temp14] = returndata[0x00:0x00 + temp14]; revert(memory[0x00:0x00 + returndata.length]); } } else { var7 = 0x3851; goto label_598D; } } else { label_380E: var4 = 0x3815; goto label_598D; } } else { var temp15 = var1; var temp16 = var2 * 0x20; memory[temp15 + 0x20:temp15 + 0x20 + temp16] = msg.data[msg.data.length:msg.data.length + temp16]; var0 = temp15; var1 = arg1; var2 = var0; var3 = 0x00; if (var3 < memory[var2:var2 + 0x20]) { goto label_3815; } else { goto label_380E; } } } else { var2 = 0x37d5; memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x41; revert(memory[0x00:0x24]); } } else { var temp17 = memory[0x40:0x60]; memory[temp17:temp17 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp17 + 0x04:temp17 + 0x04 + 0x20] = 0x20; memory[temp17 + 0x24:temp17 + 0x24 + 0x20] = 0x23; memory[temp17 + 0x44:temp17 + 0x44 + 0x20] = 0x4672617873776170526f757465724c6962726172793a20494e56414c49445f50; memory[temp17 + 0x64:temp17 + 0x64 + 0x20] = 0x4154480000000000000000000000000000000000000000000000000000000000; var1 = temp17 + 0x84; var temp18 = memory[0x40:0x60]; revert(memory[temp18:temp18 + var1 - temp18]); } } function func_3851(var arg0, var arg1, var arg2, var arg3, var arg4) returns (var r0) { arg3 = memory[arg4 * 0x20 + 0x20 + arg3:arg4 * 0x20 + 0x20 + arg3 + 0x20]; arg4 = arg0; var var0 = 0x3867; var var1 = arg1; var var2 = 0x01; var0 = func_5A7B(var1, var2); if (var0 < memory[arg4:arg4 + 0x20]) { arg4 = memory[var0 * 0x20 + 0x20 + arg4:var0 * 0x20 + 0x20 + arg4 + 0x20]; r0 = func_3A15(arg2, arg3, arg4); // Error: Could not resolve method call return address! } else { var1 = 0x3877; memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x32; revert(memory[0x00:0x24]); } } function func_3A15(var arg0, var arg1, var arg2) returns (var r0) { var var0 = 0x00; var var1 = var0; var var2 = 0x00; var var3 = 0x3a24; var var4 = arg1; var var5 = arg2; var3, var4 = func_49B7(var4, var5); var temp0 = memory[0x40:0x60]; memory[temp0 + 0x20:temp0 + 0x20 + 0x20] = (var3 << 0x60) & 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000; memory[temp0 + 0x34:temp0 + 0x34 + 0x20] = (var4 << 0x60) & 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000; var1 = var3; var2 = var4; var temp1 = temp0 + 0x48; var temp2 = memory[0x40:0x60]; memory[temp2:temp2 + 0x20] = temp1 - temp2 - 0x20; memory[0x40:0x60] = temp1; var temp3 = keccak256(memory[temp2 + 0x20:temp2 + 0x20 + memory[temp2:temp2 + 0x20]]); var temp4 = memory[0x40:0x60] + 0x20; memory[temp4:temp4 + 0x20] = 0xff00000000000000000000000000000000000000000000000000000000000000; memory[temp4 + 0x01:temp4 + 0x01 + 0x20] = (arg0 << 0x60) & 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000; memory[temp4 + 0x15:temp4 + 0x15 + 0x20] = temp3; memory[temp4 + 0x35:temp4 + 0x35 + 0x20] = 0x4ce0b4ab368f39e4bd03ec712dfc405eb5a36cdb0294b3887b441cd1c743ced3; var3 = temp4 + 0x55; var temp5 = memory[0x40:0x60]; var temp6 = var3; memory[temp5:temp5 + 0x20] = temp6 - temp5 + 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0; memory[0x40:0x60] = temp6; return keccak256(memory[temp5 + 0x20:temp5 + 0x20 + memory[temp5:temp5 + 0x20]]); } function func_3EFB(var arg0, var arg1, var arg2) returns (var r0) { var var0 = 0x60; if (memory[arg2:arg2 + 0x20] >= 0x02) { var var1 = memory[arg2:arg2 + 0x20]; if (var1 <= 0xffffffffffffffff) { var temp0 = memory[0x40:0x60]; var temp1 = var1; var1 = temp0; var var2 = temp1; memory[var1:var1 + 0x20] = var2; memory[0x40:0x60] = var1 + var2 * 0x20 + 0x20; if (!var2) { var temp2 = var1; var0 = temp2; var1 = arg1; var2 = var0; var var3 = 0x3fe5; var var4 = 0x01; var var5 = memory[var2:var2 + 0x20]; var3 = func_5976(var4, var5); label_3FE5: if (var3 < memory[var2:var2 + 0x20]) { memory[var3 * 0x20 + 0x20 + var2:var3 * 0x20 + 0x20 + var2 + 0x20] = var1; var1 = 0x00; var2 = 0x4011; var4 = memory[arg2:arg2 + 0x20]; var3 = 0x01; var2 = func_5976(var3, var4); var1 = var2; if (!var1) { return var0; } var2 = 0x00; var3 = 0x4056; var4 = arg0; var5 = arg2; var var6 = 0x402c; var var7 = 0x01; var var8 = var1; var6 = func_5976(var7, var8); var3 = func_402C(arg2, var1, var4, var5, var6); var2 = var3; var temp3 = var2 & 0xffffffffffffffffffffffffffffffffffffffff; var3 = temp3; var4 = 0xa1462c19; var temp4 = memory[0x40:0x60]; memory[temp4:temp4 + 0x20] = (var4 & 0xffffffff) << 0xe0; var5 = temp4 + 0x04; var temp5 = memory[0x40:0x60]; var temp6; temp6, memory[temp5:temp5 + 0x20] = address(var3).staticcall.gas(msg.gas)(memory[temp5:temp5 + var5 - temp5]); var6 = !temp6; if (!var6) { var temp7 = memory[0x40:0x60]; var temp8 = returndata.length; memory[0x40:0x60] = temp7 + (temp8 + 0x1f & ~0x1f); var3 = 0x40c7; var5 = temp7; var4 = var5 + temp8; var6 = 0x00; if (var4 - var5 i< 0x20) { revert(memory[0x00:0x00]); } var7 = memory[var5:var5 + 0x20]; var8 = 0x0bf3; var var9 = var7; func_5693(var9); var3 = var7; // Error: Could not resolve jump destination! } else { var temp9 = returndata.length; memory[0x00:0x00 + temp9] = returndata[0x00:0x00 + temp9]; revert(memory[0x00:0x00 + returndata.length]); } } else { var4 = 0x3ff5; memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x32; revert(memory[0x00:0x24]); } } else { var temp10 = var1; var temp11 = var2 * 0x20; memory[temp10 + 0x20:temp10 + 0x20 + temp11] = msg.data[msg.data.length:msg.data.length + temp11]; var0 = temp10; var1 = arg1; var2 = var0; var3 = 0x3fe5; var4 = 0x01; var5 = memory[var2:var2 + 0x20]; var3 = func_5976(var4, var5); goto label_3FE5; } } else { var2 = 0x3fa9; memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x41; revert(memory[0x00:0x24]); } } else { var temp12 = memory[0x40:0x60]; memory[temp12:temp12 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp12 + 0x04:temp12 + 0x04 + 0x20] = 0x20; memory[temp12 + 0x24:temp12 + 0x24 + 0x20] = 0x23; memory[temp12 + 0x44:temp12 + 0x44 + 0x20] = 0x4672617873776170526f757465724c6962726172793a20494e56414c49445f50; memory[temp12 + 0x64:temp12 + 0x64 + 0x20] = 0x4154480000000000000000000000000000000000000000000000000000000000; var1 = temp12 + 0x84; var temp13 = memory[0x40:0x60]; revert(memory[temp13:temp13 + var1 - temp13]); } } function func_402C(var arg0, var arg1, var arg2, var arg3, var arg4) returns (var r0) { if (arg4 < memory[arg3:arg3 + 0x20]) { arg3 = memory[arg4 * 0x20 + 0x20 + arg3:arg4 * 0x20 + 0x20 + arg3 + 0x20]; arg4 = arg0; var var0 = arg1; if (var0 < memory[arg4:arg4 + 0x20]) { arg4 = memory[var0 * 0x20 + 0x20 + arg4:var0 * 0x20 + 0x20 + arg4 + 0x20]; r0 = func_3A15(arg2, arg3, arg4); // Error: Could not resolve method call return address! } else { var var1 = 0x3877; label_598D: memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x32; revert(memory[0x00:0x24]); } } else { var0 = 0x403c; goto label_598D; } } function func_4240(var arg0, var arg1, var arg2) returns (var r0) { var var0 = 0x60; if (memory[arg2:arg2 + 0x20] >= 0x02) { var var1 = memory[arg2:arg2 + 0x20]; if (var1 <= 0xffffffffffffffff) { var temp0 = memory[0x40:0x60]; var temp1 = var1; var1 = temp0; var var2 = temp1; memory[var1:var1 + 0x20] = var2; memory[0x40:0x60] = var1 + var2 * 0x20 + 0x20; if (!var2) { var temp2 = var1; var0 = temp2; var1 = arg1; var2 = var0; var var3 = 0x432a; var var4 = 0x01; var var5 = memory[var2:var2 + 0x20]; var3 = func_5976(var4, var5); label_432A: if (var3 < memory[var2:var2 + 0x20]) { memory[var3 * 0x20 + 0x20 + var2:var3 * 0x20 + 0x20 + var2 + 0x20] = var1; var1 = 0x00; var2 = 0x4356; var4 = memory[arg2:arg2 + 0x20]; var3 = 0x01; var2 = func_5976(var3, var4); var1 = var2; if (!var1) { label_3A0D: return var0; } else { label_4360: var2 = 0x00; var3 = 0x4371; var4 = arg0; var5 = arg2; var var6 = 0x402c; var var7 = 0x01; var var8 = var1; var6 = func_5976(var7, var8); var3 = func_402C(arg2, var1, var4, var5, var6); var temp3 = memory[0x40:0x60]; memory[temp3:temp3 + 0x20] = 0x2e0ae37500000000000000000000000000000000000000000000000000000000; memory[temp3 + 0x04:temp3 + 0x04 + 0x20] = block.timestamp; var2 = var3; var temp4 = var2 & 0xffffffffffffffffffffffffffffffffffffffff; var3 = temp4; var4 = 0x2e0ae375; var5 = temp3 + 0x24; var6 = 0x00; var7 = memory[0x40:0x60]; 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 temp5; temp5, memory[var7:var7 + var6] = address(var11).call.gas(msg.gas).value(var10)(memory[var9:var9 + var8]); var6 = !temp5; if (!var6) { var3 = var2 & 0xffffffffffffffffffffffffffffffffffffffff; var4 = 0x1125f13f; var5 = var0; var6 = var1; if (var6 < memory[var5:var5 + 0x20]) { var5 = memory[var6 * 0x20 + 0x20 + var5:var6 * 0x20 + 0x20 + var5 + 0x20]; var6 = arg2; var7 = 0x4437; var8 = 0x01; var9 = var1; var7 = func_5976(var8, var9); if (var7 < memory[var6:var6 + 0x20]) { var temp6 = memory[var7 * 0x20 + 0x20 + var6:var7 * 0x20 + 0x20 + var6 + 0x20]; var temp7 = memory[0x40:0x60]; memory[temp7:temp7 + 0x20] = (var4 & 0xffffffff) << 0xe0; var temp8 = temp7 + 0x04; memory[temp8:temp8 + 0x20] = var5; memory[temp8 + 0x20:temp8 + 0x20 + 0x20] = temp6 & 0xffffffffffffffffffffffffffffffffffffffff; var5 = temp8 + 0x40; var temp9 = memory[0x40:0x60]; var temp10; temp10, memory[temp9:temp9 + 0x20] = address(var3).staticcall.gas(msg.gas)(memory[temp9:temp9 + var5 - temp9]); var6 = !temp10; if (!var6) { var temp11 = memory[0x40:0x60]; var temp12 = returndata.length; memory[0x40:0x60] = temp11 + (temp12 + 0x1f & ~0x1f); var3 = 0x44cc; var5 = temp11; var4 = var5 + temp12; var3 = func_59D9(var4, var5); var4 = var0; var5 = 0x44d8; var6 = 0x01; var7 = var1; var5 = func_5976(var6, var7); if (var5 < memory[var4:var4 + 0x20]) { memory[var5 * 0x20 + var4 + 0x20:var5 * 0x20 + var4 + 0x20 + 0x20] = var3; var2 = var1; var3 = 0x44fe; var4 = var2; var3 = func_5B47(var4); var1 = var3; if (!var1) { goto label_3A0D; } else { goto label_4360; } } else { var6 = 0x44e8; label_598D: memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x32; revert(memory[0x00:0x24]); } } else { var temp13 = returndata.length; memory[0x00:0x00 + temp13] = returndata[0x00:0x00 + temp13]; revert(memory[0x00:0x00 + returndata.length]); } } else { var8 = 0x4447; goto label_598D; } } else { var7 = 0x4421; goto label_598D; } } else { var temp14 = returndata.length; memory[0x00:0x00 + temp14] = returndata[0x00:0x00 + temp14]; revert(memory[0x00:0x00 + returndata.length]); } } } else { var4 = 0x433a; goto label_598D; } } else { var temp15 = var1; var temp16 = var2 * 0x20; memory[temp15 + 0x20:temp15 + 0x20 + temp16] = msg.data[msg.data.length:msg.data.length + temp16]; var0 = temp15; var1 = arg1; var2 = var0; var3 = 0x432a; var4 = 0x01; var5 = memory[var2:var2 + 0x20]; var3 = func_5976(var4, var5); goto label_432A; } } else { var2 = 0x42ee; memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x41; revert(memory[0x00:0x24]); } } else { var temp17 = memory[0x40:0x60]; memory[temp17:temp17 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp17 + 0x04:temp17 + 0x04 + 0x20] = 0x20; memory[temp17 + 0x24:temp17 + 0x24 + 0x20] = 0x23; memory[temp17 + 0x44:temp17 + 0x44 + 0x20] = 0x4672617873776170526f757465724c6962726172793a20494e56414c49445f50; memory[temp17 + 0x64:temp17 + 0x64 + 0x20] = 0x4154480000000000000000000000000000000000000000000000000000000000; var1 = temp17 + 0x84; var temp18 = memory[0x40:0x60]; revert(memory[temp18:temp18 + var1 - temp18]); } } function func_4875(var arg0, var arg1, var arg2) returns (var r0) { var var0 = 0x00; if (arg0 > var0) { var var1 = arg1 > 0x00; if (!var1) { if (var1) { label_49A2: var1 = arg1; var var2 = 0x49ad; var var3 = arg2; var var4 = arg0; var2 = func_5B7C(var3, var4); var temp0 = var1; var1 = 0x201e; var temp1 = var2; var2 = temp0; var3 = temp1; return func_5BB9(var2, var3); } else { label_491B: var temp2 = memory[0x40:0x60]; memory[temp2:temp2 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp2 + 0x04:temp2 + 0x04 + 0x20] = 0x20; memory[temp2 + 0x24:temp2 + 0x24 + 0x20] = 0x2d; memory[temp2 + 0x44:temp2 + 0x44 + 0x20] = 0x4672617873776170526f757465724c6962726172793a20494e53554646494349; memory[temp2 + 0x64:temp2 + 0x64 + 0x20] = 0x454e545f4c495155494449545900000000000000000000000000000000000000; var1 = temp2 + 0x84; label_0609: var temp3 = memory[0x40:0x60]; revert(memory[temp3:temp3 + var1 - temp3]); } } else if (arg2 > 0x00) { goto label_49A2; } else { goto label_491B; } } else { var temp4 = memory[0x40:0x60]; memory[temp4:temp4 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp4 + 0x04:temp4 + 0x04 + 0x20] = 0x20; memory[temp4 + 0x24:temp4 + 0x24 + 0x20] = 0x2a; memory[temp4 + 0x44:temp4 + 0x44 + 0x20] = 0x4672617873776170526f757465724c6962726172793a20494e53554646494349; memory[temp4 + 0x64:temp4 + 0x64 + 0x20] = 0x454e545f414d4f554e5400000000000000000000000000000000000000000000; var1 = temp4 + 0x84; goto label_0609; } } function func_49B7(var arg0, var arg1) returns (var r0, var arg0) { var var0 = 0x00; var var1 = var0; if (!((arg0 & 0xffffffffffffffffffffffffffffffffffffffff) - (arg1 & 0xffffffffffffffffffffffffffffffffffffffff))) { var temp2 = memory[0x40:0x60]; memory[temp2:temp2 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp2 + 0x04:temp2 + 0x04 + 0x20] = 0x20; memory[temp2 + 0x24:temp2 + 0x24 + 0x20] = 0x2a; memory[temp2 + 0x44:temp2 + 0x44 + 0x20] = 0x4672617873776170526f757465724c6962726172793a204944454e544943414c; memory[temp2 + 0x64:temp2 + 0x64 + 0x20] = 0x5f41444452455353455300000000000000000000000000000000000000000000; var2 = temp2 + 0x84; goto label_0609; } else if (arg0 & 0xffffffffffffffffffffffffffffffffffffffff < arg1 & 0xffffffffffffffffffffffffffffffffffffffff) { var0 = arg0; var1 = arg1; if (var0 & 0xffffffffffffffffffffffffffffffffffffffff) { label_4B5A: arg0 = var1; r0 = var0; return r0, arg0; } else { label_4AD3: var temp0 = memory[0x40:0x60]; memory[temp0:temp0 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = 0x20; memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = 0x23; memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = 0x4672617873776170526f757465724c6962726172793a205a45524f5f41444452; memory[temp0 + 0x64:temp0 + 0x64 + 0x20] = 0x4553530000000000000000000000000000000000000000000000000000000000; var var2 = temp0 + 0x84; label_0609: var temp1 = memory[0x40:0x60]; revert(memory[temp1:temp1 + var2 - temp1]); } } else { var2 = arg1; var var3 = arg0; var0 = var2; var1 = var3; if (var0 & 0xffffffffffffffffffffffffffffffffffffffff) { goto label_4B5A; } else { goto label_4AD3; } } } function func_4B61(var arg0, var arg1, var arg2) returns (var r0) { var var0 = 0x60; if (memory[arg2:arg2 + 0x20] >= 0x02) { var var1 = memory[arg2:arg2 + 0x20]; if (var1 <= 0xffffffffffffffff) { var temp0 = memory[0x40:0x60]; var temp1 = var1; var1 = temp0; var var2 = temp1; memory[var1:var1 + 0x20] = var2; memory[0x40:0x60] = var1 + var2 * 0x20 + 0x20; if (!var2) { var temp2 = var1; var0 = temp2; var1 = arg1; var2 = var0; var var3 = 0x00; if (var3 < memory[var2:var2 + 0x20]) { label_4C4F: memory[var3 * 0x20 + 0x20 + var2:var3 * 0x20 + 0x20 + var2 + 0x20] = var1; var1 = 0x00; var2 = 0x4c6c; var3 = 0x01; var var4 = memory[arg2:arg2 + 0x20]; var2 = func_5976(var3, var4); if (var1 >= var2) { return var0; } var2 = 0x00; var3 = 0x4c8b; var4 = arg0; var var5 = arg2; var var6 = var1; if (var6 < memory[var5:var5 + 0x20]) { var3 = func_3851(arg2, var1, var4, var5, var6); var2 = var3; var temp3 = var2 & 0xffffffffffffffffffffffffffffffffffffffff; var3 = temp3; var4 = 0xa1462c19; var temp4 = memory[0x40:0x60]; memory[temp4:temp4 + 0x20] = (var4 & 0xffffffff) << 0xe0; var5 = temp4 + 0x04; var temp5 = memory[0x40:0x60]; var temp6; temp6, memory[temp5:temp5 + 0x20] = address(var3).staticcall.gas(msg.gas)(memory[temp5:temp5 + var5 - temp5]); var6 = !temp6; if (!var6) { var temp7 = memory[0x40:0x60]; var temp8 = returndata.length; memory[0x40:0x60] = temp7 + (temp8 + 0x1f & ~0x1f); var3 = 0x4cfc; var4 = temp7 + temp8; var5 = temp7; var6 = 0x00; if (var4 - var5 i< 0x20) { revert(memory[0x00:0x00]); } var var7 = memory[var5:var5 + 0x20]; var var8 = 0x0bf3; var var9 = var7; func_5693(var9); var3 = var7; // Error: Could not resolve jump destination! } else { var temp9 = returndata.length; memory[0x00:0x00 + temp9] = returndata[0x00:0x00 + temp9]; revert(memory[0x00:0x00 + returndata.length]); } } else { var7 = 0x3851; label_598D: memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x32; revert(memory[0x00:0x24]); } } else { label_4C48: var4 = 0x4c4f; goto label_598D; } } else { var temp10 = var1; var temp11 = var2 * 0x20; memory[temp10 + 0x20:temp10 + 0x20 + temp11] = msg.data[msg.data.length:msg.data.length + temp11]; var0 = temp10; var1 = arg1; var2 = var0; var3 = 0x00; if (var3 < memory[var2:var2 + 0x20]) { goto label_4C4F; } else { goto label_4C48; } } } else { var2 = 0x4c0f; memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x41; revert(memory[0x00:0x24]); } } else { var temp12 = memory[0x40:0x60]; memory[temp12:temp12 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp12 + 0x04:temp12 + 0x04 + 0x20] = 0x20; memory[temp12 + 0x24:temp12 + 0x24 + 0x20] = 0x23; memory[temp12 + 0x44:temp12 + 0x44 + 0x20] = 0x4672617873776170526f757465724c6962726172793a20494e56414c49445f50; memory[temp12 + 0x64:temp12 + 0x64 + 0x20] = 0x4154480000000000000000000000000000000000000000000000000000000000; var1 = temp12 + 0x84; var temp13 = memory[0x40:0x60]; revert(memory[temp13:temp13 + var1 - temp13]); } } function func_53BA(var arg0) { var temp0 = arg0; if (temp0 == temp0 & 0xffffffffffffffffffffffffffffffffffffffff) { return; } else { revert(memory[0x00:0x00]); } } function func_53DF(var arg0) returns (var r0) { var var0 = msg.data[arg0:arg0 + 0x20]; var var1 = 0x53ea; var var2 = var0; func_53BA(var2); return var0; } function addLiquidityETH(var arg0, var arg1) returns (var r0, var arg0, var arg1, var r3, var r4, var r5) { r3 = 0x00; r4 = r3; r5 = 0x00; var var3 = r5; var var4 = 0x00; var var5 = var4; if (arg0 - arg1 i< 0xc0) { revert(memory[0x00:0x00]); } var var6 = msg.data[arg1:arg1 + 0x20]; var var7 = 0x5413; var var8 = var6; func_53BA(var8); r3 = var6; var temp0 = arg1; r4 = msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20]; r5 = msg.data[temp0 + 0x40:temp0 + 0x40 + 0x20]; var3 = msg.data[temp0 + 0x60:temp0 + 0x60 + 0x20]; var6 = msg.data[temp0 + 0x80:temp0 + 0x80 + 0x20]; var7 = 0x5438; var8 = var6; func_53BA(var8); var temp1 = r5; r5 = msg.data[arg1 + 0xa0:arg1 + 0xa0 + 0x20]; arg1 = temp1; var temp2 = r4; r4 = var6; arg0 = temp2; var temp3 = r3; r3 = var3; r0 = temp3; return r0, arg0, arg1, r3, r4, r5; } function getAmountIn(var arg0, var arg1) returns (var r0, var arg0, var arg1) { var var0 = 0x00; var var1 = var0; var var2 = 0x00; if (arg0 - arg1 i< 0x60) { revert(memory[0x00:0x00]); } var temp0 = arg1; r0 = msg.data[temp0:temp0 + 0x20]; arg0 = msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20]; arg1 = msg.data[temp0 + 0x40:temp0 + 0x40 + 0x20]; return r0, arg0, arg1; } function func_5479(var arg0, var arg1) returns (var r0, var arg0) { var var0 = 0x00; var var1 = var0; if (arg1 + 0x1f i>= arg0) { revert(memory[0x00:0x00]); } var1 = msg.data[arg1:arg1 + 0x20]; if (var1 > 0xffffffffffffffff) { revert(memory[0x00:0x00]); } var temp0 = arg1; var0 = temp0 + 0x20; if (temp0 + (var1 << 0x05) + 0x20 > arg0) { revert(memory[0x00:0x00]); } arg0 = var1; r0 = var0; return r0, arg0; } function swapExactTokensForTokensSupportingFeeOnTransferTokens(var arg0, var arg1) returns (var r0, var arg0, var arg1, var r3, var r4, var r5) { r3 = 0x00; r4 = r3; r5 = 0x00; var var3 = r5; var var4 = 0x00; var var5 = var4; if (arg0 - arg1 i< 0xa0) { revert(memory[0x00:0x00]); } var temp0 = arg1; r3 = msg.data[temp0:temp0 + 0x20]; r4 = msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20]; var var6 = msg.data[temp0 + 0x40:temp0 + 0x40 + 0x20]; if (var6 > 0xffffffffffffffff) { revert(memory[0x00:0x00]); } var var7 = 0x5508; var var8 = arg0; var var9 = arg1 + var6; var7, var8 = func_5479(var8, var9); r5 = var7; var3 = var8; var6 = msg.data[arg1 + 0x60:arg1 + 0x60 + 0x20]; var7 = 0x551c; var8 = var6; func_53BA(var8); var temp1 = r5; r5 = msg.data[arg1 + 0x80:arg1 + 0x80 + 0x20]; arg1 = temp1; var temp2 = r4; r4 = var6; arg0 = temp2; var temp3 = r3; r3 = var3; r0 = temp3; return r0, arg0, arg1, r3, r4, r5; } function func_5531(var arg0, var arg1) returns (var r0) { var temp0 = arg1; memory[temp0:temp0 + 0x20] = 0x20; var temp1 = arg0; var temp2 = memory[temp1:temp1 + 0x20]; memory[temp0 + 0x20:temp0 + 0x20 + 0x20] = temp2; var var0 = 0x00; var var1 = 0x20; var var2 = var1 + temp1; var var4 = temp2; var var3 = temp0 + 0x40; var var5 = var0; if (var5 >= var4) { label_5569: return var3; } else { label_5556: var temp3 = var2; var temp4 = var3; memory[temp4:temp4 + 0x20] = memory[temp3:temp3 + 0x20]; var temp5 = var1; var2 = temp5 + temp3; var3 = temp5 + temp4; var5 = var5 + 0x01; if (var5 >= var4) { goto label_5569; } else { goto label_5556; } } } function func_55A4(var arg0, var arg1) returns (var r0, var arg0) { var var0 = 0x00; var var1 = var0; if (arg0 - arg1 i< 0x40) { revert(memory[0x00:0x00]); } var temp0 = arg1; var0 = msg.data[temp0:temp0 + 0x20]; var var2 = 0x20; var var3 = msg.data[temp0 + var2:temp0 + var2 + 0x20]; var var4 = 0xffffffffffffffff; if (var3 > var4) { revert(memory[0x00:0x00]); } var temp1 = arg1 + var3; var3 = temp1; if (var3 + 0x1f i>= arg0) { revert(memory[0x00:0x00]); } var var5 = msg.data[var3:var3 + 0x20]; if (var5 <= var4) { var var6 = var5 << 0x05; var temp2 = memory[0x40:0x60]; var var7 = temp2; var temp3 = var7 + (var6 + 0x3f & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0); var var8 = temp3; if (!((var8 > var4) | (var8 < var7))) { memory[0x40:0x60] = var8; var temp4 = var7; memory[temp4:temp4 + 0x20] = var5; var temp5 = var2; var4 = temp4 + temp5; var5 = temp5 + var6 + var3; var7 = temp4; if (var5 > arg0) { revert(memory[0x00:0x00]); } var temp6 = var2 + var3; var3 = temp6; var7 = var7; if (var3 >= var5) { label_5683: arg0 = var7; r0 = var0; return r0, arg0; } else { label_566C: var8 = 0x5674; var var9 = var3; var8 = func_53DF(var9); var temp7 = var4; memory[temp7:temp7 + 0x20] = var8; var temp8 = var2; var3 = temp8 + var3; var4 = temp8 + temp7; var7 = var7; if (var3 >= var5) { goto label_5683; } else { goto label_566C; } } } else { var9 = 0x5640; label_5575: memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x41; revert(memory[0x00:0x24]); } } else { var6 = 0x55fd; goto label_5575; } } function func_5693(var arg0) { var temp0 = arg0; if (temp0 == !!temp0) { return; } else { revert(memory[0x00:0x00]); } } function func_56A1(var arg0) returns (var r0) { var temp0 = msg.data[arg0:arg0 + 0x20]; var var0 = temp0; if (var0 == var0 & 0xff) { return var0; } else { revert(memory[0x00:0x00]); } } function func_56B2(var arg0, var arg1) returns (var r0, var arg0, var arg1, var r3, var r4, var r5, var r6, var r7, var r8, var r9, var r10) { r3 = 0x00; r4 = r3; r5 = 0x00; r6 = r5; r7 = 0x00; r8 = r7; r9 = 0x00; r10 = r9; var var8 = 0x00; var var9 = var8; var var10 = 0x00; if (arg0 - arg1 i< 0x0160) { revert(memory[0x00:0x00]); } var var11 = msg.data[arg1:arg1 + 0x20]; var var12 = 0x56df; var var13 = var11; func_53BA(var13); r3 = var11; var11 = msg.data[arg1 + 0x20:arg1 + 0x20 + 0x20]; var12 = 0x56ef; var13 = var11; func_53BA(var13); r4 = var11; var temp0 = arg1; r5 = msg.data[temp0 + 0x40:temp0 + 0x40 + 0x20]; r6 = msg.data[temp0 + 0x60:temp0 + 0x60 + 0x20]; r7 = msg.data[temp0 + 0x80:temp0 + 0x80 + 0x20]; var11 = msg.data[temp0 + 0xa0:temp0 + 0xa0 + 0x20]; var12 = 0x5714; var13 = var11; func_53BA(var13); r8 = var11; var temp1 = arg1; r9 = msg.data[temp1 + 0xc0:temp1 + 0xc0 + 0x20]; var11 = msg.data[temp1 + 0xe0:temp1 + 0xe0 + 0x20]; var12 = 0x572b; var13 = var11; func_5693(var13); r10 = var11; var11 = 0x573a; var12 = arg1 + 0x0100; var11 = func_56A1(var12); var temp2 = arg1; var temp3 = r10; r10 = msg.data[temp2 + 0x0140:temp2 + 0x0140 + 0x20]; var temp4 = r7; r7 = temp3; var temp5 = r4; r4 = temp4; arg0 = temp5; var temp6 = r9; r9 = msg.data[temp2 + 0x0120:temp2 + 0x0120 + 0x20]; var temp7 = r6; r6 = temp6; var temp8 = r3; r3 = temp7; r0 = temp8; var temp9 = r8; r8 = var11; var temp10 = r5; r5 = temp9; arg1 = temp10; return r0, arg0, arg1, r3, r4, r5, r6, r7, r8, r9, r10; } function func_575C(var arg0, var arg1) returns (var r0, var arg0, var arg1, var r3, var r4, var r5, var r6, var r7, var r8, var r9) { r3 = 0x00; r4 = r3; r5 = 0x00; r6 = r5; r7 = 0x00; r8 = r7; r9 = 0x00; var var7 = r9; var var8 = 0x00; var var9 = var8; if (arg0 - arg1 i< 0x0140) { revert(memory[0x00:0x00]); } var var10 = msg.data[arg1:arg1 + 0x20]; var var11 = 0x5787; var var12 = var10; func_53BA(var12); r3 = var10; var temp0 = arg1; r4 = msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20]; r5 = msg.data[temp0 + 0x40:temp0 + 0x40 + 0x20]; r6 = msg.data[temp0 + 0x60:temp0 + 0x60 + 0x20]; var10 = msg.data[temp0 + 0x80:temp0 + 0x80 + 0x20]; var11 = 0x57ac; var12 = var10; func_53BA(var12); r7 = var10; var temp1 = arg1; r8 = msg.data[temp1 + 0xa0:temp1 + 0xa0 + 0x20]; var10 = msg.data[temp1 + 0xc0:temp1 + 0xc0 + 0x20]; var11 = 0x57c3; var12 = var10; func_5693(var12); r9 = var10; var10 = 0x57d1; var11 = arg1 + 0xe0; var10 = func_56A1(var11); var temp2 = arg1; var temp3 = r9; r9 = msg.data[temp2 + 0x0120:temp2 + 0x0120 + 0x20]; var temp4 = r6; r6 = temp3; var temp5 = r3; r3 = temp4; r0 = temp5; var temp6 = r7; r7 = var10; var temp7 = r4; r4 = temp6; arg0 = temp7; var temp8 = r8; r8 = msg.data[temp2 + 0x0100:temp2 + 0x0100 + 0x20]; var temp9 = r5; r5 = temp8; arg1 = temp9; return r0, arg0, arg1, r3, r4, r5, r6, r7, r8, r9; } function swapETHForExactTokens(var arg0, var arg1) returns (var r0, var arg0, var arg1, var r3, var r4) { r3 = 0x00; r4 = r3; var var2 = 0x00; var var3 = var2; var var4 = 0x00; if (arg0 - arg1 i< 0x80) { revert(memory[0x00:0x00]); } var temp0 = arg1; r3 = msg.data[temp0:temp0 + 0x20]; var var5 = msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20]; if (var5 > 0xffffffffffffffff) { revert(memory[0x00:0x00]); } var var6 = 0x5834; var var7 = arg0; var var8 = arg1 + var5; var6, var7 = func_5479(var7, var8); r4 = var6; var2 = var7; var5 = msg.data[arg1 + 0x40:arg1 + 0x40 + 0x20]; var6 = 0x5848; var7 = var5; func_53BA(var7); var temp1 = r3; r3 = var5; r0 = temp1; arg0 = r4; var temp2 = arg1; arg1 = var2; r4 = msg.data[temp2 + 0x60:temp2 + 0x60 + 0x20]; return r0, arg0, arg1, r3, r4; } function removeLiquidity(var arg0, var arg1) returns (var r0, var arg0, var arg1, var r3, var r4, var r5, var r6) { r3 = 0x00; r4 = r3; r5 = 0x00; r6 = r5; var var4 = 0x00; var var5 = var4; var var6 = 0x00; if (arg0 - arg1 i< 0xe0) { revert(memory[0x00:0x00]); } var var7 = msg.data[arg1:arg1 + 0x20]; var var8 = 0x587f; var var9 = var7; func_53BA(var9); r3 = var7; var7 = msg.data[arg1 + 0x20:arg1 + 0x20 + 0x20]; var8 = 0x588f; var9 = var7; func_53BA(var9); r4 = var7; var temp0 = arg1; r5 = msg.data[temp0 + 0x40:temp0 + 0x40 + 0x20]; r6 = msg.data[temp0 + 0x60:temp0 + 0x60 + 0x20]; var4 = msg.data[temp0 + 0x80:temp0 + 0x80 + 0x20]; var7 = msg.data[temp0 + 0xa0:temp0 + 0xa0 + 0x20]; var8 = 0x58b4; var9 = var7; func_53BA(var9); var temp1 = r6; r6 = msg.data[arg1 + 0xc0:arg1 + 0xc0 + 0x20]; var temp2 = r3; r3 = temp1; r0 = temp2; var temp3 = r4; r4 = var4; arg0 = temp3; var temp4 = r5; r5 = var7; arg1 = temp4; return r0, arg0, arg1, r3, r4, r5, r6; } function func_58CB(var arg0, var arg1) returns (var r0, var arg0, var arg1, var r3, var r4, var r5, var r6, var r7) { r3 = 0x00; r4 = r3; r5 = 0x00; r6 = r5; r7 = 0x00; var var5 = r7; var var6 = 0x00; var var7 = var6; if (arg0 - arg1 i< 0x0100) { revert(memory[0x00:0x00]); } var var8 = msg.data[arg1:arg1 + 0x20]; var var9 = 0x58f3; var var10 = var8; func_53BA(var10); r3 = var8; var8 = msg.data[arg1 + 0x20:arg1 + 0x20 + 0x20]; var9 = 0x5903; var10 = var8; func_53BA(var10); r4 = var8; var temp0 = arg1; r5 = msg.data[temp0 + 0x40:temp0 + 0x40 + 0x20]; r6 = msg.data[temp0 + 0x60:temp0 + 0x60 + 0x20]; r7 = msg.data[temp0 + 0x80:temp0 + 0x80 + 0x20]; var5 = msg.data[temp0 + 0xa0:temp0 + 0xa0 + 0x20]; var8 = msg.data[temp0 + 0xc0:temp0 + 0xc0 + 0x20]; var9 = 0x592f; var10 = var8; func_53BA(var10); var temp1 = r7; r7 = msg.data[arg1 + 0xe0:arg1 + 0xe0 + 0x20]; var temp2 = r4; r4 = temp1; arg0 = temp2; var temp3 = r6; r6 = var8; var temp4 = r3; r3 = temp3; r0 = temp4; var temp5 = r5; r5 = var5; arg1 = temp5; return r0, arg0, arg1, r3, r4, r5, r6, r7; } function func_5976(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg1 >= arg0) { return arg1 - arg0; } var var1 = 0x5988; memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x11; revert(memory[0x00:0x24]); } function func_59D9(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0 - arg1 i>= 0x20) { return memory[arg1:arg1 + 0x20]; } else { revert(memory[0x00:0x00]); } } function func_5A7B(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg1 <= ~arg0) { return arg1 + arg0; } var var1 = 0x5a8e; memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x11; revert(memory[0x00:0x24]); } function func_5A93(var arg0) returns (var r0) { var var0 = 0x00; if (arg0 - 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) { return arg0 + 0x01; } var var1 = 0x5ac4; memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x11; revert(memory[0x00:0x24]); } function func_5B47(var arg0) returns (var r0) { var var0 = 0x00; if (arg0) { return arg0 + 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff; } var var1 = 0x5b56; memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x11; revert(memory[0x00:0x24]); } function func_5B7C(var arg0, var arg1) returns (var r0) { var var0 = 0x00; var temp0 = arg1; if (!(!!temp0 & (arg0 > 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff / temp0))) { return arg1 * arg0; } var var1 = 0x5bb4; memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x11; revert(memory[0x00:0x24]); } function func_5BB9(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0) { return arg1 / arg0; } memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000; memory[0x04:0x24] = 0x12; revert(memory[0x00:0x24]); } }

Disassembly

label_0000: // Inputs[1] { @0007 msg.data.length } 0000 60 PUSH1 0x80 0002 60 PUSH1 0x40 0004 52 MSTORE 0005 60 PUSH1 0x04 0007 36 CALLDATASIZE 0008 10 LT 0009 61 PUSH2 0x01a5 000C 57 *JUMPI // Stack delta = +0 // Outputs[1] { @0004 memory[0x40:0x60] = 0x80 } // Block ends with conditional jump to 0x01a5, if msg.data.length < 0x04 label_000D: // Incoming jump from 0x000C, if not msg.data.length < 0x04 // Inputs[1] { @000F msg.data[0x00:0x20] } 000D 60 PUSH1 0x00 000F 35 CALLDATALOAD 0010 60 PUSH1 0xe0 0012 1C SHR 0013 80 DUP1 0014 63 PUSH4 0x8803dbee 0019 11 GT 001A 61 PUSH2 0x00e1 001D 57 *JUMPI // Stack delta = +1 // Outputs[1] { @0012 stack[0] = msg.data[0x00:0x20] >> 0xe0 } // Block ends with conditional jump to 0x00e1, if 0x8803dbee > msg.data[0x00:0x20] >> 0xe0 label_001E: // Incoming jump from 0x001D, if not 0x8803dbee > msg.data[0x00:0x20] >> 0xe0 // Inputs[1] { @001E stack[-1] } 001E 80 DUP1 001F 63 PUSH4 0xbaa2abde 0024 11 GT 0025 61 PUSH2 0x008a 0028 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x008a, if 0xbaa2abde > stack[-1] label_0029: // Incoming jump from 0x0028, if not 0xbaa2abde > stack[-1] // Inputs[1] { @0029 stack[-1] } 0029 80 DUP1 002A 63 PUSH4 0xded9382a 002F 11 GT 0030 61 PUSH2 0x0064 0033 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0064, if 0xded9382a > stack[-1] label_0034: // Incoming jump from 0x0033, if not 0xded9382a > stack[-1] // Inputs[1] { @0034 stack[-1] } 0034 80 DUP1 0035 63 PUSH4 0xded9382a 003A 14 EQ 003B 61 PUSH2 0x051e 003E 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x051e, if 0xded9382a == stack[-1] label_003F: // Incoming jump from 0x003E, if not 0xded9382a == stack[-1] // Inputs[1] { @003F stack[-1] } 003F 80 DUP1 0040 63 PUSH4 0xe8e33700 0045 14 EQ 0046 61 PUSH2 0x053e 0049 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x053e, if 0xe8e33700 == stack[-1] label_004A: // Incoming jump from 0x0049, if not 0xe8e33700 == stack[-1] // Inputs[1] { @004A stack[-1] } 004A 80 DUP1 004B 63 PUSH4 0xf305d719 0050 14 EQ 0051 61 PUSH2 0x0579 0054 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0579, if 0xf305d719 == stack[-1] label_0055: // Incoming jump from 0x0054, if not 0xf305d719 == stack[-1] // Inputs[1] { @0055 stack[-1] } 0055 80 DUP1 0056 63 PUSH4 0xfb3bdb41 005B 14 EQ 005C 61 PUSH2 0x058c 005F 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x058c, if 0xfb3bdb41 == stack[-1] label_0060: // Incoming jump from 0x005F, if not 0xfb3bdb41 == stack[-1] // Inputs[1] { @0063 memory[0x00:0x00] } 0060 60 PUSH1 0x00 0062 80 DUP1 0063 FD *REVERT // Stack delta = +0 // Outputs[1] { @0063 revert(memory[0x00:0x00]); } // Block terminates label_0064: // Incoming jump from 0x0033, if 0xded9382a > stack[-1] // Inputs[1] { @0065 stack[-1] } 0064 5B JUMPDEST 0065 80 DUP1 0066 63 PUSH4 0xbaa2abde 006B 14 EQ 006C 61 PUSH2 0x04aa 006F 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x04aa, if 0xbaa2abde == stack[-1] label_0070: // Incoming jump from 0x006F, if not 0xbaa2abde == stack[-1] // Inputs[1] { @0070 stack[-1] } 0070 80 DUP1 0071 63 PUSH4 0xc45a0155 0076 14 EQ 0077 61 PUSH2 0x04ca 007A 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x04ca, if 0xc45a0155 == stack[-1] label_007B: // Incoming jump from 0x007A, if not 0xc45a0155 == stack[-1] // Inputs[1] { @007B stack[-1] } 007B 80 DUP1 007C 63 PUSH4 0xd06ca61f 0081 14 EQ 0082 61 PUSH2 0x04fe 0085 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x04fe, if 0xd06ca61f == stack[-1] label_0086: // Incoming jump from 0x0085, if not 0xd06ca61f == stack[-1] // Inputs[1] { @0089 memory[0x00:0x00] } 0086 60 PUSH1 0x00 0088 80 DUP1 0089 FD *REVERT // Stack delta = +0 // Outputs[1] { @0089 revert(memory[0x00:0x00]); } // Block terminates label_008A: // Incoming jump from 0x0028, if 0xbaa2abde > stack[-1] // Inputs[1] { @008B stack[-1] } 008A 5B JUMPDEST 008B 80 DUP1 008C 63 PUSH4 0xaf2979eb 0091 11 GT 0092 61 PUSH2 0x00bb 0095 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x00bb, if 0xaf2979eb > stack[-1] label_0096: // Incoming jump from 0x0095, if not 0xaf2979eb > stack[-1] // Inputs[1] { @0096 stack[-1] } 0096 80 DUP1 0097 63 PUSH4 0xaf2979eb 009C 14 EQ 009D 61 PUSH2 0x0457 00A0 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0457, if 0xaf2979eb == stack[-1] label_00A1: // Incoming jump from 0x00A0, if not 0xaf2979eb == stack[-1] // Inputs[1] { @00A1 stack[-1] } 00A1 80 DUP1 00A2 63 PUSH4 0xb66caf06 00A7 14 EQ 00A8 61 PUSH2 0x0477 00AB 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0477, if 0xb66caf06 == stack[-1] label_00AC: // Incoming jump from 0x00AB, if not 0xb66caf06 == stack[-1] // Inputs[1] { @00AC stack[-1] } 00AC 80 DUP1 00AD 63 PUSH4 0xb6f9de95 00B2 14 EQ 00B3 61 PUSH2 0x0497 00B6 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0497, if 0xb6f9de95 == stack[-1] label_00B7: // Incoming jump from 0x00B6, if not 0xb6f9de95 == stack[-1] // Inputs[1] { @00BA memory[0x00:0x00] } 00B7 60 PUSH1 0x00 00B9 80 DUP1 00BA FD *REVERT // Stack delta = +0 // Outputs[1] { @00BA revert(memory[0x00:0x00]); } // Block terminates label_00BB: // Incoming jump from 0x0095, if 0xaf2979eb > stack[-1] // Inputs[1] { @00BC stack[-1] } 00BB 5B JUMPDEST 00BC 80 DUP1 00BD 63 PUSH4 0x8803dbee 00C2 14 EQ 00C3 61 PUSH2 0x03be 00C6 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x03be, if 0x8803dbee == stack[-1] label_00C7: // Incoming jump from 0x00C6, if not 0x8803dbee == stack[-1] // Inputs[1] { @00C7 stack[-1] } 00C7 80 DUP1 00C8 63 PUSH4 0xad5c4648 00CD 14 EQ 00CE 61 PUSH2 0x03de 00D1 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x03de, if 0xad5c4648 == stack[-1] label_00D2: // Incoming jump from 0x00D1, if not 0xad5c4648 == stack[-1] // Inputs[1] { @00D2 stack[-1] } 00D2 80 DUP1 00D3 63 PUSH4 0xad615dec 00D8 14 EQ 00D9 61 PUSH2 0x0437 00DC 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0437, if 0xad615dec == stack[-1] label_00DD: // Incoming jump from 0x00DC, if not 0xad615dec == stack[-1] // Inputs[1] { @00E0 memory[0x00:0x00] } 00DD 60 PUSH1 0x00 00DF 80 DUP1 00E0 FD *REVERT // Stack delta = +0 // Outputs[1] { @00E0 revert(memory[0x00:0x00]); } // Block terminates label_00E1: // Incoming jump from 0x001D, if 0x8803dbee > msg.data[0x00:0x20] >> 0xe0 // Inputs[1] { @00E2 stack[-1] } 00E1 5B JUMPDEST 00E2 80 DUP1 00E3 63 PUSH4 0x4a25d94a 00E8 11 GT 00E9 61 PUSH2 0x014e 00EC 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x014e, if 0x4a25d94a > stack[-1] label_00ED: // Incoming jump from 0x00EC, if not 0x4a25d94a > stack[-1] // Inputs[1] { @00ED stack[-1] } 00ED 80 DUP1 00EE 63 PUSH4 0x704c32cf 00F3 11 GT 00F4 61 PUSH2 0x0128 00F7 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0128, if 0x704c32cf > stack[-1] label_00F8: // Incoming jump from 0x00F7, if not 0x704c32cf > stack[-1] // Inputs[1] { @00F8 stack[-1] } 00F8 80 DUP1 00F9 63 PUSH4 0x704c32cf 00FE 14 EQ 00FF 61 PUSH2 0x034b 0102 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x034b, if 0x704c32cf == stack[-1] label_0103: // Incoming jump from 0x0102, if not 0x704c32cf == stack[-1] // Inputs[1] { @0103 stack[-1] } 0103 80 DUP1 0104 63 PUSH4 0x791ac947 0109 14 EQ 010A 61 PUSH2 0x036b 010D 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x036b, if 0x791ac947 == stack[-1] label_010E: // Incoming jump from 0x010D, if not 0x791ac947 == stack[-1] // Inputs[1] { @010E stack[-1] } 010E 80 DUP1 010F 63 PUSH4 0x7ff36ab5 0114 14 EQ 0115 61 PUSH2 0x038b 0118 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x038b, if 0x7ff36ab5 == stack[-1] label_0119: // Incoming jump from 0x0118, if not 0x7ff36ab5 == stack[-1] // Inputs[1] { @0119 stack[-1] } 0119 80 DUP1 011A 63 PUSH4 0x85f8c259 011F 14 EQ 0120 61 PUSH2 0x039e 0123 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x039e, if 0x85f8c259 == stack[-1] label_0124: // Incoming jump from 0x0123, if not 0x85f8c259 == stack[-1] // Inputs[1] { @0127 memory[0x00:0x00] } 0124 60 PUSH1 0x00 0126 80 DUP1 0127 FD *REVERT // Stack delta = +0 // Outputs[1] { @0127 revert(memory[0x00:0x00]); } // Block terminates label_0128: // Incoming jump from 0x00F7, if 0x704c32cf > stack[-1] // Inputs[1] { @0129 stack[-1] } 0128 5B JUMPDEST 0129 80 DUP1 012A 63 PUSH4 0x4a25d94a 012F 14 EQ 0130 61 PUSH2 0x02eb 0133 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x02eb, if 0x4a25d94a == stack[-1] label_0134: // Incoming jump from 0x0133, if not 0x4a25d94a == stack[-1] // Inputs[1] { @0134 stack[-1] } 0134 80 DUP1 0135 63 PUSH4 0x5b0d5984 013A 14 EQ 013B 61 PUSH2 0x030b 013E 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x030b, if 0x5b0d5984 == stack[-1] label_013F: // Incoming jump from 0x013E, if not 0x5b0d5984 == stack[-1] // Inputs[1] { @013F stack[-1] } 013F 80 DUP1 0140 63 PUSH4 0x5c11d795 0145 14 EQ 0146 61 PUSH2 0x032b 0149 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x032b, if 0x5c11d795 == stack[-1] label_014A: // Incoming jump from 0x0149, if not 0x5c11d795 == stack[-1] // Inputs[1] { @014D memory[0x00:0x00] } 014A 60 PUSH1 0x00 014C 80 DUP1 014D FD *REVERT // Stack delta = +0 // Outputs[1] { @014D revert(memory[0x00:0x00]); } // Block terminates label_014E: // Incoming jump from 0x00EC, if 0x4a25d94a > stack[-1] // Inputs[1] { @014F stack[-1] } 014E 5B JUMPDEST 014F 80 DUP1 0150 63 PUSH4 0x1f00ca74 0155 11 GT 0156 61 PUSH2 0x017f 0159 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x017f, if 0x1f00ca74 > stack[-1] label_015A: // Incoming jump from 0x0159, if not 0x1f00ca74 > stack[-1] // Inputs[1] { @015A stack[-1] } 015A 80 DUP1 015B 63 PUSH4 0x1f00ca74 0160 14 EQ 0161 61 PUSH2 0x028b 0164 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x028b, if 0x1f00ca74 == stack[-1] label_0165: // Incoming jump from 0x0164, if not 0x1f00ca74 == stack[-1] // Inputs[1] { @0165 stack[-1] } 0165 80 DUP1 0166 63 PUSH4 0x2195995c 016B 14 EQ 016C 61 PUSH2 0x02ab 016F 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x02ab, if 0x2195995c == stack[-1] label_0170: // Incoming jump from 0x016F, if not 0x2195995c == stack[-1] // Inputs[1] { @0170 stack[-1] } 0170 80 DUP1 0171 63 PUSH4 0x38ed1739 0176 14 EQ 0177 61 PUSH2 0x02cb 017A 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x02cb, if 0x38ed1739 == stack[-1] label_017B: // Incoming jump from 0x017A, if not 0x38ed1739 == stack[-1] // Inputs[1] { @017E memory[0x00:0x00] } 017B 60 PUSH1 0x00 017D 80 DUP1 017E FD *REVERT // Stack delta = +0 // Outputs[1] { @017E revert(memory[0x00:0x00]); } // Block terminates label_017F: // Incoming jump from 0x0159, if 0x1f00ca74 > stack[-1] // Inputs[1] { @0180 stack[-1] } 017F 5B JUMPDEST 0180 80 DUP1 0181 63 PUSH4 0x02751cec 0186 14 EQ 0187 61 PUSH2 0x01f6 018A 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x01f6, if 0x02751cec == stack[-1] label_018B: // Incoming jump from 0x018A, if not 0x02751cec == stack[-1] // Inputs[1] { @018B stack[-1] } 018B 80 DUP1 018C 63 PUSH4 0x054d50d4 0191 14 EQ 0192 61 PUSH2 0x0230 0195 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0230, if 0x054d50d4 == stack[-1] label_0196: // Incoming jump from 0x0195, if not 0x054d50d4 == stack[-1] // Inputs[1] { @0196 stack[-1] } 0196 80 DUP1 0197 63 PUSH4 0x18cbafe5 019C 14 EQ 019D 61 PUSH2 0x025e 01A0 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x025e, if 0x18cbafe5 == stack[-1] label_01A1: // Incoming jump from 0x01A0, if not 0x18cbafe5 == stack[-1] // Inputs[1] { @01A4 memory[0x00:0x00] } 01A1 60 PUSH1 0x00 01A3 80 DUP1 01A4 FD *REVERT // Stack delta = +0 // Outputs[1] { @01A4 revert(memory[0x00:0x00]); } // Block terminates label_01A5: // Incoming jump from 0x000C, if msg.data.length < 0x04 // Inputs[1] { @01A6 msg.data.length } 01A5 5B JUMPDEST 01A6 36 CALLDATASIZE 01A7 61 PUSH2 0x01f1 01AA 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x01f1, if msg.data.length label_01AB: // Incoming jump from 0x01AA, if not msg.data.length // Inputs[1] { @01AB msg.sender } 01AB 33 CALLER 01AC 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 01C1 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 01E2 16 AND 01E3 14 EQ 01E4 61 PUSH2 0x01ef 01E7 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x01ef, if 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 & 0xffffffffffffffffffffffffffffffffffffffff == msg.sender label_01E8: // Incoming jump from 0x01E7, if not 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 & 0xffffffffffffffffffffffffffffffffffffffff == msg.sender 01E8 61 PUSH2 0x01ef 01EB 61 PUSH2 0x538b 01EE 56 *JUMP // Stack delta = +1 // Outputs[1] { @01E8 stack[0] = 0x01ef } // Block ends with unconditional jump to 0x538b label_01EF: // Incoming jump from 0x01E7, if 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 & 0xffffffffffffffffffffffffffffffffffffffff == msg.sender 01EF 5B JUMPDEST 01F0 00 *STOP // Stack delta = +0 // Outputs[1] { @01F0 stop(); } // Block terminates label_01F1: // Incoming jump from 0x01AA, if msg.data.length // Inputs[1] { @01F5 memory[0x00:0x00] } 01F1 5B JUMPDEST 01F2 60 PUSH1 0x00 01F4 80 DUP1 01F5 FD *REVERT // Stack delta = +0 // Outputs[1] { @01F5 revert(memory[0x00:0x00]); } // Block terminates label_01F6: // Incoming jump from 0x018A, if 0x02751cec == stack[-1] // Inputs[1] { @01F7 msg.value } 01F6 5B JUMPDEST 01F7 34 CALLVALUE 01F8 80 DUP1 01F9 15 ISZERO 01FA 61 PUSH2 0x0202 01FD 57 *JUMPI // Stack delta = +1 // Outputs[1] { @01F7 stack[0] = msg.value } // Block ends with conditional jump to 0x0202, if !msg.value label_01FE: // Incoming jump from 0x01FD, if not !msg.value // Inputs[1] { @0201 memory[0x00:0x00] } 01FE 60 PUSH1 0x00 0200 80 DUP1 0201 FD *REVERT // Stack delta = +0 // Outputs[1] { @0201 revert(memory[0x00:0x00]); } // Block terminates label_0202: // Incoming jump from 0x01FD, if !msg.value // Inputs[1] { @020A msg.data.length } 0202 5B JUMPDEST 0203 50 POP 0204 61 PUSH2 0x0216 0207 61 PUSH2 0x0211 020A 36 CALLDATASIZE 020B 60 PUSH1 0x04 020D 61 PUSH2 0x53ef 0210 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @0204 stack[-1] = 0x0216 // @0207 stack[0] = 0x0211 // @020A stack[1] = msg.data.length // @020B stack[2] = 0x04 // } // Block ends with call to 0x53ef, returns to 0x0211 label_0211: // Incoming return from call to 0x53EF at 0x0210 0211 5B JUMPDEST 0212 61 PUSH2 0x059f 0215 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x059f 0216 5B JUMPDEST 0217 60 PUSH1 0x40 0219 80 DUP1 021A 51 MLOAD 021B 92 SWAP3 021C 83 DUP4 021D 52 MSTORE 021E 60 PUSH1 0x20 0220 83 DUP4 0221 01 ADD 0222 91 SWAP2 0223 90 SWAP1 0224 91 SWAP2 0225 52 MSTORE 0226 01 ADD label_0227: // Incoming jump from 0x0436 // Incoming return from call to 0x5531 at 0x028A // Inputs[3] // { // @022A memory[0x40:0x60] // @022C stack[-1] // @022F memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]] // } 0227 5B JUMPDEST 0228 60 PUSH1 0x40 022A 51 MLOAD 022B 80 DUP1 022C 91 SWAP2 022D 03 SUB 022E 90 SWAP1 022F F3 *RETURN // Stack delta = -1 // Outputs[1] { @022F return memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]; } // Block terminates label_0230: // Incoming jump from 0x0195, if 0x054d50d4 == stack[-1] // Inputs[1] { @0231 msg.value } 0230 5B JUMPDEST 0231 34 CALLVALUE 0232 80 DUP1 0233 15 ISZERO 0234 61 PUSH2 0x023c 0237 57 *JUMPI // Stack delta = +1 // Outputs[1] { @0231 stack[0] = msg.value } // Block ends with conditional jump to 0x023c, if !msg.value label_0238: // Incoming jump from 0x0237, if not !msg.value // Inputs[1] { @023B memory[0x00:0x00] } 0238 60 PUSH1 0x00 023A 80 DUP1 023B FD *REVERT // Stack delta = +0 // Outputs[1] { @023B revert(memory[0x00:0x00]); } // Block terminates label_023C: // Incoming jump from 0x0237, if !msg.value // Inputs[1] { @0244 msg.data.length } 023C 5B JUMPDEST 023D 50 POP 023E 61 PUSH2 0x0250 0241 61 PUSH2 0x024b 0244 36 CALLDATASIZE 0245 60 PUSH1 0x04 0247 61 PUSH2 0x544d 024A 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @023E stack[-1] = 0x0250 // @0241 stack[0] = 0x024b // @0244 stack[1] = msg.data.length // @0245 stack[2] = 0x04 // } // Block ends with call to 0x544d, returns to 0x024B label_024B: // Incoming return from call to 0x544D at 0x024A 024B 5B JUMPDEST 024C 61 PUSH2 0x0707 024F 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x0707 0250 5B JUMPDEST 0251 60 PUSH1 0x40 0253 51 MLOAD 0254 90 SWAP1 0255 81 DUP2 0256 52 MSTORE 0257 60 PUSH1 0x20 0259 01 ADD 025A 61 PUSH2 0x0227 025D 56 *JUMP label_025E: // Incoming jump from 0x01A0, if 0x18cbafe5 == stack[-1] // Inputs[1] { @025F msg.value } 025E 5B JUMPDEST 025F 34 CALLVALUE 0260 80 DUP1 0261 15 ISZERO 0262 61 PUSH2 0x026a 0265 57 *JUMPI // Stack delta = +1 // Outputs[1] { @025F stack[0] = msg.value } // Block ends with conditional jump to 0x026a, if !msg.value label_0266: // Incoming jump from 0x0265, if not !msg.value // Inputs[1] { @0269 memory[0x00:0x00] } 0266 60 PUSH1 0x00 0268 80 DUP1 0269 FD *REVERT // Stack delta = +0 // Outputs[1] { @0269 revert(memory[0x00:0x00]); } // Block terminates label_026A: // Incoming jump from 0x0265, if !msg.value // Inputs[1] { @0272 msg.data.length } 026A 5B JUMPDEST 026B 50 POP 026C 61 PUSH2 0x027e 026F 61 PUSH2 0x0279 0272 36 CALLDATASIZE 0273 60 PUSH1 0x04 0275 61 PUSH2 0x54be 0278 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @026C stack[-1] = 0x027e // @026F stack[0] = 0x0279 // @0272 stack[1] = msg.data.length // @0273 stack[2] = 0x04 // } // Block ends with call to 0x54be, returns to 0x0279 label_0279: // Incoming return from call to 0x54BE at 0x0278 0279 5B JUMPDEST 027A 61 PUSH2 0x076c 027D 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x076c label_027E: // Incoming return from call to 0x0519 at 0x0518 // Incoming return from call to 0x0366 at 0x0365 // Inputs[2] // { // @0281 memory[0x40:0x60] // @0285 stack[-1] // } 027E 5B JUMPDEST 027F 60 PUSH1 0x40 0281 51 MLOAD 0282 61 PUSH2 0x0227 0285 91 SWAP2 0286 90 SWAP1 0287 61 PUSH2 0x5531 028A 56 *JUMP // Stack delta = +2 // Outputs[3] // { // @0285 stack[-1] = 0x0227 // @0286 stack[1] = memory[0x40:0x60] // @0286 stack[0] = stack[-1] // } // Block ends with call to 0x5531, returns to 0x0227 label_028B: // Incoming jump from 0x0164, if 0x1f00ca74 == stack[-1] // Inputs[1] { @028C msg.value } 028B 5B JUMPDEST 028C 34 CALLVALUE 028D 80 DUP1 028E 15 ISZERO 028F 61 PUSH2 0x0297 0292 57 *JUMPI // Stack delta = +1 // Outputs[1] { @028C stack[0] = msg.value } // Block ends with conditional jump to 0x0297, if !msg.value label_0293: // Incoming jump from 0x0292, if not !msg.value // Inputs[1] { @0296 memory[0x00:0x00] } 0293 60 PUSH1 0x00 0295 80 DUP1 0296 FD *REVERT // Stack delta = +0 // Outputs[1] { @0296 revert(memory[0x00:0x00]); } // Block terminates label_0297: // Incoming jump from 0x0292, if !msg.value // Inputs[1] { @029F msg.data.length } 0297 5B JUMPDEST 0298 50 POP 0299 61 PUSH2 0x027e 029C 61 PUSH2 0x02a6 029F 36 CALLDATASIZE 02A0 60 PUSH1 0x04 02A2 61 PUSH2 0x55a4 02A5 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @0299 stack[-1] = 0x027e // @029C stack[0] = 0x02a6 // @029F stack[1] = msg.data.length // @02A0 stack[2] = 0x04 // } // Block ends with call to 0x55a4, returns to 0x02A6 label_02A6: // Incoming return from call to 0x55A4 at 0x02A5 02A6 5B JUMPDEST 02A7 61 PUSH2 0x0bc6 02AA 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x0bc6 label_02AB: // Incoming jump from 0x016F, if 0x2195995c == stack[-1] // Inputs[1] { @02AC msg.value } 02AB 5B JUMPDEST 02AC 34 CALLVALUE 02AD 80 DUP1 02AE 15 ISZERO 02AF 61 PUSH2 0x02b7 02B2 57 *JUMPI // Stack delta = +1 // Outputs[1] { @02AC stack[0] = msg.value } // Block ends with conditional jump to 0x02b7, if !msg.value label_02B3: // Incoming jump from 0x02B2, if not !msg.value // Inputs[1] { @02B6 memory[0x00:0x00] } 02B3 60 PUSH1 0x00 02B5 80 DUP1 02B6 FD *REVERT // Stack delta = +0 // Outputs[1] { @02B6 revert(memory[0x00:0x00]); } // Block terminates label_02B7: // Incoming jump from 0x02B2, if !msg.value // Inputs[1] { @02BF msg.data.length } 02B7 5B JUMPDEST 02B8 50 POP 02B9 61 PUSH2 0x0216 02BC 61 PUSH2 0x02c6 02BF 36 CALLDATASIZE 02C0 60 PUSH1 0x04 02C2 61 PUSH2 0x56b2 02C5 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @02B9 stack[-1] = 0x0216 // @02BC stack[0] = 0x02c6 // @02BF stack[1] = msg.data.length // @02C0 stack[2] = 0x04 // } // Block ends with call to 0x56b2, returns to 0x02C6 label_02C6: // Incoming return from call to 0x56B2 at 0x02C5 02C6 5B JUMPDEST 02C7 61 PUSH2 0x0bfa 02CA 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x0bfa label_02CB: // Incoming jump from 0x017A, if 0x38ed1739 == stack[-1] // Inputs[1] { @02CC msg.value } 02CB 5B JUMPDEST 02CC 34 CALLVALUE 02CD 80 DUP1 02CE 15 ISZERO 02CF 61 PUSH2 0x02d7 02D2 57 *JUMPI // Stack delta = +1 // Outputs[1] { @02CC stack[0] = msg.value } // Block ends with conditional jump to 0x02d7, if !msg.value label_02D3: // Incoming jump from 0x02D2, if not !msg.value // Inputs[1] { @02D6 memory[0x00:0x00] } 02D3 60 PUSH1 0x00 02D5 80 DUP1 02D6 FD *REVERT // Stack delta = +0 // Outputs[1] { @02D6 revert(memory[0x00:0x00]); } // Block terminates label_02D7: // Incoming jump from 0x02D2, if !msg.value // Inputs[1] { @02DF msg.data.length } 02D7 5B JUMPDEST 02D8 50 POP 02D9 61 PUSH2 0x027e 02DC 61 PUSH2 0x02e6 02DF 36 CALLDATASIZE 02E0 60 PUSH1 0x04 02E2 61 PUSH2 0x54be 02E5 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @02D9 stack[-1] = 0x027e // @02DC stack[0] = 0x02e6 // @02DF stack[1] = msg.data.length // @02E0 stack[2] = 0x04 // } // Block ends with call to 0x54be, returns to 0x02E6 label_02E6: // Incoming return from call to 0x54BE at 0x02E5 02E6 5B JUMPDEST 02E7 61 PUSH2 0x0d31 02EA 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x0d31 label_02EB: // Incoming jump from 0x0133, if 0x4a25d94a == stack[-1] // Inputs[1] { @02EC msg.value } 02EB 5B JUMPDEST 02EC 34 CALLVALUE 02ED 80 DUP1 02EE 15 ISZERO 02EF 61 PUSH2 0x02f7 02F2 57 *JUMPI // Stack delta = +1 // Outputs[1] { @02EC stack[0] = msg.value } // Block ends with conditional jump to 0x02f7, if !msg.value label_02F3: // Incoming jump from 0x02F2, if not !msg.value // Inputs[1] { @02F6 memory[0x00:0x00] } 02F3 60 PUSH1 0x00 02F5 80 DUP1 02F6 FD *REVERT // Stack delta = +0 // Outputs[1] { @02F6 revert(memory[0x00:0x00]); } // Block terminates label_02F7: // Incoming jump from 0x02F2, if !msg.value // Inputs[1] { @02FF msg.data.length } 02F7 5B JUMPDEST 02F8 50 POP 02F9 61 PUSH2 0x027e 02FC 61 PUSH2 0x0306 02FF 36 CALLDATASIZE 0300 60 PUSH1 0x04 0302 61 PUSH2 0x54be 0305 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @02F9 stack[-1] = 0x027e // @02FC stack[0] = 0x0306 // @02FF stack[1] = msg.data.length // @0300 stack[2] = 0x04 // } // Block ends with call to 0x54be, returns to 0x0306 label_0306: // Incoming return from call to 0x54BE at 0x0305 0306 5B JUMPDEST 0307 61 PUSH2 0x0f09 030A 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x0f09 label_030B: // Incoming jump from 0x013E, if 0x5b0d5984 == stack[-1] // Inputs[1] { @030C msg.value } 030B 5B JUMPDEST 030C 34 CALLVALUE 030D 80 DUP1 030E 15 ISZERO 030F 61 PUSH2 0x0317 0312 57 *JUMPI // Stack delta = +1 // Outputs[1] { @030C stack[0] = msg.value } // Block ends with conditional jump to 0x0317, if !msg.value label_0313: // Incoming jump from 0x0312, if not !msg.value // Inputs[1] { @0316 memory[0x00:0x00] } 0313 60 PUSH1 0x00 0315 80 DUP1 0316 FD *REVERT // Stack delta = +0 // Outputs[1] { @0316 revert(memory[0x00:0x00]); } // Block terminates label_0317: // Incoming jump from 0x0312, if !msg.value // Inputs[1] { @031F msg.data.length } 0317 5B JUMPDEST 0318 50 POP 0319 61 PUSH2 0x0250 031C 61 PUSH2 0x0326 031F 36 CALLDATASIZE 0320 60 PUSH1 0x04 0322 61 PUSH2 0x575c 0325 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @0319 stack[-1] = 0x0250 // @031C stack[0] = 0x0326 // @031F stack[1] = msg.data.length // @0320 stack[2] = 0x04 // } // Block ends with call to 0x575c, returns to 0x0326 label_0326: // Incoming return from call to 0x575C at 0x0325 0326 5B JUMPDEST 0327 61 PUSH2 0x1165 032A 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x1165 label_032B: // Incoming jump from 0x0149, if 0x5c11d795 == stack[-1] // Inputs[1] { @032C msg.value } 032B 5B JUMPDEST 032C 34 CALLVALUE 032D 80 DUP1 032E 15 ISZERO 032F 61 PUSH2 0x0337 0332 57 *JUMPI // Stack delta = +1 // Outputs[1] { @032C stack[0] = msg.value } // Block ends with conditional jump to 0x0337, if !msg.value label_0333: // Incoming jump from 0x0332, if not !msg.value // Inputs[1] { @0336 memory[0x00:0x00] } 0333 60 PUSH1 0x00 0335 80 DUP1 0336 FD *REVERT // Stack delta = +0 // Outputs[1] { @0336 revert(memory[0x00:0x00]); } // Block terminates label_0337: // Incoming jump from 0x0332, if !msg.value // Inputs[1] { @033F msg.data.length } 0337 5B JUMPDEST 0338 50 POP 0339 61 PUSH2 0x01ef 033C 61 PUSH2 0x0346 033F 36 CALLDATASIZE 0340 60 PUSH1 0x04 0342 61 PUSH2 0x54be 0345 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @0339 stack[-1] = 0x01ef // @033C stack[0] = 0x0346 // @033F stack[1] = msg.data.length // @0340 stack[2] = 0x04 // } // Block ends with call to 0x54be, returns to 0x0346 label_0346: // Incoming return from call to 0x54BE at 0x0345 0346 5B JUMPDEST 0347 61 PUSH2 0x12b0 034A 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x12b0 label_034B: // Incoming jump from 0x0102, if 0x704c32cf == stack[-1] // Inputs[1] { @034C msg.value } 034B 5B JUMPDEST 034C 34 CALLVALUE 034D 80 DUP1 034E 15 ISZERO 034F 61 PUSH2 0x0357 0352 57 *JUMPI // Stack delta = +1 // Outputs[1] { @034C stack[0] = msg.value } // Block ends with conditional jump to 0x0357, if !msg.value label_0353: // Incoming jump from 0x0352, if not !msg.value // Inputs[1] { @0356 memory[0x00:0x00] } 0353 60 PUSH1 0x00 0355 80 DUP1 0356 FD *REVERT // Stack delta = +0 // Outputs[1] { @0356 revert(memory[0x00:0x00]); } // Block terminates label_0357: // Incoming jump from 0x0352, if !msg.value // Inputs[1] { @035F msg.data.length } 0357 5B JUMPDEST 0358 50 POP 0359 61 PUSH2 0x027e 035C 61 PUSH2 0x0366 035F 36 CALLDATASIZE 0360 60 PUSH1 0x04 0362 61 PUSH2 0x55a4 0365 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @0359 stack[-1] = 0x027e // @035C stack[0] = 0x0366 // @035F stack[1] = msg.data.length // @0360 stack[2] = 0x04 // } // Block ends with call to 0x55a4, returns to 0x0366 label_0366: // Incoming return from call to 0x55A4 at 0x0365 0366 5B JUMPDEST 0367 61 PUSH2 0x1619 036A 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x1619 label_036B: // Incoming jump from 0x010D, if 0x791ac947 == stack[-1] // Inputs[1] { @036C msg.value } 036B 5B JUMPDEST 036C 34 CALLVALUE 036D 80 DUP1 036E 15 ISZERO 036F 61 PUSH2 0x0377 0372 57 *JUMPI // Stack delta = +1 // Outputs[1] { @036C stack[0] = msg.value } // Block ends with conditional jump to 0x0377, if !msg.value label_0373: // Incoming jump from 0x0372, if not !msg.value // Inputs[1] { @0376 memory[0x00:0x00] } 0373 60 PUSH1 0x00 0375 80 DUP1 0376 FD *REVERT // Stack delta = +0 // Outputs[1] { @0376 revert(memory[0x00:0x00]); } // Block terminates label_0377: // Incoming jump from 0x0372, if !msg.value // Inputs[1] { @037F msg.data.length } 0377 5B JUMPDEST 0378 50 POP 0379 61 PUSH2 0x01ef 037C 61 PUSH2 0x0386 037F 36 CALLDATASIZE 0380 60 PUSH1 0x04 0382 61 PUSH2 0x54be 0385 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @0379 stack[-1] = 0x01ef // @037C stack[0] = 0x0386 // @037F stack[1] = msg.data.length // @0380 stack[2] = 0x04 // } // Block ends with call to 0x54be, returns to 0x0386 label_0386: // Incoming return from call to 0x54BE at 0x0385 0386 5B JUMPDEST 0387 61 PUSH2 0x1646 038A 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x1646 label_038B: // Incoming jump from 0x0118, if 0x7ff36ab5 == stack[-1] // Inputs[1] { @0392 msg.data.length } 038B 5B JUMPDEST 038C 61 PUSH2 0x027e 038F 61 PUSH2 0x0399 0392 36 CALLDATASIZE 0393 60 PUSH1 0x04 0395 61 PUSH2 0x57f2 0398 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @038C stack[0] = 0x027e // @038F stack[1] = 0x0399 // @0392 stack[2] = msg.data.length // @0393 stack[3] = 0x04 // } // Block ends with call to 0x57f2, returns to 0x0399 label_0399: // Incoming return from call to 0x57F2 at 0x0398 0399 5B JUMPDEST 039A 61 PUSH2 0x19d7 039D 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x19d7 label_039E: // Incoming jump from 0x0123, if 0x85f8c259 == stack[-1] // Inputs[1] { @039F msg.value } 039E 5B JUMPDEST 039F 34 CALLVALUE 03A0 80 DUP1 03A1 15 ISZERO 03A2 61 PUSH2 0x03aa 03A5 57 *JUMPI // Stack delta = +1 // Outputs[1] { @039F stack[0] = msg.value } // Block ends with conditional jump to 0x03aa, if !msg.value label_03A6: // Incoming jump from 0x03A5, if not !msg.value // Inputs[1] { @03A9 memory[0x00:0x00] } 03A6 60 PUSH1 0x00 03A8 80 DUP1 03A9 FD *REVERT // Stack delta = +0 // Outputs[1] { @03A9 revert(memory[0x00:0x00]); } // Block terminates label_03AA: // Incoming jump from 0x03A5, if !msg.value // Inputs[1] { @03B2 msg.data.length } 03AA 5B JUMPDEST 03AB 50 POP 03AC 61 PUSH2 0x0250 03AF 61 PUSH2 0x03b9 03B2 36 CALLDATASIZE 03B3 60 PUSH1 0x04 03B5 61 PUSH2 0x544d 03B8 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @03AC stack[-1] = 0x0250 // @03AF stack[0] = 0x03b9 // @03B2 stack[1] = msg.data.length // @03B3 stack[2] = 0x04 // } // Block ends with call to 0x544d, returns to 0x03B9 label_03B9: // Incoming return from call to 0x544D at 0x03B8 03B9 5B JUMPDEST 03BA 61 PUSH2 0x1e35 03BD 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x1e35 label_03BE: // Incoming jump from 0x00C6, if 0x8803dbee == stack[-1] // Inputs[1] { @03BF msg.value } 03BE 5B JUMPDEST 03BF 34 CALLVALUE 03C0 80 DUP1 03C1 15 ISZERO 03C2 61 PUSH2 0x03ca 03C5 57 *JUMPI // Stack delta = +1 // Outputs[1] { @03BF stack[0] = msg.value } // Block ends with conditional jump to 0x03ca, if !msg.value label_03C6: // Incoming jump from 0x03C5, if not !msg.value // Inputs[1] { @03C9 memory[0x00:0x00] } 03C6 60 PUSH1 0x00 03C8 80 DUP1 03C9 FD *REVERT // Stack delta = +0 // Outputs[1] { @03C9 revert(memory[0x00:0x00]); } // Block terminates label_03CA: // Incoming jump from 0x03C5, if !msg.value // Inputs[1] { @03D2 msg.data.length } 03CA 5B JUMPDEST 03CB 50 POP 03CC 61 PUSH2 0x027e 03CF 61 PUSH2 0x03d9 03D2 36 CALLDATASIZE 03D3 60 PUSH1 0x04 03D5 61 PUSH2 0x54be 03D8 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @03CC stack[-1] = 0x027e // @03CF stack[0] = 0x03d9 // @03D2 stack[1] = msg.data.length // @03D3 stack[2] = 0x04 // } // Block ends with call to 0x54be, returns to 0x03D9 label_03D9: // Incoming return from call to 0x54BE at 0x03D8 03D9 5B JUMPDEST 03DA 61 PUSH2 0x1e9a 03DD 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x1e9a label_03DE: // Incoming jump from 0x00D1, if 0xad5c4648 == stack[-1] // Inputs[1] { @03DF msg.value } 03DE 5B JUMPDEST 03DF 34 CALLVALUE 03E0 80 DUP1 03E1 15 ISZERO 03E2 61 PUSH2 0x03ea 03E5 57 *JUMPI // Stack delta = +1 // Outputs[1] { @03DF stack[0] = msg.value } // Block ends with conditional jump to 0x03ea, if !msg.value label_03E6: // Incoming jump from 0x03E5, if not !msg.value // Inputs[1] { @03E9 memory[0x00:0x00] } 03E6 60 PUSH1 0x00 03E8 80 DUP1 03E9 FD *REVERT // Stack delta = +0 // Outputs[1] { @03E9 revert(memory[0x00:0x00]); } // Block terminates label_03EA: // Incoming jump from 0x03E5, if !msg.value 03EA 5B JUMPDEST 03EB 50 POP 03EC 61 PUSH2 0x0412 03EF 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 0410 81 DUP2 0411 56 *JUMP // Stack delta = +1 // Outputs[2] // { // @03EC stack[-1] = 0x0412 // @03EF stack[0] = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 // } // Block ends with unconditional jump to 0x0412 label_0412: // Incoming jump from 0x0411 // Incoming jump from 0x04FD // Inputs[2] // { // @0415 memory[0x40:0x60] // @042C stack[-1] // } 0412 5B JUMPDEST 0413 60 PUSH1 0x40 0415 51 MLOAD 0416 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 042B 90 SWAP1 042C 91 SWAP2 042D 16 AND 042E 81 DUP2 042F 52 MSTORE 0430 60 PUSH1 0x20 0432 01 ADD 0433 61 PUSH2 0x0227 0436 56 *JUMP // Stack delta = +0 // Outputs[2] // { // @042F memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff // @0432 stack[-1] = 0x20 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0227 label_0437: // Incoming jump from 0x00DC, if 0xad615dec == stack[-1] // Inputs[1] { @0438 msg.value } 0437 5B JUMPDEST 0438 34 CALLVALUE 0439 80 DUP1 043A 15 ISZERO 043B 61 PUSH2 0x0443 043E 57 *JUMPI // Stack delta = +1 // Outputs[1] { @0438 stack[0] = msg.value } // Block ends with conditional jump to 0x0443, if !msg.value label_043F: // Incoming jump from 0x043E, if not !msg.value // Inputs[1] { @0442 memory[0x00:0x00] } 043F 60 PUSH1 0x00 0441 80 DUP1 0442 FD *REVERT // Stack delta = +0 // Outputs[1] { @0442 revert(memory[0x00:0x00]); } // Block terminates label_0443: // Incoming jump from 0x043E, if !msg.value // Inputs[1] { @044B msg.data.length } 0443 5B JUMPDEST 0444 50 POP 0445 61 PUSH2 0x0250 0448 61 PUSH2 0x0452 044B 36 CALLDATASIZE 044C 60 PUSH1 0x04 044E 61 PUSH2 0x544d 0451 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @0445 stack[-1] = 0x0250 // @0448 stack[0] = 0x0452 // @044B stack[1] = msg.data.length // @044C stack[2] = 0x04 // } // Block ends with call to 0x544d, returns to 0x0452 label_0452: // Incoming return from call to 0x544D at 0x0451 0452 5B JUMPDEST 0453 61 PUSH2 0x2011 0456 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x2011 label_0457: // Incoming jump from 0x00A0, if 0xaf2979eb == stack[-1] // Inputs[1] { @0458 msg.value } 0457 5B JUMPDEST 0458 34 CALLVALUE 0459 80 DUP1 045A 15 ISZERO 045B 61 PUSH2 0x0463 045E 57 *JUMPI // Stack delta = +1 // Outputs[1] { @0458 stack[0] = msg.value } // Block ends with conditional jump to 0x0463, if !msg.value label_045F: // Incoming jump from 0x045E, if not !msg.value // Inputs[1] { @0462 memory[0x00:0x00] } 045F 60 PUSH1 0x00 0461 80 DUP1 0462 FD *REVERT // Stack delta = +0 // Outputs[1] { @0462 revert(memory[0x00:0x00]); } // Block terminates label_0463: // Incoming jump from 0x045E, if !msg.value // Inputs[1] { @046B msg.data.length } 0463 5B JUMPDEST 0464 50 POP 0465 61 PUSH2 0x0250 0468 61 PUSH2 0x0472 046B 36 CALLDATASIZE 046C 60 PUSH1 0x04 046E 61 PUSH2 0x53ef 0471 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @0465 stack[-1] = 0x0250 // @0468 stack[0] = 0x0472 // @046B stack[1] = msg.data.length // @046C stack[2] = 0x04 // } // Block ends with call to 0x53ef, returns to 0x0472 label_0472: // Incoming return from call to 0x53EF at 0x0471 0472 5B JUMPDEST 0473 61 PUSH2 0x2026 0476 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x2026 label_0477: // Incoming jump from 0x00AB, if 0xb66caf06 == stack[-1] // Inputs[1] { @0478 msg.value } 0477 5B JUMPDEST 0478 34 CALLVALUE 0479 80 DUP1 047A 15 ISZERO 047B 61 PUSH2 0x0483 047E 57 *JUMPI // Stack delta = +1 // Outputs[1] { @0478 stack[0] = msg.value } // Block ends with conditional jump to 0x0483, if !msg.value label_047F: // Incoming jump from 0x047E, if not !msg.value // Inputs[1] { @0482 memory[0x00:0x00] } 047F 60 PUSH1 0x00 0481 80 DUP1 0482 FD *REVERT // Stack delta = +0 // Outputs[1] { @0482 revert(memory[0x00:0x00]); } // Block terminates label_0483: // Incoming jump from 0x047E, if !msg.value // Inputs[1] { @048B msg.data.length } 0483 5B JUMPDEST 0484 50 POP 0485 61 PUSH2 0x027e 0488 61 PUSH2 0x0492 048B 36 CALLDATASIZE 048C 60 PUSH1 0x04 048E 61 PUSH2 0x55a4 0491 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @0485 stack[-1] = 0x027e // @0488 stack[0] = 0x0492 // @048B stack[1] = msg.data.length // @048C stack[2] = 0x04 // } // Block ends with call to 0x55a4, returns to 0x0492 label_0492: // Incoming return from call to 0x55A4 at 0x0491 0492 5B JUMPDEST 0493 61 PUSH2 0x220b 0496 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x220b label_0497: // Incoming jump from 0x00B6, if 0xb6f9de95 == stack[-1] // Inputs[1] { @049E msg.data.length } 0497 5B JUMPDEST 0498 61 PUSH2 0x01ef 049B 61 PUSH2 0x04a5 049E 36 CALLDATASIZE 049F 60 PUSH1 0x04 04A1 61 PUSH2 0x57f2 04A4 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @0498 stack[0] = 0x01ef // @049B stack[1] = 0x04a5 // @049E stack[2] = msg.data.length // @049F stack[3] = 0x04 // } // Block ends with call to 0x57f2, returns to 0x04A5 label_04A5: // Incoming return from call to 0x57F2 at 0x04A4 04A5 5B JUMPDEST 04A6 61 PUSH2 0x2238 04A9 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x2238 label_04AA: // Incoming jump from 0x006F, if 0xbaa2abde == stack[-1] // Inputs[1] { @04AB msg.value } 04AA 5B JUMPDEST 04AB 34 CALLVALUE 04AC 80 DUP1 04AD 15 ISZERO 04AE 61 PUSH2 0x04b6 04B1 57 *JUMPI // Stack delta = +1 // Outputs[1] { @04AB stack[0] = msg.value } // Block ends with conditional jump to 0x04b6, if !msg.value label_04B2: // Incoming jump from 0x04B1, if not !msg.value // Inputs[1] { @04B5 memory[0x00:0x00] } 04B2 60 PUSH1 0x00 04B4 80 DUP1 04B5 FD *REVERT // Stack delta = +0 // Outputs[1] { @04B5 revert(memory[0x00:0x00]); } // Block terminates label_04B6: // Incoming jump from 0x04B1, if !msg.value // Inputs[1] { @04BE msg.data.length } 04B6 5B JUMPDEST 04B7 50 POP 04B8 61 PUSH2 0x0216 04BB 61 PUSH2 0x04c5 04BE 36 CALLDATASIZE 04BF 60 PUSH1 0x04 04C1 61 PUSH2 0x5859 04C4 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @04B8 stack[-1] = 0x0216 // @04BB stack[0] = 0x04c5 // @04BE stack[1] = msg.data.length // @04BF stack[2] = 0x04 // } // Block ends with call to 0x5859, returns to 0x04C5 label_04C5: // Incoming return from call to 0x5859 at 0x04C4 04C5 5B JUMPDEST 04C6 61 PUSH2 0x26a8 04C9 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x26a8 label_04CA: // Incoming jump from 0x007A, if 0xc45a0155 == stack[-1] // Inputs[1] { @04CB msg.value } 04CA 5B JUMPDEST 04CB 34 CALLVALUE 04CC 80 DUP1 04CD 15 ISZERO 04CE 61 PUSH2 0x04d6 04D1 57 *JUMPI // Stack delta = +1 // Outputs[1] { @04CB stack[0] = msg.value } // Block ends with conditional jump to 0x04d6, if !msg.value label_04D2: // Incoming jump from 0x04D1, if not !msg.value // Inputs[1] { @04D5 memory[0x00:0x00] } 04D2 60 PUSH1 0x00 04D4 80 DUP1 04D5 FD *REVERT // Stack delta = +0 // Outputs[1] { @04D5 revert(memory[0x00:0x00]); } // Block terminates label_04D6: // Incoming jump from 0x04D1, if !msg.value 04D6 5B JUMPDEST 04D7 50 POP 04D8 61 PUSH2 0x0412 04DB 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 04FC 81 DUP2 04FD 56 *JUMP // Stack delta = +1 // Outputs[2] // { // @04D8 stack[-1] = 0x0412 // @04DB stack[0] = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f // } // Block ends with unconditional jump to 0x0412 label_04FE: // Incoming jump from 0x0085, if 0xd06ca61f == stack[-1] // Inputs[1] { @04FF msg.value } 04FE 5B JUMPDEST 04FF 34 CALLVALUE 0500 80 DUP1 0501 15 ISZERO 0502 61 PUSH2 0x050a 0505 57 *JUMPI // Stack delta = +1 // Outputs[1] { @04FF stack[0] = msg.value } // Block ends with conditional jump to 0x050a, if !msg.value label_0506: // Incoming jump from 0x0505, if not !msg.value // Inputs[1] { @0509 memory[0x00:0x00] } 0506 60 PUSH1 0x00 0508 80 DUP1 0509 FD *REVERT // Stack delta = +0 // Outputs[1] { @0509 revert(memory[0x00:0x00]); } // Block terminates label_050A: // Incoming jump from 0x0505, if !msg.value // Inputs[1] { @0512 msg.data.length } 050A 5B JUMPDEST 050B 50 POP 050C 61 PUSH2 0x027e 050F 61 PUSH2 0x0519 0512 36 CALLDATASIZE 0513 60 PUSH1 0x04 0515 61 PUSH2 0x55a4 0518 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @050C stack[-1] = 0x027e // @050F stack[0] = 0x0519 // @0512 stack[1] = msg.data.length // @0513 stack[2] = 0x04 // } // Block ends with call to 0x55a4, returns to 0x0519 label_0519: // Incoming return from call to 0x55A4 at 0x0518 0519 5B JUMPDEST 051A 61 PUSH2 0x2a00 051D 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x2a00 label_051E: // Incoming jump from 0x003E, if 0xded9382a == stack[-1] // Inputs[1] { @051F msg.value } 051E 5B JUMPDEST 051F 34 CALLVALUE 0520 80 DUP1 0521 15 ISZERO 0522 61 PUSH2 0x052a 0525 57 *JUMPI // Stack delta = +1 // Outputs[1] { @051F stack[0] = msg.value } // Block ends with conditional jump to 0x052a, if !msg.value label_0526: // Incoming jump from 0x0525, if not !msg.value // Inputs[1] { @0529 memory[0x00:0x00] } 0526 60 PUSH1 0x00 0528 80 DUP1 0529 FD *REVERT // Stack delta = +0 // Outputs[1] { @0529 revert(memory[0x00:0x00]); } // Block terminates label_052A: // Incoming jump from 0x0525, if !msg.value // Inputs[1] { @0532 msg.data.length } 052A 5B JUMPDEST 052B 50 POP 052C 61 PUSH2 0x0216 052F 61 PUSH2 0x0539 0532 36 CALLDATASIZE 0533 60 PUSH1 0x04 0535 61 PUSH2 0x575c 0538 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @052C stack[-1] = 0x0216 // @052F stack[0] = 0x0539 // @0532 stack[1] = msg.data.length // @0533 stack[2] = 0x04 // } // Block ends with call to 0x575c, returns to 0x0539 label_0539: // Incoming return from call to 0x575C at 0x0538 0539 5B JUMPDEST 053A 61 PUSH2 0x2a2d 053D 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x2a2d label_053E: // Incoming jump from 0x0049, if 0xe8e33700 == stack[-1] // Inputs[1] { @053F msg.value } 053E 5B JUMPDEST 053F 34 CALLVALUE 0540 80 DUP1 0541 15 ISZERO 0542 61 PUSH2 0x054a 0545 57 *JUMPI // Stack delta = +1 // Outputs[1] { @053F stack[0] = msg.value } // Block ends with conditional jump to 0x054a, if !msg.value label_0546: // Incoming jump from 0x0545, if not !msg.value // Inputs[1] { @0549 memory[0x00:0x00] } 0546 60 PUSH1 0x00 0548 80 DUP1 0549 FD *REVERT // Stack delta = +0 // Outputs[1] { @0549 revert(memory[0x00:0x00]); } // Block terminates label_054A: // Incoming jump from 0x0545, if !msg.value // Inputs[1] { @0552 msg.data.length } 054A 5B JUMPDEST 054B 50 POP 054C 61 PUSH2 0x055e 054F 61 PUSH2 0x0559 0552 36 CALLDATASIZE 0553 60 PUSH1 0x04 0555 61 PUSH2 0x58cb 0558 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @054C stack[-1] = 0x055e // @054F stack[0] = 0x0559 // @0552 stack[1] = msg.data.length // @0553 stack[2] = 0x04 // } // Block ends with call to 0x58cb, returns to 0x0559 label_0559: // Incoming return from call to 0x58CB at 0x0558 0559 5B JUMPDEST 055A 61 PUSH2 0x2b7e 055D 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x2b7e 055E 5B JUMPDEST 055F 60 PUSH1 0x40 0561 80 DUP1 0562 51 MLOAD 0563 93 SWAP4 0564 84 DUP5 0565 52 MSTORE 0566 60 PUSH1 0x20 0568 84 DUP5 0569 01 ADD 056A 92 SWAP3 056B 90 SWAP1 056C 92 SWAP3 056D 52 MSTORE 056E 90 SWAP1 056F 82 DUP3 0570 01 ADD 0571 52 MSTORE 0572 60 PUSH1 0x60 0574 01 ADD 0575 61 PUSH2 0x0227 0578 56 *JUMP label_0579: // Incoming jump from 0x0054, if 0xf305d719 == stack[-1] // Inputs[1] { @0580 msg.data.length } 0579 5B JUMPDEST 057A 61 PUSH2 0x055e 057D 61 PUSH2 0x0587 0580 36 CALLDATASIZE 0581 60 PUSH1 0x04 0583 61 PUSH2 0x53ef 0586 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @057A stack[0] = 0x055e // @057D stack[1] = 0x0587 // @0580 stack[2] = msg.data.length // @0581 stack[3] = 0x04 // } // Block ends with call to 0x53ef, returns to 0x0587 label_0587: // Incoming return from call to 0x53EF at 0x0586 0587 5B JUMPDEST 0588 61 PUSH2 0x2cec 058B 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x2cec label_058C: // Incoming jump from 0x005F, if 0xfb3bdb41 == stack[-1] // Inputs[1] { @0593 msg.data.length } 058C 5B JUMPDEST 058D 61 PUSH2 0x027e 0590 61 PUSH2 0x059a 0593 36 CALLDATASIZE 0594 60 PUSH1 0x04 0596 61 PUSH2 0x57f2 0599 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @058D stack[0] = 0x027e // @0590 stack[1] = 0x059a // @0593 stack[2] = msg.data.length // @0594 stack[3] = 0x04 // } // Block ends with call to 0x57f2, returns to 0x059A label_059A: // Incoming return from call to 0x57F2 at 0x0599 059A 5B JUMPDEST 059B 61 PUSH2 0x2fee 059E 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x2fee label_059F: // Incoming jump from 0x0215 // Incoming jump from 0x2B68 // Inputs[2] // { // @05A3 stack[-1] // @05A4 block.timestamp // } 059F 5B JUMPDEST 05A0 60 PUSH1 0x00 05A2 80 DUP1 05A3 82 DUP3 05A4 42 TIMESTAMP 05A5 81 DUP2 05A6 10 LT 05A7 15 ISZERO 05A8 61 PUSH2 0x0612 05AB 57 *JUMPI // Stack delta = +3 // Outputs[3] // { // @05A0 stack[0] = 0x00 // @05A2 stack[1] = 0x00 // @05A3 stack[2] = stack[-1] // } // Block ends with conditional jump to 0x0612, if !(stack[-1] < block.timestamp) label_05AC: // Incoming jump from 0x05AB, if not !(stack[-1] < block.timestamp) // Inputs[1] { @05AE memory[0x40:0x60] } 05AC 60 PUSH1 0x40 05AE 51 MLOAD 05AF 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 05D0 81 DUP2 05D1 52 MSTORE 05D2 60 PUSH1 0x20 05D4 60 PUSH1 0x04 05D6 82 DUP3 05D7 01 ADD 05D8 52 MSTORE 05D9 60 PUSH1 0x19 05DB 60 PUSH1 0x24 05DD 82 DUP3 05DE 01 ADD 05DF 52 MSTORE 05E0 7F PUSH32 0x46726178737761705631526f757465723a204558504952454400000000000000 0601 60 PUSH1 0x44 0603 82 DUP3 0604 01 ADD 0605 52 MSTORE 0606 60 PUSH1 0x64 0608 01 ADD // Stack delta = +1 // Outputs[5] // { // @05D1 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @05D8 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @05DF memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x19 // @0605 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000 // @0608 stack[0] = 0x64 + memory[0x40:0x60] // } // Block continues label_0609: // Incoming jump from 0x49A1 // Incoming jump from 0x0608 // Incoming jump from 0x2D5B // Incoming jump from 0x1F06 // Incoming jump from 0x1A43 // Incoming jump from 0x131A // Incoming jump from 0x305A // Incoming jump from 0x37BA // Incoming jump from 0x2010 // Incoming jump from 0x2BED // Incoming jump from 0x22A2 // Incoming jump from 0x4A74 // Incoming jump from 0x4B59 // Incoming jump from 0x076B // Incoming jump from 0x4905 // Incoming jump from 0x42D3 // Incoming jump from 0x16B0 // Incoming jump from 0x1E99 // Incoming jump from 0x0F75 // Incoming jump from 0x2715 // Incoming jump from 0x07D8 // Incoming jump from 0x4BF4 // Incoming jump from 0x3F8E // Incoming jump from 0x0EB3 // Incoming jump from 0x0D9D // Incoming jump from 0x2092 // Inputs[3] // { // @060C memory[0x40:0x60] // @060E stack[-1] // @0611 memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]] // } 0609 5B JUMPDEST 060A 60 PUSH1 0x40 060C 51 MLOAD 060D 80 DUP1 060E 91 SWAP2 060F 03 SUB 0610 90 SWAP1 0611 FD *REVERT // Stack delta = -1 // Outputs[1] { @0611 revert(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]); } // Block terminates label_0612: // Incoming jump from 0x05AB, if !(stack[-1] < block.timestamp) // Inputs[6] // { // @0616 stack[-9] // @0638 stack[-8] // @0639 stack[-7] // @063A stack[-6] // @063B address(this) // @063C stack[-4] // } 0612 5B JUMPDEST 0613 61 PUSH2 0x0641 0616 89 DUP10 0617 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 0638 8A DUP11 0639 8A DUP11 063A 8A DUP11 063B 30 ADDRESS 063C 8A DUP11 063D 61 PUSH2 0x26a8 0640 56 *JUMP // Stack delta = +8 // Outputs[8] // { // @0613 stack[0] = 0x0641 // @0616 stack[1] = stack[-9] // @0617 stack[2] = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 // @0638 stack[3] = stack[-8] // @0639 stack[4] = stack[-7] // @063A stack[5] = stack[-6] // @063B stack[6] = address(this) // @063C stack[7] = stack[-4] // } // Block ends with unconditional jump to 0x26a8 0641 5B JUMPDEST 0642 90 SWAP1 0643 93 SWAP4 0644 50 POP 0645 91 SWAP2 0646 50 POP 0647 61 PUSH2 0x0651 064A 89 DUP10 064B 86 DUP7 064C 85 DUP6 064D 61 PUSH2 0x3482 0650 56 *JUMP 0651 5B JUMPDEST 0652 60 PUSH1 0x40 0654 51 MLOAD 0655 7F PUSH32 0x2e1a7d4d00000000000000000000000000000000000000000000000000000000 0676 81 DUP2 0677 52 MSTORE 0678 60 PUSH1 0x04 067A 81 DUP2 067B 01 ADD 067C 83 DUP4 067D 90 SWAP1 067E 52 MSTORE 067F 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 06A0 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 06B5 16 AND 06B6 90 SWAP1 06B7 63 PUSH4 0x2e1a7d4d 06BC 90 SWAP1 06BD 60 PUSH1 0x24 06BF 01 ADD 06C0 60 PUSH1 0x00 06C2 60 PUSH1 0x40 06C4 51 MLOAD 06C5 80 DUP1 06C6 83 DUP4 06C7 03 SUB 06C8 81 DUP2 06C9 60 PUSH1 0x00 06CB 87 DUP8 06CC 80 DUP1 06CD 3B EXTCODESIZE 06CE 15 ISZERO 06CF 80 DUP1 06D0 15 ISZERO 06D1 61 PUSH2 0x06d9 06D4 57 *JUMPI 06D5 60 PUSH1 0x00 06D7 80 DUP1 06D8 FD *REVERT 06D9 5B JUMPDEST 06DA 50 POP 06DB 5A GAS 06DC F1 CALL 06DD 15 ISZERO 06DE 80 DUP1 06DF 15 ISZERO 06E0 61 PUSH2 0x06ed 06E3 57 *JUMPI 06E4 3D RETURNDATASIZE 06E5 60 PUSH1 0x00 06E7 80 DUP1 06E8 3E RETURNDATACOPY 06E9 3D RETURNDATASIZE 06EA 60 PUSH1 0x00 06EC FD *REVERT 06ED 5B JUMPDEST 06EE 50 POP 06EF 50 POP 06F0 50 POP 06F1 50 POP 06F2 61 PUSH2 0x06fb 06F5 85 DUP6 06F6 83 DUP4 06F7 61 PUSH2 0x3618 06FA 56 *JUMP 06FB 5B JUMPDEST 06FC 50 POP 06FD 96 SWAP7 06FE 50 POP 06FF 96 SWAP7 0700 94 SWAP5 0701 50 POP 0702 50 POP 0703 50 POP 0704 50 POP 0705 50 POP 0706 56 *JUMP label_0707: // Incoming jump from 0x024F // Inputs[1] { @070A memory[0x40:0x60] } 0707 5B JUMPDEST 0708 60 PUSH1 0x40 070A 51 MLOAD 070B 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 072C 81 DUP2 072D 52 MSTORE 072E 60 PUSH1 0x20 0730 60 PUSH1 0x04 0732 82 DUP3 0733 01 ADD 0734 52 MSTORE 0735 60 PUSH1 0x1d 0737 60 PUSH1 0x24 0739 82 DUP3 073A 01 ADD 073B 52 MSTORE 073C 7F PUSH32 0x446570726563617465643a2055736520676574416d6f756e74734f7574000000 075D 60 PUSH1 0x44 075F 82 DUP3 0760 01 ADD 0761 52 MSTORE 0762 60 PUSH1 0x00 0764 90 SWAP1 0765 60 PUSH1 0x64 0767 01 ADD 0768 61 PUSH2 0x0609 076B 56 *JUMP // Stack delta = +2 // Outputs[6] // { // @072D memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @0734 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @073B memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x1d // @0761 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x446570726563617465643a2055736520676574416d6f756e74734f7574000000 // @0764 stack[0] = 0x00 // @0767 stack[1] = 0x64 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_076C: // Incoming jump from 0x027D // Inputs[2] // { // @076F stack[-1] // @0770 block.timestamp // } 076C 5B JUMPDEST 076D 60 PUSH1 0x60 076F 81 DUP2 0770 42 TIMESTAMP 0771 81 DUP2 0772 10 LT 0773 15 ISZERO 0774 61 PUSH2 0x07d9 0777 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @076D stack[0] = 0x60 // @076F stack[1] = stack[-1] // } // Block ends with conditional jump to 0x07d9, if !(stack[-1] < block.timestamp) label_0778: // Incoming jump from 0x0777, if not !(stack[-1] < block.timestamp) // Inputs[1] { @077A memory[0x40:0x60] } 0778 60 PUSH1 0x40 077A 51 MLOAD 077B 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 079C 81 DUP2 079D 52 MSTORE 079E 60 PUSH1 0x20 07A0 60 PUSH1 0x04 07A2 82 DUP3 07A3 01 ADD 07A4 52 MSTORE 07A5 60 PUSH1 0x19 07A7 60 PUSH1 0x24 07A9 82 DUP3 07AA 01 ADD 07AB 52 MSTORE 07AC 7F PUSH32 0x46726178737761705631526f757465723a204558504952454400000000000000 07CD 60 PUSH1 0x44 07CF 82 DUP3 07D0 01 ADD 07D1 52 MSTORE 07D2 60 PUSH1 0x64 07D4 01 ADD 07D5 61 PUSH2 0x0609 07D8 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @079D memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @07A4 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @07AB memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x19 // @07D1 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000 // @07D4 stack[0] = 0x64 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_07D9: // Incoming jump from 0x0777, if !(stack[-1] < block.timestamp) // Inputs[2] // { // @0811 stack[-6] // @0812 stack[-5] // } 07D9 5B JUMPDEST 07DA 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 07EF 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 0810 16 AND 0811 86 DUP7 0812 86 DUP7 0813 61 PUSH2 0x081d 0816 60 PUSH1 0x01 0818 82 DUP3 0819 61 PUSH2 0x5976 081C 56 *JUMP // Stack delta = +6 // Outputs[6] // { // @0810 stack[0] = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 & 0xffffffffffffffffffffffffffffffffffffffff // @0811 stack[1] = stack[-6] // @0812 stack[2] = stack[-5] // @0813 stack[3] = 0x081d // @0816 stack[4] = 0x01 // @0818 stack[5] = stack[-5] // } // Block ends with call to 0x5976, returns to 0x081D label_081D: // Incoming return from call to 0x5976 at 0x081C // Inputs[2] // { // @081E stack[-2] // @081F stack[-1] // } 081D 5B JUMPDEST 081E 81 DUP2 081F 81 DUP2 0820 10 LT 0821 61 PUSH2 0x082c 0824 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x082c, if stack[-1] < stack[-2] label_0825: // Incoming jump from 0x0824, if not stack[-1] < stack[-2] 0825 61 PUSH2 0x082c 0828 61 PUSH2 0x598d 082B 56 *JUMP // Stack delta = +1 // Outputs[1] { @0825 stack[0] = 0x082c } // Block ends with unconditional jump to 0x598d label_082C: // Incoming jump from 0x0824, if stack[-1] < stack[-2] // Inputs[3] // { // @082D stack[-2] // @082D stack[-1] // @0832 stack[-3] // } 082C 5B JUMPDEST 082D 90 SWAP1 082E 50 POP 082F 60 PUSH1 0x20 0831 02 MUL 0832 01 ADD 0833 60 PUSH1 0x20 0835 81 DUP2 0836 01 ADD 0837 90 SWAP1 0838 61 PUSH2 0x0841 083B 91 SWAP2 083C 90 SWAP1 083D 61 PUSH2 0x59bc 0840 56 *JUMP // Stack delta = +0 // Outputs[3] // { // @083B stack[-3] = 0x0841 // @083C stack[-1] = 0x20 * stack[-1] + stack[-3] // @083C stack[-2] = 0x20 * stack[-1] + stack[-3] + 0x20 // } // Block ends with unconditional jump to 0x59bc 0841 5B JUMPDEST 0842 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0857 16 AND 0858 14 EQ 0859 61 PUSH2 0x08be 085C 57 *JUMPI 085D 60 PUSH1 0x40 085F 51 MLOAD 0860 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0881 81 DUP2 0882 52 MSTORE 0883 60 PUSH1 0x20 0885 60 PUSH1 0x04 0887 82 DUP3 0888 01 ADD 0889 52 MSTORE 088A 60 PUSH1 0x1e 088C 60 PUSH1 0x24 088E 82 DUP3 088F 01 ADD 0890 52 MSTORE 0891 7F PUSH32 0x46726178737761705631526f757465723a20494e56414c49445f504154480000 08B2 60 PUSH1 0x44 08B4 82 DUP3 08B5 01 ADD 08B6 52 MSTORE 08B7 60 PUSH1 0x64 08B9 01 ADD 08BA 61 PUSH2 0x0609 08BD 56 *JUMP 08BE 5B JUMPDEST 08BF 61 PUSH2 0x091c 08C2 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 08E3 89 DUP10 08E4 88 DUP9 08E5 88 DUP9 08E6 80 DUP1 08E7 80 DUP1 08E8 60 PUSH1 0x20 08EA 02 MUL 08EB 60 PUSH1 0x20 08ED 01 ADD 08EE 60 PUSH1 0x40 08F0 51 MLOAD 08F1 90 SWAP1 08F2 81 DUP2 08F3 01 ADD 08F4 60 PUSH1 0x40 08F6 52 MSTORE 08F7 80 DUP1 08F8 93 SWAP4 08F9 92 SWAP3 08FA 91 SWAP2 08FB 90 SWAP1 08FC 81 DUP2 08FD 81 DUP2 08FE 52 MSTORE 08FF 60 PUSH1 0x20 0901 01 ADD 0902 83 DUP4 0903 83 DUP4 0904 60 PUSH1 0x20 0906 02 MUL 0907 80 DUP1 0908 82 DUP3 0909 84 DUP5 090A 37 CALLDATACOPY 090B 60 PUSH1 0x00 090D 92 SWAP3 090E 01 ADD 090F 91 SWAP2 0910 90 SWAP1 0911 91 SWAP2 0912 52 MSTORE 0913 50 POP 0914 61 PUSH2 0x3727 0917 92 SWAP3 0918 50 POP 0919 50 POP 091A 50 POP 091B 56 *JUMP 091C 5B JUMPDEST 091D 91 SWAP2 091E 50 POP 091F 86 DUP7 0920 82 DUP3 0921 60 PUSH1 0x01 0923 84 DUP5 0924 51 MLOAD 0925 61 PUSH2 0x092e 0928 91 SWAP2 0929 90 SWAP1 092A 61 PUSH2 0x5976 092D 56 *JUMP 092E 5B JUMPDEST 092F 81 DUP2 0930 51 MLOAD 0931 81 DUP2 0932 10 LT 0933 61 PUSH2 0x093e 0936 57 *JUMPI 0937 61 PUSH2 0x093e 093A 61 PUSH2 0x598d 093D 56 *JUMP 093E 5B JUMPDEST 093F 60 PUSH1 0x20 0941 02 MUL 0942 60 PUSH1 0x20 0944 01 ADD 0945 01 ADD 0946 51 MLOAD 0947 10 LT 0948 15 ISZERO 0949 61 PUSH2 0x09d4 094C 57 *JUMPI 094D 60 PUSH1 0x40 094F 51 MLOAD 0950 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0971 81 DUP2 0972 52 MSTORE 0973 60 PUSH1 0x20 0975 60 PUSH1 0x04 0977 82 DUP3 0978 01 ADD 0979 52 MSTORE 097A 60 PUSH1 0x2c 097C 60 PUSH1 0x24 097E 82 DUP3 097F 01 ADD 0980 52 MSTORE 0981 7F PUSH32 0x46726178737761705631526f757465723a20494e53554646494349454e545f4f 09A2 60 PUSH1 0x44 09A4 82 DUP3 09A5 01 ADD 09A6 52 MSTORE 09A7 7F PUSH32 0x55545055545f414d4f554e540000000000000000000000000000000000000000 09C8 60 PUSH1 0x64 09CA 82 DUP3 09CB 01 ADD 09CC 52 MSTORE 09CD 60 PUSH1 0x84 09CF 01 ADD 09D0 61 PUSH2 0x0609 09D3 56 *JUMP 09D4 5B JUMPDEST 09D5 61 PUSH2 0x0a99 09D8 86 DUP7 09D9 86 DUP7 09DA 60 PUSH1 0x00 09DC 81 DUP2 09DD 81 DUP2 09DE 10 LT 09DF 61 PUSH2 0x09ea 09E2 57 *JUMPI 09E3 61 PUSH2 0x09ea 09E6 61 PUSH2 0x598d 09E9 56 *JUMP label_09EA: // Incoming jump from 0x0EC2, if 0x00 < stack[-5] // Inputs[3] // { // @09EB stack[-1] // @09EB stack[-2] // @09F0 stack[-3] // } 09EA 5B JUMPDEST 09EB 90 SWAP1 09EC 50 POP 09ED 60 PUSH1 0x20 09EF 02 MUL 09F0 01 ADD 09F1 60 PUSH1 0x20 09F3 81 DUP2 09F4 01 ADD 09F5 90 SWAP1 09F6 61 PUSH2 0x09ff 09F9 91 SWAP2 09FA 90 SWAP1 09FB 61 PUSH2 0x59bc 09FE 56 *JUMP // Stack delta = +0 // Outputs[3] // { // @09F9 stack[-3] = 0x09ff // @09FA stack[-1] = 0x20 * stack[-1] + stack[-3] // @09FA stack[-2] = 0x20 * stack[-1] + stack[-3] + 0x20 // } // Block ends with unconditional jump to 0x59bc 09FF 5B JUMPDEST 0A00 33 CALLER 0A01 61 PUSH2 0x0a79 0A04 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 0A25 8A DUP11 0A26 8A DUP11 0A27 60 PUSH1 0x00 0A29 81 DUP2 0A2A 81 DUP2 0A2B 10 LT 0A2C 61 PUSH2 0x0a37 0A2F 57 *JUMPI 0A30 61 PUSH2 0x0a37 0A33 61 PUSH2 0x598d 0A36 56 *JUMP 0A37 5B JUMPDEST 0A38 90 SWAP1 0A39 50 POP 0A3A 60 PUSH1 0x20 0A3C 02 MUL 0A3D 01 ADD 0A3E 60 PUSH1 0x20 0A40 81 DUP2 0A41 01 ADD 0A42 90 SWAP1 0A43 61 PUSH2 0x0a4c 0A46 91 SWAP2 0A47 90 SWAP1 0A48 61 PUSH2 0x59bc 0A4B 56 *JUMP 0A4C 5B JUMPDEST 0A4D 8B DUP12 0A4E 8B DUP12 0A4F 60 PUSH1 0x01 0A51 81 DUP2 0A52 81 DUP2 0A53 10 LT 0A54 61 PUSH2 0x0a5f 0A57 57 *JUMPI 0A58 61 PUSH2 0x0a5f 0A5B 61 PUSH2 0x598d 0A5E 56 *JUMP 0A5F 5B JUMPDEST 0A60 90 SWAP1 0A61 50 POP 0A62 60 PUSH1 0x20 0A64 02 MUL 0A65 01 ADD 0A66 60 PUSH1 0x20 0A68 81 DUP2 0A69 01 ADD 0A6A 90 SWAP1 0A6B 61 PUSH2 0x0a74 0A6E 91 SWAP2 0A6F 90 SWAP1 0A70 61 PUSH2 0x59bc 0A73 56 *JUMP 0A74 5B JUMPDEST 0A75 61 PUSH2 0x3a15 0A78 56 *JUMP 0A79 5B JUMPDEST 0A7A 85 DUP6 0A7B 60 PUSH1 0x00 0A7D 81 DUP2 0A7E 51 MLOAD 0A7F 81 DUP2 0A80 10 LT 0A81 61 PUSH2 0x0a8c 0A84 57 *JUMPI 0A85 61 PUSH2 0x0a8c 0A88 61 PUSH2 0x598d 0A8B 56 *JUMP 0A8C 5B JUMPDEST 0A8D 60 PUSH1 0x20 0A8F 02 MUL 0A90 60 PUSH1 0x20 0A92 01 ADD 0A93 01 ADD 0A94 51 MLOAD 0A95 61 PUSH2 0x3b4a 0A98 56 *JUMP 0A99 5B JUMPDEST 0A9A 61 PUSH2 0x0ad8 0A9D 82 DUP3 0A9E 87 DUP8 0A9F 87 DUP8 0AA0 80 DUP1 0AA1 80 DUP1 0AA2 60 PUSH1 0x20 0AA4 02 MUL 0AA5 60 PUSH1 0x20 0AA7 01 ADD 0AA8 60 PUSH1 0x40 0AAA 51 MLOAD 0AAB 90 SWAP1 0AAC 81 DUP2 0AAD 01 ADD 0AAE 60 PUSH1 0x40 0AB0 52 MSTORE 0AB1 80 DUP1 0AB2 93 SWAP4 0AB3 92 SWAP3 0AB4 91 SWAP2 0AB5 90 SWAP1 0AB6 81 DUP2 0AB7 81 DUP2 0AB8 52 MSTORE 0AB9 60 PUSH1 0x20 0ABB 01 ADD 0ABC 83 DUP4 0ABD 83 DUP4 0ABE 60 PUSH1 0x20 0AC0 02 MUL 0AC1 80 DUP1 0AC2 82 DUP3 0AC3 84 DUP5 0AC4 37 CALLDATACOPY 0AC5 60 PUSH1 0x00 0AC7 92 SWAP3 0AC8 01 ADD 0AC9 91 SWAP2 0ACA 90 SWAP1 0ACB 91 SWAP2 0ACC 52 MSTORE 0ACD 50 POP 0ACE 30 ADDRESS 0ACF 92 SWAP3 0AD0 50 POP 0AD1 61 PUSH2 0x3ce9 0AD4 91 SWAP2 0AD5 50 POP 0AD6 50 POP 0AD7 56 *JUMP 0AD8 5B JUMPDEST 0AD9 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 0AFA 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0B0F 16 AND 0B10 63 PUSH4 0x2e1a7d4d 0B15 83 DUP4 0B16 60 PUSH1 0x01 0B18 85 DUP6 0B19 51 MLOAD 0B1A 61 PUSH2 0x0b23 0B1D 91 SWAP2 0B1E 90 SWAP1 0B1F 61 PUSH2 0x5976 0B22 56 *JUMP 0B23 5B JUMPDEST 0B24 81 DUP2 0B25 51 MLOAD 0B26 81 DUP2 0B27 10 LT 0B28 61 PUSH2 0x0b33 0B2B 57 *JUMPI 0B2C 61 PUSH2 0x0b33 0B2F 61 PUSH2 0x598d 0B32 56 *JUMP 0B33 5B JUMPDEST 0B34 60 PUSH1 0x20 0B36 02 MUL 0B37 60 PUSH1 0x20 0B39 01 ADD 0B3A 01 ADD 0B3B 51 MLOAD 0B3C 60 PUSH1 0x40 0B3E 51 MLOAD 0B3F 82 DUP3 0B40 63 PUSH4 0xffffffff 0B45 16 AND 0B46 60 PUSH1 0xe0 0B48 1B SHL 0B49 81 DUP2 0B4A 52 MSTORE 0B4B 60 PUSH1 0x04 0B4D 01 ADD 0B4E 61 PUSH2 0x0b59 0B51 91 SWAP2 0B52 81 DUP2 0B53 52 MSTORE 0B54 60 PUSH1 0x20 0B56 01 ADD 0B57 90 SWAP1 0B58 56 *JUMP 0B59 5B JUMPDEST 0B5A 60 PUSH1 0x00 0B5C 60 PUSH1 0x40 0B5E 51 MLOAD 0B5F 80 DUP1 0B60 83 DUP4 0B61 03 SUB 0B62 81 DUP2 0B63 60 PUSH1 0x00 0B65 87 DUP8 0B66 80 DUP1 0B67 3B EXTCODESIZE 0B68 15 ISZERO 0B69 80 DUP1 0B6A 15 ISZERO 0B6B 61 PUSH2 0x0b73 0B6E 57 *JUMPI 0B6F 60 PUSH1 0x00 0B71 80 DUP1 0B72 FD *REVERT 0B73 5B JUMPDEST 0B74 50 POP 0B75 5A GAS 0B76 F1 CALL 0B77 15 ISZERO 0B78 80 DUP1 0B79 15 ISZERO 0B7A 61 PUSH2 0x0b87 0B7D 57 *JUMPI 0B7E 3D RETURNDATASIZE 0B7F 60 PUSH1 0x00 0B81 80 DUP1 0B82 3E RETURNDATACOPY 0B83 3D RETURNDATASIZE 0B84 60 PUSH1 0x00 0B86 FD *REVERT 0B87 5B JUMPDEST 0B88 50 POP 0B89 50 POP 0B8A 50 POP 0B8B 50 POP 0B8C 61 PUSH2 0x0bbb 0B8F 84 DUP5 0B90 83 DUP4 0B91 60 PUSH1 0x01 0B93 85 DUP6 0B94 51 MLOAD 0B95 61 PUSH2 0x0b9e 0B98 91 SWAP2 0B99 90 SWAP1 0B9A 61 PUSH2 0x5976 0B9D 56 *JUMP 0B9E 5B JUMPDEST 0B9F 81 DUP2 0BA0 51 MLOAD 0BA1 81 DUP2 0BA2 10 LT 0BA3 61 PUSH2 0x0bae 0BA6 57 *JUMPI 0BA7 61 PUSH2 0x0bae 0BAA 61 PUSH2 0x598d 0BAD 56 *JUMP 0BAE 5B JUMPDEST 0BAF 60 PUSH1 0x20 0BB1 02 MUL 0BB2 60 PUSH1 0x20 0BB4 01 ADD 0BB5 01 ADD 0BB6 51 MLOAD 0BB7 61 PUSH2 0x3618 0BBA 56 *JUMP 0BBB 5B JUMPDEST 0BBC 50 POP 0BBD 96 SWAP7 0BBE 95 SWAP6 0BBF 50 POP 0BC0 50 POP 0BC1 50 POP 0BC2 50 POP 0BC3 50 POP 0BC4 50 POP 0BC5 56 *JUMP label_0BC6: // Incoming jump from 0x02AA // Inputs[2] // { // @0BED stack[-2] // @0BEE stack[-1] // } 0BC6 5B JUMPDEST 0BC7 60 PUSH1 0x60 0BC9 61 PUSH2 0x0bf3 0BCC 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 0BED 84 DUP5 0BEE 84 DUP5 0BEF 61 PUSH2 0x3efb 0BF2 56 *JUMP // Stack delta = +5 // Outputs[5] // { // @0BC7 stack[0] = 0x60 // @0BC9 stack[1] = 0x0bf3 // @0BCC stack[2] = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f // @0BED stack[3] = stack[-2] // @0BEE stack[4] = stack[-1] // } // Block ends with call to 0x3efb, returns to 0x0BF3 label_0BF3: // Incoming return from call to 0x53BA at 0x5C10 // Incoming return from call to 0x5693 at 0x5A0E // Incoming return from call to 0x3727 at 0x1645 // Incoming return from call to 0x3EFB at 0x0BF2 // Incoming return from call to 0x4240 at 0x2237 // Incoming return from call to 0x4B61 at 0x2A2C // Incoming return from call to 0x53BA at 0x59D8 // Inputs[3] // { // @0BF4 stack[-1] // @0BF4 stack[-5] // @0BF5 stack[-4] // } 0BF3 5B JUMPDEST 0BF4 93 SWAP4 0BF5 92 SWAP3 0BF6 50 POP 0BF7 50 POP 0BF8 50 POP 0BF9 56 *JUMP // Stack delta = -4 // Outputs[1] { @0BF4 stack[-5] = stack[-1] } // Block ends with unconditional jump to stack[-5] label_0BFA: // Incoming jump from 0x02CA // Inputs[2] // { // @0C24 stack[-11] // @0C25 stack[-10] // } 0BFA 5B JUMPDEST 0BFB 60 PUSH1 0x00 0BFD 80 DUP1 0BFE 60 PUSH1 0x00 0C00 61 PUSH2 0x0c2a 0C03 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 0C24 8F DUP16 0C25 8F DUP16 0C26 61 PUSH2 0x3a15 0C29 56 *JUMP // Stack delta = +7 // Outputs[7] // { // @0BFB stack[0] = 0x00 // @0BFD stack[1] = 0x00 // @0BFE stack[2] = 0x00 // @0C00 stack[3] = 0x0c2a // @0C03 stack[4] = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f // @0C24 stack[5] = stack[-11] // @0C25 stack[6] = stack[-10] // } // Block ends with call to 0x3a15, returns to 0x0C2A label_0C2A: // Incoming return from call to 0x3A15 at 0x0C29 // Inputs[3] // { // @0C2B stack[-2] // @0C2B stack[-1] // @0C2F stack[-8] // } 0C2A 5B JUMPDEST 0C2B 90 SWAP1 0C2C 50 POP 0C2D 60 PUSH1 0x00 0C2F 87 DUP8 0C30 61 PUSH2 0x0c39 0C33 57 *JUMPI // Stack delta = +0 // Outputs[2] // { // @0C2B stack[-2] = stack[-1] // @0C2D stack[-1] = 0x00 // } // Block ends with conditional jump to 0x0c39, if stack[-8] label_0C34: // Incoming jump from 0x0C33, if not stack[-8] // Inputs[1] { @0C34 stack[-13] } 0C34 8C DUP13 0C35 61 PUSH2 0x0c5b 0C38 56 *JUMP // Stack delta = +1 // Outputs[1] { @0C34 stack[0] = stack[-13] } // Block ends with unconditional jump to 0x0c5b label_0C39: // Incoming jump from 0x0C33, if stack[-8] // Inputs[11] // { // @0C5E memory[0x40:0x60] // @0C82 msg.sender // @0C88 address(this) // @0C99 stack[-9] // @0C9E stack[-7] // @0CA9 stack[-6] // @0CB0 stack[-5] // @0CB4 stack[-1] // @0CCB stack[-2] // @0CDB memory[0x40:0x60] // @0CE4 address(stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // } 0C39 5B JUMPDEST 0C3A 7F PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 0C5B 5B JUMPDEST 0C5C 60 PUSH1 0x40 0C5E 51 MLOAD 0C5F 7F PUSH32 0xd505accf00000000000000000000000000000000000000000000000000000000 0C80 81 DUP2 0C81 52 MSTORE 0C82 33 CALLER 0C83 60 PUSH1 0x04 0C85 82 DUP3 0C86 01 ADD 0C87 52 MSTORE 0C88 30 ADDRESS 0C89 60 PUSH1 0x24 0C8B 82 DUP3 0C8C 01 ADD 0C8D 52 MSTORE 0C8E 60 PUSH1 0x44 0C90 81 DUP2 0C91 01 ADD 0C92 82 DUP3 0C93 90 SWAP1 0C94 52 MSTORE 0C95 60 PUSH1 0x64 0C97 81 DUP2 0C98 01 ADD 0C99 8B DUP12 0C9A 90 SWAP1 0C9B 52 MSTORE 0C9C 60 PUSH1 0xff 0C9E 89 DUP10 0C9F 16 AND 0CA0 60 PUSH1 0x84 0CA2 82 DUP3 0CA3 01 ADD 0CA4 52 MSTORE 0CA5 60 PUSH1 0xa4 0CA7 81 DUP2 0CA8 01 ADD 0CA9 88 DUP9 0CAA 90 SWAP1 0CAB 52 MSTORE 0CAC 60 PUSH1 0xc4 0CAE 81 DUP2 0CAF 01 ADD 0CB0 87 DUP8 0CB1 90 SWAP1 0CB2 52 MSTORE 0CB3 90 SWAP1 0CB4 91 SWAP2 0CB5 50 POP 0CB6 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0CCB 83 DUP4 0CCC 16 AND 0CCD 90 SWAP1 0CCE 63 PUSH4 0xd505accf 0CD3 90 SWAP1 0CD4 60 PUSH1 0xe4 0CD6 01 ADD 0CD7 60 PUSH1 0x00 0CD9 60 PUSH1 0x40 0CDB 51 MLOAD 0CDC 80 DUP1 0CDD 83 DUP4 0CDE 03 SUB 0CDF 81 DUP2 0CE0 60 PUSH1 0x00 0CE2 87 DUP8 0CE3 80 DUP1 0CE4 3B EXTCODESIZE 0CE5 15 ISZERO 0CE6 80 DUP1 0CE7 15 ISZERO 0CE8 61 PUSH2 0x0cf0 0CEB 57 *JUMPI // Stack delta = +10 // Outputs[19] // { // @0C81 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0xd505accf00000000000000000000000000000000000000000000000000000000 // @0C87 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = msg.sender // @0C8D memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = address(this) // @0C94 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff // @0C9B memory[memory[0x40:0x60] + 0x64:memory[0x40:0x60] + 0x64 + 0x20] = stack[-9] // @0CA4 memory[memory[0x40:0x60] + 0x84:memory[0x40:0x60] + 0x84 + 0x20] = stack[-7] & 0xff // @0CAB memory[memory[0x40:0x60] + 0xa4:memory[0x40:0x60] + 0xa4 + 0x20] = stack[-6] // @0CB2 memory[memory[0x40:0x60] + 0xc4:memory[0x40:0x60] + 0xc4 + 0x20] = stack[-5] // @0CB4 stack[-1] = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff // @0CCD stack[0] = stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff // @0CD3 stack[1] = 0xd505accf // @0CD6 stack[2] = 0xe4 + memory[0x40:0x60] // @0CD7 stack[3] = 0x00 // @0CDB stack[4] = memory[0x40:0x60] // @0CDE stack[5] = (0xe4 + memory[0x40:0x60]) - memory[0x40:0x60] // @0CDF stack[6] = memory[0x40:0x60] // @0CE0 stack[7] = 0x00 // @0CE2 stack[8] = stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff // @0CE5 stack[9] = !address(stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // } // Block ends with conditional jump to 0x0cf0, if !!address(stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff).code.length label_0CEC: // Incoming jump from 0x0CEB, if not !!address(stack[-3] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Incoming jump from 0x0CEB, if not !!address(stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Inputs[1] { @0CEF memory[0x00:0x00] } 0CEC 60 PUSH1 0x00 0CEE 80 DUP1 0CEF FD *REVERT // Stack delta = +0 // Outputs[1] { @0CEF revert(memory[0x00:0x00]); } // Block terminates label_0CF0: // Incoming jump from 0x0CEB, if !!address(stack[-3] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Incoming jump from 0x0CEB, if !!address(stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Inputs[9] // { // @0CF2 msg.gas // @0CF3 memory[stack[-4]:stack[-4] + stack[-5]] // @0CF3 stack[-3] // @0CF3 stack[-6] // @0CF3 stack[-5] // @0CF3 stack[-4] // @0CF3 stack[-2] // @0CF3 stack[-7] // @0CF3 address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // } 0CF0 5B JUMPDEST 0CF1 50 POP 0CF2 5A GAS 0CF3 F1 CALL 0CF4 15 ISZERO 0CF5 80 DUP1 0CF6 15 ISZERO 0CF7 61 PUSH2 0x0d04 0CFA 57 *JUMPI // Stack delta = -6 // Outputs[2] // { // @0CF3 memory[stack[-6]:stack[-6] + stack[-7]] = address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // @0CF4 stack[-7] = !address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // } // Block ends with conditional jump to 0x0d04, if !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) label_0CFB: // Incoming jump from 0x0CFA, if not !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // Inputs[4] // { // @0CFB returndata.length // @0CFF returndata[0x00:0x00 + returndata.length] // @0D00 returndata.length // @0D03 memory[0x00:0x00 + returndata.length] // } 0CFB 3D RETURNDATASIZE 0CFC 60 PUSH1 0x00 0CFE 80 DUP1 0CFF 3E RETURNDATACOPY 0D00 3D RETURNDATASIZE 0D01 60 PUSH1 0x00 0D03 FD *REVERT // Stack delta = +0 // Outputs[2] // { // @0CFF memory[0x00:0x00 + returndata.length] = returndata[0x00:0x00 + returndata.length] // @0D03 revert(memory[0x00:0x00 + returndata.length]); // } // Block terminates label_0D04: // Incoming jump from 0x0CFA, if !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // Inputs[7] // { // @0D0C stack[-19] // @0D0D stack[-18] // @0D0E stack[-17] // @0D0F stack[-16] // @0D10 stack[-15] // @0D11 stack[-14] // @0D12 stack[-13] // } 0D04 5B JUMPDEST 0D05 50 POP 0D06 50 POP 0D07 50 POP 0D08 50 POP 0D09 61 PUSH2 0x0d17 0D0C 8F DUP16 0D0D 8F DUP16 0D0E 8F DUP16 0D0F 8F DUP16 0D10 8F DUP16 0D11 8F DUP16 0D12 8F DUP16 0D13 61 PUSH2 0x26a8 0D16 56 *JUMP // Stack delta = +4 // Outputs[8] // { // @0D09 stack[-4] = 0x0d17 // @0D0C stack[-3] = stack[-19] // @0D0D stack[-2] = stack[-18] // @0D0E stack[-1] = stack[-17] // @0D0F stack[0] = stack[-16] // @0D10 stack[1] = stack[-15] // @0D11 stack[2] = stack[-14] // @0D12 stack[3] = stack[-13] // } // Block ends with unconditional jump to 0x26a8 0D17 5B JUMPDEST 0D18 80 DUP1 0D19 94 SWAP5 0D1A 50 POP 0D1B 81 DUP2 0D1C 95 SWAP6 0D1D 50 POP 0D1E 50 POP 0D1F 50 POP 0D20 50 POP 0D21 50 POP 0D22 9B SWAP12 0D23 50 POP 0D24 9B SWAP12 0D25 99 SWAP10 0D26 50 POP 0D27 50 POP 0D28 50 POP 0D29 50 POP 0D2A 50 POP 0D2B 50 POP 0D2C 50 POP 0D2D 50 POP 0D2E 50 POP 0D2F 50 POP 0D30 56 *JUMP label_0D31: // Incoming jump from 0x02EA // Inputs[2] // { // @0D34 stack[-1] // @0D35 block.timestamp // } 0D31 5B JUMPDEST 0D32 60 PUSH1 0x60 0D34 81 DUP2 0D35 42 TIMESTAMP 0D36 81 DUP2 0D37 10 LT 0D38 15 ISZERO 0D39 61 PUSH2 0x0d9e 0D3C 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @0D32 stack[0] = 0x60 // @0D34 stack[1] = stack[-1] // } // Block ends with conditional jump to 0x0d9e, if !(stack[-1] < block.timestamp) label_0D3D: // Incoming jump from 0x0D3C, if not !(stack[-1] < block.timestamp) // Inputs[1] { @0D3F memory[0x40:0x60] } 0D3D 60 PUSH1 0x40 0D3F 51 MLOAD 0D40 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0D61 81 DUP2 0D62 52 MSTORE 0D63 60 PUSH1 0x20 0D65 60 PUSH1 0x04 0D67 82 DUP3 0D68 01 ADD 0D69 52 MSTORE 0D6A 60 PUSH1 0x19 0D6C 60 PUSH1 0x24 0D6E 82 DUP3 0D6F 01 ADD 0D70 52 MSTORE 0D71 7F PUSH32 0x46726178737761705631526f757465723a204558504952454400000000000000 0D92 60 PUSH1 0x44 0D94 82 DUP3 0D95 01 ADD 0D96 52 MSTORE 0D97 60 PUSH1 0x64 0D99 01 ADD 0D9A 61 PUSH2 0x0609 0D9D 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @0D62 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @0D69 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @0D70 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x19 // @0D96 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000 // @0D99 stack[0] = 0x64 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_0D9E: // Incoming jump from 0x0D3C, if !(stack[-1] < block.timestamp) // Inputs[5] // { // @0DC3 stack[-8] // @0DC4 stack[-6] // @0DC5 stack[-5] // @0DD0 memory[0x40:0x60] // @0DEA msg.data[stack[-6]:stack[-6] + 0x20 * stack[-5]] // } 0D9E 5B JUMPDEST 0D9F 61 PUSH2 0x0dfc 0DA2 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 0DC3 89 DUP10 0DC4 88 DUP9 0DC5 88 DUP9 0DC6 80 DUP1 0DC7 80 DUP1 0DC8 60 PUSH1 0x20 0DCA 02 MUL 0DCB 60 PUSH1 0x20 0DCD 01 ADD 0DCE 60 PUSH1 0x40 0DD0 51 MLOAD 0DD1 90 SWAP1 0DD2 81 DUP2 0DD3 01 ADD 0DD4 60 PUSH1 0x40 0DD6 52 MSTORE 0DD7 80 DUP1 0DD8 93 SWAP4 0DD9 92 SWAP3 0DDA 91 SWAP2 0DDB 90 SWAP1 0DDC 81 DUP2 0DDD 81 DUP2 0DDE 52 MSTORE 0DDF 60 PUSH1 0x20 0DE1 01 ADD 0DE2 83 DUP4 0DE3 83 DUP4 0DE4 60 PUSH1 0x20 0DE6 02 MUL 0DE7 80 DUP1 0DE8 82 DUP3 0DE9 84 DUP5 0DEA 37 CALLDATACOPY 0DEB 60 PUSH1 0x00 0DED 92 SWAP3 0DEE 01 ADD 0DEF 91 SWAP2 0DF0 90 SWAP1 0DF1 91 SWAP2 0DF2 52 MSTORE 0DF3 50 POP 0DF4 61 PUSH2 0x3727 0DF7 92 SWAP3 0DF8 50 POP 0DF9 50 POP 0DFA 50 POP 0DFB 56 *JUMP // Stack delta = +4 // Outputs[8] // { // @0D9F stack[0] = 0x0dfc // @0DA2 stack[1] = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f // @0DC3 stack[2] = stack[-8] // @0DD6 memory[0x40:0x60] = memory[0x40:0x60] + 0x20 + 0x20 * stack[-5] // @0DD8 stack[3] = memory[0x40:0x60] // @0DDE memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = stack[-5] // @0DEA memory[0x20 + memory[0x40:0x60]:0x20 + memory[0x40:0x60] + 0x20 * stack[-5]] = msg.data[stack[-6]:stack[-6] + 0x20 * stack[-5]] // @0DF2 memory[0x20 + memory[0x40:0x60] + 0x20 * stack[-5]:0x20 + memory[0x40:0x60] + 0x20 * stack[-5] + 0x20] = 0x00 // } // Block ends with call to 0x3727, returns to 0x0DFC label_0DFC: // Incoming return from call to 0x3727 at 0x0DFB // Inputs[4] // { // @0DFD stack[-3] // @0DFD stack[-1] // @0DFF stack[-8] // @0E04 memory[stack[-1]:stack[-1] + 0x20] // } 0DFC 5B JUMPDEST 0DFD 91 SWAP2 0DFE 50 POP 0DFF 86 DUP7 0E00 82 DUP3 0E01 60 PUSH1 0x01 0E03 84 DUP5 0E04 51 MLOAD 0E05 61 PUSH2 0x0e0e 0E08 91 SWAP2 0E09 90 SWAP1 0E0A 61 PUSH2 0x5976 0E0D 56 *JUMP // Stack delta = +4 // Outputs[6] // { // @0DFD stack[-3] = stack[-1] // @0DFF stack[-1] = stack[-8] // @0E00 stack[0] = stack[-1] // @0E08 stack[1] = 0x0e0e // @0E09 stack[3] = memory[stack[-1]:stack[-1] + 0x20] // @0E09 stack[2] = 0x01 // } // Block ends with call to 0x5976, returns to 0x0E0E label_0E0E: // Incoming return from call to 0x5976 at 0x0E0D // Inputs[3] // { // @0E0F stack[-2] // @0E10 memory[stack[-2]:stack[-2] + 0x20] // @0E11 stack[-1] // } 0E0E 5B JUMPDEST 0E0F 81 DUP2 0E10 51 MLOAD 0E11 81 DUP2 0E12 10 LT 0E13 61 PUSH2 0x0e1e 0E16 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0e1e, if stack[-1] < memory[stack[-2]:stack[-2] + 0x20] label_0E17: // Incoming jump from 0x0E16, if not stack[-1] < memory[stack[-2]:stack[-2] + 0x20] 0E17 61 PUSH2 0x0e1e 0E1A 61 PUSH2 0x598d 0E1D 56 *JUMP // Stack delta = +1 // Outputs[1] { @0E17 stack[0] = 0x0e1e } // Block ends with unconditional jump to 0x598d label_0E1E: // Incoming jump from 0x0E16, if stack[-1] < memory[stack[-2]:stack[-2] + 0x20] // Inputs[4] // { // @0E21 stack[-1] // @0E25 stack[-2] // @0E26 memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @0E27 stack[-3] // } 0E1E 5B JUMPDEST 0E1F 60 PUSH1 0x20 0E21 02 MUL 0E22 60 PUSH1 0x20 0E24 01 ADD 0E25 01 ADD 0E26 51 MLOAD 0E27 10 LT 0E28 15 ISZERO 0E29 61 PUSH2 0x0eb4 0E2C 57 *JUMPI // Stack delta = -3 // Block ends with conditional jump to 0x0eb4, if !(memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] < stack[-3]) label_0E2D: // Incoming jump from 0x0E2C, if not !(memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] < stack[-3]) // Inputs[1] { @0E2F memory[0x40:0x60] } 0E2D 60 PUSH1 0x40 0E2F 51 MLOAD 0E30 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0E51 81 DUP2 0E52 52 MSTORE 0E53 60 PUSH1 0x20 0E55 60 PUSH1 0x04 0E57 82 DUP3 0E58 01 ADD 0E59 52 MSTORE 0E5A 60 PUSH1 0x2c 0E5C 60 PUSH1 0x24 0E5E 82 DUP3 0E5F 01 ADD 0E60 52 MSTORE 0E61 7F PUSH32 0x46726178737761705631526f757465723a20494e53554646494349454e545f4f 0E82 60 PUSH1 0x44 0E84 82 DUP3 0E85 01 ADD 0E86 52 MSTORE 0E87 7F PUSH32 0x55545055545f414d4f554e540000000000000000000000000000000000000000 0EA8 60 PUSH1 0x64 0EAA 82 DUP3 0EAB 01 ADD 0EAC 52 MSTORE 0EAD 60 PUSH1 0x84 0EAF 01 ADD 0EB0 61 PUSH2 0x0609 0EB3 56 *JUMP // Stack delta = +1 // Outputs[6] // { // @0E52 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @0E59 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @0E60 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x2c // @0E86 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x46726178737761705631526f757465723a20494e53554646494349454e545f4f // @0EAC memory[memory[0x40:0x60] + 0x64:memory[0x40:0x60] + 0x64 + 0x20] = 0x55545055545f414d4f554e540000000000000000000000000000000000000000 // @0EAF stack[0] = 0x84 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_0EB4: // Incoming jump from 0x1F89, if !(memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] > stack[-3]) // Incoming jump from 0x0E2C, if !(memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] < stack[-3]) // Inputs[2] // { // @0EB8 stack[-6] // @0EB9 stack[-5] // } 0EB4 5B JUMPDEST 0EB5 61 PUSH2 0x0eca 0EB8 86 DUP7 0EB9 86 DUP7 0EBA 60 PUSH1 0x00 0EBC 81 DUP2 0EBD 81 DUP2 0EBE 10 LT 0EBF 61 PUSH2 0x09ea 0EC2 57 *JUMPI // Stack delta = +4 // Outputs[4] // { // @0EB5 stack[0] = 0x0eca // @0EB8 stack[1] = stack[-6] // @0EB9 stack[2] = stack[-5] // @0EBA stack[3] = 0x00 // } // Block ends with conditional jump to 0x09ea, if 0x00 < stack[-5] label_0EC3: // Incoming jump from 0x0EC2, if not 0x00 < stack[-5] 0EC3 61 PUSH2 0x09ea 0EC6 61 PUSH2 0x598d 0EC9 56 *JUMP // Stack delta = +1 // Outputs[1] { @0EC3 stack[0] = 0x09ea } // Block ends with unconditional jump to 0x598d 0ECA 5B JUMPDEST 0ECB 61 PUSH2 0x0bbb 0ECE 82 DUP3 0ECF 87 DUP8 0ED0 87 DUP8 0ED1 80 DUP1 0ED2 80 DUP1 0ED3 60 PUSH1 0x20 0ED5 02 MUL 0ED6 60 PUSH1 0x20 0ED8 01 ADD 0ED9 60 PUSH1 0x40 0EDB 51 MLOAD 0EDC 90 SWAP1 0EDD 81 DUP2 0EDE 01 ADD 0EDF 60 PUSH1 0x40 0EE1 52 MSTORE 0EE2 80 DUP1 0EE3 93 SWAP4 0EE4 92 SWAP3 0EE5 91 SWAP2 0EE6 90 SWAP1 0EE7 81 DUP2 0EE8 81 DUP2 0EE9 52 MSTORE 0EEA 60 PUSH1 0x20 0EEC 01 ADD 0EED 83 DUP4 0EEE 83 DUP4 0EEF 60 PUSH1 0x20 0EF1 02 MUL 0EF2 80 DUP1 0EF3 82 DUP3 0EF4 84 DUP5 0EF5 37 CALLDATACOPY 0EF6 60 PUSH1 0x00 0EF8 92 SWAP3 0EF9 01 ADD 0EFA 91 SWAP2 0EFB 90 SWAP1 0EFC 91 SWAP2 0EFD 52 MSTORE 0EFE 50 POP 0EFF 89 DUP10 0F00 92 SWAP3 0F01 50 POP 0F02 61 PUSH2 0x3ce9 0F05 91 SWAP2 0F06 50 POP 0F07 50 POP 0F08 56 *JUMP label_0F09: // Incoming jump from 0x030A // Inputs[2] // { // @0F0C stack[-1] // @0F0D block.timestamp // } 0F09 5B JUMPDEST 0F0A 60 PUSH1 0x60 0F0C 81 DUP2 0F0D 42 TIMESTAMP 0F0E 81 DUP2 0F0F 10 LT 0F10 15 ISZERO 0F11 61 PUSH2 0x0f76 0F14 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @0F0A stack[0] = 0x60 // @0F0C stack[1] = stack[-1] // } // Block ends with conditional jump to 0x0f76, if !(stack[-1] < block.timestamp) label_0F15: // Incoming jump from 0x0F14, if not !(stack[-1] < block.timestamp) // Inputs[1] { @0F17 memory[0x40:0x60] } 0F15 60 PUSH1 0x40 0F17 51 MLOAD 0F18 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0F39 81 DUP2 0F3A 52 MSTORE 0F3B 60 PUSH1 0x20 0F3D 60 PUSH1 0x04 0F3F 82 DUP3 0F40 01 ADD 0F41 52 MSTORE 0F42 60 PUSH1 0x19 0F44 60 PUSH1 0x24 0F46 82 DUP3 0F47 01 ADD 0F48 52 MSTORE 0F49 7F PUSH32 0x46726178737761705631526f757465723a204558504952454400000000000000 0F6A 60 PUSH1 0x44 0F6C 82 DUP3 0F6D 01 ADD 0F6E 52 MSTORE 0F6F 60 PUSH1 0x64 0F71 01 ADD 0F72 61 PUSH2 0x0609 0F75 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @0F3A memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @0F41 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @0F48 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x19 // @0F6E memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000 // @0F71 stack[0] = 0x64 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_0F76: // Incoming jump from 0x0F14, if !(stack[-1] < block.timestamp) // Inputs[2] // { // @0FAE stack[-6] // @0FAF stack[-5] // } 0F76 5B JUMPDEST 0F77 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0F8C 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 0FAD 16 AND 0FAE 86 DUP7 0FAF 86 DUP7 0FB0 61 PUSH2 0x0fba 0FB3 60 PUSH1 0x01 0FB5 82 DUP3 0FB6 61 PUSH2 0x5976 0FB9 56 *JUMP // Stack delta = +6 // Outputs[6] // { // @0FAD stack[0] = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 & 0xffffffffffffffffffffffffffffffffffffffff // @0FAE stack[1] = stack[-6] // @0FAF stack[2] = stack[-5] // @0FB0 stack[3] = 0x0fba // @0FB3 stack[4] = 0x01 // @0FB5 stack[5] = stack[-5] // } // Block ends with call to 0x5976, returns to 0x0FBA label_0FBA: // Incoming return from call to 0x5976 at 0x0FB9 // Inputs[2] // { // @0FBB stack[-2] // @0FBC stack[-1] // } 0FBA 5B JUMPDEST 0FBB 81 DUP2 0FBC 81 DUP2 0FBD 10 LT 0FBE 61 PUSH2 0x0fc9 0FC1 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0fc9, if stack[-1] < stack[-2] label_0FC2: // Incoming jump from 0x0FC1, if not stack[-1] < stack[-2] 0FC2 61 PUSH2 0x0fc9 0FC5 61 PUSH2 0x598d 0FC8 56 *JUMP // Stack delta = +1 // Outputs[1] { @0FC2 stack[0] = 0x0fc9 } // Block ends with unconditional jump to 0x598d label_0FC9: // Incoming jump from 0x0FC1, if stack[-1] < stack[-2] // Inputs[3] // { // @0FCA stack[-1] // @0FCA stack[-2] // @0FCF stack[-3] // } 0FC9 5B JUMPDEST 0FCA 90 SWAP1 0FCB 50 POP 0FCC 60 PUSH1 0x20 0FCE 02 MUL 0FCF 01 ADD 0FD0 60 PUSH1 0x20 0FD2 81 DUP2 0FD3 01 ADD 0FD4 90 SWAP1 0FD5 61 PUSH2 0x0fde 0FD8 91 SWAP2 0FD9 90 SWAP1 0FDA 61 PUSH2 0x59bc 0FDD 56 *JUMP // Stack delta = +0 // Outputs[3] // { // @0FD8 stack[-3] = 0x0fde // @0FD9 stack[-1] = 0x20 * stack[-1] + stack[-3] // @0FD9 stack[-2] = 0x20 * stack[-1] + stack[-3] + 0x20 // } // Block ends with unconditional jump to 0x59bc 0FDE 5B JUMPDEST 0FDF 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0FF4 16 AND 0FF5 14 EQ 0FF6 61 PUSH2 0x105b 0FF9 57 *JUMPI 0FFA 60 PUSH1 0x40 0FFC 51 MLOAD 0FFD 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 101E 81 DUP2 101F 52 MSTORE 1020 60 PUSH1 0x20 1022 60 PUSH1 0x04 1024 82 DUP3 1025 01 ADD 1026 52 MSTORE 1027 60 PUSH1 0x1e 1029 60 PUSH1 0x24 102B 82 DUP3 102C 01 ADD 102D 52 MSTORE 102E 7F PUSH32 0x46726178737761705631526f757465723a20494e56414c49445f504154480000 104F 60 PUSH1 0x44 1051 82 DUP3 1052 01 ADD 1053 52 MSTORE 1054 60 PUSH1 0x64 1056 01 ADD 1057 61 PUSH2 0x0609 105A 56 *JUMP 105B 5B JUMPDEST 105C 61 PUSH2 0x10b9 105F 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 1080 89 DUP10 1081 88 DUP9 1082 88 DUP9 1083 80 DUP1 1084 80 DUP1 1085 60 PUSH1 0x20 1087 02 MUL 1088 60 PUSH1 0x20 108A 01 ADD 108B 60 PUSH1 0x40 108D 51 MLOAD 108E 90 SWAP1 108F 81 DUP2 1090 01 ADD 1091 60 PUSH1 0x40 1093 52 MSTORE 1094 80 DUP1 1095 93 SWAP4 1096 92 SWAP3 1097 91 SWAP2 1098 90 SWAP1 1099 81 DUP2 109A 81 DUP2 109B 52 MSTORE 109C 60 PUSH1 0x20 109E 01 ADD 109F 83 DUP4 10A0 83 DUP4 10A1 60 PUSH1 0x20 10A3 02 MUL 10A4 80 DUP1 10A5 82 DUP3 10A6 84 DUP5 10A7 37 CALLDATACOPY 10A8 60 PUSH1 0x00 10AA 92 SWAP3 10AB 01 ADD 10AC 91 SWAP2 10AD 90 SWAP1 10AE 91 SWAP2 10AF 52 MSTORE 10B0 50 POP 10B1 61 PUSH2 0x4240 10B4 92 SWAP3 10B5 50 POP 10B6 50 POP 10B7 50 POP 10B8 56 *JUMP 10B9 5B JUMPDEST 10BA 91 SWAP2 10BB 50 POP 10BC 86 DUP7 10BD 82 DUP3 10BE 60 PUSH1 0x00 10C0 81 DUP2 10C1 51 MLOAD 10C2 81 DUP2 10C3 10 LT 10C4 61 PUSH2 0x10cf 10C7 57 *JUMPI 10C8 61 PUSH2 0x10cf 10CB 61 PUSH2 0x598d 10CE 56 *JUMP 10CF 5B JUMPDEST 10D0 60 PUSH1 0x20 10D2 02 MUL 10D3 60 PUSH1 0x20 10D5 01 ADD 10D6 01 ADD 10D7 51 MLOAD 10D8 11 GT 10D9 15 ISZERO 10DA 61 PUSH2 0x09d4 10DD 57 *JUMPI 10DE 60 PUSH1 0x40 10E0 51 MLOAD 10E1 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 1102 81 DUP2 1103 52 MSTORE 1104 60 PUSH1 0x20 1106 60 PUSH1 0x04 1108 82 DUP3 1109 01 ADD 110A 52 MSTORE 110B 60 PUSH1 0x28 110D 60 PUSH1 0x24 110F 82 DUP3 1110 01 ADD 1111 52 MSTORE 1112 7F PUSH32 0x46726178737761705631526f757465723a204558434553534956455f494e5055 1133 60 PUSH1 0x44 1135 82 DUP3 1136 01 ADD 1137 52 MSTORE 1138 7F PUSH32 0x545f414d4f554e54000000000000000000000000000000000000000000000000 1159 60 PUSH1 0x64 115B 82 DUP3 115C 01 ADD 115D 52 MSTORE 115E 60 PUSH1 0x84 1160 01 ADD 1161 61 PUSH2 0x0609 1164 56 *JUMP label_1165: // Incoming jump from 0x032A // Inputs[1] { @118D stack[-10] } 1165 5B JUMPDEST 1166 60 PUSH1 0x00 1168 80 DUP1 1169 61 PUSH2 0x11b3 116C 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 118D 8D DUP14 118E 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 11AF 61 PUSH2 0x3a15 11B2 56 *JUMP // Stack delta = +6 // Outputs[6] // { // @1166 stack[0] = 0x00 // @1168 stack[1] = 0x00 // @1169 stack[2] = 0x11b3 // @116C stack[3] = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f // @118D stack[4] = stack[-10] // @118E stack[5] = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 // } // Block ends with call to 0x3a15, returns to 0x11B3 label_11B3: // Incoming return from call to 0x3A15 at 0x11B2 // Inputs[3] // { // @11B4 stack[-2] // @11B4 stack[-1] // @11B8 stack[-7] // } 11B3 5B JUMPDEST 11B4 90 SWAP1 11B5 50 POP 11B6 60 PUSH1 0x00 11B8 86 DUP7 11B9 61 PUSH2 0x11c2 11BC 57 *JUMPI // Stack delta = +0 // Outputs[2] // { // @11B4 stack[-2] = stack[-1] // @11B6 stack[-1] = 0x00 // } // Block ends with conditional jump to 0x11c2, if stack[-7] label_11BD: // Incoming jump from 0x11BC, if not stack[-7] // Inputs[1] { @11BD stack[-12] } 11BD 8B DUP12 11BE 61 PUSH2 0x11e4 11C1 56 *JUMP // Stack delta = +1 // Outputs[1] { @11BD stack[0] = stack[-12] } // Block ends with unconditional jump to 0x11e4 label_11C2: // Incoming jump from 0x11BC, if stack[-7] // Inputs[11] // { // @11E7 memory[0x40:0x60] // @120B msg.sender // @1211 address(this) // @1222 stack[-8] // @1227 stack[-6] // @1232 stack[-5] // @1239 stack[-4] // @123D stack[-1] // @1254 stack[-2] // @1264 memory[0x40:0x60] // @126D address(stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // } 11C2 5B JUMPDEST 11C3 7F PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 11E4 5B JUMPDEST 11E5 60 PUSH1 0x40 11E7 51 MLOAD 11E8 7F PUSH32 0xd505accf00000000000000000000000000000000000000000000000000000000 1209 81 DUP2 120A 52 MSTORE 120B 33 CALLER 120C 60 PUSH1 0x04 120E 82 DUP3 120F 01 ADD 1210 52 MSTORE 1211 30 ADDRESS 1212 60 PUSH1 0x24 1214 82 DUP3 1215 01 ADD 1216 52 MSTORE 1217 60 PUSH1 0x44 1219 81 DUP2 121A 01 ADD 121B 82 DUP3 121C 90 SWAP1 121D 52 MSTORE 121E 60 PUSH1 0x64 1220 81 DUP2 1221 01 ADD 1222 8A DUP11 1223 90 SWAP1 1224 52 MSTORE 1225 60 PUSH1 0xff 1227 88 DUP9 1228 16 AND 1229 60 PUSH1 0x84 122B 82 DUP3 122C 01 ADD 122D 52 MSTORE 122E 60 PUSH1 0xa4 1230 81 DUP2 1231 01 ADD 1232 87 DUP8 1233 90 SWAP1 1234 52 MSTORE 1235 60 PUSH1 0xc4 1237 81 DUP2 1238 01 ADD 1239 86 DUP7 123A 90 SWAP1 123B 52 MSTORE 123C 90 SWAP1 123D 91 SWAP2 123E 50 POP 123F 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1254 83 DUP4 1255 16 AND 1256 90 SWAP1 1257 63 PUSH4 0xd505accf 125C 90 SWAP1 125D 60 PUSH1 0xe4 125F 01 ADD 1260 60 PUSH1 0x00 1262 60 PUSH1 0x40 1264 51 MLOAD 1265 80 DUP1 1266 83 DUP4 1267 03 SUB 1268 81 DUP2 1269 60 PUSH1 0x00 126B 87 DUP8 126C 80 DUP1 126D 3B EXTCODESIZE 126E 15 ISZERO 126F 80 DUP1 1270 15 ISZERO 1271 61 PUSH2 0x1279 1274 57 *JUMPI // Stack delta = +10 // Outputs[19] // { // @120A memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0xd505accf00000000000000000000000000000000000000000000000000000000 // @1210 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = msg.sender // @1216 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = address(this) // @121D memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff // @1224 memory[memory[0x40:0x60] + 0x64:memory[0x40:0x60] + 0x64 + 0x20] = stack[-8] // @122D memory[memory[0x40:0x60] + 0x84:memory[0x40:0x60] + 0x84 + 0x20] = stack[-6] & 0xff // @1234 memory[memory[0x40:0x60] + 0xa4:memory[0x40:0x60] + 0xa4 + 0x20] = stack[-5] // @123B memory[memory[0x40:0x60] + 0xc4:memory[0x40:0x60] + 0xc4 + 0x20] = stack[-4] // @123D stack[-1] = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff // @1256 stack[0] = stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff // @125C stack[1] = 0xd505accf // @125F stack[2] = 0xe4 + memory[0x40:0x60] // @1260 stack[3] = 0x00 // @1264 stack[4] = memory[0x40:0x60] // @1267 stack[5] = (0xe4 + memory[0x40:0x60]) - memory[0x40:0x60] // @1268 stack[6] = memory[0x40:0x60] // @1269 stack[7] = 0x00 // @126B stack[8] = stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff // @126E stack[9] = !address(stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // } // Block ends with conditional jump to 0x1279, if !!address(stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff).code.length label_1275: // Incoming jump from 0x1274, if not !!address(stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Incoming jump from 0x1274, if not !!address(stack[-3] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Inputs[1] { @1278 memory[0x00:0x00] } 1275 60 PUSH1 0x00 1277 80 DUP1 1278 FD *REVERT // Stack delta = +0 // Outputs[1] { @1278 revert(memory[0x00:0x00]); } // Block terminates label_1279: // Incoming jump from 0x1274, if !!address(stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Incoming jump from 0x1274, if !!address(stack[-3] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Inputs[9] // { // @127B msg.gas // @127C stack[-5] // @127C stack[-4] // @127C address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // @127C stack[-2] // @127C stack[-7] // @127C stack[-3] // @127C stack[-6] // @127C memory[stack[-4]:stack[-4] + stack[-5]] // } 1279 5B JUMPDEST 127A 50 POP 127B 5A GAS 127C F1 CALL 127D 15 ISZERO 127E 80 DUP1 127F 15 ISZERO 1280 61 PUSH2 0x128d 1283 57 *JUMPI // Stack delta = -6 // Outputs[2] // { // @127C memory[stack[-6]:stack[-6] + stack[-7]] = address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // @127D stack[-7] = !address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // } // Block ends with conditional jump to 0x128d, if !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) label_1284: // Incoming jump from 0x1283, if not !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // Inputs[4] // { // @1284 returndata.length // @1288 returndata[0x00:0x00 + returndata.length] // @1289 returndata.length // @128C memory[0x00:0x00 + returndata.length] // } 1284 3D RETURNDATASIZE 1285 60 PUSH1 0x00 1287 80 DUP1 1288 3E RETURNDATACOPY 1289 3D RETURNDATASIZE 128A 60 PUSH1 0x00 128C FD *REVERT // Stack delta = +0 // Outputs[2] // { // @1288 memory[0x00:0x00 + returndata.length] = returndata[0x00:0x00 + returndata.length] // @128C revert(memory[0x00:0x00 + returndata.length]); // } // Block terminates label_128D: // Incoming jump from 0x1283, if !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // Inputs[6] // { // @1295 stack[-17] // @1296 stack[-16] // @1297 stack[-15] // @1298 stack[-14] // @1299 stack[-13] // @129A stack[-12] // } 128D 5B JUMPDEST 128E 50 POP 128F 50 POP 1290 50 POP 1291 50 POP 1292 61 PUSH2 0x129f 1295 8D DUP14 1296 8D DUP14 1297 8D DUP14 1298 8D DUP14 1299 8D DUP14 129A 8D DUP14 129B 61 PUSH2 0x2026 129E 56 *JUMP // Stack delta = +3 // Outputs[7] // { // @1292 stack[-4] = 0x129f // @1295 stack[-3] = stack[-17] // @1296 stack[-2] = stack[-16] // @1297 stack[-1] = stack[-15] // @1298 stack[0] = stack[-14] // @1299 stack[1] = stack[-13] // @129A stack[2] = stack[-12] // } // Block ends with unconditional jump to 0x2026 129F 5B JUMPDEST 12A0 9D SWAP14 12A1 9C SWAP13 12A2 50 POP 12A3 50 POP 12A4 50 POP 12A5 50 POP 12A6 50 POP 12A7 50 POP 12A8 50 POP 12A9 50 POP 12AA 50 POP 12AB 50 POP 12AC 50 POP 12AD 50 POP 12AE 50 POP 12AF 56 *JUMP label_12B0: // Incoming jump from 0x034A // Inputs[2] // { // @12B1 stack[-1] // @12B2 block.timestamp // } 12B0 5B JUMPDEST 12B1 80 DUP1 12B2 42 TIMESTAMP 12B3 81 DUP2 12B4 10 LT 12B5 15 ISZERO 12B6 61 PUSH2 0x131b 12B9 57 *JUMPI // Stack delta = +1 // Outputs[1] { @12B1 stack[0] = stack[-1] } // Block ends with conditional jump to 0x131b, if !(stack[-1] < block.timestamp) label_12BA: // Incoming jump from 0x12B9, if not !(stack[-1] < block.timestamp) // Inputs[1] { @12BC memory[0x40:0x60] } 12BA 60 PUSH1 0x40 12BC 51 MLOAD 12BD 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 12DE 81 DUP2 12DF 52 MSTORE 12E0 60 PUSH1 0x20 12E2 60 PUSH1 0x04 12E4 82 DUP3 12E5 01 ADD 12E6 52 MSTORE 12E7 60 PUSH1 0x19 12E9 60 PUSH1 0x24 12EB 82 DUP3 12EC 01 ADD 12ED 52 MSTORE 12EE 7F PUSH32 0x46726178737761705631526f757465723a204558504952454400000000000000 130F 60 PUSH1 0x44 1311 82 DUP3 1312 01 ADD 1313 52 MSTORE 1314 60 PUSH1 0x64 1316 01 ADD 1317 61 PUSH2 0x0609 131A 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @12DF memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @12E6 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @12ED memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x19 // @1313 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000 // @1316 stack[0] = 0x64 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_131B: // Incoming jump from 0x12B9, if !(stack[-1] < block.timestamp) // Inputs[2] // { // @131F stack[-5] // @1320 stack[-4] // } 131B 5B JUMPDEST 131C 61 PUSH2 0x13ac 131F 85 DUP6 1320 85 DUP6 1321 60 PUSH1 0x00 1323 81 DUP2 1324 81 DUP2 1325 10 LT 1326 61 PUSH2 0x1331 1329 57 *JUMPI // Stack delta = +4 // Outputs[4] // { // @131C stack[0] = 0x13ac // @131F stack[1] = stack[-5] // @1320 stack[2] = stack[-4] // @1321 stack[3] = 0x00 // } // Block ends with conditional jump to 0x1331, if 0x00 < stack[-4] label_132A: // Incoming jump from 0x1329, if not 0x00 < stack[-4] 132A 61 PUSH2 0x1331 132D 61 PUSH2 0x598d 1330 56 *JUMP // Stack delta = +1 // Outputs[1] { @132A stack[0] = 0x1331 } // Block ends with unconditional jump to 0x598d label_1331: // Incoming jump from 0x1329, if 0x00 < stack[-4] // Inputs[3] // { // @1332 stack[-2] // @1332 stack[-1] // @1337 stack[-3] // } 1331 5B JUMPDEST 1332 90 SWAP1 1333 50 POP 1334 60 PUSH1 0x20 1336 02 MUL 1337 01 ADD 1338 60 PUSH1 0x20 133A 81 DUP2 133B 01 ADD 133C 90 SWAP1 133D 61 PUSH2 0x1346 1340 91 SWAP2 1341 90 SWAP1 1342 61 PUSH2 0x59bc 1345 56 *JUMP // Stack delta = +0 // Outputs[3] // { // @1340 stack[-3] = 0x1346 // @1341 stack[-1] = 0x20 * stack[-1] + stack[-3] // @1341 stack[-2] = 0x20 * stack[-1] + stack[-3] + 0x20 // } // Block ends with unconditional jump to 0x59bc 1346 5B JUMPDEST 1347 33 CALLER 1348 61 PUSH2 0x13a6 134B 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 136C 89 DUP10 136D 89 DUP10 136E 60 PUSH1 0x00 1370 81 DUP2 1371 81 DUP2 1372 10 LT 1373 61 PUSH2 0x137e 1376 57 *JUMPI 1377 61 PUSH2 0x137e 137A 61 PUSH2 0x598d 137D 56 *JUMP 137E 5B JUMPDEST 137F 90 SWAP1 1380 50 POP 1381 60 PUSH1 0x20 1383 02 MUL 1384 01 ADD 1385 60 PUSH1 0x20 1387 81 DUP2 1388 01 ADD 1389 90 SWAP1 138A 61 PUSH2 0x1393 138D 91 SWAP2 138E 90 SWAP1 138F 61 PUSH2 0x59bc 1392 56 *JUMP 1393 5B JUMPDEST 1394 8A DUP11 1395 8A DUP11 1396 60 PUSH1 0x01 1398 81 DUP2 1399 81 DUP2 139A 10 LT 139B 61 PUSH2 0x0a5f 139E 57 *JUMPI 139F 61 PUSH2 0x0a5f 13A2 61 PUSH2 0x598d 13A5 56 *JUMP 13A6 5B JUMPDEST 13A7 8A DUP11 13A8 61 PUSH2 0x3b4a 13AB 56 *JUMP 13AC 5B JUMPDEST 13AD 60 PUSH1 0x00 13AF 85 DUP6 13B0 85 DUP6 13B1 61 PUSH2 0x13bb 13B4 60 PUSH1 0x01 13B6 82 DUP3 13B7 61 PUSH2 0x5976 13BA 56 *JUMP 13BB 5B JUMPDEST 13BC 81 DUP2 13BD 81 DUP2 13BE 10 LT 13BF 61 PUSH2 0x13ca 13C2 57 *JUMPI 13C3 61 PUSH2 0x13ca 13C6 61 PUSH2 0x598d 13C9 56 *JUMP 13CA 5B JUMPDEST 13CB 90 SWAP1 13CC 50 POP 13CD 60 PUSH1 0x20 13CF 02 MUL 13D0 01 ADD 13D1 60 PUSH1 0x20 13D3 81 DUP2 13D4 01 ADD 13D5 90 SWAP1 13D6 61 PUSH2 0x13df 13D9 91 SWAP2 13DA 90 SWAP1 13DB 61 PUSH2 0x59bc 13DE 56 *JUMP 13DF 5B JUMPDEST 13E0 60 PUSH1 0x40 13E2 51 MLOAD 13E3 7F PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 1404 81 DUP2 1405 52 MSTORE 1406 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 141B 86 DUP7 141C 81 DUP2 141D 16 AND 141E 60 PUSH1 0x04 1420 83 DUP4 1421 01 ADD 1422 52 MSTORE 1423 91 SWAP2 1424 90 SWAP1 1425 91 SWAP2 1426 16 AND 1427 90 SWAP1 1428 63 PUSH4 0x70a08231 142D 90 SWAP1 142E 60 PUSH1 0x24 1430 01 ADD 1431 60 PUSH1 0x20 1433 60 PUSH1 0x40 1435 51 MLOAD 1436 80 DUP1 1437 83 DUP4 1438 03 SUB 1439 81 DUP2 143A 86 DUP7 143B 5A GAS 143C FA STATICCALL 143D 15 ISZERO 143E 80 DUP1 143F 15 ISZERO 1440 61 PUSH2 0x144d 1443 57 *JUMPI 1444 3D RETURNDATASIZE 1445 60 PUSH1 0x00 1447 80 DUP1 1448 3E RETURNDATACOPY 1449 3D RETURNDATASIZE 144A 60 PUSH1 0x00 144C FD *REVERT 144D 5B JUMPDEST 144E 50 POP 144F 50 POP 1450 50 POP 1451 50 POP 1452 60 PUSH1 0x40 1454 51 MLOAD 1455 3D RETURNDATASIZE 1456 60 PUSH1 0x1f 1458 19 NOT 1459 60 PUSH1 0x1f 145B 82 DUP3 145C 01 ADD 145D 16 AND 145E 82 DUP3 145F 01 ADD 1460 80 DUP1 1461 60 PUSH1 0x40 1463 52 MSTORE 1464 50 POP 1465 81 DUP2 1466 01 ADD 1467 90 SWAP1 1468 61 PUSH2 0x1471 146B 91 SWAP2 146C 90 SWAP1 146D 61 PUSH2 0x59d9 1470 56 *JUMP 1471 5B JUMPDEST 1472 90 SWAP1 1473 50 POP 1474 61 PUSH2 0x14b1 1477 86 DUP7 1478 86 DUP7 1479 80 DUP1 147A 80 DUP1 147B 60 PUSH1 0x20 147D 02 MUL 147E 60 PUSH1 0x20 1480 01 ADD 1481 60 PUSH1 0x40 1483 51 MLOAD 1484 90 SWAP1 1485 81 DUP2 1486 01 ADD 1487 60 PUSH1 0x40 1489 52 MSTORE 148A 80 DUP1 148B 93 SWAP4 148C 92 SWAP3 148D 91 SWAP2 148E 90 SWAP1 148F 81 DUP2 1490 81 DUP2 1491 52 MSTORE 1492 60 PUSH1 0x20 1494 01 ADD 1495 83 DUP4 1496 83 DUP4 1497 60 PUSH1 0x20 1499 02 MUL 149A 80 DUP1 149B 82 DUP3 149C 84 DUP5 149D 37 CALLDATACOPY 149E 60 PUSH1 0x00 14A0 92 SWAP3 14A1 01 ADD 14A2 91 SWAP2 14A3 90 SWAP1 14A4 91 SWAP2 14A5 52 MSTORE 14A6 50 POP 14A7 88 DUP9 14A8 92 SWAP3 14A9 50 POP 14AA 61 PUSH2 0x4506 14AD 91 SWAP2 14AE 50 POP 14AF 50 POP 14B0 56 *JUMP 14B1 5B JUMPDEST 14B2 86 DUP7 14B3 81 DUP2 14B4 87 DUP8 14B5 87 DUP8 14B6 61 PUSH2 0x14c0 14B9 60 PUSH1 0x01 14BB 82 DUP3 14BC 61 PUSH2 0x5976 14BF 56 *JUMP 14C0 5B JUMPDEST 14C1 81 DUP2 14C2 81 DUP2 14C3 10 LT 14C4 61 PUSH2 0x14cf 14C7 57 *JUMPI 14C8 61 PUSH2 0x14cf 14CB 61 PUSH2 0x598d 14CE 56 *JUMP 14CF 5B JUMPDEST 14D0 90 SWAP1 14D1 50 POP 14D2 60 PUSH1 0x20 14D4 02 MUL 14D5 01 ADD 14D6 60 PUSH1 0x20 14D8 81 DUP2 14D9 01 ADD 14DA 90 SWAP1 14DB 61 PUSH2 0x14e4 14DE 91 SWAP2 14DF 90 SWAP1 14E0 61 PUSH2 0x59bc 14E3 56 *JUMP 14E4 5B JUMPDEST 14E5 60 PUSH1 0x40 14E7 51 MLOAD 14E8 7F PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 1509 81 DUP2 150A 52 MSTORE 150B 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1520 88 DUP9 1521 81 DUP2 1522 16 AND 1523 60 PUSH1 0x04 1525 83 DUP4 1526 01 ADD 1527 52 MSTORE 1528 91 SWAP2 1529 90 SWAP1 152A 91 SWAP2 152B 16 AND 152C 90 SWAP1 152D 63 PUSH4 0x70a08231 1532 90 SWAP1 1533 60 PUSH1 0x24 1535 01 ADD 1536 5B JUMPDEST 1537 60 PUSH1 0x20 1539 60 PUSH1 0x40 153B 51 MLOAD 153C 80 DUP1 153D 83 DUP4 153E 03 SUB 153F 81 DUP2 1540 86 DUP7 1541 5A GAS 1542 FA STATICCALL 1543 15 ISZERO 1544 80 DUP1 1545 15 ISZERO 1546 61 PUSH2 0x1553 1549 57 *JUMPI 154A 3D RETURNDATASIZE 154B 60 PUSH1 0x00 154D 80 DUP1 154E 3E RETURNDATACOPY 154F 3D RETURNDATASIZE 1550 60 PUSH1 0x00 1552 FD *REVERT 1553 5B JUMPDEST 1554 50 POP 1555 50 POP 1556 50 POP 1557 50 POP 1558 60 PUSH1 0x40 155A 51 MLOAD 155B 3D RETURNDATASIZE 155C 60 PUSH1 0x1f 155E 19 NOT 155F 60 PUSH1 0x1f 1561 82 DUP3 1562 01 ADD 1563 16 AND 1564 82 DUP3 1565 01 ADD 1566 80 DUP1 1567 60 PUSH1 0x40 1569 52 MSTORE 156A 50 POP 156B 81 DUP2 156C 01 ADD 156D 90 SWAP1 156E 61 PUSH2 0x1577 1571 91 SWAP2 1572 90 SWAP1 1573 61 PUSH2 0x59d9 1576 56 *JUMP 1577 5B JUMPDEST 1578 61 PUSH2 0x1581 157B 91 SWAP2 157C 90 SWAP1 157D 61 PUSH2 0x5976 1580 56 *JUMP 1581 5B JUMPDEST 1582 10 LT 1583 15 ISZERO 1584 61 PUSH2 0x160f 1587 57 *JUMPI 1588 60 PUSH1 0x40 158A 51 MLOAD 158B 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 15AC 81 DUP2 15AD 52 MSTORE 15AE 60 PUSH1 0x20 15B0 60 PUSH1 0x04 15B2 82 DUP3 15B3 01 ADD 15B4 52 MSTORE 15B5 60 PUSH1 0x2c 15B7 60 PUSH1 0x24 15B9 82 DUP3 15BA 01 ADD 15BB 52 MSTORE 15BC 7F PUSH32 0x46726178737761705631526f757465723a20494e53554646494349454e545f4f 15DD 60 PUSH1 0x44 15DF 82 DUP3 15E0 01 ADD 15E1 52 MSTORE 15E2 7F PUSH32 0x55545055545f414d4f554e540000000000000000000000000000000000000000 1603 60 PUSH1 0x64 1605 82 DUP3 1606 01 ADD 1607 52 MSTORE 1608 60 PUSH1 0x84 160A 01 ADD 160B 61 PUSH2 0x0609 160E 56 *JUMP 160F 5B JUMPDEST 1610 50 POP 1611 50 POP 1612 50 POP 1613 50 POP 1614 50 POP 1615 50 POP 1616 50 POP 1617 50 POP 1618 56 *JUMP label_1619: // Incoming jump from 0x036A // Inputs[2] // { // @1640 stack[-2] // @1641 stack[-1] // } 1619 5B JUMPDEST 161A 60 PUSH1 0x60 161C 61 PUSH2 0x0bf3 161F 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 1640 84 DUP5 1641 84 DUP5 1642 61 PUSH2 0x3727 1645 56 *JUMP // Stack delta = +5 // Outputs[5] // { // @161A stack[0] = 0x60 // @161C stack[1] = 0x0bf3 // @161F stack[2] = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f // @1640 stack[3] = stack[-2] // @1641 stack[4] = stack[-1] // } // Block ends with call to 0x3727, returns to 0x0BF3 label_1646: // Incoming jump from 0x038A // Inputs[2] // { // @1647 stack[-1] // @1648 block.timestamp // } 1646 5B JUMPDEST 1647 80 DUP1 1648 42 TIMESTAMP 1649 81 DUP2 164A 10 LT 164B 15 ISZERO 164C 61 PUSH2 0x16b1 164F 57 *JUMPI // Stack delta = +1 // Outputs[1] { @1647 stack[0] = stack[-1] } // Block ends with conditional jump to 0x16b1, if !(stack[-1] < block.timestamp) label_1650: // Incoming jump from 0x164F, if not !(stack[-1] < block.timestamp) // Inputs[1] { @1652 memory[0x40:0x60] } 1650 60 PUSH1 0x40 1652 51 MLOAD 1653 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 1674 81 DUP2 1675 52 MSTORE 1676 60 PUSH1 0x20 1678 60 PUSH1 0x04 167A 82 DUP3 167B 01 ADD 167C 52 MSTORE 167D 60 PUSH1 0x19 167F 60 PUSH1 0x24 1681 82 DUP3 1682 01 ADD 1683 52 MSTORE 1684 7F PUSH32 0x46726178737761705631526f757465723a204558504952454400000000000000 16A5 60 PUSH1 0x44 16A7 82 DUP3 16A8 01 ADD 16A9 52 MSTORE 16AA 60 PUSH1 0x64 16AC 01 ADD 16AD 61 PUSH2 0x0609 16B0 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @1675 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @167C memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @1683 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x19 // @16A9 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000 // @16AC stack[0] = 0x64 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_16B1: // Incoming jump from 0x164F, if !(stack[-1] < block.timestamp) // Inputs[2] // { // @16E9 stack[-5] // @16EA stack[-4] // } 16B1 5B JUMPDEST 16B2 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 16C7 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 16E8 16 AND 16E9 85 DUP6 16EA 85 DUP6 16EB 61 PUSH2 0x16f5 16EE 60 PUSH1 0x01 16F0 82 DUP3 16F1 61 PUSH2 0x5976 16F4 56 *JUMP // Stack delta = +6 // Outputs[6] // { // @16E8 stack[0] = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 & 0xffffffffffffffffffffffffffffffffffffffff // @16E9 stack[1] = stack[-5] // @16EA stack[2] = stack[-4] // @16EB stack[3] = 0x16f5 // @16EE stack[4] = 0x01 // @16F0 stack[5] = stack[-4] // } // Block ends with call to 0x5976, returns to 0x16F5 label_16F5: // Incoming return from call to 0x5976 at 0x16F4 // Inputs[2] // { // @16F6 stack[-2] // @16F7 stack[-1] // } 16F5 5B JUMPDEST 16F6 81 DUP2 16F7 81 DUP2 16F8 10 LT 16F9 61 PUSH2 0x1704 16FC 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x1704, if stack[-1] < stack[-2] label_16FD: // Incoming jump from 0x16FC, if not stack[-1] < stack[-2] 16FD 61 PUSH2 0x1704 1700 61 PUSH2 0x598d 1703 56 *JUMP // Stack delta = +1 // Outputs[1] { @16FD stack[0] = 0x1704 } // Block ends with unconditional jump to 0x598d label_1704: // Incoming jump from 0x16FC, if stack[-1] < stack[-2] // Inputs[3] // { // @1705 stack[-1] // @1705 stack[-2] // @170A stack[-3] // } 1704 5B JUMPDEST 1705 90 SWAP1 1706 50 POP 1707 60 PUSH1 0x20 1709 02 MUL 170A 01 ADD 170B 60 PUSH1 0x20 170D 81 DUP2 170E 01 ADD 170F 90 SWAP1 1710 61 PUSH2 0x1719 1713 91 SWAP2 1714 90 SWAP1 1715 61 PUSH2 0x59bc 1718 56 *JUMP // Stack delta = +0 // Outputs[3] // { // @1713 stack[-3] = 0x1719 // @1714 stack[-1] = 0x20 * stack[-1] + stack[-3] // @1714 stack[-2] = 0x20 * stack[-1] + stack[-3] + 0x20 // } // Block ends with unconditional jump to 0x59bc 1719 5B JUMPDEST 171A 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 172F 16 AND 1730 14 EQ 1731 61 PUSH2 0x1796 1734 57 *JUMPI 1735 60 PUSH1 0x40 1737 51 MLOAD 1738 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 1759 81 DUP2 175A 52 MSTORE 175B 60 PUSH1 0x20 175D 60 PUSH1 0x04 175F 82 DUP3 1760 01 ADD 1761 52 MSTORE 1762 60 PUSH1 0x1e 1764 60 PUSH1 0x24 1766 82 DUP3 1767 01 ADD 1768 52 MSTORE 1769 7F PUSH32 0x46726178737761705631526f757465723a20494e56414c49445f504154480000 178A 60 PUSH1 0x44 178C 82 DUP3 178D 01 ADD 178E 52 MSTORE 178F 60 PUSH1 0x64 1791 01 ADD 1792 61 PUSH2 0x0609 1795 56 *JUMP 1796 5B JUMPDEST 1797 61 PUSH2 0x17ac 179A 85 DUP6 179B 85 DUP6 179C 60 PUSH1 0x00 179E 81 DUP2 179F 81 DUP2 17A0 10 LT 17A1 61 PUSH2 0x1331 17A4 57 *JUMPI 17A5 61 PUSH2 0x1331 17A8 61 PUSH2 0x598d 17AB 56 *JUMP 17AC 5B JUMPDEST 17AD 61 PUSH2 0x17ea 17B0 85 DUP6 17B1 85 DUP6 17B2 80 DUP1 17B3 80 DUP1 17B4 60 PUSH1 0x20 17B6 02 MUL 17B7 60 PUSH1 0x20 17B9 01 ADD 17BA 60 PUSH1 0x40 17BC 51 MLOAD 17BD 90 SWAP1 17BE 81 DUP2 17BF 01 ADD 17C0 60 PUSH1 0x40 17C2 52 MSTORE 17C3 80 DUP1 17C4 93 SWAP4 17C5 92 SWAP3 17C6 91 SWAP2 17C7 90 SWAP1 17C8 81 DUP2 17C9 81 DUP2 17CA 52 MSTORE 17CB 60 PUSH1 0x20 17CD 01 ADD 17CE 83 DUP4 17CF 83 DUP4 17D0 60 PUSH1 0x20 17D2 02 MUL 17D3 80 DUP1 17D4 82 DUP3 17D5 84 DUP5 17D6 37 CALLDATACOPY 17D7 60 PUSH1 0x00 17D9 92 SWAP3 17DA 01 ADD 17DB 91 SWAP2 17DC 90 SWAP1 17DD 91 SWAP2 17DE 52 MSTORE 17DF 50 POP 17E0 30 ADDRESS 17E1 92 SWAP3 17E2 50 POP 17E3 61 PUSH2 0x4506 17E6 91 SWAP2 17E7 50 POP 17E8 50 POP 17E9 56 *JUMP 17EA 5B JUMPDEST 17EB 60 PUSH1 0x40 17ED 51 MLOAD 17EE 7F PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 180F 81 DUP2 1810 52 MSTORE 1811 30 ADDRESS 1812 60 PUSH1 0x04 1814 82 DUP3 1815 01 ADD 1816 52 MSTORE 1817 60 PUSH1 0x00 1819 90 SWAP1 181A 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 183B 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1850 16 AND 1851 90 SWAP1 1852 63 PUSH4 0x70a08231 1857 90 SWAP1 1858 60 PUSH1 0x24 185A 01 ADD 185B 60 PUSH1 0x20 185D 60 PUSH1 0x40 185F 51 MLOAD 1860 80 DUP1 1861 83 DUP4 1862 03 SUB 1863 81 DUP2 1864 86 DUP7 1865 5A GAS 1866 FA STATICCALL 1867 15 ISZERO 1868 80 DUP1 1869 15 ISZERO 186A 61 PUSH2 0x1877 186D 57 *JUMPI 186E 3D RETURNDATASIZE 186F 60 PUSH1 0x00 1871 80 DUP1 1872 3E RETURNDATACOPY 1873 3D RETURNDATASIZE 1874 60 PUSH1 0x00 1876 FD *REVERT 1877 5B JUMPDEST 1878 50 POP 1879 50 POP 187A 50 POP 187B 50 POP 187C 60 PUSH1 0x40 187E 51 MLOAD 187F 3D RETURNDATASIZE 1880 60 PUSH1 0x1f 1882 19 NOT 1883 60 PUSH1 0x1f 1885 82 DUP3 1886 01 ADD 1887 16 AND 1888 82 DUP3 1889 01 ADD 188A 80 DUP1 188B 60 PUSH1 0x40 188D 52 MSTORE 188E 50 POP 188F 81 DUP2 1890 01 ADD 1891 90 SWAP1 1892 61 PUSH2 0x189b 1895 91 SWAP2 1896 90 SWAP1 1897 61 PUSH2 0x59d9 189A 56 *JUMP 189B 5B JUMPDEST 189C 90 SWAP1 189D 50 POP 189E 86 DUP7 189F 81 DUP2 18A0 10 LT 18A1 15 ISZERO 18A2 61 PUSH2 0x192d 18A5 57 *JUMPI 18A6 60 PUSH1 0x40 18A8 51 MLOAD 18A9 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 18CA 81 DUP2 18CB 52 MSTORE 18CC 60 PUSH1 0x20 18CE 60 PUSH1 0x04 18D0 82 DUP3 18D1 01 ADD 18D2 52 MSTORE 18D3 60 PUSH1 0x2c 18D5 60 PUSH1 0x24 18D7 82 DUP3 18D8 01 ADD 18D9 52 MSTORE 18DA 7F PUSH32 0x46726178737761705631526f757465723a20494e53554646494349454e545f4f 18FB 60 PUSH1 0x44 18FD 82 DUP3 18FE 01 ADD 18FF 52 MSTORE 1900 7F PUSH32 0x55545055545f414d4f554e540000000000000000000000000000000000000000 1921 60 PUSH1 0x64 1923 82 DUP3 1924 01 ADD 1925 52 MSTORE 1926 60 PUSH1 0x84 1928 01 ADD 1929 61 PUSH2 0x0609 192C 56 *JUMP 192D 5B JUMPDEST 192E 60 PUSH1 0x40 1930 51 MLOAD 1931 7F PUSH32 0x2e1a7d4d00000000000000000000000000000000000000000000000000000000 1952 81 DUP2 1953 52 MSTORE 1954 60 PUSH1 0x04 1956 81 DUP2 1957 01 ADD 1958 82 DUP3 1959 90 SWAP1 195A 52 MSTORE 195B 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 197C 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1991 16 AND 1992 90 SWAP1 1993 63 PUSH4 0x2e1a7d4d 1998 90 SWAP1 1999 60 PUSH1 0x24 199B 01 ADD 199C 60 PUSH1 0x00 199E 60 PUSH1 0x40 19A0 51 MLOAD 19A1 80 DUP1 19A2 83 DUP4 19A3 03 SUB 19A4 81 DUP2 19A5 60 PUSH1 0x00 19A7 87 DUP8 19A8 80 DUP1 19A9 3B EXTCODESIZE 19AA 15 ISZERO 19AB 80 DUP1 19AC 15 ISZERO 19AD 61 PUSH2 0x19b5 19B0 57 *JUMPI 19B1 60 PUSH1 0x00 19B3 80 DUP1 19B4 FD *REVERT 19B5 5B JUMPDEST 19B6 50 POP 19B7 5A GAS 19B8 F1 CALL 19B9 15 ISZERO 19BA 80 DUP1 19BB 15 ISZERO 19BC 61 PUSH2 0x19c9 19BF 57 *JUMPI 19C0 3D RETURNDATASIZE 19C1 60 PUSH1 0x00 19C3 80 DUP1 19C4 3E RETURNDATACOPY 19C5 3D RETURNDATASIZE 19C6 60 PUSH1 0x00 19C8 FD *REVERT 19C9 5B JUMPDEST 19CA 50 POP 19CB 50 POP 19CC 50 POP 19CD 50 POP 19CE 61 PUSH2 0x160f 19D1 84 DUP5 19D2 82 DUP3 19D3 61 PUSH2 0x3618 19D6 56 *JUMP label_19D7: // Incoming jump from 0x039D // Inputs[2] // { // @19DA stack[-1] // @19DB block.timestamp // } 19D7 5B JUMPDEST 19D8 60 PUSH1 0x60 19DA 81 DUP2 19DB 42 TIMESTAMP 19DC 81 DUP2 19DD 10 LT 19DE 15 ISZERO 19DF 61 PUSH2 0x1a44 19E2 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @19D8 stack[0] = 0x60 // @19DA stack[1] = stack[-1] // } // Block ends with conditional jump to 0x1a44, if !(stack[-1] < block.timestamp) label_19E3: // Incoming jump from 0x19E2, if not !(stack[-1] < block.timestamp) // Inputs[1] { @19E5 memory[0x40:0x60] } 19E3 60 PUSH1 0x40 19E5 51 MLOAD 19E6 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 1A07 81 DUP2 1A08 52 MSTORE 1A09 60 PUSH1 0x20 1A0B 60 PUSH1 0x04 1A0D 82 DUP3 1A0E 01 ADD 1A0F 52 MSTORE 1A10 60 PUSH1 0x19 1A12 60 PUSH1 0x24 1A14 82 DUP3 1A15 01 ADD 1A16 52 MSTORE 1A17 7F PUSH32 0x46726178737761705631526f757465723a204558504952454400000000000000 1A38 60 PUSH1 0x44 1A3A 82 DUP3 1A3B 01 ADD 1A3C 52 MSTORE 1A3D 60 PUSH1 0x64 1A3F 01 ADD 1A40 61 PUSH2 0x0609 1A43 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @1A08 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @1A0F memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @1A16 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x19 // @1A3C memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000 // @1A3F stack[0] = 0x64 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_1A44: // Incoming jump from 0x19E2, if !(stack[-1] < block.timestamp) // Inputs[2] // { // @1A7C stack[-6] // @1A7D stack[-5] // } 1A44 5B JUMPDEST 1A45 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 1A66 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1A7B 16 AND 1A7C 86 DUP7 1A7D 86 DUP7 1A7E 60 PUSH1 0x00 1A80 81 DUP2 1A81 81 DUP2 1A82 10 LT 1A83 61 PUSH2 0x1a8e 1A86 57 *JUMPI // Stack delta = +4 // Outputs[4] // { // @1A7B stack[0] = 0xffffffffffffffffffffffffffffffffffffffff & 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 // @1A7C stack[1] = stack[-6] // @1A7D stack[2] = stack[-5] // @1A7E stack[3] = 0x00 // } // Block ends with conditional jump to 0x1a8e, if 0x00 < stack[-5] label_1A87: // Incoming jump from 0x1A86, if not 0x00 < stack[-5] 1A87 61 PUSH2 0x1a8e 1A8A 61 PUSH2 0x598d 1A8D 56 *JUMP // Stack delta = +1 // Outputs[1] { @1A87 stack[0] = 0x1a8e } // Block ends with unconditional jump to 0x598d label_1A8E: // Incoming jump from 0x1A86, if 0x00 < stack[-5] // Inputs[3] // { // @1A8F stack[-2] // @1A8F stack[-1] // @1A94 stack[-3] // } 1A8E 5B JUMPDEST 1A8F 90 SWAP1 1A90 50 POP 1A91 60 PUSH1 0x20 1A93 02 MUL 1A94 01 ADD 1A95 60 PUSH1 0x20 1A97 81 DUP2 1A98 01 ADD 1A99 90 SWAP1 1A9A 61 PUSH2 0x1aa3 1A9D 91 SWAP2 1A9E 90 SWAP1 1A9F 61 PUSH2 0x59bc 1AA2 56 *JUMP // Stack delta = +0 // Outputs[3] // { // @1A9D stack[-3] = 0x1aa3 // @1A9E stack[-1] = 0x20 * stack[-1] + stack[-3] // @1A9E stack[-2] = 0x20 * stack[-1] + stack[-3] + 0x20 // } // Block ends with unconditional jump to 0x59bc 1AA3 5B JUMPDEST 1AA4 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1AB9 16 AND 1ABA 14 EQ 1ABB 61 PUSH2 0x1b20 1ABE 57 *JUMPI 1ABF 60 PUSH1 0x40 1AC1 51 MLOAD 1AC2 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 1AE3 81 DUP2 1AE4 52 MSTORE 1AE5 60 PUSH1 0x20 1AE7 60 PUSH1 0x04 1AE9 82 DUP3 1AEA 01 ADD 1AEB 52 MSTORE 1AEC 60 PUSH1 0x1e 1AEE 60 PUSH1 0x24 1AF0 82 DUP3 1AF1 01 ADD 1AF2 52 MSTORE 1AF3 7F PUSH32 0x46726178737761705631526f757465723a20494e56414c49445f504154480000 1B14 60 PUSH1 0x44 1B16 82 DUP3 1B17 01 ADD 1B18 52 MSTORE 1B19 60 PUSH1 0x64 1B1B 01 ADD 1B1C 61 PUSH2 0x0609 1B1F 56 *JUMP 1B20 5B JUMPDEST 1B21 61 PUSH2 0x1b7e 1B24 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 1B45 34 CALLVALUE 1B46 88 DUP9 1B47 88 DUP9 1B48 80 DUP1 1B49 80 DUP1 1B4A 60 PUSH1 0x20 1B4C 02 MUL 1B4D 60 PUSH1 0x20 1B4F 01 ADD 1B50 60 PUSH1 0x40 1B52 51 MLOAD 1B53 90 SWAP1 1B54 81 DUP2 1B55 01 ADD 1B56 60 PUSH1 0x40 1B58 52 MSTORE 1B59 80 DUP1 1B5A 93 SWAP4 1B5B 92 SWAP3 1B5C 91 SWAP2 1B5D 90 SWAP1 1B5E 81 DUP2 1B5F 81 DUP2 1B60 52 MSTORE 1B61 60 PUSH1 0x20 1B63 01 ADD 1B64 83 DUP4 1B65 83 DUP4 1B66 60 PUSH1 0x20 1B68 02 MUL 1B69 80 DUP1 1B6A 82 DUP3 1B6B 84 DUP5 1B6C 37 CALLDATACOPY 1B6D 60 PUSH1 0x00 1B6F 92 SWAP3 1B70 01 ADD 1B71 91 SWAP2 1B72 90 SWAP1 1B73 91 SWAP2 1B74 52 MSTORE 1B75 50 POP 1B76 61 PUSH2 0x3727 1B79 92 SWAP3 1B7A 50 POP 1B7B 50 POP 1B7C 50 POP 1B7D 56 *JUMP 1B7E 5B JUMPDEST 1B7F 91 SWAP2 1B80 50 POP 1B81 86 DUP7 1B82 82 DUP3 1B83 60 PUSH1 0x01 1B85 84 DUP5 1B86 51 MLOAD 1B87 61 PUSH2 0x1b90 1B8A 91 SWAP2 1B8B 90 SWAP1 1B8C 61 PUSH2 0x5976 1B8F 56 *JUMP 1B90 5B JUMPDEST 1B91 81 DUP2 1B92 51 MLOAD 1B93 81 DUP2 1B94 10 LT 1B95 61 PUSH2 0x1ba0 1B98 57 *JUMPI 1B99 61 PUSH2 0x1ba0 1B9C 61 PUSH2 0x598d 1B9F 56 *JUMP 1BA0 5B JUMPDEST 1BA1 60 PUSH1 0x20 1BA3 02 MUL 1BA4 60 PUSH1 0x20 1BA6 01 ADD 1BA7 01 ADD 1BA8 51 MLOAD 1BA9 10 LT 1BAA 15 ISZERO 1BAB 61 PUSH2 0x1c36 1BAE 57 *JUMPI 1BAF 60 PUSH1 0x40 1BB1 51 MLOAD 1BB2 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 1BD3 81 DUP2 1BD4 52 MSTORE 1BD5 60 PUSH1 0x20 1BD7 60 PUSH1 0x04 1BD9 82 DUP3 1BDA 01 ADD 1BDB 52 MSTORE 1BDC 60 PUSH1 0x2c 1BDE 60 PUSH1 0x24 1BE0 82 DUP3 1BE1 01 ADD 1BE2 52 MSTORE 1BE3 7F PUSH32 0x46726178737761705631526f757465723a20494e53554646494349454e545f4f 1C04 60 PUSH1 0x44 1C06 82 DUP3 1C07 01 ADD 1C08 52 MSTORE 1C09 7F PUSH32 0x55545055545f414d4f554e540000000000000000000000000000000000000000 1C2A 60 PUSH1 0x64 1C2C 82 DUP3 1C2D 01 ADD 1C2E 52 MSTORE 1C2F 60 PUSH1 0x84 1C31 01 ADD 1C32 61 PUSH2 0x0609 1C35 56 *JUMP 1C36 5B JUMPDEST 1C37 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 1C58 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1C6D 16 AND 1C6E 63 PUSH4 0xd0e30db0 1C73 83 DUP4 1C74 60 PUSH1 0x00 1C76 81 DUP2 1C77 51 MLOAD 1C78 81 DUP2 1C79 10 LT 1C7A 61 PUSH2 0x1c85 1C7D 57 *JUMPI 1C7E 61 PUSH2 0x1c85 1C81 61 PUSH2 0x598d 1C84 56 *JUMP 1C85 5B JUMPDEST 1C86 60 PUSH1 0x20 1C88 02 MUL 1C89 60 PUSH1 0x20 1C8B 01 ADD 1C8C 01 ADD 1C8D 51 MLOAD 1C8E 60 PUSH1 0x40 1C90 51 MLOAD 1C91 82 DUP3 1C92 63 PUSH4 0xffffffff 1C97 16 AND 1C98 60 PUSH1 0xe0 1C9A 1B SHL 1C9B 81 DUP2 1C9C 52 MSTORE 1C9D 60 PUSH1 0x04 1C9F 01 ADD 1CA0 60 PUSH1 0x00 1CA2 60 PUSH1 0x40 1CA4 51 MLOAD 1CA5 80 DUP1 1CA6 83 DUP4 1CA7 03 SUB 1CA8 81 DUP2 1CA9 85 DUP6 1CAA 88 DUP9 1CAB 80 DUP1 1CAC 3B EXTCODESIZE 1CAD 15 ISZERO 1CAE 80 DUP1 1CAF 15 ISZERO 1CB0 61 PUSH2 0x1cb8 1CB3 57 *JUMPI 1CB4 60 PUSH1 0x00 1CB6 80 DUP1 1CB7 FD *REVERT 1CB8 5B JUMPDEST 1CB9 50 POP 1CBA 5A GAS 1CBB F1 CALL 1CBC 15 ISZERO 1CBD 80 DUP1 1CBE 15 ISZERO 1CBF 61 PUSH2 0x1ccc 1CC2 57 *JUMPI 1CC3 3D RETURNDATASIZE 1CC4 60 PUSH1 0x00 1CC6 80 DUP1 1CC7 3E RETURNDATACOPY 1CC8 3D RETURNDATASIZE 1CC9 60 PUSH1 0x00 1CCB FD *REVERT 1CCC 5B JUMPDEST 1CCD 50 POP 1CCE 50 POP 1CCF 50 POP 1CD0 50 POP 1CD1 50 POP 1CD2 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 1CF3 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1D08 16 AND 1D09 63 PUSH4 0xa9059cbb 1D0E 61 PUSH2 0x1d44 1D11 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 1D32 89 DUP10 1D33 89 DUP10 1D34 60 PUSH1 0x00 1D36 81 DUP2 1D37 81 DUP2 1D38 10 LT 1D39 61 PUSH2 0x137e 1D3C 57 *JUMPI 1D3D 61 PUSH2 0x137e 1D40 61 PUSH2 0x598d 1D43 56 *JUMP 1D44 5B JUMPDEST 1D45 84 DUP5 1D46 60 PUSH1 0x00 1D48 81 DUP2 1D49 51 MLOAD 1D4A 81 DUP2 1D4B 10 LT 1D4C 61 PUSH2 0x1d57 1D4F 57 *JUMPI 1D50 61 PUSH2 0x1d57 1D53 61 PUSH2 0x598d 1D56 56 *JUMP 1D57 5B JUMPDEST 1D58 60 PUSH1 0x20 1D5A 02 MUL 1D5B 60 PUSH1 0x20 1D5D 01 ADD 1D5E 01 ADD 1D5F 51 MLOAD 1D60 60 PUSH1 0x40 1D62 51 MLOAD 1D63 83 DUP4 1D64 63 PUSH4 0xffffffff 1D69 16 AND 1D6A 60 PUSH1 0xe0 1D6C 1B SHL 1D6D 81 DUP2 1D6E 52 MSTORE 1D6F 60 PUSH1 0x04 1D71 01 ADD 1D72 61 PUSH2 0x1d9d 1D75 92 SWAP3 1D76 91 SWAP2 1D77 90 SWAP1 1D78 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1D8D 92 SWAP3 1D8E 90 SWAP1 1D8F 92 SWAP3 1D90 16 AND 1D91 82 DUP3 1D92 52 MSTORE 1D93 60 PUSH1 0x20 1D95 82 DUP3 1D96 01 ADD 1D97 52 MSTORE 1D98 60 PUSH1 0x40 1D9A 01 ADD 1D9B 90 SWAP1 1D9C 56 *JUMP 1D9D 5B JUMPDEST 1D9E 60 PUSH1 0x20 1DA0 60 PUSH1 0x40 1DA2 51 MLOAD 1DA3 80 DUP1 1DA4 83 DUP4 1DA5 03 SUB 1DA6 81 DUP2 1DA7 60 PUSH1 0x00 1DA9 87 DUP8 1DAA 5A GAS 1DAB F1 CALL 1DAC 15 ISZERO 1DAD 80 DUP1 1DAE 15 ISZERO 1DAF 61 PUSH2 0x1dbc 1DB2 57 *JUMPI 1DB3 3D RETURNDATASIZE 1DB4 60 PUSH1 0x00 1DB6 80 DUP1 1DB7 3E RETURNDATACOPY 1DB8 3D RETURNDATASIZE 1DB9 60 PUSH1 0x00 1DBB FD *REVERT 1DBC 5B JUMPDEST 1DBD 50 POP 1DBE 50 POP 1DBF 50 POP 1DC0 50 POP 1DC1 60 PUSH1 0x40 1DC3 51 MLOAD 1DC4 3D RETURNDATASIZE 1DC5 60 PUSH1 0x1f 1DC7 19 NOT 1DC8 60 PUSH1 0x1f 1DCA 82 DUP3 1DCB 01 ADD 1DCC 16 AND 1DCD 82 DUP3 1DCE 01 ADD 1DCF 80 DUP1 1DD0 60 PUSH1 0x40 1DD2 52 MSTORE 1DD3 50 POP 1DD4 81 DUP2 1DD5 01 ADD 1DD6 90 SWAP1 1DD7 61 PUSH2 0x1de0 1DDA 91 SWAP2 1DDB 90 SWAP1 1DDC 61 PUSH2 0x59f2 1DDF 56 *JUMP 1DE0 5B JUMPDEST 1DE1 61 PUSH2 0x1dec 1DE4 57 *JUMPI 1DE5 61 PUSH2 0x1dec 1DE8 61 PUSH2 0x538b 1DEB 56 *JUMP 1DEC 5B JUMPDEST 1DED 61 PUSH2 0x1e2b 1DF0 82 DUP3 1DF1 87 DUP8 1DF2 87 DUP8 1DF3 80 DUP1 1DF4 80 DUP1 1DF5 60 PUSH1 0x20 1DF7 02 MUL 1DF8 60 PUSH1 0x20 1DFA 01 ADD 1DFB 60 PUSH1 0x40 1DFD 51 MLOAD 1DFE 90 SWAP1 1DFF 81 DUP2 1E00 01 ADD 1E01 60 PUSH1 0x40 1E03 52 MSTORE 1E04 80 DUP1 1E05 93 SWAP4 1E06 92 SWAP3 1E07 91 SWAP2 1E08 90 SWAP1 1E09 81 DUP2 1E0A 81 DUP2 1E0B 52 MSTORE 1E0C 60 PUSH1 0x20 1E0E 01 ADD 1E0F 83 DUP4 1E10 83 DUP4 1E11 60 PUSH1 0x20 1E13 02 MUL 1E14 80 DUP1 1E15 82 DUP3 1E16 84 DUP5 1E17 37 CALLDATACOPY 1E18 60 PUSH1 0x00 1E1A 92 SWAP3 1E1B 01 ADD 1E1C 91 SWAP2 1E1D 90 SWAP1 1E1E 91 SWAP2 1E1F 52 MSTORE 1E20 50 POP 1E21 89 DUP10 1E22 92 SWAP3 1E23 50 POP 1E24 61 PUSH2 0x3ce9 1E27 91 SWAP2 1E28 50 POP 1E29 50 POP 1E2A 56 *JUMP 1E2B 5B JUMPDEST 1E2C 50 POP 1E2D 95 SWAP6 1E2E 94 SWAP5 1E2F 50 POP 1E30 50 POP 1E31 50 POP 1E32 50 POP 1E33 50 POP 1E34 56 *JUMP label_1E35: // Incoming jump from 0x03BD // Inputs[1] { @1E38 memory[0x40:0x60] } 1E35 5B JUMPDEST 1E36 60 PUSH1 0x40 1E38 51 MLOAD 1E39 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 1E5A 81 DUP2 1E5B 52 MSTORE 1E5C 60 PUSH1 0x20 1E5E 60 PUSH1 0x04 1E60 82 DUP3 1E61 01 ADD 1E62 52 MSTORE 1E63 60 PUSH1 0x1c 1E65 60 PUSH1 0x24 1E67 82 DUP3 1E68 01 ADD 1E69 52 MSTORE 1E6A 7F PUSH32 0x446570726563617465643a2055736520676574416d6f756e7473496e00000000 1E8B 60 PUSH1 0x44 1E8D 82 DUP3 1E8E 01 ADD 1E8F 52 MSTORE 1E90 60 PUSH1 0x00 1E92 90 SWAP1 1E93 60 PUSH1 0x64 1E95 01 ADD 1E96 61 PUSH2 0x0609 1E99 56 *JUMP // Stack delta = +2 // Outputs[6] // { // @1E5B memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @1E62 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @1E69 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x1c // @1E8F memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x446570726563617465643a2055736520676574416d6f756e7473496e00000000 // @1E92 stack[0] = 0x00 // @1E95 stack[1] = 0x64 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_1E9A: // Incoming jump from 0x03DD // Inputs[2] // { // @1E9D stack[-1] // @1E9E block.timestamp // } 1E9A 5B JUMPDEST 1E9B 60 PUSH1 0x60 1E9D 81 DUP2 1E9E 42 TIMESTAMP 1E9F 81 DUP2 1EA0 10 LT 1EA1 15 ISZERO 1EA2 61 PUSH2 0x1f07 1EA5 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @1E9B stack[0] = 0x60 // @1E9D stack[1] = stack[-1] // } // Block ends with conditional jump to 0x1f07, if !(stack[-1] < block.timestamp) label_1EA6: // Incoming jump from 0x1EA5, if not !(stack[-1] < block.timestamp) // Inputs[1] { @1EA8 memory[0x40:0x60] } 1EA6 60 PUSH1 0x40 1EA8 51 MLOAD 1EA9 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 1ECA 81 DUP2 1ECB 52 MSTORE 1ECC 60 PUSH1 0x20 1ECE 60 PUSH1 0x04 1ED0 82 DUP3 1ED1 01 ADD 1ED2 52 MSTORE 1ED3 60 PUSH1 0x19 1ED5 60 PUSH1 0x24 1ED7 82 DUP3 1ED8 01 ADD 1ED9 52 MSTORE 1EDA 7F PUSH32 0x46726178737761705631526f757465723a204558504952454400000000000000 1EFB 60 PUSH1 0x44 1EFD 82 DUP3 1EFE 01 ADD 1EFF 52 MSTORE 1F00 60 PUSH1 0x64 1F02 01 ADD 1F03 61 PUSH2 0x0609 1F06 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @1ECB memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @1ED2 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @1ED9 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x19 // @1EFF memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000 // @1F02 stack[0] = 0x64 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_1F07: // Incoming jump from 0x1EA5, if !(stack[-1] < block.timestamp) // Inputs[5] // { // @1F2C stack[-8] // @1F2D stack[-6] // @1F2E stack[-5] // @1F39 memory[0x40:0x60] // @1F53 msg.data[stack[-6]:stack[-6] + 0x20 * stack[-5]] // } 1F07 5B JUMPDEST 1F08 61 PUSH2 0x1f65 1F0B 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 1F2C 89 DUP10 1F2D 88 DUP9 1F2E 88 DUP9 1F2F 80 DUP1 1F30 80 DUP1 1F31 60 PUSH1 0x20 1F33 02 MUL 1F34 60 PUSH1 0x20 1F36 01 ADD 1F37 60 PUSH1 0x40 1F39 51 MLOAD 1F3A 90 SWAP1 1F3B 81 DUP2 1F3C 01 ADD 1F3D 60 PUSH1 0x40 1F3F 52 MSTORE 1F40 80 DUP1 1F41 93 SWAP4 1F42 92 SWAP3 1F43 91 SWAP2 1F44 90 SWAP1 1F45 81 DUP2 1F46 81 DUP2 1F47 52 MSTORE 1F48 60 PUSH1 0x20 1F4A 01 ADD 1F4B 83 DUP4 1F4C 83 DUP4 1F4D 60 PUSH1 0x20 1F4F 02 MUL 1F50 80 DUP1 1F51 82 DUP3 1F52 84 DUP5 1F53 37 CALLDATACOPY 1F54 60 PUSH1 0x00 1F56 92 SWAP3 1F57 01 ADD 1F58 91 SWAP2 1F59 90 SWAP1 1F5A 91 SWAP2 1F5B 52 MSTORE 1F5C 50 POP 1F5D 61 PUSH2 0x4240 1F60 92 SWAP3 1F61 50 POP 1F62 50 POP 1F63 50 POP 1F64 56 *JUMP // Stack delta = +4 // Outputs[8] // { // @1F08 stack[0] = 0x1f65 // @1F0B stack[1] = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f // @1F2C stack[2] = stack[-8] // @1F3F memory[0x40:0x60] = memory[0x40:0x60] + 0x20 + 0x20 * stack[-5] // @1F41 stack[3] = memory[0x40:0x60] // @1F47 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = stack[-5] // @1F53 memory[0x20 + memory[0x40:0x60]:0x20 + memory[0x40:0x60] + 0x20 * stack[-5]] = msg.data[stack[-6]:stack[-6] + 0x20 * stack[-5]] // @1F5B memory[0x20 + memory[0x40:0x60] + 0x20 * stack[-5]:0x20 + memory[0x40:0x60] + 0x20 * stack[-5] + 0x20] = 0x00 // } // Block ends with call to 0x4240, returns to 0x1F65 label_1F65: // Incoming return from call to 0x4240 at 0x1F64 // Inputs[4] // { // @1F66 stack[-3] // @1F66 stack[-1] // @1F68 stack[-8] // @1F6D memory[stack[-1]:stack[-1] + 0x20] // } 1F65 5B JUMPDEST 1F66 91 SWAP2 1F67 50 POP 1F68 86 DUP7 1F69 82 DUP3 1F6A 60 PUSH1 0x00 1F6C 81 DUP2 1F6D 51 MLOAD 1F6E 81 DUP2 1F6F 10 LT 1F70 61 PUSH2 0x1f7b 1F73 57 *JUMPI // Stack delta = +2 // Outputs[4] // { // @1F66 stack[-3] = stack[-1] // @1F68 stack[-1] = stack[-8] // @1F69 stack[0] = stack[-1] // @1F6A stack[1] = 0x00 // } // Block ends with conditional jump to 0x1f7b, if 0x00 < memory[stack[-1]:stack[-1] + 0x20] label_1F74: // Incoming jump from 0x1F73, if not 0x00 < memory[stack[-1]:stack[-1] + 0x20] 1F74 61 PUSH2 0x1f7b 1F77 61 PUSH2 0x598d 1F7A 56 *JUMP // Stack delta = +1 // Outputs[1] { @1F74 stack[0] = 0x1f7b } // Block ends with unconditional jump to 0x598d label_1F7B: // Incoming jump from 0x1F73, if 0x00 < memory[stack[-1]:stack[-1] + 0x20] // Inputs[4] // { // @1F7E stack[-1] // @1F82 stack[-2] // @1F83 memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @1F84 stack[-3] // } 1F7B 5B JUMPDEST 1F7C 60 PUSH1 0x20 1F7E 02 MUL 1F7F 60 PUSH1 0x20 1F81 01 ADD 1F82 01 ADD 1F83 51 MLOAD 1F84 11 GT 1F85 15 ISZERO 1F86 61 PUSH2 0x0eb4 1F89 57 *JUMPI // Stack delta = -3 // Block ends with conditional jump to 0x0eb4, if !(memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] > stack[-3]) label_1F8A: // Incoming jump from 0x1F89, if not !(memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] > stack[-3]) // Inputs[1] { @1F8C memory[0x40:0x60] } 1F8A 60 PUSH1 0x40 1F8C 51 MLOAD 1F8D 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 1FAE 81 DUP2 1FAF 52 MSTORE 1FB0 60 PUSH1 0x20 1FB2 60 PUSH1 0x04 1FB4 82 DUP3 1FB5 01 ADD 1FB6 52 MSTORE 1FB7 60 PUSH1 0x28 1FB9 60 PUSH1 0x24 1FBB 82 DUP3 1FBC 01 ADD 1FBD 52 MSTORE 1FBE 7F PUSH32 0x46726178737761705631526f757465723a204558434553534956455f494e5055 1FDF 60 PUSH1 0x44 1FE1 82 DUP3 1FE2 01 ADD 1FE3 52 MSTORE 1FE4 7F PUSH32 0x545f414d4f554e54000000000000000000000000000000000000000000000000 2005 60 PUSH1 0x64 2007 82 DUP3 2008 01 ADD 2009 52 MSTORE 200A 60 PUSH1 0x84 200C 01 ADD 200D 61 PUSH2 0x0609 2010 56 *JUMP // Stack delta = +1 // Outputs[6] // { // @1FAF memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @1FB6 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @1FBD memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x28 // @1FE3 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558434553534956455f494e5055 // @2009 memory[memory[0x40:0x60] + 0x64:memory[0x40:0x60] + 0x64 + 0x20] = 0x545f414d4f554e54000000000000000000000000000000000000000000000000 // @200C stack[0] = 0x84 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_2011: // Incoming jump from 0x0456 // Inputs[3] // { // @2017 stack[-3] // @2018 stack[-2] // @2019 stack[-1] // } 2011 5B JUMPDEST 2012 60 PUSH1 0x00 2014 61 PUSH2 0x201e 2017 84 DUP5 2018 84 DUP5 2019 84 DUP5 201A 61 PUSH2 0x4875 201D 56 *JUMP // Stack delta = +5 // Outputs[5] // { // @2012 stack[0] = 0x00 // @2014 stack[1] = 0x201e // @2017 stack[2] = stack[-3] // @2018 stack[3] = stack[-2] // @2019 stack[4] = stack[-1] // } // Block ends with call to 0x4875, returns to 0x201E label_201E: // Incoming return from call to 0x4875 at 0x201D // Incoming return from call to 0x5BB9 at 0x49B6 // Inputs[3] // { // @201F stack[-1] // @201F stack[-6] // @2020 stack[-5] // } 201E 5B JUMPDEST 201F 94 SWAP5 2020 93 SWAP4 2021 50 POP 2022 50 POP 2023 50 POP 2024 50 POP 2025 56 *JUMP // Stack delta = -5 // Outputs[1] { @201F stack[-6] = stack[-1] } // Block ends with unconditional jump to stack[-6] label_2026: // Incoming jump from 0x129E // Incoming jump from 0x0476 // Inputs[2] // { // @2029 stack[-1] // @202A block.timestamp // } 2026 5B JUMPDEST 2027 60 PUSH1 0x00 2029 81 DUP2 202A 42 TIMESTAMP 202B 81 DUP2 202C 10 LT 202D 15 ISZERO 202E 61 PUSH2 0x2093 2031 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @2027 stack[0] = 0x00 // @2029 stack[1] = stack[-1] // } // Block ends with conditional jump to 0x2093, if !(stack[-1] < block.timestamp) label_2032: // Incoming jump from 0x2031, if not !(stack[-1] < block.timestamp) // Inputs[1] { @2034 memory[0x40:0x60] } 2032 60 PUSH1 0x40 2034 51 MLOAD 2035 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 2056 81 DUP2 2057 52 MSTORE 2058 60 PUSH1 0x20 205A 60 PUSH1 0x04 205C 82 DUP3 205D 01 ADD 205E 52 MSTORE 205F 60 PUSH1 0x19 2061 60 PUSH1 0x24 2063 82 DUP3 2064 01 ADD 2065 52 MSTORE 2066 7F PUSH32 0x46726178737761705631526f757465723a204558504952454400000000000000 2087 60 PUSH1 0x44 2089 82 DUP3 208A 01 ADD 208B 52 MSTORE 208C 60 PUSH1 0x64 208E 01 ADD 208F 61 PUSH2 0x0609 2092 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @2057 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @205E memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @2065 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x19 // @208B memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000 // @208E stack[0] = 0x64 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_2093: // Incoming jump from 0x2031, if !(stack[-1] < block.timestamp) // Inputs[6] // { // @2097 stack[-8] // @20B9 stack[-7] // @20BA stack[-6] // @20BB stack[-5] // @20BC address(this) // @20BD stack[-3] // } 2093 5B JUMPDEST 2094 61 PUSH2 0x20c2 2097 88 DUP9 2098 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 20B9 89 DUP10 20BA 89 DUP10 20BB 89 DUP10 20BC 30 ADDRESS 20BD 89 DUP10 20BE 61 PUSH2 0x26a8 20C1 56 *JUMP // Stack delta = +8 // Outputs[8] // { // @2094 stack[0] = 0x20c2 // @2097 stack[1] = stack[-8] // @2098 stack[2] = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 // @20B9 stack[3] = stack[-7] // @20BA stack[4] = stack[-6] // @20BB stack[5] = stack[-5] // @20BC stack[6] = address(this) // @20BD stack[7] = stack[-3] // } // Block ends with unconditional jump to 0x26a8 20C2 5B JUMPDEST 20C3 60 PUSH1 0x40 20C5 51 MLOAD 20C6 7F PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 20E7 81 DUP2 20E8 52 MSTORE 20E9 30 ADDRESS 20EA 60 PUSH1 0x04 20EC 82 DUP3 20ED 01 ADD 20EE 52 MSTORE 20EF 90 SWAP1 20F0 93 SWAP4 20F1 50 POP 20F2 61 PUSH2 0x2161 20F5 91 SWAP2 20F6 50 POP 20F7 89 DUP10 20F8 90 SWAP1 20F9 86 DUP7 20FA 90 SWAP1 20FB 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2110 83 DUP4 2111 16 AND 2112 90 SWAP1 2113 63 PUSH4 0x70a08231 2118 90 SWAP1 2119 60 PUSH1 0x24 211B 01 ADD 211C 60 PUSH1 0x20 211E 60 PUSH1 0x40 2120 51 MLOAD 2121 80 DUP1 2122 83 DUP4 2123 03 SUB 2124 81 DUP2 2125 86 DUP7 2126 5A GAS 2127 FA STATICCALL 2128 15 ISZERO 2129 80 DUP1 212A 15 ISZERO 212B 61 PUSH2 0x2138 212E 57 *JUMPI 212F 3D RETURNDATASIZE 2130 60 PUSH1 0x00 2132 80 DUP1 2133 3E RETURNDATACOPY 2134 3D RETURNDATASIZE 2135 60 PUSH1 0x00 2137 FD *REVERT 2138 5B JUMPDEST 2139 50 POP 213A 50 POP 213B 50 POP 213C 50 POP 213D 60 PUSH1 0x40 213F 51 MLOAD 2140 3D RETURNDATASIZE 2141 60 PUSH1 0x1f 2143 19 NOT 2144 60 PUSH1 0x1f 2146 82 DUP3 2147 01 ADD 2148 16 AND 2149 82 DUP3 214A 01 ADD 214B 80 DUP1 214C 60 PUSH1 0x40 214E 52 MSTORE 214F 50 POP 2150 81 DUP2 2151 01 ADD 2152 90 SWAP1 2153 61 PUSH2 0x215c 2156 91 SWAP2 2157 90 SWAP1 2158 61 PUSH2 0x59d9 215B 56 *JUMP 215C 5B JUMPDEST 215D 61 PUSH2 0x3482 2160 56 *JUMP 2161 5B JUMPDEST 2162 60 PUSH1 0x40 2164 51 MLOAD 2165 7F PUSH32 0x2e1a7d4d00000000000000000000000000000000000000000000000000000000 2186 81 DUP2 2187 52 MSTORE 2188 60 PUSH1 0x04 218A 81 DUP2 218B 01 ADD 218C 83 DUP4 218D 90 SWAP1 218E 52 MSTORE 218F 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 21B0 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 21C5 16 AND 21C6 90 SWAP1 21C7 63 PUSH4 0x2e1a7d4d 21CC 90 SWAP1 21CD 60 PUSH1 0x24 21CF 01 ADD 21D0 60 PUSH1 0x00 21D2 60 PUSH1 0x40 21D4 51 MLOAD 21D5 80 DUP1 21D6 83 DUP4 21D7 03 SUB 21D8 81 DUP2 21D9 60 PUSH1 0x00 21DB 87 DUP8 21DC 80 DUP1 21DD 3B EXTCODESIZE 21DE 15 ISZERO 21DF 80 DUP1 21E0 15 ISZERO 21E1 61 PUSH2 0x21e9 21E4 57 *JUMPI 21E5 60 PUSH1 0x00 21E7 80 DUP1 21E8 FD *REVERT 21E9 5B JUMPDEST 21EA 50 POP 21EB 5A GAS 21EC F1 CALL 21ED 15 ISZERO 21EE 80 DUP1 21EF 15 ISZERO 21F0 61 PUSH2 0x21fd 21F3 57 *JUMPI 21F4 3D RETURNDATASIZE 21F5 60 PUSH1 0x00 21F7 80 DUP1 21F8 3E RETURNDATACOPY 21F9 3D RETURNDATASIZE 21FA 60 PUSH1 0x00 21FC FD *REVERT 21FD 5B JUMPDEST 21FE 50 POP 21FF 50 POP 2200 50 POP 2201 50 POP 2202 61 PUSH2 0x0bbb 2205 84 DUP5 2206 83 DUP4 2207 61 PUSH2 0x3618 220A 56 *JUMP label_220B: // Incoming jump from 0x0496 // Inputs[2] // { // @2232 stack[-2] // @2233 stack[-1] // } 220B 5B JUMPDEST 220C 60 PUSH1 0x60 220E 61 PUSH2 0x0bf3 2211 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 2232 84 DUP5 2233 84 DUP5 2234 61 PUSH2 0x4240 2237 56 *JUMP // Stack delta = +5 // Outputs[5] // { // @220C stack[0] = 0x60 // @220E stack[1] = 0x0bf3 // @2211 stack[2] = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f // @2232 stack[3] = stack[-2] // @2233 stack[4] = stack[-1] // } // Block ends with call to 0x4240, returns to 0x0BF3 label_2238: // Incoming jump from 0x04A9 // Inputs[2] // { // @2239 stack[-1] // @223A block.timestamp // } 2238 5B JUMPDEST 2239 80 DUP1 223A 42 TIMESTAMP 223B 81 DUP2 223C 10 LT 223D 15 ISZERO 223E 61 PUSH2 0x22a3 2241 57 *JUMPI // Stack delta = +1 // Outputs[1] { @2239 stack[0] = stack[-1] } // Block ends with conditional jump to 0x22a3, if !(stack[-1] < block.timestamp) label_2242: // Incoming jump from 0x2241, if not !(stack[-1] < block.timestamp) // Inputs[1] { @2244 memory[0x40:0x60] } 2242 60 PUSH1 0x40 2244 51 MLOAD 2245 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 2266 81 DUP2 2267 52 MSTORE 2268 60 PUSH1 0x20 226A 60 PUSH1 0x04 226C 82 DUP3 226D 01 ADD 226E 52 MSTORE 226F 60 PUSH1 0x19 2271 60 PUSH1 0x24 2273 82 DUP3 2274 01 ADD 2275 52 MSTORE 2276 7F PUSH32 0x46726178737761705631526f757465723a204558504952454400000000000000 2297 60 PUSH1 0x44 2299 82 DUP3 229A 01 ADD 229B 52 MSTORE 229C 60 PUSH1 0x64 229E 01 ADD 229F 61 PUSH2 0x0609 22A2 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @2267 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @226E memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @2275 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x19 // @229B memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000 // @229E stack[0] = 0x64 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_22A3: // Incoming jump from 0x2241, if !(stack[-1] < block.timestamp) // Inputs[2] // { // @22DB stack[-5] // @22DC stack[-4] // } 22A3 5B JUMPDEST 22A4 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 22C5 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 22DA 16 AND 22DB 85 DUP6 22DC 85 DUP6 22DD 60 PUSH1 0x00 22DF 81 DUP2 22E0 81 DUP2 22E1 10 LT 22E2 61 PUSH2 0x22ed 22E5 57 *JUMPI // Stack delta = +4 // Outputs[4] // { // @22DA stack[0] = 0xffffffffffffffffffffffffffffffffffffffff & 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 // @22DB stack[1] = stack[-5] // @22DC stack[2] = stack[-4] // @22DD stack[3] = 0x00 // } // Block ends with conditional jump to 0x22ed, if 0x00 < stack[-4] label_22E6: // Incoming jump from 0x22E5, if not 0x00 < stack[-4] 22E6 61 PUSH2 0x22ed 22E9 61 PUSH2 0x598d 22EC 56 *JUMP // Stack delta = +1 // Outputs[1] { @22E6 stack[0] = 0x22ed } // Block ends with unconditional jump to 0x598d label_22ED: // Incoming jump from 0x22E5, if 0x00 < stack[-4] // Inputs[3] // { // @22EE stack[-1] // @22EE stack[-2] // @22F3 stack[-3] // } 22ED 5B JUMPDEST 22EE 90 SWAP1 22EF 50 POP 22F0 60 PUSH1 0x20 22F2 02 MUL 22F3 01 ADD 22F4 60 PUSH1 0x20 22F6 81 DUP2 22F7 01 ADD 22F8 90 SWAP1 22F9 61 PUSH2 0x2302 22FC 91 SWAP2 22FD 90 SWAP1 22FE 61 PUSH2 0x59bc 2301 56 *JUMP // Stack delta = +0 // Outputs[3] // { // @22FC stack[-3] = 0x2302 // @22FD stack[-1] = 0x20 * stack[-1] + stack[-3] // @22FD stack[-2] = 0x20 * stack[-1] + stack[-3] + 0x20 // } // Block ends with unconditional jump to 0x59bc 2302 5B JUMPDEST 2303 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2318 16 AND 2319 14 EQ 231A 61 PUSH2 0x237f 231D 57 *JUMPI 231E 60 PUSH1 0x40 2320 51 MLOAD 2321 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 2342 81 DUP2 2343 52 MSTORE 2344 60 PUSH1 0x20 2346 60 PUSH1 0x04 2348 82 DUP3 2349 01 ADD 234A 52 MSTORE 234B 60 PUSH1 0x1e 234D 60 PUSH1 0x24 234F 82 DUP3 2350 01 ADD 2351 52 MSTORE 2352 7F PUSH32 0x46726178737761705631526f757465723a20494e56414c49445f504154480000 2373 60 PUSH1 0x44 2375 82 DUP3 2376 01 ADD 2377 52 MSTORE 2378 60 PUSH1 0x64 237A 01 ADD 237B 61 PUSH2 0x0609 237E 56 *JUMP 237F 5B JUMPDEST 2380 60 PUSH1 0x00 2382 34 CALLVALUE 2383 90 SWAP1 2384 50 POP 2385 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 23A6 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 23BB 16 AND 23BC 63 PUSH4 0xd0e30db0 23C1 82 DUP3 23C2 60 PUSH1 0x40 23C4 51 MLOAD 23C5 82 DUP3 23C6 63 PUSH4 0xffffffff 23CB 16 AND 23CC 60 PUSH1 0xe0 23CE 1B SHL 23CF 81 DUP2 23D0 52 MSTORE 23D1 60 PUSH1 0x04 23D3 01 ADD 23D4 60 PUSH1 0x00 23D6 60 PUSH1 0x40 23D8 51 MLOAD 23D9 80 DUP1 23DA 83 DUP4 23DB 03 SUB 23DC 81 DUP2 23DD 85 DUP6 23DE 88 DUP9 23DF 80 DUP1 23E0 3B EXTCODESIZE 23E1 15 ISZERO 23E2 80 DUP1 23E3 15 ISZERO 23E4 61 PUSH2 0x23ec 23E7 57 *JUMPI 23E8 60 PUSH1 0x00 23EA 80 DUP1 23EB FD *REVERT 23EC 5B JUMPDEST 23ED 50 POP 23EE 5A GAS 23EF F1 CALL 23F0 15 ISZERO 23F1 80 DUP1 23F2 15 ISZERO 23F3 61 PUSH2 0x2400 23F6 57 *JUMPI 23F7 3D RETURNDATASIZE 23F8 60 PUSH1 0x00 23FA 80 DUP1 23FB 3E RETURNDATACOPY 23FC 3D RETURNDATASIZE 23FD 60 PUSH1 0x00 23FF FD *REVERT 2400 5B JUMPDEST 2401 50 POP 2402 50 POP 2403 50 POP 2404 50 POP 2405 50 POP 2406 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 2427 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 243C 16 AND 243D 63 PUSH4 0xa9059cbb 2442 61 PUSH2 0x2478 2445 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 2466 89 DUP10 2467 89 DUP10 2468 60 PUSH1 0x00 246A 81 DUP2 246B 81 DUP2 246C 10 LT 246D 61 PUSH2 0x137e 2470 57 *JUMPI 2471 61 PUSH2 0x137e 2474 61 PUSH2 0x598d 2477 56 *JUMP 2478 5B JUMPDEST 2479 60 PUSH1 0x40 247B 51 MLOAD 247C 7F PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 249D 60 PUSH1 0xe0 249F 84 DUP5 24A0 90 SWAP1 24A1 1B SHL 24A2 16 AND 24A3 81 DUP2 24A4 52 MSTORE 24A5 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 24BA 90 SWAP1 24BB 91 SWAP2 24BC 16 AND 24BD 60 PUSH1 0x04 24BF 82 DUP3 24C0 01 ADD 24C1 52 MSTORE 24C2 60 PUSH1 0x24 24C4 81 DUP2 24C5 01 ADD 24C6 84 DUP5 24C7 90 SWAP1 24C8 52 MSTORE 24C9 60 PUSH1 0x44 24CB 01 ADD 24CC 60 PUSH1 0x20 24CE 60 PUSH1 0x40 24D0 51 MLOAD 24D1 80 DUP1 24D2 83 DUP4 24D3 03 SUB 24D4 81 DUP2 24D5 60 PUSH1 0x00 24D7 87 DUP8 24D8 5A GAS 24D9 F1 CALL 24DA 15 ISZERO 24DB 80 DUP1 24DC 15 ISZERO 24DD 61 PUSH2 0x24ea 24E0 57 *JUMPI 24E1 3D RETURNDATASIZE 24E2 60 PUSH1 0x00 24E4 80 DUP1 24E5 3E RETURNDATACOPY 24E6 3D RETURNDATASIZE 24E7 60 PUSH1 0x00 24E9 FD *REVERT 24EA 5B JUMPDEST 24EB 50 POP 24EC 50 POP 24ED 50 POP 24EE 50 POP 24EF 60 PUSH1 0x40 24F1 51 MLOAD 24F2 3D RETURNDATASIZE 24F3 60 PUSH1 0x1f 24F5 19 NOT 24F6 60 PUSH1 0x1f 24F8 82 DUP3 24F9 01 ADD 24FA 16 AND 24FB 82 DUP3 24FC 01 ADD 24FD 80 DUP1 24FE 60 PUSH1 0x40 2500 52 MSTORE 2501 50 POP 2502 81 DUP2 2503 01 ADD 2504 90 SWAP1 2505 61 PUSH2 0x250e 2508 91 SWAP2 2509 90 SWAP1 250A 61 PUSH2 0x59f2 250D 56 *JUMP 250E 5B JUMPDEST 250F 61 PUSH2 0x251a 2512 57 *JUMPI 2513 61 PUSH2 0x251a 2516 61 PUSH2 0x538b 2519 56 *JUMP 251A 5B JUMPDEST 251B 60 PUSH1 0x00 251D 86 DUP7 251E 86 DUP7 251F 61 PUSH2 0x2529 2522 60 PUSH1 0x01 2524 82 DUP3 2525 61 PUSH2 0x5976 2528 56 *JUMP 2529 5B JUMPDEST 252A 81 DUP2 252B 81 DUP2 252C 10 LT 252D 61 PUSH2 0x2538 2530 57 *JUMPI 2531 61 PUSH2 0x2538 2534 61 PUSH2 0x598d 2537 56 *JUMP 2538 5B JUMPDEST 2539 90 SWAP1 253A 50 POP 253B 60 PUSH1 0x20 253D 02 MUL 253E 01 ADD 253F 60 PUSH1 0x20 2541 81 DUP2 2542 01 ADD 2543 90 SWAP1 2544 61 PUSH2 0x254d 2547 91 SWAP2 2548 90 SWAP1 2549 61 PUSH2 0x59bc 254C 56 *JUMP 254D 5B JUMPDEST 254E 60 PUSH1 0x40 2550 51 MLOAD 2551 7F PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 2572 81 DUP2 2573 52 MSTORE 2574 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2589 87 DUP8 258A 81 DUP2 258B 16 AND 258C 60 PUSH1 0x04 258E 83 DUP4 258F 01 ADD 2590 52 MSTORE 2591 91 SWAP2 2592 90 SWAP1 2593 91 SWAP2 2594 16 AND 2595 90 SWAP1 2596 63 PUSH4 0x70a08231 259B 90 SWAP1 259C 60 PUSH1 0x24 259E 01 ADD 259F 60 PUSH1 0x20 25A1 60 PUSH1 0x40 25A3 51 MLOAD 25A4 80 DUP1 25A5 83 DUP4 25A6 03 SUB 25A7 81 DUP2 25A8 86 DUP7 25A9 5A GAS 25AA FA STATICCALL 25AB 15 ISZERO 25AC 80 DUP1 25AD 15 ISZERO 25AE 61 PUSH2 0x25bb 25B1 57 *JUMPI 25B2 3D RETURNDATASIZE 25B3 60 PUSH1 0x00 25B5 80 DUP1 25B6 3E RETURNDATACOPY 25B7 3D RETURNDATASIZE 25B8 60 PUSH1 0x00 25BA FD *REVERT 25BB 5B JUMPDEST 25BC 50 POP 25BD 50 POP 25BE 50 POP 25BF 50 POP 25C0 60 PUSH1 0x40 25C2 51 MLOAD 25C3 3D RETURNDATASIZE 25C4 60 PUSH1 0x1f 25C6 19 NOT 25C7 60 PUSH1 0x1f 25C9 82 DUP3 25CA 01 ADD 25CB 16 AND 25CC 82 DUP3 25CD 01 ADD 25CE 80 DUP1 25CF 60 PUSH1 0x40 25D1 52 MSTORE 25D2 50 POP 25D3 81 DUP2 25D4 01 ADD 25D5 90 SWAP1 25D6 61 PUSH2 0x25df 25D9 91 SWAP2 25DA 90 SWAP1 25DB 61 PUSH2 0x59d9 25DE 56 *JUMP 25DF 5B JUMPDEST 25E0 90 SWAP1 25E1 50 POP 25E2 61 PUSH2 0x261f 25E5 87 DUP8 25E6 87 DUP8 25E7 80 DUP1 25E8 80 DUP1 25E9 60 PUSH1 0x20 25EB 02 MUL 25EC 60 PUSH1 0x20 25EE 01 ADD 25EF 60 PUSH1 0x40 25F1 51 MLOAD 25F2 90 SWAP1 25F3 81 DUP2 25F4 01 ADD 25F5 60 PUSH1 0x40 25F7 52 MSTORE 25F8 80 DUP1 25F9 93 SWAP4 25FA 92 SWAP3 25FB 91 SWAP2 25FC 90 SWAP1 25FD 81 DUP2 25FE 81 DUP2 25FF 52 MSTORE 2600 60 PUSH1 0x20 2602 01 ADD 2603 83 DUP4 2604 83 DUP4 2605 60 PUSH1 0x20 2607 02 MUL 2608 80 DUP1 2609 82 DUP3 260A 84 DUP5 260B 37 CALLDATACOPY 260C 60 PUSH1 0x00 260E 92 SWAP3 260F 01 ADD 2610 91 SWAP2 2611 90 SWAP1 2612 91 SWAP2 2613 52 MSTORE 2614 50 POP 2615 89 DUP10 2616 92 SWAP3 2617 50 POP 2618 61 PUSH2 0x4506 261B 91 SWAP2 261C 50 POP 261D 50 POP 261E 56 *JUMP 261F 5B JUMPDEST 2620 87 DUP8 2621 81 DUP2 2622 88 DUP9 2623 88 DUP9 2624 61 PUSH2 0x262e 2627 60 PUSH1 0x01 2629 82 DUP3 262A 61 PUSH2 0x5976 262D 56 *JUMP 262E 5B JUMPDEST 262F 81 DUP2 2630 81 DUP2 2631 10 LT 2632 61 PUSH2 0x263d 2635 57 *JUMPI 2636 61 PUSH2 0x263d 2639 61 PUSH2 0x598d 263C 56 *JUMP 263D 5B JUMPDEST 263E 90 SWAP1 263F 50 POP 2640 60 PUSH1 0x20 2642 02 MUL 2643 01 ADD 2644 60 PUSH1 0x20 2646 81 DUP2 2647 01 ADD 2648 90 SWAP1 2649 61 PUSH2 0x2652 264C 91 SWAP2 264D 90 SWAP1 264E 61 PUSH2 0x59bc 2651 56 *JUMP 2652 5B JUMPDEST 2653 60 PUSH1 0x40 2655 51 MLOAD 2656 7F PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 2677 81 DUP2 2678 52 MSTORE 2679 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 268E 89 DUP10 268F 81 DUP2 2690 16 AND 2691 60 PUSH1 0x04 2693 83 DUP4 2694 01 ADD 2695 52 MSTORE 2696 91 SWAP2 2697 90 SWAP1 2698 91 SWAP2 2699 16 AND 269A 90 SWAP1 269B 63 PUSH4 0x70a08231 26A0 90 SWAP1 26A1 60 PUSH1 0x24 26A3 01 ADD 26A4 61 PUSH2 0x1536 26A7 56 *JUMP label_26A8: // Incoming jump from 0x0D16 // Incoming jump from 0x20C1 // Incoming jump from 0x0640 // Incoming jump from 0x04C9 // Inputs[2] // { // @26AC stack[-1] // @26AD block.timestamp // } 26A8 5B JUMPDEST 26A9 60 PUSH1 0x00 26AB 80 DUP1 26AC 82 DUP3 26AD 42 TIMESTAMP 26AE 81 DUP2 26AF 10 LT 26B0 15 ISZERO 26B1 61 PUSH2 0x2716 26B4 57 *JUMPI // Stack delta = +3 // Outputs[3] // { // @26A9 stack[0] = 0x00 // @26AB stack[1] = 0x00 // @26AC stack[2] = stack[-1] // } // Block ends with conditional jump to 0x2716, if !(stack[-1] < block.timestamp) label_26B5: // Incoming jump from 0x26B4, if not !(stack[-1] < block.timestamp) // Inputs[1] { @26B7 memory[0x40:0x60] } 26B5 60 PUSH1 0x40 26B7 51 MLOAD 26B8 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 26D9 81 DUP2 26DA 52 MSTORE 26DB 60 PUSH1 0x20 26DD 60 PUSH1 0x04 26DF 82 DUP3 26E0 01 ADD 26E1 52 MSTORE 26E2 60 PUSH1 0x19 26E4 60 PUSH1 0x24 26E6 82 DUP3 26E7 01 ADD 26E8 52 MSTORE 26E9 7F PUSH32 0x46726178737761705631526f757465723a204558504952454400000000000000 270A 60 PUSH1 0x44 270C 82 DUP3 270D 01 ADD 270E 52 MSTORE 270F 60 PUSH1 0x64 2711 01 ADD 2712 61 PUSH2 0x0609 2715 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @26DA memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @26E1 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @26E8 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x19 // @270E memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000 // @2711 stack[0] = 0x64 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_2716: // Incoming jump from 0x26B4, if !(stack[-1] < block.timestamp) // Inputs[2] // { // @273D stack[-10] // @273E stack[-9] // } 2716 5B JUMPDEST 2717 60 PUSH1 0x00 2719 61 PUSH2 0x2743 271C 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 273D 8C DUP13 273E 8C DUP13 273F 61 PUSH2 0x3a15 2742 56 *JUMP // Stack delta = +5 // Outputs[5] // { // @2717 stack[0] = 0x00 // @2719 stack[1] = 0x2743 // @271C stack[2] = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f // @273D stack[3] = stack[-10] // @273E stack[4] = stack[-9] // } // Block ends with call to 0x3a15, returns to 0x2743 label_2743: // Incoming return from call to 0x3A15 at 0x2742 // Inputs[9] // { // @2746 memory[0x40:0x60] // @276A msg.sender // @2785 stack[-1] // @2792 stack[-10] // @2796 stack[-2] // @27A5 memory[0x40:0x60] // @27AD msg.gas // @27AE memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x64 + memory[0x40:0x60]) - memory[0x40:0x60]] // @27AE address(stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff).call.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x64 + memory[0x40:0x60]) - memory[0x40:0x60]]) // } 2743 5B JUMPDEST 2744 60 PUSH1 0x40 2746 51 MLOAD 2747 7F PUSH32 0x23b872dd00000000000000000000000000000000000000000000000000000000 2768 81 DUP2 2769 52 MSTORE 276A 33 CALLER 276B 60 PUSH1 0x04 276D 82 DUP3 276E 01 ADD 276F 52 MSTORE 2770 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2785 82 DUP3 2786 16 AND 2787 60 PUSH1 0x24 2789 82 DUP3 278A 01 ADD 278B 81 DUP2 278C 90 SWAP1 278D 52 MSTORE 278E 60 PUSH1 0x44 2790 82 DUP3 2791 01 ADD 2792 8C DUP13 2793 90 SWAP1 2794 52 MSTORE 2795 91 SWAP2 2796 92 SWAP3 2797 50 POP 2798 63 PUSH4 0x23b872dd 279D 90 SWAP1 279E 60 PUSH1 0x64 27A0 01 ADD 27A1 60 PUSH1 0x20 27A3 60 PUSH1 0x40 27A5 51 MLOAD 27A6 80 DUP1 27A7 83 DUP4 27A8 03 SUB 27A9 81 DUP2 27AA 60 PUSH1 0x00 27AC 87 DUP8 27AD 5A GAS 27AE F1 CALL 27AF 15 ISZERO 27B0 80 DUP1 27B1 15 ISZERO 27B2 61 PUSH2 0x27bf 27B5 57 *JUMPI // Stack delta = +3 // Outputs[10] // { // @2769 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x23b872dd00000000000000000000000000000000000000000000000000000000 // @276F memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = msg.sender // @278D memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff // @2794 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = stack[-10] // @2795 stack[-1] = stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff // @2796 stack[-2] = stack[-1] // @279D stack[0] = 0x23b872dd // @27A0 stack[1] = 0x64 + memory[0x40:0x60] // @27AE memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = address(stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff).call.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x64 + memory[0x40:0x60]) - memory[0x40:0x60]]) // @27AF stack[2] = !address(stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff).call.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x64 + memory[0x40:0x60]) - memory[0x40:0x60]]) // } // Block ends with conditional jump to 0x27bf, if !!address(stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff).call.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x64 + memory[0x40:0x60]) - memory[0x40:0x60]]) label_27B6: // Incoming jump from 0x27B5, if not !!address(stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff).call.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x64 + memory[0x40:0x60]) - memory[0x40:0x60]]) // Inputs[4] // { // @27B6 returndata.length // @27BA returndata[0x00:0x00 + returndata.length] // @27BB returndata.length // @27BE memory[0x00:0x00 + returndata.length] // } 27B6 3D RETURNDATASIZE 27B7 60 PUSH1 0x00 27B9 80 DUP1 27BA 3E RETURNDATACOPY 27BB 3D RETURNDATASIZE 27BC 60 PUSH1 0x00 27BE FD *REVERT // Stack delta = +0 // Outputs[2] // { // @27BA memory[0x00:0x00 + returndata.length] = returndata[0x00:0x00 + returndata.length] // @27BE revert(memory[0x00:0x00 + returndata.length]); // } // Block terminates label_27BF: // Incoming jump from 0x27B5, if !!address(stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff).call.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x64 + memory[0x40:0x60]) - memory[0x40:0x60]]) // Inputs[2] // { // @27C6 memory[0x40:0x60] // @27C7 returndata.length // } 27BF 5B JUMPDEST 27C0 50 POP 27C1 50 POP 27C2 50 POP 27C3 50 POP 27C4 60 PUSH1 0x40 27C6 51 MLOAD 27C7 3D RETURNDATASIZE 27C8 60 PUSH1 0x1f 27CA 19 NOT 27CB 60 PUSH1 0x1f 27CD 82 DUP3 27CE 01 ADD 27CF 16 AND 27D0 82 DUP3 27D1 01 ADD 27D2 80 DUP1 27D3 60 PUSH1 0x40 27D5 52 MSTORE 27D6 50 POP 27D7 81 DUP2 27D8 01 ADD 27D9 90 SWAP1 27DA 61 PUSH2 0x27e3 27DD 91 SWAP2 27DE 90 SWAP1 27DF 61 PUSH2 0x59f2 27E2 56 *JUMP // Stack delta = -1 // Outputs[4] // { // @27D5 memory[0x40:0x60] = memory[0x40:0x60] + (returndata.length + 0x1f & ~0x1f) // @27DD stack[-4] = 0x27e3 // @27DE stack[-2] = memory[0x40:0x60] // @27DE stack[-3] = memory[0x40:0x60] + returndata.length // } // Block ends with unconditional jump to 0x59f2 27E3 5B JUMPDEST 27E4 50 POP 27E5 60 PUSH1 0x40 27E7 51 MLOAD 27E8 7F PUSH32 0x89afcb4400000000000000000000000000000000000000000000000000000000 2809 81 DUP2 280A 52 MSTORE 280B 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2820 87 DUP8 2821 81 DUP2 2822 16 AND 2823 60 PUSH1 0x04 2825 83 DUP4 2826 01 ADD 2827 52 MSTORE 2828 60 PUSH1 0x00 282A 91 SWAP2 282B 82 DUP3 282C 91 SWAP2 282D 84 DUP5 282E 16 AND 282F 90 SWAP1 2830 63 PUSH4 0x89afcb44 2835 90 SWAP1 2836 60 PUSH1 0x24 2838 01 ADD 2839 60 PUSH1 0x40 283B 80 DUP1 283C 51 MLOAD 283D 80 DUP1 283E 83 DUP4 283F 03 SUB 2840 81 DUP2 2841 60 PUSH1 0x00 2843 87 DUP8 2844 5A GAS 2845 F1 CALL 2846 15 ISZERO 2847 80 DUP1 2848 15 ISZERO 2849 61 PUSH2 0x2856 284C 57 *JUMPI 284D 3D RETURNDATASIZE 284E 60 PUSH1 0x00 2850 80 DUP1 2851 3E RETURNDATACOPY 2852 3D RETURNDATASIZE 2853 60 PUSH1 0x00 2855 FD *REVERT 2856 5B JUMPDEST 2857 50 POP 2858 50 POP 2859 50 POP 285A 50 POP 285B 60 PUSH1 0x40 285D 51 MLOAD 285E 3D RETURNDATASIZE 285F 60 PUSH1 0x1f 2861 19 NOT 2862 60 PUSH1 0x1f 2864 82 DUP3 2865 01 ADD 2866 16 AND 2867 82 DUP3 2868 01 ADD 2869 80 DUP1 286A 60 PUSH1 0x40 286C 52 MSTORE 286D 50 POP 286E 81 DUP2 286F 01 ADD 2870 90 SWAP1 2871 61 PUSH2 0x287a 2874 91 SWAP2 2875 90 SWAP1 2876 61 PUSH2 0x5a0f 2879 56 *JUMP 287A 5B JUMPDEST 287B 91 SWAP2 287C 50 POP 287D 91 SWAP2 287E 50 POP 287F 60 PUSH1 0x00 2881 61 PUSH2 0x288a 2884 8E DUP15 2885 8E DUP15 2886 61 PUSH2 0x49b7 2889 56 *JUMP 288A 5B JUMPDEST 288B 50 POP 288C 90 SWAP1 288D 50 POP 288E 80 DUP1 288F 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 28A4 16 AND 28A5 8E DUP15 28A6 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 28BB 16 AND 28BC 14 EQ 28BD 61 PUSH2 0x28c7 28C0 57 *JUMPI 28C1 81 DUP2 28C2 83 DUP4 28C3 61 PUSH2 0x28ca 28C6 56 *JUMP 28C7 5B JUMPDEST 28C8 82 DUP3 28C9 82 DUP3 28CA 5B JUMPDEST 28CB 90 SWAP1 28CC 97 SWAP8 28CD 50 POP 28CE 95 SWAP6 28CF 50 POP 28D0 8A DUP11 28D1 87 DUP8 28D2 10 LT 28D3 15 ISZERO 28D4 61 PUSH2 0x295f 28D7 57 *JUMPI 28D8 60 PUSH1 0x40 28DA 51 MLOAD 28DB 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 28FC 81 DUP2 28FD 52 MSTORE 28FE 60 PUSH1 0x20 2900 60 PUSH1 0x04 2902 82 DUP3 2903 01 ADD 2904 52 MSTORE 2905 60 PUSH1 0x27 2907 60 PUSH1 0x24 2909 82 DUP3 290A 01 ADD 290B 52 MSTORE 290C 7F PUSH32 0x46726178737761705631526f757465723a20494e53554646494349454e545f41 292D 60 PUSH1 0x44 292F 82 DUP3 2930 01 ADD 2931 52 MSTORE 2932 7F PUSH32 0x5f414d4f554e5400000000000000000000000000000000000000000000000000 2953 60 PUSH1 0x64 2955 82 DUP3 2956 01 ADD 2957 52 MSTORE 2958 60 PUSH1 0x84 295A 01 ADD 295B 61 PUSH2 0x0609 295E 56 *JUMP 295F 5B JUMPDEST 2960 89 DUP10 2961 86 DUP7 2962 10 LT 2963 15 ISZERO 2964 61 PUSH2 0x29ef 2967 57 *JUMPI 2968 60 PUSH1 0x40 296A 51 MLOAD 296B 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 298C 81 DUP2 298D 52 MSTORE 298E 60 PUSH1 0x20 2990 60 PUSH1 0x04 2992 82 DUP3 2993 01 ADD 2994 52 MSTORE 2995 60 PUSH1 0x27 2997 60 PUSH1 0x24 2999 82 DUP3 299A 01 ADD 299B 52 MSTORE 299C 7F PUSH32 0x46726178737761705631526f757465723a20494e53554646494349454e545f42 29BD 60 PUSH1 0x44 29BF 82 DUP3 29C0 01 ADD 29C1 52 MSTORE 29C2 7F PUSH32 0x5f414d4f554e5400000000000000000000000000000000000000000000000000 29E3 60 PUSH1 0x64 29E5 82 DUP3 29E6 01 ADD 29E7 52 MSTORE 29E8 60 PUSH1 0x84 29EA 01 ADD 29EB 61 PUSH2 0x0609 29EE 56 *JUMP 29EF 5B JUMPDEST 29F0 50 POP 29F1 50 POP 29F2 50 POP 29F3 50 POP 29F4 50 POP 29F5 97 SWAP8 29F6 50 POP 29F7 97 SWAP8 29F8 95 SWAP6 29F9 50 POP 29FA 50 POP 29FB 50 POP 29FC 50 POP 29FD 50 POP 29FE 50 POP 29FF 56 *JUMP label_2A00: // Incoming jump from 0x051D // Inputs[2] // { // @2A27 stack[-2] // @2A28 stack[-1] // } 2A00 5B JUMPDEST 2A01 60 PUSH1 0x60 2A03 61 PUSH2 0x0bf3 2A06 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 2A27 84 DUP5 2A28 84 DUP5 2A29 61 PUSH2 0x4b61 2A2C 56 *JUMP // Stack delta = +5 // Outputs[5] // { // @2A01 stack[0] = 0x60 // @2A03 stack[1] = 0x0bf3 // @2A06 stack[2] = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f // @2A27 stack[3] = stack[-2] // @2A28 stack[4] = stack[-1] // } // Block ends with call to 0x4b61, returns to 0x0BF3 label_2A2D: // Incoming jump from 0x053D // Inputs[1] { @2A57 stack[-10] } 2A2D 5B JUMPDEST 2A2E 60 PUSH1 0x00 2A30 80 DUP1 2A31 60 PUSH1 0x00 2A33 61 PUSH2 0x2a7d 2A36 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 2A57 8E DUP15 2A58 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 2A79 61 PUSH2 0x3a15 2A7C 56 *JUMP // Stack delta = +7 // Outputs[7] // { // @2A2E stack[0] = 0x00 // @2A30 stack[1] = 0x00 // @2A31 stack[2] = 0x00 // @2A33 stack[3] = 0x2a7d // @2A36 stack[4] = 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f // @2A57 stack[5] = stack[-10] // @2A58 stack[6] = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 // } // Block ends with call to 0x3a15, returns to 0x2A7D label_2A7D: // Incoming return from call to 0x3A15 at 0x2A7C // Inputs[3] // { // @2A7E stack[-2] // @2A7E stack[-1] // @2A82 stack[-8] // } 2A7D 5B JUMPDEST 2A7E 90 SWAP1 2A7F 50 POP 2A80 60 PUSH1 0x00 2A82 87 DUP8 2A83 61 PUSH2 0x2a8c 2A86 57 *JUMPI // Stack delta = +0 // Outputs[2] // { // @2A7E stack[-2] = stack[-1] // @2A80 stack[-1] = 0x00 // } // Block ends with conditional jump to 0x2a8c, if stack[-8] label_2A87: // Incoming jump from 0x2A86, if not stack[-8] // Inputs[1] { @2A87 stack[-13] } 2A87 8C DUP13 2A88 61 PUSH2 0x2aae 2A8B 56 *JUMP // Stack delta = +1 // Outputs[1] { @2A87 stack[0] = stack[-13] } // Block ends with unconditional jump to 0x2aae label_2A8C: // Incoming jump from 0x2A86, if stack[-8] // Inputs[11] // { // @2AB1 memory[0x40:0x60] // @2AD5 msg.sender // @2ADB address(this) // @2AEC stack[-9] // @2AF1 stack[-7] // @2AFC stack[-6] // @2B03 stack[-5] // @2B07 stack[-1] // @2B1E stack[-2] // @2B2E memory[0x40:0x60] // @2B37 address(stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // } 2A8C 5B JUMPDEST 2A8D 7F PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 2AAE 5B JUMPDEST 2AAF 60 PUSH1 0x40 2AB1 51 MLOAD 2AB2 7F PUSH32 0xd505accf00000000000000000000000000000000000000000000000000000000 2AD3 81 DUP2 2AD4 52 MSTORE 2AD5 33 CALLER 2AD6 60 PUSH1 0x04 2AD8 82 DUP3 2AD9 01 ADD 2ADA 52 MSTORE 2ADB 30 ADDRESS 2ADC 60 PUSH1 0x24 2ADE 82 DUP3 2ADF 01 ADD 2AE0 52 MSTORE 2AE1 60 PUSH1 0x44 2AE3 81 DUP2 2AE4 01 ADD 2AE5 82 DUP3 2AE6 90 SWAP1 2AE7 52 MSTORE 2AE8 60 PUSH1 0x64 2AEA 81 DUP2 2AEB 01 ADD 2AEC 8B DUP12 2AED 90 SWAP1 2AEE 52 MSTORE 2AEF 60 PUSH1 0xff 2AF1 89 DUP10 2AF2 16 AND 2AF3 60 PUSH1 0x84 2AF5 82 DUP3 2AF6 01 ADD 2AF7 52 MSTORE 2AF8 60 PUSH1 0xa4 2AFA 81 DUP2 2AFB 01 ADD 2AFC 88 DUP9 2AFD 90 SWAP1 2AFE 52 MSTORE 2AFF 60 PUSH1 0xc4 2B01 81 DUP2 2B02 01 ADD 2B03 87 DUP8 2B04 90 SWAP1 2B05 52 MSTORE 2B06 90 SWAP1 2B07 91 SWAP2 2B08 50 POP 2B09 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2B1E 83 DUP4 2B1F 16 AND 2B20 90 SWAP1 2B21 63 PUSH4 0xd505accf 2B26 90 SWAP1 2B27 60 PUSH1 0xe4 2B29 01 ADD 2B2A 60 PUSH1 0x00 2B2C 60 PUSH1 0x40 2B2E 51 MLOAD 2B2F 80 DUP1 2B30 83 DUP4 2B31 03 SUB 2B32 81 DUP2 2B33 60 PUSH1 0x00 2B35 87 DUP8 2B36 80 DUP1 2B37 3B EXTCODESIZE 2B38 15 ISZERO 2B39 80 DUP1 2B3A 15 ISZERO 2B3B 61 PUSH2 0x2b43 2B3E 57 *JUMPI // Stack delta = +10 // Outputs[19] // { // @2AD4 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0xd505accf00000000000000000000000000000000000000000000000000000000 // @2ADA memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = msg.sender // @2AE0 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = address(this) // @2AE7 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff // @2AEE memory[memory[0x40:0x60] + 0x64:memory[0x40:0x60] + 0x64 + 0x20] = stack[-9] // @2AF7 memory[memory[0x40:0x60] + 0x84:memory[0x40:0x60] + 0x84 + 0x20] = stack[-7] & 0xff // @2AFE memory[memory[0x40:0x60] + 0xa4:memory[0x40:0x60] + 0xa4 + 0x20] = stack[-6] // @2B05 memory[memory[0x40:0x60] + 0xc4:memory[0x40:0x60] + 0xc4 + 0x20] = stack[-5] // @2B07 stack[-1] = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff // @2B20 stack[0] = stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff // @2B26 stack[1] = 0xd505accf // @2B29 stack[2] = 0xe4 + memory[0x40:0x60] // @2B2A stack[3] = 0x00 // @2B2E stack[4] = memory[0x40:0x60] // @2B31 stack[5] = (0xe4 + memory[0x40:0x60]) - memory[0x40:0x60] // @2B32 stack[6] = memory[0x40:0x60] // @2B33 stack[7] = 0x00 // @2B35 stack[8] = stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff // @2B38 stack[9] = !address(stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // } // Block ends with conditional jump to 0x2b43, if !!address(stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff).code.length label_2B3F: // Incoming jump from 0x2B3E, if not !!address(stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Incoming jump from 0x2B3E, if not !!address(stack[-3] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Inputs[1] { @2B42 memory[0x00:0x00] } 2B3F 60 PUSH1 0x00 2B41 80 DUP1 2B42 FD *REVERT // Stack delta = +0 // Outputs[1] { @2B42 revert(memory[0x00:0x00]); } // Block terminates label_2B43: // Incoming jump from 0x2B3E, if !!address(stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Incoming jump from 0x2B3E, if !!address(stack[-3] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Inputs[9] // { // @2B45 msg.gas // @2B46 stack[-6] // @2B46 stack[-5] // @2B46 memory[stack[-4]:stack[-4] + stack[-5]] // @2B46 address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // @2B46 stack[-2] // @2B46 stack[-7] // @2B46 stack[-4] // @2B46 stack[-3] // } 2B43 5B JUMPDEST 2B44 50 POP 2B45 5A GAS 2B46 F1 CALL 2B47 15 ISZERO 2B48 80 DUP1 2B49 15 ISZERO 2B4A 61 PUSH2 0x2b57 2B4D 57 *JUMPI // Stack delta = -6 // Outputs[2] // { // @2B46 memory[stack[-6]:stack[-6] + stack[-7]] = address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // @2B47 stack[-7] = !address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // } // Block ends with conditional jump to 0x2b57, if !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) label_2B4E: // Incoming jump from 0x2B4D, if not !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // Inputs[4] // { // @2B4E returndata.length // @2B52 returndata[0x00:0x00 + returndata.length] // @2B53 returndata.length // @2B56 memory[0x00:0x00 + returndata.length] // } 2B4E 3D RETURNDATASIZE 2B4F 60 PUSH1 0x00 2B51 80 DUP1 2B52 3E RETURNDATACOPY 2B53 3D RETURNDATASIZE 2B54 60 PUSH1 0x00 2B56 FD *REVERT // Stack delta = +0 // Outputs[2] // { // @2B52 memory[0x00:0x00 + returndata.length] = returndata[0x00:0x00 + returndata.length] // @2B56 revert(memory[0x00:0x00 + returndata.length]); // } // Block terminates label_2B57: // Incoming jump from 0x2B4D, if !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // Inputs[6] // { // @2B5F stack[-18] // @2B60 stack[-17] // @2B61 stack[-16] // @2B62 stack[-15] // @2B63 stack[-14] // @2B64 stack[-13] // } 2B57 5B JUMPDEST 2B58 50 POP 2B59 50 POP 2B5A 50 POP 2B5B 50 POP 2B5C 61 PUSH2 0x2b69 2B5F 8E DUP15 2B60 8E DUP15 2B61 8E DUP15 2B62 8E DUP15 2B63 8E DUP15 2B64 8E DUP15 2B65 61 PUSH2 0x059f 2B68 56 *JUMP // Stack delta = +3 // Outputs[7] // { // @2B5C stack[-4] = 0x2b69 // @2B5F stack[-3] = stack[-18] // @2B60 stack[-2] = stack[-17] // @2B61 stack[-1] = stack[-16] // @2B62 stack[0] = stack[-15] // @2B63 stack[1] = stack[-14] // @2B64 stack[2] = stack[-13] // } // Block ends with unconditional jump to 0x059f 2B69 5B JUMPDEST 2B6A 90 SWAP1 2B6B 9F SWAP16 2B6C 90 SWAP1 2B6D 9E SWAP15 2B6E 50 POP 2B6F 9C SWAP13 2B70 50 POP 2B71 50 POP 2B72 50 POP 2B73 50 POP 2B74 50 POP 2B75 50 POP 2B76 50 POP 2B77 50 POP 2B78 50 POP 2B79 50 POP 2B7A 50 POP 2B7B 50 POP 2B7C 50 POP 2B7D 56 *JUMP label_2B7E: // Incoming jump from 0x055D // Inputs[2] // { // @2B84 stack[-1] // @2B85 block.timestamp // } 2B7E 5B JUMPDEST 2B7F 60 PUSH1 0x00 2B81 80 DUP1 2B82 60 PUSH1 0x00 2B84 83 DUP4 2B85 42 TIMESTAMP 2B86 81 DUP2 2B87 10 LT 2B88 15 ISZERO 2B89 61 PUSH2 0x2bee 2B8C 57 *JUMPI // Stack delta = +4 // Outputs[4] // { // @2B7F stack[0] = 0x00 // @2B81 stack[1] = 0x00 // @2B82 stack[2] = 0x00 // @2B84 stack[3] = stack[-1] // } // Block ends with conditional jump to 0x2bee, if !(stack[-1] < block.timestamp) label_2B8D: // Incoming jump from 0x2B8C, if not !(stack[-1] < block.timestamp) // Inputs[1] { @2B8F memory[0x40:0x60] } 2B8D 60 PUSH1 0x40 2B8F 51 MLOAD 2B90 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 2BB1 81 DUP2 2BB2 52 MSTORE 2BB3 60 PUSH1 0x20 2BB5 60 PUSH1 0x04 2BB7 82 DUP3 2BB8 01 ADD 2BB9 52 MSTORE 2BBA 60 PUSH1 0x19 2BBC 60 PUSH1 0x24 2BBE 82 DUP3 2BBF 01 ADD 2BC0 52 MSTORE 2BC1 7F PUSH32 0x46726178737761705631526f757465723a204558504952454400000000000000 2BE2 60 PUSH1 0x44 2BE4 82 DUP3 2BE5 01 ADD 2BE6 52 MSTORE 2BE7 60 PUSH1 0x64 2BE9 01 ADD 2BEA 61 PUSH2 0x0609 2BED 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @2BB2 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @2BB9 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @2BC0 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x19 // @2BE6 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000 // @2BE9 stack[0] = 0x64 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_2BEE: // Incoming jump from 0x2B8C, if !(stack[-1] < block.timestamp) // Inputs[6] // { // @2BF2 stack[-12] // @2BF3 stack[-11] // @2BF4 stack[-10] // @2BF5 stack[-9] // @2BF6 stack[-8] // @2BF7 stack[-7] // } 2BEE 5B JUMPDEST 2BEF 61 PUSH2 0x2bfc 2BF2 8C DUP13 2BF3 8C DUP13 2BF4 8C DUP13 2BF5 8C DUP13 2BF6 8C DUP13 2BF7 8C DUP13 2BF8 61 PUSH2 0x4e69 2BFB 56 *JUMP // Stack delta = +7 // Outputs[7] // { // @2BEF stack[0] = 0x2bfc // @2BF2 stack[1] = stack[-12] // @2BF3 stack[2] = stack[-11] // @2BF4 stack[3] = stack[-10] // @2BF5 stack[4] = stack[-9] // @2BF6 stack[5] = stack[-8] // @2BF7 stack[6] = stack[-7] // } // Block ends with unconditional jump to 0x4e69 2BFC 5B JUMPDEST 2BFD 90 SWAP1 2BFE 94 SWAP5 2BFF 50 POP 2C00 92 SWAP3 2C01 50 POP 2C02 60 PUSH1 0x00 2C04 61 PUSH2 0x2c2e 2C07 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 2C28 8E DUP15 2C29 8E DUP15 2C2A 61 PUSH2 0x3a15 2C2D 56 *JUMP 2C2E 5B JUMPDEST 2C2F 90 SWAP1 2C30 50 POP 2C31 61 PUSH2 0x2c3c 2C34 8D DUP14 2C35 33 CALLER 2C36 83 DUP4 2C37 88 DUP9 2C38 61 PUSH2 0x3b4a 2C3B 56 *JUMP 2C3C 5B JUMPDEST 2C3D 61 PUSH2 0x2c48 2C40 8C DUP13 2C41 33 CALLER 2C42 83 DUP4 2C43 87 DUP8 2C44 61 PUSH2 0x3b4a 2C47 56 *JUMP 2C48 5B JUMPDEST 2C49 60 PUSH1 0x40 2C4B 51 MLOAD 2C4C 7F PUSH32 0x6a62784200000000000000000000000000000000000000000000000000000000 2C6D 81 DUP2 2C6E 52 MSTORE 2C6F 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2C84 88 DUP9 2C85 81 DUP2 2C86 16 AND 2C87 60 PUSH1 0x04 2C89 83 DUP4 2C8A 01 ADD 2C8B 52 MSTORE 2C8C 82 DUP3 2C8D 16 AND 2C8E 90 SWAP1 2C8F 63 PUSH4 0x6a627842 2C94 90 SWAP1 2C95 60 PUSH1 0x24 2C97 01 ADD 2C98 60 PUSH1 0x20 2C9A 60 PUSH1 0x40 2C9C 51 MLOAD 2C9D 80 DUP1 2C9E 83 DUP4 2C9F 03 SUB 2CA0 81 DUP2 2CA1 60 PUSH1 0x00 2CA3 87 DUP8 2CA4 5A GAS 2CA5 F1 CALL 2CA6 15 ISZERO 2CA7 80 DUP1 2CA8 15 ISZERO 2CA9 61 PUSH2 0x2cb6 2CAC 57 *JUMPI 2CAD 3D RETURNDATASIZE 2CAE 60 PUSH1 0x00 2CB0 80 DUP1 2CB1 3E RETURNDATACOPY 2CB2 3D RETURNDATASIZE 2CB3 60 PUSH1 0x00 2CB5 FD *REVERT 2CB6 5B JUMPDEST 2CB7 50 POP 2CB8 50 POP 2CB9 50 POP 2CBA 50 POP 2CBB 60 PUSH1 0x40 2CBD 51 MLOAD 2CBE 3D RETURNDATASIZE 2CBF 60 PUSH1 0x1f 2CC1 19 NOT 2CC2 60 PUSH1 0x1f 2CC4 82 DUP3 2CC5 01 ADD 2CC6 16 AND 2CC7 82 DUP3 2CC8 01 ADD 2CC9 80 DUP1 2CCA 60 PUSH1 0x40 2CCC 52 MSTORE 2CCD 50 POP 2CCE 81 DUP2 2CCF 01 ADD 2CD0 90 SWAP1 2CD1 61 PUSH2 0x2cda 2CD4 91 SWAP2 2CD5 90 SWAP1 2CD6 61 PUSH2 0x59d9 2CD9 56 *JUMP 2CDA 5B JUMPDEST 2CDB 92 SWAP3 2CDC 50 POP 2CDD 50 POP 2CDE 50 POP 2CDF 98 SWAP9 2CE0 50 POP 2CE1 98 SWAP9 2CE2 50 POP 2CE3 98 SWAP9 2CE4 95 SWAP6 2CE5 50 POP 2CE6 50 POP 2CE7 50 POP 2CE8 50 POP 2CE9 50 POP 2CEA 50 POP 2CEB 56 *JUMP label_2CEC: // Incoming jump from 0x058B // Inputs[2] // { // @2CF2 stack[-1] // @2CF3 block.timestamp // } 2CEC 5B JUMPDEST 2CED 60 PUSH1 0x00 2CEF 80 DUP1 2CF0 60 PUSH1 0x00 2CF2 83 DUP4 2CF3 42 TIMESTAMP 2CF4 81 DUP2 2CF5 10 LT 2CF6 15 ISZERO 2CF7 61 PUSH2 0x2d5c 2CFA 57 *JUMPI // Stack delta = +4 // Outputs[4] // { // @2CED stack[0] = 0x00 // @2CEF stack[1] = 0x00 // @2CF0 stack[2] = 0x00 // @2CF2 stack[3] = stack[-1] // } // Block ends with conditional jump to 0x2d5c, if !(stack[-1] < block.timestamp) label_2CFB: // Incoming jump from 0x2CFA, if not !(stack[-1] < block.timestamp) // Inputs[1] { @2CFD memory[0x40:0x60] } 2CFB 60 PUSH1 0x40 2CFD 51 MLOAD 2CFE 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 2D1F 81 DUP2 2D20 52 MSTORE 2D21 60 PUSH1 0x20 2D23 60 PUSH1 0x04 2D25 82 DUP3 2D26 01 ADD 2D27 52 MSTORE 2D28 60 PUSH1 0x19 2D2A 60 PUSH1 0x24 2D2C 82 DUP3 2D2D 01 ADD 2D2E 52 MSTORE 2D2F 7F PUSH32 0x46726178737761705631526f757465723a204558504952454400000000000000 2D50 60 PUSH1 0x44 2D52 82 DUP3 2D53 01 ADD 2D54 52 MSTORE 2D55 60 PUSH1 0x64 2D57 01 ADD 2D58 61 PUSH2 0x0609 2D5B 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @2D20 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @2D27 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @2D2E memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x19 // @2D54 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000 // @2D57 stack[0] = 0x64 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_2D5C: // Incoming jump from 0x2CFA, if !(stack[-1] < block.timestamp) // Inputs[5] // { // @2D60 stack[-10] // @2D82 stack[-9] // @2D83 msg.value // @2D84 stack[-8] // @2D85 stack[-7] // } 2D5C 5B JUMPDEST 2D5D 61 PUSH2 0x2d8a 2D60 8A DUP11 2D61 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 2D82 8B DUP12 2D83 34 CALLVALUE 2D84 8C DUP13 2D85 8C DUP13 2D86 61 PUSH2 0x4e69 2D89 56 *JUMP // Stack delta = +7 // Outputs[7] // { // @2D5D stack[0] = 0x2d8a // @2D60 stack[1] = stack[-10] // @2D61 stack[2] = 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 // @2D82 stack[3] = stack[-9] // @2D83 stack[4] = msg.value // @2D84 stack[5] = stack[-8] // @2D85 stack[6] = stack[-7] // } // Block ends with unconditional jump to 0x4e69 2D8A 5B JUMPDEST 2D8B 90 SWAP1 2D8C 94 SWAP5 2D8D 50 POP 2D8E 92 SWAP3 2D8F 50 POP 2D90 60 PUSH1 0x00 2D92 61 PUSH2 0x2ddc 2D95 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 2DB6 8C DUP13 2DB7 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 2DD8 61 PUSH2 0x3a15 2DDB 56 *JUMP 2DDC 5B JUMPDEST 2DDD 90 SWAP1 2DDE 50 POP 2DDF 61 PUSH2 0x2dea 2DE2 8B DUP12 2DE3 33 CALLER 2DE4 83 DUP4 2DE5 88 DUP9 2DE6 61 PUSH2 0x3b4a 2DE9 56 *JUMP 2DEA 5B JUMPDEST 2DEB 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 2E0C 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2E21 16 AND 2E22 63 PUSH4 0xd0e30db0 2E27 85 DUP6 2E28 60 PUSH1 0x40 2E2A 51 MLOAD 2E2B 82 DUP3 2E2C 63 PUSH4 0xffffffff 2E31 16 AND 2E32 60 PUSH1 0xe0 2E34 1B SHL 2E35 81 DUP2 2E36 52 MSTORE 2E37 60 PUSH1 0x04 2E39 01 ADD 2E3A 60 PUSH1 0x00 2E3C 60 PUSH1 0x40 2E3E 51 MLOAD 2E3F 80 DUP1 2E40 83 DUP4 2E41 03 SUB 2E42 81 DUP2 2E43 85 DUP6 2E44 88 DUP9 2E45 80 DUP1 2E46 3B EXTCODESIZE 2E47 15 ISZERO 2E48 80 DUP1 2E49 15 ISZERO 2E4A 61 PUSH2 0x2e52 2E4D 57 *JUMPI 2E4E 60 PUSH1 0x00 2E50 80 DUP1 2E51 FD *REVERT 2E52 5B JUMPDEST 2E53 50 POP 2E54 5A GAS 2E55 F1 CALL 2E56 15 ISZERO 2E57 80 DUP1 2E58 15 ISZERO 2E59 61 PUSH2 0x2e66 2E5C 57 *JUMPI 2E5D 3D RETURNDATASIZE 2E5E 60 PUSH1 0x00 2E60 80 DUP1 2E61 3E RETURNDATACOPY 2E62 3D RETURNDATASIZE 2E63 60 PUSH1 0x00 2E65 FD *REVERT 2E66 5B JUMPDEST 2E67 50 POP 2E68 50 POP 2E69 60 PUSH1 0x40 2E6B 51 MLOAD 2E6C 7F PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000 2E8D 81 DUP2 2E8E 52 MSTORE 2E8F 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2EA4 85 DUP6 2EA5 81 DUP2 2EA6 16 AND 2EA7 60 PUSH1 0x04 2EA9 83 DUP4 2EAA 01 ADD 2EAB 52 MSTORE 2EAC 60 PUSH1 0x24 2EAE 82 DUP3 2EAF 01 ADD 2EB0 89 DUP10 2EB1 90 SWAP1 2EB2 52 MSTORE 2EB3 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 2ED4 16 AND 2ED5 93 SWAP4 2ED6 50 POP 2ED7 63 PUSH4 0xa9059cbb 2EDC 92 SWAP3 2EDD 50 POP 2EDE 60 PUSH1 0x44 2EE0 01 ADD 2EE1 90 SWAP1 2EE2 50 POP 2EE3 60 PUSH1 0x20 2EE5 60 PUSH1 0x40 2EE7 51 MLOAD 2EE8 80 DUP1 2EE9 83 DUP4 2EEA 03 SUB 2EEB 81 DUP2 2EEC 60 PUSH1 0x00 2EEE 87 DUP8 2EEF 5A GAS 2EF0 F1 CALL 2EF1 15 ISZERO 2EF2 80 DUP1 2EF3 15 ISZERO 2EF4 61 PUSH2 0x2f01 2EF7 57 *JUMPI 2EF8 3D RETURNDATASIZE 2EF9 60 PUSH1 0x00 2EFB 80 DUP1 2EFC 3E RETURNDATACOPY 2EFD 3D RETURNDATASIZE 2EFE 60 PUSH1 0x00 2F00 FD *REVERT 2F01 5B JUMPDEST 2F02 50 POP 2F03 50 POP 2F04 50 POP 2F05 50 POP 2F06 60 PUSH1 0x40 2F08 51 MLOAD 2F09 3D RETURNDATASIZE 2F0A 60 PUSH1 0x1f 2F0C 19 NOT 2F0D 60 PUSH1 0x1f 2F0F 82 DUP3 2F10 01 ADD 2F11 16 AND 2F12 82 DUP3 2F13 01 ADD 2F14 80 DUP1 2F15 60 PUSH1 0x40 2F17 52 MSTORE 2F18 50 POP 2F19 81 DUP2 2F1A 01 ADD 2F1B 90 SWAP1 2F1C 61 PUSH2 0x2f25 2F1F 91 SWAP2 2F20 90 SWAP1 2F21 61 PUSH2 0x59f2 2F24 56 *JUMP 2F25 5B JUMPDEST 2F26 61 PUSH2 0x2f31 2F29 57 *JUMPI 2F2A 61 PUSH2 0x2f31 2F2D 61 PUSH2 0x538b 2F30 56 *JUMP 2F31 5B JUMPDEST 2F32 60 PUSH1 0x40 2F34 51 MLOAD 2F35 7F PUSH32 0x6a62784200000000000000000000000000000000000000000000000000000000 2F56 81 DUP2 2F57 52 MSTORE 2F58 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2F6D 88 DUP9 2F6E 81 DUP2 2F6F 16 AND 2F70 60 PUSH1 0x04 2F72 83 DUP4 2F73 01 ADD 2F74 52 MSTORE 2F75 82 DUP3 2F76 16 AND 2F77 90 SWAP1 2F78 63 PUSH4 0x6a627842 2F7D 90 SWAP1 2F7E 60 PUSH1 0x24 2F80 01 ADD 2F81 60 PUSH1 0x20 2F83 60 PUSH1 0x40 2F85 51 MLOAD 2F86 80 DUP1 2F87 83 DUP4 2F88 03 SUB 2F89 81 DUP2 2F8A 60 PUSH1 0x00 2F8C 87 DUP8 2F8D 5A GAS 2F8E F1 CALL 2F8F 15 ISZERO 2F90 80 DUP1 2F91 15 ISZERO 2F92 61 PUSH2 0x2f9f 2F95 57 *JUMPI 2F96 3D RETURNDATASIZE 2F97 60 PUSH1 0x00 2F99 80 DUP1 2F9A 3E RETURNDATACOPY 2F9B 3D RETURNDATASIZE 2F9C 60 PUSH1 0x00 2F9E FD *REVERT 2F9F 5B JUMPDEST 2FA0 50 POP 2FA1 50 POP 2FA2 50 POP 2FA3 50 POP 2FA4 60 PUSH1 0x40 2FA6 51 MLOAD 2FA7 3D RETURNDATASIZE 2FA8 60 PUSH1 0x1f 2FAA 19 NOT 2FAB 60 PUSH1 0x1f 2FAD 82 DUP3 2FAE 01 ADD 2FAF 16 AND 2FB0 82 DUP3 2FB1 01 ADD 2FB2 80 DUP1 2FB3 60 PUSH1 0x40 2FB5 52 MSTORE 2FB6 50 POP 2FB7 81 DUP2 2FB8 01 ADD 2FB9 90 SWAP1 2FBA 61 PUSH2 0x2fc3 2FBD 91 SWAP2 2FBE 90 SWAP1 2FBF 61 PUSH2 0x59d9 2FC2 56 *JUMP 2FC3 5B JUMPDEST 2FC4 92 SWAP3 2FC5 50 POP 2FC6 83 DUP4 2FC7 34 CALLVALUE 2FC8 11 GT 2FC9 15 ISZERO 2FCA 61 PUSH2 0x2fe0 2FCD 57 *JUMPI 2FCE 61 PUSH2 0x2fe0 2FD1 33 CALLER 2FD2 61 PUSH2 0x2fdb 2FD5 86 DUP7 2FD6 34 CALLVALUE 2FD7 61 PUSH2 0x5976 2FDA 56 *JUMP 2FDB 5B JUMPDEST 2FDC 61 PUSH2 0x3618 2FDF 56 *JUMP 2FE0 5B JUMPDEST 2FE1 50 POP 2FE2 50 POP 2FE3 96 SWAP7 2FE4 50 POP 2FE5 96 SWAP7 2FE6 50 POP 2FE7 96 SWAP7 2FE8 93 SWAP4 2FE9 50 POP 2FEA 50 POP 2FEB 50 POP 2FEC 50 POP 2FED 56 *JUMP label_2FEE: // Incoming jump from 0x059E // Inputs[2] // { // @2FF1 stack[-1] // @2FF2 block.timestamp // } 2FEE 5B JUMPDEST 2FEF 60 PUSH1 0x60 2FF1 81 DUP2 2FF2 42 TIMESTAMP 2FF3 81 DUP2 2FF4 10 LT 2FF5 15 ISZERO 2FF6 61 PUSH2 0x305b 2FF9 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @2FEF stack[0] = 0x60 // @2FF1 stack[1] = stack[-1] // } // Block ends with conditional jump to 0x305b, if !(stack[-1] < block.timestamp) label_2FFA: // Incoming jump from 0x2FF9, if not !(stack[-1] < block.timestamp) // Inputs[1] { @2FFC memory[0x40:0x60] } 2FFA 60 PUSH1 0x40 2FFC 51 MLOAD 2FFD 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 301E 81 DUP2 301F 52 MSTORE 3020 60 PUSH1 0x20 3022 60 PUSH1 0x04 3024 82 DUP3 3025 01 ADD 3026 52 MSTORE 3027 60 PUSH1 0x19 3029 60 PUSH1 0x24 302B 82 DUP3 302C 01 ADD 302D 52 MSTORE 302E 7F PUSH32 0x46726178737761705631526f757465723a204558504952454400000000000000 304F 60 PUSH1 0x44 3051 82 DUP3 3052 01 ADD 3053 52 MSTORE 3054 60 PUSH1 0x64 3056 01 ADD 3057 61 PUSH2 0x0609 305A 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @301F memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @3026 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @302D memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x19 // @3053 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x46726178737761705631526f757465723a204558504952454400000000000000 // @3056 stack[0] = 0x64 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_305B: // Incoming jump from 0x2FF9, if !(stack[-1] < block.timestamp) // Inputs[2] // { // @3093 stack[-6] // @3094 stack[-5] // } 305B 5B JUMPDEST 305C 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 307D 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 3092 16 AND 3093 86 DUP7 3094 86 DUP7 3095 60 PUSH1 0x00 3097 81 DUP2 3098 81 DUP2 3099 10 LT 309A 61 PUSH2 0x30a5 309D 57 *JUMPI // Stack delta = +4 // Outputs[4] // { // @3092 stack[0] = 0xffffffffffffffffffffffffffffffffffffffff & 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 // @3093 stack[1] = stack[-6] // @3094 stack[2] = stack[-5] // @3095 stack[3] = 0x00 // } // Block ends with conditional jump to 0x30a5, if 0x00 < stack[-5] label_309E: // Incoming jump from 0x309D, if not 0x00 < stack[-5] 309E 61 PUSH2 0x30a5 30A1 61 PUSH2 0x598d 30A4 56 *JUMP // Stack delta = +1 // Outputs[1] { @309E stack[0] = 0x30a5 } // Block ends with unconditional jump to 0x598d label_30A5: // Incoming jump from 0x309D, if 0x00 < stack[-5] // Inputs[3] // { // @30A6 stack[-1] // @30A6 stack[-2] // @30AB stack[-3] // } 30A5 5B JUMPDEST 30A6 90 SWAP1 30A7 50 POP 30A8 60 PUSH1 0x20 30AA 02 MUL 30AB 01 ADD 30AC 60 PUSH1 0x20 30AE 81 DUP2 30AF 01 ADD 30B0 90 SWAP1 30B1 61 PUSH2 0x30ba 30B4 91 SWAP2 30B5 90 SWAP1 30B6 61 PUSH2 0x59bc 30B9 56 *JUMP // Stack delta = +0 // Outputs[3] // { // @30B4 stack[-3] = 0x30ba // @30B5 stack[-1] = 0x20 * stack[-1] + stack[-3] // @30B5 stack[-2] = 0x20 * stack[-1] + stack[-3] + 0x20 // } // Block ends with unconditional jump to 0x59bc 30BA 5B JUMPDEST 30BB 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 30D0 16 AND 30D1 14 EQ 30D2 61 PUSH2 0x3137 30D5 57 *JUMPI 30D6 60 PUSH1 0x40 30D8 51 MLOAD 30D9 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 30FA 81 DUP2 30FB 52 MSTORE 30FC 60 PUSH1 0x20 30FE 60 PUSH1 0x04 3100 82 DUP3 3101 01 ADD 3102 52 MSTORE 3103 60 PUSH1 0x1e 3105 60 PUSH1 0x24 3107 82 DUP3 3108 01 ADD 3109 52 MSTORE 310A 7F PUSH32 0x46726178737761705631526f757465723a20494e56414c49445f504154480000 312B 60 PUSH1 0x44 312D 82 DUP3 312E 01 ADD 312F 52 MSTORE 3130 60 PUSH1 0x64 3132 01 ADD 3133 61 PUSH2 0x0609 3136 56 *JUMP 3137 5B JUMPDEST 3138 61 PUSH2 0x3195 313B 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 315C 88 DUP9 315D 88 DUP9 315E 88 DUP9 315F 80 DUP1 3160 80 DUP1 3161 60 PUSH1 0x20 3163 02 MUL 3164 60 PUSH1 0x20 3166 01 ADD 3167 60 PUSH1 0x40 3169 51 MLOAD 316A 90 SWAP1 316B 81 DUP2 316C 01 ADD 316D 60 PUSH1 0x40 316F 52 MSTORE 3170 80 DUP1 3171 93 SWAP4 3172 92 SWAP3 3173 91 SWAP2 3174 90 SWAP1 3175 81 DUP2 3176 81 DUP2 3177 52 MSTORE 3178 60 PUSH1 0x20 317A 01 ADD 317B 83 DUP4 317C 83 DUP4 317D 60 PUSH1 0x20 317F 02 MUL 3180 80 DUP1 3181 82 DUP3 3182 84 DUP5 3183 37 CALLDATACOPY 3184 60 PUSH1 0x00 3186 92 SWAP3 3187 01 ADD 3188 91 SWAP2 3189 90 SWAP1 318A 91 SWAP2 318B 52 MSTORE 318C 50 POP 318D 61 PUSH2 0x4240 3190 92 SWAP3 3191 50 POP 3192 50 POP 3193 50 POP 3194 56 *JUMP 3195 5B JUMPDEST 3196 91 SWAP2 3197 50 POP 3198 34 CALLVALUE 3199 82 DUP3 319A 60 PUSH1 0x00 319C 81 DUP2 319D 51 MLOAD 319E 81 DUP2 319F 10 LT 31A0 61 PUSH2 0x31ab 31A3 57 *JUMPI 31A4 61 PUSH2 0x31ab 31A7 61 PUSH2 0x598d 31AA 56 *JUMP 31AB 5B JUMPDEST 31AC 60 PUSH1 0x20 31AE 02 MUL 31AF 60 PUSH1 0x20 31B1 01 ADD 31B2 01 ADD 31B3 51 MLOAD 31B4 11 GT 31B5 15 ISZERO 31B6 61 PUSH2 0x3241 31B9 57 *JUMPI 31BA 60 PUSH1 0x40 31BC 51 MLOAD 31BD 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 31DE 81 DUP2 31DF 52 MSTORE 31E0 60 PUSH1 0x20 31E2 60 PUSH1 0x04 31E4 82 DUP3 31E5 01 ADD 31E6 52 MSTORE 31E7 60 PUSH1 0x28 31E9 60 PUSH1 0x24 31EB 82 DUP3 31EC 01 ADD 31ED 52 MSTORE 31EE 7F PUSH32 0x46726178737761705631526f757465723a204558434553534956455f494e5055 320F 60 PUSH1 0x44 3211 82 DUP3 3212 01 ADD 3213 52 MSTORE 3214 7F PUSH32 0x545f414d4f554e54000000000000000000000000000000000000000000000000 3235 60 PUSH1 0x64 3237 82 DUP3 3238 01 ADD 3239 52 MSTORE 323A 60 PUSH1 0x84 323C 01 ADD 323D 61 PUSH2 0x0609 3240 56 *JUMP 3241 5B JUMPDEST 3242 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 3263 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 3278 16 AND 3279 63 PUSH4 0xd0e30db0 327E 83 DUP4 327F 60 PUSH1 0x00 3281 81 DUP2 3282 51 MLOAD 3283 81 DUP2 3284 10 LT 3285 61 PUSH2 0x3290 3288 57 *JUMPI 3289 61 PUSH2 0x3290 328C 61 PUSH2 0x598d 328F 56 *JUMP 3290 5B JUMPDEST 3291 60 PUSH1 0x20 3293 02 MUL 3294 60 PUSH1 0x20 3296 01 ADD 3297 01 ADD 3298 51 MLOAD 3299 60 PUSH1 0x40 329B 51 MLOAD 329C 82 DUP3 329D 63 PUSH4 0xffffffff 32A2 16 AND 32A3 60 PUSH1 0xe0 32A5 1B SHL 32A6 81 DUP2 32A7 52 MSTORE 32A8 60 PUSH1 0x04 32AA 01 ADD 32AB 60 PUSH1 0x00 32AD 60 PUSH1 0x40 32AF 51 MLOAD 32B0 80 DUP1 32B1 83 DUP4 32B2 03 SUB 32B3 81 DUP2 32B4 85 DUP6 32B5 88 DUP9 32B6 80 DUP1 32B7 3B EXTCODESIZE 32B8 15 ISZERO 32B9 80 DUP1 32BA 15 ISZERO 32BB 61 PUSH2 0x32c3 32BE 57 *JUMPI 32BF 60 PUSH1 0x00 32C1 80 DUP1 32C2 FD *REVERT 32C3 5B JUMPDEST 32C4 50 POP 32C5 5A GAS 32C6 F1 CALL 32C7 15 ISZERO 32C8 80 DUP1 32C9 15 ISZERO 32CA 61 PUSH2 0x32d7 32CD 57 *JUMPI 32CE 3D RETURNDATASIZE 32CF 60 PUSH1 0x00 32D1 80 DUP1 32D2 3E RETURNDATACOPY 32D3 3D RETURNDATASIZE 32D4 60 PUSH1 0x00 32D6 FD *REVERT 32D7 5B JUMPDEST 32D8 50 POP 32D9 50 POP 32DA 50 POP 32DB 50 POP 32DC 50 POP 32DD 7F PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 32FE 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 3313 16 AND 3314 63 PUSH4 0xa9059cbb 3319 61 PUSH2 0x334f 331C 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 333D 89 DUP10 333E 89 DUP10 333F 60 PUSH1 0x00 3341 81 DUP2 3342 81 DUP2 3343 10 LT 3344 61 PUSH2 0x137e 3347 57 *JUMPI 3348 61 PUSH2 0x137e 334B 61 PUSH2 0x598d 334E 56 *JUMP 334F 5B JUMPDEST 3350 84 DUP5 3351 60 PUSH1 0x00 3353 81 DUP2 3354 51 MLOAD 3355 81 DUP2 3356 10 LT 3357 61 PUSH2 0x3362 335A 57 *JUMPI 335B 61 PUSH2 0x3362 335E 61 PUSH2 0x598d 3361 56 *JUMP 3362 5B JUMPDEST 3363 60 PUSH1 0x20 3365 02 MUL 3366 60 PUSH1 0x20 3368 01 ADD 3369 01 ADD 336A 51 MLOAD 336B 60 PUSH1 0x40 336D 51 MLOAD 336E 83 DUP4 336F 63 PUSH4 0xffffffff 3374 16 AND 3375 60 PUSH1 0xe0 3377 1B SHL 3378 81 DUP2 3379 52 MSTORE 337A 60 PUSH1 0x04 337C 01 ADD 337D 61 PUSH2 0x33a8 3380 92 SWAP3 3381 91 SWAP2 3382 90 SWAP1 3383 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 3398 92 SWAP3 3399 90 SWAP1 339A 92 SWAP3 339B 16 AND 339C 82 DUP3 339D 52 MSTORE 339E 60 PUSH1 0x20 33A0 82 DUP3 33A1 01 ADD 33A2 52 MSTORE 33A3 60 PUSH1 0x40 33A5 01 ADD 33A6 90 SWAP1 33A7 56 *JUMP 33A8 5B JUMPDEST 33A9 60 PUSH1 0x20 33AB 60 PUSH1 0x40 33AD 51 MLOAD 33AE 80 DUP1 33AF 83 DUP4 33B0 03 SUB 33B1 81 DUP2 33B2 60 PUSH1 0x00 33B4 87 DUP8 33B5 5A GAS 33B6 F1 CALL 33B7 15 ISZERO 33B8 80 DUP1 33B9 15 ISZERO 33BA 61 PUSH2 0x33c7 33BD 57 *JUMPI 33BE 3D RETURNDATASIZE 33BF 60 PUSH1 0x00 33C1 80 DUP1 33C2 3E RETURNDATACOPY 33C3 3D RETURNDATASIZE 33C4 60 PUSH1 0x00 33C6 FD *REVERT 33C7 5B JUMPDEST 33C8 50 POP 33C9 50 POP 33CA 50 POP 33CB 50 POP 33CC 60 PUSH1 0x40 33CE 51 MLOAD 33CF 3D RETURNDATASIZE 33D0 60 PUSH1 0x1f 33D2 19 NOT 33D3 60 PUSH1 0x1f 33D5 82 DUP3 33D6 01 ADD 33D7 16 AND 33D8 82 DUP3 33D9 01 ADD 33DA 80 DUP1 33DB 60 PUSH1 0x40 33DD 52 MSTORE 33DE 50 POP 33DF 81 DUP2 33E0 01 ADD 33E1 90 SWAP1 33E2 61 PUSH2 0x33eb 33E5 91 SWAP2 33E6 90 SWAP1 33E7 61 PUSH2 0x59f2 33EA 56 *JUMP 33EB 5B JUMPDEST 33EC 61 PUSH2 0x33f7 33EF 57 *JUMPI 33F0 61 PUSH2 0x33f7 33F3 61 PUSH2 0x538b 33F6 56 *JUMP 33F7 5B JUMPDEST 33F8 61 PUSH2 0x3436 33FB 82 DUP3 33FC 87 DUP8 33FD 87 DUP8 33FE 80 DUP1 33FF 80 DUP1 3400 60 PUSH1 0x20 3402 02 MUL 3403 60 PUSH1 0x20 3405 01 ADD 3406 60 PUSH1 0x40 3408 51 MLOAD 3409 90 SWAP1 340A 81 DUP2 340B 01 ADD 340C 60 PUSH1 0x40 340E 52 MSTORE 340F 80 DUP1 3410 93 SWAP4 3411 92 SWAP3 3412 91 SWAP2 3413 90 SWAP1 3414 81 DUP2 3415 81 DUP2 3416 52 MSTORE 3417 60 PUSH1 0x20 3419 01 ADD 341A 83 DUP4 341B 83 DUP4 341C 60 PUSH1 0x20 341E 02 MUL 341F 80 DUP1 3420 82 DUP3 3421 84 DUP5 3422 37 CALLDATACOPY 3423 60 PUSH1 0x00 3425 92 SWAP3 3426 01 ADD 3427 91 SWAP2 3428 90 SWAP1 3429 91 SWAP2 342A 52 MSTORE 342B 50 POP 342C 89 DUP10 342D 92 SWAP3 342E 50 POP 342F 61 PUSH2 0x3ce9 3432 91 SWAP2 3433 50 POP 3434 50 POP 3435 56 *JUMP 3436 5B JUMPDEST 3437 81 DUP2 3438 60 PUSH1 0x00 343A 81 DUP2 343B 51 MLOAD 343C 81 DUP2 343D 10 LT 343E 61 PUSH2 0x3449 3441 57 *JUMPI 3442 61 PUSH2 0x3449 3445 61 PUSH2 0x598d 3448 56 *JUMP 3449 5B JUMPDEST 344A 60 PUSH1 0x20 344C 02 MUL 344D 60 PUSH1 0x20 344F 01 ADD 3450 01 ADD 3451 51 MLOAD 3452 34 CALLVALUE 3453 11 GT 3454 15 ISZERO 3455 61 PUSH2 0x1e2b 3458 57 *JUMPI 3459 61 PUSH2 0x1e2b 345C 33 CALLER 345D 83 DUP4 345E 60 PUSH1 0x00 3460 81 DUP2 3461 51 MLOAD 3462 81 DUP2 3463 10 LT 3464 61 PUSH2 0x346f 3467 57 *JUMPI 3468 61 PUSH2 0x346f 346B 61 PUSH2 0x598d 346E 56 *JUMP 346F 5B JUMPDEST 3470 60 PUSH1 0x20 3472 02 MUL 3473 60 PUSH1 0x20 3475 01 ADD 3476 01 ADD 3477 51 MLOAD 3478 34 CALLVALUE 3479 61 PUSH2 0x2fdb 347C 91 SWAP2 347D 90 SWAP1 347E 61 PUSH2 0x5976 3481 56 *JUMP 3482 5B JUMPDEST 3483 60 PUSH1 0x40 3485 80 DUP1 3486 51 MLOAD 3487 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 349C 84 DUP5 349D 81 DUP2 349E 16 AND 349F 60 PUSH1 0x24 34A1 83 DUP4 34A2 01 ADD 34A3 52 MSTORE 34A4 60 PUSH1 0x44 34A6 80 DUP1 34A7 83 DUP4 34A8 01 ADD 34A9 85 DUP6 34AA 90 SWAP1 34AB 52 MSTORE 34AC 83 DUP4 34AD 51 MLOAD 34AE 80 DUP1 34AF 84 DUP5 34B0 03 SUB 34B1 90 SWAP1 34B2 91 SWAP2 34B3 01 ADD 34B4 81 DUP2 34B5 52 MSTORE 34B6 60 PUSH1 0x64 34B8 90 SWAP1 34B9 92 SWAP3 34BA 01 ADD 34BB 83 DUP4 34BC 52 MSTORE 34BD 60 PUSH1 0x20 34BF 82 DUP3 34C0 01 ADD 34C1 80 DUP1 34C2 51 MLOAD 34C3 7B PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 34E0 16 AND 34E1 7F PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000 3502 17 OR 3503 90 SWAP1 3504 52 MSTORE 3505 91 SWAP2 3506 51 MLOAD 3507 60 PUSH1 0x00 3509 92 SWAP3 350A 83 DUP4 350B 92 SWAP3 350C 90 SWAP1 350D 87 DUP8 350E 16 AND 350F 91 SWAP2 3510 61 PUSH2 0x3519 3513 91 SWAP2 3514 90 SWAP1 3515 61 PUSH2 0x5a5f 3518 56 *JUMP 3519 5B JUMPDEST 351A 60 PUSH1 0x00 351C 60 PUSH1 0x40 351E 51 MLOAD 351F 80 DUP1 3520 83 DUP4 3521 03 SUB 3522 81 DUP2 3523 60 PUSH1 0x00 3525 86 DUP7 3526 5A GAS 3527 F1 CALL 3528 91 SWAP2 3529 50 POP 352A 50 POP 352B 3D RETURNDATASIZE 352C 80 DUP1 352D 60 PUSH1 0x00 352F 81 DUP2 3530 14 EQ 3531 61 PUSH2 0x3556 3534 57 *JUMPI 3535 60 PUSH1 0x40 3537 51 MLOAD 3538 91 SWAP2 3539 50 POP 353A 60 PUSH1 0x1f 353C 19 NOT 353D 60 PUSH1 0x3f 353F 3D RETURNDATASIZE 3540 01 ADD 3541 16 AND 3542 82 DUP3 3543 01 ADD 3544 60 PUSH1 0x40 3546 52 MSTORE 3547 3D RETURNDATASIZE 3548 82 DUP3 3549 52 MSTORE 354A 3D RETURNDATASIZE 354B 60 PUSH1 0x00 354D 60 PUSH1 0x20 354F 84 DUP5 3550 01 ADD 3551 3E RETURNDATACOPY 3552 61 PUSH2 0x355b 3555 56 *JUMP 3556 5B JUMPDEST 3557 60 PUSH1 0x60 3559 91 SWAP2 355A 50 POP 355B 5B JUMPDEST 355C 50 POP 355D 91 SWAP2 355E 50 POP 355F 91 SWAP2 3560 50 POP 3561 81 DUP2 3562 80 DUP1 3563 15 ISZERO 3564 61 PUSH2 0x3585 3567 57 *JUMPI 3568 50 POP 3569 80 DUP1 356A 51 MLOAD 356B 15 ISZERO 356C 80 DUP1 356D 61 PUSH2 0x3585 3570 57 *JUMPI 3571 50 POP 3572 80 DUP1 3573 80 DUP1 3574 60 PUSH1 0x20 3576 01 ADD 3577 90 SWAP1 3578 51 MLOAD 3579 81 DUP2 357A 01 ADD 357B 90 SWAP1 357C 61 PUSH2 0x3585 357F 91 SWAP2 3580 90 SWAP1 3581 61 PUSH2 0x59f2 3584 56 *JUMP 3585 5B JUMPDEST 3586 61 PUSH2 0x3611 3589 57 *JUMPI 358A 60 PUSH1 0x40 358C 51 MLOAD 358D 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 35AE 81 DUP2 35AF 52 MSTORE 35B0 60 PUSH1 0x20 35B2 60 PUSH1 0x04 35B4 82 DUP3 35B5 01 ADD 35B6 52 MSTORE 35B7 60 PUSH1 0x2d 35B9 60 PUSH1 0x24 35BB 82 DUP3 35BC 01 ADD 35BD 52 MSTORE 35BE 7F PUSH32 0x5472616e7366657248656c7065723a3a736166655472616e736665723a207472 35DF 60 PUSH1 0x44 35E1 82 DUP3 35E2 01 ADD 35E3 52 MSTORE 35E4 7F PUSH32 0x616e73666572206661696c656400000000000000000000000000000000000000 3605 60 PUSH1 0x64 3607 82 DUP3 3608 01 ADD 3609 52 MSTORE 360A 60 PUSH1 0x84 360C 01 ADD 360D 61 PUSH2 0x0609 3610 56 *JUMP 3611 5B JUMPDEST 3612 50 POP 3613 50 POP 3614 50 POP 3615 50 POP 3616 50 POP 3617 56 *JUMP 3618 5B JUMPDEST 3619 60 PUSH1 0x40 361B 80 DUP1 361C 51 MLOAD 361D 60 PUSH1 0x00 361F 80 DUP1 3620 82 DUP3 3621 52 MSTORE 3622 60 PUSH1 0x20 3624 82 DUP3 3625 01 ADD 3626 90 SWAP1 3627 92 SWAP3 3628 52 MSTORE 3629 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 363E 84 DUP5 363F 16 AND 3640 90 SWAP1 3641 83 DUP4 3642 90 SWAP1 3643 60 PUSH1 0x40 3645 51 MLOAD 3646 61 PUSH2 0x364f 3649 91 SWAP2 364A 90 SWAP1 364B 61 PUSH2 0x5a5f 364E 56 *JUMP 364F 5B JUMPDEST 3650 60 PUSH1 0x00 3652 60 PUSH1 0x40 3654 51 MLOAD 3655 80 DUP1 3656 83 DUP4 3657 03 SUB 3658 81 DUP2 3659 85 DUP6 365A 87 DUP8 365B 5A GAS 365C F1 CALL 365D 92 SWAP3 365E 50 POP 365F 50 POP 3660 50 POP 3661 3D RETURNDATASIZE 3662 80 DUP1 3663 60 PUSH1 0x00 3665 81 DUP2 3666 14 EQ 3667 61 PUSH2 0x368c 366A 57 *JUMPI 366B 60 PUSH1 0x40 366D 51 MLOAD 366E 91 SWAP2 366F 50 POP 3670 60 PUSH1 0x1f 3672 19 NOT 3673 60 PUSH1 0x3f 3675 3D RETURNDATASIZE 3676 01 ADD 3677 16 AND 3678 82 DUP3 3679 01 ADD 367A 60 PUSH1 0x40 367C 52 MSTORE 367D 3D RETURNDATASIZE 367E 82 DUP3 367F 52 MSTORE 3680 3D RETURNDATASIZE 3681 60 PUSH1 0x00 3683 60 PUSH1 0x20 3685 84 DUP5 3686 01 ADD 3687 3E RETURNDATACOPY 3688 61 PUSH2 0x3691 368B 56 *JUMP 368C 5B JUMPDEST 368D 60 PUSH1 0x60 368F 91 SWAP2 3690 50 POP 3691 5B JUMPDEST 3692 50 POP 3693 50 POP 3694 90 SWAP1 3695 50 POP 3696 80 DUP1 3697 61 PUSH2 0x3722 369A 57 *JUMPI 369B 60 PUSH1 0x40 369D 51 MLOAD 369E 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 36BF 81 DUP2 36C0 52 MSTORE 36C1 60 PUSH1 0x20 36C3 60 PUSH1 0x04 36C5 82 DUP3 36C6 01 ADD 36C7 52 MSTORE 36C8 60 PUSH1 0x34 36CA 60 PUSH1 0x24 36CC 82 DUP3 36CD 01 ADD 36CE 52 MSTORE 36CF 7F PUSH32 0x5472616e7366657248656c7065723a3a736166655472616e736665724554483a 36F0 60 PUSH1 0x44 36F2 82 DUP3 36F3 01 ADD 36F4 52 MSTORE 36F5 7F PUSH32 0x20455448207472616e73666572206661696c6564000000000000000000000000 3716 60 PUSH1 0x64 3718 82 DUP3 3719 01 ADD 371A 52 MSTORE 371B 60 PUSH1 0x84 371D 01 ADD 371E 61 PUSH2 0x0609 3721 56 *JUMP 3722 5B JUMPDEST 3723 50 POP 3724 50 POP 3725 50 POP 3726 56 *JUMP label_3727: // Incoming call from 0x0DFB, returns to 0x0DFC // Incoming call from 0x1645, returns to 0x0BF3 // Inputs[2] // { // @372C stack[-1] // @372D memory[stack[-1]:stack[-1] + 0x20] // } 3727 5B JUMPDEST 3728 60 PUSH1 0x60 372A 60 PUSH1 0x02 372C 82 DUP3 372D 51 MLOAD 372E 10 LT 372F 15 ISZERO 3730 61 PUSH2 0x37bb 3733 57 *JUMPI // Stack delta = +1 // Outputs[1] { @3728 stack[0] = 0x60 } // Block ends with conditional jump to 0x37bb, if !(memory[stack[-1]:stack[-1] + 0x20] < 0x02) label_3734: // Incoming jump from 0x3733, if not !(memory[stack[-1]:stack[-1] + 0x20] < 0x02) // Inputs[1] { @3736 memory[0x40:0x60] } 3734 60 PUSH1 0x40 3736 51 MLOAD 3737 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 3758 81 DUP2 3759 52 MSTORE 375A 60 PUSH1 0x20 375C 60 PUSH1 0x04 375E 82 DUP3 375F 01 ADD 3760 52 MSTORE 3761 60 PUSH1 0x23 3763 60 PUSH1 0x24 3765 82 DUP3 3766 01 ADD 3767 52 MSTORE 3768 7F PUSH32 0x4672617873776170526f757465724c6962726172793a20494e56414c49445f50 3789 60 PUSH1 0x44 378B 82 DUP3 378C 01 ADD 378D 52 MSTORE 378E 7F PUSH32 0x4154480000000000000000000000000000000000000000000000000000000000 37AF 60 PUSH1 0x64 37B1 82 DUP3 37B2 01 ADD 37B3 52 MSTORE 37B4 60 PUSH1 0x84 37B6 01 ADD 37B7 61 PUSH2 0x0609 37BA 56 *JUMP // Stack delta = +1 // Outputs[6] // { // @3759 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @3760 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @3767 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x23 // @378D memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x4672617873776170526f757465724c6962726172793a20494e56414c49445f50 // @37B3 memory[memory[0x40:0x60] + 0x64:memory[0x40:0x60] + 0x64 + 0x20] = 0x4154480000000000000000000000000000000000000000000000000000000000 // @37B6 stack[0] = 0x84 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_37BB: // Incoming jump from 0x3733, if !(memory[stack[-1]:stack[-1] + 0x20] < 0x02) // Inputs[2] // { // @37BC stack[-2] // @37BD memory[stack[-2]:stack[-2] + 0x20] // } 37BB 5B JUMPDEST 37BC 81 DUP2 37BD 51 MLOAD 37BE 67 PUSH8 0xffffffffffffffff 37C7 81 DUP2 37C8 11 GT 37C9 15 ISZERO 37CA 61 PUSH2 0x37d5 37CD 57 *JUMPI // Stack delta = +1 // Outputs[1] { @37BD stack[0] = memory[stack[-2]:stack[-2] + 0x20] } // Block ends with conditional jump to 0x37d5, if !(memory[stack[-2]:stack[-2] + 0x20] > 0xffffffffffffffff) label_37CE: // Incoming jump from 0x37CD, if not !(memory[stack[-2]:stack[-2] + 0x20] > 0xffffffffffffffff) 37CE 61 PUSH2 0x37d5 37D1 61 PUSH2 0x5575 37D4 56 *JUMP // Stack delta = +1 // Outputs[1] { @37CE stack[0] = 0x37d5 } // Block ends with unconditional jump to 0x5575 label_37D5: // Incoming jump from 0x37CD, if !(memory[stack[-2]:stack[-2] + 0x20] > 0xffffffffffffffff) // Inputs[2] // { // @37D8 memory[0x40:0x60] // @37D9 stack[-1] // } 37D5 5B JUMPDEST 37D6 60 PUSH1 0x40 37D8 51 MLOAD 37D9 90 SWAP1 37DA 80 DUP1 37DB 82 DUP3 37DC 52 MSTORE 37DD 80 DUP1 37DE 60 PUSH1 0x20 37E0 02 MUL 37E1 60 PUSH1 0x20 37E3 01 ADD 37E4 82 DUP3 37E5 01 ADD 37E6 60 PUSH1 0x40 37E8 52 MSTORE 37E9 80 DUP1 37EA 15 ISZERO 37EB 61 PUSH2 0x37fe 37EE 57 *JUMPI // Stack delta = +1 // Outputs[4] // { // @37D9 stack[-1] = memory[0x40:0x60] // @37D9 stack[0] = stack[-1] // @37DC memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = stack[-1] // @37E8 memory[0x40:0x60] = memory[0x40:0x60] + 0x20 + 0x20 * stack[-1] // } // Block ends with conditional jump to 0x37fe, if !stack[-1] label_37EF: // Incoming jump from 0x37EE, if not !stack[-1] // Inputs[7] // { // @37EF stack[-2] // @37F5 stack[-1] // @37F8 msg.data.length // @37FA msg.data[msg.data.length:msg.data.length + stack[-1] * 0x20] // @3800 stack[-3] // @3802 stack[-5] // @3807 memory[stack[-2]:stack[-2] + 0x20] // } 37EF 81 DUP2 37F0 60 PUSH1 0x20 37F2 01 ADD 37F3 60 PUSH1 0x20 37F5 82 DUP3 37F6 02 MUL 37F7 80 DUP1 37F8 36 CALLDATASIZE 37F9 83 DUP4 37FA 37 CALLDATACOPY 37FB 01 ADD 37FC 90 SWAP1 37FD 50 POP 37FE 5B JUMPDEST 37FF 50 POP 3800 90 SWAP1 3801 50 POP 3802 82 DUP3 3803 81 DUP2 3804 60 PUSH1 0x00 3806 81 DUP2 3807 51 MLOAD 3808 81 DUP2 3809 10 LT 380A 61 PUSH2 0x3815 380D 57 *JUMPI // Stack delta = +1 // Outputs[5] // { // @37FA memory[0x20 + stack[-2]:0x20 + stack[-2] + stack[-1] * 0x20] = msg.data[msg.data.length:msg.data.length + stack[-1] * 0x20] // @3800 stack[-3] = stack[-2] // @3802 stack[-2] = stack[-5] // @3803 stack[-1] = stack[-2] // @3804 stack[0] = 0x00 // } // Block ends with conditional jump to 0x3815, if 0x00 < memory[stack[-2]:stack[-2] + 0x20] label_380E: // Incoming jump from 0x380D, if not 0x00 < memory[stack[-2]:stack[-2] + 0x20] // Incoming jump from 0x380D, if not 0x00 < memory[stack[-2]:stack[-2] + 0x20] 380E 61 PUSH2 0x3815 3811 61 PUSH2 0x598d 3814 56 *JUMP // Stack delta = +1 // Outputs[1] { @380E stack[0] = 0x3815 } // Block ends with unconditional jump to 0x598d label_3815: // Incoming jump from 0x380D, if 0x00 < memory[stack[-2]:stack[-2] + 0x20] // Incoming jump from 0x380D, if 0x00 < memory[stack[-2]:stack[-2] + 0x20] // Inputs[5] // { // @3818 stack[-1] // @381C stack[-2] // @381D stack[-3] // @3827 stack[-5] // @3828 memory[stack[-5]:stack[-5] + 0x20] // } 3815 5B JUMPDEST 3816 60 PUSH1 0x20 3818 02 MUL 3819 60 PUSH1 0x20 381B 01 ADD 381C 01 ADD 381D 81 DUP2 381E 81 DUP2 381F 52 MSTORE 3820 50 POP 3821 50 POP 3822 60 PUSH1 0x00 3824 5B JUMPDEST 3825 60 PUSH1 0x01 3827 83 DUP4 3828 51 MLOAD 3829 61 PUSH2 0x3832 382C 91 SWAP2 382D 90 SWAP1 382E 61 PUSH2 0x5976 3831 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @381F memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] = stack[-3] // @3822 stack[-3] = 0x00 // @382C stack[-2] = 0x3832 // @382D stack[0] = memory[stack[-5]:stack[-5] + 0x20] // @382D stack[-1] = 0x01 // } // Block ends with call to 0x5976, returns to 0x3832 label_3832: // Incoming return from call to 0x5976 at 0x3831 // Incoming return from call to 0x5976 at 0x3831 // Inputs[2] // { // @3833 stack[-2] // @3834 stack[-1] // } 3832 5B JUMPDEST 3833 81 DUP2 3834 10 LT 3835 15 ISZERO 3836 61 PUSH2 0x3a0d 3839 57 *JUMPI // Stack delta = -1 // Block ends with conditional jump to 0x3a0d, if !(stack[-2] < stack[-1]) label_383A: // Incoming jump from 0x3839, if not !(stack[-2] < stack[-1]) // Inputs[4] // { // @383F stack[-5] // @3840 stack[-3] // @3841 stack[-1] // @3843 memory[stack[-3]:stack[-3] + 0x20] // } 383A 60 PUSH1 0x00 383C 61 PUSH2 0x3884 383F 86 DUP7 3840 85 DUP6 3841 84 DUP5 3842 81 DUP2 3843 51 MLOAD 3844 81 DUP2 3845 10 LT 3846 61 PUSH2 0x3851 3849 57 *JUMPI // Stack delta = +5 // Outputs[5] // { // @383A stack[0] = 0x00 // @383C stack[1] = 0x3884 // @383F stack[2] = stack[-5] // @3840 stack[3] = stack[-3] // @3841 stack[4] = stack[-1] // } // Block ends with conditional call to 0x3851, returns to 0x3884, if stack[-1] < memory[stack[-3]:stack[-3] + 0x20] label_384A: // Incoming jump from 0x3849, if not stack[-1] < memory[stack[-3]:stack[-3] + 0x20] 384A 61 PUSH2 0x3851 384D 61 PUSH2 0x598d 3850 56 *JUMP // Stack delta = +1 // Outputs[1] { @384A stack[0] = 0x3851 } // Block ends with unconditional jump to 0x598d label_3851: // Incoming call from 0x3849, returns to 0x3884, if stack[-1] < memory[stack[-3]:stack[-3] + 0x20] // Incoming call from 0x4C83, returns to 0x4C8B, if stack[-1] < memory[stack[-3]:stack[-3] + 0x20] // Inputs[5] // { // @3854 stack[-1] // @3858 stack[-2] // @3859 memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @385A stack[-8] // @385B stack[-6] // } 3851 5B JUMPDEST 3852 60 PUSH1 0x20 3854 02 MUL 3855 60 PUSH1 0x20 3857 01 ADD 3858 01 ADD 3859 51 MLOAD 385A 86 DUP7 385B 85 DUP6 385C 60 PUSH1 0x01 385E 61 PUSH2 0x3867 3861 91 SWAP2 3862 90 SWAP1 3863 61 PUSH2 0x5a7b 3866 56 *JUMP // Stack delta = +3 // Outputs[5] // { // @3859 stack[-2] = memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @385A stack[-1] = stack[-8] // @3861 stack[0] = 0x3867 // @3862 stack[1] = stack[-6] // @3862 stack[2] = 0x01 // } // Block ends with call to 0x5a7b, returns to 0x3867 label_3867: // Incoming return from call to 0x5A7B at 0x3866 // Inputs[3] // { // @3868 stack[-2] // @3869 memory[stack[-2]:stack[-2] + 0x20] // @386A stack[-1] // } 3867 5B JUMPDEST 3868 81 DUP2 3869 51 MLOAD 386A 81 DUP2 386B 10 LT 386C 61 PUSH2 0x3877 386F 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x3877, if stack[-1] < memory[stack[-2]:stack[-2] + 0x20] label_3870: // Incoming jump from 0x386F, if not stack[-1] < memory[stack[-2]:stack[-2] + 0x20] 3870 61 PUSH2 0x3877 3873 61 PUSH2 0x598d 3876 56 *JUMP // Stack delta = +1 // Outputs[1] { @3870 stack[0] = 0x3877 } // Block ends with unconditional jump to 0x598d label_3877: // Incoming jump from 0x386F, if stack[-1] < memory[stack[-2]:stack[-2] + 0x20] // Incoming jump from 0x404E, if stack[-6] < memory[stack[-8]:stack[-8] + 0x20] // Inputs[3] // { // @387A stack[-1] // @387E stack[-2] // @387F memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // } 3877 5B JUMPDEST 3878 60 PUSH1 0x20 387A 02 MUL 387B 60 PUSH1 0x20 387D 01 ADD 387E 01 ADD 387F 51 MLOAD 3880 61 PUSH2 0x3a15 3883 56 *JUMP // Stack delta = -1 // Outputs[1] { @387F stack[-2] = memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] } // Block ends with unconditional jump to 0x3a15 label_3884: // Incoming return from call to 0x3851 at 0x3849 // Inputs[6] // { // @3887 memory[0x40:0x60] // @38AB block.timestamp // @38B1 stack[-1] // @38B2 stack[-2] // @38D9 memory[0x40:0x60] // @38E2 address(stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // } 3884 5B JUMPDEST 3885 60 PUSH1 0x40 3887 51 MLOAD 3888 7F PUSH32 0x2e0ae37500000000000000000000000000000000000000000000000000000000 38A9 81 DUP2 38AA 52 MSTORE 38AB 42 TIMESTAMP 38AC 60 PUSH1 0x04 38AE 82 DUP3 38AF 01 ADD 38B0 52 MSTORE 38B1 90 SWAP1 38B2 91 SWAP2 38B3 50 POP 38B4 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 38C9 82 DUP3 38CA 16 AND 38CB 90 SWAP1 38CC 63 PUSH4 0x2e0ae375 38D1 90 SWAP1 38D2 60 PUSH1 0x24 38D4 01 ADD 38D5 60 PUSH1 0x00 38D7 60 PUSH1 0x40 38D9 51 MLOAD 38DA 80 DUP1 38DB 83 DUP4 38DC 03 SUB 38DD 81 DUP2 38DE 60 PUSH1 0x00 38E0 87 DUP8 38E1 80 DUP1 38E2 3B EXTCODESIZE 38E3 15 ISZERO 38E4 80 DUP1 38E5 15 ISZERO 38E6 61 PUSH2 0x38ee 38E9 57 *JUMPI // Stack delta = +9 // Outputs[13] // { // @38AA memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x2e0ae37500000000000000000000000000000000000000000000000000000000 // @38B0 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = block.timestamp // @38B2 stack[-2] = stack[-1] // @38CB stack[-1] = stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff // @38D1 stack[0] = 0x2e0ae375 // @38D4 stack[1] = 0x24 + memory[0x40:0x60] // @38D5 stack[2] = 0x00 // @38D9 stack[3] = memory[0x40:0x60] // @38DC stack[4] = (0x24 + memory[0x40:0x60]) - memory[0x40:0x60] // @38DD stack[5] = memory[0x40:0x60] // @38DE stack[6] = 0x00 // @38E0 stack[7] = stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff // @38E3 stack[8] = !address(stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // } // Block ends with conditional jump to 0x38ee, if !!address(stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff).code.length label_38EA: // Incoming jump from 0x38E9, if not !!address(stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Inputs[1] { @38ED memory[0x00:0x00] } 38EA 60 PUSH1 0x00 38EC 80 DUP1 38ED FD *REVERT // Stack delta = +0 // Outputs[1] { @38ED revert(memory[0x00:0x00]); } // Block terminates label_38EE: // Incoming jump from 0x38E9, if !!address(stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Inputs[9] // { // @38F0 msg.gas // @38F1 stack[-5] // @38F1 stack[-3] // @38F1 memory[stack[-4]:stack[-4] + stack[-5]] // @38F1 stack[-2] // @38F1 address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // @38F1 stack[-4] // @38F1 stack[-7] // @38F1 stack[-6] // } 38EE 5B JUMPDEST 38EF 50 POP 38F0 5A GAS 38F1 F1 CALL 38F2 15 ISZERO 38F3 80 DUP1 38F4 15 ISZERO 38F5 61 PUSH2 0x3902 38F8 57 *JUMPI // Stack delta = -6 // Outputs[2] // { // @38F1 memory[stack[-6]:stack[-6] + stack[-7]] = address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // @38F2 stack[-7] = !address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // } // Block ends with conditional jump to 0x3902, if !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) label_38F9: // Incoming jump from 0x38F8, if not !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // Inputs[4] // { // @38F9 returndata.length // @38FD returndata[0x00:0x00 + returndata.length] // @38FE returndata.length // @3901 memory[0x00:0x00 + returndata.length] // } 38F9 3D RETURNDATASIZE 38FA 60 PUSH1 0x00 38FC 80 DUP1 38FD 3E RETURNDATACOPY 38FE 3D RETURNDATASIZE 38FF 60 PUSH1 0x00 3901 FD *REVERT // Stack delta = +0 // Outputs[2] // { // @38FD memory[0x00:0x00 + returndata.length] = returndata[0x00:0x00 + returndata.length] // @3901 revert(memory[0x00:0x00 + returndata.length]); // } // Block terminates label_3902: // Incoming jump from 0x38F8, if !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // Inputs[4] // { // @3907 stack[-5] // @3923 stack[-7] // @3924 stack[-6] // @3926 memory[stack[-7]:stack[-7] + 0x20] // } 3902 5B JUMPDEST 3903 50 POP 3904 50 POP 3905 50 POP 3906 50 POP 3907 80 DUP1 3908 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 391D 16 AND 391E 63 PUSH4 0xf140a35a 3923 84 DUP5 3924 84 DUP5 3925 81 DUP2 3926 51 MLOAD 3927 81 DUP2 3928 10 LT 3929 61 PUSH2 0x3934 392C 57 *JUMPI // Stack delta = +0 // Outputs[4] // { // @391D stack[-4] = 0xffffffffffffffffffffffffffffffffffffffff & stack[-5] // @391E stack[-3] = 0xf140a35a // @3923 stack[-2] = stack[-7] // @3924 stack[-1] = stack[-6] // } // Block ends with conditional jump to 0x3934, if stack[-6] < memory[stack[-7]:stack[-7] + 0x20] label_392D: // Incoming jump from 0x392C, if not stack[-6] < memory[stack[-7]:stack[-7] + 0x20] 392D 61 PUSH2 0x3934 3930 61 PUSH2 0x598d 3933 56 *JUMP // Stack delta = +1 // Outputs[1] { @392D stack[0] = 0x3934 } // Block ends with unconditional jump to 0x598d label_3934: // Incoming jump from 0x392C, if stack[-6] < memory[stack[-7]:stack[-7] + 0x20] // Inputs[6] // { // @3937 stack[-1] // @393B stack[-2] // @393C memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @393D stack[-8] // @393E stack[-6] // @3940 memory[stack[-8]:stack[-8] + 0x20] // } 3934 5B JUMPDEST 3935 60 PUSH1 0x20 3937 02 MUL 3938 60 PUSH1 0x20 393A 01 ADD 393B 01 ADD 393C 51 MLOAD 393D 86 DUP7 393E 85 DUP6 393F 81 DUP2 3940 51 MLOAD 3941 81 DUP2 3942 10 LT 3943 61 PUSH2 0x394e 3946 57 *JUMPI // Stack delta = +1 // Outputs[3] // { // @393C stack[-2] = memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @393D stack[-1] = stack[-8] // @393E stack[0] = stack[-6] // } // Block ends with conditional jump to 0x394e, if stack[-6] < memory[stack[-8]:stack[-8] + 0x20] label_3947: // Incoming jump from 0x3946, if not stack[-6] < memory[stack[-8]:stack[-8] + 0x20] 3947 61 PUSH2 0x394e 394A 61 PUSH2 0x598d 394D 56 *JUMP // Stack delta = +1 // Outputs[1] { @3947 stack[0] = 0x394e } // Block ends with unconditional jump to 0x598d label_394E: // Incoming jump from 0x3946, if stack[-6] < memory[stack[-8]:stack[-8] + 0x20] // Inputs[6] // { // @3951 stack[-1] // @3955 stack[-2] // @3956 memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @3959 memory[0x40:0x60] // @395A stack[-4] // @396C stack[-3] // } 394E 5B JUMPDEST 394F 60 PUSH1 0x20 3951 02 MUL 3952 60 PUSH1 0x20 3954 01 ADD 3955 01 ADD 3956 51 MLOAD 3957 60 PUSH1 0x40 3959 51 MLOAD 395A 83 DUP4 395B 63 PUSH4 0xffffffff 3960 16 AND 3961 60 PUSH1 0xe0 3963 1B SHL 3964 81 DUP2 3965 52 MSTORE 3966 60 PUSH1 0x04 3968 01 ADD 3969 61 PUSH2 0x3992 396C 92 SWAP3 396D 91 SWAP2 396E 90 SWAP1 396F 91 SWAP2 3970 82 DUP3 3971 52 MSTORE 3972 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 3987 16 AND 3988 60 PUSH1 0x20 398A 82 DUP3 398B 01 ADD 398C 52 MSTORE 398D 60 PUSH1 0x40 398F 01 ADD 3990 90 SWAP1 3991 56 *JUMP // Stack delta = -2 // Outputs[4] // { // @3965 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = (0xffffffff & stack[-4]) << 0xe0 // @3971 memory[0x04 + memory[0x40:0x60]:0x04 + memory[0x40:0x60] + 0x20] = stack[-3] // @398C memory[0x04 + memory[0x40:0x60] + 0x20:0x04 + memory[0x40:0x60] + 0x20 + 0x20] = 0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @3990 stack[-3] = 0x40 + 0x04 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x3992 label_3992: // Incoming jump from 0x3991 // Inputs[6] // { // @3997 memory[0x40:0x60] // @3999 stack[-1] // @399C stack[-3] // @399D msg.gas // @399E address(stack[-3]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) // @399E memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]] // } 3992 5B JUMPDEST 3993 60 PUSH1 0x20 3995 60 PUSH1 0x40 3997 51 MLOAD 3998 80 DUP1 3999 83 DUP4 399A 03 SUB 399B 81 DUP2 399C 86 DUP7 399D 5A GAS 399E FA STATICCALL 399F 15 ISZERO 39A0 80 DUP1 39A1 15 ISZERO 39A2 61 PUSH2 0x39af 39A5 57 *JUMPI // Stack delta = +1 // Outputs[2] // { // @399E memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = address(stack[-3]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) // @399F stack[0] = !address(stack[-3]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) // } // Block ends with conditional jump to 0x39af, if !!address(stack[-3]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) label_39A6: // Incoming jump from 0x39A5, if not !!address(stack[-3]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) // Inputs[4] // { // @39A6 returndata.length // @39AA returndata[0x00:0x00 + returndata.length] // @39AB returndata.length // @39AE memory[0x00:0x00 + returndata.length] // } 39A6 3D RETURNDATASIZE 39A7 60 PUSH1 0x00 39A9 80 DUP1 39AA 3E RETURNDATACOPY 39AB 3D RETURNDATASIZE 39AC 60 PUSH1 0x00 39AE FD *REVERT // Stack delta = +0 // Outputs[2] // { // @39AA memory[0x00:0x00 + returndata.length] = returndata[0x00:0x00 + returndata.length] // @39AE revert(memory[0x00:0x00 + returndata.length]); // } // Block terminates label_39AF: // Incoming jump from 0x39A5, if !!address(stack[-3]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) // Inputs[2] // { // @39B6 memory[0x40:0x60] // @39B7 returndata.length // } 39AF 5B JUMPDEST 39B0 50 POP 39B1 50 POP 39B2 50 POP 39B3 50 POP 39B4 60 PUSH1 0x40 39B6 51 MLOAD 39B7 3D RETURNDATASIZE 39B8 60 PUSH1 0x1f 39BA 19 NOT 39BB 60 PUSH1 0x1f 39BD 82 DUP3 39BE 01 ADD 39BF 16 AND 39C0 82 DUP3 39C1 01 ADD 39C2 80 DUP1 39C3 60 PUSH1 0x40 39C5 52 MSTORE 39C6 50 POP 39C7 81 DUP2 39C8 01 ADD 39C9 90 SWAP1 39CA 61 PUSH2 0x39d3 39CD 91 SWAP2 39CE 90 SWAP1 39CF 61 PUSH2 0x59d9 39D2 56 *JUMP // Stack delta = -1 // Outputs[4] // { // @39C5 memory[0x40:0x60] = memory[0x40:0x60] + (returndata.length + 0x1f & ~0x1f) // @39CD stack[-4] = 0x39d3 // @39CE stack[-2] = memory[0x40:0x60] // @39CE stack[-3] = memory[0x40:0x60] + returndata.length // } // Block ends with call to 0x59d9, returns to 0x39D3 label_39D3: // Incoming return from call to 0x59D9 at 0x39D2 // Inputs[2] // { // @39D4 stack[-4] // @39D8 stack[-3] // } 39D3 5B JUMPDEST 39D4 83 DUP4 39D5 61 PUSH2 0x39df 39D8 84 DUP5 39D9 60 PUSH1 0x01 39DB 61 PUSH2 0x5a7b 39DE 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @39D4 stack[0] = stack[-4] // @39D5 stack[1] = 0x39df // @39D8 stack[2] = stack[-3] // @39D9 stack[3] = 0x01 // } // Block ends with call to 0x5a7b, returns to 0x39DF label_39DF: // Incoming return from call to 0x5A7B at 0x39DE // Inputs[3] // { // @39E0 stack[-2] // @39E1 memory[stack[-2]:stack[-2] + 0x20] // @39E2 stack[-1] // } 39DF 5B JUMPDEST 39E0 81 DUP2 39E1 51 MLOAD 39E2 81 DUP2 39E3 10 LT 39E4 61 PUSH2 0x39ef 39E7 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x39ef, if stack[-1] < memory[stack[-2]:stack[-2] + 0x20] label_39E8: // Incoming jump from 0x39E7, if not stack[-1] < memory[stack[-2]:stack[-2] + 0x20] 39E8 61 PUSH2 0x39ef 39EB 61 PUSH2 0x598d 39EE 56 *JUMP // Stack delta = +1 // Outputs[1] { @39E8 stack[0] = 0x39ef } // Block ends with unconditional jump to 0x598d label_39EF: // Incoming jump from 0x39E7, if stack[-1] < memory[stack[-2]:stack[-2] + 0x20] // Inputs[4] // { // @39F2 stack[-1] // @39F5 stack[-2] // @39FA stack[-3] // @39FC stack[-5] // } 39EF 5B JUMPDEST 39F0 60 PUSH1 0x20 39F2 90 SWAP1 39F3 81 DUP2 39F4 02 MUL 39F5 91 SWAP2 39F6 90 SWAP1 39F7 91 SWAP2 39F8 01 ADD 39F9 01 ADD 39FA 52 MSTORE 39FB 50 POP 39FC 80 DUP1 39FD 61 PUSH2 0x3a05 3A00 81 DUP2 3A01 61 PUSH2 0x5a93 3A04 56 *JUMP // Stack delta = -1 // Outputs[4] // { // @39FA memory[0x20 * stack[-1] + stack[-2] + 0x20:0x20 * stack[-1] + stack[-2] + 0x20 + 0x20] = stack[-3] // @39FC stack[-4] = stack[-5] // @39FD stack[-3] = 0x3a05 // @3A00 stack[-2] = stack[-5] // } // Block ends with call to 0x5a93, returns to 0x3A05 label_3A05: // Incoming return from call to 0x5A93 at 0x3A04 // Inputs[2] // { // @3A06 stack[-3] // @3A06 stack[-1] // } 3A05 5B JUMPDEST 3A06 91 SWAP2 3A07 50 POP 3A08 50 POP 3A09 61 PUSH2 0x3824 3A0C 56 *JUMP // Stack delta = -2 // Outputs[1] { @3A06 stack[-3] = stack[-1] } // Block ends with unconditional jump to 0x3824 label_3A0D: // Incoming jump from 0x3839, if !(stack[-2] < stack[-1]) // Incoming jump from 0x4C73, if !(stack[-2] < stack[-1]) // Incoming jump from 0x401A, if !stack[-1] // Incoming jump from 0x435F, if !stack[-1] // Incoming jump from 0x435F, if !stack[-1] // Inputs[3] // { // @3A0F stack[-6] // @3A0F stack[-2] // @3A10 stack[-5] // } 3A0D 5B JUMPDEST 3A0E 50 POP 3A0F 93 SWAP4 3A10 92 SWAP3 3A11 50 POP 3A12 50 POP 3A13 50 POP 3A14 56 *JUMP // Stack delta = -5 // Outputs[1] { @3A0F stack[-6] = stack[-2] } // Block ends with unconditional jump to stack[-6] label_3A15: // Incoming call from 0x2742, returns to 0x2743 // Incoming call from 0x2A7C, returns to 0x2A7D // Incoming jump from 0x3883 // Incoming call from 0x0C29, returns to 0x0C2A // Incoming call from 0x11B2, returns to 0x11B3 // Inputs[2] // { // @3A1E stack[-2] // @3A1F stack[-1] // } 3A15 5B JUMPDEST 3A16 60 PUSH1 0x00 3A18 80 DUP1 3A19 60 PUSH1 0x00 3A1B 61 PUSH2 0x3a24 3A1E 85 DUP6 3A1F 85 DUP6 3A20 61 PUSH2 0x49b7 3A23 56 *JUMP // Stack delta = +6 // Outputs[6] // { // @3A16 stack[0] = 0x00 // @3A18 stack[1] = 0x00 // @3A19 stack[2] = 0x00 // @3A1B stack[3] = 0x3a24 // @3A1E stack[4] = stack[-2] // @3A1F stack[5] = stack[-1] // } // Block ends with call to 0x49b7, returns to 0x3A24 label_3A24: // Incoming return from call to 0x49B7 at 0x3A23 // Inputs[10] // { // @3A27 memory[0x40:0x60] // @3A4B stack[-2] // @3A55 stack[-1] // @3A5F stack[-4] // @3A61 stack[-3] // @3A63 stack[-8] // @3A6A memory[0x40:0x60] // @3A78 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] // @3A7D memory[0x20 + memory[0x40:0x60]:0x20 + memory[0x40:0x60] + memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20]] // @3A80 memory[0x40:0x60] // } 3A24 5B JUMPDEST 3A25 60 PUSH1 0x40 3A27 51 MLOAD 3A28 7F PUSH32 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000 3A49 60 PUSH1 0x60 3A4B 84 DUP5 3A4C 81 DUP2 3A4D 1B SHL 3A4E 82 DUP3 3A4F 16 AND 3A50 60 PUSH1 0x20 3A52 84 DUP5 3A53 01 ADD 3A54 52 MSTORE 3A55 83 DUP4 3A56 90 SWAP1 3A57 1B SHL 3A58 16 AND 3A59 60 PUSH1 0x34 3A5B 82 DUP3 3A5C 01 ADD 3A5D 52 MSTORE 3A5E 91 SWAP2 3A5F 93 SWAP4 3A60 50 POP 3A61 91 SWAP2 3A62 50 POP 3A63 86 DUP7 3A64 90 SWAP1 3A65 60 PUSH1 0x48 3A67 01 ADD 3A68 60 PUSH1 0x40 3A6A 51 MLOAD 3A6B 60 PUSH1 0x20 3A6D 81 DUP2 3A6E 83 DUP4 3A6F 03 SUB 3A70 03 SUB 3A71 81 DUP2 3A72 52 MSTORE 3A73 90 SWAP1 3A74 60 PUSH1 0x40 3A76 52 MSTORE 3A77 80 DUP1 3A78 51 MLOAD 3A79 90 SWAP1 3A7A 60 PUSH1 0x20 3A7C 01 ADD 3A7D 20 SHA3 3A7E 60 PUSH1 0x40 3A80 51 MLOAD 3A81 60 PUSH1 0x20 3A83 01 ADD 3A84 61 PUSH2 0x3b0a 3A87 92 SWAP3 3A88 91 SWAP2 3A89 90 SWAP1 3A8A 7F PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 3AAB 81 DUP2 3AAC 52 MSTORE 3AAD 60 PUSH1 0x60 3AAF 92 SWAP3 3AB0 90 SWAP1 3AB1 92 SWAP3 3AB2 1B SHL 3AB3 7F PUSH32 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000 3AD4 16 AND 3AD5 60 PUSH1 0x01 3AD7 83 DUP4 3AD8 01 ADD 3AD9 52 MSTORE 3ADA 60 PUSH1 0x15 3ADC 82 DUP3 3ADD 01 ADD 3ADE 52 MSTORE 3ADF 7F PUSH32 0x4ce0b4ab368f39e4bd03ec712dfc405eb5a36cdb0294b3887b441cd1c743ced3 3B00 60 PUSH1 0x35 3B02 82 DUP3 3B03 01 ADD 3B04 52 MSTORE 3B05 60 PUSH1 0x55 3B07 01 ADD 3B08 90 SWAP1 3B09 56 *JUMP // Stack delta = -1 // Outputs[11] // { // @3A54 memory[memory[0x40:0x60] + 0x20:memory[0x40:0x60] + 0x20 + 0x20] = 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000 & (stack[-2] << 0x60) // @3A5D memory[memory[0x40:0x60] + 0x34:memory[0x40:0x60] + 0x34 + 0x20] = (stack[-1] << 0x60) & 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000 // @3A5F stack[-4] = stack[-2] // @3A61 stack[-3] = stack[-1] // @3A72 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = (0x48 + memory[0x40:0x60]) - memory[0x40:0x60] - 0x20 // @3A76 memory[0x40:0x60] = 0x48 + memory[0x40:0x60] // @3AAC memory[0x20 + memory[0x40:0x60]:0x20 + memory[0x40:0x60] + 0x20] = 0xff00000000000000000000000000000000000000000000000000000000000000 // @3AD9 memory[0x20 + memory[0x40:0x60] + 0x01:0x20 + memory[0x40:0x60] + 0x01 + 0x20] = 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000 & (stack[-8] << 0x60) // @3ADE memory[0x20 + memory[0x40:0x60] + 0x15:0x20 + memory[0x40:0x60] + 0x15 + 0x20] = keccak256(memory[0x20 + memory[0x40:0x60]:0x20 + memory[0x40:0x60] + memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20]]) // @3B04 memory[0x20 + memory[0x40:0x60] + 0x35:0x20 + memory[0x40:0x60] + 0x35 + 0x20] = 0x4ce0b4ab368f39e4bd03ec712dfc405eb5a36cdb0294b3887b441cd1c743ced3 // @3B08 stack[-2] = 0x55 + 0x20 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x3b0a label_3B0A: // Incoming jump from 0x3B09 // Inputs[6] // { // @3B0E memory[0x40:0x60] // @3B31 stack[-1] // @3B3A memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] // @3B40 memory[memory[0x40:0x60] + 0x20:memory[0x40:0x60] + 0x20 + memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20]] // @3B41 stack[-8] // @3B42 stack[-7] // } 3B0A 5B JUMPDEST 3B0B 60 PUSH1 0x40 3B0D 80 DUP1 3B0E 51 MLOAD 3B0F 7F PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 3B30 81 DUP2 3B31 84 DUP5 3B32 03 SUB 3B33 01 ADD 3B34 81 DUP2 3B35 52 MSTORE 3B36 91 SWAP2 3B37 90 SWAP1 3B38 52 MSTORE 3B39 80 DUP1 3B3A 51 MLOAD 3B3B 60 PUSH1 0x20 3B3D 90 SWAP1 3B3E 91 SWAP2 3B3F 01 ADD 3B40 20 SHA3 3B41 96 SWAP7 3B42 95 SWAP6 3B43 50 POP 3B44 50 POP 3B45 50 POP 3B46 50 POP 3B47 50 POP 3B48 50 POP 3B49 56 *JUMP // Stack delta = -7 // Outputs[3] // { // @3B35 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = stack[-1] - memory[0x40:0x60] + 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 // @3B38 memory[0x40:0x60] = stack[-1] // @3B41 stack[-8] = keccak256(memory[memory[0x40:0x60] + 0x20:memory[0x40:0x60] + 0x20 + memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20]]) // } // Block ends with unconditional jump to stack[-8] 3B4A 5B JUMPDEST 3B4B 60 PUSH1 0x40 3B4D 80 DUP1 3B4E 51 MLOAD 3B4F 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 3B64 85 DUP6 3B65 81 DUP2 3B66 16 AND 3B67 60 PUSH1 0x24 3B69 83 DUP4 3B6A 01 ADD 3B6B 52 MSTORE 3B6C 84 DUP5 3B6D 81 DUP2 3B6E 16 AND 3B6F 60 PUSH1 0x44 3B71 83 DUP4 3B72 01 ADD 3B73 52 MSTORE 3B74 60 PUSH1 0x64 3B76 80 DUP1 3B77 83 DUP4 3B78 01 ADD 3B79 85 DUP6 3B7A 90 SWAP1 3B7B 52 MSTORE 3B7C 83 DUP4 3B7D 51 MLOAD 3B7E 80 DUP1 3B7F 84 DUP5 3B80 03 SUB 3B81 90 SWAP1 3B82 91 SWAP2 3B83 01 ADD 3B84 81 DUP2 3B85 52 MSTORE 3B86 60 PUSH1 0x84 3B88 90 SWAP1 3B89 92 SWAP3 3B8A 01 ADD 3B8B 83 DUP4 3B8C 52 MSTORE 3B8D 60 PUSH1 0x20 3B8F 82 DUP3 3B90 01 ADD 3B91 80 DUP1 3B92 51 MLOAD 3B93 7B PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 3BB0 16 AND 3BB1 7F PUSH32 0x23b872dd00000000000000000000000000000000000000000000000000000000 3BD2 17 OR 3BD3 90 SWAP1 3BD4 52 MSTORE 3BD5 91 SWAP2 3BD6 51 MLOAD 3BD7 60 PUSH1 0x00 3BD9 92 SWAP3 3BDA 83 DUP4 3BDB 92 SWAP3 3BDC 90 SWAP1 3BDD 88 DUP9 3BDE 16 AND 3BDF 91 SWAP2 3BE0 61 PUSH2 0x3be9 3BE3 91 SWAP2 3BE4 90 SWAP1 3BE5 61 PUSH2 0x5a5f 3BE8 56 *JUMP 3BE9 5B JUMPDEST 3BEA 60 PUSH1 0x00 3BEC 60 PUSH1 0x40 3BEE 51 MLOAD 3BEF 80 DUP1 3BF0 83 DUP4 3BF1 03 SUB 3BF2 81 DUP2 3BF3 60 PUSH1 0x00 3BF5 86 DUP7 3BF6 5A GAS 3BF7 F1 CALL 3BF8 91 SWAP2 3BF9 50 POP 3BFA 50 POP 3BFB 3D RETURNDATASIZE 3BFC 80 DUP1 3BFD 60 PUSH1 0x00 3BFF 81 DUP2 3C00 14 EQ 3C01 61 PUSH2 0x3c26 3C04 57 *JUMPI 3C05 60 PUSH1 0x40 3C07 51 MLOAD 3C08 91 SWAP2 3C09 50 POP 3C0A 60 PUSH1 0x1f 3C0C 19 NOT 3C0D 60 PUSH1 0x3f 3C0F 3D RETURNDATASIZE 3C10 01 ADD 3C11 16 AND 3C12 82 DUP3 3C13 01 ADD 3C14 60 PUSH1 0x40 3C16 52 MSTORE 3C17 3D RETURNDATASIZE 3C18 82 DUP3 3C19 52 MSTORE 3C1A 3D RETURNDATASIZE 3C1B 60 PUSH1 0x00 3C1D 60 PUSH1 0x20 3C1F 84 DUP5 3C20 01 ADD 3C21 3E RETURNDATACOPY 3C22 61 PUSH2 0x3c2b 3C25 56 *JUMP 3C26 5B JUMPDEST 3C27 60 PUSH1 0x60 3C29 91 SWAP2 3C2A 50 POP 3C2B 5B JUMPDEST 3C2C 50 POP 3C2D 91 SWAP2 3C2E 50 POP 3C2F 91 SWAP2 3C30 50 POP 3C31 81 DUP2 3C32 80 DUP1 3C33 15 ISZERO 3C34 61 PUSH2 0x3c55 3C37 57 *JUMPI 3C38 50 POP 3C39 80 DUP1 3C3A 51 MLOAD 3C3B 15 ISZERO 3C3C 80 DUP1 3C3D 61 PUSH2 0x3c55 3C40 57 *JUMPI 3C41 50 POP 3C42 80 DUP1 3C43 80 DUP1 3C44 60 PUSH1 0x20 3C46 01 ADD 3C47 90 SWAP1 3C48 51 MLOAD 3C49 81 DUP2 3C4A 01 ADD 3C4B 90 SWAP1 3C4C 61 PUSH2 0x3c55 3C4F 91 SWAP2 3C50 90 SWAP1 3C51 61 PUSH2 0x59f2 3C54 56 *JUMP 3C55 5B JUMPDEST 3C56 61 PUSH2 0x3ce1 3C59 57 *JUMPI 3C5A 60 PUSH1 0x40 3C5C 51 MLOAD 3C5D 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 3C7E 81 DUP2 3C7F 52 MSTORE 3C80 60 PUSH1 0x20 3C82 60 PUSH1 0x04 3C84 82 DUP3 3C85 01 ADD 3C86 52 MSTORE 3C87 60 PUSH1 0x31 3C89 60 PUSH1 0x24 3C8B 82 DUP3 3C8C 01 ADD 3C8D 52 MSTORE 3C8E 7F PUSH32 0x5472616e7366657248656c7065723a3a7472616e7366657246726f6d3a207472 3CAF 60 PUSH1 0x44 3CB1 82 DUP3 3CB2 01 ADD 3CB3 52 MSTORE 3CB4 7F PUSH32 0x616e7366657246726f6d206661696c6564000000000000000000000000000000 3CD5 60 PUSH1 0x64 3CD7 82 DUP3 3CD8 01 ADD 3CD9 52 MSTORE 3CDA 60 PUSH1 0x84 3CDC 01 ADD 3CDD 61 PUSH2 0x0609 3CE0 56 *JUMP 3CE1 5B JUMPDEST 3CE2 50 POP 3CE3 50 POP 3CE4 50 POP 3CE5 50 POP 3CE6 50 POP 3CE7 50 POP 3CE8 56 *JUMP 3CE9 5B JUMPDEST 3CEA 60 PUSH1 0x00 3CEC 5B JUMPDEST 3CED 60 PUSH1 0x01 3CEF 83 DUP4 3CF0 51 MLOAD 3CF1 61 PUSH2 0x3cfa 3CF4 91 SWAP2 3CF5 90 SWAP1 3CF6 61 PUSH2 0x5976 3CF9 56 *JUMP 3CFA 5B JUMPDEST 3CFB 81 DUP2 3CFC 10 LT 3CFD 15 ISZERO 3CFE 61 PUSH2 0x3ef5 3D01 57 *JUMPI 3D02 60 PUSH1 0x00 3D04 80 DUP1 3D05 84 DUP5 3D06 83 DUP4 3D07 81 DUP2 3D08 51 MLOAD 3D09 81 DUP2 3D0A 10 LT 3D0B 61 PUSH2 0x3d16 3D0E 57 *JUMPI 3D0F 61 PUSH2 0x3d16 3D12 61 PUSH2 0x598d 3D15 56 *JUMP 3D16 5B JUMPDEST 3D17 60 PUSH1 0x20 3D19 02 MUL 3D1A 60 PUSH1 0x20 3D1C 01 ADD 3D1D 01 ADD 3D1E 51 MLOAD 3D1F 85 DUP6 3D20 84 DUP5 3D21 60 PUSH1 0x01 3D23 61 PUSH2 0x3d2c 3D26 91 SWAP2 3D27 90 SWAP1 3D28 61 PUSH2 0x5a7b 3D2B 56 *JUMP 3D2C 5B JUMPDEST 3D2D 81 DUP2 3D2E 51 MLOAD 3D2F 81 DUP2 3D30 10 LT 3D31 61 PUSH2 0x3d3c 3D34 57 *JUMPI 3D35 61 PUSH2 0x3d3c 3D38 61 PUSH2 0x598d 3D3B 56 *JUMP 3D3C 5B JUMPDEST 3D3D 60 PUSH1 0x20 3D3F 02 MUL 3D40 60 PUSH1 0x20 3D42 01 ADD 3D43 01 ADD 3D44 51 MLOAD 3D45 91 SWAP2 3D46 50 POP 3D47 91 SWAP2 3D48 50 POP 3D49 60 PUSH1 0x00 3D4B 61 PUSH2 0x3d54 3D4E 83 DUP4 3D4F 83 DUP4 3D50 61 PUSH2 0x49b7 3D53 56 *JUMP 3D54 5B JUMPDEST 3D55 50 POP 3D56 90 SWAP1 3D57 50 POP 3D58 60 PUSH1 0x00 3D5A 87 DUP8 3D5B 61 PUSH2 0x3d65 3D5E 86 DUP7 3D5F 60 PUSH1 0x01 3D61 61 PUSH2 0x5a7b 3D64 56 *JUMP 3D65 5B JUMPDEST 3D66 81 DUP2 3D67 51 MLOAD 3D68 81 DUP2 3D69 10 LT 3D6A 61 PUSH2 0x3d75 3D6D 57 *JUMPI 3D6E 61 PUSH2 0x3d75 3D71 61 PUSH2 0x598d 3D74 56 *JUMP 3D75 5B JUMPDEST 3D76 60 PUSH1 0x20 3D78 02 MUL 3D79 60 PUSH1 0x20 3D7B 01 ADD 3D7C 01 ADD 3D7D 51 MLOAD 3D7E 90 SWAP1 3D7F 50 POP 3D80 60 PUSH1 0x00 3D82 80 DUP1 3D83 83 DUP4 3D84 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 3D99 16 AND 3D9A 86 DUP7 3D9B 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 3DB0 16 AND 3DB1 14 EQ 3DB2 61 PUSH2 0x3dbd 3DB5 57 *JUMPI 3DB6 82 DUP3 3DB7 60 PUSH1 0x00 3DB9 61 PUSH2 0x3dc1 3DBC 56 *JUMP 3DBD 5B JUMPDEST 3DBE 60 PUSH1 0x00 3DC0 83 DUP4 3DC1 5B JUMPDEST 3DC2 91 SWAP2 3DC3 50 POP 3DC4 91 SWAP2 3DC5 50 POP 3DC6 60 PUSH1 0x00 3DC8 60 PUSH1 0x02 3DCA 8A DUP11 3DCB 51 MLOAD 3DCC 61 PUSH2 0x3dd5 3DCF 91 SWAP2 3DD0 90 SWAP1 3DD1 61 PUSH2 0x5976 3DD4 56 *JUMP 3DD5 5B JUMPDEST 3DD6 88 DUP9 3DD7 10 LT 3DD8 61 PUSH2 0x3de1 3DDB 57 *JUMPI 3DDC 88 DUP9 3DDD 61 PUSH2 0x3e12 3DE0 56 *JUMP 3DE1 5B JUMPDEST 3DE2 61 PUSH2 0x3e12 3DE5 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 3E06 87 DUP8 3E07 8C DUP13 3E08 61 PUSH2 0x3867 3E0B 8C DUP13 3E0C 60 PUSH1 0x02 3E0E 61 PUSH2 0x5a7b 3E11 56 *JUMP 3E12 5B JUMPDEST 3E13 90 SWAP1 3E14 50 POP 3E15 61 PUSH2 0x3e3f 3E18 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 3E39 88 DUP9 3E3A 88 DUP9 3E3B 61 PUSH2 0x3a15 3E3E 56 *JUMP 3E3F 5B JUMPDEST 3E40 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 3E55 16 AND 3E56 63 PUSH4 0x022c0d9f 3E5B 84 DUP5 3E5C 84 DUP5 3E5D 84 DUP5 3E5E 60 PUSH1 0x00 3E60 60 PUSH1 0x40 3E62 51 MLOAD 3E63 90 SWAP1 3E64 80 DUP1 3E65 82 DUP3 3E66 52 MSTORE 3E67 80 DUP1 3E68 60 PUSH1 0x1f 3E6A 01 ADD 3E6B 60 PUSH1 0x1f 3E6D 19 NOT 3E6E 16 AND 3E6F 60 PUSH1 0x20 3E71 01 ADD 3E72 82 DUP3 3E73 01 ADD 3E74 60 PUSH1 0x40 3E76 52 MSTORE 3E77 80 DUP1 3E78 15 ISZERO 3E79 61 PUSH2 0x3e89 3E7C 57 *JUMPI 3E7D 60 PUSH1 0x20 3E7F 82 DUP3 3E80 01 ADD 3E81 81 DUP2 3E82 80 DUP1 3E83 36 CALLDATASIZE 3E84 83 DUP4 3E85 37 CALLDATACOPY 3E86 01 ADD 3E87 90 SWAP1 3E88 50 POP 3E89 5B JUMPDEST 3E8A 50 POP 3E8B 60 PUSH1 0x40 3E8D 51 MLOAD 3E8E 85 DUP6 3E8F 63 PUSH4 0xffffffff 3E94 16 AND 3E95 60 PUSH1 0xe0 3E97 1B SHL 3E98 81 DUP2 3E99 52 MSTORE 3E9A 60 PUSH1 0x04 3E9C 01 ADD 3E9D 61 PUSH2 0x3ea9 3EA0 94 SWAP5 3EA1 93 SWAP4 3EA2 92 SWAP3 3EA3 91 SWAP2 3EA4 90 SWAP1 3EA5 61 PUSH2 0x5acb 3EA8 56 *JUMP 3EA9 5B JUMPDEST 3EAA 60 PUSH1 0x00 3EAC 60 PUSH1 0x40 3EAE 51 MLOAD 3EAF 80 DUP1 3EB0 83 DUP4 3EB1 03 SUB 3EB2 81 DUP2 3EB3 60 PUSH1 0x00 3EB5 87 DUP8 3EB6 80 DUP1 3EB7 3B EXTCODESIZE 3EB8 15 ISZERO 3EB9 80 DUP1 3EBA 15 ISZERO 3EBB 61 PUSH2 0x3ec3 3EBE 57 *JUMPI 3EBF 60 PUSH1 0x00 3EC1 80 DUP1 3EC2 FD *REVERT 3EC3 5B JUMPDEST 3EC4 50 POP 3EC5 5A GAS 3EC6 F1 CALL 3EC7 15 ISZERO 3EC8 80 DUP1 3EC9 15 ISZERO 3ECA 61 PUSH2 0x3ed7 3ECD 57 *JUMPI 3ECE 3D RETURNDATASIZE 3ECF 60 PUSH1 0x00 3ED1 80 DUP1 3ED2 3E RETURNDATACOPY 3ED3 3D RETURNDATASIZE 3ED4 60 PUSH1 0x00 3ED6 FD *REVERT 3ED7 5B JUMPDEST 3ED8 50 POP 3ED9 50 POP 3EDA 50 POP 3EDB 50 POP 3EDC 50 POP 3EDD 50 POP 3EDE 50 POP 3EDF 50 POP 3EE0 50 POP 3EE1 50 POP 3EE2 50 POP 3EE3 80 DUP1 3EE4 80 DUP1 3EE5 61 PUSH2 0x3eed 3EE8 90 SWAP1 3EE9 61 PUSH2 0x5a93 3EEC 56 *JUMP 3EED 5B JUMPDEST 3EEE 91 SWAP2 3EEF 50 POP 3EF0 50 POP 3EF1 61 PUSH2 0x3cec 3EF4 56 *JUMP 3EF5 5B JUMPDEST 3EF6 50 POP 3EF7 50 POP 3EF8 50 POP 3EF9 50 POP 3EFA 56 *JUMP label_3EFB: // Incoming call from 0x0BF2, returns to 0x0BF3 // Inputs[2] // { // @3F00 stack[-1] // @3F01 memory[stack[-1]:stack[-1] + 0x20] // } 3EFB 5B JUMPDEST 3EFC 60 PUSH1 0x60 3EFE 60 PUSH1 0x02 3F00 82 DUP3 3F01 51 MLOAD 3F02 10 LT 3F03 15 ISZERO 3F04 61 PUSH2 0x3f8f 3F07 57 *JUMPI // Stack delta = +1 // Outputs[1] { @3EFC stack[0] = 0x60 } // Block ends with conditional jump to 0x3f8f, if !(memory[stack[-1]:stack[-1] + 0x20] < 0x02) label_3F08: // Incoming jump from 0x3F07, if not !(memory[stack[-1]:stack[-1] + 0x20] < 0x02) // Inputs[1] { @3F0A memory[0x40:0x60] } 3F08 60 PUSH1 0x40 3F0A 51 MLOAD 3F0B 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 3F2C 81 DUP2 3F2D 52 MSTORE 3F2E 60 PUSH1 0x20 3F30 60 PUSH1 0x04 3F32 82 DUP3 3F33 01 ADD 3F34 52 MSTORE 3F35 60 PUSH1 0x23 3F37 60 PUSH1 0x24 3F39 82 DUP3 3F3A 01 ADD 3F3B 52 MSTORE 3F3C 7F PUSH32 0x4672617873776170526f757465724c6962726172793a20494e56414c49445f50 3F5D 60 PUSH1 0x44 3F5F 82 DUP3 3F60 01 ADD 3F61 52 MSTORE 3F62 7F PUSH32 0x4154480000000000000000000000000000000000000000000000000000000000 3F83 60 PUSH1 0x64 3F85 82 DUP3 3F86 01 ADD 3F87 52 MSTORE 3F88 60 PUSH1 0x84 3F8A 01 ADD 3F8B 61 PUSH2 0x0609 3F8E 56 *JUMP // Stack delta = +1 // Outputs[6] // { // @3F2D memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @3F34 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @3F3B memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x23 // @3F61 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x4672617873776170526f757465724c6962726172793a20494e56414c49445f50 // @3F87 memory[memory[0x40:0x60] + 0x64:memory[0x40:0x60] + 0x64 + 0x20] = 0x4154480000000000000000000000000000000000000000000000000000000000 // @3F8A stack[0] = 0x84 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_3F8F: // Incoming jump from 0x3F07, if !(memory[stack[-1]:stack[-1] + 0x20] < 0x02) // Inputs[2] // { // @3F90 stack[-2] // @3F91 memory[stack[-2]:stack[-2] + 0x20] // } 3F8F 5B JUMPDEST 3F90 81 DUP2 3F91 51 MLOAD 3F92 67 PUSH8 0xffffffffffffffff 3F9B 81 DUP2 3F9C 11 GT 3F9D 15 ISZERO 3F9E 61 PUSH2 0x3fa9 3FA1 57 *JUMPI // Stack delta = +1 // Outputs[1] { @3F91 stack[0] = memory[stack[-2]:stack[-2] + 0x20] } // Block ends with conditional jump to 0x3fa9, if !(memory[stack[-2]:stack[-2] + 0x20] > 0xffffffffffffffff) label_3FA2: // Incoming jump from 0x3FA1, if not !(memory[stack[-2]:stack[-2] + 0x20] > 0xffffffffffffffff) 3FA2 61 PUSH2 0x3fa9 3FA5 61 PUSH2 0x5575 3FA8 56 *JUMP // Stack delta = +1 // Outputs[1] { @3FA2 stack[0] = 0x3fa9 } // Block ends with unconditional jump to 0x5575 label_3FA9: // Incoming jump from 0x3FA1, if !(memory[stack[-2]:stack[-2] + 0x20] > 0xffffffffffffffff) // Inputs[2] // { // @3FAC memory[0x40:0x60] // @3FAD stack[-1] // } 3FA9 5B JUMPDEST 3FAA 60 PUSH1 0x40 3FAC 51 MLOAD 3FAD 90 SWAP1 3FAE 80 DUP1 3FAF 82 DUP3 3FB0 52 MSTORE 3FB1 80 DUP1 3FB2 60 PUSH1 0x20 3FB4 02 MUL 3FB5 60 PUSH1 0x20 3FB7 01 ADD 3FB8 82 DUP3 3FB9 01 ADD 3FBA 60 PUSH1 0x40 3FBC 52 MSTORE 3FBD 80 DUP1 3FBE 15 ISZERO 3FBF 61 PUSH2 0x3fd2 3FC2 57 *JUMPI // Stack delta = +1 // Outputs[4] // { // @3FAD stack[-1] = memory[0x40:0x60] // @3FAD stack[0] = stack[-1] // @3FB0 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = stack[-1] // @3FBC memory[0x40:0x60] = memory[0x40:0x60] + 0x20 + 0x20 * stack[-1] // } // Block ends with conditional jump to 0x3fd2, if !stack[-1] label_3FC3: // Incoming jump from 0x3FC2, if not !stack[-1] // Inputs[7] // { // @3FC3 stack[-2] // @3FC9 stack[-1] // @3FCC msg.data.length // @3FCE msg.data[msg.data.length:msg.data.length + stack[-1] * 0x20] // @3FD4 stack[-3] // @3FD6 stack[-5] // @3FDB memory[stack[-2]:stack[-2] + 0x20] // } 3FC3 81 DUP2 3FC4 60 PUSH1 0x20 3FC6 01 ADD 3FC7 60 PUSH1 0x20 3FC9 82 DUP3 3FCA 02 MUL 3FCB 80 DUP1 3FCC 36 CALLDATASIZE 3FCD 83 DUP4 3FCE 37 CALLDATACOPY 3FCF 01 ADD 3FD0 90 SWAP1 3FD1 50 POP 3FD2 5B JUMPDEST 3FD3 50 POP 3FD4 90 SWAP1 3FD5 50 POP 3FD6 82 DUP3 3FD7 81 DUP2 3FD8 60 PUSH1 0x01 3FDA 83 DUP4 3FDB 51 MLOAD 3FDC 61 PUSH2 0x3fe5 3FDF 91 SWAP2 3FE0 90 SWAP1 3FE1 61 PUSH2 0x5976 3FE4 56 *JUMP // Stack delta = +3 // Outputs[7] // { // @3FCE memory[0x20 + stack[-2]:0x20 + stack[-2] + stack[-1] * 0x20] = msg.data[msg.data.length:msg.data.length + stack[-1] * 0x20] // @3FD4 stack[-3] = stack[-2] // @3FD6 stack[-2] = stack[-5] // @3FD7 stack[-1] = stack[-2] // @3FDF stack[0] = 0x3fe5 // @3FE0 stack[1] = 0x01 // @3FE0 stack[2] = memory[stack[-2]:stack[-2] + 0x20] // } // Block ends with call to 0x5976, returns to 0x3FE5 label_3FE5: // Incoming return from call to 0x5976 at 0x3FE4 // Incoming return from call to 0x5976 at 0x3FE4 // Inputs[3] // { // @3FE6 stack[-2] // @3FE7 memory[stack[-2]:stack[-2] + 0x20] // @3FE8 stack[-1] // } 3FE5 5B JUMPDEST 3FE6 81 DUP2 3FE7 51 MLOAD 3FE8 81 DUP2 3FE9 10 LT 3FEA 61 PUSH2 0x3ff5 3FED 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x3ff5, if stack[-1] < memory[stack[-2]:stack[-2] + 0x20] label_3FEE: // Incoming jump from 0x3FED, if not stack[-1] < memory[stack[-2]:stack[-2] + 0x20] 3FEE 61 PUSH2 0x3ff5 3FF1 61 PUSH2 0x598d 3FF4 56 *JUMP // Stack delta = +1 // Outputs[1] { @3FEE stack[0] = 0x3ff5 } // Block ends with unconditional jump to 0x598d label_3FF5: // Incoming jump from 0x3FED, if stack[-1] < memory[stack[-2]:stack[-2] + 0x20] // Inputs[5] // { // @3FF8 stack[-1] // @3FFC stack[-2] // @3FFD stack[-3] // @4006 stack[-5] // @4007 memory[stack[-5]:stack[-5] + 0x20] // } 3FF5 5B JUMPDEST 3FF6 60 PUSH1 0x20 3FF8 02 MUL 3FF9 60 PUSH1 0x20 3FFB 01 ADD 3FFC 01 ADD 3FFD 81 DUP2 3FFE 81 DUP2 3FFF 52 MSTORE 4000 50 POP 4001 50 POP 4002 60 PUSH1 0x00 4004 60 PUSH1 0x01 4006 83 DUP4 4007 51 MLOAD 4008 61 PUSH2 0x4011 400B 91 SWAP2 400C 90 SWAP1 400D 61 PUSH2 0x5976 4010 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @3FFF memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] = stack[-3] // @4002 stack[-3] = 0x00 // @400B stack[-2] = 0x4011 // @400C stack[0] = memory[stack[-5]:stack[-5] + 0x20] // @400C stack[-1] = 0x01 // } // Block ends with call to 0x5976, returns to 0x4011 label_4011: // Incoming return from call to 0x5976 at 0x4010 // Inputs[2] // { // @4012 stack[-2] // @4012 stack[-1] // } 4011 5B JUMPDEST 4012 90 SWAP1 4013 50 POP 4014 5B JUMPDEST 4015 80 DUP1 4016 15 ISZERO 4017 61 PUSH2 0x3a0d 401A 57 *JUMPI // Stack delta = -1 // Outputs[1] { @4012 stack[-2] = stack[-1] } // Block ends with conditional jump to 0x3a0d, if !stack[-1] label_401B: // Incoming jump from 0x401A, if not !stack[-1] // Inputs[3] // { // @4020 stack[-5] // @4021 stack[-3] // @4027 stack[-1] // } 401B 60 PUSH1 0x00 401D 61 PUSH2 0x4056 4020 86 DUP7 4021 85 DUP6 4022 61 PUSH2 0x402c 4025 60 PUSH1 0x01 4027 86 DUP7 4028 61 PUSH2 0x5976 402B 56 *JUMP // Stack delta = +7 // Outputs[7] // { // @401B stack[0] = 0x00 // @401D stack[1] = 0x4056 // @4020 stack[2] = stack[-5] // @4021 stack[3] = stack[-3] // @4022 stack[4] = 0x402c // @4025 stack[5] = 0x01 // @4027 stack[6] = stack[-1] // } // Block ends with call to 0x5976, returns to 0x402C label_402C: // Incoming return from call to 0x5976 at 0x402B // Incoming return from call to 0x5976 at 0x4370 // Inputs[3] // { // @402D stack[-2] // @402E memory[stack[-2]:stack[-2] + 0x20] // @402F stack[-1] // } 402C 5B JUMPDEST 402D 81 DUP2 402E 51 MLOAD 402F 81 DUP2 4030 10 LT 4031 61 PUSH2 0x403c 4034 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x403c, if stack[-1] < memory[stack[-2]:stack[-2] + 0x20] label_4035: // Incoming jump from 0x4034, if not stack[-1] < memory[stack[-2]:stack[-2] + 0x20] 4035 61 PUSH2 0x403c 4038 61 PUSH2 0x598d 403B 56 *JUMP // Stack delta = +1 // Outputs[1] { @4035 stack[0] = 0x403c } // Block ends with unconditional jump to 0x598d label_403C: // Incoming jump from 0x4034, if stack[-1] < memory[stack[-2]:stack[-2] + 0x20] // Inputs[6] // { // @403F stack[-1] // @4043 stack[-2] // @4044 memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @4045 stack[-8] // @4046 stack[-6] // @4048 memory[stack[-8]:stack[-8] + 0x20] // } 403C 5B JUMPDEST 403D 60 PUSH1 0x20 403F 02 MUL 4040 60 PUSH1 0x20 4042 01 ADD 4043 01 ADD 4044 51 MLOAD 4045 86 DUP7 4046 85 DUP6 4047 81 DUP2 4048 51 MLOAD 4049 81 DUP2 404A 10 LT 404B 61 PUSH2 0x3877 404E 57 *JUMPI // Stack delta = +1 // Outputs[3] // { // @4044 stack[-2] = memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @4045 stack[-1] = stack[-8] // @4046 stack[0] = stack[-6] // } // Block ends with conditional jump to 0x3877, if stack[-6] < memory[stack[-8]:stack[-8] + 0x20] label_404F: // Incoming jump from 0x404E, if not stack[-6] < memory[stack[-8]:stack[-8] + 0x20] 404F 61 PUSH2 0x3877 4052 61 PUSH2 0x598d 4055 56 *JUMP // Stack delta = +1 // Outputs[1] { @404F stack[0] = 0x3877 } // Block ends with unconditional jump to 0x598d label_4056: // Incoming return from call to 0x402C at 0x402B // Inputs[7] // { // @4057 stack[-1] // @4057 stack[-2] // @4077 memory[0x40:0x60] // @408B memory[0x40:0x60] // @4091 msg.gas // @4092 memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x04 + memory[0x40:0x60]) - memory[0x40:0x60]] // @4092 address(0xffffffffffffffffffffffffffffffffffffffff & stack[-1]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x04 + memory[0x40:0x60]) - memory[0x40:0x60]]) // } 4056 5B JUMPDEST 4057 90 SWAP1 4058 50 POP 4059 80 DUP1 405A 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 406F 16 AND 4070 63 PUSH4 0xa1462c19 4075 60 PUSH1 0x40 4077 51 MLOAD 4078 81 DUP2 4079 63 PUSH4 0xffffffff 407E 16 AND 407F 60 PUSH1 0xe0 4081 1B SHL 4082 81 DUP2 4083 52 MSTORE 4084 60 PUSH1 0x04 4086 01 ADD 4087 60 PUSH1 0x20 4089 60 PUSH1 0x40 408B 51 MLOAD 408C 80 DUP1 408D 83 DUP4 408E 03 SUB 408F 81 DUP2 4090 86 DUP7 4091 5A GAS 4092 FA STATICCALL 4093 15 ISZERO 4094 80 DUP1 4095 15 ISZERO 4096 61 PUSH2 0x40a3 4099 57 *JUMPI // Stack delta = +3 // Outputs[7] // { // @4057 stack[-2] = stack[-1] // @406F stack[-1] = 0xffffffffffffffffffffffffffffffffffffffff & stack[-1] // @4070 stack[0] = 0xa1462c19 // @4083 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = (0xffffffff & 0xa1462c19) << 0xe0 // @4086 stack[1] = 0x04 + memory[0x40:0x60] // @4092 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = address(0xffffffffffffffffffffffffffffffffffffffff & stack[-1]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x04 + memory[0x40:0x60]) - memory[0x40:0x60]]) // @4093 stack[2] = !address(0xffffffffffffffffffffffffffffffffffffffff & stack[-1]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x04 + memory[0x40:0x60]) - memory[0x40:0x60]]) // } // Block ends with conditional jump to 0x40a3, if !!address(0xffffffffffffffffffffffffffffffffffffffff & stack[-1]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x04 + memory[0x40:0x60]) - memory[0x40:0x60]]) label_409A: // Incoming jump from 0x4099, if not !!address(0xffffffffffffffffffffffffffffffffffffffff & stack[-1]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x04 + memory[0x40:0x60]) - memory[0x40:0x60]]) // Inputs[4] // { // @409A returndata.length // @409E returndata[0x00:0x00 + returndata.length] // @409F returndata.length // @40A2 memory[0x00:0x00 + returndata.length] // } 409A 3D RETURNDATASIZE 409B 60 PUSH1 0x00 409D 80 DUP1 409E 3E RETURNDATACOPY 409F 3D RETURNDATASIZE 40A0 60 PUSH1 0x00 40A2 FD *REVERT // Stack delta = +0 // Outputs[2] // { // @409E memory[0x00:0x00 + returndata.length] = returndata[0x00:0x00 + returndata.length] // @40A2 revert(memory[0x00:0x00 + returndata.length]); // } // Block terminates label_40A3: // Incoming jump from 0x4099, if !!address(0xffffffffffffffffffffffffffffffffffffffff & stack[-1]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x04 + memory[0x40:0x60]) - memory[0x40:0x60]]) // Inputs[2] // { // @40AA memory[0x40:0x60] // @40AB returndata.length // } 40A3 5B JUMPDEST 40A4 50 POP 40A5 50 POP 40A6 50 POP 40A7 50 POP 40A8 60 PUSH1 0x40 40AA 51 MLOAD 40AB 3D RETURNDATASIZE 40AC 60 PUSH1 0x1f 40AE 19 NOT 40AF 60 PUSH1 0x1f 40B1 82 DUP3 40B2 01 ADD 40B3 16 AND 40B4 82 DUP3 40B5 01 ADD 40B6 80 DUP1 40B7 60 PUSH1 0x40 40B9 52 MSTORE 40BA 50 POP 40BB 81 DUP2 40BC 01 ADD 40BD 90 SWAP1 40BE 61 PUSH2 0x40c7 40C1 91 SWAP2 40C2 90 SWAP1 40C3 61 PUSH2 0x59f2 40C6 56 *JUMP // Stack delta = -1 // Outputs[4] // { // @40B9 memory[0x40:0x60] = memory[0x40:0x60] + (returndata.length + 0x1f & ~0x1f) // @40C1 stack[-4] = 0x40c7 // @40C2 stack[-2] = memory[0x40:0x60] // @40C2 stack[-3] = memory[0x40:0x60] + returndata.length // } // Block ends with unconditional jump to 0x59f2 40C7 5B JUMPDEST 40C8 61 PUSH2 0x412d 40CB 57 *JUMPI 40CC 60 PUSH1 0x40 40CE 51 MLOAD 40CF 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 40F0 81 DUP2 40F1 52 MSTORE 40F2 60 PUSH1 0x20 40F4 60 PUSH1 0x04 40F6 82 DUP3 40F7 01 ADD 40F8 52 MSTORE 40F9 60 PUSH1 0x11 40FB 60 PUSH1 0x24 40FD 82 DUP3 40FE 01 ADD 40FF 52 MSTORE 4100 7F PUSH32 0x7477616d6d206f7574206f662064617465000000000000000000000000000000 4121 60 PUSH1 0x44 4123 82 DUP3 4124 01 ADD 4125 52 MSTORE 4126 60 PUSH1 0x64 4128 01 ADD 4129 61 PUSH2 0x0609 412C 56 *JUMP 412D 5B JUMPDEST 412E 80 DUP1 412F 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 4144 16 AND 4145 63 PUSH4 0x1125f13f 414A 84 DUP5 414B 84 DUP5 414C 81 DUP2 414D 51 MLOAD 414E 81 DUP2 414F 10 LT 4150 61 PUSH2 0x415b 4153 57 *JUMPI 4154 61 PUSH2 0x415b 4157 61 PUSH2 0x598d 415A 56 *JUMP 415B 5B JUMPDEST 415C 60 PUSH1 0x20 415E 02 MUL 415F 60 PUSH1 0x20 4161 01 ADD 4162 01 ADD 4163 51 MLOAD 4164 86 DUP7 4165 60 PUSH1 0x01 4167 86 DUP7 4168 61 PUSH2 0x4171 416B 91 SWAP2 416C 90 SWAP1 416D 61 PUSH2 0x5976 4170 56 *JUMP 4171 5B JUMPDEST 4172 81 DUP2 4173 51 MLOAD 4174 81 DUP2 4175 10 LT 4176 61 PUSH2 0x4181 4179 57 *JUMPI 417A 61 PUSH2 0x4181 417D 61 PUSH2 0x598d 4180 56 *JUMP 4181 5B JUMPDEST 4182 60 PUSH1 0x20 4184 02 MUL 4185 60 PUSH1 0x20 4187 01 ADD 4188 01 ADD 4189 51 MLOAD 418A 60 PUSH1 0x40 418C 51 MLOAD 418D 83 DUP4 418E 63 PUSH4 0xffffffff 4193 16 AND 4194 60 PUSH1 0xe0 4196 1B SHL 4197 81 DUP2 4198 52 MSTORE 4199 60 PUSH1 0x04 419B 01 ADD 419C 61 PUSH2 0x41c5 419F 92 SWAP3 41A0 91 SWAP2 41A1 90 SWAP1 41A2 91 SWAP2 41A3 82 DUP3 41A4 52 MSTORE 41A5 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 41BA 16 AND 41BB 60 PUSH1 0x20 41BD 82 DUP3 41BE 01 ADD 41BF 52 MSTORE 41C0 60 PUSH1 0x40 41C2 01 ADD 41C3 90 SWAP1 41C4 56 *JUMP 41C5 5B JUMPDEST 41C6 60 PUSH1 0x20 41C8 60 PUSH1 0x40 41CA 51 MLOAD 41CB 80 DUP1 41CC 83 DUP4 41CD 03 SUB 41CE 81 DUP2 41CF 86 DUP7 41D0 5A GAS 41D1 FA STATICCALL 41D2 15 ISZERO 41D3 80 DUP1 41D4 15 ISZERO 41D5 61 PUSH2 0x41e2 41D8 57 *JUMPI 41D9 3D RETURNDATASIZE 41DA 60 PUSH1 0x00 41DC 80 DUP1 41DD 3E RETURNDATACOPY 41DE 3D RETURNDATASIZE 41DF 60 PUSH1 0x00 41E1 FD *REVERT 41E2 5B JUMPDEST 41E3 50 POP 41E4 50 POP 41E5 50 POP 41E6 50 POP 41E7 60 PUSH1 0x40 41E9 51 MLOAD 41EA 3D RETURNDATASIZE 41EB 60 PUSH1 0x1f 41ED 19 NOT 41EE 60 PUSH1 0x1f 41F0 82 DUP3 41F1 01 ADD 41F2 16 AND 41F3 82 DUP3 41F4 01 ADD 41F5 80 DUP1 41F6 60 PUSH1 0x40 41F8 52 MSTORE 41F9 50 POP 41FA 81 DUP2 41FB 01 ADD 41FC 90 SWAP1 41FD 61 PUSH2 0x4206 4200 91 SWAP2 4201 90 SWAP1 4202 61 PUSH2 0x59d9 4205 56 *JUMP 4206 5B JUMPDEST 4207 83 DUP4 4208 61 PUSH2 0x4212 420B 60 PUSH1 0x01 420D 85 DUP6 420E 61 PUSH2 0x5976 4211 56 *JUMP 4212 5B JUMPDEST 4213 81 DUP2 4214 51 MLOAD 4215 81 DUP2 4216 10 LT 4217 61 PUSH2 0x4222 421A 57 *JUMPI 421B 61 PUSH2 0x4222 421E 61 PUSH2 0x598d 4221 56 *JUMP 4222 5B JUMPDEST 4223 60 PUSH1 0x20 4225 90 SWAP1 4226 81 DUP2 4227 02 MUL 4228 91 SWAP2 4229 90 SWAP1 422A 91 SWAP2 422B 01 ADD 422C 01 ADD 422D 52 MSTORE 422E 50 POP 422F 80 DUP1 4230 61 PUSH2 0x4238 4233 81 DUP2 4234 61 PUSH2 0x5b47 4237 56 *JUMP 4238 5B JUMPDEST 4239 91 SWAP2 423A 50 POP 423B 50 POP 423C 61 PUSH2 0x4014 423F 56 *JUMP label_4240: // Incoming call from 0x1F64, returns to 0x1F65 // Incoming call from 0x2237, returns to 0x0BF3 // Inputs[2] // { // @4245 stack[-1] // @4246 memory[stack[-1]:stack[-1] + 0x20] // } 4240 5B JUMPDEST 4241 60 PUSH1 0x60 4243 60 PUSH1 0x02 4245 82 DUP3 4246 51 MLOAD 4247 10 LT 4248 15 ISZERO 4249 61 PUSH2 0x42d4 424C 57 *JUMPI // Stack delta = +1 // Outputs[1] { @4241 stack[0] = 0x60 } // Block ends with conditional jump to 0x42d4, if !(memory[stack[-1]:stack[-1] + 0x20] < 0x02) label_424D: // Incoming jump from 0x424C, if not !(memory[stack[-1]:stack[-1] + 0x20] < 0x02) // Inputs[1] { @424F memory[0x40:0x60] } 424D 60 PUSH1 0x40 424F 51 MLOAD 4250 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 4271 81 DUP2 4272 52 MSTORE 4273 60 PUSH1 0x20 4275 60 PUSH1 0x04 4277 82 DUP3 4278 01 ADD 4279 52 MSTORE 427A 60 PUSH1 0x23 427C 60 PUSH1 0x24 427E 82 DUP3 427F 01 ADD 4280 52 MSTORE 4281 7F PUSH32 0x4672617873776170526f757465724c6962726172793a20494e56414c49445f50 42A2 60 PUSH1 0x44 42A4 82 DUP3 42A5 01 ADD 42A6 52 MSTORE 42A7 7F PUSH32 0x4154480000000000000000000000000000000000000000000000000000000000 42C8 60 PUSH1 0x64 42CA 82 DUP3 42CB 01 ADD 42CC 52 MSTORE 42CD 60 PUSH1 0x84 42CF 01 ADD 42D0 61 PUSH2 0x0609 42D3 56 *JUMP // Stack delta = +1 // Outputs[6] // { // @4272 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @4279 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @4280 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x23 // @42A6 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x4672617873776170526f757465724c6962726172793a20494e56414c49445f50 // @42CC memory[memory[0x40:0x60] + 0x64:memory[0x40:0x60] + 0x64 + 0x20] = 0x4154480000000000000000000000000000000000000000000000000000000000 // @42CF stack[0] = 0x84 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_42D4: // Incoming jump from 0x424C, if !(memory[stack[-1]:stack[-1] + 0x20] < 0x02) // Inputs[2] // { // @42D5 stack[-2] // @42D6 memory[stack[-2]:stack[-2] + 0x20] // } 42D4 5B JUMPDEST 42D5 81 DUP2 42D6 51 MLOAD 42D7 67 PUSH8 0xffffffffffffffff 42E0 81 DUP2 42E1 11 GT 42E2 15 ISZERO 42E3 61 PUSH2 0x42ee 42E6 57 *JUMPI // Stack delta = +1 // Outputs[1] { @42D6 stack[0] = memory[stack[-2]:stack[-2] + 0x20] } // Block ends with conditional jump to 0x42ee, if !(memory[stack[-2]:stack[-2] + 0x20] > 0xffffffffffffffff) label_42E7: // Incoming jump from 0x42E6, if not !(memory[stack[-2]:stack[-2] + 0x20] > 0xffffffffffffffff) 42E7 61 PUSH2 0x42ee 42EA 61 PUSH2 0x5575 42ED 56 *JUMP // Stack delta = +1 // Outputs[1] { @42E7 stack[0] = 0x42ee } // Block ends with unconditional jump to 0x5575 label_42EE: // Incoming jump from 0x42E6, if !(memory[stack[-2]:stack[-2] + 0x20] > 0xffffffffffffffff) // Inputs[2] // { // @42F1 memory[0x40:0x60] // @42F2 stack[-1] // } 42EE 5B JUMPDEST 42EF 60 PUSH1 0x40 42F1 51 MLOAD 42F2 90 SWAP1 42F3 80 DUP1 42F4 82 DUP3 42F5 52 MSTORE 42F6 80 DUP1 42F7 60 PUSH1 0x20 42F9 02 MUL 42FA 60 PUSH1 0x20 42FC 01 ADD 42FD 82 DUP3 42FE 01 ADD 42FF 60 PUSH1 0x40 4301 52 MSTORE 4302 80 DUP1 4303 15 ISZERO 4304 61 PUSH2 0x4317 4307 57 *JUMPI // Stack delta = +1 // Outputs[4] // { // @42F2 stack[-1] = memory[0x40:0x60] // @42F2 stack[0] = stack[-1] // @42F5 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = stack[-1] // @4301 memory[0x40:0x60] = memory[0x40:0x60] + 0x20 + 0x20 * stack[-1] // } // Block ends with conditional jump to 0x4317, if !stack[-1] label_4308: // Incoming jump from 0x4307, if not !stack[-1] // Inputs[7] // { // @4308 stack[-2] // @430E stack[-1] // @4311 msg.data.length // @4313 msg.data[msg.data.length:msg.data.length + stack[-1] * 0x20] // @4319 stack[-3] // @431B stack[-5] // @4320 memory[stack[-2]:stack[-2] + 0x20] // } 4308 81 DUP2 4309 60 PUSH1 0x20 430B 01 ADD 430C 60 PUSH1 0x20 430E 82 DUP3 430F 02 MUL 4310 80 DUP1 4311 36 CALLDATASIZE 4312 83 DUP4 4313 37 CALLDATACOPY 4314 01 ADD 4315 90 SWAP1 4316 50 POP 4317 5B JUMPDEST 4318 50 POP 4319 90 SWAP1 431A 50 POP 431B 82 DUP3 431C 81 DUP2 431D 60 PUSH1 0x01 431F 83 DUP4 4320 51 MLOAD 4321 61 PUSH2 0x432a 4324 91 SWAP2 4325 90 SWAP1 4326 61 PUSH2 0x5976 4329 56 *JUMP // Stack delta = +3 // Outputs[7] // { // @4313 memory[0x20 + stack[-2]:0x20 + stack[-2] + stack[-1] * 0x20] = msg.data[msg.data.length:msg.data.length + stack[-1] * 0x20] // @4319 stack[-3] = stack[-2] // @431B stack[-2] = stack[-5] // @431C stack[-1] = stack[-2] // @4324 stack[0] = 0x432a // @4325 stack[1] = 0x01 // @4325 stack[2] = memory[stack[-2]:stack[-2] + 0x20] // } // Block ends with call to 0x5976, returns to 0x432A label_432A: // Incoming return from call to 0x5976 at 0x4329 // Incoming return from call to 0x5976 at 0x4329 // Inputs[3] // { // @432B stack[-2] // @432C memory[stack[-2]:stack[-2] + 0x20] // @432D stack[-1] // } 432A 5B JUMPDEST 432B 81 DUP2 432C 51 MLOAD 432D 81 DUP2 432E 10 LT 432F 61 PUSH2 0x433a 4332 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x433a, if stack[-1] < memory[stack[-2]:stack[-2] + 0x20] label_4333: // Incoming jump from 0x4332, if not stack[-1] < memory[stack[-2]:stack[-2] + 0x20] 4333 61 PUSH2 0x433a 4336 61 PUSH2 0x598d 4339 56 *JUMP // Stack delta = +1 // Outputs[1] { @4333 stack[0] = 0x433a } // Block ends with unconditional jump to 0x598d label_433A: // Incoming jump from 0x4332, if stack[-1] < memory[stack[-2]:stack[-2] + 0x20] // Inputs[5] // { // @433D stack[-1] // @4341 stack[-2] // @4342 stack[-3] // @434B stack[-5] // @434C memory[stack[-5]:stack[-5] + 0x20] // } 433A 5B JUMPDEST 433B 60 PUSH1 0x20 433D 02 MUL 433E 60 PUSH1 0x20 4340 01 ADD 4341 01 ADD 4342 81 DUP2 4343 81 DUP2 4344 52 MSTORE 4345 50 POP 4346 50 POP 4347 60 PUSH1 0x00 4349 60 PUSH1 0x01 434B 83 DUP4 434C 51 MLOAD 434D 61 PUSH2 0x4356 4350 91 SWAP2 4351 90 SWAP1 4352 61 PUSH2 0x5976 4355 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @4344 memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] = stack[-3] // @4347 stack[-3] = 0x00 // @4350 stack[-2] = 0x4356 // @4351 stack[0] = memory[stack[-5]:stack[-5] + 0x20] // @4351 stack[-1] = 0x01 // } // Block ends with call to 0x5976, returns to 0x4356 label_4356: // Incoming return from call to 0x5976 at 0x4355 // Inputs[2] // { // @4357 stack[-1] // @4357 stack[-2] // } 4356 5B JUMPDEST 4357 90 SWAP1 4358 50 POP 4359 5B JUMPDEST 435A 80 DUP1 435B 15 ISZERO 435C 61 PUSH2 0x3a0d 435F 57 *JUMPI // Stack delta = -1 // Outputs[1] { @4357 stack[-2] = stack[-1] } // Block ends with conditional jump to 0x3a0d, if !stack[-1] label_4360: // Incoming jump from 0x435F, if not !stack[-1] // Incoming jump from 0x435F, if not !stack[-1] // Inputs[3] // { // @4365 stack[-5] // @4366 stack[-3] // @436C stack[-1] // } 4360 60 PUSH1 0x00 4362 61 PUSH2 0x4371 4365 86 DUP7 4366 85 DUP6 4367 61 PUSH2 0x402c 436A 60 PUSH1 0x01 436C 86 DUP7 436D 61 PUSH2 0x5976 4370 56 *JUMP // Stack delta = +7 // Outputs[7] // { // @4360 stack[0] = 0x00 // @4362 stack[1] = 0x4371 // @4365 stack[2] = stack[-5] // @4366 stack[3] = stack[-3] // @4367 stack[4] = 0x402c // @436A stack[5] = 0x01 // @436C stack[6] = stack[-1] // } // Block ends with call to 0x5976, returns to 0x402C label_4371: // Incoming return from call to 0x402C at 0x4370 // Inputs[6] // { // @4374 memory[0x40:0x60] // @4398 block.timestamp // @439E stack[-1] // @439F stack[-2] // @43C6 memory[0x40:0x60] // @43CF address(stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // } 4371 5B JUMPDEST 4372 60 PUSH1 0x40 4374 51 MLOAD 4375 7F PUSH32 0x2e0ae37500000000000000000000000000000000000000000000000000000000 4396 81 DUP2 4397 52 MSTORE 4398 42 TIMESTAMP 4399 60 PUSH1 0x04 439B 82 DUP3 439C 01 ADD 439D 52 MSTORE 439E 90 SWAP1 439F 91 SWAP2 43A0 50 POP 43A1 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 43B6 82 DUP3 43B7 16 AND 43B8 90 SWAP1 43B9 63 PUSH4 0x2e0ae375 43BE 90 SWAP1 43BF 60 PUSH1 0x24 43C1 01 ADD 43C2 60 PUSH1 0x00 43C4 60 PUSH1 0x40 43C6 51 MLOAD 43C7 80 DUP1 43C8 83 DUP4 43C9 03 SUB 43CA 81 DUP2 43CB 60 PUSH1 0x00 43CD 87 DUP8 43CE 80 DUP1 43CF 3B EXTCODESIZE 43D0 15 ISZERO 43D1 80 DUP1 43D2 15 ISZERO 43D3 61 PUSH2 0x43db 43D6 57 *JUMPI // Stack delta = +9 // Outputs[13] // { // @4397 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x2e0ae37500000000000000000000000000000000000000000000000000000000 // @439D memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = block.timestamp // @439F stack[-2] = stack[-1] // @43B8 stack[-1] = stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff // @43BE stack[0] = 0x2e0ae375 // @43C1 stack[1] = 0x24 + memory[0x40:0x60] // @43C2 stack[2] = 0x00 // @43C6 stack[3] = memory[0x40:0x60] // @43C9 stack[4] = (0x24 + memory[0x40:0x60]) - memory[0x40:0x60] // @43CA stack[5] = memory[0x40:0x60] // @43CB stack[6] = 0x00 // @43CD stack[7] = stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff // @43D0 stack[8] = !address(stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // } // Block ends with conditional jump to 0x43db, if !!address(stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff).code.length label_43D7: // Incoming jump from 0x43D6, if not !!address(stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Inputs[1] { @43DA memory[0x00:0x00] } 43D7 60 PUSH1 0x00 43D9 80 DUP1 43DA FD *REVERT // Stack delta = +0 // Outputs[1] { @43DA revert(memory[0x00:0x00]); } // Block terminates label_43DB: // Incoming jump from 0x43D6, if !!address(stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Inputs[9] // { // @43DD msg.gas // @43DE memory[stack[-4]:stack[-4] + stack[-5]] // @43DE stack[-7] // @43DE stack[-4] // @43DE stack[-2] // @43DE address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // @43DE stack[-3] // @43DE stack[-6] // @43DE stack[-5] // } 43DB 5B JUMPDEST 43DC 50 POP 43DD 5A GAS 43DE F1 CALL 43DF 15 ISZERO 43E0 80 DUP1 43E1 15 ISZERO 43E2 61 PUSH2 0x43ef 43E5 57 *JUMPI // Stack delta = -6 // Outputs[2] // { // @43DE memory[stack[-6]:stack[-6] + stack[-7]] = address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // @43DF stack[-7] = !address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // } // Block ends with conditional jump to 0x43ef, if !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) label_43E6: // Incoming jump from 0x43E5, if not !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // Inputs[4] // { // @43E6 returndata.length // @43EA returndata[0x00:0x00 + returndata.length] // @43EB returndata.length // @43EE memory[0x00:0x00 + returndata.length] // } 43E6 3D RETURNDATASIZE 43E7 60 PUSH1 0x00 43E9 80 DUP1 43EA 3E RETURNDATACOPY 43EB 3D RETURNDATASIZE 43EC 60 PUSH1 0x00 43EE FD *REVERT // Stack delta = +0 // Outputs[2] // { // @43EA memory[0x00:0x00 + returndata.length] = returndata[0x00:0x00 + returndata.length] // @43EE revert(memory[0x00:0x00 + returndata.length]); // } // Block terminates label_43EF: // Incoming jump from 0x43E5, if !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // Inputs[4] // { // @43F4 stack[-5] // @4410 stack[-7] // @4411 stack[-6] // @4413 memory[stack[-7]:stack[-7] + 0x20] // } 43EF 5B JUMPDEST 43F0 50 POP 43F1 50 POP 43F2 50 POP 43F3 50 POP 43F4 80 DUP1 43F5 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 440A 16 AND 440B 63 PUSH4 0x1125f13f 4410 84 DUP5 4411 84 DUP5 4412 81 DUP2 4413 51 MLOAD 4414 81 DUP2 4415 10 LT 4416 61 PUSH2 0x4421 4419 57 *JUMPI // Stack delta = +0 // Outputs[4] // { // @440A stack[-4] = 0xffffffffffffffffffffffffffffffffffffffff & stack[-5] // @440B stack[-3] = 0x1125f13f // @4410 stack[-2] = stack[-7] // @4411 stack[-1] = stack[-6] // } // Block ends with conditional jump to 0x4421, if stack[-6] < memory[stack[-7]:stack[-7] + 0x20] label_441A: // Incoming jump from 0x4419, if not stack[-6] < memory[stack[-7]:stack[-7] + 0x20] 441A 61 PUSH2 0x4421 441D 61 PUSH2 0x598d 4420 56 *JUMP // Stack delta = +1 // Outputs[1] { @441A stack[0] = 0x4421 } // Block ends with unconditional jump to 0x598d label_4421: // Incoming jump from 0x4419, if stack[-6] < memory[stack[-7]:stack[-7] + 0x20] // Inputs[5] // { // @4424 stack[-1] // @4428 stack[-2] // @4429 memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @442A stack[-8] // @442D stack[-6] // } 4421 5B JUMPDEST 4422 60 PUSH1 0x20 4424 02 MUL 4425 60 PUSH1 0x20 4427 01 ADD 4428 01 ADD 4429 51 MLOAD 442A 86 DUP7 442B 60 PUSH1 0x01 442D 86 DUP7 442E 61 PUSH2 0x4437 4431 91 SWAP2 4432 90 SWAP1 4433 61 PUSH2 0x5976 4436 56 *JUMP // Stack delta = +3 // Outputs[5] // { // @4429 stack[-2] = memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @442A stack[-1] = stack[-8] // @4431 stack[0] = 0x4437 // @4432 stack[1] = 0x01 // @4432 stack[2] = stack[-6] // } // Block ends with call to 0x5976, returns to 0x4437 label_4437: // Incoming return from call to 0x5976 at 0x4436 // Inputs[3] // { // @4438 stack[-2] // @4439 memory[stack[-2]:stack[-2] + 0x20] // @443A stack[-1] // } 4437 5B JUMPDEST 4438 81 DUP2 4439 51 MLOAD 443A 81 DUP2 443B 10 LT 443C 61 PUSH2 0x4447 443F 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x4447, if stack[-1] < memory[stack[-2]:stack[-2] + 0x20] label_4440: // Incoming jump from 0x443F, if not stack[-1] < memory[stack[-2]:stack[-2] + 0x20] 4440 61 PUSH2 0x4447 4443 61 PUSH2 0x598d 4446 56 *JUMP // Stack delta = +1 // Outputs[1] { @4440 stack[0] = 0x4447 } // Block ends with unconditional jump to 0x598d label_4447: // Incoming jump from 0x443F, if stack[-1] < memory[stack[-2]:stack[-2] + 0x20] // Inputs[6] // { // @444A stack[-1] // @444E stack[-2] // @444F memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @4452 memory[0x40:0x60] // @4453 stack[-4] // @4465 stack[-3] // } 4447 5B JUMPDEST 4448 60 PUSH1 0x20 444A 02 MUL 444B 60 PUSH1 0x20 444D 01 ADD 444E 01 ADD 444F 51 MLOAD 4450 60 PUSH1 0x40 4452 51 MLOAD 4453 83 DUP4 4454 63 PUSH4 0xffffffff 4459 16 AND 445A 60 PUSH1 0xe0 445C 1B SHL 445D 81 DUP2 445E 52 MSTORE 445F 60 PUSH1 0x04 4461 01 ADD 4462 61 PUSH2 0x448b 4465 92 SWAP3 4466 91 SWAP2 4467 90 SWAP1 4468 91 SWAP2 4469 82 DUP3 446A 52 MSTORE 446B 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 4480 16 AND 4481 60 PUSH1 0x20 4483 82 DUP3 4484 01 ADD 4485 52 MSTORE 4486 60 PUSH1 0x40 4488 01 ADD 4489 90 SWAP1 448A 56 *JUMP // Stack delta = -2 // Outputs[4] // { // @445E memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = (0xffffffff & stack[-4]) << 0xe0 // @446A memory[0x04 + memory[0x40:0x60]:0x04 + memory[0x40:0x60] + 0x20] = stack[-3] // @4485 memory[0x04 + memory[0x40:0x60] + 0x20:0x04 + memory[0x40:0x60] + 0x20 + 0x20] = 0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @4489 stack[-3] = 0x40 + 0x04 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x448b label_448B: // Incoming jump from 0x448A // Inputs[6] // { // @4490 memory[0x40:0x60] // @4492 stack[-1] // @4495 stack[-3] // @4496 msg.gas // @4497 memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]] // @4497 address(stack[-3]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) // } 448B 5B JUMPDEST 448C 60 PUSH1 0x20 448E 60 PUSH1 0x40 4490 51 MLOAD 4491 80 DUP1 4492 83 DUP4 4493 03 SUB 4494 81 DUP2 4495 86 DUP7 4496 5A GAS 4497 FA STATICCALL 4498 15 ISZERO 4499 80 DUP1 449A 15 ISZERO 449B 61 PUSH2 0x44a8 449E 57 *JUMPI // Stack delta = +1 // Outputs[2] // { // @4497 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = address(stack[-3]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) // @4498 stack[0] = !address(stack[-3]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) // } // Block ends with conditional jump to 0x44a8, if !!address(stack[-3]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) label_449F: // Incoming jump from 0x449E, if not !!address(stack[-3]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) // Inputs[4] // { // @449F returndata.length // @44A3 returndata[0x00:0x00 + returndata.length] // @44A4 returndata.length // @44A7 memory[0x00:0x00 + returndata.length] // } 449F 3D RETURNDATASIZE 44A0 60 PUSH1 0x00 44A2 80 DUP1 44A3 3E RETURNDATACOPY 44A4 3D RETURNDATASIZE 44A5 60 PUSH1 0x00 44A7 FD *REVERT // Stack delta = +0 // Outputs[2] // { // @44A3 memory[0x00:0x00 + returndata.length] = returndata[0x00:0x00 + returndata.length] // @44A7 revert(memory[0x00:0x00 + returndata.length]); // } // Block terminates label_44A8: // Incoming jump from 0x449E, if !!address(stack[-3]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) // Inputs[2] // { // @44AF memory[0x40:0x60] // @44B0 returndata.length // } 44A8 5B JUMPDEST 44A9 50 POP 44AA 50 POP 44AB 50 POP 44AC 50 POP 44AD 60 PUSH1 0x40 44AF 51 MLOAD 44B0 3D RETURNDATASIZE 44B1 60 PUSH1 0x1f 44B3 19 NOT 44B4 60 PUSH1 0x1f 44B6 82 DUP3 44B7 01 ADD 44B8 16 AND 44B9 82 DUP3 44BA 01 ADD 44BB 80 DUP1 44BC 60 PUSH1 0x40 44BE 52 MSTORE 44BF 50 POP 44C0 81 DUP2 44C1 01 ADD 44C2 90 SWAP1 44C3 61 PUSH2 0x44cc 44C6 91 SWAP2 44C7 90 SWAP1 44C8 61 PUSH2 0x59d9 44CB 56 *JUMP // Stack delta = -1 // Outputs[4] // { // @44BE memory[0x40:0x60] = memory[0x40:0x60] + (returndata.length + 0x1f & ~0x1f) // @44C6 stack[-4] = 0x44cc // @44C7 stack[-2] = memory[0x40:0x60] // @44C7 stack[-3] = memory[0x40:0x60] + returndata.length // } // Block ends with call to 0x59d9, returns to 0x44CC label_44CC: // Incoming return from call to 0x59D9 at 0x44CB // Inputs[2] // { // @44CD stack[-4] // @44D3 stack[-3] // } 44CC 5B JUMPDEST 44CD 83 DUP4 44CE 61 PUSH2 0x44d8 44D1 60 PUSH1 0x01 44D3 85 DUP6 44D4 61 PUSH2 0x5976 44D7 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @44CD stack[0] = stack[-4] // @44CE stack[1] = 0x44d8 // @44D1 stack[2] = 0x01 // @44D3 stack[3] = stack[-3] // } // Block ends with call to 0x5976, returns to 0x44D8 label_44D8: // Incoming return from call to 0x5976 at 0x44D7 // Inputs[3] // { // @44D9 stack[-2] // @44DA memory[stack[-2]:stack[-2] + 0x20] // @44DB stack[-1] // } 44D8 5B JUMPDEST 44D9 81 DUP2 44DA 51 MLOAD 44DB 81 DUP2 44DC 10 LT 44DD 61 PUSH2 0x44e8 44E0 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x44e8, if stack[-1] < memory[stack[-2]:stack[-2] + 0x20] label_44E1: // Incoming jump from 0x44E0, if not stack[-1] < memory[stack[-2]:stack[-2] + 0x20] 44E1 61 PUSH2 0x44e8 44E4 61 PUSH2 0x598d 44E7 56 *JUMP // Stack delta = +1 // Outputs[1] { @44E1 stack[0] = 0x44e8 } // Block ends with unconditional jump to 0x598d label_44E8: // Incoming jump from 0x44E0, if stack[-1] < memory[stack[-2]:stack[-2] + 0x20] // Inputs[4] // { // @44EB stack[-1] // @44EE stack[-2] // @44F3 stack[-3] // @44F5 stack[-5] // } 44E8 5B JUMPDEST 44E9 60 PUSH1 0x20 44EB 90 SWAP1 44EC 81 DUP2 44ED 02 MUL 44EE 91 SWAP2 44EF 90 SWAP1 44F0 91 SWAP2 44F1 01 ADD 44F2 01 ADD 44F3 52 MSTORE 44F4 50 POP 44F5 80 DUP1 44F6 61 PUSH2 0x44fe 44F9 81 DUP2 44FA 61 PUSH2 0x5b47 44FD 56 *JUMP // Stack delta = -1 // Outputs[4] // { // @44F3 memory[0x20 * stack[-1] + stack[-2] + 0x20:0x20 * stack[-1] + stack[-2] + 0x20 + 0x20] = stack[-3] // @44F5 stack[-4] = stack[-5] // @44F6 stack[-3] = 0x44fe // @44F9 stack[-2] = stack[-5] // } // Block ends with call to 0x5b47, returns to 0x44FE label_44FE: // Incoming return from call to 0x5B47 at 0x44FD // Inputs[2] // { // @44FF stack[-1] // @44FF stack[-3] // } 44FE 5B JUMPDEST 44FF 91 SWAP2 4500 50 POP 4501 50 POP 4502 61 PUSH2 0x4359 4505 56 *JUMP // Stack delta = -2 // Outputs[1] { @44FF stack[-3] = stack[-1] } // Block ends with unconditional jump to 0x4359 4506 5B JUMPDEST 4507 60 PUSH1 0x00 4509 5B JUMPDEST 450A 60 PUSH1 0x01 450C 83 DUP4 450D 51 MLOAD 450E 61 PUSH2 0x4517 4511 91 SWAP2 4512 90 SWAP1 4513 61 PUSH2 0x5976 4516 56 *JUMP 4517 5B JUMPDEST 4518 81 DUP2 4519 10 LT 451A 15 ISZERO 451B 61 PUSH2 0x3722 451E 57 *JUMPI 451F 60 PUSH1 0x00 4521 80 DUP1 4522 84 DUP5 4523 83 DUP4 4524 81 DUP2 4525 51 MLOAD 4526 81 DUP2 4527 10 LT 4528 61 PUSH2 0x4533 452B 57 *JUMPI 452C 61 PUSH2 0x4533 452F 61 PUSH2 0x598d 4532 56 *JUMP 4533 5B JUMPDEST 4534 60 PUSH1 0x20 4536 02 MUL 4537 60 PUSH1 0x20 4539 01 ADD 453A 01 ADD 453B 51 MLOAD 453C 85 DUP6 453D 84 DUP5 453E 60 PUSH1 0x01 4540 61 PUSH2 0x4549 4543 91 SWAP2 4544 90 SWAP1 4545 61 PUSH2 0x5a7b 4548 56 *JUMP 4549 5B JUMPDEST 454A 81 DUP2 454B 51 MLOAD 454C 81 DUP2 454D 10 LT 454E 61 PUSH2 0x4559 4551 57 *JUMPI 4552 61 PUSH2 0x4559 4555 61 PUSH2 0x598d 4558 56 *JUMP 4559 5B JUMPDEST 455A 60 PUSH1 0x20 455C 02 MUL 455D 60 PUSH1 0x20 455F 01 ADD 4560 01 ADD 4561 51 MLOAD 4562 91 SWAP2 4563 50 POP 4564 91 SWAP2 4565 50 POP 4566 60 PUSH1 0x00 4568 61 PUSH2 0x4571 456B 83 DUP4 456C 83 DUP4 456D 61 PUSH2 0x49b7 4570 56 *JUMP 4571 5B JUMPDEST 4572 50 POP 4573 90 SWAP1 4574 50 POP 4575 60 PUSH1 0x00 4577 61 PUSH2 0x45a1 457A 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 459B 85 DUP6 459C 85 DUP6 459D 61 PUSH2 0x3a15 45A0 56 *JUMP 45A1 5B JUMPDEST 45A2 90 SWAP1 45A3 50 POP 45A4 60 PUSH1 0x00 45A6 80 DUP1 45A7 60 PUSH1 0x00 45A9 80 DUP1 45AA 60 PUSH1 0x00 45AC 80 DUP1 45AD 61 PUSH2 0x45d7 45B0 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 45D1 8B DUP12 45D2 8B DUP12 45D3 61 PUSH2 0x51c8 45D6 56 *JUMP 45D7 5B JUMPDEST 45D8 60 PUSH1 0x40 45DA 51 MLOAD 45DB 7F PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 45FC 81 DUP2 45FD 52 MSTORE 45FE 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 4613 8C DUP13 4614 81 DUP2 4615 16 AND 4616 60 PUSH1 0x04 4618 83 DUP4 4619 01 ADD 461A 52 MSTORE 461B 94 SWAP5 461C 98 SWAP9 461D 50 POP 461E 92 SWAP3 461F 96 SWAP7 4620 50 POP 4621 90 SWAP1 4622 94 SWAP5 4623 50 POP 4624 92 SWAP3 4625 50 POP 4626 83 DUP4 4627 91 SWAP2 4628 86 DUP7 4629 91 SWAP2 462A 90 SWAP1 462B 8D DUP14 462C 16 AND 462D 90 SWAP1 462E 63 PUSH4 0x70a08231 4633 90 SWAP1 4634 60 PUSH1 0x24 4636 01 ADD 4637 60 PUSH1 0x20 4639 60 PUSH1 0x40 463B 51 MLOAD 463C 80 DUP1 463D 83 DUP4 463E 03 SUB 463F 81 DUP2 4640 86 DUP7 4641 5A GAS 4642 FA STATICCALL 4643 15 ISZERO 4644 80 DUP1 4645 15 ISZERO 4646 61 PUSH2 0x4653 4649 57 *JUMPI 464A 3D RETURNDATASIZE 464B 60 PUSH1 0x00 464D 80 DUP1 464E 3E RETURNDATACOPY 464F 3D RETURNDATASIZE 4650 60 PUSH1 0x00 4652 FD *REVERT 4653 5B JUMPDEST 4654 50 POP 4655 50 POP 4656 50 POP 4657 50 POP 4658 60 PUSH1 0x40 465A 51 MLOAD 465B 3D RETURNDATASIZE 465C 60 PUSH1 0x1f 465E 19 NOT 465F 60 PUSH1 0x1f 4661 82 DUP3 4662 01 ADD 4663 16 AND 4664 82 DUP3 4665 01 ADD 4666 80 DUP1 4667 60 PUSH1 0x40 4669 52 MSTORE 466A 50 POP 466B 81 DUP2 466C 01 ADD 466D 90 SWAP1 466E 61 PUSH2 0x4677 4671 91 SWAP2 4672 90 SWAP1 4673 61 PUSH2 0x59d9 4676 56 *JUMP 4677 5B JUMPDEST 4678 61 PUSH2 0x4681 467B 91 SWAP2 467C 90 SWAP1 467D 61 PUSH2 0x5976 4680 56 *JUMP 4681 5B JUMPDEST 4682 61 PUSH2 0x468b 4685 91 SWAP2 4686 90 SWAP1 4687 61 PUSH2 0x5976 468A 56 *JUMP 468B 5B JUMPDEST 468C 60 PUSH1 0x40 468E 51 MLOAD 468F 7F PUSH32 0xf140a35a00000000000000000000000000000000000000000000000000000000 46B0 81 DUP2 46B1 52 MSTORE 46B2 60 PUSH1 0x04 46B4 81 DUP2 46B5 01 ADD 46B6 82 DUP3 46B7 90 SWAP1 46B8 52 MSTORE 46B9 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 46CE 8C DUP13 46CF 81 DUP2 46D0 16 AND 46D1 60 PUSH1 0x24 46D3 83 DUP4 46D4 01 ADD 46D5 52 MSTORE 46D6 91 SWAP2 46D7 97 SWAP8 46D8 50 POP 46D9 90 SWAP1 46DA 88 DUP9 46DB 16 AND 46DC 90 SWAP1 46DD 63 PUSH4 0xf140a35a 46E2 90 SWAP1 46E3 60 PUSH1 0x44 46E5 01 ADD 46E6 60 PUSH1 0x20 46E8 60 PUSH1 0x40 46EA 51 MLOAD 46EB 80 DUP1 46EC 83 DUP4 46ED 03 SUB 46EE 81 DUP2 46EF 86 DUP7 46F0 5A GAS 46F1 FA STATICCALL 46F2 15 ISZERO 46F3 80 DUP1 46F4 15 ISZERO 46F5 61 PUSH2 0x4702 46F8 57 *JUMPI 46F9 3D RETURNDATASIZE 46FA 60 PUSH1 0x00 46FC 80 DUP1 46FD 3E RETURNDATACOPY 46FE 3D RETURNDATASIZE 46FF 60 PUSH1 0x00 4701 FD *REVERT 4702 5B JUMPDEST 4703 50 POP 4704 50 POP 4705 50 POP 4706 50 POP 4707 60 PUSH1 0x40 4709 51 MLOAD 470A 3D RETURNDATASIZE 470B 60 PUSH1 0x1f 470D 19 NOT 470E 60 PUSH1 0x1f 4710 82 DUP3 4711 01 ADD 4712 16 AND 4713 82 DUP3 4714 01 ADD 4715 80 DUP1 4716 60 PUSH1 0x40 4718 52 MSTORE 4719 50 POP 471A 81 DUP2 471B 01 ADD 471C 90 SWAP1 471D 61 PUSH2 0x4726 4720 91 SWAP2 4721 90 SWAP1 4722 61 PUSH2 0x59d9 4725 56 *JUMP 4726 5B JUMPDEST 4727 94 SWAP5 4728 50 POP 4729 50 POP 472A 50 POP 472B 50 POP 472C 50 POP 472D 60 PUSH1 0x00 472F 80 DUP1 4730 85 DUP6 4731 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 4746 16 AND 4747 88 DUP9 4748 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 475D 16 AND 475E 14 EQ 475F 61 PUSH2 0x476a 4762 57 *JUMPI 4763 82 DUP3 4764 60 PUSH1 0x00 4766 61 PUSH2 0x476e 4769 56 *JUMP 476A 5B JUMPDEST 476B 60 PUSH1 0x00 476D 83 DUP4 476E 5B JUMPDEST 476F 91 SWAP2 4770 50 POP 4771 91 SWAP2 4772 50 POP 4773 60 PUSH1 0x00 4775 60 PUSH1 0x02 4777 8C DUP13 4778 51 MLOAD 4779 61 PUSH2 0x4782 477C 91 SWAP2 477D 90 SWAP1 477E 61 PUSH2 0x5976 4781 56 *JUMP 4782 5B JUMPDEST 4783 8A DUP11 4784 10 LT 4785 61 PUSH2 0x478e 4788 57 *JUMPI 4789 8A DUP11 478A 61 PUSH2 0x47bf 478D 56 *JUMP 478E 5B JUMPDEST 478F 61 PUSH2 0x47bf 4792 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 47B3 89 DUP10 47B4 8E DUP15 47B5 61 PUSH2 0x3867 47B8 8E DUP15 47B9 60 PUSH1 0x02 47BB 61 PUSH2 0x5a7b 47BE 56 *JUMP 47BF 5B JUMPDEST 47C0 60 PUSH1 0x40 47C2 80 DUP1 47C3 51 MLOAD 47C4 60 PUSH1 0x00 47C6 81 DUP2 47C7 52 MSTORE 47C8 60 PUSH1 0x20 47CA 81 DUP2 47CB 01 ADD 47CC 91 SWAP2 47CD 82 DUP3 47CE 90 SWAP1 47CF 52 MSTORE 47D0 7F PUSH32 0x022c0d9f00000000000000000000000000000000000000000000000000000000 47F1 90 SWAP1 47F2 91 SWAP2 47F3 52 MSTORE 47F4 90 SWAP1 47F5 91 SWAP2 47F6 50 POP 47F7 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 480C 87 DUP8 480D 16 AND 480E 90 SWAP1 480F 63 PUSH4 0x022c0d9f 4814 90 SWAP1 4815 61 PUSH2 0x4827 4818 90 SWAP1 4819 86 DUP7 481A 90 SWAP1 481B 86 DUP7 481C 90 SWAP1 481D 86 DUP7 481E 90 SWAP1 481F 60 PUSH1 0x24 4821 81 DUP2 4822 01 ADD 4823 61 PUSH2 0x5acb 4826 56 *JUMP 4827 5B JUMPDEST 4828 60 PUSH1 0x00 482A 60 PUSH1 0x40 482C 51 MLOAD 482D 80 DUP1 482E 83 DUP4 482F 03 SUB 4830 81 DUP2 4831 60 PUSH1 0x00 4833 87 DUP8 4834 80 DUP1 4835 3B EXTCODESIZE 4836 15 ISZERO 4837 80 DUP1 4838 15 ISZERO 4839 61 PUSH2 0x4841 483C 57 *JUMPI 483D 60 PUSH1 0x00 483F 80 DUP1 4840 FD *REVERT 4841 5B JUMPDEST 4842 50 POP 4843 5A GAS 4844 F1 CALL 4845 15 ISZERO 4846 80 DUP1 4847 15 ISZERO 4848 61 PUSH2 0x4855 484B 57 *JUMPI 484C 3D RETURNDATASIZE 484D 60 PUSH1 0x00 484F 80 DUP1 4850 3E RETURNDATACOPY 4851 3D RETURNDATASIZE 4852 60 PUSH1 0x00 4854 FD *REVERT 4855 5B JUMPDEST 4856 50 POP 4857 50 POP 4858 50 POP 4859 50 POP 485A 50 POP 485B 50 POP 485C 50 POP 485D 50 POP 485E 50 POP 485F 50 POP 4860 50 POP 4861 50 POP 4862 50 POP 4863 80 DUP1 4864 80 DUP1 4865 61 PUSH2 0x486d 4868 90 SWAP1 4869 61 PUSH2 0x5a93 486C 56 *JUMP 486D 5B JUMPDEST 486E 91 SWAP2 486F 50 POP 4870 50 POP 4871 61 PUSH2 0x4509 4874 56 *JUMP label_4875: // Incoming call from 0x201D, returns to 0x201E // Inputs[1] { @4879 stack[-3] } 4875 5B JUMPDEST 4876 60 PUSH1 0x00 4878 80 DUP1 4879 84 DUP5 487A 11 GT 487B 61 PUSH2 0x4906 487E 57 *JUMPI // Stack delta = +1 // Outputs[1] { @4876 stack[0] = 0x00 } // Block ends with conditional jump to 0x4906, if stack[-3] > 0x00 label_487F: // Incoming jump from 0x487E, if not stack[-3] > 0x00 // Inputs[1] { @4881 memory[0x40:0x60] } 487F 60 PUSH1 0x40 4881 51 MLOAD 4882 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 48A3 81 DUP2 48A4 52 MSTORE 48A5 60 PUSH1 0x20 48A7 60 PUSH1 0x04 48A9 82 DUP3 48AA 01 ADD 48AB 52 MSTORE 48AC 60 PUSH1 0x2a 48AE 60 PUSH1 0x24 48B0 82 DUP3 48B1 01 ADD 48B2 52 MSTORE 48B3 7F PUSH32 0x4672617873776170526f757465724c6962726172793a20494e53554646494349 48D4 60 PUSH1 0x44 48D6 82 DUP3 48D7 01 ADD 48D8 52 MSTORE 48D9 7F PUSH32 0x454e545f414d4f554e5400000000000000000000000000000000000000000000 48FA 60 PUSH1 0x64 48FC 82 DUP3 48FD 01 ADD 48FE 52 MSTORE 48FF 60 PUSH1 0x84 4901 01 ADD 4902 61 PUSH2 0x0609 4905 56 *JUMP // Stack delta = +1 // Outputs[6] // { // @48A4 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @48AB memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @48B2 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x2a // @48D8 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x4672617873776170526f757465724c6962726172793a20494e53554646494349 // @48FE memory[memory[0x40:0x60] + 0x64:memory[0x40:0x60] + 0x64 + 0x20] = 0x454e545f414d4f554e5400000000000000000000000000000000000000000000 // @4901 stack[0] = 0x84 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_4906: // Incoming jump from 0x487E, if stack[-3] > 0x00 // Inputs[1] { @4909 stack[-3] } 4906 5B JUMPDEST 4907 60 PUSH1 0x00 4909 83 DUP4 490A 11 GT 490B 80 DUP1 490C 15 ISZERO 490D 61 PUSH2 0x4916 4910 57 *JUMPI // Stack delta = +1 // Outputs[1] { @490A stack[0] = stack[-3] > 0x00 } // Block ends with conditional jump to 0x4916, if !(stack[-3] > 0x00) label_4911: // Incoming jump from 0x4910, if not !(stack[-3] > 0x00) // Inputs[1] { @4914 stack[-3] } 4911 50 POP 4912 60 PUSH1 0x00 4914 82 DUP3 4915 11 GT 4916 5B JUMPDEST 4917 61 PUSH2 0x49a2 491A 57 *JUMPI // Stack delta = -1 // Block ends with conditional jump to 0x49a2, if stack[-3] > 0x00 label_491B: // Incoming jump from 0x491A, if not stack[-1] // Incoming jump from 0x491A, if not stack[-3] > 0x00 // Inputs[1] { @491D memory[0x40:0x60] } 491B 60 PUSH1 0x40 491D 51 MLOAD 491E 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 493F 81 DUP2 4940 52 MSTORE 4941 60 PUSH1 0x20 4943 60 PUSH1 0x04 4945 82 DUP3 4946 01 ADD 4947 52 MSTORE 4948 60 PUSH1 0x2d 494A 60 PUSH1 0x24 494C 82 DUP3 494D 01 ADD 494E 52 MSTORE 494F 7F PUSH32 0x4672617873776170526f757465724c6962726172793a20494e53554646494349 4970 60 PUSH1 0x44 4972 82 DUP3 4973 01 ADD 4974 52 MSTORE 4975 7F PUSH32 0x454e545f4c495155494449545900000000000000000000000000000000000000 4996 60 PUSH1 0x64 4998 82 DUP3 4999 01 ADD 499A 52 MSTORE 499B 60 PUSH1 0x84 499D 01 ADD 499E 61 PUSH2 0x0609 49A1 56 *JUMP // Stack delta = +1 // Outputs[6] // { // @4940 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @4947 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @494E memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x2d // @4974 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x4672617873776170526f757465724c6962726172793a20494e53554646494349 // @499A memory[memory[0x40:0x60] + 0x64:memory[0x40:0x60] + 0x64 + 0x20] = 0x454e545f4c495155494449545900000000000000000000000000000000000000 // @499D stack[0] = 0x84 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_49A2: // Incoming jump from 0x491A, if stack[-1] // Incoming jump from 0x491A, if stack[-3] > 0x00 // Inputs[3] // { // @49A3 stack[-3] // @49A7 stack[-2] // @49A8 stack[-4] // } 49A2 5B JUMPDEST 49A3 82 DUP3 49A4 61 PUSH2 0x49ad 49A7 83 DUP4 49A8 86 DUP7 49A9 61 PUSH2 0x5b7c 49AC 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @49A3 stack[0] = stack[-3] // @49A4 stack[1] = 0x49ad // @49A7 stack[2] = stack[-2] // @49A8 stack[3] = stack[-4] // } // Block ends with call to 0x5b7c, returns to 0x49AD label_49AD: // Incoming return from call to 0x5B7C at 0x49AC // Inputs[2] // { // @49B1 stack[-2] // @49B2 stack[-1] // } 49AD 5B JUMPDEST 49AE 61 PUSH2 0x201e 49B1 91 SWAP2 49B2 90 SWAP1 49B3 61 PUSH2 0x5bb9 49B6 56 *JUMP // Stack delta = +1 // Outputs[3] // { // @49B1 stack[-2] = 0x201e // @49B2 stack[-1] = stack[-2] // @49B2 stack[0] = stack[-1] // } // Block ends with call to 0x5bb9, returns to 0x201E label_49B7: // Incoming call from 0x3A23, returns to 0x3A24 // Inputs[2] // { // @49BB stack[-1] // @49D2 stack[-2] // } 49B7 5B JUMPDEST 49B8 60 PUSH1 0x00 49BA 80 DUP1 49BB 82 DUP3 49BC 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 49D1 16 AND 49D2 84 DUP5 49D3 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 49E8 16 AND 49E9 03 SUB 49EA 61 PUSH2 0x4a75 49ED 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @49B8 stack[0] = 0x00 // @49BA stack[1] = 0x00 // } // Block ends with conditional jump to 0x4a75, if (0xffffffffffffffffffffffffffffffffffffffff & stack[-2]) - (0xffffffffffffffffffffffffffffffffffffffff & stack[-1]) label_49EE: // Incoming jump from 0x49ED, if not (0xffffffffffffffffffffffffffffffffffffffff & stack[-2]) - (0xffffffffffffffffffffffffffffffffffffffff & stack[-1]) // Inputs[1] { @49F0 memory[0x40:0x60] } 49EE 60 PUSH1 0x40 49F0 51 MLOAD 49F1 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 4A12 81 DUP2 4A13 52 MSTORE 4A14 60 PUSH1 0x20 4A16 60 PUSH1 0x04 4A18 82 DUP3 4A19 01 ADD 4A1A 52 MSTORE 4A1B 60 PUSH1 0x2a 4A1D 60 PUSH1 0x24 4A1F 82 DUP3 4A20 01 ADD 4A21 52 MSTORE 4A22 7F PUSH32 0x4672617873776170526f757465724c6962726172793a204944454e544943414c 4A43 60 PUSH1 0x44 4A45 82 DUP3 4A46 01 ADD 4A47 52 MSTORE 4A48 7F PUSH32 0x5f41444452455353455300000000000000000000000000000000000000000000 4A69 60 PUSH1 0x64 4A6B 82 DUP3 4A6C 01 ADD 4A6D 52 MSTORE 4A6E 60 PUSH1 0x84 4A70 01 ADD 4A71 61 PUSH2 0x0609 4A74 56 *JUMP // Stack delta = +1 // Outputs[6] // { // @4A13 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @4A1A memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @4A21 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x2a // @4A47 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x4672617873776170526f757465724c6962726172793a204944454e544943414c // @4A6D memory[memory[0x40:0x60] + 0x64:memory[0x40:0x60] + 0x64 + 0x20] = 0x5f41444452455353455300000000000000000000000000000000000000000000 // @4A70 stack[0] = 0x84 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_4A75: // Incoming jump from 0x49ED, if (0xffffffffffffffffffffffffffffffffffffffff & stack[-2]) - (0xffffffffffffffffffffffffffffffffffffffff & stack[-1]) // Inputs[2] // { // @4A76 stack[-3] // @4A8D stack[-4] // } 4A75 5B JUMPDEST 4A76 82 DUP3 4A77 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 4A8C 16 AND 4A8D 84 DUP5 4A8E 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 4AA3 16 AND 4AA4 10 LT 4AA5 61 PUSH2 0x4aaf 4AA8 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x4aaf, if 0xffffffffffffffffffffffffffffffffffffffff & stack[-4] < 0xffffffffffffffffffffffffffffffffffffffff & stack[-3] label_4AA9: // Incoming jump from 0x4AA8, if not 0xffffffffffffffffffffffffffffffffffffffff & stack[-4] < 0xffffffffffffffffffffffffffffffffffffffff & stack[-3] // Inputs[2] // { // @4AA9 stack[-3] // @4AAA stack[-4] // } 4AA9 82 DUP3 4AAA 84 DUP5 4AAB 61 PUSH2 0x4ab2 4AAE 56 *JUMP // Stack delta = +2 // Outputs[2] // { // @4AA9 stack[0] = stack[-3] // @4AAA stack[1] = stack[-4] // } // Block ends with unconditional jump to 0x4ab2 label_4AAF: // Incoming jump from 0x4AA8, if 0xffffffffffffffffffffffffffffffffffffffff & stack[-4] < 0xffffffffffffffffffffffffffffffffffffffff & stack[-3] // Inputs[4] // { // @4AB0 stack[-4] // @4AB1 stack[-3] // @4AB4 stack[-2] // @4AB6 stack[-1] // } 4AAF 5B JUMPDEST 4AB0 83 DUP4 4AB1 83 DUP4 4AB2 5B JUMPDEST 4AB3 90 SWAP1 4AB4 92 SWAP3 4AB5 50 POP 4AB6 90 SWAP1 4AB7 50 POP 4AB8 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 4ACD 82 DUP3 4ACE 16 AND 4ACF 61 PUSH2 0x4b5a 4AD2 57 *JUMPI // Stack delta = +0 // Outputs[2] // { // @4AB4 stack[-2] = stack[-4] // @4AB6 stack[-1] = stack[-3] // } // Block ends with conditional jump to 0x4b5a, if stack[-4] & 0xffffffffffffffffffffffffffffffffffffffff label_4AD3: // Incoming jump from 0x4AD2, if not stack[-4] & 0xffffffffffffffffffffffffffffffffffffffff // Incoming jump from 0x4AD2, if not stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff // Inputs[1] { @4AD5 memory[0x40:0x60] } 4AD3 60 PUSH1 0x40 4AD5 51 MLOAD 4AD6 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 4AF7 81 DUP2 4AF8 52 MSTORE 4AF9 60 PUSH1 0x20 4AFB 60 PUSH1 0x04 4AFD 82 DUP3 4AFE 01 ADD 4AFF 52 MSTORE 4B00 60 PUSH1 0x23 4B02 60 PUSH1 0x24 4B04 82 DUP3 4B05 01 ADD 4B06 52 MSTORE 4B07 7F PUSH32 0x4672617873776170526f757465724c6962726172793a205a45524f5f41444452 4B28 60 PUSH1 0x44 4B2A 82 DUP3 4B2B 01 ADD 4B2C 52 MSTORE 4B2D 7F PUSH32 0x4553530000000000000000000000000000000000000000000000000000000000 4B4E 60 PUSH1 0x64 4B50 82 DUP3 4B51 01 ADD 4B52 52 MSTORE 4B53 60 PUSH1 0x84 4B55 01 ADD 4B56 61 PUSH2 0x0609 4B59 56 *JUMP // Stack delta = +1 // Outputs[6] // { // @4AF8 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @4AFF memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @4B06 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x23 // @4B2C memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x4672617873776170526f757465724c6962726172793a205a45524f5f41444452 // @4B52 memory[memory[0x40:0x60] + 0x64:memory[0x40:0x60] + 0x64 + 0x20] = 0x4553530000000000000000000000000000000000000000000000000000000000 // @4B55 stack[0] = 0x84 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_4B5A: // Incoming jump from 0x4AD2, if stack[-4] & 0xffffffffffffffffffffffffffffffffffffffff // Incoming jump from 0x54B9, if !(stack[-3] + (stack[-1] << 0x05) + 0x20 > stack[-4]) // Incoming jump from 0x4AD2, if stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff // Inputs[5] // { // @4B5B stack[-1] // @4B5B stack[-4] // @4B5D stack[-2] // @4B5D stack[-5] // @4B5E stack[-3] // } 4B5A 5B JUMPDEST 4B5B 92 SWAP3 4B5C 50 POP 4B5D 92 SWAP3 4B5E 90 SWAP1 4B5F 50 POP 4B60 56 *JUMP // Stack delta = -3 // Outputs[2] // { // @4B5B stack[-4] = stack[-1] // @4B5D stack[-5] = stack[-2] // } // Block ends with unconditional jump to stack[-5] label_4B61: // Incoming call from 0x2A2C, returns to 0x0BF3 // Inputs[2] // { // @4B66 stack[-1] // @4B67 memory[stack[-1]:stack[-1] + 0x20] // } 4B61 5B JUMPDEST 4B62 60 PUSH1 0x60 4B64 60 PUSH1 0x02 4B66 82 DUP3 4B67 51 MLOAD 4B68 10 LT 4B69 15 ISZERO 4B6A 61 PUSH2 0x4bf5 4B6D 57 *JUMPI // Stack delta = +1 // Outputs[1] { @4B62 stack[0] = 0x60 } // Block ends with conditional jump to 0x4bf5, if !(memory[stack[-1]:stack[-1] + 0x20] < 0x02) label_4B6E: // Incoming jump from 0x4B6D, if not !(memory[stack[-1]:stack[-1] + 0x20] < 0x02) // Inputs[1] { @4B70 memory[0x40:0x60] } 4B6E 60 PUSH1 0x40 4B70 51 MLOAD 4B71 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 4B92 81 DUP2 4B93 52 MSTORE 4B94 60 PUSH1 0x20 4B96 60 PUSH1 0x04 4B98 82 DUP3 4B99 01 ADD 4B9A 52 MSTORE 4B9B 60 PUSH1 0x23 4B9D 60 PUSH1 0x24 4B9F 82 DUP3 4BA0 01 ADD 4BA1 52 MSTORE 4BA2 7F PUSH32 0x4672617873776170526f757465724c6962726172793a20494e56414c49445f50 4BC3 60 PUSH1 0x44 4BC5 82 DUP3 4BC6 01 ADD 4BC7 52 MSTORE 4BC8 7F PUSH32 0x4154480000000000000000000000000000000000000000000000000000000000 4BE9 60 PUSH1 0x64 4BEB 82 DUP3 4BEC 01 ADD 4BED 52 MSTORE 4BEE 60 PUSH1 0x84 4BF0 01 ADD 4BF1 61 PUSH2 0x0609 4BF4 56 *JUMP // Stack delta = +1 // Outputs[6] // { // @4B93 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @4B9A memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @4BA1 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x23 // @4BC7 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x4672617873776170526f757465724c6962726172793a20494e56414c49445f50 // @4BED memory[memory[0x40:0x60] + 0x64:memory[0x40:0x60] + 0x64 + 0x20] = 0x4154480000000000000000000000000000000000000000000000000000000000 // @4BF0 stack[0] = 0x84 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0609 label_4BF5: // Incoming jump from 0x4B6D, if !(memory[stack[-1]:stack[-1] + 0x20] < 0x02) // Inputs[2] // { // @4BF6 stack[-2] // @4BF7 memory[stack[-2]:stack[-2] + 0x20] // } 4BF5 5B JUMPDEST 4BF6 81 DUP2 4BF7 51 MLOAD 4BF8 67 PUSH8 0xffffffffffffffff 4C01 81 DUP2 4C02 11 GT 4C03 15 ISZERO 4C04 61 PUSH2 0x4c0f 4C07 57 *JUMPI // Stack delta = +1 // Outputs[1] { @4BF7 stack[0] = memory[stack[-2]:stack[-2] + 0x20] } // Block ends with conditional jump to 0x4c0f, if !(memory[stack[-2]:stack[-2] + 0x20] > 0xffffffffffffffff) label_4C08: // Incoming jump from 0x4C07, if not !(memory[stack[-2]:stack[-2] + 0x20] > 0xffffffffffffffff) 4C08 61 PUSH2 0x4c0f 4C0B 61 PUSH2 0x5575 4C0E 56 *JUMP // Stack delta = +1 // Outputs[1] { @4C08 stack[0] = 0x4c0f } // Block ends with unconditional jump to 0x5575 label_4C0F: // Incoming jump from 0x4C07, if !(memory[stack[-2]:stack[-2] + 0x20] > 0xffffffffffffffff) // Inputs[2] // { // @4C12 memory[0x40:0x60] // @4C13 stack[-1] // } 4C0F 5B JUMPDEST 4C10 60 PUSH1 0x40 4C12 51 MLOAD 4C13 90 SWAP1 4C14 80 DUP1 4C15 82 DUP3 4C16 52 MSTORE 4C17 80 DUP1 4C18 60 PUSH1 0x20 4C1A 02 MUL 4C1B 60 PUSH1 0x20 4C1D 01 ADD 4C1E 82 DUP3 4C1F 01 ADD 4C20 60 PUSH1 0x40 4C22 52 MSTORE 4C23 80 DUP1 4C24 15 ISZERO 4C25 61 PUSH2 0x4c38 4C28 57 *JUMPI // Stack delta = +1 // Outputs[4] // { // @4C13 stack[-1] = memory[0x40:0x60] // @4C13 stack[0] = stack[-1] // @4C16 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = stack[-1] // @4C22 memory[0x40:0x60] = memory[0x40:0x60] + 0x20 + 0x20 * stack[-1] // } // Block ends with conditional jump to 0x4c38, if !stack[-1] label_4C29: // Incoming jump from 0x4C28, if not !stack[-1] // Inputs[7] // { // @4C29 stack[-2] // @4C2F stack[-1] // @4C32 msg.data.length // @4C34 msg.data[msg.data.length:msg.data.length + stack[-1] * 0x20] // @4C3A stack[-3] // @4C3C stack[-5] // @4C41 memory[stack[-2]:stack[-2] + 0x20] // } 4C29 81 DUP2 4C2A 60 PUSH1 0x20 4C2C 01 ADD 4C2D 60 PUSH1 0x20 4C2F 82 DUP3 4C30 02 MUL 4C31 80 DUP1 4C32 36 CALLDATASIZE 4C33 83 DUP4 4C34 37 CALLDATACOPY 4C35 01 ADD 4C36 90 SWAP1 4C37 50 POP 4C38 5B JUMPDEST 4C39 50 POP 4C3A 90 SWAP1 4C3B 50 POP 4C3C 82 DUP3 4C3D 81 DUP2 4C3E 60 PUSH1 0x00 4C40 81 DUP2 4C41 51 MLOAD 4C42 81 DUP2 4C43 10 LT 4C44 61 PUSH2 0x4c4f 4C47 57 *JUMPI // Stack delta = +1 // Outputs[5] // { // @4C34 memory[0x20 + stack[-2]:0x20 + stack[-2] + stack[-1] * 0x20] = msg.data[msg.data.length:msg.data.length + stack[-1] * 0x20] // @4C3A stack[-3] = stack[-2] // @4C3C stack[-2] = stack[-5] // @4C3D stack[-1] = stack[-2] // @4C3E stack[0] = 0x00 // } // Block ends with conditional jump to 0x4c4f, if 0x00 < memory[stack[-2]:stack[-2] + 0x20] label_4C48: // Incoming jump from 0x4C47, if not 0x00 < memory[stack[-2]:stack[-2] + 0x20] // Incoming jump from 0x4C47, if not 0x00 < memory[stack[-2]:stack[-2] + 0x20] 4C48 61 PUSH2 0x4c4f 4C4B 61 PUSH2 0x598d 4C4E 56 *JUMP // Stack delta = +1 // Outputs[1] { @4C48 stack[0] = 0x4c4f } // Block ends with unconditional jump to 0x598d label_4C4F: // Incoming jump from 0x4C47, if 0x00 < memory[stack[-2]:stack[-2] + 0x20] // Incoming jump from 0x4C47, if 0x00 < memory[stack[-2]:stack[-2] + 0x20] // Inputs[5] // { // @4C52 stack[-1] // @4C56 stack[-2] // @4C57 stack[-3] // @4C61 stack[-5] // @4C62 memory[stack[-5]:stack[-5] + 0x20] // } 4C4F 5B JUMPDEST 4C50 60 PUSH1 0x20 4C52 02 MUL 4C53 60 PUSH1 0x20 4C55 01 ADD 4C56 01 ADD 4C57 81 DUP2 4C58 81 DUP2 4C59 52 MSTORE 4C5A 50 POP 4C5B 50 POP 4C5C 60 PUSH1 0x00 4C5E 5B JUMPDEST 4C5F 60 PUSH1 0x01 4C61 83 DUP4 4C62 51 MLOAD 4C63 61 PUSH2 0x4c6c 4C66 91 SWAP2 4C67 90 SWAP1 4C68 61 PUSH2 0x5976 4C6B 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @4C59 memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] = stack[-3] // @4C5C stack[-3] = 0x00 // @4C66 stack[-2] = 0x4c6c // @4C67 stack[0] = memory[stack[-5]:stack[-5] + 0x20] // @4C67 stack[-1] = 0x01 // } // Block ends with call to 0x5976, returns to 0x4C6C label_4C6C: // Incoming return from call to 0x5976 at 0x4C6B // Inputs[2] // { // @4C6D stack[-2] // @4C6E stack[-1] // } 4C6C 5B JUMPDEST 4C6D 81 DUP2 4C6E 10 LT 4C6F 15 ISZERO 4C70 61 PUSH2 0x3a0d 4C73 57 *JUMPI // Stack delta = -1 // Block ends with conditional jump to 0x3a0d, if !(stack[-2] < stack[-1]) label_4C74: // Incoming jump from 0x4C73, if not !(stack[-2] < stack[-1]) // Inputs[4] // { // @4C79 stack[-5] // @4C7A stack[-3] // @4C7B stack[-1] // @4C7D memory[stack[-3]:stack[-3] + 0x20] // } 4C74 60 PUSH1 0x00 4C76 61 PUSH2 0x4c8b 4C79 86 DUP7 4C7A 85 DUP6 4C7B 84 DUP5 4C7C 81 DUP2 4C7D 51 MLOAD 4C7E 81 DUP2 4C7F 10 LT 4C80 61 PUSH2 0x3851 4C83 57 *JUMPI // Stack delta = +5 // Outputs[5] // { // @4C74 stack[0] = 0x00 // @4C76 stack[1] = 0x4c8b // @4C79 stack[2] = stack[-5] // @4C7A stack[3] = stack[-3] // @4C7B stack[4] = stack[-1] // } // Block ends with conditional call to 0x3851, returns to 0x4C8B, if stack[-1] < memory[stack[-3]:stack[-3] + 0x20] label_4C84: // Incoming jump from 0x4C83, if not stack[-1] < memory[stack[-3]:stack[-3] + 0x20] 4C84 61 PUSH2 0x3851 4C87 61 PUSH2 0x598d 4C8A 56 *JUMP // Stack delta = +1 // Outputs[1] { @4C84 stack[0] = 0x3851 } // Block ends with unconditional jump to 0x598d label_4C8B: // Incoming return from call to 0x3851 at 0x4C83 // Inputs[7] // { // @4C8C stack[-2] // @4C8C stack[-1] // @4CAC memory[0x40:0x60] // @4CC0 memory[0x40:0x60] // @4CC6 msg.gas // @4CC7 memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x04 + memory[0x40:0x60]) - memory[0x40:0x60]] // @4CC7 address(0xffffffffffffffffffffffffffffffffffffffff & stack[-1]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x04 + memory[0x40:0x60]) - memory[0x40:0x60]]) // } 4C8B 5B JUMPDEST 4C8C 90 SWAP1 4C8D 50 POP 4C8E 80 DUP1 4C8F 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 4CA4 16 AND 4CA5 63 PUSH4 0xa1462c19 4CAA 60 PUSH1 0x40 4CAC 51 MLOAD 4CAD 81 DUP2 4CAE 63 PUSH4 0xffffffff 4CB3 16 AND 4CB4 60 PUSH1 0xe0 4CB6 1B SHL 4CB7 81 DUP2 4CB8 52 MSTORE 4CB9 60 PUSH1 0x04 4CBB 01 ADD 4CBC 60 PUSH1 0x20 4CBE 60 PUSH1 0x40 4CC0 51 MLOAD 4CC1 80 DUP1 4CC2 83 DUP4 4CC3 03 SUB 4CC4 81 DUP2 4CC5 86 DUP7 4CC6 5A GAS 4CC7 FA STATICCALL 4CC8 15 ISZERO 4CC9 80 DUP1 4CCA 15 ISZERO 4CCB 61 PUSH2 0x4cd8 4CCE 57 *JUMPI // Stack delta = +3 // Outputs[7] // { // @4C8C stack[-2] = stack[-1] // @4CA4 stack[-1] = 0xffffffffffffffffffffffffffffffffffffffff & stack[-1] // @4CA5 stack[0] = 0xa1462c19 // @4CB8 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = (0xffffffff & 0xa1462c19) << 0xe0 // @4CBB stack[1] = 0x04 + memory[0x40:0x60] // @4CC7 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = address(0xffffffffffffffffffffffffffffffffffffffff & stack[-1]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x04 + memory[0x40:0x60]) - memory[0x40:0x60]]) // @4CC8 stack[2] = !address(0xffffffffffffffffffffffffffffffffffffffff & stack[-1]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x04 + memory[0x40:0x60]) - memory[0x40:0x60]]) // } // Block ends with conditional jump to 0x4cd8, if !!address(0xffffffffffffffffffffffffffffffffffffffff & stack[-1]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x04 + memory[0x40:0x60]) - memory[0x40:0x60]]) label_4CCF: // Incoming jump from 0x4CCE, if not !!address(0xffffffffffffffffffffffffffffffffffffffff & stack[-1]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x04 + memory[0x40:0x60]) - memory[0x40:0x60]]) // Inputs[4] // { // @4CCF returndata.length // @4CD3 returndata[0x00:0x00 + returndata.length] // @4CD4 returndata.length // @4CD7 memory[0x00:0x00 + returndata.length] // } 4CCF 3D RETURNDATASIZE 4CD0 60 PUSH1 0x00 4CD2 80 DUP1 4CD3 3E RETURNDATACOPY 4CD4 3D RETURNDATASIZE 4CD5 60 PUSH1 0x00 4CD7 FD *REVERT // Stack delta = +0 // Outputs[2] // { // @4CD3 memory[0x00:0x00 + returndata.length] = returndata[0x00:0x00 + returndata.length] // @4CD7 revert(memory[0x00:0x00 + returndata.length]); // } // Block terminates label_4CD8: // Incoming jump from 0x4CCE, if !!address(0xffffffffffffffffffffffffffffffffffffffff & stack[-1]).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x04 + memory[0x40:0x60]) - memory[0x40:0x60]]) // Inputs[2] // { // @4CDF memory[0x40:0x60] // @4CE0 returndata.length // } 4CD8 5B JUMPDEST 4CD9 50 POP 4CDA 50 POP 4CDB 50 POP 4CDC 50 POP 4CDD 60 PUSH1 0x40 4CDF 51 MLOAD 4CE0 3D RETURNDATASIZE 4CE1 60 PUSH1 0x1f 4CE3 19 NOT 4CE4 60 PUSH1 0x1f 4CE6 82 DUP3 4CE7 01 ADD 4CE8 16 AND 4CE9 82 DUP3 4CEA 01 ADD 4CEB 80 DUP1 4CEC 60 PUSH1 0x40 4CEE 52 MSTORE 4CEF 50 POP 4CF0 81 DUP2 4CF1 01 ADD 4CF2 90 SWAP1 4CF3 61 PUSH2 0x4cfc 4CF6 91 SWAP2 4CF7 90 SWAP1 4CF8 61 PUSH2 0x59f2 4CFB 56 *JUMP // Stack delta = -1 // Outputs[4] // { // @4CEE memory[0x40:0x60] = memory[0x40:0x60] + (returndata.length + 0x1f & ~0x1f) // @4CF6 stack[-4] = 0x4cfc // @4CF7 stack[-2] = memory[0x40:0x60] // @4CF7 stack[-3] = memory[0x40:0x60] + returndata.length // } // Block ends with unconditional jump to 0x59f2 4CFC 5B JUMPDEST 4CFD 61 PUSH2 0x4d62 4D00 57 *JUMPI 4D01 60 PUSH1 0x40 4D03 51 MLOAD 4D04 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 4D25 81 DUP2 4D26 52 MSTORE 4D27 60 PUSH1 0x20 4D29 60 PUSH1 0x04 4D2B 82 DUP3 4D2C 01 ADD 4D2D 52 MSTORE 4D2E 60 PUSH1 0x11 4D30 60 PUSH1 0x24 4D32 82 DUP3 4D33 01 ADD 4D34 52 MSTORE 4D35 7F PUSH32 0x7477616d6d206f7574206f662064617465000000000000000000000000000000 4D56 60 PUSH1 0x44 4D58 82 DUP3 4D59 01 ADD 4D5A 52 MSTORE 4D5B 60 PUSH1 0x64 4D5D 01 ADD 4D5E 61 PUSH2 0x0609 4D61 56 *JUMP 4D62 5B JUMPDEST 4D63 80 DUP1 4D64 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 4D79 16 AND 4D7A 63 PUSH4 0xf140a35a 4D7F 84 DUP5 4D80 84 DUP5 4D81 81 DUP2 4D82 51 MLOAD 4D83 81 DUP2 4D84 10 LT 4D85 61 PUSH2 0x4d90 4D88 57 *JUMPI 4D89 61 PUSH2 0x4d90 4D8C 61 PUSH2 0x598d 4D8F 56 *JUMP 4D90 5B JUMPDEST 4D91 60 PUSH1 0x20 4D93 02 MUL 4D94 60 PUSH1 0x20 4D96 01 ADD 4D97 01 ADD 4D98 51 MLOAD 4D99 86 DUP7 4D9A 85 DUP6 4D9B 81 DUP2 4D9C 51 MLOAD 4D9D 81 DUP2 4D9E 10 LT 4D9F 61 PUSH2 0x4daa 4DA2 57 *JUMPI 4DA3 61 PUSH2 0x4daa 4DA6 61 PUSH2 0x598d 4DA9 56 *JUMP 4DAA 5B JUMPDEST 4DAB 60 PUSH1 0x20 4DAD 02 MUL 4DAE 60 PUSH1 0x20 4DB0 01 ADD 4DB1 01 ADD 4DB2 51 MLOAD 4DB3 60 PUSH1 0x40 4DB5 51 MLOAD 4DB6 83 DUP4 4DB7 63 PUSH4 0xffffffff 4DBC 16 AND 4DBD 60 PUSH1 0xe0 4DBF 1B SHL 4DC0 81 DUP2 4DC1 52 MSTORE 4DC2 60 PUSH1 0x04 4DC4 01 ADD 4DC5 61 PUSH2 0x4dee 4DC8 92 SWAP3 4DC9 91 SWAP2 4DCA 90 SWAP1 4DCB 91 SWAP2 4DCC 82 DUP3 4DCD 52 MSTORE 4DCE 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 4DE3 16 AND 4DE4 60 PUSH1 0x20 4DE6 82 DUP3 4DE7 01 ADD 4DE8 52 MSTORE 4DE9 60 PUSH1 0x40 4DEB 01 ADD 4DEC 90 SWAP1 4DED 56 *JUMP 4DEE 5B JUMPDEST 4DEF 60 PUSH1 0x20 4DF1 60 PUSH1 0x40 4DF3 51 MLOAD 4DF4 80 DUP1 4DF5 83 DUP4 4DF6 03 SUB 4DF7 81 DUP2 4DF8 86 DUP7 4DF9 5A GAS 4DFA FA STATICCALL 4DFB 15 ISZERO 4DFC 80 DUP1 4DFD 15 ISZERO 4DFE 61 PUSH2 0x4e0b 4E01 57 *JUMPI 4E02 3D RETURNDATASIZE 4E03 60 PUSH1 0x00 4E05 80 DUP1 4E06 3E RETURNDATACOPY 4E07 3D RETURNDATASIZE 4E08 60 PUSH1 0x00 4E0A FD *REVERT 4E0B 5B JUMPDEST 4E0C 50 POP 4E0D 50 POP 4E0E 50 POP 4E0F 50 POP 4E10 60 PUSH1 0x40 4E12 51 MLOAD 4E13 3D RETURNDATASIZE 4E14 60 PUSH1 0x1f 4E16 19 NOT 4E17 60 PUSH1 0x1f 4E19 82 DUP3 4E1A 01 ADD 4E1B 16 AND 4E1C 82 DUP3 4E1D 01 ADD 4E1E 80 DUP1 4E1F 60 PUSH1 0x40 4E21 52 MSTORE 4E22 50 POP 4E23 81 DUP2 4E24 01 ADD 4E25 90 SWAP1 4E26 61 PUSH2 0x4e2f 4E29 91 SWAP2 4E2A 90 SWAP1 4E2B 61 PUSH2 0x59d9 4E2E 56 *JUMP 4E2F 5B JUMPDEST 4E30 83 DUP4 4E31 61 PUSH2 0x4e3b 4E34 84 DUP5 4E35 60 PUSH1 0x01 4E37 61 PUSH2 0x5a7b 4E3A 56 *JUMP 4E3B 5B JUMPDEST 4E3C 81 DUP2 4E3D 51 MLOAD 4E3E 81 DUP2 4E3F 10 LT 4E40 61 PUSH2 0x4e4b 4E43 57 *JUMPI 4E44 61 PUSH2 0x4e4b 4E47 61 PUSH2 0x598d 4E4A 56 *JUMP 4E4B 5B JUMPDEST 4E4C 60 PUSH1 0x20 4E4E 90 SWAP1 4E4F 81 DUP2 4E50 02 MUL 4E51 91 SWAP2 4E52 90 SWAP1 4E53 91 SWAP2 4E54 01 ADD 4E55 01 ADD 4E56 52 MSTORE 4E57 50 POP 4E58 80 DUP1 4E59 61 PUSH2 0x4e61 4E5C 81 DUP2 4E5D 61 PUSH2 0x5a93 4E60 56 *JUMP 4E61 5B JUMPDEST 4E62 91 SWAP2 4E63 50 POP 4E64 50 POP 4E65 61 PUSH2 0x4c5e 4E68 56 *JUMP label_4E69: // Incoming jump from 0x2D89 // Incoming jump from 0x2BFB // Inputs[7] // { // @4E6C memory[0x40:0x60] // @4EA5 stack[-6] // @4EAD stack[-5] // @4EEE memory[0x40:0x60] // @4EF4 msg.gas // @4EF5 memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x44 + memory[0x40:0x60]) - memory[0x40:0x60]] // @4EF5 address(0xffffffffffffffffffffffffffffffffffffffff & 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x44 + memory[0x40:0x60]) - memory[0x40:0x60]]) // } 4E69 5B JUMPDEST 4E6A 60 PUSH1 0x40 4E6C 51 MLOAD 4E6D 7F PUSH32 0xe6a4390500000000000000000000000000000000000000000000000000000000 4E8E 81 DUP2 4E8F 52 MSTORE 4E90 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 4EA5 87 DUP8 4EA6 81 DUP2 4EA7 16 AND 4EA8 60 PUSH1 0x04 4EAA 83 DUP4 4EAB 01 ADD 4EAC 52 MSTORE 4EAD 86 DUP7 4EAE 81 DUP2 4EAF 16 AND 4EB0 60 PUSH1 0x24 4EB2 83 DUP4 4EB3 01 ADD 4EB4 52 MSTORE 4EB5 60 PUSH1 0x00 4EB7 91 SWAP2 4EB8 82 DUP3 4EB9 91 SWAP2 4EBA 82 DUP3 4EBB 91 SWAP2 4EBC 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 4EDD 90 SWAP1 4EDE 91 SWAP2 4EDF 16 AND 4EE0 90 SWAP1 4EE1 63 PUSH4 0xe6a43905 4EE6 90 SWAP1 4EE7 60 PUSH1 0x44 4EE9 01 ADD 4EEA 60 PUSH1 0x20 4EEC 60 PUSH1 0x40 4EEE 51 MLOAD 4EEF 80 DUP1 4EF0 83 DUP4 4EF1 03 SUB 4EF2 81 DUP2 4EF3 86 DUP7 4EF4 5A GAS 4EF5 FA STATICCALL 4EF6 15 ISZERO 4EF7 80 DUP1 4EF8 15 ISZERO 4EF9 61 PUSH2 0x4f06 4EFC 57 *JUMPI // Stack delta = +7 // Outputs[11] // { // @4E8F memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0xe6a4390500000000000000000000000000000000000000000000000000000000 // @4EAC memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0xffffffffffffffffffffffffffffffffffffffff & stack[-6] // @4EB4 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0xffffffffffffffffffffffffffffffffffffffff & stack[-5] // @4EB7 stack[0] = 0x00 // @4EB9 stack[1] = 0x00 // @4EBB stack[2] = 0x00 // @4EE0 stack[3] = 0xffffffffffffffffffffffffffffffffffffffff & 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f // @4EE6 stack[4] = 0xe6a43905 // @4EE9 stack[5] = 0x44 + memory[0x40:0x60] // @4EF5 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = address(0xffffffffffffffffffffffffffffffffffffffff & 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x44 + memory[0x40:0x60]) - memory[0x40:0x60]]) // @4EF6 stack[6] = !address(0xffffffffffffffffffffffffffffffffffffffff & 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x44 + memory[0x40:0x60]) - memory[0x40:0x60]]) // } // Block ends with conditional jump to 0x4f06, if !!address(0xffffffffffffffffffffffffffffffffffffffff & 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x44 + memory[0x40:0x60]) - memory[0x40:0x60]]) label_4EFD: // Incoming jump from 0x4EFC, if not !!address(0xffffffffffffffffffffffffffffffffffffffff & 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x44 + memory[0x40:0x60]) - memory[0x40:0x60]]) // Inputs[4] // { // @4EFD returndata.length // @4F01 returndata[0x00:0x00 + returndata.length] // @4F02 returndata.length // @4F05 memory[0x00:0x00 + returndata.length] // } 4EFD 3D RETURNDATASIZE 4EFE 60 PUSH1 0x00 4F00 80 DUP1 4F01 3E RETURNDATACOPY 4F02 3D RETURNDATASIZE 4F03 60 PUSH1 0x00 4F05 FD *REVERT // Stack delta = +0 // Outputs[2] // { // @4F01 memory[0x00:0x00 + returndata.length] = returndata[0x00:0x00 + returndata.length] // @4F05 revert(memory[0x00:0x00 + returndata.length]); // } // Block terminates label_4F06: // Incoming jump from 0x4EFC, if !!address(0xffffffffffffffffffffffffffffffffffffffff & 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f).staticcall.gas(msg.gas)(memory[memory[0x40:0x60]:memory[0x40:0x60] + (0x44 + memory[0x40:0x60]) - memory[0x40:0x60]]) // Inputs[2] // { // @4F0D memory[0x40:0x60] // @4F0E returndata.length // } 4F06 5B JUMPDEST 4F07 50 POP 4F08 50 POP 4F09 50 POP 4F0A 50 POP 4F0B 60 PUSH1 0x40 4F0D 51 MLOAD 4F0E 3D RETURNDATASIZE 4F0F 60 PUSH1 0x1f 4F11 19 NOT 4F12 60 PUSH1 0x1f 4F14 82 DUP3 4F15 01 ADD 4F16 16 AND 4F17 82 DUP3 4F18 01 ADD 4F19 80 DUP1 4F1A 60 PUSH1 0x40 4F1C 52 MSTORE 4F1D 50 POP 4F1E 81 DUP2 4F1F 01 ADD 4F20 90 SWAP1 4F21 61 PUSH2 0x4f2a 4F24 91 SWAP2 4F25 90 SWAP1 4F26 61 PUSH2 0x5bf4 4F29 56 *JUMP // Stack delta = -1 // Outputs[4] // { // @4F1C memory[0x40:0x60] = memory[0x40:0x60] + (returndata.length + 0x1f & ~0x1f) // @4F24 stack[-4] = 0x4f2a // @4F25 stack[-2] = memory[0x40:0x60] // @4F25 stack[-3] = memory[0x40:0x60] + returndata.length // } // Block ends with unconditional jump to 0x5bf4 4F2A 5B JUMPDEST 4F2B 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 4F40 16 AND 4F41 03 SUB 4F42 61 PUSH2 0x5001 4F45 57 *JUMPI 4F46 60 PUSH1 0x40 4F48 51 MLOAD 4F49 7F PUSH32 0xc9c6539600000000000000000000000000000000000000000000000000000000 4F6A 81 DUP2 4F6B 52 MSTORE 4F6C 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 4F81 89 DUP10 4F82 81 DUP2 4F83 16 AND 4F84 60 PUSH1 0x04 4F86 83 DUP4 4F87 01 ADD 4F88 52 MSTORE 4F89 88 DUP9 4F8A 81 DUP2 4F8B 16 AND 4F8C 60 PUSH1 0x24 4F8E 83 DUP4 4F8F 01 ADD 4F90 52 MSTORE 4F91 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 4FB2 16 AND 4FB3 90 SWAP1 4FB4 63 PUSH4 0xc9c65396 4FB9 90 SWAP1 4FBA 60 PUSH1 0x44 4FBC 01 ADD 4FBD 60 PUSH1 0x20 4FBF 60 PUSH1 0x40 4FC1 51 MLOAD 4FC2 80 DUP1 4FC3 83 DUP4 4FC4 03 SUB 4FC5 81 DUP2 4FC6 60 PUSH1 0x00 4FC8 87 DUP8 4FC9 5A GAS 4FCA F1 CALL 4FCB 15 ISZERO 4FCC 80 DUP1 4FCD 15 ISZERO 4FCE 61 PUSH2 0x4fdb 4FD1 57 *JUMPI 4FD2 3D RETURNDATASIZE 4FD3 60 PUSH1 0x00 4FD5 80 DUP1 4FD6 3E RETURNDATACOPY 4FD7 3D RETURNDATASIZE 4FD8 60 PUSH1 0x00 4FDA FD *REVERT 4FDB 5B JUMPDEST 4FDC 50 POP 4FDD 50 POP 4FDE 50 POP 4FDF 50 POP 4FE0 60 PUSH1 0x40 4FE2 51 MLOAD 4FE3 3D RETURNDATASIZE 4FE4 60 PUSH1 0x1f 4FE6 19 NOT 4FE7 60 PUSH1 0x1f 4FE9 82 DUP3 4FEA 01 ADD 4FEB 16 AND 4FEC 82 DUP3 4FED 01 ADD 4FEE 80 DUP1 4FEF 60 PUSH1 0x40 4FF1 52 MSTORE 4FF2 50 POP 4FF3 81 DUP2 4FF4 01 ADD 4FF5 90 SWAP1 4FF6 61 PUSH2 0x4fff 4FF9 91 SWAP2 4FFA 90 SWAP1 4FFB 61 PUSH2 0x5bf4 4FFE 56 *JUMP 4FFF 5B JUMPDEST 5000 50 POP 5001 5B JUMPDEST 5002 60 PUSH1 0x00 5004 80 DUP1 5005 61 PUSH2 0x502f 5008 7F PUSH32 0x00000000000000000000000043ec799eadd63848443e2347c49f5f52e8fe0f6f 5029 8B DUP12 502A 8B DUP12 502B 61 PUSH2 0x51c8 502E 56 *JUMP 502F 5B JUMPDEST 5030 50 POP 5031 50 POP 5032 91 SWAP2 5033 50 POP 5034 91 SWAP2 5035 50 POP 5036 81 DUP2 5037 60 PUSH1 0x00 5039 14 EQ 503A 80 DUP1 503B 15 ISZERO 503C 61 PUSH2 0x5043 503F 57 *JUMPI 5040 50 POP 5041 80 DUP1 5042 15 ISZERO 5043 5B JUMPDEST 5044 15 ISZERO 5045 61 PUSH2 0x5053 5048 57 *JUMPI 5049 87 DUP8 504A 93 SWAP4 504B 50 POP 504C 86 DUP7 504D 92 SWAP3 504E 50 POP 504F 61 PUSH2 0x51bb 5052 56 *JUMP 5053 5B JUMPDEST 5054 60 PUSH1 0x00 5056 61 PUSH2 0x5060 5059 89 DUP10 505A 84 DUP5 505B 84 DUP5 505C 61 PUSH2 0x4875 505F 56 *JUMP 5060 5B JUMPDEST 5061 90 SWAP1 5062 50 POP 5063 87 DUP8 5064 81 DUP2 5065 11 GT 5066 61 PUSH2 0x5104 5069 57 *JUMPI 506A 85 DUP6 506B 81 DUP2 506C 10 LT 506D 15 ISZERO 506E 61 PUSH2 0x50f9 5071 57 *JUMPI 5072 60 PUSH1 0x40 5074 51 MLOAD 5075 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 5096 81 DUP2 5097 52 MSTORE 5098 60 PUSH1 0x20 509A 60 PUSH1 0x04 509C 82 DUP3 509D 01 ADD 509E 52 MSTORE 509F 60 PUSH1 0x27 50A1 60 PUSH1 0x24 50A3 82 DUP3 50A4 01 ADD 50A5 52 MSTORE 50A6 7F PUSH32 0x46726178737761705631526f757465723a20494e53554646494349454e545f42 50C7 60 PUSH1 0x44 50C9 82 DUP3 50CA 01 ADD 50CB 52 MSTORE 50CC 7F PUSH32 0x5f414d4f554e5400000000000000000000000000000000000000000000000000 50ED 60 PUSH1 0x64 50EF 82 DUP3 50F0 01 ADD 50F1 52 MSTORE 50F2 60 PUSH1 0x84 50F4 01 ADD 50F5 61 PUSH2 0x0609 50F8 56 *JUMP 50F9 5B JUMPDEST 50FA 88 DUP9 50FB 94 SWAP5 50FC 50 POP 50FD 92 SWAP3 50FE 50 POP 50FF 82 DUP3 5100 61 PUSH2 0x51b9 5103 56 *JUMP 5104 5B JUMPDEST 5105 60 PUSH1 0x00 5107 61 PUSH2 0x5111 510A 89 DUP10 510B 84 DUP5 510C 86 DUP7 510D 61 PUSH2 0x4875 5110 56 *JUMP 5111 5B JUMPDEST 5112 90 SWAP1 5113 50 POP 5114 89 DUP10 5115 81 DUP2 5116 11 GT 5117 15 ISZERO 5118 61 PUSH2 0x5123 511B 57 *JUMPI 511C 61 PUSH2 0x5123 511F 61 PUSH2 0x538b 5122 56 *JUMP 5123 5B JUMPDEST 5124 87 DUP8 5125 81 DUP2 5126 10 LT 5127 15 ISZERO 5128 61 PUSH2 0x51b3 512B 57 *JUMPI 512C 60 PUSH1 0x40 512E 51 MLOAD 512F 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 5150 81 DUP2 5151 52 MSTORE 5152 60 PUSH1 0x20 5154 60 PUSH1 0x04 5156 82 DUP3 5157 01 ADD 5158 52 MSTORE 5159 60 PUSH1 0x27 515B 60 PUSH1 0x24 515D 82 DUP3 515E 01 ADD 515F 52 MSTORE 5160 7F PUSH32 0x46726178737761705631526f757465723a20494e53554646494349454e545f41 5181 60 PUSH1 0x44 5183 82 DUP3 5184 01 ADD 5185 52 MSTORE 5186 7F PUSH32 0x5f414d4f554e5400000000000000000000000000000000000000000000000000 51A7 60 PUSH1 0x64 51A9 82 DUP3 51AA 01 ADD 51AB 52 MSTORE 51AC 60 PUSH1 0x84 51AE 01 ADD 51AF 61 PUSH2 0x0609 51B2 56 *JUMP 51B3 5B JUMPDEST 51B4 94 SWAP5 51B5 50 POP 51B6 87 DUP8 51B7 93 SWAP4 51B8 50 POP 51B9 5B JUMPDEST 51BA 50 POP 51BB 5B JUMPDEST 51BC 50 POP 51BD 50 POP 51BE 96 SWAP7 51BF 50 POP 51C0 96 SWAP7 51C1 94 SWAP5 51C2 50 POP 51C3 50 POP 51C4 50 POP 51C5 50 POP 51C6 50 POP 51C7 56 *JUMP 51C8 5B JUMPDEST 51C9 60 PUSH1 0x00 51CB 80 DUP1 51CC 60 PUSH1 0x00 51CE 80 DUP1 51CF 60 PUSH1 0x00 51D1 61 PUSH2 0x51da 51D4 87 DUP8 51D5 87 DUP8 51D6 61 PUSH2 0x49b7 51D9 56 *JUMP 51DA 5B JUMPDEST 51DB 50 POP 51DC 90 SWAP1 51DD 50 POP 51DE 60 PUSH1 0x00 51E0 61 PUSH2 0x51ea 51E3 89 DUP10 51E4 89 DUP10 51E5 89 DUP10 51E6 61 PUSH2 0x3a15 51E9 56 *JUMP 51EA 5B JUMPDEST 51EB 60 PUSH1 0x40 51ED 51 MLOAD 51EE 7F PUSH32 0x2e0ae37500000000000000000000000000000000000000000000000000000000 520F 81 DUP2 5210 52 MSTORE 5211 42 TIMESTAMP 5212 60 PUSH1 0x04 5214 82 DUP3 5215 01 ADD 5216 52 MSTORE 5217 90 SWAP1 5218 91 SWAP2 5219 50 POP 521A 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 522F 82 DUP3 5230 16 AND 5231 90 SWAP1 5232 63 PUSH4 0x2e0ae375 5237 90 SWAP1 5238 60 PUSH1 0x24 523A 01 ADD 523B 60 PUSH1 0x00 523D 60 PUSH1 0x40 523F 51 MLOAD 5240 80 DUP1 5241 83 DUP4 5242 03 SUB 5243 81 DUP2 5244 60 PUSH1 0x00 5246 87 DUP8 5247 80 DUP1 5248 3B EXTCODESIZE 5249 15 ISZERO 524A 80 DUP1 524B 15 ISZERO 524C 61 PUSH2 0x5254 524F 57 *JUMPI 5250 60 PUSH1 0x00 5252 80 DUP1 5253 FD *REVERT 5254 5B JUMPDEST 5255 50 POP 5256 5A GAS 5257 F1 CALL 5258 15 ISZERO 5259 80 DUP1 525A 15 ISZERO 525B 61 PUSH2 0x5268 525E 57 *JUMPI 525F 3D RETURNDATASIZE 5260 60 PUSH1 0x00 5262 80 DUP1 5263 3E RETURNDATACOPY 5264 3D RETURNDATASIZE 5265 60 PUSH1 0x00 5267 FD *REVERT 5268 5B JUMPDEST 5269 50 POP 526A 50 POP 526B 50 POP 526C 50 POP 526D 60 PUSH1 0x00 526F 80 DUP1 5270 60 PUSH1 0x00 5272 80 DUP1 5273 84 DUP5 5274 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 5289 16 AND 528A 63 PUSH4 0x094cf149 528F 60 PUSH1 0x40 5291 51 MLOAD 5292 81 DUP2 5293 63 PUSH4 0xffffffff 5298 16 AND 5299 60 PUSH1 0xe0 529B 1B SHL 529C 81 DUP2 529D 52 MSTORE 529E 60 PUSH1 0x04 52A0 01 ADD 52A1 60 PUSH1 0xc0 52A3 60 PUSH1 0x40 52A5 51 MLOAD 52A6 80 DUP1 52A7 83 DUP4 52A8 03 SUB 52A9 81 DUP2 52AA 86 DUP7 52AB 5A GAS 52AC FA STATICCALL 52AD 15 ISZERO 52AE 80 DUP1 52AF 15 ISZERO 52B0 61 PUSH2 0x52bd 52B3 57 *JUMPI 52B4 3D RETURNDATASIZE 52B5 60 PUSH1 0x00 52B7 80 DUP1 52B8 3E RETURNDATACOPY 52B9 3D RETURNDATASIZE 52BA 60 PUSH1 0x00 52BC FD *REVERT 52BD 5B JUMPDEST 52BE 50 POP 52BF 50 POP 52C0 50 POP 52C1 50 POP 52C2 60 PUSH1 0x40 52C4 51 MLOAD 52C5 3D RETURNDATASIZE 52C6 60 PUSH1 0x1f 52C8 19 NOT 52C9 60 PUSH1 0x1f 52CB 82 DUP3 52CC 01 ADD 52CD 16 AND 52CE 82 DUP3 52CF 01 ADD 52D0 80 DUP1 52D1 60 PUSH1 0x40 52D3 52 MSTORE 52D4 50 POP 52D5 81 DUP2 52D6 01 ADD 52D7 90 SWAP1 52D8 61 PUSH2 0x52e1 52DB 91 SWAP2 52DC 90 SWAP1 52DD 61 PUSH2 0x5c2f 52E0 56 *JUMP 52E1 5B JUMPDEST 52E2 50 POP 52E3 6D PUSH14 0xffffffffffffffffffffffffffff 52F2 16 AND 52F3 94 SWAP5 52F4 50 POP 52F5 6D PUSH14 0xffffffffffffffffffffffffffff 5304 16 AND 5305 94 SWAP5 5306 50 POP 5307 50 POP 5308 6D PUSH14 0xffffffffffffffffffffffffffff 5317 16 AND 5318 93 SWAP4 5319 50 POP 531A 6D PUSH14 0xffffffffffffffffffffffffffff 5329 16 AND 532A 93 SWAP4 532B 50 POP 532C 85 DUP6 532D 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 5342 16 AND 5343 8C DUP13 5344 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 5359 16 AND 535A 14 EQ 535B 61 PUSH2 0x5367 535E 57 *JUMPI 535F 82 DUP3 5360 84 DUP5 5361 82 DUP3 5362 84 DUP5 5363 61 PUSH2 0x536c 5366 56 *JUMP 5367 5B JUMPDEST 5368 83 DUP4 5369 83 DUP4 536A 83 DUP4 536B 83 DUP4 536C 5B JUMPDEST 536D 80 DUP1 536E 9A SWAP11 536F 50 POP 5370 81 DUP2 5371 9B SWAP12 5372 50 POP 5373 82 DUP3 5374 9C SWAP13 5375 50 POP 5376 83 DUP4 5377 9D SWAP14 5378 50 POP 5379 50 POP 537A 50 POP 537B 50 POP 537C 50 POP 537D 50 POP 537E 50 POP 537F 50 POP 5380 50 POP 5381 50 POP 5382 50 POP 5383 93 SWAP4 5384 50 POP 5385 93 SWAP4 5386 50 POP 5387 93 SWAP4 5388 50 POP 5389 93 SWAP4 538A 56 *JUMP label_538B: // Incoming jump from 0x01EE // Inputs[1] { @53B9 memory[0x00:0x24] } 538B 5B JUMPDEST 538C 7F PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 53AD 60 PUSH1 0x00 53AF 52 MSTORE 53B0 60 PUSH1 0x01 53B2 60 PUSH1 0x04 53B4 52 MSTORE 53B5 60 PUSH1 0x24 53B7 60 PUSH1 0x00 53B9 FD *REVERT // Stack delta = +0 // Outputs[3] // { // @53AF memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000 // @53B4 memory[0x04:0x24] = 0x01 // @53B9 revert(memory[0x00:0x24]); // } // Block terminates label_53BA: // Incoming call from 0x592E, returns to 0x592F // Incoming call from 0x551B, returns to 0x551C // Incoming call from 0x5437, returns to 0x5438 // Incoming call from 0x588E, returns to 0x588F // Incoming call from 0x53E9, returns to 0x53EA // Incoming call from 0x58F2, returns to 0x58F3 // Incoming call from 0x5C10, returns to 0x0BF3 // Incoming call from 0x58B3, returns to 0x58B4 // Incoming call from 0x5786, returns to 0x5787 // Incoming call from 0x56EE, returns to 0x56EF // Incoming call from 0x5847, returns to 0x5848 // Incoming call from 0x59D8, returns to 0x0BF3 // Incoming call from 0x5412, returns to 0x5413 // Incoming call from 0x587E, returns to 0x587F // Incoming call from 0x5713, returns to 0x5714 // Incoming call from 0x5902, returns to 0x5903 // Incoming call from 0x56DE, returns to 0x56DF // Incoming call from 0x57AB, returns to 0x57AC // Inputs[1] { @53D0 stack[-1] } 53BA 5B JUMPDEST 53BB 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 53D0 81 DUP2 53D1 16 AND 53D2 81 DUP2 53D3 14 EQ 53D4 61 PUSH2 0x53dc 53D7 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x53dc, if stack[-1] == stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff label_53D8: // Incoming jump from 0x53D7, if not stack[-1] == stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff // Inputs[1] { @53DB memory[0x00:0x00] } 53D8 60 PUSH1 0x00 53DA 80 DUP1 53DB FD *REVERT // Stack delta = +0 // Outputs[1] { @53DB revert(memory[0x00:0x00]); } // Block terminates label_53DC: // Incoming jump from 0x569C, if stack[-1] == !!stack[-1] // Incoming jump from 0x53D7, if stack[-1] == stack[-1] & 0xffffffffffffffffffffffffffffffffffffffff // Inputs[1] { @53DE stack[-2] } 53DC 5B JUMPDEST 53DD 50 POP 53DE 56 *JUMP // Stack delta = -2 // Block ends with unconditional jump to stack[-2] label_53DF: // Incoming call from 0x5673, returns to 0x5674 // Inputs[2] // { // @53E0 stack[-1] // @53E1 msg.data[stack[-1]:stack[-1] + 0x20] // } 53DF 5B JUMPDEST 53E0 80 DUP1 53E1 35 CALLDATALOAD 53E2 61 PUSH2 0x53ea 53E5 81 DUP2 53E6 61 PUSH2 0x53ba 53E9 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @53E1 stack[0] = msg.data[stack[-1]:stack[-1] + 0x20] // @53E2 stack[1] = 0x53ea // @53E5 stack[2] = msg.data[stack[-1]:stack[-1] + 0x20] // } // Block ends with call to 0x53ba, returns to 0x53EA label_53EA: // Incoming jump from 0x56AD, if msg.data[stack[-1]:stack[-1] + 0x20] == msg.data[stack[-1]:stack[-1] + 0x20] & 0xff // Incoming return from call to 0x53BA at 0x53E9 // Inputs[3] // { // @53EB stack[-3] // @53EB stack[-1] // @53EC stack[-2] // } 53EA 5B JUMPDEST 53EB 91 SWAP2 53EC 90 SWAP1 53ED 50 POP 53EE 56 *JUMP // Stack delta = -2 // Outputs[1] { @53EB stack[-3] = stack[-1] } // Block ends with unconditional jump to stack[-3] label_53EF: // Incoming call from 0x0471, returns to 0x0472 // Incoming call from 0x0210, returns to 0x0211 // Incoming call from 0x0586, returns to 0x0587 // Inputs[2] // { // @53FB stack[-1] // @53FC stack[-2] // } 53EF 5B JUMPDEST 53F0 60 PUSH1 0x00 53F2 80 DUP1 53F3 60 PUSH1 0x00 53F5 80 DUP1 53F6 60 PUSH1 0x00 53F8 80 DUP1 53F9 60 PUSH1 0xc0 53FB 87 DUP8 53FC 89 DUP10 53FD 03 SUB 53FE 12 SLT 53FF 15 ISZERO 5400 61 PUSH2 0x5408 5403 57 *JUMPI // Stack delta = +6 // Outputs[6] // { // @53F0 stack[0] = 0x00 // @53F2 stack[1] = 0x00 // @53F3 stack[2] = 0x00 // @53F5 stack[3] = 0x00 // @53F6 stack[4] = 0x00 // @53F8 stack[5] = 0x00 // } // Block ends with conditional jump to 0x5408, if !(stack[-2] - stack[-1] i< 0xc0) label_5404: // Incoming jump from 0x5403, if not !(stack[-2] - stack[-1] i< 0xc0) // Inputs[1] { @5407 memory[0x00:0x00] } 5404 60 PUSH1 0x00 5406 80 DUP1 5407 FD *REVERT // Stack delta = +0 // Outputs[1] { @5407 revert(memory[0x00:0x00]); } // Block terminates label_5408: // Incoming jump from 0x5403, if !(stack[-2] - stack[-1] i< 0xc0) // Inputs[2] // { // @5409 stack[-7] // @540A msg.data[stack[-7]:stack[-7] + 0x20] // } 5408 5B JUMPDEST 5409 86 DUP7 540A 35 CALLDATALOAD 540B 61 PUSH2 0x5413 540E 81 DUP2 540F 61 PUSH2 0x53ba 5412 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @540A stack[0] = msg.data[stack[-7]:stack[-7] + 0x20] // @540B stack[1] = 0x5413 // @540E stack[2] = msg.data[stack[-7]:stack[-7] + 0x20] // } // Block ends with call to 0x53ba, returns to 0x5413 label_5413: // Incoming return from call to 0x53BA at 0x5412 // Inputs[10] // { // @5414 stack[-1] // @5414 stack[-7] // @5418 stack[-8] // @541A msg.data[stack[-8] + 0x20:stack[-8] + 0x20 + 0x20] // @541B stack[-6] // @5421 msg.data[stack[-8] + 0x40:stack[-8] + 0x40 + 0x20] // @5422 stack[-5] // @5428 msg.data[stack[-8] + 0x60:stack[-8] + 0x60 + 0x20] // @5429 stack[-4] // @542F msg.data[stack[-8] + 0x80:stack[-8] + 0x80 + 0x20] // } 5413 5B JUMPDEST 5414 95 SWAP6 5415 50 POP 5416 60 PUSH1 0x20 5418 87 DUP8 5419 01 ADD 541A 35 CALLDATALOAD 541B 94 SWAP5 541C 50 POP 541D 60 PUSH1 0x40 541F 87 DUP8 5420 01 ADD 5421 35 CALLDATALOAD 5422 93 SWAP4 5423 50 POP 5424 60 PUSH1 0x60 5426 87 DUP8 5427 01 ADD 5428 35 CALLDATALOAD 5429 92 SWAP3 542A 50 POP 542B 60 PUSH1 0x80 542D 87 DUP8 542E 01 ADD 542F 35 CALLDATALOAD 5430 61 PUSH2 0x5438 5433 81 DUP2 5434 61 PUSH2 0x53ba 5437 56 *JUMP // Stack delta = +2 // Outputs[7] // { // @5414 stack[-7] = stack[-1] // @541B stack[-6] = msg.data[stack[-8] + 0x20:stack[-8] + 0x20 + 0x20] // @5422 stack[-5] = msg.data[stack[-8] + 0x40:stack[-8] + 0x40 + 0x20] // @5429 stack[-4] = msg.data[stack[-8] + 0x60:stack[-8] + 0x60 + 0x20] // @542F stack[-1] = msg.data[stack[-8] + 0x80:stack[-8] + 0x80 + 0x20] // @5430 stack[0] = 0x5438 // @5433 stack[1] = msg.data[stack[-8] + 0x80:stack[-8] + 0x80 + 0x20] // } // Block ends with call to 0x53ba, returns to 0x5438 label_5438: // Incoming return from call to 0x53BA at 0x5437 // Inputs[11] // { // @5439 stack[-1] // @543A stack[-3] // @543F stack[-8] // @5441 msg.data[stack[-8] + 0xa0:stack[-8] + 0xa0 + 0x20] // @5442 stack[-2] // @5444 stack[-5] // @5447 stack[-6] // @5448 stack[-9] // @544A stack[-7] // @544A stack[-4] // @544B stack[-10] // } 5438 5B JUMPDEST 5439 80 DUP1 543A 92 SWAP3 543B 50 POP 543C 50 POP 543D 60 PUSH1 0xa0 543F 87 DUP8 5440 01 ADD 5441 35 CALLDATALOAD 5442 90 SWAP1 5443 50 POP 5444 92 SWAP3 5445 95 SWAP6 5446 50 POP 5447 92 SWAP3 5448 95 SWAP6 5449 50 POP 544A 92 SWAP3 544B 95 SWAP6 544C 56 *JUMP // Stack delta = -4 // Outputs[6] // { // @5444 stack[-5] = msg.data[stack[-8] + 0xa0:stack[-8] + 0xa0 + 0x20] // @5445 stack[-8] = stack[-5] // @5447 stack[-6] = stack[-1] // @5448 stack[-9] = stack[-6] // @544A stack[-7] = stack[-4] // @544B stack[-10] = stack[-7] // } // Block ends with unconditional jump to stack[-10] label_544D: // Incoming call from 0x024A, returns to 0x024B // Incoming call from 0x03B8, returns to 0x03B9 // Incoming call from 0x0451, returns to 0x0452 // Inputs[2] // { // @5455 stack[-1] // @5456 stack[-2] // } 544D 5B JUMPDEST 544E 60 PUSH1 0x00 5450 80 DUP1 5451 60 PUSH1 0x00 5453 60 PUSH1 0x60 5455 84 DUP5 5456 86 DUP7 5457 03 SUB 5458 12 SLT 5459 15 ISZERO 545A 61 PUSH2 0x5462 545D 57 *JUMPI // Stack delta = +3 // Outputs[3] // { // @544E stack[0] = 0x00 // @5450 stack[1] = 0x00 // @5451 stack[2] = 0x00 // } // Block ends with conditional jump to 0x5462, if !(stack[-2] - stack[-1] i< 0x60) label_545E: // Incoming jump from 0x545D, if not !(stack[-2] - stack[-1] i< 0x60) // Inputs[1] { @5461 memory[0x00:0x00] } 545E 60 PUSH1 0x00 5460 80 DUP1 5461 FD *REVERT // Stack delta = +0 // Outputs[1] { @5461 revert(memory[0x00:0x00]); } // Block terminates label_5462: // Incoming jump from 0x545D, if !(stack[-2] - stack[-1] i< 0x60) // Inputs[7] // { // @5465 stack[-4] // @5466 msg.data[stack[-4]:stack[-4] + 0x20] // @5467 stack[-6] // @546C msg.data[stack[-4] + 0x20:stack[-4] + 0x20 + 0x20] // @546D stack[-5] // @5474 msg.data[stack[-4] + 0x40:stack[-4] + 0x40 + 0x20] // @5476 stack[-3] // } 5462 5B JUMPDEST 5463 50 POP 5464 50 POP 5465 81 DUP2 5466 35 CALLDATALOAD 5467 93 SWAP4 5468 60 PUSH1 0x20 546A 83 DUP4 546B 01 ADD 546C 35 CALLDATALOAD 546D 93 SWAP4 546E 50 POP 546F 60 PUSH1 0x40 5471 90 SWAP1 5472 92 SWAP3 5473 01 ADD 5474 35 CALLDATALOAD 5475 91 SWAP2 5476 90 SWAP1 5477 50 POP 5478 56 *JUMP // Stack delta = -3 // Outputs[3] // { // @5467 stack[-6] = msg.data[stack[-4]:stack[-4] + 0x20] // @546D stack[-5] = msg.data[stack[-4] + 0x20:stack[-4] + 0x20 + 0x20] // @5475 stack[-4] = msg.data[stack[-4] + 0x40:stack[-4] + 0x40 + 0x20] // } // Block ends with unconditional jump to stack[-6] label_5479: // Incoming call from 0x5833, returns to 0x5834 // Incoming call from 0x5507, returns to 0x5508 // Inputs[2] // { // @547D stack[-2] // @5480 stack[-1] // } 5479 5B JUMPDEST 547A 60 PUSH1 0x00 547C 80 DUP1 547D 83 DUP4 547E 60 PUSH1 0x1f 5480 84 DUP5 5481 01 ADD 5482 12 SLT 5483 61 PUSH2 0x548b 5486 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @547A stack[0] = 0x00 // @547C stack[1] = 0x00 // } // Block ends with conditional jump to 0x548b, if stack[-1] + 0x1f i< stack[-2] label_5487: // Incoming jump from 0x5486, if not stack[-1] + 0x1f i< stack[-2] // Inputs[1] { @548A memory[0x00:0x00] } 5487 60 PUSH1 0x00 5489 80 DUP1 548A FD *REVERT // Stack delta = +0 // Outputs[1] { @548A revert(memory[0x00:0x00]); } // Block terminates label_548B: // Incoming jump from 0x5486, if stack[-1] + 0x1f i< stack[-2] // Inputs[2] // { // @548D stack[-3] // @548E msg.data[stack[-3]:stack[-3] + 0x20] // } 548B 5B JUMPDEST 548C 50 POP 548D 81 DUP2 548E 35 CALLDATALOAD 548F 67 PUSH8 0xffffffffffffffff 5498 81 DUP2 5499 11 GT 549A 15 ISZERO 549B 61 PUSH2 0x54a3 549E 57 *JUMPI // Stack delta = +0 // Outputs[1] { @548E stack[-1] = msg.data[stack[-3]:stack[-3] + 0x20] } // Block ends with conditional jump to 0x54a3, if !(msg.data[stack[-3]:stack[-3] + 0x20] > 0xffffffffffffffff) label_549F: // Incoming jump from 0x549E, if not !(msg.data[stack[-3]:stack[-3] + 0x20] > 0xffffffffffffffff) // Inputs[1] { @54A2 memory[0x00:0x00] } 549F 60 PUSH1 0x00 54A1 80 DUP1 54A2 FD *REVERT // Stack delta = +0 // Outputs[1] { @54A2 revert(memory[0x00:0x00]); } // Block terminates label_54A3: // Incoming jump from 0x549E, if !(msg.data[stack[-3]:stack[-3] + 0x20] > 0xffffffffffffffff) // Inputs[4] // { // @54A6 stack[-3] // @54A8 stack[-2] // @54AA stack[-4] // @54AD stack[-1] // } 54A3 5B JUMPDEST 54A4 60 PUSH1 0x20 54A6 83 DUP4 54A7 01 ADD 54A8 91 SWAP2 54A9 50 POP 54AA 83 DUP4 54AB 60 PUSH1 0x20 54AD 82 DUP3 54AE 60 PUSH1 0x05 54B0 1B SHL 54B1 85 DUP6 54B2 01 ADD 54B3 01 ADD 54B4 11 GT 54B5 15 ISZERO 54B6 61 PUSH2 0x4b5a 54B9 57 *JUMPI // Stack delta = +0 // Outputs[1] { @54A8 stack[-2] = stack[-3] + 0x20 } // Block ends with conditional jump to 0x4b5a, if !(stack[-3] + (stack[-1] << 0x05) + 0x20 > stack[-4]) label_54BA: // Incoming jump from 0x54B9, if not !(stack[-3] + (stack[-1] << 0x05) + 0x20 > stack[-4]) // Inputs[1] { @54BD memory[0x00:0x00] } 54BA 60 PUSH1 0x00 54BC 80 DUP1 54BD FD *REVERT // Stack delta = +0 // Outputs[1] { @54BD revert(memory[0x00:0x00]); } // Block terminates label_54BE: // Incoming call from 0x02E5, returns to 0x02E6 // Incoming call from 0x0305, returns to 0x0306 // Incoming call from 0x0385, returns to 0x0386 // Incoming call from 0x03D8, returns to 0x03D9 // Incoming call from 0x0278, returns to 0x0279 // Incoming call from 0x0345, returns to 0x0346 // Inputs[2] // { // @54CA stack[-1] // @54CB stack[-2] // } 54BE 5B JUMPDEST 54BF 60 PUSH1 0x00 54C1 80 DUP1 54C2 60 PUSH1 0x00 54C4 80 DUP1 54C5 60 PUSH1 0x00 54C7 80 DUP1 54C8 60 PUSH1 0xa0 54CA 87 DUP8 54CB 89 DUP10 54CC 03 SUB 54CD 12 SLT 54CE 15 ISZERO 54CF 61 PUSH2 0x54d7 54D2 57 *JUMPI // Stack delta = +6 // Outputs[6] // { // @54BF stack[0] = 0x00 // @54C1 stack[1] = 0x00 // @54C2 stack[2] = 0x00 // @54C4 stack[3] = 0x00 // @54C5 stack[4] = 0x00 // @54C7 stack[5] = 0x00 // } // Block ends with conditional jump to 0x54d7, if !(stack[-2] - stack[-1] i< 0xa0) label_54D3: // Incoming jump from 0x54D2, if not !(stack[-2] - stack[-1] i< 0xa0) // Inputs[1] { @54D6 memory[0x00:0x00] } 54D3 60 PUSH1 0x00 54D5 80 DUP1 54D6 FD *REVERT // Stack delta = +0 // Outputs[1] { @54D6 revert(memory[0x00:0x00]); } // Block terminates label_54D7: // Incoming jump from 0x54D2, if !(stack[-2] - stack[-1] i< 0xa0) // Inputs[6] // { // @54D8 stack[-7] // @54D9 msg.data[stack[-7]:stack[-7] + 0x20] // @54DA stack[-6] // @54E0 msg.data[stack[-7] + 0x20:stack[-7] + 0x20 + 0x20] // @54E1 stack[-5] // @54E7 msg.data[stack[-7] + 0x40:stack[-7] + 0x40 + 0x20] // } 54D7 5B JUMPDEST 54D8 86 DUP7 54D9 35 CALLDATALOAD 54DA 95 SWAP6 54DB 50 POP 54DC 60 PUSH1 0x20 54DE 87 DUP8 54DF 01 ADD 54E0 35 CALLDATALOAD 54E1 94 SWAP5 54E2 50 POP 54E3 60 PUSH1 0x40 54E5 87 DUP8 54E6 01 ADD 54E7 35 CALLDATALOAD 54E8 67 PUSH8 0xffffffffffffffff 54F1 81 DUP2 54F2 11 GT 54F3 15 ISZERO 54F4 61 PUSH2 0x54fc 54F7 57 *JUMPI // Stack delta = +1 // Outputs[3] // { // @54DA stack[-6] = msg.data[stack[-7]:stack[-7] + 0x20] // @54E1 stack[-5] = msg.data[stack[-7] + 0x20:stack[-7] + 0x20 + 0x20] // @54E7 stack[0] = msg.data[stack[-7] + 0x40:stack[-7] + 0x40 + 0x20] // } // Block ends with conditional jump to 0x54fc, if !(msg.data[stack[-7] + 0x40:stack[-7] + 0x40 + 0x20] > 0xffffffffffffffff) label_54F8: // Incoming jump from 0x54F7, if not !(msg.data[stack[-7] + 0x40:stack[-7] + 0x40 + 0x20] > 0xffffffffffffffff) // Inputs[1] { @54FB memory[0x00:0x00] } 54F8 60 PUSH1 0x00 54FA 80 DUP1 54FB FD *REVERT // Stack delta = +0 // Outputs[1] { @54FB revert(memory[0x00:0x00]); } // Block terminates label_54FC: // Incoming jump from 0x54F7, if !(msg.data[stack[-7] + 0x40:stack[-7] + 0x40 + 0x20] > 0xffffffffffffffff) // Inputs[3] // { // @5500 stack[-9] // @5501 stack[-1] // @5502 stack[-8] // } 54FC 5B JUMPDEST 54FD 61 PUSH2 0x5508 5500 89 DUP10 5501 82 DUP3 5502 8A DUP11 5503 01 ADD 5504 61 PUSH2 0x5479 5507 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @54FD stack[0] = 0x5508 // @5500 stack[1] = stack[-9] // @5503 stack[2] = stack[-8] + stack[-1] // } // Block ends with call to 0x5479, returns to 0x5508 label_5508: // Incoming return from call to 0x5479 at 0x5507 // Inputs[6] // { // @5509 stack[-1] // @5509 stack[-2] // @550A stack[-7] // @550C stack[-6] // @5511 stack[-10] // @5513 msg.data[stack[-10] + 0x60:stack[-10] + 0x60 + 0x20] // } 5508 5B JUMPDEST 5509 90 SWAP1 550A 95 SWAP6 550B 50 POP 550C 93 SWAP4 550D 50 POP 550E 50 POP 550F 60 PUSH1 0x60 5511 87 DUP8 5512 01 ADD 5513 35 CALLDATALOAD 5514 61 PUSH2 0x551c 5517 81 DUP2 5518 61 PUSH2 0x53ba 551B 56 *JUMP // Stack delta = +0 // Outputs[5] // { // @550A stack[-7] = stack[-2] // @550C stack[-6] = stack[-1] // @5513 stack[-3] = msg.data[stack[-10] + 0x60:stack[-10] + 0x60 + 0x20] // @5514 stack[-2] = 0x551c // @5517 stack[-1] = msg.data[stack[-10] + 0x60:stack[-10] + 0x60 + 0x20] // } // Block ends with call to 0x53ba, returns to 0x551C label_551C: // Incoming return from call to 0x53BA at 0x551B // Inputs[11] // { // @551D stack[-1] // @551E stack[-3] // @5523 stack[-8] // @5525 msg.data[stack[-8] + 0x80:stack[-8] + 0x80 + 0x20] // @5526 stack[-2] // @5528 stack[-5] // @552B stack[-6] // @552C stack[-9] // @552E stack[-4] // @552E stack[-7] // @552F stack[-10] // } 551C 5B JUMPDEST 551D 80 DUP1 551E 92 SWAP3 551F 50 POP 5520 50 POP 5521 60 PUSH1 0x80 5523 87 DUP8 5524 01 ADD 5525 35 CALLDATALOAD 5526 90 SWAP1 5527 50 POP 5528 92 SWAP3 5529 95 SWAP6 552A 50 POP 552B 92 SWAP3 552C 95 SWAP6 552D 50 POP 552E 92 SWAP3 552F 95 SWAP6 5530 56 *JUMP // Stack delta = -4 // Outputs[6] // { // @5528 stack[-5] = msg.data[stack[-8] + 0x80:stack[-8] + 0x80 + 0x20] // @5529 stack[-8] = stack[-5] // @552B stack[-6] = stack[-1] // @552C stack[-9] = stack[-6] // @552E stack[-7] = stack[-4] // @552F stack[-10] = stack[-7] // } // Block ends with unconditional jump to stack[-10] label_5531: // Incoming call from 0x028A, returns to 0x0227 // Inputs[3] // { // @5535 stack[-1] // @5537 stack[-2] // @5538 memory[stack[-2]:stack[-2] + 0x20] // } 5531 5B JUMPDEST 5532 60 PUSH1 0x20 5534 80 DUP1 5535 82 DUP3 5536 52 MSTORE 5537 82 DUP3 5538 51 MLOAD 5539 82 DUP3 553A 82 DUP3 553B 01 ADD 553C 81 DUP2 553D 90 SWAP1 553E 52 MSTORE 553F 60 PUSH1 0x00 5541 91 SWAP2 5542 90 SWAP1 5543 84 DUP5 5544 82 DUP3 5545 01 ADD 5546 90 SWAP1 5547 60 PUSH1 0x40 5549 85 DUP6 554A 01 ADD 554B 90 SWAP1 554C 84 DUP5 554D 5B JUMPDEST 554E 81 DUP2 554F 81 DUP2 5550 10 LT 5551 15 ISZERO 5552 61 PUSH2 0x5569 5555 57 *JUMPI // Stack delta = +6 // Outputs[8] // { // @5536 memory[stack[-1]:stack[-1] + 0x20] = 0x20 // @553E memory[0x20 + stack[-1]:0x20 + stack[-1] + 0x20] = memory[stack[-2]:stack[-2] + 0x20] // @5541 stack[0] = 0x00 // @5542 stack[1] = 0x20 // @5546 stack[2] = 0x20 + stack[-2] // @554B stack[3] = stack[-1] + 0x40 // @554B stack[4] = memory[stack[-2]:stack[-2] + 0x20] // @554C stack[5] = 0x00 // } // Block ends with conditional jump to 0x5569, if !(0x00 < memory[stack[-2]:stack[-2] + 0x20]) label_5556: // Incoming jump from 0x5555, if not !(stack[-1] < stack[-2]) // Incoming jump from 0x5555, if not !(0x00 < memory[stack[-2]:stack[-2] + 0x20]) // Inputs[5] // { // @5556 stack[-4] // @5557 memory[stack[-4]:stack[-4] + 0x20] // @5558 stack[-3] // @555A stack[-1] // @555B stack[-5] // } 5556 83 DUP4 5557 51 MLOAD 5558 83 DUP4 5559 52 MSTORE 555A 92 SWAP3 555B 84 DUP5 555C 01 ADD 555D 92 SWAP3 555E 91 SWAP2 555F 84 DUP5 5560 01 ADD 5561 91 SWAP2 5562 60 PUSH1 0x01 5564 01 ADD 5565 61 PUSH2 0x554d 5568 56 *JUMP // Stack delta = +0 // Outputs[4] // { // @5559 memory[stack[-3]:stack[-3] + 0x20] = memory[stack[-4]:stack[-4] + 0x20] // @555D stack[-4] = stack[-5] + stack[-4] // @5561 stack[-3] = stack[-5] + stack[-3] // @5564 stack[-1] = 0x01 + stack[-1] // } // Block ends with unconditional jump to 0x554d label_5569: // Incoming jump from 0x5555, if !(stack[-1] < stack[-2]) // Incoming jump from 0x5555, if !(0x00 < memory[stack[-2]:stack[-2] + 0x20]) // Inputs[4] // { // @556B stack[-3] // @556B stack[-2] // @556C stack[-9] // @556D stack[-8] // } 5569 5B JUMPDEST 556A 50 POP 556B 90 SWAP1 556C 96 SWAP7 556D 95 SWAP6 556E 50 POP 556F 50 POP 5570 50 POP 5571 50 POP 5572 50 POP 5573 50 POP 5574 56 *JUMP // Stack delta = -8 // Outputs[1] { @556C stack[-9] = stack[-3] } // Block ends with unconditional jump to stack[-9] label_5575: // Incoming jump from 0x37D4 // Incoming jump from 0x3FA8 // Incoming jump from 0x42ED // Incoming jump from 0x563F // Incoming jump from 0x4C0E // Incoming jump from 0x55FC // Inputs[1] { @55A3 memory[0x00:0x24] } 5575 5B JUMPDEST 5576 7F PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 5597 60 PUSH1 0x00 5599 52 MSTORE 559A 60 PUSH1 0x41 559C 60 PUSH1 0x04 559E 52 MSTORE 559F 60 PUSH1 0x24 55A1 60 PUSH1 0x00 55A3 FD *REVERT // Stack delta = +0 // Outputs[3] // { // @5599 memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000 // @559E memory[0x04:0x24] = 0x41 // @55A3 revert(memory[0x00:0x24]); // } // Block terminates label_55A4: // Incoming call from 0x0491, returns to 0x0492 // Incoming call from 0x0365, returns to 0x0366 // Incoming call from 0x0518, returns to 0x0519 // Incoming call from 0x02A5, returns to 0x02A6 // Inputs[2] // { // @55AA stack[-1] // @55AB stack[-2] // } 55A4 5B JUMPDEST 55A5 60 PUSH1 0x00 55A7 80 DUP1 55A8 60 PUSH1 0x40 55AA 83 DUP4 55AB 85 DUP6 55AC 03 SUB 55AD 12 SLT 55AE 15 ISZERO 55AF 61 PUSH2 0x55b7 55B2 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @55A5 stack[0] = 0x00 // @55A7 stack[1] = 0x00 // } // Block ends with conditional jump to 0x55b7, if !(stack[-2] - stack[-1] i< 0x40) label_55B3: // Incoming jump from 0x55B2, if not !(stack[-2] - stack[-1] i< 0x40) // Inputs[1] { @55B6 memory[0x00:0x00] } 55B3 60 PUSH1 0x00 55B5 80 DUP1 55B6 FD *REVERT // Stack delta = +0 // Outputs[1] { @55B6 revert(memory[0x00:0x00]); } // Block terminates label_55B7: // Incoming jump from 0x55B2, if !(stack[-2] - stack[-1] i< 0x40) // Inputs[4] // { // @55B8 stack[-3] // @55B9 msg.data[stack[-3]:stack[-3] + 0x20] // @55BA stack[-2] // @55C1 msg.data[stack[-3] + 0x20:stack[-3] + 0x20 + 0x20] // } 55B7 5B JUMPDEST 55B8 82 DUP3 55B9 35 CALLDATALOAD 55BA 91 SWAP2 55BB 50 POP 55BC 60 PUSH1 0x20 55BE 80 DUP1 55BF 84 DUP5 55C0 01 ADD 55C1 35 CALLDATALOAD 55C2 67 PUSH8 0xffffffffffffffff 55CB 80 DUP1 55CC 82 DUP3 55CD 11 GT 55CE 15 ISZERO 55CF 61 PUSH2 0x55d7 55D2 57 *JUMPI // Stack delta = +3 // Outputs[4] // { // @55BA stack[-2] = msg.data[stack[-3]:stack[-3] + 0x20] // @55BC stack[0] = 0x20 // @55C1 stack[1] = msg.data[stack[-3] + 0x20:stack[-3] + 0x20 + 0x20] // @55C2 stack[2] = 0xffffffffffffffff // } // Block ends with conditional jump to 0x55d7, if !(msg.data[stack[-3] + 0x20:stack[-3] + 0x20 + 0x20] > 0xffffffffffffffff) label_55D3: // Incoming jump from 0x55D2, if not !(msg.data[stack[-3] + 0x20:stack[-3] + 0x20 + 0x20] > 0xffffffffffffffff) // Inputs[1] { @55D6 memory[0x00:0x00] } 55D3 60 PUSH1 0x00 55D5 80 DUP1 55D6 FD *REVERT // Stack delta = +0 // Outputs[1] { @55D6 revert(memory[0x00:0x00]); } // Block terminates label_55D7: // Incoming jump from 0x55D2, if !(msg.data[stack[-3] + 0x20:stack[-3] + 0x20 + 0x20] > 0xffffffffffffffff) // Inputs[3] // { // @55D8 stack[-2] // @55D9 stack[-6] // @55DD stack[-7] // } 55D7 5B JUMPDEST 55D8 81 DUP2 55D9 86 DUP7 55DA 01 ADD 55DB 91 SWAP2 55DC 50 POP 55DD 86 DUP7 55DE 60 PUSH1 0x1f 55E0 83 DUP4 55E1 01 ADD 55E2 12 SLT 55E3 61 PUSH2 0x55eb 55E6 57 *JUMPI // Stack delta = +0 // Outputs[1] { @55DB stack[-2] = stack[-6] + stack[-2] } // Block ends with conditional jump to 0x55eb, if stack[-6] + stack[-2] + 0x1f i< stack[-7] label_55E7: // Incoming jump from 0x55E6, if not stack[-6] + stack[-2] + 0x1f i< stack[-7] // Inputs[1] { @55EA memory[0x00:0x00] } 55E7 60 PUSH1 0x00 55E9 80 DUP1 55EA FD *REVERT // Stack delta = +0 // Outputs[1] { @55EA revert(memory[0x00:0x00]); } // Block terminates label_55EB: // Incoming jump from 0x55E6, if stack[-6] + stack[-2] + 0x1f i< stack[-7] // Inputs[3] // { // @55EC stack[-2] // @55ED msg.data[stack[-2]:stack[-2] + 0x20] // @55EE stack[-1] // } 55EB 5B JUMPDEST 55EC 81 DUP2 55ED 35 CALLDATALOAD 55EE 81 DUP2 55EF 81 DUP2 55F0 11 GT 55F1 15 ISZERO 55F2 61 PUSH2 0x55fd 55F5 57 *JUMPI // Stack delta = +1 // Outputs[1] { @55ED stack[0] = msg.data[stack[-2]:stack[-2] + 0x20] } // Block ends with conditional jump to 0x55fd, if !(msg.data[stack[-2]:stack[-2] + 0x20] > stack[-1]) label_55F6: // Incoming jump from 0x55F5, if not !(msg.data[stack[-2]:stack[-2] + 0x20] > stack[-1]) 55F6 61 PUSH2 0x55fd 55F9 61 PUSH2 0x5575 55FC 56 *JUMP // Stack delta = +1 // Outputs[1] { @55F6 stack[0] = 0x55fd } // Block ends with unconditional jump to 0x5575 label_55FD: // Incoming jump from 0x55F5, if !(msg.data[stack[-2]:stack[-2] + 0x20] > stack[-1]) // Inputs[3] // { // @55FE stack[-1] // @5604 memory[0x40:0x60] // @5630 stack[-2] // } 55FD 5B JUMPDEST 55FE 80 DUP1 55FF 60 PUSH1 0x05 5601 1B SHL 5602 60 PUSH1 0x40 5604 51 MLOAD 5605 7F PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 5626 60 PUSH1 0x3f 5628 83 DUP4 5629 01 ADD 562A 16 AND 562B 81 DUP2 562C 01 ADD 562D 81 DUP2 562E 81 DUP2 562F 10 LT 5630 85 DUP6 5631 82 DUP3 5632 11 GT 5633 17 OR 5634 15 ISZERO 5635 61 PUSH2 0x5640 5638 57 *JUMPI // Stack delta = +3 // Outputs[3] // { // @5601 stack[0] = stack[-1] << 0x05 // @5604 stack[1] = memory[0x40:0x60] // @562C stack[2] = memory[0x40:0x60] + ((stack[-1] << 0x05) + 0x3f & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0) // } // Block ends with conditional jump to 0x5640, if !((memory[0x40:0x60] + ((stack[-1] << 0x05) + 0x3f & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0) > stack[-2]) | (memory[0x40:0x60] + ((stack[-1] << 0x05) + 0x3f & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0) < memory[0x40:0x60])) label_5639: // Incoming jump from 0x5638, if not !((memory[0x40:0x60] + ((stack[-1] << 0x05) + 0x3f & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0) > stack[-2]) | (memory[0x40:0x60] + ((stack[-1] << 0x05) + 0x3f & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0) < memory[0x40:0x60])) 5639 61 PUSH2 0x5640 563C 61 PUSH2 0x5575 563F 56 *JUMP // Stack delta = +1 // Outputs[1] { @5639 stack[0] = 0x5640 } // Block ends with unconditional jump to 0x5575 label_5640: // Incoming jump from 0x5638, if !((memory[0x40:0x60] + ((stack[-1] << 0x05) + 0x3f & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0) > stack[-2]) | (memory[0x40:0x60] + ((stack[-1] << 0x05) + 0x3f & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0) < memory[0x40:0x60])) // Inputs[8] // { // @5643 stack[-1] // @5644 stack[-2] // @5644 stack[-4] // @5647 stack[-7] // @564A stack[-5] // @564C stack[-6] // @564D stack[-3] // @5652 stack[-11] // } 5640 5B JUMPDEST 5641 60 PUSH1 0x40 5643 52 MSTORE 5644 91 SWAP2 5645 82 DUP3 5646 52 MSTORE 5647 84 DUP5 5648 82 DUP3 5649 01 ADD 564A 92 SWAP3 564B 50 POP 564C 83 DUP4 564D 81 DUP2 564E 01 ADD 564F 85 DUP6 5650 01 ADD 5651 91 SWAP2 5652 89 DUP10 5653 83 DUP4 5654 11 GT 5655 15 ISZERO 5656 61 PUSH2 0x565e 5659 57 *JUMPI // Stack delta = -1 // Outputs[5] // { // @5643 memory[0x40:0x60] = stack[-1] // @5646 memory[stack[-2]:stack[-2] + 0x20] = stack[-4] // @564A stack[-5] = stack[-2] + stack[-7] // @5651 stack[-2] = stack[-2] // @5651 stack[-4] = stack[-7] + stack[-3] + stack[-6] // } // Block ends with conditional jump to 0x565e, if !(stack[-7] + stack[-3] + stack[-6] > stack[-11]) label_565A: // Incoming jump from 0x5659, if not !(stack[-7] + stack[-3] + stack[-6] > stack[-11]) // Inputs[1] { @565D memory[0x00:0x00] } 565A 60 PUSH1 0x00 565C 80 DUP1 565D FD *REVERT // Stack delta = +0 // Outputs[1] { @565D revert(memory[0x00:0x00]); } // Block terminates label_565E: // Incoming jump from 0x5659, if !(stack[-7] + stack[-3] + stack[-6] > stack[-11]) // Inputs[4] // { // @565F stack[-5] // @565F stack[-1] // @5660 stack[-6] // @5664 stack[-3] // } 565E 5B JUMPDEST 565F 93 SWAP4 5660 85 DUP6 5661 01 ADD 5662 93 SWAP4 5663 5B JUMPDEST 5664 82 DUP3 5665 85 DUP6 5666 10 LT 5667 15 ISZERO 5668 61 PUSH2 0x5683 566B 57 *JUMPI // Stack delta = +0 // Outputs[2] // { // @5662 stack[-5] = stack[-6] + stack[-5] // @5662 stack[-1] = stack[-1] // } // Block ends with conditional jump to 0x5683, if !(stack[-6] + stack[-5] < stack[-3]) label_566C: // Incoming jump from 0x566B, if not !(stack[-5] < stack[-3]) // Incoming jump from 0x566B, if not !(stack[-6] + stack[-5] < stack[-3]) // Inputs[1] { @566F stack[-5] } 566C 61 PUSH2 0x5674 566F 85 DUP6 5670 61 PUSH2 0x53df 5673 56 *JUMP // Stack delta = +2 // Outputs[2] // { // @566C stack[0] = 0x5674 // @566F stack[1] = stack[-5] // } // Block ends with call to 0x53df, returns to 0x5674 label_5674: // Incoming return from call to 0x53DF at 0x5673 // Inputs[5] // { // @5675 stack[-5] // @5676 stack[-1] // @5677 stack[-6] // @5677 stack[-2] // @5678 stack[-7] // } 5674 5B JUMPDEST 5675 84 DUP5 5676 52 MSTORE 5677 93 SWAP4 5678 85 DUP6 5679 01 ADD 567A 93 SWAP4 567B 92 SWAP3 567C 85 DUP6 567D 01 ADD 567E 92 SWAP3 567F 61 PUSH2 0x5663 5682 56 *JUMP // Stack delta = -1 // Outputs[4] // { // @5676 memory[stack[-5]:stack[-5] + 0x20] = stack[-1] // @567A stack[-6] = stack[-7] + stack[-6] // @567E stack[-5] = stack[-7] + stack[-5] // @567E stack[-2] = stack[-2] // } // Block ends with unconditional jump to 0x5663 label_5683: // Incoming jump from 0x566B, if !(stack[-5] < stack[-3]) // Incoming jump from 0x566B, if !(stack[-6] + stack[-5] < stack[-3]) // Inputs[6] // { // @5684 stack[-1] // @5685 stack[-7] // @568D stack[-10] // @568F stack[-11] // @568F stack[-8] // @5690 stack[-9] // } 5683 5B JUMPDEST 5684 80 DUP1 5685 96 SWAP7 5686 50 POP 5687 50 POP 5688 50 POP 5689 50 POP 568A 50 POP 568B 50 POP 568C 50 POP 568D 92 SWAP3 568E 50 POP 568F 92 SWAP3 5690 90 SWAP1 5691 50 POP 5692 56 *JUMP // Stack delta = -9 // Outputs[2] // { // @568D stack[-10] = stack[-1] // @568F stack[-11] = stack[-8] // } // Block ends with unconditional jump to stack[-11] label_5693: // Incoming call from 0x572A, returns to 0x572B // Incoming call from 0x5A0E, returns to 0x0BF3 // Incoming call from 0x57C2, returns to 0x57C3 // Inputs[1] { @5694 stack[-1] } 5693 5B JUMPDEST 5694 80 DUP1 5695 15 ISZERO 5696 15 ISZERO 5697 81 DUP2 5698 14 EQ 5699 61 PUSH2 0x53dc 569C 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x53dc, if stack[-1] == !!stack[-1] label_569D: // Incoming jump from 0x569C, if not stack[-1] == !!stack[-1] // Inputs[1] { @56A0 memory[0x00:0x00] } 569D 60 PUSH1 0x00 569F 80 DUP1 56A0 FD *REVERT // Stack delta = +0 // Outputs[1] { @56A0 revert(memory[0x00:0x00]); } // Block terminates label_56A1: // Incoming call from 0x57D0, returns to 0x57D1 // Incoming call from 0x5739, returns to 0x573A // Inputs[2] // { // @56A2 stack[-1] // @56A3 msg.data[stack[-1]:stack[-1] + 0x20] // } 56A1 5B JUMPDEST 56A2 80 DUP1 56A3 35 CALLDATALOAD 56A4 60 PUSH1 0xff 56A6 81 DUP2 56A7 16 AND 56A8 81 DUP2 56A9 14 EQ 56AA 61 PUSH2 0x53ea 56AD 57 *JUMPI // Stack delta = +1 // Outputs[1] { @56A3 stack[0] = msg.data[stack[-1]:stack[-1] + 0x20] } // Block ends with conditional jump to 0x53ea, if msg.data[stack[-1]:stack[-1] + 0x20] == msg.data[stack[-1]:stack[-1] + 0x20] & 0xff label_56AE: // Incoming jump from 0x56AD, if not msg.data[stack[-1]:stack[-1] + 0x20] == msg.data[stack[-1]:stack[-1] + 0x20] & 0xff // Inputs[1] { @56B1 memory[0x00:0x00] } 56AE 60 PUSH1 0x00 56B0 80 DUP1 56B1 FD *REVERT // Stack delta = +0 // Outputs[1] { @56B1 revert(memory[0x00:0x00]); } // Block terminates label_56B2: // Incoming call from 0x02C5, returns to 0x02C6 // Inputs[2] // { // @56C7 stack[-1] // @56C8 stack[-2] // } 56B2 5B JUMPDEST 56B3 60 PUSH1 0x00 56B5 80 DUP1 56B6 60 PUSH1 0x00 56B8 80 DUP1 56B9 60 PUSH1 0x00 56BB 80 DUP1 56BC 60 PUSH1 0x00 56BE 80 DUP1 56BF 60 PUSH1 0x00 56C1 80 DUP1 56C2 60 PUSH1 0x00 56C4 61 PUSH2 0x0160 56C7 8C DUP13 56C8 8E DUP15 56C9 03 SUB 56CA 12 SLT 56CB 15 ISZERO 56CC 61 PUSH2 0x56d4 56CF 57 *JUMPI // Stack delta = +11 // Outputs[11] // { // @56B3 stack[0] = 0x00 // @56B5 stack[1] = 0x00 // @56B6 stack[2] = 0x00 // @56B8 stack[3] = 0x00 // @56B9 stack[4] = 0x00 // @56BB stack[5] = 0x00 // @56BC stack[6] = 0x00 // @56BE stack[7] = 0x00 // @56BF stack[8] = 0x00 // @56C1 stack[9] = 0x00 // @56C2 stack[10] = 0x00 // } // Block ends with conditional jump to 0x56d4, if !(stack[-2] - stack[-1] i< 0x0160) label_56D0: // Incoming jump from 0x56CF, if not !(stack[-2] - stack[-1] i< 0x0160) // Inputs[1] { @56D3 memory[0x00:0x00] } 56D0 60 PUSH1 0x00 56D2 80 DUP1 56D3 FD *REVERT // Stack delta = +0 // Outputs[1] { @56D3 revert(memory[0x00:0x00]); } // Block terminates label_56D4: // Incoming jump from 0x56CF, if !(stack[-2] - stack[-1] i< 0x0160) // Inputs[2] // { // @56D5 stack[-12] // @56D6 msg.data[stack[-12]:stack[-12] + 0x20] // } 56D4 5B JUMPDEST 56D5 8B DUP12 56D6 35 CALLDATALOAD 56D7 61 PUSH2 0x56df 56DA 81 DUP2 56DB 61 PUSH2 0x53ba 56DE 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @56D6 stack[0] = msg.data[stack[-12]:stack[-12] + 0x20] // @56D7 stack[1] = 0x56df // @56DA stack[2] = msg.data[stack[-12]:stack[-12] + 0x20] // } // Block ends with call to 0x53ba, returns to 0x56DF label_56DF: // Incoming return from call to 0x53BA at 0x56DE // Inputs[4] // { // @56E0 stack[-1] // @56E0 stack[-12] // @56E4 stack[-13] // @56E6 msg.data[stack[-13] + 0x20:stack[-13] + 0x20 + 0x20] // } 56DF 5B JUMPDEST 56E0 9A SWAP11 56E1 50 POP 56E2 60 PUSH1 0x20 56E4 8C DUP13 56E5 01 ADD 56E6 35 CALLDATALOAD 56E7 61 PUSH2 0x56ef 56EA 81 DUP2 56EB 61 PUSH2 0x53ba 56EE 56 *JUMP // Stack delta = +2 // Outputs[4] // { // @56E0 stack[-12] = stack[-1] // @56E6 stack[-1] = msg.data[stack[-13] + 0x20:stack[-13] + 0x20 + 0x20] // @56E7 stack[0] = 0x56ef // @56EA stack[1] = msg.data[stack[-13] + 0x20:stack[-13] + 0x20 + 0x20] // } // Block ends with call to 0x53ba, returns to 0x56EF label_56EF: // Incoming return from call to 0x53BA at 0x56EE // Inputs[10] // { // @56F0 stack[-11] // @56F0 stack[-1] // @56F4 stack[-13] // @56F6 msg.data[stack[-13] + 0x40:stack[-13] + 0x40 + 0x20] // @56F7 stack[-10] // @56FD msg.data[stack[-13] + 0x60:stack[-13] + 0x60 + 0x20] // @56FE stack[-9] // @5704 msg.data[stack[-13] + 0x80:stack[-13] + 0x80 + 0x20] // @5705 stack[-8] // @570B msg.data[stack[-13] + 0xa0:stack[-13] + 0xa0 + 0x20] // } 56EF 5B JUMPDEST 56F0 99 SWAP10 56F1 50 POP 56F2 60 PUSH1 0x40 56F4 8C DUP13 56F5 01 ADD 56F6 35 CALLDATALOAD 56F7 98 SWAP9 56F8 50 POP 56F9 60 PUSH1 0x60 56FB 8C DUP13 56FC 01 ADD 56FD 35 CALLDATALOAD 56FE 97 SWAP8 56FF 50 POP 5700 60 PUSH1 0x80 5702 8C DUP13 5703 01 ADD 5704 35 CALLDATALOAD 5705 96 SWAP7 5706 50 POP 5707 60 PUSH1 0xa0 5709 8C DUP13 570A 01 ADD 570B 35 CALLDATALOAD 570C 61 PUSH2 0x5714 570F 81 DUP2 5710 61 PUSH2 0x53ba 5713 56 *JUMP // Stack delta = +2 // Outputs[7] // { // @56F0 stack[-11] = stack[-1] // @56F7 stack[-10] = msg.data[stack[-13] + 0x40:stack[-13] + 0x40 + 0x20] // @56FE stack[-9] = msg.data[stack[-13] + 0x60:stack[-13] + 0x60 + 0x20] // @5705 stack[-8] = msg.data[stack[-13] + 0x80:stack[-13] + 0x80 + 0x20] // @570B stack[-1] = msg.data[stack[-13] + 0xa0:stack[-13] + 0xa0 + 0x20] // @570C stack[0] = 0x5714 // @570F stack[1] = msg.data[stack[-13] + 0xa0:stack[-13] + 0xa0 + 0x20] // } // Block ends with call to 0x53ba, returns to 0x5714 label_5714: // Incoming return from call to 0x53BA at 0x5713 // Inputs[6] // { // @5715 stack[-1] // @5715 stack[-7] // @5719 stack[-13] // @571B msg.data[stack[-13] + 0xc0:stack[-13] + 0xc0 + 0x20] // @571C stack[-6] // @5722 msg.data[stack[-13] + 0xe0:stack[-13] + 0xe0 + 0x20] // } 5714 5B JUMPDEST 5715 95 SWAP6 5716 50 POP 5717 60 PUSH1 0xc0 5719 8C DUP13 571A 01 ADD 571B 35 CALLDATALOAD 571C 94 SWAP5 571D 50 POP 571E 60 PUSH1 0xe0 5720 8C DUP13 5721 01 ADD 5722 35 CALLDATALOAD 5723 61 PUSH2 0x572b 5726 81 DUP2 5727 61 PUSH2 0x5693 572A 56 *JUMP // Stack delta = +2 // Outputs[5] // { // @5715 stack[-7] = stack[-1] // @571C stack[-6] = msg.data[stack[-13] + 0xc0:stack[-13] + 0xc0 + 0x20] // @5722 stack[-1] = msg.data[stack[-13] + 0xe0:stack[-13] + 0xe0 + 0x20] // @5723 stack[0] = 0x572b // @5726 stack[1] = msg.data[stack[-13] + 0xe0:stack[-13] + 0xe0 + 0x20] // } // Block ends with call to 0x5693, returns to 0x572B label_572B: // Incoming return from call to 0x5693 at 0x572A // Inputs[3] // { // @572C stack[-5] // @572C stack[-1] // @5734 stack[-13] // } 572B 5B JUMPDEST 572C 93 SWAP4 572D 50 POP 572E 61 PUSH2 0x573a 5731 61 PUSH2 0x0100 5734 8D DUP14 5735 01 ADD 5736 61 PUSH2 0x56a1 5739 56 *JUMP // Stack delta = +1 // Outputs[3] // { // @572C stack[-5] = stack[-1] // @572E stack[-1] = 0x573a // @5735 stack[0] = stack[-13] + 0x0100 // } // Block ends with call to 0x56a1, returns to 0x573A label_573A: // Incoming return from call to 0x56A1 at 0x5739 // Inputs[17] // { // @573B stack[-1] // @573B stack[-4] // @5740 stack[-13] // @5742 msg.data[stack[-13] + 0x0120:stack[-13] + 0x0120 + 0x20] // @5743 stack[-3] // @574A msg.data[stack[-13] + 0x0140:stack[-13] + 0x0140 + 0x20] // @574B stack[-2] // @574D stack[-5] // @574E stack[-8] // @574F stack[-11] // @5750 stack[-14] // @5752 stack[-6] // @5753 stack[-9] // @5754 stack[-12] // @5755 stack[-15] // @5757 stack[-7] // @5758 stack[-10] // } 573A 5B JUMPDEST 573B 92 SWAP3 573C 50 POP 573D 61 PUSH2 0x0120 5740 8C DUP13 5741 01 ADD 5742 35 CALLDATALOAD 5743 91 SWAP2 5744 50 POP 5745 61 PUSH2 0x0140 5748 8C DUP13 5749 01 ADD 574A 35 CALLDATALOAD 574B 90 SWAP1 574C 50 POP 574D 92 SWAP3 574E 95 SWAP6 574F 98 SWAP9 5750 9B SWAP12 5751 50 POP 5752 92 SWAP3 5753 95 SWAP6 5754 98 SWAP9 5755 9B SWAP12 5756 90 SWAP1 5757 93 SWAP4 5758 96 SWAP7 5759 99 SWAP10 575A 50 POP 575B 56 *JUMP // Stack delta = -4 // Outputs[11] // { // @574D stack[-5] = msg.data[stack[-13] + 0x0140:stack[-13] + 0x0140 + 0x20] // @574E stack[-8] = stack[-5] // @574F stack[-11] = stack[-8] // @5750 stack[-14] = stack[-11] // @5752 stack[-6] = msg.data[stack[-13] + 0x0120:stack[-13] + 0x0120 + 0x20] // @5753 stack[-9] = stack[-6] // @5754 stack[-12] = stack[-9] // @5755 stack[-15] = stack[-12] // @5757 stack[-7] = stack[-1] // @5758 stack[-10] = stack[-7] // @5759 stack[-13] = stack[-10] // } // Block ends with unconditional jump to stack[-15] label_575C: // Incoming call from 0x0325, returns to 0x0326 // Incoming call from 0x0538, returns to 0x0539 // Inputs[2] // { // @576F stack[-1] // @5770 stack[-2] // } 575C 5B JUMPDEST 575D 60 PUSH1 0x00 575F 80 DUP1 5760 60 PUSH1 0x00 5762 80 DUP1 5763 60 PUSH1 0x00 5765 80 DUP1 5766 60 PUSH1 0x00 5768 80 DUP1 5769 60 PUSH1 0x00 576B 80 DUP1 576C 61 PUSH2 0x0140 576F 8B DUP12 5770 8D DUP14 5771 03 SUB 5772 12 SLT 5773 15 ISZERO 5774 61 PUSH2 0x577c 5777 57 *JUMPI // Stack delta = +10 // Outputs[10] // { // @575D stack[0] = 0x00 // @575F stack[1] = 0x00 // @5760 stack[2] = 0x00 // @5762 stack[3] = 0x00 // @5763 stack[4] = 0x00 // @5765 stack[5] = 0x00 // @5766 stack[6] = 0x00 // @5768 stack[7] = 0x00 // @5769 stack[8] = 0x00 // @576B stack[9] = 0x00 // } // Block ends with conditional jump to 0x577c, if !(stack[-2] - stack[-1] i< 0x0140) label_5778: // Incoming jump from 0x5777, if not !(stack[-2] - stack[-1] i< 0x0140) // Inputs[1] { @577B memory[0x00:0x00] } 5778 60 PUSH1 0x00 577A 80 DUP1 577B FD *REVERT // Stack delta = +0 // Outputs[1] { @577B revert(memory[0x00:0x00]); } // Block terminates label_577C: // Incoming jump from 0x5777, if !(stack[-2] - stack[-1] i< 0x0140) // Inputs[2] // { // @577D stack[-11] // @577E msg.data[stack[-11]:stack[-11] + 0x20] // } 577C 5B JUMPDEST 577D 8A DUP11 577E 35 CALLDATALOAD 577F 61 PUSH2 0x5787 5782 81 DUP2 5783 61 PUSH2 0x53ba 5786 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @577E stack[0] = msg.data[stack[-11]:stack[-11] + 0x20] // @577F stack[1] = 0x5787 // @5782 stack[2] = msg.data[stack[-11]:stack[-11] + 0x20] // } // Block ends with call to 0x53ba, returns to 0x5787 label_5787: // Incoming return from call to 0x53BA at 0x5786 // Inputs[10] // { // @5788 stack[-1] // @5788 stack[-11] // @578C stack[-12] // @578E msg.data[stack[-12] + 0x20:stack[-12] + 0x20 + 0x20] // @578F stack[-10] // @5795 msg.data[stack[-12] + 0x40:stack[-12] + 0x40 + 0x20] // @5796 stack[-9] // @579C msg.data[stack[-12] + 0x60:stack[-12] + 0x60 + 0x20] // @579D stack[-8] // @57A3 msg.data[stack[-12] + 0x80:stack[-12] + 0x80 + 0x20] // } 5787 5B JUMPDEST 5788 99 SWAP10 5789 50 POP 578A 60 PUSH1 0x20 578C 8B DUP12 578D 01 ADD 578E 35 CALLDATALOAD 578F 98 SWAP9 5790 50 POP 5791 60 PUSH1 0x40 5793 8B DUP12 5794 01 ADD 5795 35 CALLDATALOAD 5796 97 SWAP8 5797 50 POP 5798 60 PUSH1 0x60 579A 8B DUP12 579B 01 ADD 579C 35 CALLDATALOAD 579D 96 SWAP7 579E 50 POP 579F 60 PUSH1 0x80 57A1 8B DUP12 57A2 01 ADD 57A3 35 CALLDATALOAD 57A4 61 PUSH2 0x57ac 57A7 81 DUP2 57A8 61 PUSH2 0x53ba 57AB 56 *JUMP // Stack delta = +2 // Outputs[7] // { // @5788 stack[-11] = stack[-1] // @578F stack[-10] = msg.data[stack[-12] + 0x20:stack[-12] + 0x20 + 0x20] // @5796 stack[-9] = msg.data[stack[-12] + 0x40:stack[-12] + 0x40 + 0x20] // @579D stack[-8] = msg.data[stack[-12] + 0x60:stack[-12] + 0x60 + 0x20] // @57A3 stack[-1] = msg.data[stack[-12] + 0x80:stack[-12] + 0x80 + 0x20] // @57A4 stack[0] = 0x57ac // @57A7 stack[1] = msg.data[stack[-12] + 0x80:stack[-12] + 0x80 + 0x20] // } // Block ends with call to 0x53ba, returns to 0x57AC label_57AC: // Incoming return from call to 0x53BA at 0x57AB // Inputs[6] // { // @57AD stack[-7] // @57AD stack[-1] // @57B1 stack[-12] // @57B3 msg.data[stack[-12] + 0xa0:stack[-12] + 0xa0 + 0x20] // @57B4 stack[-6] // @57BA msg.data[stack[-12] + 0xc0:stack[-12] + 0xc0 + 0x20] // } 57AC 5B JUMPDEST 57AD 95 SWAP6 57AE 50 POP 57AF 60 PUSH1 0xa0 57B1 8B DUP12 57B2 01 ADD 57B3 35 CALLDATALOAD 57B4 94 SWAP5 57B5 50 POP 57B6 60 PUSH1 0xc0 57B8 8B DUP12 57B9 01 ADD 57BA 35 CALLDATALOAD 57BB 61 PUSH2 0x57c3 57BE 81 DUP2 57BF 61 PUSH2 0x5693 57C2 56 *JUMP // Stack delta = +2 // Outputs[5] // { // @57AD stack[-7] = stack[-1] // @57B4 stack[-6] = msg.data[stack[-12] + 0xa0:stack[-12] + 0xa0 + 0x20] // @57BA stack[-1] = msg.data[stack[-12] + 0xc0:stack[-12] + 0xc0 + 0x20] // @57BB stack[0] = 0x57c3 // @57BE stack[1] = msg.data[stack[-12] + 0xc0:stack[-12] + 0xc0 + 0x20] // } // Block ends with call to 0x5693, returns to 0x57C3 label_57C3: // Incoming return from call to 0x5693 at 0x57C2 // Inputs[3] // { // @57C4 stack[-5] // @57C4 stack[-1] // @57CB stack[-12] // } 57C3 5B JUMPDEST 57C4 93 SWAP4 57C5 50 POP 57C6 61 PUSH2 0x57d1 57C9 60 PUSH1 0xe0 57CB 8C DUP13 57CC 01 ADD 57CD 61 PUSH2 0x56a1 57D0 56 *JUMP // Stack delta = +1 // Outputs[3] // { // @57C4 stack[-5] = stack[-1] // @57C6 stack[-1] = 0x57d1 // @57CC stack[0] = stack[-12] + 0xe0 // } // Block ends with call to 0x56a1, returns to 0x57D1 label_57D1: // Incoming return from call to 0x56A1 at 0x57D0 // Inputs[16] // { // @57D2 stack[-1] // @57D2 stack[-4] // @57D7 stack[-12] // @57D9 msg.data[stack[-12] + 0x0100:stack[-12] + 0x0100 + 0x20] // @57DA stack[-3] // @57E1 msg.data[stack[-12] + 0x0120:stack[-12] + 0x0120 + 0x20] // @57E2 stack[-2] // @57E4 stack[-5] // @57E5 stack[-8] // @57E6 stack[-11] // @57E7 stack[-14] // @57E9 stack[-7] // @57EA stack[-10] // @57EB stack[-13] // @57ED stack[-6] // @57EE stack[-9] // } 57D1 5B JUMPDEST 57D2 92 SWAP3 57D3 50 POP 57D4 61 PUSH2 0x0100 57D7 8B DUP12 57D8 01 ADD 57D9 35 CALLDATALOAD 57DA 91 SWAP2 57DB 50 POP 57DC 61 PUSH2 0x0120 57DF 8B DUP12 57E0 01 ADD 57E1 35 CALLDATALOAD 57E2 90 SWAP1 57E3 50 POP 57E4 92 SWAP3 57E5 95 SWAP6 57E6 98 SWAP9 57E7 9B SWAP12 57E8 91 SWAP2 57E9 94 SWAP5 57EA 97 SWAP8 57EB 9A SWAP11 57EC 50 POP 57ED 92 SWAP3 57EE 95 SWAP6 57EF 98 SWAP9 57F0 50 POP 57F1 56 *JUMP // Stack delta = -4 // Outputs[10] // { // @57E4 stack[-5] = msg.data[stack[-12] + 0x0120:stack[-12] + 0x0120 + 0x20] // @57E5 stack[-8] = stack[-5] // @57E6 stack[-11] = stack[-8] // @57E7 stack[-14] = stack[-11] // @57E9 stack[-7] = stack[-1] // @57EA stack[-10] = stack[-7] // @57EB stack[-13] = stack[-10] // @57ED stack[-6] = msg.data[stack[-12] + 0x0100:stack[-12] + 0x0100 + 0x20] // @57EE stack[-9] = stack[-6] // @57EF stack[-12] = stack[-9] // } // Block ends with unconditional jump to stack[-14] label_57F2: // Incoming call from 0x0599, returns to 0x059A // Incoming call from 0x04A4, returns to 0x04A5 // Incoming call from 0x0398, returns to 0x0399 // Inputs[2] // { // @57FD stack[-1] // @57FE stack[-2] // } 57F2 5B JUMPDEST 57F3 60 PUSH1 0x00 57F5 80 DUP1 57F6 60 PUSH1 0x00 57F8 80 DUP1 57F9 60 PUSH1 0x00 57FB 60 PUSH1 0x80 57FD 86 DUP7 57FE 88 DUP9 57FF 03 SUB 5800 12 SLT 5801 15 ISZERO 5802 61 PUSH2 0x580a 5805 57 *JUMPI // Stack delta = +5 // Outputs[5] // { // @57F3 stack[0] = 0x00 // @57F5 stack[1] = 0x00 // @57F6 stack[2] = 0x00 // @57F8 stack[3] = 0x00 // @57F9 stack[4] = 0x00 // } // Block ends with conditional jump to 0x580a, if !(stack[-2] - stack[-1] i< 0x80) label_5806: // Incoming jump from 0x5805, if not !(stack[-2] - stack[-1] i< 0x80) // Inputs[1] { @5809 memory[0x00:0x00] } 5806 60 PUSH1 0x00 5808 80 DUP1 5809 FD *REVERT // Stack delta = +0 // Outputs[1] { @5809 revert(memory[0x00:0x00]); } // Block terminates label_580A: // Incoming jump from 0x5805, if !(stack[-2] - stack[-1] i< 0x80) // Inputs[4] // { // @580B stack[-6] // @580C msg.data[stack[-6]:stack[-6] + 0x20] // @580D stack[-5] // @5813 msg.data[stack[-6] + 0x20:stack[-6] + 0x20 + 0x20] // } 580A 5B JUMPDEST 580B 85 DUP6 580C 35 CALLDATALOAD 580D 94 SWAP5 580E 50 POP 580F 60 PUSH1 0x20 5811 86 DUP7 5812 01 ADD 5813 35 CALLDATALOAD 5814 67 PUSH8 0xffffffffffffffff 581D 81 DUP2 581E 11 GT 581F 15 ISZERO 5820 61 PUSH2 0x5828 5823 57 *JUMPI // Stack delta = +1 // Outputs[2] // { // @580D stack[-5] = msg.data[stack[-6]:stack[-6] + 0x20] // @5813 stack[0] = msg.data[stack[-6] + 0x20:stack[-6] + 0x20 + 0x20] // } // Block ends with conditional jump to 0x5828, if !(msg.data[stack[-6] + 0x20:stack[-6] + 0x20 + 0x20] > 0xffffffffffffffff) label_5824: // Incoming jump from 0x5823, if not !(msg.data[stack[-6] + 0x20:stack[-6] + 0x20 + 0x20] > 0xffffffffffffffff) // Inputs[1] { @5827 memory[0x00:0x00] } 5824 60 PUSH1 0x00 5826 80 DUP1 5827 FD *REVERT // Stack delta = +0 // Outputs[1] { @5827 revert(memory[0x00:0x00]); } // Block terminates label_5828: // Incoming jump from 0x5823, if !(msg.data[stack[-6] + 0x20:stack[-6] + 0x20 + 0x20] > 0xffffffffffffffff) // Inputs[3] // { // @582C stack[-8] // @582D stack[-1] // @582E stack[-7] // } 5828 5B JUMPDEST 5829 61 PUSH2 0x5834 582C 88 DUP9 582D 82 DUP3 582E 89 DUP10 582F 01 ADD 5830 61 PUSH2 0x5479 5833 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @5829 stack[0] = 0x5834 // @582C stack[1] = stack[-8] // @582F stack[2] = stack[-7] + stack[-1] // } // Block ends with call to 0x5479, returns to 0x5834 label_5834: // Incoming return from call to 0x5479 at 0x5833 // Inputs[6] // { // @5835 stack[-1] // @5835 stack[-2] // @5836 stack[-7] // @5838 stack[-6] // @583D stack[-9] // @583F msg.data[stack[-9] + 0x40:stack[-9] + 0x40 + 0x20] // } 5834 5B JUMPDEST 5835 90 SWAP1 5836 95 SWAP6 5837 50 POP 5838 93 SWAP4 5839 50 POP 583A 50 POP 583B 60 PUSH1 0x40 583D 86 DUP7 583E 01 ADD 583F 35 CALLDATALOAD 5840 61 PUSH2 0x5848 5843 81 DUP2 5844 61 PUSH2 0x53ba 5847 56 *JUMP // Stack delta = +0 // Outputs[5] // { // @5836 stack[-7] = stack[-2] // @5838 stack[-6] = stack[-1] // @583F stack[-3] = msg.data[stack[-9] + 0x40:stack[-9] + 0x40 + 0x20] // @5840 stack[-2] = 0x5848 // @5843 stack[-1] = msg.data[stack[-9] + 0x40:stack[-9] + 0x40 + 0x20] // } // Block ends with call to 0x53ba, returns to 0x5848 label_5848: // Incoming return from call to 0x53BA at 0x5847 // Inputs[9] // { // @5849 stack[-1] // @5849 stack[-6] // @584A stack[-9] // @584B stack[-5] // @584C stack[-8] // @584E stack[-4] // @584E stack[-2] // @584F stack[-7] // @5853 msg.data[0x60 + stack[-7]:0x60 + stack[-7] + 0x20] // } 5848 5B JUMPDEST 5849 94 SWAP5 584A 97 SWAP8 584B 93 SWAP4 584C 96 SWAP7 584D 50 POP 584E 91 SWAP2 584F 94 SWAP5 5850 60 PUSH1 0x60 5852 01 ADD 5853 35 CALLDATALOAD 5854 92 SWAP3 5855 91 SWAP2 5856 50 POP 5857 50 POP 5858 56 *JUMP // Stack delta = -4 // Outputs[5] // { // @5849 stack[-6] = stack[-1] // @584A stack[-9] = stack[-6] // @584C stack[-8] = stack[-5] // @584F stack[-7] = stack[-4] // @5854 stack[-5] = msg.data[0x60 + stack[-7]:0x60 + stack[-7] + 0x20] // } // Block ends with unconditional jump to stack[-9] label_5859: // Incoming call from 0x04C4, returns to 0x04C5 // Inputs[2] // { // @5867 stack[-1] // @5868 stack[-2] // } 5859 5B JUMPDEST 585A 60 PUSH1 0x00 585C 80 DUP1 585D 60 PUSH1 0x00 585F 80 DUP1 5860 60 PUSH1 0x00 5862 80 DUP1 5863 60 PUSH1 0x00 5865 60 PUSH1 0xe0 5867 88 DUP9 5868 8A DUP11 5869 03 SUB 586A 12 SLT 586B 15 ISZERO 586C 61 PUSH2 0x5874 586F 57 *JUMPI // Stack delta = +7 // Outputs[7] // { // @585A stack[0] = 0x00 // @585C stack[1] = 0x00 // @585D stack[2] = 0x00 // @585F stack[3] = 0x00 // @5860 stack[4] = 0x00 // @5862 stack[5] = 0x00 // @5863 stack[6] = 0x00 // } // Block ends with conditional jump to 0x5874, if !(stack[-2] - stack[-1] i< 0xe0) label_5870: // Incoming jump from 0x586F, if not !(stack[-2] - stack[-1] i< 0xe0) // Inputs[1] { @5873 memory[0x00:0x00] } 5870 60 PUSH1 0x00 5872 80 DUP1 5873 FD *REVERT // Stack delta = +0 // Outputs[1] { @5873 revert(memory[0x00:0x00]); } // Block terminates label_5874: // Incoming jump from 0x586F, if !(stack[-2] - stack[-1] i< 0xe0) // Inputs[2] // { // @5875 stack[-8] // @5876 msg.data[stack[-8]:stack[-8] + 0x20] // } 5874 5B JUMPDEST 5875 87 DUP8 5876 35 CALLDATALOAD 5877 61 PUSH2 0x587f 587A 81 DUP2 587B 61 PUSH2 0x53ba 587E 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @5876 stack[0] = msg.data[stack[-8]:stack[-8] + 0x20] // @5877 stack[1] = 0x587f // @587A stack[2] = msg.data[stack[-8]:stack[-8] + 0x20] // } // Block ends with call to 0x53ba, returns to 0x587F label_587F: // Incoming return from call to 0x53BA at 0x587E // Inputs[4] // { // @5880 stack[-1] // @5880 stack[-8] // @5884 stack[-9] // @5886 msg.data[stack[-9] + 0x20:stack[-9] + 0x20 + 0x20] // } 587F 5B JUMPDEST 5880 96 SWAP7 5881 50 POP 5882 60 PUSH1 0x20 5884 88 DUP9 5885 01 ADD 5886 35 CALLDATALOAD 5887 61 PUSH2 0x588f 588A 81 DUP2 588B 61 PUSH2 0x53ba 588E 56 *JUMP // Stack delta = +2 // Outputs[4] // { // @5880 stack[-8] = stack[-1] // @5886 stack[-1] = msg.data[stack[-9] + 0x20:stack[-9] + 0x20 + 0x20] // @5887 stack[0] = 0x588f // @588A stack[1] = msg.data[stack[-9] + 0x20:stack[-9] + 0x20 + 0x20] // } // Block ends with call to 0x53ba, returns to 0x588F label_588F: // Incoming return from call to 0x53BA at 0x588E // Inputs[10] // { // @5890 stack[-1] // @5890 stack[-7] // @5894 stack[-9] // @5896 msg.data[stack[-9] + 0x40:stack[-9] + 0x40 + 0x20] // @5897 stack[-6] // @589D msg.data[stack[-9] + 0x60:stack[-9] + 0x60 + 0x20] // @589E stack[-5] // @58A4 msg.data[stack[-9] + 0x80:stack[-9] + 0x80 + 0x20] // @58A5 stack[-4] // @58AB msg.data[stack[-9] + 0xa0:stack[-9] + 0xa0 + 0x20] // } 588F 5B JUMPDEST 5890 95 SWAP6 5891 50 POP 5892 60 PUSH1 0x40 5894 88 DUP9 5895 01 ADD 5896 35 CALLDATALOAD 5897 94 SWAP5 5898 50 POP 5899 60 PUSH1 0x60 589B 88 DUP9 589C 01 ADD 589D 35 CALLDATALOAD 589E 93 SWAP4 589F 50 POP 58A0 60 PUSH1 0x80 58A2 88 DUP9 58A3 01 ADD 58A4 35 CALLDATALOAD 58A5 92 SWAP3 58A6 50 POP 58A7 60 PUSH1 0xa0 58A9 88 DUP9 58AA 01 ADD 58AB 35 CALLDATALOAD 58AC 61 PUSH2 0x58b4 58AF 81 DUP2 58B0 61 PUSH2 0x53ba 58B3 56 *JUMP // Stack delta = +2 // Outputs[7] // { // @5890 stack[-7] = stack[-1] // @5897 stack[-6] = msg.data[stack[-9] + 0x40:stack[-9] + 0x40 + 0x20] // @589E stack[-5] = msg.data[stack[-9] + 0x60:stack[-9] + 0x60 + 0x20] // @58A5 stack[-4] = msg.data[stack[-9] + 0x80:stack[-9] + 0x80 + 0x20] // @58AB stack[-1] = msg.data[stack[-9] + 0xa0:stack[-9] + 0xa0 + 0x20] // @58AC stack[0] = 0x58b4 // @58AF stack[1] = msg.data[stack[-9] + 0xa0:stack[-9] + 0xa0 + 0x20] // } // Block ends with call to 0x53ba, returns to 0x58B4 label_58B4: // Incoming return from call to 0x53BA at 0x58B3 // Inputs[12] // { // @58B5 stack[-1] // @58B6 stack[-3] // @58BB stack[-9] // @58BD msg.data[stack[-9] + 0xc0:stack[-9] + 0xc0 + 0x20] // @58BE stack[-2] // @58C0 stack[-5] // @58C1 stack[-8] // @58C2 stack[-11] // @58C3 stack[-4] // @58C4 stack[-7] // @58C5 stack[-10] // @58C7 stack[-6] // } 58B4 5B JUMPDEST 58B5 80 DUP1 58B6 92 SWAP3 58B7 50 POP 58B8 50 POP 58B9 60 PUSH1 0xc0 58BB 88 DUP9 58BC 01 ADD 58BD 35 CALLDATALOAD 58BE 90 SWAP1 58BF 50 POP 58C0 92 SWAP3 58C1 95 SWAP6 58C2 98 SWAP9 58C3 91 SWAP2 58C4 94 SWAP5 58C5 97 SWAP8 58C6 50 POP 58C7 92 SWAP3 58C8 95 SWAP6 58C9 50 POP 58CA 56 *JUMP // Stack delta = -4 // Outputs[7] // { // @58C0 stack[-5] = msg.data[stack[-9] + 0xc0:stack[-9] + 0xc0 + 0x20] // @58C1 stack[-8] = stack[-5] // @58C2 stack[-11] = stack[-8] // @58C4 stack[-7] = stack[-4] // @58C5 stack[-10] = stack[-7] // @58C7 stack[-6] = stack[-1] // @58C8 stack[-9] = stack[-6] // } // Block ends with unconditional jump to stack[-11] label_58CB: // Incoming call from 0x0558, returns to 0x0559 // Inputs[2] // { // @58DB stack[-1] // @58DC stack[-2] // } 58CB 5B JUMPDEST 58CC 60 PUSH1 0x00 58CE 80 DUP1 58CF 60 PUSH1 0x00 58D1 80 DUP1 58D2 60 PUSH1 0x00 58D4 80 DUP1 58D5 60 PUSH1 0x00 58D7 80 DUP1 58D8 61 PUSH2 0x0100 58DB 89 DUP10 58DC 8B DUP12 58DD 03 SUB 58DE 12 SLT 58DF 15 ISZERO 58E0 61 PUSH2 0x58e8 58E3 57 *JUMPI // Stack delta = +8 // Outputs[8] // { // @58CC stack[0] = 0x00 // @58CE stack[1] = 0x00 // @58CF stack[2] = 0x00 // @58D1 stack[3] = 0x00 // @58D2 stack[4] = 0x00 // @58D4 stack[5] = 0x00 // @58D5 stack[6] = 0x00 // @58D7 stack[7] = 0x00 // } // Block ends with conditional jump to 0x58e8, if !(stack[-2] - stack[-1] i< 0x0100) label_58E4: // Incoming jump from 0x58E3, if not !(stack[-2] - stack[-1] i< 0x0100) // Inputs[1] { @58E7 memory[0x00:0x00] } 58E4 60 PUSH1 0x00 58E6 80 DUP1 58E7 FD *REVERT // Stack delta = +0 // Outputs[1] { @58E7 revert(memory[0x00:0x00]); } // Block terminates label_58E8: // Incoming jump from 0x58E3, if !(stack[-2] - stack[-1] i< 0x0100) // Inputs[2] // { // @58E9 stack[-9] // @58EA msg.data[stack[-9]:stack[-9] + 0x20] // } 58E8 5B JUMPDEST 58E9 88 DUP9 58EA 35 CALLDATALOAD 58EB 61 PUSH2 0x58f3 58EE 81 DUP2 58EF 61 PUSH2 0x53ba 58F2 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @58EA stack[0] = msg.data[stack[-9]:stack[-9] + 0x20] // @58EB stack[1] = 0x58f3 // @58EE stack[2] = msg.data[stack[-9]:stack[-9] + 0x20] // } // Block ends with call to 0x53ba, returns to 0x58F3 label_58F3: // Incoming return from call to 0x53BA at 0x58F2 // Inputs[4] // { // @58F4 stack[-1] // @58F4 stack[-9] // @58F8 stack[-10] // @58FA msg.data[stack[-10] + 0x20:stack[-10] + 0x20 + 0x20] // } 58F3 5B JUMPDEST 58F4 97 SWAP8 58F5 50 POP 58F6 60 PUSH1 0x20 58F8 89 DUP10 58F9 01 ADD 58FA 35 CALLDATALOAD 58FB 61 PUSH2 0x5903 58FE 81 DUP2 58FF 61 PUSH2 0x53ba 5902 56 *JUMP // Stack delta = +2 // Outputs[4] // { // @58F4 stack[-9] = stack[-1] // @58FA stack[-1] = msg.data[stack[-10] + 0x20:stack[-10] + 0x20 + 0x20] // @58FB stack[0] = 0x5903 // @58FE stack[1] = msg.data[stack[-10] + 0x20:stack[-10] + 0x20 + 0x20] // } // Block ends with call to 0x53ba, returns to 0x5903 label_5903: // Incoming return from call to 0x53BA at 0x5902 // Inputs[12] // { // @5904 stack[-1] // @5904 stack[-8] // @5908 stack[-10] // @590A msg.data[stack[-10] + 0x40:stack[-10] + 0x40 + 0x20] // @590B stack[-7] // @5911 msg.data[stack[-10] + 0x60:stack[-10] + 0x60 + 0x20] // @5912 stack[-6] // @5918 msg.data[stack[-10] + 0x80:stack[-10] + 0x80 + 0x20] // @5919 stack[-5] // @591F msg.data[stack[-10] + 0xa0:stack[-10] + 0xa0 + 0x20] // @5920 stack[-4] // @5926 msg.data[stack[-10] + 0xc0:stack[-10] + 0xc0 + 0x20] // } 5903 5B JUMPDEST 5904 96 SWAP7 5905 50 POP 5906 60 PUSH1 0x40 5908 89 DUP10 5909 01 ADD 590A 35 CALLDATALOAD 590B 95 SWAP6 590C 50 POP 590D 60 PUSH1 0x60 590F 89 DUP10 5910 01 ADD 5911 35 CALLDATALOAD 5912 94 SWAP5 5913 50 POP 5914 60 PUSH1 0x80 5916 89 DUP10 5917 01 ADD 5918 35 CALLDATALOAD 5919 93 SWAP4 591A 50 POP 591B 60 PUSH1 0xa0 591D 89 DUP10 591E 01 ADD 591F 35 CALLDATALOAD 5920 92 SWAP3 5921 50 POP 5922 60 PUSH1 0xc0 5924 89 DUP10 5925 01 ADD 5926 35 CALLDATALOAD 5927 61 PUSH2 0x592f 592A 81 DUP2 592B 61 PUSH2 0x53ba 592E 56 *JUMP // Stack delta = +2 // Outputs[8] // { // @5904 stack[-8] = stack[-1] // @590B stack[-7] = msg.data[stack[-10] + 0x40:stack[-10] + 0x40 + 0x20] // @5912 stack[-6] = msg.data[stack[-10] + 0x60:stack[-10] + 0x60 + 0x20] // @5919 stack[-5] = msg.data[stack[-10] + 0x80:stack[-10] + 0x80 + 0x20] // @5920 stack[-4] = msg.data[stack[-10] + 0xa0:stack[-10] + 0xa0 + 0x20] // @5926 stack[-1] = msg.data[stack[-10] + 0xc0:stack[-10] + 0xc0 + 0x20] // @5927 stack[0] = 0x592f // @592A stack[1] = msg.data[stack[-10] + 0xc0:stack[-10] + 0xc0 + 0x20] // } // Block ends with call to 0x53ba, returns to 0x592F label_592F: // Incoming return from call to 0x53BA at 0x592E // Inputs[13] // { // @5930 stack[-1] // @5931 stack[-3] // @5936 stack[-10] // @5938 msg.data[stack[-10] + 0xe0:stack[-10] + 0xe0 + 0x20] // @5939 stack[-2] // @593B stack[-5] // @593C stack[-8] // @593D stack[-11] // @593F stack[-6] // @5940 stack[-9] // @5941 stack[-12] // @5942 stack[-4] // @5943 stack[-7] // } 592F 5B JUMPDEST 5930 80 DUP1 5931 92 SWAP3 5932 50 POP 5933 50 POP 5934 60 PUSH1 0xe0 5936 89 DUP10 5937 01 ADD 5938 35 CALLDATALOAD 5939 90 SWAP1 593A 50 POP 593B 92 SWAP3 593C 95 SWAP6 593D 98 SWAP9 593E 50 POP 593F 92 SWAP3 5940 95 SWAP6 5941 98 SWAP9 5942 90 SWAP1 5943 93 SWAP4 5944 96 SWAP7 5945 50 POP 5946 56 *JUMP // Stack delta = -4 // Outputs[8] // { // @593B stack[-5] = msg.data[stack[-10] + 0xe0:stack[-10] + 0xe0 + 0x20] // @593C stack[-8] = stack[-5] // @593D stack[-11] = stack[-8] // @593F stack[-6] = stack[-1] // @5940 stack[-9] = stack[-6] // @5941 stack[-12] = stack[-9] // @5943 stack[-7] = stack[-4] // @5944 stack[-10] = stack[-7] // } // Block ends with unconditional jump to stack[-12] label_5947: // Incoming jump from 0x5BB3 // Incoming jump from 0x5B55 // Incoming jump from 0x5987 // Incoming jump from 0x5AC3 // Incoming jump from 0x5A8D // Inputs[1] { @5975 memory[0x00:0x24] } 5947 5B JUMPDEST 5948 7F PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 5969 60 PUSH1 0x00 596B 52 MSTORE 596C 60 PUSH1 0x11 596E 60 PUSH1 0x04 5970 52 MSTORE 5971 60 PUSH1 0x24 5973 60 PUSH1 0x00 5975 FD *REVERT // Stack delta = +0 // Outputs[3] // { // @596B memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000 // @5970 memory[0x04:0x24] = 0x11 // @5975 revert(memory[0x00:0x24]); // } // Block terminates label_5976: // Incoming call from 0x3831, returns to 0x3832 // Incoming call from 0x4C6B, returns to 0x4C6C // Incoming call from 0x4355, returns to 0x4356 // Incoming call from 0x4436, returns to 0x4437 // Incoming call from 0x402B, returns to 0x402C // Incoming call from 0x44D7, returns to 0x44D8 // Incoming call from 0x0E0D, returns to 0x0E0E // Incoming call from 0x0FB9, returns to 0x0FBA // Incoming call from 0x081C, returns to 0x081D // Incoming call from 0x4370, returns to 0x402C // Incoming call from 0x4329, returns to 0x432A // Incoming call from 0x3FE4, returns to 0x3FE5 // Incoming call from 0x4329, returns to 0x432A // Incoming call from 0x16F4, returns to 0x16F5 // Incoming call from 0x3FE4, returns to 0x3FE5 // Incoming call from 0x3831, returns to 0x3832 // Incoming call from 0x4010, returns to 0x4011 // Inputs[2] // { // @5979 stack[-2] // @597A stack[-1] // } 5976 5B JUMPDEST 5977 60 PUSH1 0x00 5979 82 DUP3 597A 82 DUP3 597B 10 LT 597C 15 ISZERO 597D 61 PUSH2 0x5988 5980 57 *JUMPI // Stack delta = +1 // Outputs[1] { @5977 stack[0] = 0x00 } // Block ends with conditional jump to 0x5988, if !(stack[-1] < stack[-2]) label_5981: // Incoming jump from 0x5980, if not !(stack[-1] < stack[-2]) 5981 61 PUSH2 0x5988 5984 61 PUSH2 0x5947 5987 56 *JUMP // Stack delta = +1 // Outputs[1] { @5981 stack[0] = 0x5988 } // Block ends with unconditional jump to 0x5947 label_5988: // Incoming jump from 0x5980, if !(stack[-1] < stack[-2]) // Inputs[3] // { // @598A stack[-3] // @598A stack[-2] // @598B stack[-4] // } 5988 5B JUMPDEST 5989 50 POP 598A 03 SUB 598B 90 SWAP1 598C 56 *JUMP // Stack delta = -3 // Outputs[1] { @598B stack[-4] = stack[-2] - stack[-3] } // Block ends with unconditional jump to stack[-4] label_598D: // Incoming jump from 0x3FF4 // Incoming jump from 0x403B // Incoming jump from 0x1F7A // Incoming jump from 0x3876 // Incoming jump from 0x4C4E // Incoming jump from 0x394D // Incoming jump from 0x0E1D // Incoming jump from 0x0FC8 // Incoming jump from 0x44E7 // Incoming jump from 0x1A8D // Incoming jump from 0x4339 // Incoming jump from 0x082B // Incoming jump from 0x0EC9 // Incoming jump from 0x3850 // Incoming jump from 0x1703 // Incoming jump from 0x39EE // Incoming jump from 0x4446 // Incoming jump from 0x4420 // Incoming jump from 0x3933 // Incoming jump from 0x1330 // Incoming jump from 0x4055 // Incoming jump from 0x3814 // Incoming jump from 0x30A4 // Incoming jump from 0x4C8A // Incoming jump from 0x22EC // Inputs[1] { @59BB memory[0x00:0x24] } 598D 5B JUMPDEST 598E 7F PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 59AF 60 PUSH1 0x00 59B1 52 MSTORE 59B2 60 PUSH1 0x32 59B4 60 PUSH1 0x04 59B6 52 MSTORE 59B7 60 PUSH1 0x24 59B9 60 PUSH1 0x00 59BB FD *REVERT // Stack delta = +0 // Outputs[3] // { // @59B1 memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000 // @59B6 memory[0x04:0x24] = 0x32 // @59BB revert(memory[0x00:0x24]); // } // Block terminates label_59BC: // Incoming jump from 0x1AA2 // Incoming jump from 0x1718 // Incoming jump from 0x0840 // Incoming jump from 0x09FE // Incoming jump from 0x1345 // Incoming jump from 0x2301 // Incoming jump from 0x30B9 // Incoming jump from 0x0FDD // Inputs[2] // { // @59C1 stack[-1] // @59C2 stack[-2] // } 59BC 5B JUMPDEST 59BD 60 PUSH1 0x00 59BF 60 PUSH1 0x20 59C1 82 DUP3 59C2 84 DUP5 59C3 03 SUB 59C4 12 SLT 59C5 15 ISZERO 59C6 61 PUSH2 0x59ce 59C9 57 *JUMPI // Stack delta = +1 // Outputs[1] { @59BD stack[0] = 0x00 } // Block ends with conditional jump to 0x59ce, if !(stack[-2] - stack[-1] i< 0x20) label_59CA: // Incoming jump from 0x59C9, if not !(stack[-2] - stack[-1] i< 0x20) // Inputs[1] { @59CD memory[0x00:0x00] } 59CA 60 PUSH1 0x00 59CC 80 DUP1 59CD FD *REVERT // Stack delta = +0 // Outputs[1] { @59CD revert(memory[0x00:0x00]); } // Block terminates label_59CE: // Incoming jump from 0x59C9, if !(stack[-2] - stack[-1] i< 0x20) // Inputs[2] // { // @59CF stack[-2] // @59D0 msg.data[stack[-2]:stack[-2] + 0x20] // } 59CE 5B JUMPDEST 59CF 81 DUP2 59D0 35 CALLDATALOAD 59D1 61 PUSH2 0x0bf3 59D4 81 DUP2 59D5 61 PUSH2 0x53ba 59D8 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @59D0 stack[0] = msg.data[stack[-2]:stack[-2] + 0x20] // @59D1 stack[1] = 0x0bf3 // @59D4 stack[2] = msg.data[stack[-2]:stack[-2] + 0x20] // } // Block ends with call to 0x53ba, returns to 0x0BF3 label_59D9: // Incoming call from 0x44CB, returns to 0x44CC // Incoming call from 0x39D2, returns to 0x39D3 // Inputs[2] // { // @59DE stack[-1] // @59DF stack[-2] // } 59D9 5B JUMPDEST 59DA 60 PUSH1 0x00 59DC 60 PUSH1 0x20 59DE 82 DUP3 59DF 84 DUP5 59E0 03 SUB 59E1 12 SLT 59E2 15 ISZERO 59E3 61 PUSH2 0x59eb 59E6 57 *JUMPI // Stack delta = +1 // Outputs[1] { @59DA stack[0] = 0x00 } // Block ends with conditional jump to 0x59eb, if !(stack[-2] - stack[-1] i< 0x20) label_59E7: // Incoming jump from 0x59E6, if not !(stack[-2] - stack[-1] i< 0x20) // Inputs[1] { @59EA memory[0x00:0x00] } 59E7 60 PUSH1 0x00 59E9 80 DUP1 59EA FD *REVERT // Stack delta = +0 // Outputs[1] { @59EA revert(memory[0x00:0x00]); } // Block terminates label_59EB: // Incoming jump from 0x59E6, if !(stack[-2] - stack[-1] i< 0x20) // Inputs[4] // { // @59ED memory[stack[-2]:stack[-2] + 0x20] // @59ED stack[-2] // @59EE stack[-4] // @59EF stack[-3] // } 59EB 5B JUMPDEST 59EC 50 POP 59ED 51 MLOAD 59EE 91 SWAP2 59EF 90 SWAP1 59F0 50 POP 59F1 56 *JUMP // Stack delta = -3 // Outputs[1] { @59EE stack[-4] = memory[stack[-2]:stack[-2] + 0x20] } // Block ends with unconditional jump to stack[-4] label_59F2: // Incoming jump from 0x27E2 // Incoming jump from 0x4CFB // Incoming jump from 0x40C6 // Inputs[2] // { // @59F7 stack[-1] // @59F8 stack[-2] // } 59F2 5B JUMPDEST 59F3 60 PUSH1 0x00 59F5 60 PUSH1 0x20 59F7 82 DUP3 59F8 84 DUP5 59F9 03 SUB 59FA 12 SLT 59FB 15 ISZERO 59FC 61 PUSH2 0x5a04 59FF 57 *JUMPI // Stack delta = +1 // Outputs[1] { @59F3 stack[0] = 0x00 } // Block ends with conditional jump to 0x5a04, if !(stack[-2] - stack[-1] i< 0x20) label_5A00: // Incoming jump from 0x59FF, if not !(stack[-2] - stack[-1] i< 0x20) // Inputs[1] { @5A03 memory[0x00:0x00] } 5A00 60 PUSH1 0x00 5A02 80 DUP1 5A03 FD *REVERT // Stack delta = +0 // Outputs[1] { @5A03 revert(memory[0x00:0x00]); } // Block terminates label_5A04: // Incoming jump from 0x59FF, if !(stack[-2] - stack[-1] i< 0x20) // Inputs[2] // { // @5A05 stack[-2] // @5A06 memory[stack[-2]:stack[-2] + 0x20] // } 5A04 5B JUMPDEST 5A05 81 DUP2 5A06 51 MLOAD 5A07 61 PUSH2 0x0bf3 5A0A 81 DUP2 5A0B 61 PUSH2 0x5693 5A0E 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @5A06 stack[0] = memory[stack[-2]:stack[-2] + 0x20] // @5A07 stack[1] = 0x0bf3 // @5A0A stack[2] = memory[stack[-2]:stack[-2] + 0x20] // } // Block ends with call to 0x5693, returns to 0x0BF3 5A0F 5B JUMPDEST 5A10 60 PUSH1 0x00 5A12 80 DUP1 5A13 60 PUSH1 0x40 5A15 83 DUP4 5A16 85 DUP6 5A17 03 SUB 5A18 12 SLT 5A19 15 ISZERO 5A1A 61 PUSH2 0x5a22 5A1D 57 *JUMPI 5A1E 60 PUSH1 0x00 5A20 80 DUP1 5A21 FD *REVERT 5A22 5B JUMPDEST 5A23 50 POP 5A24 50 POP 5A25 80 DUP1 5A26 51 MLOAD 5A27 60 PUSH1 0x20 5A29 90 SWAP1 5A2A 91 SWAP2 5A2B 01 ADD 5A2C 51 MLOAD 5A2D 90 SWAP1 5A2E 92 SWAP3 5A2F 90 SWAP1 5A30 91 SWAP2 5A31 50 POP 5A32 56 *JUMP 5A33 5B JUMPDEST 5A34 60 PUSH1 0x00 5A36 5B JUMPDEST 5A37 83 DUP4 5A38 81 DUP2 5A39 10 LT 5A3A 15 ISZERO 5A3B 61 PUSH2 0x5a4e 5A3E 57 *JUMPI 5A3F 81 DUP2 5A40 81 DUP2 5A41 01 ADD 5A42 51 MLOAD 5A43 83 DUP4 5A44 82 DUP3 5A45 01 ADD 5A46 52 MSTORE 5A47 60 PUSH1 0x20 5A49 01 ADD 5A4A 61 PUSH2 0x5a36 5A4D 56 *JUMP 5A4E 5B JUMPDEST 5A4F 83 DUP4 5A50 81 DUP2 5A51 11 GT 5A52 15 ISZERO 5A53 61 PUSH2 0x3ef5 5A56 57 *JUMPI 5A57 50 POP 5A58 50 POP 5A59 60 PUSH1 0x00 5A5B 91 SWAP2 5A5C 01 ADD 5A5D 52 MSTORE 5A5E 56 *JUMP 5A5F 5B JUMPDEST 5A60 60 PUSH1 0x00 5A62 82 DUP3 5A63 51 MLOAD 5A64 61 PUSH2 0x5a71 5A67 81 DUP2 5A68 84 DUP5 5A69 60 PUSH1 0x20 5A6B 87 DUP8 5A6C 01 ADD 5A6D 61 PUSH2 0x5a33 5A70 56 *JUMP 5A71 5B JUMPDEST 5A72 91 SWAP2 5A73 90 SWAP1 5A74 91 SWAP2 5A75 01 ADD 5A76 92 SWAP3 5A77 91 SWAP2 5A78 50 POP 5A79 50 POP 5A7A 56 *JUMP label_5A7B: // Incoming call from 0x39DE, returns to 0x39DF // Incoming call from 0x3866, returns to 0x3867 // Inputs[2] // { // @5A7E stack[-2] // @5A80 stack[-1] // } 5A7B 5B JUMPDEST 5A7C 60 PUSH1 0x00 5A7E 82 DUP3 5A7F 19 NOT 5A80 82 DUP3 5A81 11 GT 5A82 15 ISZERO 5A83 61 PUSH2 0x5a8e 5A86 57 *JUMPI // Stack delta = +1 // Outputs[1] { @5A7C stack[0] = 0x00 } // Block ends with conditional jump to 0x5a8e, if !(stack[-1] > ~stack[-2]) label_5A87: // Incoming jump from 0x5A86, if not !(stack[-1] > ~stack[-2]) 5A87 61 PUSH2 0x5a8e 5A8A 61 PUSH2 0x5947 5A8D 56 *JUMP // Stack delta = +1 // Outputs[1] { @5A87 stack[0] = 0x5a8e } // Block ends with unconditional jump to 0x5947 label_5A8E: // Incoming jump from 0x5A86, if !(stack[-1] > ~stack[-2]) // Inputs[3] // { // @5A90 stack[-3] // @5A90 stack[-2] // @5A91 stack[-4] // } 5A8E 5B JUMPDEST 5A8F 50 POP 5A90 01 ADD 5A91 90 SWAP1 5A92 56 *JUMP // Stack delta = -3 // Outputs[1] { @5A91 stack[-4] = stack[-2] + stack[-3] } // Block ends with unconditional jump to stack[-4] label_5A93: // Incoming call from 0x3A04, returns to 0x3A05 // Inputs[1] { @5AB7 stack[-1] } 5A93 5B JUMPDEST 5A94 60 PUSH1 0x00 5A96 7F PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 5AB7 82 DUP3 5AB8 03 SUB 5AB9 61 PUSH2 0x5ac4 5ABC 57 *JUMPI // Stack delta = +1 // Outputs[1] { @5A94 stack[0] = 0x00 } // Block ends with conditional jump to 0x5ac4, if stack[-1] - 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff label_5ABD: // Incoming jump from 0x5ABC, if not stack[-1] - 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 5ABD 61 PUSH2 0x5ac4 5AC0 61 PUSH2 0x5947 5AC3 56 *JUMP // Stack delta = +1 // Outputs[1] { @5ABD stack[0] = 0x5ac4 } // Block ends with unconditional jump to 0x5947 label_5AC4: // Incoming jump from 0x5ABC, if stack[-1] - 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff // Inputs[2] // { // @5AC8 stack[-2] // @5AC9 stack[-3] // } 5AC4 5B JUMPDEST 5AC5 50 POP 5AC6 60 PUSH1 0x01 5AC8 01 ADD 5AC9 90 SWAP1 5ACA 56 *JUMP // Stack delta = -2 // Outputs[1] { @5AC9 stack[-3] = 0x01 + stack[-2] } // Block ends with unconditional jump to stack[-3] 5ACB 5B JUMPDEST 5ACC 84 DUP5 5ACD 81 DUP2 5ACE 52 MSTORE 5ACF 83 DUP4 5AD0 60 PUSH1 0x20 5AD2 82 DUP3 5AD3 01 ADD 5AD4 52 MSTORE 5AD5 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 5AEA 83 DUP4 5AEB 16 AND 5AEC 60 PUSH1 0x40 5AEE 82 DUP3 5AEF 01 ADD 5AF0 52 MSTORE 5AF1 60 PUSH1 0x80 5AF3 60 PUSH1 0x60 5AF5 82 DUP3 5AF6 01 ADD 5AF7 52 MSTORE 5AF8 60 PUSH1 0x00 5AFA 82 DUP3 5AFB 51 MLOAD 5AFC 80 DUP1 5AFD 60 PUSH1 0x80 5AFF 84 DUP5 5B00 01 ADD 5B01 52 MSTORE 5B02 61 PUSH2 0x5b12 5B05 81 DUP2 5B06 60 PUSH1 0xa0 5B08 85 DUP6 5B09 01 ADD 5B0A 60 PUSH1 0x20 5B0C 87 DUP8 5B0D 01 ADD 5B0E 61 PUSH2 0x5a33 5B11 56 *JUMP 5B12 5B JUMPDEST 5B13 60 PUSH1 0x1f 5B15 01 ADD 5B16 7F PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 5B37 16 AND 5B38 91 SWAP2 5B39 90 SWAP1 5B3A 91 SWAP2 5B3B 01 ADD 5B3C 60 PUSH1 0xa0 5B3E 01 ADD 5B3F 95 SWAP6 5B40 94 SWAP5 5B41 50 POP 5B42 50 POP 5B43 50 POP 5B44 50 POP 5B45 50 POP 5B46 56 *JUMP label_5B47: // Incoming call from 0x44FD, returns to 0x44FE // Inputs[1] { @5B4A stack[-1] } 5B47 5B JUMPDEST 5B48 60 PUSH1 0x00 5B4A 81 DUP2 5B4B 61 PUSH2 0x5b56 5B4E 57 *JUMPI // Stack delta = +1 // Outputs[1] { @5B48 stack[0] = 0x00 } // Block ends with conditional jump to 0x5b56, if stack[-1] label_5B4F: // Incoming jump from 0x5B4E, if not stack[-1] 5B4F 61 PUSH2 0x5b56 5B52 61 PUSH2 0x5947 5B55 56 *JUMP // Stack delta = +1 // Outputs[1] { @5B4F stack[0] = 0x5b56 } // Block ends with unconditional jump to 0x5947 label_5B56: // Incoming jump from 0x5B4E, if stack[-1] // Inputs[2] // { // @5B79 stack[-2] // @5B7A stack[-3] // } 5B56 5B JUMPDEST 5B57 50 POP 5B58 7F PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 5B79 01 ADD 5B7A 90 SWAP1 5B7B 56 *JUMP // Stack delta = -2 // Outputs[1] { @5B7A stack[-3] = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + stack[-2] } // Block ends with unconditional jump to stack[-3] label_5B7C: // Incoming call from 0x49AC, returns to 0x49AD // Inputs[2] // { // @5B7F stack[-1] // @5BA2 stack[-2] // } 5B7C 5B JUMPDEST 5B7D 60 PUSH1 0x00 5B7F 81 DUP2 5B80 7F PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 5BA1 04 DIV 5BA2 83 DUP4 5BA3 11 GT 5BA4 82 DUP3 5BA5 15 ISZERO 5BA6 15 ISZERO 5BA7 16 AND 5BA8 15 ISZERO 5BA9 61 PUSH2 0x5bb4 5BAC 57 *JUMPI // Stack delta = +1 // Outputs[1] { @5B7D stack[0] = 0x00 } // Block ends with conditional jump to 0x5bb4, if !(!!stack[-1] & (stack[-2] > 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff / stack[-1])) label_5BAD: // Incoming jump from 0x5BAC, if not !(!!stack[-1] & (stack[-2] > 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff / stack[-1])) 5BAD 61 PUSH2 0x5bb4 5BB0 61 PUSH2 0x5947 5BB3 56 *JUMP // Stack delta = +1 // Outputs[1] { @5BAD stack[0] = 0x5bb4 } // Block ends with unconditional jump to 0x5947 label_5BB4: // Incoming jump from 0x5BAC, if !(!!stack[-1] & (stack[-2] > 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff / stack[-1])) // Inputs[3] // { // @5BB6 stack[-3] // @5BB6 stack[-2] // @5BB7 stack[-4] // } 5BB4 5B JUMPDEST 5BB5 50 POP 5BB6 02 MUL 5BB7 90 SWAP1 5BB8 56 *JUMP // Stack delta = -3 // Outputs[1] { @5BB7 stack[-4] = stack[-2] * stack[-3] } // Block ends with unconditional jump to stack[-4] label_5BB9: // Incoming call from 0x49B6, returns to 0x201E // Inputs[1] { @5BBC stack[-2] } 5BB9 5B JUMPDEST 5BBA 60 PUSH1 0x00 5BBC 82 DUP3 5BBD 61 PUSH2 0x5bef 5BC0 57 *JUMPI // Stack delta = +1 // Outputs[1] { @5BBA stack[0] = 0x00 } // Block ends with conditional jump to 0x5bef, if stack[-2] label_5BC1: // Incoming jump from 0x5BC0, if not stack[-2] // Inputs[1] { @5BEE memory[0x00:0x24] } 5BC1 7F PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 5BE2 60 PUSH1 0x00 5BE4 52 MSTORE 5BE5 60 PUSH1 0x12 5BE7 60 PUSH1 0x04 5BE9 52 MSTORE 5BEA 60 PUSH1 0x24 5BEC 60 PUSH1 0x00 5BEE FD *REVERT // Stack delta = +0 // Outputs[3] // { // @5BE4 memory[0x00:0x20] = 0x4e487b7100000000000000000000000000000000000000000000000000000000 // @5BE9 memory[0x04:0x24] = 0x12 // @5BEE revert(memory[0x00:0x24]); // } // Block terminates label_5BEF: // Incoming jump from 0x5BC0, if stack[-2] // Inputs[3] // { // @5BF1 stack[-2] // @5BF1 stack[-3] // @5BF2 stack[-4] // } 5BEF 5B JUMPDEST 5BF0 50 POP 5BF1 04 DIV 5BF2 90 SWAP1 5BF3 56 *JUMP // Stack delta = -3 // Outputs[1] { @5BF2 stack[-4] = stack[-2] / stack[-3] } // Block ends with unconditional jump to stack[-4] label_5BF4: // Incoming jump from 0x4F29 // Inputs[2] // { // @5BF9 stack[-1] // @5BFA stack[-2] // } 5BF4 5B JUMPDEST 5BF5 60 PUSH1 0x00 5BF7 60 PUSH1 0x20 5BF9 82 DUP3 5BFA 84 DUP5 5BFB 03 SUB 5BFC 12 SLT 5BFD 15 ISZERO 5BFE 61 PUSH2 0x5c06 5C01 57 *JUMPI // Stack delta = +1 // Outputs[1] { @5BF5 stack[0] = 0x00 } // Block ends with conditional jump to 0x5c06, if !(stack[-2] - stack[-1] i< 0x20) label_5C02: // Incoming jump from 0x5C01, if not !(stack[-2] - stack[-1] i< 0x20) // Inputs[1] { @5C05 memory[0x00:0x00] } 5C02 60 PUSH1 0x00 5C04 80 DUP1 5C05 FD *REVERT // Stack delta = +0 // Outputs[1] { @5C05 revert(memory[0x00:0x00]); } // Block terminates label_5C06: // Incoming jump from 0x5C01, if !(stack[-2] - stack[-1] i< 0x20) // Inputs[2] // { // @5C07 stack[-2] // @5C08 memory[stack[-2]:stack[-2] + 0x20] // } 5C06 5B JUMPDEST 5C07 81 DUP2 5C08 51 MLOAD 5C09 61 PUSH2 0x0bf3 5C0C 81 DUP2 5C0D 61 PUSH2 0x53ba 5C10 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @5C08 stack[0] = memory[stack[-2]:stack[-2] + 0x20] // @5C09 stack[1] = 0x0bf3 // @5C0C stack[2] = memory[stack[-2]:stack[-2] + 0x20] // } // Block ends with call to 0x53ba, returns to 0x0BF3 5C11 5B JUMPDEST 5C12 80 DUP1 5C13 51 MLOAD 5C14 6D PUSH14 0xffffffffffffffffffffffffffff 5C23 81 DUP2 5C24 16 AND 5C25 81 DUP2 5C26 14 EQ 5C27 61 PUSH2 0x53ea 5C2A 57 *JUMPI 5C2B 60 PUSH1 0x00 5C2D 80 DUP1 5C2E FD *REVERT 5C2F 5B JUMPDEST 5C30 60 PUSH1 0x00 5C32 80 DUP1 5C33 60 PUSH1 0x00 5C35 80 DUP1 5C36 60 PUSH1 0x00 5C38 80 DUP1 5C39 60 PUSH1 0xc0 5C3B 87 DUP8 5C3C 89 DUP10 5C3D 03 SUB 5C3E 12 SLT 5C3F 15 ISZERO 5C40 61 PUSH2 0x5c48 5C43 57 *JUMPI 5C44 60 PUSH1 0x00 5C46 80 DUP1 5C47 FD *REVERT 5C48 5B JUMPDEST 5C49 61 PUSH2 0x5c51 5C4C 87 DUP8 5C4D 61 PUSH2 0x5c11 5C50 56 *JUMP 5C51 5B JUMPDEST 5C52 95 SWAP6 5C53 50 POP 5C54 61 PUSH2 0x5c5f 5C57 60 PUSH1 0x20 5C59 88 DUP9 5C5A 01 ADD 5C5B 61 PUSH2 0x5c11 5C5E 56 *JUMP 5C5F 5B JUMPDEST 5C60 94 SWAP5 5C61 50 POP 5C62 60 PUSH1 0x40 5C64 87 DUP8 5C65 01 ADD 5C66 51 MLOAD 5C67 63 PUSH4 0xffffffff 5C6C 81 DUP2 5C6D 16 AND 5C6E 81 DUP2 5C6F 14 EQ 5C70 61 PUSH2 0x5c78 5C73 57 *JUMPI 5C74 60 PUSH1 0x00 5C76 80 DUP1 5C77 FD *REVERT 5C78 5B JUMPDEST 5C79 93 SWAP4 5C7A 50 POP 5C7B 61 PUSH2 0x5c86 5C7E 60 PUSH1 0x60 5C80 88 DUP9 5C81 01 ADD 5C82 61 PUSH2 0x5c11 5C85 56 *JUMP 5C86 5B JUMPDEST 5C87 92 SWAP3 5C88 50 POP 5C89 61 PUSH2 0x5c94 5C8C 60 PUSH1 0x80 5C8E 88 DUP9 5C8F 01 ADD 5C90 61 PUSH2 0x5c11 5C93 56 *JUMP 5C94 5B JUMPDEST 5C95 91 SWAP2 5C96 50 POP 5C97 60 PUSH1 0xa0 5C99 87 DUP8 5C9A 01 ADD 5C9B 51 MLOAD 5C9C 90 SWAP1 5C9D 50 POP 5C9E 92 SWAP3 5C9F 95 SWAP6 5CA0 50 POP 5CA1 92 SWAP3 5CA2 95 SWAP6 5CA3 50 POP 5CA4 92 SWAP3 5CA5 95 SWAP6 5CA6 56 *JUMP 5CA7 FE *ASSERT 5CA8 A2 LOG2 5CA9 64 PUSH5 0x6970667358 5CAF 22 22 5CB0 12 SLT 5CB1 20 SHA3 5CB2 7A PUSH27 0x375ad13797da9ba0e826e4624fa693dbc00bccb223e40756b2c072 5CCE 93 SWAP4 5CCF 42 TIMESTAMP 5CD0 A0 LOG0 5CD1 03 SUB 5CD2 64 PUSH5 0x736f6c6343 5CD8 00 *STOP 5CD9 08 ADDMOD 5CDA 0F 0F 5CDB 00 *STOP 5CDC 33 CALLER
Found this site useful?
Donations are greatly appreciated!
ETH: 0xB3F04f0c276fa1177c1779f6E1E156B2738ea392
Contact/hire: [email protected]