Online Solidity Decompiler

« Decompile another contract

Address

0xdd6bd08c29ff3ef8780bf6a10d8b620a93ac5705 [etherscan.io | etherchain.org]

Public Methods

Method names cached from 4byte.directory.
0x096a14b2 Unknown
0x10d1e85c uniswapV2Call(address,uint256,uint256,bytes)
0x21fb6c90 demaxCall(address,uint256,uint256,bytes)
0x23a31f8a Unknown
0x26f1c380 Unknown
0x4dfec45a Unknown
0x54c170ea Unknown
0x550d8ca5 Unknown
0x5d1edfbc Unknown
0x61de3df4 Unknown
0x69277b67 Unknown
0x6c813d29 croDefiSwapCall(address,uint256,uint256,bytes)
0x6f62d082 Unknown
0x75908f7c BSCswapCall(address,uint256,uint256,bytes)
0x84800812 pancakeCall(address,uint256,uint256,bytes)
0x8b418713 callFunction(address,(address,uint256),bytes)
0xa401b06f Unknown
0xa69cd4ae Unknown
0xb2ff9f26 swapV2Call(address,uint256,uint256,bytes)
0xc065411d Unknown
0xcce38761 ThugswapCall(address,uint256,uint256,bytes)
0xda7be41f Unknown
0xe1384289 Unknown
0xe801bd7e Unknown
0xee872558 executeOperation(address,uint256,uint256,bytes)
0xf8364b88 Unknown
0xfa461e33 uniswapV3SwapCallback(int256,int256,bytes)

Internal Methods

func_032A(arg0, arg1, arg2)
func_0CA9(arg0, arg1, arg2)
func_137F(arg0, arg1, arg2)
func_1501(arg0, arg1, arg3)
func_1642(arg0, arg1, arg2) returns (r0)
func_2870(arg0, arg1, arg2)
func_2D6E(arg0, arg1, arg2, arg3) returns (r0)
func_2E0E(arg0, arg1, arg2) returns (r0)
func_2FE4(arg0, arg1, arg2) returns (r0)
func_2FF2(arg0) returns (r0)
func_3043(arg0, arg1) returns (r0)
func_3183(arg0, arg1) returns (r0, r1)
func_31E4(arg0, arg1) returns (r0)
func_331B(arg0) returns (r0)
func_3326(arg0, arg1) returns (r0, r1)
func_3366(arg0, arg1) returns (r0)
func_3470(arg0, arg1) returns (r0)
func_34A1(arg0, arg1) returns (r0)
func_3590(arg0, arg1) returns (r0)
func_35FC(arg0, arg1) returns (r0)
func_3668(arg0, arg1) returns (r0)
func_36BB(arg0, arg1) returns (r0)
func_3879(arg0, arg1) returns (r0)
func_3A5E(arg0, arg1) returns (r0)
func_3B1E(arg0, arg1) returns (r0)
func_3BA3(arg0, arg1) returns (r0, r1, r2)
func_3C2C(arg0, arg1) returns (r0, r1, r2, r3, r4)
func_3C94(arg0, arg1) returns (r0, r1, r2, r3)
func_3CF5(arg0, arg1) returns (r0, r1, r2, r3, r4)
func_3DE7(arg0, arg1) returns (r0, r1, r2, r3)
func_3F7A(arg0, arg1) returns (r0)
func_4021(arg0, arg1) returns (r0)
func_403C(arg0, arg1) returns (r0)
func_4214(arg0, arg1) returns (r0)
func_4405(arg0, arg1) returns (r0, r1)
func_4448(arg0, arg1) returns (r0, r1, r2)
func_44FC(arg0, arg1) returns (r0)
func_4714(arg0, arg1) returns (r0)
func_47E3(arg0, arg1) returns (r0)
func_484E(arg0, arg1) returns (r0)
func_4B1F(arg0, arg1) returns (r0)
func_5318(arg0) returns (r0)
func_5349(arg0) returns (r0)
func_536D(arg0) returns (r0)
func_5395(arg0, arg1) returns (r0)
func_54FF(arg0, arg1) returns (r0)
func_556C(arg0, arg1, arg2)
func_5598(arg0) returns (r0)
func_565C(arg0)
func_567E(arg0)

Decompilation

contract Contract { function main() { memory[0x40:0x60] = 0x80; var var0 = msg.value; if (var0) { revert(memory[0x00:0x00]); } if (msg.data.length < 0x04) { revert(memory[0x00:0x00]); } var0 = msg.data[0x00:0x20] >> 0xe0; if (0x75908f7c > var0) { if (0x54c170ea > var0) { if (0x23a31f8a > var0) { if (var0 == 0x096a14b2) { // Dispatch table entry for 0x096a14b2 (unknown) var var1 = 0x01d1; var var2 = 0x01cc; var var3 = msg.data.length; var var4 = 0x04; var var5 = 0x00; if (var3 - var4 i>= 0x20) { var var6 = msg.data[var4:var4 + 0x20]; var var7 = 0xffffffffffffffff; if (var6 <= var7) { var temp0 = var4 + var6; var6 = temp0; var var8 = 0x0120; if (var3 - var6 i>= var8) { var var9 = 0x42ca; var var10 = var8; var9 = func_5318(var10); var8 = var9; var9 = 0x42d5; var10 = var6; var9 = func_331B(var10); var temp1 = var8; memory[temp1:temp1 + 0x20] = var9; var temp2 = var6; memory[temp1 + 0x20:temp1 + 0x20 + 0x20] = msg.data[temp2 + 0x20:temp2 + 0x20 + 0x20]; memory[temp1 + 0x40:temp1 + 0x40 + 0x20] = msg.data[temp2 + 0x40:temp2 + 0x40 + 0x20]; var9 = 0x42f7; var10 = temp2 + 0x60; var9 = func_331B(var10); memory[var8 + 0x60:var8 + 0x60 + 0x20] = var9; var9 = msg.data[var6 + 0x80:var6 + 0x80 + 0x20]; if (var9 <= var7) { var10 = 0x4319; var var11 = var3; var var12 = var6 + var9; var10 = func_3366(var11, var12); memory[var8 + 0x80:var8 + 0x80 + 0x20] = var10; var9 = 0x432b; var10 = var6 + 0xa0; var9 = func_331B(var10); memory[var8 + 0xa0:var8 + 0xa0 + 0x20] = var9; var9 = 0x433c; var10 = var6 + 0xc0; var11 = msg.data[var10:var10 + 0x20]; var12 = 0x0496; var var13 = var11; func_565C(var13); label_0496: var9 = var11; // Error: Could not resolve jump destination! } else { var temp3 = var5; revert(memory[temp3:temp3 + temp3]); } } else { var temp4 = var5; revert(memory[temp4:temp4 + temp4]); } } else { var temp5 = var5; revert(memory[temp5:temp5 + temp5]); } } else { var temp6 = var5; revert(memory[temp6:temp6 + temp6]); } } else if (var0 == 0x10d1e85c) { // Dispatch table entry for uniswapV2Call(address,uint256,uint256,bytes) label_01E7: var1 = 0x01fa; var2 = 0x01f5; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6 = func_3C2C(var3, var4); var7 = 0x04a8; var8 = var2; var9 = var3; var10 = var4; var11 = var5; var12 = var6; var13 = 0x00; var var14 = var13; var var15 = var14; var var16 = var15; var var17 = 0x10b2; var var18 = var11 + var12; var var19 = var11; var var20 = 0x00; var var21 = var20; var var22 = 0x00; var var23 = var22; if (var18 - var19 i>= 0x0100) { var var24 = 0x44be; var var25 = var18; var var26 = var19; var24 = func_3590(var25, var26); var20 = var24; var24 = msg.data[var19 + 0xa0:var19 + 0xa0 + 0x20]; if (var24 <= 0xffffffffffffffff) { var25 = 0x44e5; var26 = var18; var var27 = var19 + var24; label_31C5: var var28 = 0x00; if (var27 + 0x1f i< var26) { var var29 = 0x2d67; var var30 = var26; var temp7 = var27; var var31 = msg.data[temp7:temp7 + 0x20]; var var32 = temp7 + 0x20; var29 = func_2FE4(var30, var31, var32); label_2D67: var25 = var29; // Error: Could not resolve jump destination! } else { var temp8 = var28; revert(memory[temp8:temp8 + temp8]); } } else { var temp9 = var22; revert(memory[temp9:temp9 + temp9]); } } else { var temp10 = var22; revert(memory[temp10:temp10 + temp10]); } } else if (var0 == 0x21fb6c90) { goto label_01E7; } // Dispatch table entry for demaxCall(address,uint256,uint256,bytes) else { revert(memory[0x00:0x00]); } } else if (var0 == 0x23a31f8a) { // Dispatch table entry for 0x23a31f8a (unknown) var1 = 0x020f; var2 = 0x020a; var3 = msg.data.length; var4 = 0x04; var2 = func_403C(var3, var4); var temp11 = memory[0x40:0x60]; var3 = temp11; memory[0x40:0x60] = var3 + 0x40; memory[var3:var3 + 0x20] = 0x60; memory[var3 + 0x20:var3 + 0x20 + 0x20] = 0x60; label_0493: var3 = var2; goto label_0496; } else if (var0 == 0x26f1c380) { // Dispatch table entry for 0x26f1c380 (unknown) var1 = 0x022f; var2 = 0x022a; var3 = msg.data.length; var4 = 0x04; var5 = 0x00; if (var3 - var4 i>= 0xa0) { var6 = 0x2d67; var7 = var3; var8 = var4; var6 = func_3590(var7, var8); goto label_2D67; } else { var temp12 = var5; revert(memory[temp12:temp12 + temp12]); } } else if (var0 == 0x4dfec45a) { // Dispatch table entry for 0x4dfec45a (unknown) var1 = 0x024f; var2 = 0x024a; var3 = msg.data.length; var4 = 0x04; var2 = func_4021(var3, var4); var temp13 = memory[0x40:0x60]; var3 = temp13; memory[0x40:0x60] = var3 + 0x40; memory[var3:var3 + 0x20] = 0x00; memory[var3 + 0x20:var3 + 0x20 + 0x20] = 0x00; goto label_0493; } else { revert(memory[0x00:0x00]); } } else if (0x61de3df4 > var0) { if (var0 == 0x54c170ea) { // Dispatch table entry for 0x54c170ea (unknown) var1 = 0x026f; var2 = 0x026a; var3 = msg.data.length; var4 = 0x04; var2 = func_44FC(var3, var4); var temp14 = memory[0x40:0x60]; memory[0x40:0x60] = temp14 + 0x80; memory[temp14:temp14 + 0x20] = !!0x00; var temp15 = temp14 + 0x20; memory[temp15:temp15 + 0x20] = 0x00; var temp16 = temp15 + 0x20; memory[temp16:temp16 + 0x20] = 0x00; memory[temp16 + 0x20:temp16 + 0x20 + 0x20] = 0x60; var3 = temp14; goto label_0493; } else if (var0 == 0x550d8ca5) { // Dispatch table entry for 0x550d8ca5 (unknown) var1 = 0x028f; var2 = 0x028a; var3 = msg.data.length; var4 = 0x04; var2 = func_4214(var3, var4); label_028A: var temp17 = memory[0x40:0x60]; var3 = temp17; memory[0x40:0x60] = var3 + 0x40; memory[var3:var3 + 0x20] = 0x00; memory[var3 + 0x20:var3 + 0x20 + 0x20] = 0x60; goto label_0493; } else if (var0 == 0x5d1edfbc) { // Dispatch table entry for 0x5d1edfbc (unknown) var1 = 0x02af; var2 = 0x02aa; var3 = msg.data.length; var4 = 0x04; var5 = 0x00; if (var3 - var4 i>= 0x20) { var6 = msg.data[var4:var4 + 0x20]; if (var6 <= 0xffffffffffffffff) { var7 = 0x2c78; var8 = var3; var9 = var4 + var6; var7 = func_34A1(var8, var9); label_2C78: var2 = var7; // Error: Could not resolve jump destination! } else { var temp18 = var5; revert(memory[temp18:temp18 + temp18]); } } else { var temp19 = var5; revert(memory[temp19:temp19 + temp19]); } } else { revert(memory[0x00:0x00]); } } else if (var0 == 0x61de3df4) { // Dispatch table entry for 0x61de3df4 (unknown) var1 = 0x02cf; var2 = 0x02ca; var3 = msg.data.length; var4 = 0x04; var5 = 0x00; if (var3 - var4 i>= 0x20) { var6 = msg.data[var4:var4 + 0x20]; if (var6 <= 0xffffffffffffffff) { var7 = 0x2c78; var8 = var3; var9 = var4 + var6; var7 = func_3879(var8, var9); goto label_2C78; } else { var temp20 = var5; revert(memory[temp20:temp20 + temp20]); } } else { var temp21 = var5; revert(memory[temp21:temp21 + temp21]); } } else if (var0 == 0x69277b67) { // Dispatch table entry for 0x69277b67 (unknown) var1 = 0x02ef; var2 = 0x02ea; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5, var6 = func_3CF5(var3, var4); var7 = 0x60; var8 = 0x00; var9 = 0x05da; var temp22 = var6; var10 = temp22 + 0xc0; var11 = temp22 + 0xa0; var12 = 0x00; if (var10 - var11 i>= 0x20) { var13 = msg.data[var11:var11 + 0x20]; var14 = 0x2d67; var15 = var13; func_567E(var15); goto label_2D67; } else { var temp23 = var12; revert(memory[temp23:temp23 + temp23]); } } else if (var0 == 0x6c813d29) { goto label_01E7; } // Dispatch table entry for croDefiSwapCall(address,uint256,uint256,bytes) else if (var0 == 0x6f62d082) { // Dispatch table entry for 0x6f62d082 (unknown) var1 = 0x030f; var2 = 0x030a; var3 = msg.data.length; var4 = 0x04; var5 = 0x00; if (var3 - var4 i>= 0x20) { var6 = msg.data[var4:var4 + 0x20]; if (var6 <= 0xffffffffffffffff) { var7 = 0x2c78; var8 = var3; var9 = var4 + var6; var7 = func_3668(var8, var9); goto label_2C78; } else { var temp24 = var5; revert(memory[temp24:temp24 + temp24]); } } else { var temp25 = var5; revert(memory[temp25:temp25 + temp25]); } } else { revert(memory[0x00:0x00]); } } else if (0xcce38761 > var0) { if (0xa401b06f > var0) { if (var0 == 0x75908f7c) { goto label_01E7; } // Dispatch table entry for BSCswapCall(address,uint256,uint256,bytes) if (var0 == 0x84800812) { goto label_01E7; } // Dispatch table entry for pancakeCall(address,uint256,uint256,bytes) if (var0 != 0x8b418713) { revert(memory[0x00:0x00]); } var1 = 0x01fa; var2 = 0x032a; var3 = msg.data.length; var4 = 0x04; var2, var3, var4 = func_3BA3(var3, var4); func_032A(var2, var3, var4); stop(); } else if (var0 == 0xa401b06f) { // Dispatch table entry for 0xa401b06f (unknown) var1 = 0x0342; var2 = 0x033d; var3 = msg.data.length; var4 = 0x04; var5 = 0x00; if (var3 - var4 i>= 0x20) { var6 = msg.data[var4:var4 + 0x20]; var7 = 0xffffffffffffffff; if (var6 <= var7) { var temp26 = var4 + var6; var7 = var7; var6 = temp26; if (var3 - var6 i>= 0x40) { var8 = 0x3e98; var9 = 0x40; var8 = func_5318(var9); var temp27 = var6; memory[var8:var8 + 0x20] = msg.data[temp27:temp27 + 0x20]; var9 = msg.data[temp27 + 0x20:temp27 + 0x20 + 0x20]; if (var9 <= var7) { var10 = 0x3eb9; var11 = var3; var12 = var6 + var9; var10 = func_3A5E(var11, var12); memory[var8 + 0x20:var8 + 0x20 + 0x20] = var10; var2 = var8; // Error: Could not resolve jump destination! } else { var temp28 = var5; revert(memory[temp28:temp28 + temp28]); } } else { var temp29 = var5; revert(memory[temp29:temp29 + temp29]); } } else { var temp30 = var5; revert(memory[temp30:temp30 + temp30]); } } else { var temp31 = var5; revert(memory[temp31:temp31 + temp31]); } } else if (var0 == 0xa69cd4ae) { // Dispatch table entry for 0xa69cd4ae (unknown) var1 = 0x0362; var2 = 0x035d; var3 = msg.data.length; var4 = 0x04; var2 = func_3F7A(var3, var4); var temp32 = memory[0x40:0x60]; memory[0x40:0x60] = temp32 + 0xa0; memory[temp32:temp32 + 0x20] = 0xffffffffffffffffffffffffffffffffffffffff & 0x00; var temp33 = temp32 + 0x20; memory[temp33:temp33 + 0x20] = 0x00; var temp34 = temp33 + 0x20; memory[temp34:temp34 + 0x20] = 0x00; var temp35 = temp34 + 0x20; memory[temp35:temp35 + 0x20] = !!0x00; memory[temp35 + 0x20:temp35 + 0x20 + 0x20] = 0x60; var3 = temp32; goto label_0493; } else if (var0 == 0xb2ff9f26) { goto label_01E7; } // Dispatch table entry for swapV2Call(address,uint256,uint256,bytes) else if (var0 == 0xc065411d) { // Dispatch table entry for 0xc065411d (unknown) var1 = 0x037d; var2 = 0x024a; var3 = msg.data.length; var4 = 0x04; var5 = 0x00; if (var3 - var4 i>= 0x40) { var6 = 0x2d67; var7 = var3; var8 = var4; label_33F5: var9 = 0x00; if (var7 - var8 i>= 0x40) { var10 = 0x3410; var11 = 0x40; var10 = func_5318(var11); var9 = var10; var10 = msg.data[var8:var8 + 0x20]; var11 = 0x341d; var12 = var10; func_565C(var12); memory[var9:var9 + 0x20] = var10; var10 = msg.data[var8 + 0x20:var8 + 0x20 + 0x20]; var11 = 0x342d; var12 = var10; func_565C(var12); memory[var9 + 0x20:var9 + 0x20 + 0x20] = var10; var6 = var9; // Error: Could not resolve jump destination! } else { var temp36 = var9; revert(memory[temp36:temp36 + temp36]); } } else { var temp37 = var5; revert(memory[temp37:temp37 + temp37]); } } else { revert(memory[0x00:0x00]); } } else if (0xe801bd7e > var0) { if (var0 == 0xcce38761) { goto label_01E7; } // Dispatch table entry for ThugswapCall(address,uint256,uint256,bytes) if (var0 == 0xda7be41f) { // Dispatch table entry for 0xda7be41f (unknown) var1 = 0x039d; var2 = 0x0398; var3 = msg.data.length; var4 = 0x04; var5 = 0x00; if (var3 - var4 i>= 0x20) { var6 = msg.data[var4:var4 + 0x20]; if (var6 <= 0xffffffffffffffff) { var7 = 0x2c78; var8 = var3; var9 = var4 + var6; var7 = func_36BB(var8, var9); goto label_2C78; } else { var temp38 = var5; revert(memory[temp38:temp38 + temp38]); } } else { var temp39 = var5; revert(memory[temp39:temp39 + temp39]); } } else if (var0 == 0xe1384289) { // Dispatch table entry for 0xe1384289 (unknown) var1 = 0x03b8; var2 = 0x028a; var3 = msg.data.length; var4 = 0x04; var2 = func_4714(var3, var4); goto label_028A; } else { revert(memory[0x00:0x00]); } } else if (var0 == 0xe801bd7e) { // Dispatch table entry for 0xe801bd7e (unknown) var1 = 0x03d8; var2 = 0x03d3; var3 = msg.data.length; var4 = 0x04; var5 = 0x00; if (var3 - var4 i>= 0x20) { var6 = msg.data[var4:var4 + 0x20]; if (var6 <= 0xffffffffffffffff) { var7 = 0x2c78; var8 = var3; var9 = var4 + var6; var10 = 0x00; if (var8 - var9 i>= 0xa0) { var11 = 0x3acc; var12 = 0x60; var11 = func_5318(var12); var10 = var11; var11 = 0x3ad8; var12 = var8; var13 = var9; var11 = func_3B1E(var12, var13); memory[var10:var10 + 0x20] = var11; var11 = 0x3ae7; var12 = var8; var13 = var9 + 0x40; goto label_33F5; } else { var temp40 = var10; revert(memory[temp40:temp40 + temp40]); } } else { var temp41 = var5; revert(memory[temp41:temp41 + temp41]); } } else { var temp42 = var5; revert(memory[temp42:temp42 + temp42]); } } else if (var0 == 0xee872558) { // Dispatch table entry for executeOperation(address,uint256,uint256,bytes) var1 = 0x01fa; var2 = 0x03f3; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5 = func_3C94(var3, var4); var6 = 0x00; var7 = var6; var temp43 = var5; var8 = 0x0d2f; var9 = temp43 + 0x20 + memory[temp43:temp43 + 0x20]; var10 = temp43 + 0x20; var8, var9 = func_4405(var9, var10); var7 = var9; var6 = var8; if (msg.sender != memory[var6 + 0x20:var6 + 0x20 + 0x20] & 0xffffffffffffffffffffffffffffffffffffffff) { revert(memory[0x00:0x00]); } var8 = 0x00; var9 = 0x0d7b; var10 = var4; var11 = var3; var9 = func_5395(var10, var11); var temp44 = var9; var8 = temp44; var9 = 0x0d88; var10 = var7; var11 = var3; var12 = var8; func_137F(var10, var11, var12); var9 = 0x00; var temp45 = memory[var6 + 0x20:var6 + 0x20 + 0x20] & 0xffffffffffffffffffffffffffffffffffffffff; var10 = temp45; var11 = 0xc72c4d10; var temp46 = memory[0x40:0x60]; memory[temp46:temp46 + 0x20] = (var11 & 0xffffffff) << 0xe0; var12 = temp46 + 0x04; var13 = 0x20; var14 = memory[0x40:0x60]; var15 = var12 - var14; var16 = var14; var17 = var10; var18 = !address(var17).code.length; if (var18) { revert(memory[0x00:0x00]); } var temp47; temp47, memory[var14:var14 + var13] = address(var17).staticcall.gas(msg.gas)(memory[var16:var16 + var15]); var13 = !temp47; if (!var13) { var temp48 = memory[0x40:0x60]; var temp49 = returndata.length; memory[0x40:0x60] = temp48 + (temp49 + 0x1f & ~0x1f); var10 = 0x0e0c; var12 = temp48; var11 = var12 + temp49; var13 = 0x00; if (var11 - var12 i>= 0x20) { var14 = memory[var12:var12 + 0x20]; var15 = 0x2d67; var16 = var14; func_565C(var16); goto label_2D67; } else { var temp50 = var13; revert(memory[temp50:temp50 + temp50]); } } else { var temp51 = returndata.length; memory[0x00:0x00 + temp51] = returndata[0x00:0x00 + temp51]; revert(memory[0x00:0x00 + returndata.length]); } } else if (var0 == 0xf8364b88) { // Dispatch table entry for 0xf8364b88 (unknown) var1 = 0x0406; var2 = 0x024a; var3 = msg.data.length; var4 = 0x04; var5 = 0x00; if (var3 - var4 i>= 0x40) { var6 = 0x2d67; var7 = var3; var8 = var4; var6 = func_3B1E(var7, var8); goto label_2D67; } else { var temp52 = var5; revert(memory[temp52:temp52 + temp52]); } } else if (var0 == 0xfa461e33) { // Dispatch table entry for uniswapV3SwapCallback(int256,int256,bytes) var1 = 0x01fa; var2 = 0x0421; var3 = msg.data.length; var4 = 0x04; var2, var3, var4, var5 = func_3DE7(var3, var4); var6 = 0x00; var7 = var6; var8 = 0x0f59; var9 = var4 + var5; var10 = var4; var11 = 0x00; var12 = var11; if (var9 - var10 i>= 0xc0) { var13 = 0x43d4; var14 = var9; var15 = var10; var13 = func_3590(var14, var15); var11 = var13; var13 = msg.data[var10 + 0xa0:var10 + 0xa0 + 0x20]; if (var13 <= 0xffffffffffffffff) { var14 = 0x43fb; var15 = var9; var16 = var10 + var13; goto label_31C5; } else { var temp53 = var12; revert(memory[temp53:temp53 + temp53]); } } else { var temp54 = var11; revert(memory[temp54:temp54 + temp54]); } } else { revert(memory[0x00:0x00]); } } function func_032A(var arg0, var arg1, var arg2) { var var0 = 0x00; var var1 = var0; var var2 = 0x00; var temp0 = arg2; var var3 = 0x0c57; var var5 = temp0 + 0x20; var var4 = var5 + memory[temp0:temp0 + 0x20]; var3, var4, var5 = func_4448(var4, var5); var2 = var5; var1 = var4; var0 = var3; if (msg.sender != memory[var0 + 0x20:var0 + 0x20 + 0x20] & 0xffffffffffffffffffffffffffffffffffffffff) { revert(memory[0x00:0x00]); } var3 = 0x0cae; var4 = var1; var5 = var2; var var6 = 0x0ca9; var var7 = var5; var var8 = 0x02; var6 = func_5395(var7, var8); func_0CA9(var4, var5, var6); } function func_0CA9(var arg0, var arg1, var arg2) { func_137F(arg0, arg1, arg2); // Error: Could not resolve method call return address! } function func_137F(var arg0, var arg1, var arg2) { var var0 = 0x00; var var1 = var0; if (var1 >= memory[arg0:arg0 + 0x20]) { label_1764: var1 = !!arg2; if (!arg2) { if (!var1) { label_17DA: return; } else { label_1779: var temp0 = memory[0x40:0x60]; memory[temp0:temp0 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = 0x20; memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = 0x1b; memory[temp0 + 0x44:temp0 + 0x44 + 0x20] = 0x496e73756666696369656e74206f757470757420616d6f756e742e0000000000; var1 = temp0 + 0x64; label_16CC: var temp1 = memory[0x40:0x60]; revert(memory[temp1:temp1 + var1 - temp1]); } } else if (arg1 >= arg2) { goto label_17DA; } else { goto label_1779; } } else { label_138D: var var2 = 0x00; var var3 = arg0; var var4 = var1; if (var4 < memory[var3:var3 + 0x20]) { var temp2 = memory[var4 * 0x20 + 0x20 + var3:var4 * 0x20 + 0x20 + var3 + 0x20]; var2 = temp2; var3 = memory[var2 + 0x40:var2 + 0x40 + 0x20]; var4 = memory[var3 + 0x40:var3 + 0x40 + 0x20]; if (memory[memory[var2 + 0x20:var2 + 0x20 + 0x20] + 0x20:memory[var2 + 0x20:var2 + 0x20 + 0x20] + 0x20 + 0x20] & 0xffffffffffffffffffffffffffffffffffffffff == 0xffffffffffffffffffffffffffffffffffffffff & 0x00) { label_141D: var var5 = 0x00; if (memory[memory[var2:var2 + 0x20]:memory[var2:var2 + 0x20] + 0x20] != 0x01) { label_14B6: var var6 = var4; var var7 = 0x00; if (var7 >= memory[var6:var6 + 0x20]) { memory[0x00:0x20] = 0x4e487b71 << 0xe0; memory[0x04:0x24] = 0x32; revert(memory[0x00:0x24]); } else if (memory[memory[var7 * 0x20 + 0x20 + var6:var7 * 0x20 + 0x20 + var6 + 0x20] + 0x20:memory[var7 * 0x20 + 0x20 + var6:var7 * 0x20 + 0x20 + var6 + 0x20] + 0x20 + 0x20] != 0x01) { label_1551: var6 = 0x00; var7 = var6; var temp3 = var3; var var8 = memory[temp3:temp3 + 0x20] & 0xffffffffffffffffffffffffffffffffffffffff; var var9 = var5; var var10 = 0x1582; var var11 = memory[temp3 + 0x20:temp3 + 0x20 + 0x20]; var var12 = memory[0x40:0x60]; var10 = func_4B1F(var11, var12); var temp4 = memory[0x40:0x60]; var temp5; temp5, memory[temp4:temp4 + 0x00] = address(var8).call.gas(msg.gas).value(var9)(memory[temp4:temp4 + var10 - temp4]); var9 = returndata.length; var10 = var9; if (var10 == 0x00) { var7 = 0x60; var6 = var8; if (var6) { label_15DB: var8 = memory[var4:var4 + 0x20] > 0x01; if (!var8) { label_1618: if (!var8) { label_1669: if (var0) { arg1 = var0; var0 = arg1; if (memory[memory[var2:var2 + 0x20]:memory[var2:var2 + 0x20] + 0x20] != 0x02) { label_174B: var2 = var1; var3 = 0x175c; var4 = var2; var3 = func_5598(var4); var1 = var3; if (var1 >= memory[arg0:arg0 + 0x20]) { goto label_1764; } else { goto label_138D; } } else { var temp6 = memory[0x40:0x60]; var temp7; temp7, memory[temp6:temp6 + 0x00] = address(memory[memory[var2:var2 + 0x20] + 0x20:memory[var2:var2 + 0x20] + 0x20 + 0x20] & 0xffffffffffffffffffffffffffffffffffffffff).call.gas(msg.gas).value(arg1)(memory[temp6:temp6 + 0x00]); var9 = returndata.length; var10 = var9; if (var10 == 0x00) { goto label_174B; } var temp8 = memory[0x40:0x60]; var9 = temp8; memory[0x40:0x60] = var9 + (returndata.length + 0x3f & ~0x1f); memory[var9:var9 + 0x20] = returndata.length; var temp9 = returndata.length; memory[var9 + 0x20:var9 + 0x20 + temp9] = returndata[0x00:0x00 + temp9]; goto label_174B; } } else { var temp10 = memory[0x40:0x60]; memory[temp10:temp10 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; memory[temp10 + 0x04:temp10 + 0x04 + 0x20] = 0x20; memory[temp10 + 0x24:temp10 + 0x24 + 0x20] = 0x13; memory[temp10 + 0x44:temp10 + 0x44 + 0x20] = 0x496e76616c69642073776170206f757470757400000000000000000000000000; var8 = temp10 + 0x64; goto label_16CC; } } else { var8 = 0x1653; var9 = var7; var10 = var4; var11 = 0x01; if (var11 < memory[var10:var10 + 0x20]) { var8 = func_1642(var9, var10, var11); var temp11 = var8; var8 = 0x1666; var10 = temp11 + 0x20; var9 = var10 + memory[temp11:temp11 + 0x20]; var8 = func_47E3(var9, var10); var0 = var8; goto label_1669; } else { memory[0x00:0x20] = 0x4e487b71 << 0xe0; memory[0x04:0x24] = 0x32; revert(memory[0x00:0x24]); } } } else { var8 = var4; var9 = 0x01; if (var9 < memory[var8:var8 + 0x20]) { var8 = memory[memory[var9 * 0x20 + 0x20 + var8:var9 * 0x20 + 0x20 + var8 + 0x20] + 0x20:memory[var9 * 0x20 + 0x20 + var8:var9 * 0x20 + 0x20 + var8 + 0x20] + 0x20 + 0x20] == 0x02; goto label_1618; } else { memory[0x00:0x20] = 0x4e487b71 << 0xe0; memory[0x04:0x24] = 0x32; revert(memory[0x00:0x24]); } } } else { label_15CF: var temp12 = memory[0x40:0x60]; var8 = temp12; var temp13 = returndata.length; var9 = temp13; memory[var8:var8 + var9] = returndata[0x00:0x00 + var9]; revert(memory[var8:var8 + var9]); } } else { var temp14 = memory[0x40:0x60]; var9 = temp14; memory[0x40:0x60] = var9 + (returndata.length + 0x3f & ~0x1f); memory[var9:var9 + 0x20] = returndata.length; var temp15 = returndata.length; memory[var9 + 0x20:var9 + 0x20 + temp15] = returndata[0x00:0x00 + temp15]; var7 = var9; var6 = var8; if (var6) { goto label_15DB; } else { goto label_15CF; } } } else { var6 = 0x1551; var temp16 = memory[0x40:0x60] + 0x20; memory[temp16:temp16 + 0x20] = arg1; var7 = temp16 + 0x20; func_1501(var3, var4, var7); goto label_1551; } } else { var temp17 = memory[memory[var2:var2 + 0x20] + 0x20:memory[var2:var2 + 0x20] + 0x20 + 0x20]; var temp18 = memory[0x40:0x60]; memory[temp18:temp18 + 0x20] = 0x2e1a7d4d00000000000000000000000000000000000000000000000000000000; memory[temp18 + 0x04:temp18 + 0x04 + 0x20] = arg1; var6 = temp17 & 0xffffffffffffffffffffffffffffffffffffffff; var7 = 0x2e1a7d4d; var8 = temp18 + 0x24; var9 = 0x00; var10 = memory[0x40:0x60]; var11 = var8 - var10; var12 = var10; var var13 = 0x00; var var14 = var6; var var15 = !address(var14).code.length; if (var15) { revert(memory[0x00:0x00]); } var temp19; temp19, memory[var10:var10 + var9] = address(var14).call.gas(msg.gas).value(var13)(memory[var12:var12 + var11]); var9 = !temp19; if (!var9) { var5 = arg1; goto label_14B6; } else { var temp20 = returndata.length; memory[0x00:0x00 + temp20] = returndata[0x00:0x00 + temp20]; revert(memory[0x00:0x00 + returndata.length]); } } } else { var temp21 = memory[var2 + 0x20:var2 + 0x20 + 0x20]; var5 = 0x141d; var6 = memory[temp21 + 0x20:temp21 + 0x20 + 0x20]; var7 = memory[temp21:temp21 + 0x20]; var8 = arg1; func_2870(var6, var7, var8); goto label_141D; } } else { memory[0x00:0x20] = 0x4e487b71 << 0xe0; memory[0x04:0x24] = 0x32; revert(memory[0x00:0x24]); } } } function func_1501(var arg0, var arg1, var arg2) { var temp0 = memory[0x40:0x60]; var temp1 = arg2; memory[temp0:temp0 + 0x20] = temp1 - temp0 - 0x20; arg2 = temp0; memory[0x40:0x60] = temp1; var var0 = memory[arg0 + 0x20:arg0 + 0x20 + 0x20]; var var1 = arg1; var var2 = 0x00; if (var2 < memory[var1:var1 + 0x20]) { memory[memory[memory[var2 * 0x20 + 0x20 + var1:var2 * 0x20 + 0x20 + var1 + 0x20]:memory[var2 * 0x20 + 0x20 + var1:var2 * 0x20 + 0x20 + var1 + 0x20] + 0x20] * 0x20 + var0 + 0x04:memory[memory[var2 * 0x20 + 0x20 + var1:var2 * 0x20 + 0x20 + var1 + 0x20]:memory[var2 * 0x20 + 0x20 + var1:var2 * 0x20 + 0x20 + var1 + 0x20] + 0x20] * 0x20 + var0 + 0x04 + 0x20] = memory[arg2 + 0x20:arg2 + 0x20 + 0x20]; return; } else { memory[0x00:0x20] = 0x4e487b71 << 0xe0; memory[0x04:0x24] = 0x32; revert(memory[0x00:0x24]); } } function func_1642(var arg0, var arg1, var arg2) returns (var r0) { arg1 = memory[memory[arg2 * 0x20 + 0x20 + arg1:arg2 * 0x20 + 0x20 + arg1 + 0x20]:memory[arg2 * 0x20 + 0x20 + arg1:arg2 * 0x20 + 0x20 + arg1 + 0x20] + 0x20]; var temp0 = memory[0x40:0x60]; memory[temp0:temp0 + 0x20] = 0x20; memory[0x40:0x60] = temp0 + 0x40; memory[temp0 + 0x20:temp0 + 0x20 + 0x20] = msg.data[msg.data.length:msg.data.length + 0x20]; memory[temp0 + 0x20:temp0 + 0x20 + 0x20] = memory[arg0 + arg1 * 0x20:arg0 + arg1 * 0x20 + 0x20]; return temp0; } function func_2870(var arg0, var arg1, var arg2) { var temp0 = memory[0x40:0x60]; memory[temp0:temp0 + 0x20] = 0xdd62ed3e00000000000000000000000000000000000000000000000000000000; memory[temp0 + 0x04:temp0 + 0x04 + 0x20] = address(this); memory[temp0 + 0x24:temp0 + 0x24 + 0x20] = arg1 & 0xffffffffffffffffffffffffffffffffffffffff; var var0 = arg0; var var1 = 0x00; var var2 = var0 & 0xffffffffffffffffffffffffffffffffffffffff; var var3 = 0xdd62ed3e; var var4 = temp0 + 0x44; var var5 = 0x20; var var6 = memory[0x40:0x60]; var var7 = var4 - var6; var var8 = var6; var var9 = 0x00; var var10 = var2; var var11 = !address(var10).code.length; if (var11) { revert(memory[0x00:0x00]); } var temp1; temp1, memory[var6:var6 + var5] = address(var10).call.gas(msg.gas).value(var9)(memory[var8:var8 + var7]); var5 = !temp1; if (!var5) { var temp2 = memory[0x40:0x60]; var temp3 = returndata.length; memory[0x40:0x60] = temp2 + (temp3 + 0x1f & ~0x1f); var2 = 0x291c; var4 = temp2; var3 = var4 + temp3; var2 = func_47E3(var3, var4); var1 = var2; if (var1 >= arg2) { return; } if (!var1) { var2 = 0x04a8; var3 = var0; var4 = arg1; var5 = 0x2949; var6 = arg2; var7 = 0x03e8; var5 = func_54FF(var6, var7); label_2C80: var temp4 = memory[0x40:0x60]; memory[temp4 + 0x24:temp4 + 0x24 + 0x20] = var4 & 0xffffffffffffffffffffffffffffffffffffffff; memory[temp4 + 0x44:temp4 + 0x44 + 0x20] = var5; var temp5 = memory[0x40:0x60]; memory[temp5:temp5 + 0x20] = temp4 - temp5 + 0x44; memory[0x40:0x60] = temp4 + 0x64; var temp6 = temp5 + 0x20; memory[temp6:temp6 + 0x20] = (memory[temp6:temp6 + 0x20] & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff) | 0x095ea7b300000000000000000000000000000000000000000000000000000000; var6 = 0x2d0d; var8 = temp5; var7 = var3; var9 = 0x00; var10 = 0x2d2e; var11 = var7; var var12 = var8; var temp7 = memory[0x40:0x60]; var var13 = temp7; memory[0x40:0x60] = var13 + 0x20; memory[var13:var13 + 0x20] = 0x00; var var14 = 0x60; var var15 = 0x2d64; var var16 = var11; var var17 = var12; var var18 = 0x00; var var19 = var13; var15 = func_2D6E(var16, var17, var18, var19); var14 = var15; var10 = var14; // Error: Could not resolve jump destination! } else { var2 = 0x2938; var3 = var0; var4 = arg1; var5 = 0x00; goto label_2C80; } } else { var temp8 = returndata.length; memory[0x00:0x00 + temp8] = returndata[0x00:0x00 + temp8]; revert(memory[0x00:0x00 + returndata.length]); } } function func_2D6E(var arg0, var arg1, var arg2, var arg3) returns (var r0) { var var0 = 0x60; if (address(this).balance < arg2) { revert(memory[0x00:0x00]); } if (!address(arg0).code.length) { revert(memory[0x00:0x00]); } var var1 = 0x00; var var2 = var1; var var3 = arg0 & 0xffffffffffffffffffffffffffffffffffffffff; var var4 = arg2; var var5 = 0x2db1; var var7 = memory[0x40:0x60]; var var6 = arg1; var5 = func_4B1F(var6, var7); var temp0 = memory[0x40:0x60]; var temp1; temp1, memory[temp0:temp0 + 0x00] = address(var3).call.gas(msg.gas).value(var4)(memory[temp0:temp0 + var5 - temp0]); var4 = returndata.length; var5 = var4; if (var5 == 0x00) { var2 = 0x60; var temp2 = var3; var1 = temp2; var3 = 0x2e03; var4 = var1; var5 = var2; var6 = arg3; var3 = func_2E0E(var4, var5, var6); label_2E03: return var3; } else { var temp3 = memory[0x40:0x60]; var4 = temp3; memory[0x40:0x60] = var4 + (returndata.length + 0x3f & ~0x1f); memory[var4:var4 + 0x20] = returndata.length; var temp4 = returndata.length; memory[var4 + 0x20:var4 + 0x20 + temp4] = returndata[0x00:0x00 + temp4]; var temp5 = var4; var2 = temp5; var temp6 = var3; var1 = temp6; var3 = 0x2e03; var4 = var1; var5 = var2; var6 = arg3; var3 = func_2E0E(var4, var5, var6); goto label_2E03; } } function func_2E0E(var arg0, var arg1, var arg2) returns (var r0) { var var0 = 0x60; if (arg0) { return arg1; } if (!memory[arg1:arg1 + 0x20]) { var temp0 = memory[0x40:0x60]; memory[temp0:temp0 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000; var var1 = 0x16cc; var var2 = arg2; var var3 = temp0 + 0x04; var var4 = 0x00; var temp1 = var3; memory[temp1:temp1 + 0x20] = 0x20; var var5 = 0x2d67; var var6 = temp1 + 0x20; var var7 = var2; var5 = func_484E(var6, var7); var1 = var5; // Error: Could not resolve jump destination! } else { var temp2 = arg1; var1 = memory[temp2:temp2 + 0x20]; revert(memory[temp2 + 0x20:temp2 + 0x20 + var1]); } } function func_2FE4(var arg0, var arg1, var arg2) returns (var r0) { var var0 = 0x00; var var1 = 0x2ff7; var var2 = 0x2ff2; var var3 = arg1; var2 = func_5349(var3); var1 = func_2FF2(var2); var temp0 = arg1; var temp1 = var1; memory[temp1:temp1 + 0x20] = temp0; var0 = temp1; var1 = var0 + 0x20; var2 = 0x20; var3 = arg2; var var4 = 0x00; if (var4 >= temp0) { return var0; } var var5 = 0x301b; var var6 = arg0; var var7 = arg2 + msg.data[var3:var3 + 0x20]; var var8 = 0x00; if (var6 - var7 i>= 0xa0) { var var9 = 0x3acc; var var10 = 0x60; var9 = func_5318(var10); var8 = var9; var9 = 0x3ad8; var10 = var6; var var11 = var7; var9 = func_3B1E(var10, var11); memory[var8:var8 + 0x20] = var9; var9 = 0x3ae7; var10 = var6; var11 = var7 + 0x40; var var12 = 0x00; if (var10 - var11 i>= 0x40) { var var13 = 0x3410; var var14 = 0x40; var13 = func_5318(var14); var12 = var13; var13 = msg.data[var11:var11 + 0x20]; var14 = 0x341d; var var15 = var13; func_565C(var15); memory[var12:var12 + 0x20] = var13; var13 = msg.data[var11 + 0x20:var11 + 0x20 + 0x20]; var14 = 0x342d; var15 = var13; func_565C(var15); memory[var12 + 0x20:var12 + 0x20 + 0x20] = var13; var9 = var12; // Error: Could not resolve jump destination! } else { var temp2 = var12; revert(memory[temp2:temp2 + temp2]); } } else { var temp3 = var8; revert(memory[temp3:temp3 + temp3]); } } function func_2FF2(var arg0) returns (var r0) { r0 = func_5318(arg0); // Error: Could not resolve method call return address! } function func_3043(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg1 + 0x1f i< arg0) { var var1 = msg.data[arg1:arg1 + 0x20]; var var2 = 0x20; var var3 = 0x3063; var var4 = 0x2ff2; var var5 = var1; var4 = func_5349(var5); var3 = func_2FF2(var4); var temp0 = var1; var temp1 = var3; memory[temp1:temp1 + 0x20] = temp0; var temp2 = var2; var3 = temp1 + temp2; var4 = temp1; var5 = temp2 + arg1; var var6 = var0; if (var6 >= temp0) { label_3098: return var4; } else { label_3078: var var7 = 0x3086; var var8 = arg0; var var9 = arg1 + msg.data[var5:var5 + 0x20] + var2; var7 = func_34A1(var8, var9); var temp3 = var3; memory[temp3:temp3 + 0x20] = var7; var temp4 = var2; var3 = temp4 + temp3; var5 = temp4 + var5; var6 = var6 + 0x01; if (var6 >= var1) { goto label_3098; } else { goto label_3078; } } } else { var temp5 = var0; revert(memory[temp5:temp5 + temp5]); } } function func_3183(var arg0, var arg1) returns (var r0, var arg0) { var var0 = 0x00; var var1 = var0; if (arg1 + 0x1f i< arg0) { var1 = msg.data[arg1:arg1 + 0x20]; if (var1 <= 0xffffffffffffffff) { var temp0 = arg1; var0 = temp0 + 0x20; if (temp0 + var1 * 0x20 + 0x20 > arg0) { revert(memory[0x00:0x00]); } arg0 = var1; r0 = var0; return r0, arg0; } else { var temp1 = var0; revert(memory[temp1:temp1 + temp1]); } } else { var temp2 = var0; revert(memory[temp2:temp2 + temp2]); } } function func_31E4(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg1 + 0x1f i< arg0) { var var1 = memory[arg1:arg1 + 0x20]; var var2 = 0x20; var var3 = 0x3204; var var4 = 0x2ff2; var var5 = var1; var4 = func_5349(var5); var3 = func_2FF2(var4); var temp0 = var1; var temp1 = var3; memory[temp1:temp1 + 0x20] = temp0; var temp2 = var2; var4 = temp1; var3 = var4 + temp2; var5 = temp2 + arg1; var var6 = var0; if (var6 >= temp0) { return var4; } var var7 = arg1 + memory[var5:var5 + 0x20]; var var8 = arg0 - var7 + ~0x1f; var var9 = 0xa0; if (var8 i>= var9) { var var10 = 0x60; var var11 = 0x323c; var var12 = var10; var11 = func_5318(var12); var12 = 0x40; if (var8 i>= var12) { var var13 = 0x3253; var var14 = var12; var13 = func_5318(var14); var8 = var13; var temp3 = var7; memory[var8:var8 + 0x20] = memory[temp3 + var2:temp3 + var2 + 0x20]; var13 = memory[temp3 + var12:temp3 + var12 + 0x20]; var14 = 0x3268; var var15 = var13; func_565C(var15); var temp4 = var8; memory[var2 + temp4:var2 + temp4 + 0x20] = var13; memory[var11:var11 + 0x20] = temp4; var13 = 0x327b; var14 = arg0; var15 = var10 + var7; var var16 = 0x00; if (var14 - var15 i>= 0x40) { var var17 = 0x3453; var var18 = 0x40; var17 = func_5318(var18); var16 = var17; var17 = memory[var15:var15 + 0x20]; var18 = 0x3460; var var19 = var17; func_565C(var19); memory[var16:var16 + 0x20] = var17; var17 = memory[var15 + 0x20:var15 + 0x20 + 0x20]; var18 = 0x342d; var19 = var17; func_565C(var19); memory[var16 + 0x20:var16 + 0x20 + 0x20] = var17; var13 = var16; // Error: Could not resolve jump destination! } else { var temp5 = var16; revert(memory[temp5:temp5 + temp5]); } } else { var temp6 = var0; revert(memory[temp6:temp6 + temp6]); } } else { var temp7 = var0; revert(memory[temp7:temp7 + temp7]); } } else { var temp8 = var0; revert(memory[temp8:temp8 + temp8]); } } function func_331B(var arg0) returns (var r0) { var var0 = msg.data[arg0:arg0 + 0x20]; var var1 = 0x0496; var var2 = var0; func_567E(var2); return var0; } function func_3326(var arg0, var arg1) returns (var r0, var arg0) { var var0 = 0x00; var var1 = var0; if (arg1 + 0x1f i< arg0) { var1 = msg.data[arg1:arg1 + 0x20]; if (var1 <= 0xffffffffffffffff) { var temp0 = arg1; var0 = temp0 + 0x20; if (temp0 + var1 + 0x20 > arg0) { revert(memory[0x00:0x00]); } arg0 = var1; r0 = var0; return r0, arg0; } else { var temp1 = var0; revert(memory[temp1:temp1 + temp1]); } } else { var temp2 = var0; revert(memory[temp2:temp2 + temp2]); } } function func_3366(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg1 + 0x1f i< arg0) { var var1 = msg.data[arg1:arg1 + 0x20]; var var2 = 0x3384; var var3 = 0x2ff2; var var4 = var1; var3 = func_536D(var4); var2 = func_2FF2(var3); var temp0 = var1; memory[var2:var2 + 0x20] = temp0; if (arg1 + temp0 + 0x20 <= arg0) { var temp1 = var1; var temp2 = var2; memory[temp2 + 0x20:temp2 + 0x20 + temp1] = msg.data[arg1 + 0x20:arg1 + 0x20 + temp1]; memory[temp2 + temp1 + 0x20:temp2 + temp1 + 0x20 + 0x20] = var0; return temp2; } else { var temp3 = var0; revert(memory[temp3:temp3 + temp3]); } } else { var temp4 = var0; revert(memory[temp4:temp4 + temp4]); } } function func_3470(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0 - arg1 i>= 0x40) { var var1 = 0x348b; var var2 = 0x40; var1 = func_5318(var2); var temp0 = var1; var temp1 = arg1; memory[temp0:temp0 + 0x20] = msg.data[temp1:temp1 + 0x20]; memory[temp0 + 0x20:temp0 + 0x20 + 0x20] = msg.data[temp1 + 0x20:temp1 + 0x20 + 0x20]; return temp0; } else { var temp2 = var0; revert(memory[temp2:temp2 + temp2]); } } function func_34A1(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0 - arg1 i>= 0xa0) { var var1 = 0x34bc; var var2 = 0xa0; var1 = func_5318(var2); var0 = var1; var1 = msg.data[arg1:arg1 + 0x20]; var2 = 0x34c9; var var3 = var1; func_567E(var3); var temp0 = var0; memory[temp0:temp0 + 0x20] = var1; var1 = 0x20; var temp1 = arg1; memory[temp0 + var1:temp0 + var1 + 0x20] = msg.data[var1 + temp1:var1 + temp1 + 0x20]; memory[temp0 + 0x40:temp0 + 0x40 + 0x20] = msg.data[temp1 + 0x40:temp1 + 0x40 + 0x20]; var2 = msg.data[temp1 + 0x60:temp1 + 0x60 + 0x20]; var3 = 0xffffffffffffffff; if (var2 > var3) { revert(memory[0x00:0x00]); } var var4 = 0x3506; var var5 = arg0; var var6 = arg1 + var2; var4 = func_3366(var5, var6); memory[var0 + 0x60:var0 + 0x60 + 0x20] = var4; var2 = msg.data[arg1 + 0x80:arg1 + 0x80 + 0x20]; if (var2 > var3) { revert(memory[0x00:0x00]); } var temp2 = arg1 + var2; var2 = temp2; if (arg0 i<= var2 + 0x1f) { revert(memory[0x00:0x00]); } var3 = msg.data[var2:var2 + 0x20]; var4 = 0x353f; var5 = 0x2ff2; var6 = var3; var5 = func_5349(var6); var4 = func_2FF2(var5); var temp3 = var3; var temp4 = var4; memory[temp4:temp4 + 0x20] = temp3; var temp5 = var1; var4 = temp4 + temp5; var5 = temp4; var temp6 = var2; var6 = temp5 + temp6; if (arg0 < temp5 + temp6 + temp3 * temp5) { revert(memory[0x00:0x00]); } var2 = 0x00; if (var2 >= var3) { label_357F: memory[var0 + 0x80:var0 + 0x80 + 0x20] = var5; return var0; } else { label_356A: var temp7 = var6; var temp8 = var4; memory[temp8:temp8 + 0x20] = msg.data[temp7:temp7 + 0x20]; var2 = var2 + 0x01; var temp9 = var1; var4 = temp9 + temp8; var6 = temp9 + temp7; if (var2 >= var3) { goto label_357F; } else { goto label_356A; } } } else { var temp10 = var0; revert(memory[temp10:temp10 + temp10]); } } function func_3590(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0 - arg1 i>= 0xa0) { var var1 = 0x35ab; var var2 = 0xa0; var1 = func_5318(var2); var0 = var1; var temp0 = arg1; memory[var0:var0 + 0x20] = msg.data[temp0:temp0 + 0x20]; var1 = msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20]; var2 = 0x35bf; var var3 = var1; func_565C(var3); memory[var0 + 0x20:var0 + 0x20 + 0x20] = var1; var1 = msg.data[arg1 + 0x40:arg1 + 0x40 + 0x20]; var2 = 0x35d2; var3 = var1; func_565C(var3); memory[var0 + 0x40:var0 + 0x40 + 0x20] = var1; var1 = msg.data[arg1 + 0x60:arg1 + 0x60 + 0x20]; var2 = 0x35e5; var3 = var1; func_565C(var3); var temp1 = var0; memory[temp1 + 0x60:temp1 + 0x60 + 0x20] = var1; memory[temp1 + 0x80:temp1 + 0x80 + 0x20] = msg.data[arg1 + 0x80:arg1 + 0x80 + 0x20]; return temp1; } else { var temp2 = var0; revert(memory[temp2:temp2 + temp2]); } } function func_35FC(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0 - arg1 i>= 0xa0) { var var1 = 0x3617; var var2 = 0xa0; var1 = func_5318(var2); var0 = var1; var temp0 = arg1; memory[var0:var0 + 0x20] = memory[temp0:temp0 + 0x20]; var1 = memory[temp0 + 0x20:temp0 + 0x20 + 0x20]; var2 = 0x362b; var var3 = var1; func_565C(var3); memory[var0 + 0x20:var0 + 0x20 + 0x20] = var1; var1 = memory[arg1 + 0x40:arg1 + 0x40 + 0x20]; var2 = 0x363e; var3 = var1; func_565C(var3); memory[var0 + 0x40:var0 + 0x40 + 0x20] = var1; var1 = memory[arg1 + 0x60:arg1 + 0x60 + 0x20]; var2 = 0x3651; var3 = var1; func_565C(var3); var temp1 = var0; memory[temp1 + 0x60:temp1 + 0x60 + 0x20] = var1; memory[temp1 + 0x80:temp1 + 0x80 + 0x20] = memory[arg1 + 0x80:arg1 + 0x80 + 0x20]; return temp1; } else { var temp2 = var0; revert(memory[temp2:temp2 + temp2]); } } function func_3668(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0 - arg1 i>= 0x40) { var var1 = 0x3683; var var2 = 0x40; var1 = func_5318(var2); var0 = var1; var1 = msg.data[arg1:arg1 + 0x20]; if (var1 > 0xffffffffffffffff) { revert(memory[0x00:0x00]); } var2 = 0x36a8; var var3 = arg0; var var4 = arg1 + var1; var2 = func_3879(var3, var4); var temp0 = var0; memory[temp0:temp0 + 0x20] = var2; memory[temp0 + 0x20:temp0 + 0x20 + 0x20] = msg.data[arg1 + 0x20:arg1 + 0x20 + 0x20]; return temp0; } else { var temp1 = var0; revert(memory[temp1:temp1 + temp1]); } } function func_36BB(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0 - arg1 i>= 0x40) { var var1 = 0x36d6; var var2 = 0x40; var1 = func_5318(var2); var0 = var1; var1 = msg.data[arg1:arg1 + 0x20]; var2 = 0xffffffffffffffff; if (var1 > var2) { revert(memory[0x00:0x00]); } var temp0 = arg1 + var1; var1 = temp0; if (var1 + 0x1f i>= arg0) { revert(memory[0x00:0x00]); } var var3 = msg.data[var1:var1 + 0x20]; var var4 = 0x20; var var5 = 0x3714; var var6 = 0x2ff2; var var7 = var3; var6 = func_5349(var7); var5 = func_2FF2(var6); var temp1 = var3; var temp2 = var5; memory[temp2:temp2 + 0x20] = temp1; var temp3 = var4; var5 = temp2 + temp3; var6 = temp2; var7 = temp3 + var1; var var8 = 0x00; if (var8 >= temp1) { label_374A: memory[var0:var0 + 0x20] = var6; var1 = msg.data[var4 + arg1:var4 + arg1 + 0x20]; if (var1 > var2) { revert(memory[0x00:0x00]); } var5 = 0x376e; var6 = arg0; var7 = arg1 + var1; var5 = func_3879(var6, var7); memory[var0 + var4:var0 + var4 + 0x20] = var5; return var0; } else { label_372A: var var9 = 0x3738; var var10 = arg0; var var11 = var1 + msg.data[var7:var7 + 0x20] + var4; var9 = func_3668(var10, var11); var temp4 = var5; memory[temp4:temp4 + 0x20] = var9; var temp5 = var4; var5 = temp5 + temp4; var7 = temp5 + var7; var8 = var8 + 0x01; if (var8 >= var3) { goto label_374A; } else { goto label_372A; } } } else { var temp6 = var0; revert(memory[temp6:temp6 + temp6]); } } function func_3879(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0 - arg1 i>= 0x60) { var var1 = 0x3894; var var2 = 0x60; var1 = func_5318(var2); var0 = var1; var1 = msg.data[arg1:arg1 + 0x20]; var2 = 0x38a1; var var3 = var1; func_565C(var3); memory[var0:var0 + 0x20] = var1; var1 = 0x20; var2 = msg.data[var1 + arg1:var1 + arg1 + 0x20]; var3 = 0xffffffffffffffff; if (var2 > var3) { revert(memory[0x00:0x00]); } var var4 = 0x38cb; var var5 = arg0; var var6 = arg1 + var2; var4 = func_3366(var5, var6); memory[var0 + var1:var0 + var1 + 0x20] = var4; var2 = 0x40; var4 = msg.data[arg1 + var2:arg1 + var2 + 0x20]; if (var4 > var3) { revert(memory[0x00:0x00]); } var3 = arg1 + var4; if (arg0 i<= var3 + 0x1f) { revert(memory[0x00:0x00]); } var4 = msg.data[var3:var3 + 0x20]; var5 = 0x3905; var6 = 0x2ff2; var var7 = var4; var6 = func_5349(var7); var5 = func_2FF2(var6); var temp0 = var4; var temp1 = var5; memory[temp1:temp1 + 0x20] = temp0; var temp2 = var1; var6 = temp1; var5 = var6 + temp2; var temp3 = var3; var7 = temp2 + temp3; if (arg0 < temp2 + temp3 + temp0 * var2) { revert(memory[0x00:0x00]); } var3 = 0x00; if (var3 >= var4) { label_394D: memory[var0 + var2:var0 + var2 + 0x20] = var6; return var0; } else { label_3930: var var8 = 0x3939; var var9 = arg0; var var10 = var7; var8 = func_3470(var9, var10); var temp4 = var5; memory[temp4:temp4 + 0x20] = var8; var3 = var3 + 0x01; var5 = var1 + temp4; var7 = var2 + var7; if (var3 >= var4) { goto label_394D; } else { goto label_3930; } } } else { var temp5 = var0; revert(memory[temp5:temp5 + temp5]); } } function func_3A5E(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0 - arg1 i>= 0x40) { var var1 = 0x3a79; var var2 = 0x40; var1 = func_5318(var2); var0 = var1; var temp0 = arg1; memory[var0:var0 + 0x20] = msg.data[temp0:temp0 + 0x20]; var1 = msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20]; if (var1 > 0xffffffffffffffff) { revert(memory[0x00:0x00]); } var2 = 0x3aa5; var var3 = arg0; var var4 = arg1 + var1; var2 = func_3366(var3, var4); memory[var0 + 0x20:var0 + 0x20 + 0x20] = var2; return var0; } else { var temp1 = var0; revert(memory[temp1:temp1 + temp1]); } } function func_3B1E(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0 - arg1 i>= 0x40) { var var1 = 0x3b39; var var2 = 0x40; var1 = func_5318(var2); var0 = var1; var temp0 = arg1; memory[var0:var0 + 0x20] = msg.data[temp0:temp0 + 0x20]; var1 = msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20]; var2 = 0x342d; var var3 = var1; func_565C(var3); memory[var0 + 0x20:var0 + 0x20 + 0x20] = var1; return var0; } else { var temp1 = var0; revert(memory[temp1:temp1 + temp1]); } } function func_3BA3(var arg0, var arg1) returns (var r0, var arg0, var arg1) { var var0 = 0x00; var var1 = var0; var var2 = 0x00; var var3 = arg0 - arg1; if (var3 i>= 0x80) { var var4 = msg.data[arg1:arg1 + 0x20]; var var5 = 0x3bc3; var var6 = var4; func_565C(var6); var0 = var4; if (var3 + ~0x1f i>= 0x40) { var3 = 0x3be1; var4 = 0x40; var3 = func_5318(var4); var4 = msg.data[arg1 + 0x20:arg1 + 0x20 + 0x20]; var5 = 0x3bef; var6 = var4; func_565C(var6); var temp0 = var3; memory[temp0:temp0 + 0x20] = var4; var temp1 = arg1; memory[temp0 + 0x20:temp0 + 0x20 + 0x20] = msg.data[temp1 + 0x40:temp1 + 0x40 + 0x20]; var1 = temp0; var3 = msg.data[temp1 + 0x60:temp1 + 0x60 + 0x20]; if (var3 <= 0xffffffffffffffff) { var4 = 0x3c22; var5 = arg0; var6 = arg1 + var3; var4 = func_3366(var5, var6); arg1 = var4; arg0 = var1; r0 = var0; return r0, arg0, arg1; } else { var temp2 = var2; revert(memory[temp2:temp2 + temp2]); } } else { var temp3 = var1; revert(memory[temp3:temp3 + temp3]); } } else { var temp4 = var1; revert(memory[temp4:temp4 + temp4]); } } function func_3C2C(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) { var var5 = msg.data[arg1:arg1 + 0x20]; var var6 = 0x3c4e; var var7 = var5; func_565C(var7); r3 = var5; var temp0 = arg1; r4 = msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20]; var2 = msg.data[temp0 + 0x40:temp0 + 0x40 + 0x20]; var5 = msg.data[temp0 + 0x60:temp0 + 0x60 + 0x20]; if (var5 <= 0xffffffffffffffff) { var6 = 0x3c83; var7 = arg0; var var8 = arg1 + var5; var6, var7 = func_3326(var7, var8); r0 = r3; arg0 = r4; arg1 = var2; r3 = var6; r4 = var7; return r0, arg0, arg1, r3, r4; } else { var temp1 = var4; revert(memory[temp1:temp1 + temp1]); } } else { var temp2 = var2; revert(memory[temp2:temp2 + temp2]); } } function func_3C94(var arg0, var arg1) returns (var r0, var arg0, var arg1, var r3) { r3 = 0x00; var var1 = r3; var var2 = 0x00; var var3 = var2; if (arg0 - arg1 i>= 0x80) { var var4 = msg.data[arg1:arg1 + 0x20]; var var5 = 0x3cb4; var var6 = var4; func_565C(var6); r3 = var4; var temp0 = arg1; var1 = msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20]; var2 = msg.data[temp0 + 0x40:temp0 + 0x40 + 0x20]; var4 = msg.data[temp0 + 0x60:temp0 + 0x60 + 0x20]; if (var4 <= 0xffffffffffffffff) { var5 = 0x3ce9; var6 = arg0; var var7 = arg1 + var4; var5 = func_3366(var6, var7); var temp1 = r3; r3 = var5; r0 = temp1; arg0 = var1; arg1 = var2; return r0, arg0, arg1, r3; } else { var temp2 = var3; revert(memory[temp2:temp2 + temp2]); } } else { var temp3 = var2; revert(memory[temp3:temp3 + temp3]); } } function func_3CF5(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>= 0x60) { var var5 = msg.data[arg1:arg1 + 0x20]; var var6 = 0xffffffffffffffff; if (var5 <= var6) { var var7 = 0x3d2f; var var8 = arg0; var var9 = arg1 + var5; var7, var8 = func_3183(var8, var9); r3 = var7; r4 = var8; var5 = msg.data[arg1 + 0x20:arg1 + 0x20 + 0x20]; if (var5 <= var6) { var7 = 0x3d53; var8 = arg0; var9 = arg1 + var5; var7, var8 = func_3183(var8, var9); var2 = var7; var3 = var8; var5 = msg.data[arg1 + 0x40:arg1 + 0x40 + 0x20]; if (var5 <= var6) { var temp0 = arg1 + var5; var5 = temp0; if (arg0 - var5 i>= 0x0120) { var temp1 = r4; r4 = var5; arg0 = temp1; var temp2 = r3; r3 = var3; r0 = temp2; arg1 = var2; return r0, arg0, arg1, r3, r4; } else { var temp3 = var4; revert(memory[temp3:temp3 + temp3]); } } else { var temp4 = var4; revert(memory[temp4:temp4 + temp4]); } } else { var temp5 = var2; revert(memory[temp5:temp5 + temp5]); } } else { var temp6 = var2; revert(memory[temp6:temp6 + temp6]); } } else { var temp7 = var2; revert(memory[temp7:temp7 + temp7]); } } function func_3DE7(var arg0, var arg1) returns (var r0, var arg0, var arg1, var r3) { r3 = 0x00; var var1 = r3; var var2 = 0x00; var var3 = var2; if (arg0 - arg1 i>= 0x60) { var temp0 = arg1; r3 = msg.data[temp0:temp0 + 0x20]; var1 = msg.data[temp0 + 0x20:temp0 + 0x20 + 0x20]; var var4 = msg.data[temp0 + 0x40:temp0 + 0x40 + 0x20]; if (var4 <= 0xffffffffffffffff) { var var5 = 0x3e2c; var var6 = arg0; var var7 = arg1 + var4; var5, var6 = func_3326(var6, var7); var temp1 = r3; r3 = var6; r0 = temp1; arg0 = var1; arg1 = var5; return r0, arg0, arg1, r3; } else { var temp2 = var2; revert(memory[temp2:temp2 + temp2]); } } else { var temp3 = var2; revert(memory[temp3:temp3 + temp3]); } } function func_3F7A(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0 - arg1 i>= 0x20) { var var1 = msg.data[arg1:arg1 + 0x20]; var var2 = 0xffffffffffffffff; if (var1 <= var2) { var temp0 = arg1 + var1; var2 = var2; var1 = temp0; if (arg0 - var1 i>= 0xa0) { var var3 = 0x3fbf; var var4 = 0xa0; var3 = func_5318(var4); var4 = msg.data[var1:var1 + 0x20]; var var5 = 0x3fca; var var6 = var4; func_565C(var6); var temp1 = var3; memory[temp1:temp1 + 0x20] = var4; var temp2 = var1; memory[temp1 + 0x20:temp1 + 0x20 + 0x20] = msg.data[temp2 + 0x20:temp2 + 0x20 + 0x20]; memory[temp1 + 0x40:temp1 + 0x40 + 0x20] = msg.data[temp2 + 0x40:temp2 + 0x40 + 0x20]; var4 = msg.data[temp2 + 0x60:temp2 + 0x60 + 0x20]; var5 = 0x3ff0; var6 = var4; func_567E(var6); memory[var3 + 0x60:var3 + 0x60 + 0x20] = var4; var4 = msg.data[var1 + 0x80:var1 + 0x80 + 0x20]; if (var4 <= var2) { var5 = 0x4012; var6 = arg0; var var7 = var1 + var4; var5 = func_3366(var6, var7); memory[var3 + 0x80:var3 + 0x80 + 0x20] = var5; return var3; } else { var temp3 = var0; revert(memory[temp3:temp3 + temp3]); } } else { var temp4 = var0; revert(memory[temp4:temp4 + temp4]); } } else { var temp5 = var0; revert(memory[temp5:temp5 + temp5]); } } else { var temp6 = var0; revert(memory[temp6:temp6 + temp6]); } } function func_4021(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0 - arg1 i>= 0x40) { var var1 = 0x2d67; var var2 = arg0; var var3 = arg1; return func_3470(var2, var3); } else { var temp0 = var0; revert(memory[temp0:temp0 + temp0]); } } function func_403C(var arg0, var arg1) returns (var r0) { var var0 = 0x00; var var1 = 0x20; if (arg0 - arg1 i>= var1) { var var2 = msg.data[arg1:arg1 + 0x20]; var var3 = 0xffffffffffffffff; if (var2 <= var3) { var temp0 = arg1 + var2; var3 = var3; var2 = temp0; if (arg0 - var2 i>= 0x40) { var var4 = 0x4082; var var5 = 0x40; var4 = func_5318(var5); var5 = msg.data[var2:var2 + 0x20]; if (var5 <= var3) { var temp1 = var2 + var5; var5 = temp1; if (arg0 i> var5 + 0x1f) { var var6 = msg.data[var5:var5 + 0x20]; var var7 = 0x40ae; var var8 = 0x2ff2; var var9 = var6; var8 = func_5349(var9); var7 = func_2FF2(var8); var temp2 = var6; var temp3 = var7; memory[temp3:temp3 + 0x20] = temp2; var temp4 = var1; var8 = temp3; var7 = var8 + temp4; var9 = temp4 + var5; var var10 = var0; if (var10 >= temp2) { label_40E3: memory[var4:var4 + 0x20] = var8; var5 = msg.data[var1 + var2:var1 + var2 + 0x20]; if (var5 <= var3) { var6 = 0x4106; var7 = arg0; var8 = var2 + var5; var6 = func_3043(var7, var8); memory[var4 + var1:var4 + var1 + 0x20] = var6; return var4; } else { var temp5 = var0; revert(memory[temp5:temp5 + temp5]); } } else { label_40C3: var var11 = 0x40d1; var var12 = arg0; var var13 = var5 + msg.data[var9:var9 + 0x20] + var1; var11 = func_36BB(var12, var13); var temp6 = var7; memory[temp6:temp6 + 0x20] = var11; var temp7 = var1; var7 = temp7 + temp6; var9 = temp7 + var9; var10 = var10 + 0x01; if (var10 >= var6) { goto label_40E3; } else { goto label_40C3; } } } else { var temp8 = var0; revert(memory[temp8:temp8 + temp8]); } } else { var temp9 = var0; revert(memory[temp9:temp9 + temp9]); } } else { var temp10 = var0; revert(memory[temp10:temp10 + temp10]); } } else { var temp11 = var0; revert(memory[temp11:temp11 + temp11]); } } else { var temp12 = var0; revert(memory[temp12:temp12 + temp12]); } } function func_4214(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0 - arg1 i>= 0x20) { var var1 = msg.data[arg1:arg1 + 0x20]; var var2 = 0xffffffffffffffff; if (var1 <= var2) { var temp0 = arg1 + var1; var2 = var2; var1 = temp0; if (arg0 - var1 i>= 0x40) { var var3 = 0x4259; var var4 = 0x40; var3 = func_5318(var4); var4 = msg.data[var1:var1 + 0x20]; var var5 = 0x4264; var var6 = var4; func_567E(var6); memory[var3:var3 + 0x20] = var4; var4 = msg.data[var1 + 0x20:var1 + 0x20 + 0x20]; if (var4 <= var2) { var5 = 0x3eb9; var6 = arg0; var var7 = var1 + var4; var5 = func_3366(var6, var7); memory[var3 + 0x20:var3 + 0x20 + 0x20] = var5; return var3; } else { var temp1 = var0; revert(memory[temp1:temp1 + temp1]); } } else { var temp2 = var0; revert(memory[temp2:temp2 + temp2]); } } else { var temp3 = var0; revert(memory[temp3:temp3 + temp3]); } } else { var temp4 = var0; revert(memory[temp4:temp4 + temp4]); } } function func_4405(var arg0, var arg1) returns (var r0, var arg0) { var var0 = 0x00; var var1 = var0; if (arg0 - arg1 i>= 0xc0) { var var2 = 0x4421; var var3 = arg0; var var4 = arg1; var2 = func_35FC(var3, var4); var0 = var2; var2 = memory[arg1 + 0xa0:arg1 + 0xa0 + 0x20]; if (var2 <= 0xffffffffffffffff) { var3 = 0x43fb; var4 = arg0; var var5 = arg1 + var2; var3 = func_31E4(var4, var5); arg0 = var3; r0 = var0; return r0, arg0; } else { var temp0 = var1; revert(memory[temp0:temp0 + temp0]); } } else { var temp1 = var0; revert(memory[temp1:temp1 + temp1]); } } function func_4448(var arg0, var arg1) returns (var r0, var arg0, var arg1) { var var0 = 0x00; var var1 = var0; var var2 = 0x00; if (arg0 - arg1 i>= 0xe0) { var var3 = 0x4466; var var4 = arg0; var var5 = arg1; var3 = func_35FC(var4, var5); var0 = var3; var3 = memory[arg1 + 0xa0:arg1 + 0xa0 + 0x20]; if (var3 <= 0xffffffffffffffff) { var4 = 0x448d; var5 = arg0; var var6 = arg1 + var3; var4 = func_31E4(var5, var6); arg1 = memory[arg1 + 0xc0:arg1 + 0xc0 + 0x20]; arg0 = var4; r0 = var0; return r0, arg0, arg1; } else { var temp0 = var2; revert(memory[temp0:temp0 + temp0]); } } else { var temp1 = var2; revert(memory[temp1:temp1 + temp1]); } } function func_44FC(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0 - arg1 i>= 0x20) { var var1 = msg.data[arg1:arg1 + 0x20]; var var2 = 0xffffffffffffffff; if (var1 <= var2) { var temp0 = arg1 + var1; var2 = var2; var1 = temp0; if (arg0 - var1 i>= 0x80) { var var3 = 0x4541; var var4 = 0x80; var3 = func_5318(var4); var4 = msg.data[var1:var1 + 0x20]; var var5 = 0x454c; var var6 = var4; func_567E(var6); var temp1 = var3; memory[temp1:temp1 + 0x20] = var4; var temp2 = var1; memory[temp1 + 0x20:temp1 + 0x20 + 0x20] = msg.data[temp2 + 0x20:temp2 + 0x20 + 0x20]; memory[temp1 + 0x40:temp1 + 0x40 + 0x20] = msg.data[temp2 + 0x40:temp2 + 0x40 + 0x20]; var4 = msg.data[temp2 + 0x60:temp2 + 0x60 + 0x20]; if (var4 <= var2) { var5 = 0x4581; var6 = arg0; var var7 = var1 + var4; var5 = func_3366(var6, var7); memory[var3 + 0x60:var3 + 0x60 + 0x20] = var5; return var3; } else { var temp3 = var0; revert(memory[temp3:temp3 + temp3]); } } else { var temp4 = var0; revert(memory[temp4:temp4 + temp4]); } } else { var temp5 = var0; revert(memory[temp5:temp5 + temp5]); } } else { var temp6 = var0; revert(memory[temp6:temp6 + temp6]); } } function func_4714(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0 - arg1 i>= 0x20) { var var1 = msg.data[arg1:arg1 + 0x20]; if (var1 <= 0xffffffffffffffff) { var var2 = 0x2c78; var var3 = arg0; var var4 = arg1 + var1; return func_3A5E(var3, var4); } else { var temp0 = var0; revert(memory[temp0:temp0 + temp0]); } } else { var temp1 = var0; revert(memory[temp1:temp1 + temp1]); } } function func_47E3(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0 - arg1 i>= 0x20) { return memory[arg1:arg1 + 0x20]; } var temp0 = var0; revert(memory[temp0:temp0 + temp0]); } function func_484E(var arg0, var arg1) returns (var r0) { var var0 = 0x00; var temp0 = arg1; var temp1 = memory[temp0:temp0 + 0x20]; var var1 = temp1; var temp2 = arg0; memory[temp2:temp2 + 0x20] = var1; var var2 = 0x4866; var var3 = var1; var var4 = temp2 + 0x20; var var5 = temp0 + 0x20; func_556C(var3, var4, var5); return (var1 + 0x1f & ~0x1f) + arg0 + 0x20; } function func_4B1F(var arg0, var arg1) returns (var r0) { var var0 = 0x00; var temp0 = arg0; var var1 = memory[temp0:temp0 + 0x20]; var var2 = 0x4b31; var var3 = var1; var var4 = arg1; var var5 = temp0 + 0x20; func_556C(var3, var4, var5); return var1 + arg1; } function func_5318(var arg0) returns (var r0) { var temp0 = memory[0x40:0x60]; var var0 = temp0; var temp1 = var0 + (arg0 + 0x1f & ~0x1f); var var1 = temp1; if (!((var1 < var0) | (var1 > 0xffffffffffffffff))) { memory[0x40:0x60] = var1; return var0; } else { var var2 = 0x5341; memory[0x00:0x20] = 0x4e487b71 << 0xe0; memory[0x04:0x24] = 0x41; revert(memory[0x00:0x24]); } } function func_5349(var arg0) returns (var r0) { var var0 = 0x00; if (arg0 <= 0xffffffffffffffff) { return arg0 * 0x20 + 0x20; } var var1 = 0x5363; memory[0x00:0x20] = 0x4e487b71 << 0xe0; memory[0x04:0x24] = 0x41; revert(memory[0x00:0x24]); } function func_536D(var arg0) returns (var r0) { var var0 = 0x00; if (arg0 <= 0xffffffffffffffff) { return (arg0 + 0x1f & ~0x1f) + 0x20; } var var1 = 0x5387; memory[0x00:0x20] = 0x4e487b71 << 0xe0; memory[0x04:0x24] = 0x41; revert(memory[0x00:0x24]); } function func_5395(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg1 <= ~arg0) { return arg1 + arg0; } var var1 = 0x53a8; memory[0x00:0x20] = 0x4e487b71 << 0xe0; memory[0x04:0x24] = 0x11; revert(memory[0x00:0x24]); } function func_54FF(var arg0, var arg1) returns (var r0) { var var0 = 0x00; var temp0 = arg1; if (!(!!temp0 & (arg0 > 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff / temp0))) { return arg1 * arg0; } var var1 = 0x5537; memory[0x00:0x20] = 0x4e487b71 << 0xe0; memory[0x04:0x24] = 0x11; revert(memory[0x00:0x24]); } function func_556C(var arg0, var arg1, var arg2) { var var0 = 0x00; if (var0 >= arg0) { label_5587: if (var0 <= arg0) { return; } memory[arg0 + arg1:arg0 + arg1 + 0x20] = 0x00; return; } else { label_5578: var temp0 = var0; memory[temp0 + arg1:temp0 + arg1 + 0x20] = memory[temp0 + arg2:temp0 + arg2 + 0x20]; var0 = temp0 + 0x20; if (var0 >= arg0) { goto label_5587; } else { goto label_5578; } } } function func_5598(var arg0) returns (var r0) { var var0 = 0x00; if (arg0 != 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) { return arg0 + 0x01; } var var1 = 0x55ca; memory[0x00:0x20] = 0x4e487b71 << 0xe0; memory[0x04:0x24] = 0x11; revert(memory[0x00:0x24]); } function func_565C(var arg0) { var temp0 = arg0; if (temp0 == temp0 & 0xffffffffffffffffffffffffffffffffffffffff) { return; } else { revert(memory[0x00:0x00]); } } function func_567E(var arg0) { var temp0 = arg0; if (temp0 == !!temp0) { return; } else { revert(memory[0x00:0x00]); } } }

Disassembly

label_0000: // Inputs[1] { @0005 msg.value } 0000 60 PUSH1 0x80 0002 60 PUSH1 0x40 0004 52 MSTORE 0005 34 CALLVALUE 0006 80 DUP1 0007 15 ISZERO 0008 61 PUSH2 0x0010 000B 57 *JUMPI // Stack delta = +1 // Outputs[2] // { // @0004 memory[0x40:0x60] = 0x80 // @0005 stack[0] = msg.value // } // Block ends with conditional jump to 0x0010, if !msg.value label_000C: // Incoming jump from 0x000B, if not !msg.value // Inputs[1] { @000F memory[0x00:0x00] } 000C 60 PUSH1 0x00 000E 80 DUP1 000F FD *REVERT // Stack delta = +0 // Outputs[1] { @000F revert(memory[0x00:0x00]); } // Block terminates label_0010: // Incoming jump from 0x000B, if !msg.value // Inputs[1] { @0014 msg.data.length } 0010 5B JUMPDEST 0011 50 POP 0012 60 PUSH1 0x04 0014 36 CALLDATASIZE 0015 10 LT 0016 61 PUSH2 0x01b9 0019 57 *JUMPI // Stack delta = -1 // Block ends with conditional jump to 0x01b9, if msg.data.length < 0x04 label_001A: // Incoming jump from 0x0019, if not msg.data.length < 0x04 // Inputs[1] { @001C msg.data[0x00:0x20] } 001A 60 PUSH1 0x00 001C 35 CALLDATALOAD 001D 60 PUSH1 0xe0 001F 1C SHR 0020 80 DUP1 0021 63 PUSH4 0x75908f7c 0026 11 GT 0027 61 PUSH2 0x00f9 002A 57 *JUMPI // Stack delta = +1 // Outputs[1] { @001F stack[0] = msg.data[0x00:0x20] >> 0xe0 } // Block ends with conditional jump to 0x00f9, if 0x75908f7c > msg.data[0x00:0x20] >> 0xe0 label_002B: // Incoming jump from 0x002A, if not 0x75908f7c > msg.data[0x00:0x20] >> 0xe0 // Inputs[1] { @002B stack[-1] } 002B 80 DUP1 002C 63 PUSH4 0xcce38761 0031 11 GT 0032 61 PUSH2 0x0097 0035 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0097, if 0xcce38761 > stack[-1] label_0036: // Incoming jump from 0x0035, if not 0xcce38761 > stack[-1] // Inputs[1] { @0036 stack[-1] } 0036 80 DUP1 0037 63 PUSH4 0xe801bd7e 003C 11 GT 003D 61 PUSH2 0x0071 0040 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0071, if 0xe801bd7e > stack[-1] label_0041: // Incoming jump from 0x0040, if not 0xe801bd7e > stack[-1] // Inputs[1] { @0041 stack[-1] } 0041 80 DUP1 0042 63 PUSH4 0xe801bd7e 0047 14 EQ 0048 61 PUSH2 0x03c5 004B 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x03c5, if 0xe801bd7e == stack[-1] label_004C: // Incoming jump from 0x004B, if not 0xe801bd7e == stack[-1] // Inputs[1] { @004C stack[-1] } 004C 80 DUP1 004D 63 PUSH4 0xee872558 0052 14 EQ 0053 61 PUSH2 0x03e5 0056 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x03e5, if 0xee872558 == stack[-1] label_0057: // Incoming jump from 0x0056, if not 0xee872558 == stack[-1] // Inputs[1] { @0057 stack[-1] } 0057 80 DUP1 0058 63 PUSH4 0xf8364b88 005D 14 EQ 005E 61 PUSH2 0x03f8 0061 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x03f8, if 0xf8364b88 == stack[-1] label_0062: // Incoming jump from 0x0061, if not 0xf8364b88 == stack[-1] // Inputs[1] { @0062 stack[-1] } 0062 80 DUP1 0063 63 PUSH4 0xfa461e33 0068 14 EQ 0069 61 PUSH2 0x0413 006C 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0413, if 0xfa461e33 == stack[-1] label_006D: // Incoming jump from 0x006C, if not 0xfa461e33 == stack[-1] 006D 61 PUSH2 0x01b9 0070 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x01b9 label_0071: // Incoming jump from 0x0040, if 0xe801bd7e > stack[-1] // Inputs[1] { @0072 stack[-1] } 0071 5B JUMPDEST 0072 80 DUP1 0073 63 PUSH4 0xcce38761 0078 14 EQ 0079 61 PUSH2 0x01e7 007C 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x01e7, if 0xcce38761 == stack[-1] label_007D: // Incoming jump from 0x007C, if not 0xcce38761 == stack[-1] // Inputs[1] { @007D stack[-1] } 007D 80 DUP1 007E 63 PUSH4 0xda7be41f 0083 14 EQ 0084 61 PUSH2 0x038a 0087 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x038a, if 0xda7be41f == stack[-1] label_0088: // Incoming jump from 0x0087, if not 0xda7be41f == stack[-1] // Inputs[1] { @0088 stack[-1] } 0088 80 DUP1 0089 63 PUSH4 0xe1384289 008E 14 EQ 008F 61 PUSH2 0x03aa 0092 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x03aa, if 0xe1384289 == stack[-1] label_0093: // Incoming jump from 0x0092, if not 0xe1384289 == stack[-1] 0093 61 PUSH2 0x01b9 0096 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x01b9 label_0097: // Incoming jump from 0x0035, if 0xcce38761 > stack[-1] // Inputs[1] { @0098 stack[-1] } 0097 5B JUMPDEST 0098 80 DUP1 0099 63 PUSH4 0xa401b06f 009E 11 GT 009F 61 PUSH2 0x00d3 00A2 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x00d3, if 0xa401b06f > stack[-1] label_00A3: // Incoming jump from 0x00A2, if not 0xa401b06f > stack[-1] // Inputs[1] { @00A3 stack[-1] } 00A3 80 DUP1 00A4 63 PUSH4 0xa401b06f 00A9 14 EQ 00AA 61 PUSH2 0x032f 00AD 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x032f, if 0xa401b06f == stack[-1] label_00AE: // Incoming jump from 0x00AD, if not 0xa401b06f == stack[-1] // Inputs[1] { @00AE stack[-1] } 00AE 80 DUP1 00AF 63 PUSH4 0xa69cd4ae 00B4 14 EQ 00B5 61 PUSH2 0x034f 00B8 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x034f, if 0xa69cd4ae == stack[-1] label_00B9: // Incoming jump from 0x00B8, if not 0xa69cd4ae == stack[-1] // Inputs[1] { @00B9 stack[-1] } 00B9 80 DUP1 00BA 63 PUSH4 0xb2ff9f26 00BF 14 EQ 00C0 61 PUSH2 0x01e7 00C3 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x01e7, if 0xb2ff9f26 == stack[-1] label_00C4: // Incoming jump from 0x00C3, if not 0xb2ff9f26 == stack[-1] // Inputs[1] { @00C4 stack[-1] } 00C4 80 DUP1 00C5 63 PUSH4 0xc065411d 00CA 14 EQ 00CB 61 PUSH2 0x036f 00CE 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x036f, if 0xc065411d == stack[-1] label_00CF: // Incoming jump from 0x00CE, if not 0xc065411d == stack[-1] 00CF 61 PUSH2 0x01b9 00D2 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x01b9 label_00D3: // Incoming jump from 0x00A2, if 0xa401b06f > stack[-1] // Inputs[1] { @00D4 stack[-1] } 00D3 5B JUMPDEST 00D4 80 DUP1 00D5 63 PUSH4 0x75908f7c 00DA 14 EQ 00DB 61 PUSH2 0x01e7 00DE 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x01e7, if 0x75908f7c == stack[-1] label_00DF: // Incoming jump from 0x00DE, if not 0x75908f7c == stack[-1] // Inputs[1] { @00DF stack[-1] } 00DF 80 DUP1 00E0 63 PUSH4 0x84800812 00E5 14 EQ 00E6 61 PUSH2 0x01e7 00E9 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x01e7, if 0x84800812 == stack[-1] label_00EA: // Incoming jump from 0x00E9, if not 0x84800812 == stack[-1] // Inputs[1] { @00EA stack[-1] } 00EA 80 DUP1 00EB 63 PUSH4 0x8b418713 00F0 14 EQ 00F1 61 PUSH2 0x031c 00F4 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x031c, if 0x8b418713 == stack[-1] label_00F5: // Incoming jump from 0x00F4, if not 0x8b418713 == stack[-1] 00F5 61 PUSH2 0x01b9 00F8 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x01b9 label_00F9: // Incoming jump from 0x002A, if 0x75908f7c > msg.data[0x00:0x20] >> 0xe0 // Inputs[1] { @00FA stack[-1] } 00F9 5B JUMPDEST 00FA 80 DUP1 00FB 63 PUSH4 0x54c170ea 0100 11 GT 0101 61 PUSH2 0x0166 0104 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0166, if 0x54c170ea > stack[-1] label_0105: // Incoming jump from 0x0104, if not 0x54c170ea > stack[-1] // Inputs[1] { @0105 stack[-1] } 0105 80 DUP1 0106 63 PUSH4 0x61de3df4 010B 11 GT 010C 61 PUSH2 0x0140 010F 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0140, if 0x61de3df4 > stack[-1] label_0110: // Incoming jump from 0x010F, if not 0x61de3df4 > stack[-1] // Inputs[1] { @0110 stack[-1] } 0110 80 DUP1 0111 63 PUSH4 0x61de3df4 0116 14 EQ 0117 61 PUSH2 0x02bc 011A 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x02bc, if 0x61de3df4 == stack[-1] label_011B: // Incoming jump from 0x011A, if not 0x61de3df4 == stack[-1] // Inputs[1] { @011B stack[-1] } 011B 80 DUP1 011C 63 PUSH4 0x69277b67 0121 14 EQ 0122 61 PUSH2 0x02dc 0125 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x02dc, if 0x69277b67 == stack[-1] label_0126: // Incoming jump from 0x0125, if not 0x69277b67 == stack[-1] // Inputs[1] { @0126 stack[-1] } 0126 80 DUP1 0127 63 PUSH4 0x6c813d29 012C 14 EQ 012D 61 PUSH2 0x01e7 0130 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x01e7, if 0x6c813d29 == stack[-1] label_0131: // Incoming jump from 0x0130, if not 0x6c813d29 == stack[-1] // Inputs[1] { @0131 stack[-1] } 0131 80 DUP1 0132 63 PUSH4 0x6f62d082 0137 14 EQ 0138 61 PUSH2 0x02fc 013B 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x02fc, if 0x6f62d082 == stack[-1] label_013C: // Incoming jump from 0x013B, if not 0x6f62d082 == stack[-1] 013C 61 PUSH2 0x01b9 013F 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x01b9 label_0140: // Incoming jump from 0x010F, if 0x61de3df4 > stack[-1] // Inputs[1] { @0141 stack[-1] } 0140 5B JUMPDEST 0141 80 DUP1 0142 63 PUSH4 0x54c170ea 0147 14 EQ 0148 61 PUSH2 0x025c 014B 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x025c, if 0x54c170ea == stack[-1] label_014C: // Incoming jump from 0x014B, if not 0x54c170ea == stack[-1] // Inputs[1] { @014C stack[-1] } 014C 80 DUP1 014D 63 PUSH4 0x550d8ca5 0152 14 EQ 0153 61 PUSH2 0x027c 0156 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x027c, if 0x550d8ca5 == stack[-1] label_0157: // Incoming jump from 0x0156, if not 0x550d8ca5 == stack[-1] // Inputs[1] { @0157 stack[-1] } 0157 80 DUP1 0158 63 PUSH4 0x5d1edfbc 015D 14 EQ 015E 61 PUSH2 0x029c 0161 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x029c, if 0x5d1edfbc == stack[-1] label_0162: // Incoming jump from 0x0161, if not 0x5d1edfbc == stack[-1] 0162 61 PUSH2 0x01b9 0165 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x01b9 label_0166: // Incoming jump from 0x0104, if 0x54c170ea > stack[-1] // Inputs[1] { @0167 stack[-1] } 0166 5B JUMPDEST 0167 80 DUP1 0168 63 PUSH4 0x23a31f8a 016D 11 GT 016E 61 PUSH2 0x0197 0171 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0197, if 0x23a31f8a > stack[-1] label_0172: // Incoming jump from 0x0171, if not 0x23a31f8a > stack[-1] // Inputs[1] { @0172 stack[-1] } 0172 80 DUP1 0173 63 PUSH4 0x23a31f8a 0178 14 EQ 0179 61 PUSH2 0x01fc 017C 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x01fc, if 0x23a31f8a == stack[-1] label_017D: // Incoming jump from 0x017C, if not 0x23a31f8a == stack[-1] // Inputs[1] { @017D stack[-1] } 017D 80 DUP1 017E 63 PUSH4 0x26f1c380 0183 14 EQ 0184 61 PUSH2 0x021c 0187 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x021c, if 0x26f1c380 == stack[-1] label_0188: // Incoming jump from 0x0187, if not 0x26f1c380 == stack[-1] // Inputs[1] { @0188 stack[-1] } 0188 80 DUP1 0189 63 PUSH4 0x4dfec45a 018E 14 EQ 018F 61 PUSH2 0x023c 0192 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x023c, if 0x4dfec45a == stack[-1] label_0193: // Incoming jump from 0x0192, if not 0x4dfec45a == stack[-1] 0193 61 PUSH2 0x01b9 0196 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x01b9 label_0197: // Incoming jump from 0x0171, if 0x23a31f8a > stack[-1] // Inputs[1] { @0198 stack[-1] } 0197 5B JUMPDEST 0198 80 DUP1 0199 63 PUSH4 0x096a14b2 019E 14 EQ 019F 61 PUSH2 0x01be 01A2 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x01be, if 0x096a14b2 == stack[-1] label_01A3: // Incoming jump from 0x01A2, if not 0x096a14b2 == stack[-1] // Inputs[1] { @01A3 stack[-1] } 01A3 80 DUP1 01A4 63 PUSH4 0x10d1e85c 01A9 14 EQ 01AA 61 PUSH2 0x01e7 01AD 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x01e7, if 0x10d1e85c == stack[-1] label_01AE: // Incoming jump from 0x01AD, if not 0x10d1e85c == stack[-1] // Inputs[1] { @01AE stack[-1] } 01AE 80 DUP1 01AF 63 PUSH4 0x21fb6c90 01B4 14 EQ 01B5 61 PUSH2 0x01e7 01B8 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x01e7, if 0x21fb6c90 == stack[-1] label_01B9: // Incoming jump from 0x013F // Incoming jump from 0x01B8, if not 0x21fb6c90 == stack[-1] // Incoming jump from 0x0196 // Incoming jump from 0x0019, if msg.data.length < 0x04 // Incoming jump from 0x00D2 // Incoming jump from 0x0096 // Incoming jump from 0x0070 // Incoming jump from 0x0165 // Incoming jump from 0x00F8 // Inputs[1] { @01BD memory[0x00:0x00] } 01B9 5B JUMPDEST 01BA 60 PUSH1 0x00 01BC 80 DUP1 01BD FD *REVERT // Stack delta = +0 // Outputs[1] { @01BD revert(memory[0x00:0x00]); } // Block terminates label_01BE: // Incoming jump from 0x01A2, if 0x096a14b2 == stack[-1] // Inputs[1] { @01C5 msg.data.length } 01BE 5B JUMPDEST 01BF 61 PUSH2 0x01d1 01C2 61 PUSH2 0x01cc 01C5 36 CALLDATASIZE 01C6 60 PUSH1 0x04 01C8 61 PUSH2 0x4283 01CB 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @01BF stack[0] = 0x01d1 // @01C2 stack[1] = 0x01cc // @01C5 stack[2] = msg.data.length // @01C6 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x4283 01CC 5B JUMPDEST 01CD 61 PUSH2 0x0426 01D0 56 *JUMP 01D1 5B JUMPDEST 01D2 60 PUSH1 0x40 01D4 51 MLOAD 01D5 61 PUSH2 0x01de 01D8 91 SWAP2 01D9 90 SWAP1 01DA 61 PUSH2 0x4f44 01DD 56 *JUMP 01DE 5B JUMPDEST 01DF 60 PUSH1 0x40 01E1 51 MLOAD 01E2 80 DUP1 01E3 91 SWAP2 01E4 03 SUB 01E5 90 SWAP1 01E6 F3 *RETURN label_01E7: // Incoming jump from 0x0130, if 0x6c813d29 == stack[-1] // Incoming jump from 0x01B8, if 0x21fb6c90 == stack[-1] // Incoming jump from 0x00E9, if 0x84800812 == stack[-1] // Incoming jump from 0x007C, if 0xcce38761 == stack[-1] // Incoming jump from 0x00C3, if 0xb2ff9f26 == stack[-1] // Incoming jump from 0x01AD, if 0x10d1e85c == stack[-1] // Incoming jump from 0x00DE, if 0x75908f7c == stack[-1] // Inputs[1] { @01EE msg.data.length } 01E7 5B JUMPDEST 01E8 61 PUSH2 0x01fa 01EB 61 PUSH2 0x01f5 01EE 36 CALLDATASIZE 01EF 60 PUSH1 0x04 01F1 61 PUSH2 0x3c2c 01F4 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @01E8 stack[0] = 0x01fa // @01EB stack[1] = 0x01f5 // @01EE stack[2] = msg.data.length // @01EF stack[3] = 0x04 // } // Block ends with call to 0x3c2c, returns to 0x01F5 label_01F5: // Incoming return from call to 0x3C2C at 0x01F4 01F5 5B JUMPDEST 01F6 61 PUSH2 0x049b 01F9 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x049b label_01FA: // Incoming return from call to 0x032A at 0x0329 01FA 5B JUMPDEST 01FB 00 *STOP // Stack delta = +0 // Outputs[1] { @01FB stop(); } // Block terminates label_01FC: // Incoming jump from 0x017C, if 0x23a31f8a == stack[-1] // Inputs[1] { @0203 msg.data.length } 01FC 5B JUMPDEST 01FD 61 PUSH2 0x020f 0200 61 PUSH2 0x020a 0203 36 CALLDATASIZE 0204 60 PUSH1 0x04 0206 61 PUSH2 0x403c 0209 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @01FD stack[0] = 0x020f // @0200 stack[1] = 0x020a // @0203 stack[2] = msg.data.length // @0204 stack[3] = 0x04 // } // Block ends with call to 0x403c, returns to 0x020A label_020A: // Incoming return from call to 0x403C at 0x0209 020A 5B JUMPDEST 020B 61 PUSH2 0x04af 020E 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x04af 020F 5B JUMPDEST 0210 60 PUSH1 0x40 0212 51 MLOAD 0213 61 PUSH2 0x01de 0216 91 SWAP2 0217 90 SWAP1 0218 61 PUSH2 0x4e29 021B 56 *JUMP label_021C: // Incoming jump from 0x0187, if 0x26f1c380 == stack[-1] // Inputs[1] { @0223 msg.data.length } 021C 5B JUMPDEST 021D 61 PUSH2 0x022f 0220 61 PUSH2 0x022a 0223 36 CALLDATASIZE 0224 60 PUSH1 0x04 0226 61 PUSH2 0x4382 0229 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @021D stack[0] = 0x022f // @0220 stack[1] = 0x022a // @0223 stack[2] = msg.data.length // @0224 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x4382 022A 5B JUMPDEST 022B 61 PUSH2 0x04c8 022E 56 *JUMP 022F 5B JUMPDEST 0230 60 PUSH1 0x40 0232 51 MLOAD 0233 61 PUSH2 0x01de 0236 91 SWAP2 0237 90 SWAP1 0238 61 PUSH2 0x5004 023B 56 *JUMP label_023C: // Incoming jump from 0x0192, if 0x4dfec45a == stack[-1] // Inputs[1] { @0243 msg.data.length } 023C 5B JUMPDEST 023D 61 PUSH2 0x024f 0240 61 PUSH2 0x024a 0243 36 CALLDATASIZE 0244 60 PUSH1 0x04 0246 61 PUSH2 0x4021 0249 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @023D stack[0] = 0x024f // @0240 stack[1] = 0x024a // @0243 stack[2] = msg.data.length // @0244 stack[3] = 0x04 // } // Block ends with call to 0x4021, returns to 0x024A label_024A: // Incoming return from call to 0x4021 at 0x0249 024A 5B JUMPDEST 024B 61 PUSH2 0x04f8 024E 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x04f8 024F 5B JUMPDEST 0250 60 PUSH1 0x40 0252 51 MLOAD 0253 61 PUSH2 0x01de 0256 91 SWAP2 0257 90 SWAP1 0258 61 PUSH2 0x4e12 025B 56 *JUMP label_025C: // Incoming jump from 0x014B, if 0x54c170ea == stack[-1] // Inputs[1] { @0263 msg.data.length } 025C 5B JUMPDEST 025D 61 PUSH2 0x026f 0260 61 PUSH2 0x026a 0263 36 CALLDATASIZE 0264 60 PUSH1 0x04 0266 61 PUSH2 0x44fc 0269 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @025D stack[0] = 0x026f // @0260 stack[1] = 0x026a // @0263 stack[2] = msg.data.length // @0264 stack[3] = 0x04 // } // Block ends with call to 0x44fc, returns to 0x026A label_026A: // Incoming return from call to 0x44FC at 0x0269 026A 5B JUMPDEST 026B 61 PUSH2 0x0511 026E 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x0511 026F 5B JUMPDEST 0270 60 PUSH1 0x40 0272 51 MLOAD 0273 61 PUSH2 0x01de 0276 91 SWAP2 0277 90 SWAP1 0278 61 PUSH2 0x51bb 027B 56 *JUMP label_027C: // Incoming jump from 0x0156, if 0x550d8ca5 == stack[-1] // Inputs[1] { @0283 msg.data.length } 027C 5B JUMPDEST 027D 61 PUSH2 0x028f 0280 61 PUSH2 0x028a 0283 36 CALLDATASIZE 0284 60 PUSH1 0x04 0286 61 PUSH2 0x4214 0289 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @027D stack[0] = 0x028f // @0280 stack[1] = 0x028a // @0283 stack[2] = msg.data.length // @0284 stack[3] = 0x04 // } // Block ends with call to 0x4214, returns to 0x028A label_028A: // Incoming return from call to 0x4714 at 0x03B7 // Incoming return from call to 0x4214 at 0x0289 028A 5B JUMPDEST 028B 61 PUSH2 0x053e 028E 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x053e 028F 5B JUMPDEST 0290 60 PUSH1 0x40 0292 51 MLOAD 0293 61 PUSH2 0x01de 0296 91 SWAP2 0297 90 SWAP1 0298 61 PUSH2 0x4f1d 029B 56 *JUMP label_029C: // Incoming jump from 0x0161, if 0x5d1edfbc == stack[-1] // Inputs[1] { @02A3 msg.data.length } 029C 5B JUMPDEST 029D 61 PUSH2 0x02af 02A0 61 PUSH2 0x02aa 02A3 36 CALLDATASIZE 02A4 60 PUSH1 0x04 02A6 61 PUSH2 0x41e1 02A9 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @029D stack[0] = 0x02af // @02A0 stack[1] = 0x02aa // @02A3 stack[2] = msg.data.length // @02A4 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x41e1 02AA 5B JUMPDEST 02AB 61 PUSH2 0x0558 02AE 56 *JUMP 02AF 5B JUMPDEST 02B0 60 PUSH1 0x40 02B2 51 MLOAD 02B3 61 PUSH2 0x01de 02B6 91 SWAP2 02B7 90 SWAP1 02B8 61 PUSH2 0x4f0a 02BB 56 *JUMP label_02BC: // Incoming jump from 0x011A, if 0x61de3df4 == stack[-1] // Inputs[1] { @02C3 msg.data.length } 02BC 5B JUMPDEST 02BD 61 PUSH2 0x02cf 02C0 61 PUSH2 0x02ca 02C3 36 CALLDATASIZE 02C4 60 PUSH1 0x04 02C6 61 PUSH2 0x46ae 02C9 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @02BD stack[0] = 0x02cf // @02C0 stack[1] = 0x02ca // @02C3 stack[2] = msg.data.length // @02C4 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x46ae 02CA 5B JUMPDEST 02CB 61 PUSH2 0x058c 02CE 56 *JUMP 02CF 5B JUMPDEST 02D0 60 PUSH1 0x40 02D2 51 MLOAD 02D3 61 PUSH2 0x01de 02D6 91 SWAP2 02D7 90 SWAP1 02D8 61 PUSH2 0x521c 02DB 56 *JUMP label_02DC: // Incoming jump from 0x0125, if 0x69277b67 == stack[-1] // Inputs[1] { @02E3 msg.data.length } 02DC 5B JUMPDEST 02DD 61 PUSH2 0x02ef 02E0 61 PUSH2 0x02ea 02E3 36 CALLDATASIZE 02E4 60 PUSH1 0x04 02E6 61 PUSH2 0x3cf5 02E9 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @02DD stack[0] = 0x02ef // @02E0 stack[1] = 0x02ea // @02E3 stack[2] = msg.data.length // @02E4 stack[3] = 0x04 // } // Block ends with call to 0x3cf5, returns to 0x02EA label_02EA: // Incoming return from call to 0x3CF5 at 0x02E9 02EA 5B JUMPDEST 02EB 61 PUSH2 0x05c6 02EE 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x05c6 02EF 5B JUMPDEST 02F0 60 PUSH1 0x40 02F2 51 MLOAD 02F3 61 PUSH2 0x01de 02F6 91 SWAP2 02F7 90 SWAP1 02F8 61 PUSH2 0x4d13 02FB 56 *JUMP label_02FC: // Incoming jump from 0x013B, if 0x6f62d082 == stack[-1] // Inputs[1] { @0303 msg.data.length } 02FC 5B JUMPDEST 02FD 61 PUSH2 0x030f 0300 61 PUSH2 0x030a 0303 36 CALLDATASIZE 0304 60 PUSH1 0x04 0306 61 PUSH2 0x4615 0309 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @02FD stack[0] = 0x030f // @0300 stack[1] = 0x030a // @0303 stack[2] = msg.data.length // @0304 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x4615 030A 5B JUMPDEST 030B 61 PUSH2 0x0c36 030E 56 *JUMP 030F 5B JUMPDEST 0310 60 PUSH1 0x40 0312 51 MLOAD 0313 61 PUSH2 0x01de 0316 91 SWAP2 0317 90 SWAP1 0318 61 PUSH2 0x51f6 031B 56 *JUMP label_031C: // Incoming jump from 0x00F4, if 0x8b418713 == stack[-1] // Inputs[1] { @0323 msg.data.length } 031C 5B JUMPDEST 031D 61 PUSH2 0x01fa 0320 61 PUSH2 0x032a 0323 36 CALLDATASIZE 0324 60 PUSH1 0x04 0326 61 PUSH2 0x3ba3 0329 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @031D stack[0] = 0x01fa // @0320 stack[1] = 0x032a // @0323 stack[2] = msg.data.length // @0324 stack[3] = 0x04 // } // Block ends with call to 0x3ba3, returns to 0x032A label_032A: // Incoming return from call to 0x3BA3 at 0x0329 032A 5B JUMPDEST 032B 61 PUSH2 0x0c3e 032E 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x0c3e label_032F: // Incoming jump from 0x00AD, if 0xa401b06f == stack[-1] // Inputs[1] { @0336 msg.data.length } 032F 5B JUMPDEST 0330 61 PUSH2 0x0342 0333 61 PUSH2 0x033d 0336 36 CALLDATASIZE 0337 60 PUSH1 0x04 0339 61 PUSH2 0x3e53 033C 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @0330 stack[0] = 0x0342 // @0333 stack[1] = 0x033d // @0336 stack[2] = msg.data.length // @0337 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x3e53 033D 5B JUMPDEST 033E 61 PUSH2 0x0cb6 0341 56 *JUMP 0342 5B JUMPDEST 0343 60 PUSH1 0x40 0345 51 MLOAD 0346 61 PUSH2 0x01de 0349 91 SWAP2 034A 90 SWAP1 034B 61 PUSH2 0x4d92 034E 56 *JUMP label_034F: // Incoming jump from 0x00B8, if 0xa69cd4ae == stack[-1] // Inputs[1] { @0356 msg.data.length } 034F 5B JUMPDEST 0350 61 PUSH2 0x0362 0353 61 PUSH2 0x035d 0356 36 CALLDATASIZE 0357 60 PUSH1 0x04 0359 61 PUSH2 0x3f7a 035C 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @0350 stack[0] = 0x0362 // @0353 stack[1] = 0x035d // @0356 stack[2] = msg.data.length // @0357 stack[3] = 0x04 // } // Block ends with call to 0x3f7a, returns to 0x035D label_035D: // Incoming return from call to 0x3F7A at 0x035C 035D 5B JUMPDEST 035E 61 PUSH2 0x0cbe 0361 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x0cbe 0362 5B JUMPDEST 0363 60 PUSH1 0x40 0365 51 MLOAD 0366 61 PUSH2 0x01de 0369 91 SWAP2 036A 90 SWAP1 036B 61 PUSH2 0x4db7 036E 56 *JUMP label_036F: // Incoming jump from 0x00CE, if 0xc065411d == stack[-1] // Inputs[1] { @0376 msg.data.length } 036F 5B JUMPDEST 0370 61 PUSH2 0x037d 0373 61 PUSH2 0x024a 0376 36 CALLDATASIZE 0377 60 PUSH1 0x04 0379 61 PUSH2 0x3e38 037C 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @0370 stack[0] = 0x037d // @0373 stack[1] = 0x024a // @0376 stack[2] = msg.data.length // @0377 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x3e38 037D 5B JUMPDEST 037E 60 PUSH1 0x40 0380 51 MLOAD 0381 61 PUSH2 0x01de 0384 91 SWAP2 0385 90 SWAP1 0386 61 PUSH2 0x4d61 0389 56 *JUMP label_038A: // Incoming jump from 0x0087, if 0xda7be41f == stack[-1] // Inputs[1] { @0391 msg.data.length } 038A 5B JUMPDEST 038B 61 PUSH2 0x039d 038E 61 PUSH2 0x0398 0391 36 CALLDATASIZE 0392 60 PUSH1 0x04 0394 61 PUSH2 0x4648 0397 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @038B stack[0] = 0x039d // @038E stack[1] = 0x0398 // @0391 stack[2] = msg.data.length // @0392 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x4648 0398 5B JUMPDEST 0399 61 PUSH2 0x0d08 039C 56 *JUMP 039D 5B JUMPDEST 039E 60 PUSH1 0x40 03A0 51 MLOAD 03A1 61 PUSH2 0x01de 03A4 91 SWAP2 03A5 90 SWAP1 03A6 61 PUSH2 0x5209 03A9 56 *JUMP label_03AA: // Incoming jump from 0x0092, if 0xe1384289 == stack[-1] // Inputs[1] { @03B1 msg.data.length } 03AA 5B JUMPDEST 03AB 61 PUSH2 0x03b8 03AE 61 PUSH2 0x028a 03B1 36 CALLDATASIZE 03B2 60 PUSH1 0x04 03B4 61 PUSH2 0x4714 03B7 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @03AB stack[0] = 0x03b8 // @03AE stack[1] = 0x028a // @03B1 stack[2] = msg.data.length // @03B2 stack[3] = 0x04 // } // Block ends with call to 0x4714, returns to 0x028A 03B8 5B JUMPDEST 03B9 60 PUSH1 0x40 03BB 51 MLOAD 03BC 61 PUSH2 0x01de 03BF 91 SWAP2 03C0 90 SWAP1 03C1 61 PUSH2 0x522f 03C4 56 *JUMP label_03C5: // Incoming jump from 0x004B, if 0xe801bd7e == stack[-1] // Inputs[1] { @03CC msg.data.length } 03C5 5B JUMPDEST 03C6 61 PUSH2 0x03d8 03C9 61 PUSH2 0x03d3 03CC 36 CALLDATASIZE 03CD 60 PUSH1 0x04 03CF 61 PUSH2 0x4747 03D2 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @03C6 stack[0] = 0x03d8 // @03C9 stack[1] = 0x03d3 // @03CC stack[2] = msg.data.length // @03CD stack[3] = 0x04 // } // Block ends with unconditional jump to 0x4747 03D3 5B JUMPDEST 03D4 61 PUSH2 0x0d10 03D7 56 *JUMP 03D8 5B JUMPDEST 03D9 60 PUSH1 0x40 03DB 51 MLOAD 03DC 61 PUSH2 0x01de 03DF 91 SWAP2 03E0 90 SWAP1 03E1 61 PUSH2 0x5242 03E4 56 *JUMP label_03E5: // Incoming jump from 0x0056, if 0xee872558 == stack[-1] // Inputs[1] { @03EC msg.data.length } 03E5 5B JUMPDEST 03E6 61 PUSH2 0x01fa 03E9 61 PUSH2 0x03f3 03EC 36 CALLDATASIZE 03ED 60 PUSH1 0x04 03EF 61 PUSH2 0x3c94 03F2 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @03E6 stack[0] = 0x01fa // @03E9 stack[1] = 0x03f3 // @03EC stack[2] = msg.data.length // @03ED stack[3] = 0x04 // } // Block ends with call to 0x3c94, returns to 0x03F3 label_03F3: // Incoming return from call to 0x3C94 at 0x03F2 03F3 5B JUMPDEST 03F4 61 PUSH2 0x0d18 03F7 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x0d18 label_03F8: // Incoming jump from 0x0061, if 0xf8364b88 == stack[-1] // Inputs[1] { @03FF msg.data.length } 03F8 5B JUMPDEST 03F9 61 PUSH2 0x0406 03FC 61 PUSH2 0x024a 03FF 36 CALLDATASIZE 0400 60 PUSH1 0x04 0402 61 PUSH2 0x477a 0405 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @03F9 stack[0] = 0x0406 // @03FC stack[1] = 0x024a // @03FF stack[2] = msg.data.length // @0400 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x477a 0406 5B JUMPDEST 0407 60 PUSH1 0x40 0409 51 MLOAD 040A 61 PUSH2 0x01de 040D 91 SWAP2 040E 90 SWAP1 040F 61 PUSH2 0x5255 0412 56 *JUMP label_0413: // Incoming jump from 0x006C, if 0xfa461e33 == stack[-1] // Inputs[1] { @041A msg.data.length } 0413 5B JUMPDEST 0414 61 PUSH2 0x01fa 0417 61 PUSH2 0x0421 041A 36 CALLDATASIZE 041B 60 PUSH1 0x04 041D 61 PUSH2 0x3de7 0420 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @0414 stack[0] = 0x01fa // @0417 stack[1] = 0x0421 // @041A stack[2] = msg.data.length // @041B stack[3] = 0x04 // } // Block ends with call to 0x3de7, returns to 0x0421 label_0421: // Incoming return from call to 0x3DE7 at 0x0420 0421 5B JUMPDEST 0422 61 PUSH2 0x0f4a 0425 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x0f4a 0426 5B JUMPDEST 0427 61 PUSH2 0x0493 042A 60 PUSH1 0x40 042C 51 MLOAD 042D 80 DUP1 042E 61 PUSH2 0x0120 0431 01 ADD 0432 60 PUSH1 0x40 0434 52 MSTORE 0435 80 DUP1 0436 60 PUSH1 0x00 0438 15 ISZERO 0439 15 ISZERO 043A 81 DUP2 043B 52 MSTORE 043C 60 PUSH1 0x20 043E 01 ADD 043F 60 PUSH1 0x00 0441 81 DUP2 0442 52 MSTORE 0443 60 PUSH1 0x20 0445 01 ADD 0446 60 PUSH1 0x00 0448 81 DUP2 0449 52 MSTORE 044A 60 PUSH1 0x20 044C 01 ADD 044D 60 PUSH1 0x00 044F 15 ISZERO 0450 15 ISZERO 0451 81 DUP2 0452 52 MSTORE 0453 60 PUSH1 0x20 0455 01 ADD 0456 60 PUSH1 0x60 0458 81 DUP2 0459 52 MSTORE 045A 60 PUSH1 0x20 045C 01 ADD 045D 60 PUSH1 0x00 045F 15 ISZERO 0460 15 ISZERO 0461 81 DUP2 0462 52 MSTORE 0463 60 PUSH1 0x20 0465 01 ADD 0466 60 PUSH1 0x00 0468 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 047D 16 AND 047E 81 DUP2 047F 52 MSTORE 0480 60 PUSH1 0x20 0482 01 ADD 0483 60 PUSH1 0x00 0485 15 ISZERO 0486 15 ISZERO 0487 81 DUP2 0488 52 MSTORE 0489 60 PUSH1 0x20 048B 01 ADD 048C 60 PUSH1 0x60 048E 81 DUP2 048F 52 MSTORE 0490 50 POP 0491 90 SWAP1 0492 56 *JUMP label_0493: // Incoming jump from 0x0557 // Incoming jump from 0x0510 // Incoming jump from 0x04C7 // Incoming jump from 0x053D // Incoming jump from 0x0D07 // Inputs[1] { @0495 stack[-2] } 0493 5B JUMPDEST 0494 50 POP 0495 80 DUP1 // Stack delta = +0 // Outputs[1] { @0495 stack[-1] = stack[-2] } // Block continues label_0496: // Incoming return from call to 0x565C at 0x3042 // Incoming jump from 0x0495 // Incoming return from call to 0x567E at 0x3325 // Inputs[3] // { // @0497 stack[-3] // @0497 stack[-1] // @0498 stack[-2] // } 0496 5B JUMPDEST 0497 91 SWAP2 0498 90 SWAP1 0499 50 POP 049A 56 *JUMP // Stack delta = -2 // Outputs[1] { @0497 stack[-3] = stack[-1] } // Block ends with unconditional jump to stack[-3] label_049B: // Incoming jump from 0x01F9 // Inputs[5] // { // @049F stack[-5] // @04A0 stack[-4] // @04A1 stack[-3] // @04A2 stack[-2] // @04A3 stack[-1] // } 049B 5B JUMPDEST 049C 61 PUSH2 0x04a8 049F 85 DUP6 04A0 85 DUP6 04A1 85 DUP6 04A2 85 DUP6 04A3 85 DUP6 04A4 61 PUSH2 0x10a1 04A7 56 *JUMP // Stack delta = +6 // Outputs[6] // { // @049C stack[0] = 0x04a8 // @049F stack[1] = stack[-5] // @04A0 stack[2] = stack[-4] // @04A1 stack[3] = stack[-3] // @04A2 stack[4] = stack[-2] // @04A3 stack[5] = stack[-1] // } // Block ends with unconditional jump to 0x10a1 label_04A8: // Incoming jump from 0x2926, if !(stack[-1] < stack[-4]) // Inputs[1] { @04AE stack[-6] } 04A8 5B JUMPDEST 04A9 50 POP 04AA 50 POP 04AB 50 POP 04AC 50 POP 04AD 50 POP 04AE 56 *JUMP // Stack delta = -6 // Block ends with unconditional jump to stack[-6] label_04AF: // Incoming jump from 0x020E // Inputs[1] { @04B3 memory[0x40:0x60] } 04AF 5B JUMPDEST 04B0 60 PUSH1 0x40 04B2 80 DUP1 04B3 51 MLOAD 04B4 80 DUP1 04B5 82 DUP3 04B6 01 ADD 04B7 90 SWAP1 04B8 91 SWAP2 04B9 52 MSTORE 04BA 60 PUSH1 0x60 04BC 80 DUP1 04BD 82 DUP3 04BE 52 MSTORE 04BF 60 PUSH1 0x20 04C1 82 DUP3 04C2 01 ADD 04C3 52 MSTORE 04C4 61 PUSH2 0x0493 04C7 56 *JUMP // Stack delta = +1 // Outputs[4] // { // @04B8 stack[0] = memory[0x40:0x60] // @04B9 memory[0x40:0x60] = 0x40 + memory[0x40:0x60] // @04BE memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x60 // @04C3 memory[memory[0x40:0x60] + 0x20:memory[0x40:0x60] + 0x20 + 0x20] = 0x60 // } // Block ends with unconditional jump to 0x0493 04C8 5B JUMPDEST 04C9 60 PUSH1 0x40 04CB 80 DUP1 04CC 51 MLOAD 04CD 60 PUSH1 0xa0 04CF 81 DUP2 04D0 01 ADD 04D1 82 DUP3 04D2 52 MSTORE 04D3 60 PUSH1 0x00 04D5 80 DUP1 04D6 82 DUP3 04D7 52 MSTORE 04D8 60 PUSH1 0x20 04DA 82 DUP3 04DB 01 ADD 04DC 81 DUP2 04DD 90 SWAP1 04DE 52 MSTORE 04DF 91 SWAP2 04E0 81 DUP2 04E1 01 ADD 04E2 82 DUP3 04E3 90 SWAP1 04E4 52 MSTORE 04E5 60 PUSH1 0x60 04E7 81 DUP2 04E8 01 ADD 04E9 82 DUP3 04EA 90 SWAP1 04EB 52 MSTORE 04EC 60 PUSH1 0x80 04EE 81 DUP2 04EF 01 ADD 04F0 91 SWAP2 04F1 90 SWAP1 04F2 91 SWAP2 04F3 52 MSTORE 04F4 61 PUSH2 0x0493 04F7 56 *JUMP label_04F8: // Incoming jump from 0x024E // Inputs[1] { @04FC memory[0x40:0x60] } 04F8 5B JUMPDEST 04F9 60 PUSH1 0x40 04FB 80 DUP1 04FC 51 MLOAD 04FD 80 DUP1 04FE 82 DUP3 04FF 01 ADD 0500 90 SWAP1 0501 91 SWAP2 0502 52 MSTORE 0503 60 PUSH1 0x00 0505 80 DUP1 0506 82 DUP3 0507 52 MSTORE 0508 60 PUSH1 0x20 050A 82 DUP3 050B 01 ADD 050C 52 MSTORE 050D 61 PUSH2 0x0493 0510 56 *JUMP // Stack delta = +1 // Outputs[4] // { // @0501 stack[0] = memory[0x40:0x60] // @0502 memory[0x40:0x60] = 0x40 + memory[0x40:0x60] // @0507 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x00 // @050C memory[memory[0x40:0x60] + 0x20:memory[0x40:0x60] + 0x20 + 0x20] = 0x00 // } // Block ends with unconditional jump to 0x0493 label_0511: // Incoming jump from 0x026E // Inputs[1] { @0517 memory[0x40:0x60] } 0511 5B JUMPDEST 0512 61 PUSH2 0x0493 0515 60 PUSH1 0x40 0517 51 MLOAD 0518 80 DUP1 0519 60 PUSH1 0x80 051B 01 ADD 051C 60 PUSH1 0x40 051E 52 MSTORE 051F 80 DUP1 0520 60 PUSH1 0x00 0522 15 ISZERO 0523 15 ISZERO 0524 81 DUP2 0525 52 MSTORE 0526 60 PUSH1 0x20 0528 01 ADD 0529 60 PUSH1 0x00 052B 81 DUP2 052C 52 MSTORE 052D 60 PUSH1 0x20 052F 01 ADD 0530 60 PUSH1 0x00 0532 81 DUP2 0533 52 MSTORE 0534 60 PUSH1 0x20 0536 01 ADD 0537 60 PUSH1 0x60 0539 81 DUP2 053A 52 MSTORE 053B 50 POP 053C 90 SWAP1 053D 56 *JUMP // Stack delta = +1 // Outputs[6] // { // @051E memory[0x40:0x60] = 0x80 + memory[0x40:0x60] // @0525 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = !!0x00 // @052C memory[0x20 + memory[0x40:0x60]:0x20 + memory[0x40:0x60] + 0x20] = 0x00 // @0533 memory[0x20 + 0x20 + memory[0x40:0x60]:0x20 + 0x20 + memory[0x40:0x60] + 0x20] = 0x00 // @053A memory[0x20 + 0x20 + 0x20 + memory[0x40:0x60]:0x20 + 0x20 + 0x20 + memory[0x40:0x60] + 0x20] = 0x60 // @053C stack[0] = memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0493 label_053E: // Incoming jump from 0x028E // Inputs[1] { @0542 memory[0x40:0x60] } 053E 5B JUMPDEST 053F 60 PUSH1 0x40 0541 80 DUP1 0542 51 MLOAD 0543 80 DUP1 0544 82 DUP3 0545 01 ADD 0546 90 SWAP1 0547 91 SWAP2 0548 52 MSTORE 0549 60 PUSH1 0x00 054B 81 DUP2 054C 52 MSTORE 054D 60 PUSH1 0x60 054F 60 PUSH1 0x20 0551 82 DUP3 0552 01 ADD 0553 52 MSTORE 0554 61 PUSH2 0x0493 0557 56 *JUMP // Stack delta = +1 // Outputs[4] // { // @0547 stack[0] = memory[0x40:0x60] // @0548 memory[0x40:0x60] = 0x40 + memory[0x40:0x60] // @054C memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x00 // @0553 memory[memory[0x40:0x60] + 0x20:memory[0x40:0x60] + 0x20 + 0x20] = 0x60 // } // Block ends with unconditional jump to 0x0493 0558 5B JUMPDEST 0559 61 PUSH2 0x0493 055C 60 PUSH1 0x40 055E 51 MLOAD 055F 80 DUP1 0560 60 PUSH1 0xa0 0562 01 ADD 0563 60 PUSH1 0x40 0565 52 MSTORE 0566 80 DUP1 0567 60 PUSH1 0x00 0569 15 ISZERO 056A 15 ISZERO 056B 81 DUP2 056C 52 MSTORE 056D 60 PUSH1 0x20 056F 01 ADD 0570 60 PUSH1 0x00 0572 81 DUP2 0573 52 MSTORE 0574 60 PUSH1 0x20 0576 01 ADD 0577 60 PUSH1 0x00 0579 81 DUP2 057A 52 MSTORE 057B 60 PUSH1 0x20 057D 01 ADD 057E 60 PUSH1 0x60 0580 81 DUP2 0581 52 MSTORE 0582 60 PUSH1 0x20 0584 01 ADD 0585 60 PUSH1 0x60 0587 81 DUP2 0588 52 MSTORE 0589 50 POP 058A 90 SWAP1 058B 56 *JUMP 058C 5B JUMPDEST 058D 61 PUSH2 0x0493 0590 60 PUSH1 0x40 0592 51 MLOAD 0593 80 DUP1 0594 60 PUSH1 0x60 0596 01 ADD 0597 60 PUSH1 0x40 0599 52 MSTORE 059A 80 DUP1 059B 60 PUSH1 0x00 059D 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 05B2 16 AND 05B3 81 DUP2 05B4 52 MSTORE 05B5 60 PUSH1 0x20 05B7 01 ADD 05B8 60 PUSH1 0x60 05BA 81 DUP2 05BB 52 MSTORE 05BC 60 PUSH1 0x20 05BE 01 ADD 05BF 60 PUSH1 0x60 05C1 81 DUP2 05C2 52 MSTORE 05C3 50 POP 05C4 90 SWAP1 05C5 56 *JUMP label_05C6: // Incoming jump from 0x02EE // Inputs[1] { @05D0 stack[-1] } 05C6 5B JUMPDEST 05C7 60 PUSH1 0x60 05C9 60 PUSH1 0x00 05CB 61 PUSH2 0x05da 05CE 60 PUSH1 0xc0 05D0 84 DUP5 05D1 01 ADD 05D2 60 PUSH1 0xa0 05D4 85 DUP6 05D5 01 ADD 05D6 61 PUSH2 0x3d8c 05D9 56 *JUMP // Stack delta = +5 // Outputs[5] // { // @05C7 stack[0] = 0x60 // @05C9 stack[1] = 0x00 // @05CB stack[2] = 0x05da // @05D1 stack[3] = stack[-1] + 0xc0 // @05D5 stack[4] = stack[-1] + 0xa0 // } // Block ends with unconditional jump to 0x3d8c 05DA 5B JUMPDEST 05DB 15 ISZERO 05DC 61 PUSH2 0x05e3 05DF 57 *JUMPI 05E0 5A GAS 05E1 90 SWAP1 05E2 50 POP 05E3 5B JUMPDEST 05E4 60 PUSH1 0x40 05E6 83 DUP4 05E7 01 ADD 05E8 35 CALLDATALOAD 05E9 60 PUSH1 0x01 05EB 61 PUSH2 0x05f7 05EE 60 PUSH1 0x20 05F0 86 DUP7 05F1 01 ADD 05F2 86 DUP7 05F3 61 PUSH2 0x3d8c 05F6 56 *JUMP 05F7 5B JUMPDEST 05F8 61 PUSH2 0x06e5 05FB 57 *JUMPI 05FC 87 DUP8 05FD 60 PUSH1 0x20 05FF 86 DUP7 0600 01 ADD 0601 35 CALLDATALOAD 0602 60 PUSH1 0x00 0604 5B JUMPDEST 0605 82 DUP3 0606 81 DUP2 0607 10 LT 0608 15 ISZERO 0609 61 PUSH2 0x06d4 060C 57 *JUMPI 060D 60 PUSH1 0x00 060F 8C DUP13 0610 8C DUP13 0611 83 DUP4 0612 81 DUP2 0613 81 DUP2 0614 10 LT 0615 61 PUSH2 0x062e 0618 57 *JUMPI 0619 63 PUSH4 0x4e487b71 061E 60 PUSH1 0xe0 0620 1B SHL 0621 60 PUSH1 0x00 0623 52 MSTORE 0624 60 PUSH1 0x32 0626 60 PUSH1 0x04 0628 52 MSTORE 0629 60 PUSH1 0x24 062B 60 PUSH1 0x00 062D FD *REVERT 062E 5B JUMPDEST 062F 90 SWAP1 0630 50 POP 0631 60 PUSH1 0x20 0633 02 MUL 0634 81 DUP2 0635 01 ADD 0636 90 SWAP1 0637 61 PUSH2 0x0640 063A 91 SWAP2 063B 90 SWAP1 063C 61 PUSH2 0x52e5 063F 56 *JUMP 0640 5B JUMPDEST 0641 61 PUSH2 0x0649 0644 90 SWAP1 0645 61 PUSH2 0x5560 0648 56 *JUMP 0649 5B JUMPDEST 064A 90 SWAP1 064B 50 POP 064C 60 PUSH1 0x00 064E 80 DUP1 064F 60 PUSH1 0x00 0651 61 PUSH2 0x065a 0654 84 DUP5 0655 87 DUP8 0656 61 PUSH2 0x1223 0659 56 *JUMP 065A 5B JUMPDEST 065B 92 SWAP3 065C 50 POP 065D 92 SWAP3 065E 50 POP 065F 92 SWAP3 0660 50 POP 0661 82 DUP3 0662 61 PUSH2 0x06a5 0665 57 *JUMPI 0666 60 PUSH1 0x40 0668 51 MLOAD 0669 85 DUP6 066A 81 DUP2 066B 52 MSTORE 066C 7F PUSH32 0x2953ead259883025b037a190d24835f5e63ec2bc4e1c7e5ee19462cb22464d76 068D 90 SWAP1 068E 60 PUSH1 0x20 0690 01 ADD 0691 60 PUSH1 0x40 0693 51 MLOAD 0694 80 DUP1 0695 91 SWAP2 0696 03 SUB 0697 90 SWAP1 0698 A1 LOG1 0699 60 PUSH1 0x00 069B 97 SWAP8 069C 50 POP 069D 50 POP 069E 50 POP 069F 50 POP 06A0 50 POP 06A1 61 PUSH2 0x06d4 06A4 56 *JUMP 06A5 5B JUMPDEST 06A6 81 DUP2 06A7 15 ISZERO 06A8 61 PUSH2 0x06b3 06AB 57 *JUMPI 06AC 81 DUP2 06AD 95 SWAP6 06AE 50 POP 06AF 61 PUSH2 0x06bd 06B2 56 *JUMP 06B3 5B JUMPDEST 06B4 80 DUP1 06B5 15 ISZERO 06B6 61 PUSH2 0x06bd 06B9 57 *JUMPI 06BA 80 DUP1 06BB 98 SWAP9 06BC 50 POP 06BD 5B JUMPDEST 06BE 50 POP 06BF 50 POP 06C0 50 POP 06C1 50 POP 06C2 80 DUP1 06C3 80 DUP1 06C4 61 PUSH2 0x06cc 06C7 90 SWAP1 06C8 61 PUSH2 0x5598 06CB 56 *JUMP 06CC 5B JUMPDEST 06CD 91 SWAP2 06CE 50 POP 06CF 50 POP 06D0 61 PUSH2 0x0604 06D3 56 *JUMP 06D4 5B JUMPDEST 06D5 50 POP 06D6 83 DUP4 06D7 81 DUP2 06D8 10 LT 06D9 15 ISZERO 06DA 61 PUSH2 0x06e2 06DD 57 *JUMPI 06DE 60 PUSH1 0x00 06E0 92 SWAP3 06E1 50 POP 06E2 5B JUMPDEST 06E3 50 POP 06E4 50 POP 06E5 5B JUMPDEST 06E6 80 DUP1 06E7 15 ISZERO 06E8 61 PUSH2 0x0b32 06EB 57 *JUMPI 06EC 60 PUSH1 0x40 06EE 80 DUP1 06EF 51 MLOAD 06F0 60 PUSH1 0xa0 06F2 81 DUP2 06F3 01 ADD 06F4 82 DUP3 06F5 52 MSTORE 06F6 60 PUSH1 0x00 06F8 80 DUP1 06F9 82 DUP3 06FA 52 MSTORE 06FB 60 PUSH1 0x20 06FD 82 DUP3 06FE 01 ADD 06FF 81 DUP2 0700 90 SWAP1 0701 52 MSTORE 0702 91 SWAP2 0703 81 DUP2 0704 01 ADD 0705 82 DUP3 0706 90 SWAP1 0707 52 MSTORE 0708 60 PUSH1 0x60 070A 80 DUP1 070B 82 DUP3 070C 01 ADD 070D 83 DUP4 070E 90 SWAP1 070F 52 MSTORE 0710 60 PUSH1 0x80 0712 82 DUP3 0713 01 ADD 0714 52 MSTORE 0715 61 PUSH2 0x0725 0718 61 PUSH2 0x0100 071B 88 DUP9 071C 01 ADD 071D 60 PUSH1 0xe0 071F 89 DUP10 0720 01 ADD 0721 61 PUSH2 0x3d8c 0724 56 *JUMP 0725 5B JUMPDEST 0726 15 ISZERO 0727 61 PUSH2 0x08f5 072A 57 *JUMPI 072B 61 PUSH2 0x0738 072E 61 PUSH2 0x0100 0731 88 DUP9 0732 01 ADD 0733 88 DUP9 0734 61 PUSH2 0x5282 0737 56 *JUMP 0738 5B JUMPDEST 0739 81 DUP2 073A 01 ADD 073B 90 SWAP1 073C 61 PUSH2 0x0745 073F 91 SWAP2 0740 90 SWAP1 0741 61 PUSH2 0x3f7a 0744 56 *JUMP 0745 5B JUMPDEST 0746 90 SWAP1 0747 50 POP 0748 80 DUP1 0749 60 PUSH1 0x60 074B 01 ADD 074C 51 MLOAD 074D 15 ISZERO 074E 61 PUSH2 0x0850 0751 57 *JUMPI 0752 60 PUSH1 0x00 0754 81 DUP2 0755 60 PUSH1 0x80 0757 01 ADD 0758 51 MLOAD 0759 80 DUP1 075A 60 PUSH1 0x20 075C 01 ADD 075D 90 SWAP1 075E 51 MLOAD 075F 81 DUP2 0760 01 ADD 0761 90 SWAP1 0762 61 PUSH2 0x076b 0765 91 SWAP2 0766 90 SWAP1 0767 61 PUSH2 0x3ec8 076A 56 *JUMP 076B 5B JUMPDEST 076C 90 SWAP1 076D 50 POP 076E 60 PUSH1 0x00 0770 61 PUSH2 0x077e 0773 82 DUP3 0774 60 PUSH1 0x20 0776 01 ADD 0777 51 MLOAD 0778 60 PUSH1 0x00 077A 61 PUSH2 0x1223 077D 56 *JUMP 077E 5B JUMPDEST 077F 50 POP 0780 50 POP 0781 90 SWAP1 0782 50 POP 0783 80 DUP1 0784 15 ISZERO 0785 61 PUSH2 0x084d 0788 57 *JUMPI 0789 82 DUP3 078A 51 MLOAD 078B 82 DUP3 078C 51 MLOAD 078D 60 PUSH1 0x40 078F 51 MLOAD 0790 7F PUSH32 0x2e1a7d4d00000000000000000000000000000000000000000000000000000000 07B1 81 DUP2 07B2 52 MSTORE 07B3 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 07C8 90 SWAP1 07C9 92 SWAP3 07CA 16 AND 07CB 91 SWAP2 07CC 63 PUSH4 0x2e1a7d4d 07D1 91 SWAP2 07D2 61 PUSH2 0x07e1 07D5 91 SWAP2 07D6 60 PUSH1 0x04 07D8 01 ADD 07D9 90 SWAP1 07DA 81 DUP2 07DB 52 MSTORE 07DC 60 PUSH1 0x20 07DE 01 ADD 07DF 90 SWAP1 07E0 56 *JUMP 07E1 5B JUMPDEST 07E2 60 PUSH1 0x00 07E4 60 PUSH1 0x40 07E6 51 MLOAD 07E7 80 DUP1 07E8 83 DUP4 07E9 03 SUB 07EA 81 DUP2 07EB 60 PUSH1 0x00 07ED 87 DUP8 07EE 80 DUP1 07EF 3B EXTCODESIZE 07F0 15 ISZERO 07F1 80 DUP1 07F2 15 ISZERO 07F3 61 PUSH2 0x07fb 07F6 57 *JUMPI 07F7 60 PUSH1 0x00 07F9 80 DUP1 07FA FD *REVERT 07FB 5B JUMPDEST 07FC 50 POP 07FD 5A GAS 07FE F1 CALL 07FF 15 ISZERO 0800 80 DUP1 0801 15 ISZERO 0802 61 PUSH2 0x080f 0805 57 *JUMPI 0806 3D RETURNDATASIZE 0807 60 PUSH1 0x00 0809 80 DUP1 080A 3E RETURNDATACOPY 080B 3D RETURNDATASIZE 080C 60 PUSH1 0x00 080E FD *REVERT 080F 5B JUMPDEST 0810 50 POP 0811 50 POP 0812 83 DUP4 0813 51 MLOAD 0814 60 PUSH1 0x40 0816 51 MLOAD 0817 41 COINBASE 0818 93 SWAP4 0819 50 POP 081A 81 DUP2 081B 15 ISZERO 081C 61 PUSH2 0x08fc 081F 02 MUL 0820 92 SWAP3 0821 50 POP 0822 60 PUSH1 0x00 0824 81 DUP2 0825 81 DUP2 0826 81 DUP2 0827 85 DUP6 0828 88 DUP9 0829 88 DUP9 082A F1 CALL 082B 93 SWAP4 082C 50 POP 082D 50 POP 082E 50 POP 082F 50 POP 0830 15 ISZERO 0831 80 DUP1 0832 15 ISZERO 0833 61 PUSH2 0x0840 0836 57 *JUMPI 0837 3D RETURNDATASIZE 0838 60 PUSH1 0x00 083A 80 DUP1 083B 3E RETURNDATACOPY 083C 3D RETURNDATASIZE 083D 60 PUSH1 0x00 083F FD *REVERT 0840 5B JUMPDEST 0841 50 POP 0842 50 POP 0843 50 POP 0844 50 POP 0845 50 POP 0846 50 POP 0847 50 POP 0848 50 POP 0849 61 PUSH2 0x0c2d 084C 56 *JUMP 084D 5B JUMPDEST 084E 50 POP 084F 50 POP 0850 5B JUMPDEST 0851 80 DUP1 0852 51 MLOAD 0853 60 PUSH1 0x40 0855 51 MLOAD 0856 7F PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 0877 81 DUP2 0878 52 MSTORE 0879 30 ADDRESS 087A 60 PUSH1 0x04 087C 82 DUP3 087D 01 ADD 087E 52 MSTORE 087F 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0894 90 SWAP1 0895 91 SWAP2 0896 16 AND 0897 90 SWAP1 0898 63 PUSH4 0x70a08231 089D 90 SWAP1 089E 60 PUSH1 0x24 08A0 01 ADD 08A1 60 PUSH1 0x20 08A3 60 PUSH1 0x40 08A5 51 MLOAD 08A6 80 DUP1 08A7 83 DUP4 08A8 03 SUB 08A9 81 DUP2 08AA 60 PUSH1 0x00 08AC 87 DUP8 08AD 80 DUP1 08AE 3B EXTCODESIZE 08AF 15 ISZERO 08B0 80 DUP1 08B1 15 ISZERO 08B2 61 PUSH2 0x08ba 08B5 57 *JUMPI 08B6 60 PUSH1 0x00 08B8 80 DUP1 08B9 FD *REVERT 08BA 5B JUMPDEST 08BB 50 POP 08BC 5A GAS 08BD F1 CALL 08BE 15 ISZERO 08BF 80 DUP1 08C0 15 ISZERO 08C1 61 PUSH2 0x08ce 08C4 57 *JUMPI 08C5 3D RETURNDATASIZE 08C6 60 PUSH1 0x00 08C8 80 DUP1 08C9 3E RETURNDATACOPY 08CA 3D RETURNDATASIZE 08CB 60 PUSH1 0x00 08CD FD *REVERT 08CE 5B JUMPDEST 08CF 50 POP 08D0 50 POP 08D1 50 POP 08D2 50 POP 08D3 60 PUSH1 0x40 08D5 51 MLOAD 08D6 3D RETURNDATASIZE 08D7 60 PUSH1 0x1f 08D9 19 NOT 08DA 60 PUSH1 0x1f 08DC 82 DUP3 08DD 01 ADD 08DE 16 AND 08DF 82 DUP3 08E0 01 ADD 08E1 80 DUP1 08E2 60 PUSH1 0x40 08E4 52 MSTORE 08E5 50 POP 08E6 81 DUP2 08E7 01 ADD 08E8 90 SWAP1 08E9 61 PUSH2 0x08f2 08EC 91 SWAP2 08ED 90 SWAP1 08EE 61 PUSH2 0x47e3 08F1 56 *JUMP 08F2 5B JUMPDEST 08F3 91 SWAP2 08F4 50 POP 08F5 5B JUMPDEST 08F6 61 PUSH2 0x0905 08F9 60 PUSH1 0x80 08FB 88 DUP9 08FC 01 ADD 08FD 60 PUSH1 0x60 08FF 89 DUP10 0900 01 ADD 0901 61 PUSH2 0x3d8c 0904 56 *JUMP 0905 5B JUMPDEST 0906 15 ISZERO 0907 61 PUSH2 0x095f 090A 57 *JUMPI 090B 61 PUSH2 0x095a 090E 89 DUP10 090F 89 DUP10 0910 61 PUSH2 0x091c 0913 60 PUSH1 0x80 0915 8B DUP12 0916 01 ADD 0917 8B DUP12 0918 61 PUSH2 0x5282 091B 56 *JUMP 091C 5B JUMPDEST 091D 80 DUP1 091E 80 DUP1 091F 60 PUSH1 0x1f 0921 01 ADD 0922 60 PUSH1 0x20 0924 80 DUP1 0925 91 SWAP2 0926 04 DIV 0927 02 MUL 0928 60 PUSH1 0x20 092A 01 ADD 092B 60 PUSH1 0x40 092D 51 MLOAD 092E 90 SWAP1 092F 81 DUP2 0930 01 ADD 0931 60 PUSH1 0x40 0933 52 MSTORE 0934 80 DUP1 0935 93 SWAP4 0936 92 SWAP3 0937 91 SWAP2 0938 90 SWAP1 0939 81 DUP2 093A 81 DUP2 093B 52 MSTORE 093C 60 PUSH1 0x20 093E 01 ADD 093F 83 DUP4 0940 83 DUP4 0941 80 DUP1 0942 82 DUP3 0943 84 DUP5 0944 37 CALLDATACOPY 0945 60 PUSH1 0x00 0947 92 SWAP3 0948 01 ADD 0949 91 SWAP2 094A 90 SWAP1 094B 91 SWAP2 094C 52 MSTORE 094D 50 POP 094E 50 POP 094F 50 POP 0950 50 POP 0951 60 PUSH1 0x20 0953 8B DUP12 0954 01 ADD 0955 35 CALLDATALOAD 0956 61 PUSH2 0x12e9 0959 56 *JUMP 095A 5B JUMPDEST 095B 61 PUSH2 0x0977 095E 56 *JUMP 095F 5B JUMPDEST 0960 61 PUSH2 0x0977 0963 61 PUSH2 0x096c 0966 89 DUP10 0967 8B DUP12 0968 61 PUSH2 0x5553 096B 56 *JUMP 096C 5B JUMPDEST 096D 88 DUP9 096E 60 PUSH1 0x20 0970 01 ADD 0971 35 CALLDATALOAD 0972 86 DUP7 0973 61 PUSH2 0x137f 0976 56 *JUMP 0977 5B JUMPDEST 0978 61 PUSH2 0x0988 097B 61 PUSH2 0x0100 097E 88 DUP9 097F 01 ADD 0980 60 PUSH1 0xe0 0982 89 DUP10 0983 01 ADD 0984 61 PUSH2 0x3d8c 0987 56 *JUMP 0988 5B JUMPDEST 0989 15 ISZERO 098A 61 PUSH2 0x0b2f 098D 57 *JUMPI 098E 80 DUP1 098F 51 MLOAD 0990 60 PUSH1 0x40 0992 51 MLOAD 0993 7F PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 09B4 81 DUP2 09B5 52 MSTORE 09B6 30 ADDRESS 09B7 60 PUSH1 0x04 09B9 82 DUP3 09BA 01 ADD 09BB 52 MSTORE 09BC 60 PUSH1 0x00 09BE 91 SWAP2 09BF 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 09D4 16 AND 09D5 90 SWAP1 09D6 63 PUSH4 0x70a08231 09DB 90 SWAP1 09DC 60 PUSH1 0x24 09DE 01 ADD 09DF 60 PUSH1 0x20 09E1 60 PUSH1 0x40 09E3 51 MLOAD 09E4 80 DUP1 09E5 83 DUP4 09E6 03 SUB 09E7 81 DUP2 09E8 60 PUSH1 0x00 09EA 87 DUP8 09EB 80 DUP1 09EC 3B EXTCODESIZE 09ED 15 ISZERO 09EE 80 DUP1 09EF 15 ISZERO 09F0 61 PUSH2 0x09f8 09F3 57 *JUMPI 09F4 60 PUSH1 0x00 09F6 80 DUP1 09F7 FD *REVERT 09F8 5B JUMPDEST 09F9 50 POP 09FA 5A GAS 09FB F1 CALL 09FC 15 ISZERO 09FD 80 DUP1 09FE 15 ISZERO 09FF 61 PUSH2 0x0a0c 0A02 57 *JUMPI 0A03 3D RETURNDATASIZE 0A04 60 PUSH1 0x00 0A06 80 DUP1 0A07 3E RETURNDATACOPY 0A08 3D RETURNDATASIZE 0A09 60 PUSH1 0x00 0A0B FD *REVERT 0A0C 5B JUMPDEST 0A0D 50 POP 0A0E 50 POP 0A0F 50 POP 0A10 50 POP 0A11 60 PUSH1 0x40 0A13 51 MLOAD 0A14 3D RETURNDATASIZE 0A15 60 PUSH1 0x1f 0A17 19 NOT 0A18 60 PUSH1 0x1f 0A1A 82 DUP3 0A1B 01 ADD 0A1C 16 AND 0A1D 82 DUP3 0A1E 01 ADD 0A1F 80 DUP1 0A20 60 PUSH1 0x40 0A22 52 MSTORE 0A23 50 POP 0A24 81 DUP2 0A25 01 ADD 0A26 90 SWAP1 0A27 61 PUSH2 0x0a30 0A2A 91 SWAP2 0A2B 90 SWAP1 0A2C 61 PUSH2 0x47e3 0A2F 56 *JUMP 0A30 5B JUMPDEST 0A31 90 SWAP1 0A32 50 POP 0A33 82 DUP3 0A34 81 DUP2 0A35 11 GT 0A36 15 ISZERO 0A37 61 PUSH2 0x0b2d 0A3A 57 *JUMPI 0A3B 60 PUSH1 0x00 0A3D 67 PUSH8 0x0de0b6b3a7640000 0A46 83 DUP4 0A47 60 PUSH1 0x20 0A49 01 ADD 0A4A 51 MLOAD 0A4B 84 DUP5 0A4C 60 PUSH1 0x40 0A4E 01 ADD 0A4F 51 MLOAD 0A50 86 DUP7 0A51 85 DUP6 0A52 61 PUSH2 0x0a5b 0A55 91 SWAP2 0A56 90 SWAP1 0A57 61 PUSH2 0x553c 0A5A 56 *JUMP 0A5B 5B JUMPDEST 0A5C 61 PUSH2 0x0a65 0A5F 91 SWAP2 0A60 90 SWAP1 0A61 61 PUSH2 0x553c 0A64 56 *JUMP 0A65 5B JUMPDEST 0A66 61 PUSH2 0x0a6f 0A69 91 SWAP2 0A6A 90 SWAP1 0A6B 61 PUSH2 0x54ff 0A6E 56 *JUMP 0A6F 5B JUMPDEST 0A70 61 PUSH2 0x0a79 0A73 91 SWAP2 0A74 90 SWAP1 0A75 61 PUSH2 0x53ad 0A78 56 *JUMP 0A79 5B JUMPDEST 0A7A 83 DUP4 0A7B 51 MLOAD 0A7C 60 PUSH1 0x40 0A7E 51 MLOAD 0A7F 7F PUSH32 0x2e1a7d4d00000000000000000000000000000000000000000000000000000000 0AA0 81 DUP2 0AA1 52 MSTORE 0AA2 60 PUSH1 0x04 0AA4 81 DUP2 0AA5 01 ADD 0AA6 83 DUP4 0AA7 90 SWAP1 0AA8 52 MSTORE 0AA9 91 SWAP2 0AAA 92 SWAP3 0AAB 50 POP 0AAC 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0AC1 16 AND 0AC2 90 SWAP1 0AC3 63 PUSH4 0x2e1a7d4d 0AC8 90 SWAP1 0AC9 60 PUSH1 0x24 0ACB 01 ADD 0ACC 60 PUSH1 0x00 0ACE 60 PUSH1 0x40 0AD0 51 MLOAD 0AD1 80 DUP1 0AD2 83 DUP4 0AD3 03 SUB 0AD4 81 DUP2 0AD5 60 PUSH1 0x00 0AD7 87 DUP8 0AD8 80 DUP1 0AD9 3B EXTCODESIZE 0ADA 15 ISZERO 0ADB 80 DUP1 0ADC 15 ISZERO 0ADD 61 PUSH2 0x0ae5 0AE0 57 *JUMPI 0AE1 60 PUSH1 0x00 0AE3 80 DUP1 0AE4 FD *REVERT 0AE5 5B JUMPDEST 0AE6 50 POP 0AE7 5A GAS 0AE8 F1 CALL 0AE9 15 ISZERO 0AEA 80 DUP1 0AEB 15 ISZERO 0AEC 61 PUSH2 0x0af9 0AEF 57 *JUMPI 0AF0 3D RETURNDATASIZE 0AF1 60 PUSH1 0x00 0AF3 80 DUP1 0AF4 3E RETURNDATACOPY 0AF5 3D RETURNDATASIZE 0AF6 60 PUSH1 0x00 0AF8 FD *REVERT 0AF9 5B JUMPDEST 0AFA 50 POP 0AFB 50 POP 0AFC 60 PUSH1 0x40 0AFE 51 MLOAD 0AFF 41 COINBASE 0B00 92 SWAP3 0B01 50 POP 0B02 83 DUP4 0B03 15 ISZERO 0B04 61 PUSH2 0x08fc 0B07 02 MUL 0B08 91 SWAP2 0B09 50 POP 0B0A 83 DUP4 0B0B 90 SWAP1 0B0C 60 PUSH1 0x00 0B0E 81 DUP2 0B0F 81 DUP2 0B10 81 DUP2 0B11 85 DUP6 0B12 88 DUP9 0B13 88 DUP9 0B14 F1 CALL 0B15 93 SWAP4 0B16 50 POP 0B17 50 POP 0B18 50 POP 0B19 50 POP 0B1A 15 ISZERO 0B1B 80 DUP1 0B1C 15 ISZERO 0B1D 61 PUSH2 0x0b2a 0B20 57 *JUMPI 0B21 3D RETURNDATASIZE 0B22 60 PUSH1 0x00 0B24 80 DUP1 0B25 3E RETURNDATACOPY 0B26 3D RETURNDATASIZE 0B27 60 PUSH1 0x00 0B29 FD *REVERT 0B2A 5B JUMPDEST 0B2B 50 POP 0B2C 50 POP 0B2D 5B JUMPDEST 0B2E 50 POP 0B2F 5B JUMPDEST 0B30 50 POP 0B31 50 POP 0B32 5B JUMPDEST 0B33 61 PUSH2 0x0b42 0B36 60 PUSH1 0xc0 0B38 86 DUP7 0B39 01 ADD 0B3A 60 PUSH1 0xa0 0B3C 87 DUP8 0B3D 01 ADD 0B3E 61 PUSH2 0x3d8c 0B41 56 *JUMP 0B42 5B JUMPDEST 0B43 15 ISZERO 0B44 61 PUSH2 0x0c29 0B47 57 *JUMPI 0B48 61 PUSH2 0x0b57 0B4B 60 PUSH1 0xe0 0B4D 86 DUP7 0B4E 01 ADD 0B4F 60 PUSH1 0xc0 0B51 87 DUP8 0B52 01 ADD 0B53 61 PUSH2 0x3b6b 0B56 56 *JUMP 0B57 5B JUMPDEST 0B58 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0B6D 16 AND 0B6E 63 PUSH4 0x6366b936 0B73 61 PUSH2 0xa0aa 0B76 61 PUSH2 0x0b80 0B79 36 CALLDATASIZE 0B7A 60 PUSH1 0x10 0B7C 61 PUSH2 0x54ff 0B7F 56 *JUMP 0B80 5B JUMPDEST 0B81 5A GAS 0B82 61 PUSH2 0x0b8d 0B85 88 DUP9 0B86 61 PUSH2 0x7918 0B89 61 PUSH2 0x5395 0B8C 56 *JUMP 0B8D 5B JUMPDEST 0B8E 61 PUSH2 0x0b97 0B91 91 SWAP2 0B92 90 SWAP1 0B93 61 PUSH2 0x553c 0B96 56 *JUMP 0B97 5B JUMPDEST 0B98 61 PUSH2 0x0ba1 0B9B 91 SWAP2 0B9C 90 SWAP1 0B9D 61 PUSH2 0x5395 0BA0 56 *JUMP 0BA1 5B JUMPDEST 0BA2 61 PUSH2 0x0bad 0BA5 90 SWAP1 0BA6 61 PUSH2 0x374a 0BA9 61 PUSH2 0x5395 0BAC 56 *JUMP 0BAD 5B JUMPDEST 0BAE 61 PUSH2 0x0bb7 0BB1 91 SWAP2 0BB2 90 SWAP1 0BB3 61 PUSH2 0x53ad 0BB6 56 *JUMP 0BB7 5B JUMPDEST 0BB8 60 PUSH1 0x40 0BBA 51 MLOAD 0BBB 82 DUP3 0BBC 63 PUSH4 0xffffffff 0BC1 16 AND 0BC2 60 PUSH1 0xe0 0BC4 1B SHL 0BC5 81 DUP2 0BC6 52 MSTORE 0BC7 60 PUSH1 0x04 0BC9 01 ADD 0BCA 61 PUSH2 0x0bd5 0BCD 91 SWAP2 0BCE 81 DUP2 0BCF 52 MSTORE 0BD0 60 PUSH1 0x20 0BD2 01 ADD 0BD3 90 SWAP1 0BD4 56 *JUMP 0BD5 5B JUMPDEST 0BD6 60 PUSH1 0x20 0BD8 60 PUSH1 0x40 0BDA 51 MLOAD 0BDB 80 DUP1 0BDC 83 DUP4 0BDD 03 SUB 0BDE 81 DUP2 0BDF 60 PUSH1 0x00 0BE1 87 DUP8 0BE2 80 DUP1 0BE3 3B EXTCODESIZE 0BE4 15 ISZERO 0BE5 80 DUP1 0BE6 15 ISZERO 0BE7 61 PUSH2 0x0bef 0BEA 57 *JUMPI 0BEB 60 PUSH1 0x00 0BED 80 DUP1 0BEE FD *REVERT 0BEF 5B JUMPDEST 0BF0 50 POP 0BF1 5A GAS 0BF2 F1 CALL 0BF3 15 ISZERO 0BF4 80 DUP1 0BF5 15 ISZERO 0BF6 61 PUSH2 0x0c03 0BF9 57 *JUMPI 0BFA 3D RETURNDATASIZE 0BFB 60 PUSH1 0x00 0BFD 80 DUP1 0BFE 3E RETURNDATACOPY 0BFF 3D RETURNDATASIZE 0C00 60 PUSH1 0x00 0C02 FD *REVERT 0C03 5B JUMPDEST 0C04 50 POP 0C05 50 POP 0C06 50 POP 0C07 50 POP 0C08 60 PUSH1 0x40 0C0A 51 MLOAD 0C0B 3D RETURNDATASIZE 0C0C 60 PUSH1 0x1f 0C0E 19 NOT 0C0F 60 PUSH1 0x1f 0C11 82 DUP3 0C12 01 ADD 0C13 16 AND 0C14 82 DUP3 0C15 01 ADD 0C16 80 DUP1 0C17 60 PUSH1 0x40 0C19 52 MSTORE 0C1A 50 POP 0C1B 81 DUP2 0C1C 01 ADD 0C1D 90 SWAP1 0C1E 61 PUSH2 0x0c27 0C21 91 SWAP2 0C22 90 SWAP1 0C23 61 PUSH2 0x47e3 0C26 56 *JUMP 0C27 5B JUMPDEST 0C28 50 POP 0C29 5B JUMPDEST 0C2A 50 POP 0C2B 50 POP 0C2C 50 POP 0C2D 5B JUMPDEST 0C2E 95 SWAP6 0C2F 94 SWAP5 0C30 50 POP 0C31 50 POP 0C32 50 POP 0C33 50 POP 0C34 50 POP 0C35 56 *JUMP 0C36 5B JUMPDEST 0C37 61 PUSH2 0x0493 0C3A 61 PUSH2 0x2e61 0C3D 56 *JUMP label_0C3E: // Incoming jump from 0x032E // Inputs[2] // { // @0C44 stack[-1] // @0C4A memory[stack[-1]:stack[-1] + 0x20] // } 0C3E 5B JUMPDEST 0C3F 60 PUSH1 0x00 0C41 80 DUP1 0C42 60 PUSH1 0x00 0C44 83 DUP4 0C45 80 DUP1 0C46 60 PUSH1 0x20 0C48 01 ADD 0C49 90 SWAP1 0C4A 51 MLOAD 0C4B 81 DUP2 0C4C 01 ADD 0C4D 90 SWAP1 0C4E 61 PUSH2 0x0c57 0C51 91 SWAP2 0C52 90 SWAP1 0C53 61 PUSH2 0x4448 0C56 56 *JUMP // Stack delta = +6 // Outputs[6] // { // @0C3F stack[0] = 0x00 // @0C41 stack[1] = 0x00 // @0C42 stack[2] = 0x00 // @0C51 stack[3] = 0x0c57 // @0C52 stack[4] = 0x20 + stack[-1] + memory[stack[-1]:stack[-1] + 0x20] // @0C52 stack[5] = 0x20 + stack[-1] // } // Block ends with call to 0x4448, returns to 0x0C57 label_0C57: // Incoming return from call to 0x4448 at 0x0C56 // Inputs[8] // { // @0C58 stack[-4] // @0C58 stack[-1] // @0C5A stack[-2] // @0C5A stack[-5] // @0C5C stack[-3] // @0C5C stack[-6] // @0C62 memory[0x20 + stack[-3]:0x20 + stack[-3] + 0x20] // @0C79 msg.sender // } 0C57 5B JUMPDEST 0C58 92 SWAP3 0C59 50 POP 0C5A 92 SWAP3 0C5B 50 POP 0C5C 92 SWAP3 0C5D 50 POP 0C5E 82 DUP3 0C5F 60 PUSH1 0x20 0C61 01 ADD 0C62 51 MLOAD 0C63 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0C78 16 AND 0C79 33 CALLER 0C7A 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0C8F 16 AND 0C90 14 EQ 0C91 61 PUSH2 0x0c99 0C94 57 *JUMPI // Stack delta = -3 // Outputs[3] // { // @0C58 stack[-4] = stack[-1] // @0C5A stack[-5] = stack[-2] // @0C5C stack[-6] = stack[-3] // } // Block ends with conditional jump to 0x0c99, if 0xffffffffffffffffffffffffffffffffffffffff & msg.sender == 0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + stack[-3]:0x20 + stack[-3] + 0x20] label_0C95: // Incoming jump from 0x0C94, if not 0xffffffffffffffffffffffffffffffffffffffff & msg.sender == 0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + stack[-3]:0x20 + stack[-3] + 0x20] // Inputs[1] { @0C98 memory[0x00:0x00] } 0C95 60 PUSH1 0x00 0C97 80 DUP1 0C98 FD *REVERT // Stack delta = +0 // Outputs[1] { @0C98 revert(memory[0x00:0x00]); } // Block terminates label_0C99: // Incoming jump from 0x0C94, if 0xffffffffffffffffffffffffffffffffffffffff & msg.sender == 0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + stack[-3]:0x20 + stack[-3] + 0x20] // Inputs[2] // { // @0C9D stack[-2] // @0C9E stack[-1] // } 0C99 5B JUMPDEST 0C9A 61 PUSH2 0x0cae 0C9D 82 DUP3 0C9E 82 DUP3 0C9F 61 PUSH2 0x0ca9 0CA2 81 DUP2 0CA3 60 PUSH1 0x02 0CA5 61 PUSH2 0x5395 0CA8 56 *JUMP // Stack delta = +6 // Outputs[6] // { // @0C9A stack[0] = 0x0cae // @0C9D stack[1] = stack[-2] // @0C9E stack[2] = stack[-1] // @0C9F stack[3] = 0x0ca9 // @0CA2 stack[4] = stack[-1] // @0CA3 stack[5] = 0x02 // } // Block ends with call to 0x5395, returns to 0x0CA9 label_0CA9: // Incoming return from call to 0x5395 at 0x0CA8 0CA9 5B JUMPDEST 0CAA 61 PUSH2 0x137f 0CAD 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x137f label_0CAE: // Incoming return from call to 0x0CA9 at 0x0CA8 // Inputs[1] { @0CB5 stack[-7] } 0CAE 5B JUMPDEST 0CAF 50 POP 0CB0 50 POP 0CB1 50 POP 0CB2 50 POP 0CB3 50 POP 0CB4 50 POP 0CB5 56 *JUMP // Stack delta = -7 // Block ends with unconditional jump to stack[-7] 0CB6 5B JUMPDEST 0CB7 61 PUSH2 0x0493 0CBA 61 PUSH2 0x2e91 0CBD 56 *JUMP label_0CBE: // Incoming jump from 0x0361 // Inputs[1] { @0CC4 memory[0x40:0x60] } 0CBE 5B JUMPDEST 0CBF 61 PUSH2 0x0493 0CC2 60 PUSH1 0x40 0CC4 51 MLOAD 0CC5 80 DUP1 0CC6 60 PUSH1 0xa0 0CC8 01 ADD 0CC9 60 PUSH1 0x40 0CCB 52 MSTORE 0CCC 80 DUP1 0CCD 60 PUSH1 0x00 0CCF 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0CE4 16 AND 0CE5 81 DUP2 0CE6 52 MSTORE 0CE7 60 PUSH1 0x20 0CE9 01 ADD 0CEA 60 PUSH1 0x00 0CEC 81 DUP2 0CED 52 MSTORE 0CEE 60 PUSH1 0x20 0CF0 01 ADD 0CF1 60 PUSH1 0x00 0CF3 81 DUP2 0CF4 52 MSTORE 0CF5 60 PUSH1 0x20 0CF7 01 ADD 0CF8 60 PUSH1 0x00 0CFA 15 ISZERO 0CFB 15 ISZERO 0CFC 81 DUP2 0CFD 52 MSTORE 0CFE 60 PUSH1 0x20 0D00 01 ADD 0D01 60 PUSH1 0x60 0D03 81 DUP2 0D04 52 MSTORE 0D05 50 POP 0D06 90 SWAP1 0D07 56 *JUMP // Stack delta = +1 // Outputs[7] // { // @0CCB memory[0x40:0x60] = 0xa0 + memory[0x40:0x60] // @0CE6 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0xffffffffffffffffffffffffffffffffffffffff & 0x00 // @0CED memory[0x20 + memory[0x40:0x60]:0x20 + memory[0x40:0x60] + 0x20] = 0x00 // @0CF4 memory[0x20 + 0x20 + memory[0x40:0x60]:0x20 + 0x20 + memory[0x40:0x60] + 0x20] = 0x00 // @0CFD memory[0x20 + 0x20 + 0x20 + memory[0x40:0x60]:0x20 + 0x20 + 0x20 + memory[0x40:0x60] + 0x20] = !!0x00 // @0D04 memory[0x20 + 0x20 + 0x20 + 0x20 + memory[0x40:0x60]:0x20 + 0x20 + 0x20 + 0x20 + memory[0x40:0x60] + 0x20] = 0x60 // @0D06 stack[0] = memory[0x40:0x60] // } // Block ends with unconditional jump to 0x0493 0D08 5B JUMPDEST 0D09 61 PUSH2 0x0493 0D0C 61 PUSH2 0x2ec5 0D0F 56 *JUMP 0D10 5B JUMPDEST 0D11 61 PUSH2 0x0493 0D14 61 PUSH2 0x2f11 0D17 56 *JUMP label_0D18: // Incoming jump from 0x03F7 // Inputs[2] // { // @0D1C stack[-1] // @0D22 memory[stack[-1]:stack[-1] + 0x20] // } 0D18 5B JUMPDEST 0D19 60 PUSH1 0x00 0D1B 80 DUP1 0D1C 82 DUP3 0D1D 80 DUP1 0D1E 60 PUSH1 0x20 0D20 01 ADD 0D21 90 SWAP1 0D22 51 MLOAD 0D23 81 DUP2 0D24 01 ADD 0D25 90 SWAP1 0D26 61 PUSH2 0x0d2f 0D29 91 SWAP2 0D2A 90 SWAP1 0D2B 61 PUSH2 0x4405 0D2E 56 *JUMP // Stack delta = +5 // Outputs[5] // { // @0D19 stack[0] = 0x00 // @0D1B stack[1] = 0x00 // @0D29 stack[2] = 0x0d2f // @0D2A stack[3] = 0x20 + stack[-1] + memory[stack[-1]:stack[-1] + 0x20] // @0D2A stack[4] = 0x20 + stack[-1] // } // Block ends with call to 0x4405, returns to 0x0D2F label_0D2F: // Incoming return from call to 0x4405 at 0x0D2E // Inputs[6] // { // @0D30 stack[-3] // @0D30 stack[-1] // @0D32 stack[-4] // @0D32 stack[-2] // @0D38 memory[0x20 + stack[-2]:0x20 + stack[-2] + 0x20] // @0D4F msg.sender // } 0D2F 5B JUMPDEST 0D30 91 SWAP2 0D31 50 POP 0D32 91 SWAP2 0D33 50 POP 0D34 81 DUP2 0D35 60 PUSH1 0x20 0D37 01 ADD 0D38 51 MLOAD 0D39 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0D4E 16 AND 0D4F 33 CALLER 0D50 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0D65 16 AND 0D66 14 EQ 0D67 61 PUSH2 0x0d6f 0D6A 57 *JUMPI // Stack delta = -2 // Outputs[2] // { // @0D30 stack[-3] = stack[-1] // @0D32 stack[-4] = stack[-2] // } // Block ends with conditional jump to 0x0d6f, if 0xffffffffffffffffffffffffffffffffffffffff & msg.sender == 0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + stack[-2]:0x20 + stack[-2] + 0x20] label_0D6B: // Incoming jump from 0x0D6A, if not 0xffffffffffffffffffffffffffffffffffffffff & msg.sender == 0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + stack[-2]:0x20 + stack[-2] + 0x20] // Inputs[1] { @0D6E memory[0x00:0x00] } 0D6B 60 PUSH1 0x00 0D6D 80 DUP1 0D6E FD *REVERT // Stack delta = +0 // Outputs[1] { @0D6E revert(memory[0x00:0x00]); } // Block terminates label_0D6F: // Incoming jump from 0x0D6A, if 0xffffffffffffffffffffffffffffffffffffffff & msg.sender == 0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + stack[-2]:0x20 + stack[-2] + 0x20] // Inputs[2] // { // @0D75 stack[-4] // @0D76 stack[-5] // } 0D6F 5B JUMPDEST 0D70 60 PUSH1 0x00 0D72 61 PUSH2 0x0d7b 0D75 85 DUP6 0D76 87 DUP8 0D77 61 PUSH2 0x5395 0D7A 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @0D70 stack[0] = 0x00 // @0D72 stack[1] = 0x0d7b // @0D75 stack[2] = stack[-4] // @0D76 stack[3] = stack[-5] // } // Block ends with call to 0x5395, returns to 0x0D7B label_0D7B: // Incoming return from call to 0x5395 at 0x0D7A // Inputs[4] // { // @0D7C stack[-2] // @0D7C stack[-1] // @0D81 stack[-3] // @0D82 stack[-7] // } 0D7B 5B JUMPDEST 0D7C 90 SWAP1 0D7D 50 POP 0D7E 61 PUSH2 0x0d88 0D81 82 DUP3 0D82 87 DUP8 0D83 83 DUP4 0D84 61 PUSH2 0x137f 0D87 56 *JUMP // Stack delta = +3 // Outputs[5] // { // @0D7C stack[-2] = stack[-1] // @0D7E stack[-1] = 0x0d88 // @0D81 stack[0] = stack[-3] // @0D82 stack[1] = stack[-7] // @0D83 stack[2] = stack[-1] // } // Block ends with call to 0x137f, returns to 0x0D88 label_0D88: // Incoming return from call to 0x137F at 0x0D87 // Inputs[5] // { // @0D8B stack[-3] // @0D8F memory[0x20 + stack[-3]:0x20 + stack[-3] + 0x20] // @0DAD memory[0x40:0x60] // @0DC1 memory[0x40:0x60] // @0DC8 address(0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + stack[-3]:0x20 + stack[-3] + 0x20]).code.length // } 0D88 5B JUMPDEST 0D89 60 PUSH1 0x00 0D8B 83 DUP4 0D8C 60 PUSH1 0x20 0D8E 01 ADD 0D8F 51 MLOAD 0D90 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0DA5 16 AND 0DA6 63 PUSH4 0xc72c4d10 0DAB 60 PUSH1 0x40 0DAD 51 MLOAD 0DAE 81 DUP2 0DAF 63 PUSH4 0xffffffff 0DB4 16 AND 0DB5 60 PUSH1 0xe0 0DB7 1B SHL 0DB8 81 DUP2 0DB9 52 MSTORE 0DBA 60 PUSH1 0x04 0DBC 01 ADD 0DBD 60 PUSH1 0x20 0DBF 60 PUSH1 0x40 0DC1 51 MLOAD 0DC2 80 DUP1 0DC3 83 DUP4 0DC4 03 SUB 0DC5 81 DUP2 0DC6 86 DUP7 0DC7 80 DUP1 0DC8 3B EXTCODESIZE 0DC9 15 ISZERO 0DCA 80 DUP1 0DCB 15 ISZERO 0DCC 61 PUSH2 0x0dd4 0DCF 57 *JUMPI // Stack delta = +10 // Outputs[11] // { // @0D89 stack[0] = 0x00 // @0DA5 stack[1] = 0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + stack[-3]:0x20 + stack[-3] + 0x20] // @0DA6 stack[2] = 0xc72c4d10 // @0DB9 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = (0xffffffff & 0xc72c4d10) << 0xe0 // @0DBC stack[3] = 0x04 + memory[0x40:0x60] // @0DBD stack[4] = 0x20 // @0DC1 stack[5] = memory[0x40:0x60] // @0DC4 stack[6] = (0x04 + memory[0x40:0x60]) - memory[0x40:0x60] // @0DC5 stack[7] = memory[0x40:0x60] // @0DC6 stack[8] = 0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + stack[-3]:0x20 + stack[-3] + 0x20] // @0DC9 stack[9] = !address(0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + stack[-3]:0x20 + stack[-3] + 0x20]).code.length // } // Block ends with conditional jump to 0x0dd4, if !!address(0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + stack[-3]:0x20 + stack[-3] + 0x20]).code.length label_0DD0: // Incoming jump from 0x0DCF, if not !!address(0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + stack[-3]:0x20 + stack[-3] + 0x20]).code.length // Inputs[1] { @0DD3 memory[0x00:0x00] } 0DD0 60 PUSH1 0x00 0DD2 80 DUP1 0DD3 FD *REVERT // Stack delta = +0 // Outputs[1] { @0DD3 revert(memory[0x00:0x00]); } // Block terminates label_0DD4: // Incoming jump from 0x0DCF, if !!address(0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + stack[-3]:0x20 + stack[-3] + 0x20]).code.length // Inputs[8] // { // @0DD6 msg.gas // @0DD7 stack[-3] // @0DD7 stack[-6] // @0DD7 stack[-4] // @0DD7 stack[-2] // @0DD7 stack[-5] // @0DD7 memory[stack[-3]:stack[-3] + stack[-4]] // @0DD7 address(stack[-2]).staticcall.gas(msg.gas)(memory[stack[-3]:stack[-3] + stack[-4]]) // } 0DD4 5B JUMPDEST 0DD5 50 POP 0DD6 5A GAS 0DD7 FA STATICCALL 0DD8 15 ISZERO 0DD9 80 DUP1 0DDA 15 ISZERO 0DDB 61 PUSH2 0x0de8 0DDE 57 *JUMPI // Stack delta = -5 // Outputs[2] // { // @0DD7 memory[stack[-5]:stack[-5] + stack[-6]] = address(stack[-2]).staticcall.gas(msg.gas)(memory[stack[-3]:stack[-3] + stack[-4]]) // @0DD8 stack[-6] = !address(stack[-2]).staticcall.gas(msg.gas)(memory[stack[-3]:stack[-3] + stack[-4]]) // } // Block ends with conditional jump to 0x0de8, if !!address(stack[-2]).staticcall.gas(msg.gas)(memory[stack[-3]:stack[-3] + stack[-4]]) label_0DDF: // Incoming jump from 0x0DDE, if not !!address(stack[-2]).staticcall.gas(msg.gas)(memory[stack[-3]:stack[-3] + stack[-4]]) // Inputs[4] // { // @0DDF returndata.length // @0DE3 returndata[0x00:0x00 + returndata.length] // @0DE4 returndata.length // @0DE7 memory[0x00:0x00 + returndata.length] // } 0DDF 3D RETURNDATASIZE 0DE0 60 PUSH1 0x00 0DE2 80 DUP1 0DE3 3E RETURNDATACOPY 0DE4 3D RETURNDATASIZE 0DE5 60 PUSH1 0x00 0DE7 FD *REVERT // Stack delta = +0 // Outputs[2] // { // @0DE3 memory[0x00:0x00 + returndata.length] = returndata[0x00:0x00 + returndata.length] // @0DE7 revert(memory[0x00:0x00 + returndata.length]); // } // Block terminates label_0DE8: // Incoming jump from 0x0DDE, if !!address(stack[-2]).staticcall.gas(msg.gas)(memory[stack[-3]:stack[-3] + stack[-4]]) // Inputs[2] // { // @0DEF memory[0x40:0x60] // @0DF0 returndata.length // } 0DE8 5B JUMPDEST 0DE9 50 POP 0DEA 50 POP 0DEB 50 POP 0DEC 50 POP 0DED 60 PUSH1 0x40 0DEF 51 MLOAD 0DF0 3D RETURNDATASIZE 0DF1 60 PUSH1 0x1f 0DF3 19 NOT 0DF4 60 PUSH1 0x1f 0DF6 82 DUP3 0DF7 01 ADD 0DF8 16 AND 0DF9 82 DUP3 0DFA 01 ADD 0DFB 80 DUP1 0DFC 60 PUSH1 0x40 0DFE 52 MSTORE 0DFF 50 POP 0E00 81 DUP2 0E01 01 ADD 0E02 90 SWAP1 0E03 61 PUSH2 0x0e0c 0E06 91 SWAP2 0E07 90 SWAP1 0E08 61 PUSH2 0x3b87 0E0B 56 *JUMP // Stack delta = -1 // Outputs[4] // { // @0DFE memory[0x40:0x60] = memory[0x40:0x60] + (returndata.length + 0x1f & ~0x1f) // @0E06 stack[-4] = 0x0e0c // @0E07 stack[-2] = memory[0x40:0x60] // @0E07 stack[-3] = memory[0x40:0x60] + returndata.length // } // Block ends with unconditional jump to 0x3b87 0E0C 5B JUMPDEST 0E0D 90 SWAP1 0E0E 50 POP 0E0F 60 PUSH1 0x00 0E11 81 DUP2 0E12 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0E27 16 AND 0E28 63 PUSH4 0xed6ff760 0E2D 60 PUSH1 0x40 0E2F 51 MLOAD 0E30 81 DUP2 0E31 63 PUSH4 0xffffffff 0E36 16 AND 0E37 60 PUSH1 0xe0 0E39 1B SHL 0E3A 81 DUP2 0E3B 52 MSTORE 0E3C 60 PUSH1 0x04 0E3E 01 ADD 0E3F 60 PUSH1 0x20 0E41 60 PUSH1 0x40 0E43 51 MLOAD 0E44 80 DUP1 0E45 83 DUP4 0E46 03 SUB 0E47 81 DUP2 0E48 86 DUP7 0E49 80 DUP1 0E4A 3B EXTCODESIZE 0E4B 15 ISZERO 0E4C 80 DUP1 0E4D 15 ISZERO 0E4E 61 PUSH2 0x0e56 0E51 57 *JUMPI 0E52 60 PUSH1 0x00 0E54 80 DUP1 0E55 FD *REVERT 0E56 5B JUMPDEST 0E57 50 POP 0E58 5A GAS 0E59 FA STATICCALL 0E5A 15 ISZERO 0E5B 80 DUP1 0E5C 15 ISZERO 0E5D 61 PUSH2 0x0e6a 0E60 57 *JUMPI 0E61 3D RETURNDATASIZE 0E62 60 PUSH1 0x00 0E64 80 DUP1 0E65 3E RETURNDATACOPY 0E66 3D RETURNDATASIZE 0E67 60 PUSH1 0x00 0E69 FD *REVERT 0E6A 5B JUMPDEST 0E6B 50 POP 0E6C 50 POP 0E6D 50 POP 0E6E 50 POP 0E6F 60 PUSH1 0x40 0E71 51 MLOAD 0E72 3D RETURNDATASIZE 0E73 60 PUSH1 0x1f 0E75 19 NOT 0E76 60 PUSH1 0x1f 0E78 82 DUP3 0E79 01 ADD 0E7A 16 AND 0E7B 82 DUP3 0E7C 01 ADD 0E7D 80 DUP1 0E7E 60 PUSH1 0x40 0E80 52 MSTORE 0E81 50 POP 0E82 81 DUP2 0E83 01 ADD 0E84 90 SWAP1 0E85 61 PUSH2 0x0e8e 0E88 91 SWAP2 0E89 90 SWAP1 0E8A 61 PUSH2 0x3b87 0E8D 56 *JUMP 0E8E 5B JUMPDEST 0E8F 60 PUSH1 0x20 0E91 86 DUP7 0E92 01 ADD 0E93 51 MLOAD 0E94 60 PUSH1 0x40 0E96 51 MLOAD 0E97 7F PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000 0EB8 81 DUP2 0EB9 52 MSTORE 0EBA 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0ECF 80 DUP1 0ED0 84 DUP5 0ED1 16 AND 0ED2 60 PUSH1 0x04 0ED4 83 DUP4 0ED5 01 ADD 0ED6 52 MSTORE 0ED7 60 PUSH1 0x24 0ED9 82 DUP3 0EDA 01 ADD 0EDB 87 DUP8 0EDC 90 SWAP1 0EDD 52 MSTORE 0EDE 92 SWAP3 0EDF 93 SWAP4 0EE0 50 POP 0EE1 91 SWAP2 0EE2 16 AND 0EE3 90 SWAP1 0EE4 63 PUSH4 0xa9059cbb 0EE9 90 SWAP1 0EEA 60 PUSH1 0x44 0EEC 01 ADD 0EED 60 PUSH1 0x20 0EEF 60 PUSH1 0x40 0EF1 51 MLOAD 0EF2 80 DUP1 0EF3 83 DUP4 0EF4 03 SUB 0EF5 81 DUP2 0EF6 60 PUSH1 0x00 0EF8 87 DUP8 0EF9 80 DUP1 0EFA 3B EXTCODESIZE 0EFB 15 ISZERO 0EFC 80 DUP1 0EFD 15 ISZERO 0EFE 61 PUSH2 0x0f06 0F01 57 *JUMPI 0F02 60 PUSH1 0x00 0F04 80 DUP1 0F05 FD *REVERT 0F06 5B JUMPDEST 0F07 50 POP 0F08 5A GAS 0F09 F1 CALL 0F0A 15 ISZERO 0F0B 80 DUP1 0F0C 15 ISZERO 0F0D 61 PUSH2 0x0f1a 0F10 57 *JUMPI 0F11 3D RETURNDATASIZE 0F12 60 PUSH1 0x00 0F14 80 DUP1 0F15 3E RETURNDATACOPY 0F16 3D RETURNDATASIZE 0F17 60 PUSH1 0x00 0F19 FD *REVERT 0F1A 5B JUMPDEST 0F1B 50 POP 0F1C 50 POP 0F1D 50 POP 0F1E 50 POP 0F1F 60 PUSH1 0x40 0F21 51 MLOAD 0F22 3D RETURNDATASIZE 0F23 60 PUSH1 0x1f 0F25 19 NOT 0F26 60 PUSH1 0x1f 0F28 82 DUP3 0F29 01 ADD 0F2A 16 AND 0F2B 82 DUP3 0F2C 01 ADD 0F2D 80 DUP1 0F2E 60 PUSH1 0x40 0F30 52 MSTORE 0F31 50 POP 0F32 81 DUP2 0F33 01 ADD 0F34 90 SWAP1 0F35 61 PUSH2 0x0f3e 0F38 91 SWAP2 0F39 90 SWAP1 0F3A 61 PUSH2 0x3da8 0F3D 56 *JUMP 0F3E 5B JUMPDEST 0F3F 50 POP 0F40 50 POP 0F41 50 POP 0F42 50 POP 0F43 50 POP 0F44 50 POP 0F45 50 POP 0F46 50 POP 0F47 50 POP 0F48 50 POP 0F49 56 *JUMP label_0F4A: // Incoming jump from 0x0425 // Inputs[2] // { // @0F51 stack[-1] // @0F52 stack[-2] // } 0F4A 5B JUMPDEST 0F4B 60 PUSH1 0x00 0F4D 80 DUP1 0F4E 61 PUSH2 0x0f59 0F51 83 DUP4 0F52 85 DUP6 0F53 01 ADD 0F54 85 DUP6 0F55 61 PUSH2 0x43b8 0F58 56 *JUMP // Stack delta = +5 // Outputs[5] // { // @0F4B stack[0] = 0x00 // @0F4D stack[1] = 0x00 // @0F4E stack[2] = 0x0f59 // @0F53 stack[3] = stack[-2] + stack[-1] // @0F54 stack[4] = stack[-2] // } // Block ends with unconditional jump to 0x43b8 0F59 5B JUMPDEST 0F5A 91 SWAP2 0F5B 50 POP 0F5C 91 SWAP2 0F5D 50 POP 0F5E 81 DUP2 0F5F 60 PUSH1 0x20 0F61 01 ADD 0F62 51 MLOAD 0F63 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0F78 16 AND 0F79 33 CALLER 0F7A 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0F8F 16 AND 0F90 14 EQ 0F91 61 PUSH2 0x0f99 0F94 57 *JUMPI 0F95 60 PUSH1 0x00 0F97 80 DUP1 0F98 FD *REVERT 0F99 5B JUMPDEST 0F9A 60 PUSH1 0x00 0F9C 86 DUP7 0F9D 13 SGT 0F9E 80 DUP1 0F9F 61 PUSH2 0x0fa8 0FA2 57 *JUMPI 0FA3 50 POP 0FA4 60 PUSH1 0x00 0FA6 85 DUP6 0FA7 13 SGT 0FA8 5B JUMPDEST 0FA9 61 PUSH2 0x0fb1 0FAC 57 *JUMPI 0FAD 60 PUSH1 0x00 0FAF 80 DUP1 0FB0 FD *REVERT 0FB1 5B JUMPDEST 0FB2 60 PUSH1 0x00 0FB4 80 DUP1 0FB5 60 PUSH1 0x00 0FB7 88 DUP9 0FB8 13 SGT 0FB9 15 ISZERO 0FBA 61 PUSH2 0x0fd0 0FBD 57 *JUMPI 0FBE 87 DUP8 0FBF 91 SWAP2 0FC0 50 POP 0FC1 61 PUSH2 0x0fc9 0FC4 87 DUP8 0FC5 61 PUSH2 0x55d1 0FC8 56 *JUMP 0FC9 5B JUMPDEST 0FCA 90 SWAP1 0FCB 50 POP 0FCC 61 PUSH2 0x0fdf 0FCF 56 *JUMP 0FD0 5B JUMPDEST 0FD1 86 DUP7 0FD2 91 SWAP2 0FD3 50 POP 0FD4 61 PUSH2 0x0fdc 0FD7 88 DUP9 0FD8 61 PUSH2 0x55d1 0FDB 56 *JUMP 0FDC 5B JUMPDEST 0FDD 90 SWAP1 0FDE 50 POP 0FDF 5B JUMPDEST 0FE0 61 PUSH2 0x0fea 0FE3 83 DUP4 0FE4 82 DUP3 0FE5 84 DUP5 0FE6 61 PUSH2 0x137f 0FE9 56 *JUMP 0FEA 5B JUMPDEST 0FEB 60 PUSH1 0x60 0FED 84 DUP5 0FEE 01 ADD 0FEF 51 MLOAD 0FF0 60 PUSH1 0x40 0FF2 51 MLOAD 0FF3 7F PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000 1014 81 DUP2 1015 52 MSTORE 1016 33 CALLER 1017 60 PUSH1 0x04 1019 82 DUP3 101A 01 ADD 101B 52 MSTORE 101C 60 PUSH1 0x24 101E 81 DUP2 101F 01 ADD 1020 84 DUP5 1021 90 SWAP1 1022 52 MSTORE 1023 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1038 90 SWAP1 1039 91 SWAP2 103A 16 AND 103B 90 SWAP1 103C 63 PUSH4 0xa9059cbb 1041 90 SWAP1 1042 60 PUSH1 0x44 1044 01 ADD 1045 60 PUSH1 0x20 1047 60 PUSH1 0x40 1049 51 MLOAD 104A 80 DUP1 104B 83 DUP4 104C 03 SUB 104D 81 DUP2 104E 60 PUSH1 0x00 1050 87 DUP8 1051 80 DUP1 1052 3B EXTCODESIZE 1053 15 ISZERO 1054 80 DUP1 1055 15 ISZERO 1056 61 PUSH2 0x105e 1059 57 *JUMPI 105A 60 PUSH1 0x00 105C 80 DUP1 105D FD *REVERT 105E 5B JUMPDEST 105F 50 POP 1060 5A GAS 1061 F1 CALL 1062 15 ISZERO 1063 80 DUP1 1064 15 ISZERO 1065 61 PUSH2 0x1072 1068 57 *JUMPI 1069 3D RETURNDATASIZE 106A 60 PUSH1 0x00 106C 80 DUP1 106D 3E RETURNDATACOPY 106E 3D RETURNDATASIZE 106F 60 PUSH1 0x00 1071 FD *REVERT 1072 5B JUMPDEST 1073 50 POP 1074 50 POP 1075 50 POP 1076 50 POP 1077 60 PUSH1 0x40 1079 51 MLOAD 107A 3D RETURNDATASIZE 107B 60 PUSH1 0x1f 107D 19 NOT 107E 60 PUSH1 0x1f 1080 82 DUP3 1081 01 ADD 1082 16 AND 1083 82 DUP3 1084 01 ADD 1085 80 DUP1 1086 60 PUSH1 0x40 1088 52 MSTORE 1089 50 POP 108A 81 DUP2 108B 01 ADD 108C 90 SWAP1 108D 61 PUSH2 0x1096 1090 91 SWAP2 1091 90 SWAP1 1092 61 PUSH2 0x3da8 1095 56 *JUMP 1096 5B JUMPDEST 1097 50 POP 1098 50 POP 1099 50 POP 109A 50 POP 109B 50 POP 109C 50 POP 109D 50 POP 109E 50 POP 109F 50 POP 10A0 56 *JUMP label_10A1: // Incoming jump from 0x04A7 // Inputs[2] // { // @10AA stack[-1] // @10AB stack[-2] // } 10A1 5B JUMPDEST 10A2 60 PUSH1 0x00 10A4 80 DUP1 10A5 80 DUP1 10A6 80 DUP1 10A7 61 PUSH2 0x10b2 10AA 85 DUP6 10AB 87 DUP8 10AC 01 ADD 10AD 87 DUP8 10AE 61 PUSH2 0x449e 10B1 56 *JUMP // Stack delta = +7 // Outputs[7] // { // @10A2 stack[0] = 0x00 // @10A4 stack[1] = 0x00 // @10A5 stack[2] = 0x00 // @10A6 stack[3] = 0x00 // @10A7 stack[4] = 0x10b2 // @10AC stack[5] = stack[-2] + stack[-1] // @10AD stack[6] = stack[-2] // } // Block ends with unconditional jump to 0x449e 10B2 5B JUMPDEST 10B3 93 SWAP4 10B4 50 POP 10B5 93 SWAP4 10B6 50 POP 10B7 93 SWAP4 10B8 50 POP 10B9 93 SWAP4 10BA 50 POP 10BB 83 DUP4 10BC 60 PUSH1 0x20 10BE 01 ADD 10BF 51 MLOAD 10C0 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 10D5 16 AND 10D6 33 CALLER 10D7 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 10EC 16 AND 10ED 14 EQ 10EE 61 PUSH2 0x10f6 10F1 57 *JUMPI 10F2 60 PUSH1 0x00 10F4 80 DUP1 10F5 FD *REVERT 10F6 5B JUMPDEST 10F7 60 PUSH1 0x00 10F9 80 DUP1 10FA 89 DUP10 10FB 11 GT 10FC 61 PUSH2 0x1105 10FF 57 *JUMPI 1100 87 DUP8 1101 61 PUSH2 0x1107 1104 56 *JUMP 1105 5B JUMPDEST 1106 88 DUP9 1107 5B JUMPDEST 1108 90 SWAP1 1109 50 POP 110A 60 PUSH1 0x00 110C 85 DUP6 110D 60 PUSH1 0x80 110F 01 ADD 1110 51 MLOAD 1111 61 PUSH2 0x2710 1114 61 PUSH2 0x111d 1117 91 SWAP2 1118 90 SWAP1 1119 61 PUSH2 0x553c 111C 56 *JUMP 111D 5B JUMPDEST 111E 61 PUSH2 0x1127 1121 83 DUP4 1122 85 DUP6 1123 61 PUSH2 0x553c 1126 56 *JUMP 1127 5B JUMPDEST 1128 61 PUSH2 0x1131 112B 91 SWAP2 112C 90 SWAP1 112D 61 PUSH2 0x54ff 1130 56 *JUMP 1131 5B JUMPDEST 1132 61 PUSH2 0x113b 1135 83 DUP4 1136 86 DUP7 1137 61 PUSH2 0x54ff 113A 56 *JUMP 113B 5B JUMPDEST 113C 61 PUSH2 0x1147 113F 90 SWAP1 1140 61 PUSH2 0x2710 1143 61 PUSH2 0x54ff 1146 56 *JUMP 1147 5B JUMPDEST 1148 61 PUSH2 0x1151 114B 91 SWAP2 114C 90 SWAP1 114D 61 PUSH2 0x53ad 1150 56 *JUMP 1151 5B JUMPDEST 1152 61 PUSH2 0x115c 1155 90 SWAP1 1156 60 PUSH1 0x01 1158 61 PUSH2 0x5395 115B 56 *JUMP 115C 5B JUMPDEST 115D 90 SWAP1 115E 50 POP 115F 61 PUSH2 0x1169 1162 85 DUP6 1163 83 DUP4 1164 83 DUP4 1165 61 PUSH2 0x137f 1168 56 *JUMP 1169 5B JUMPDEST 116A 60 PUSH1 0x60 116C 86 DUP7 116D 01 ADD 116E 51 MLOAD 116F 60 PUSH1 0x40 1171 51 MLOAD 1172 7F PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000 1193 81 DUP2 1194 52 MSTORE 1195 33 CALLER 1196 60 PUSH1 0x04 1198 82 DUP3 1199 01 ADD 119A 52 MSTORE 119B 60 PUSH1 0x24 119D 81 DUP2 119E 01 ADD 119F 83 DUP4 11A0 90 SWAP1 11A1 52 MSTORE 11A2 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 11B7 90 SWAP1 11B8 91 SWAP2 11B9 16 AND 11BA 90 SWAP1 11BB 63 PUSH4 0xa9059cbb 11C0 90 SWAP1 11C1 60 PUSH1 0x44 11C3 01 ADD 11C4 60 PUSH1 0x20 11C6 60 PUSH1 0x40 11C8 51 MLOAD 11C9 80 DUP1 11CA 83 DUP4 11CB 03 SUB 11CC 81 DUP2 11CD 60 PUSH1 0x00 11CF 87 DUP8 11D0 80 DUP1 11D1 3B EXTCODESIZE 11D2 15 ISZERO 11D3 80 DUP1 11D4 15 ISZERO 11D5 61 PUSH2 0x11dd 11D8 57 *JUMPI 11D9 60 PUSH1 0x00 11DB 80 DUP1 11DC FD *REVERT 11DD 5B JUMPDEST 11DE 50 POP 11DF 5A GAS 11E0 F1 CALL 11E1 15 ISZERO 11E2 80 DUP1 11E3 15 ISZERO 11E4 61 PUSH2 0x11f1 11E7 57 *JUMPI 11E8 3D RETURNDATASIZE 11E9 60 PUSH1 0x00 11EB 80 DUP1 11EC 3E RETURNDATACOPY 11ED 3D RETURNDATASIZE 11EE 60 PUSH1 0x00 11F0 FD *REVERT 11F1 5B JUMPDEST 11F2 50 POP 11F3 50 POP 11F4 50 POP 11F5 50 POP 11F6 60 PUSH1 0x40 11F8 51 MLOAD 11F9 3D RETURNDATASIZE 11FA 60 PUSH1 0x1f 11FC 19 NOT 11FD 60 PUSH1 0x1f 11FF 82 DUP3 1200 01 ADD 1201 16 AND 1202 82 DUP3 1203 01 ADD 1204 80 DUP1 1205 60 PUSH1 0x40 1207 52 MSTORE 1208 50 POP 1209 81 DUP2 120A 01 ADD 120B 90 SWAP1 120C 61 PUSH2 0x1215 120F 91 SWAP2 1210 90 SWAP1 1211 61 PUSH2 0x3da8 1214 56 *JUMP 1215 5B JUMPDEST 1216 50 POP 1217 50 POP 1218 50 POP 1219 50 POP 121A 50 POP 121B 50 POP 121C 50 POP 121D 50 POP 121E 50 POP 121F 50 POP 1220 50 POP 1221 50 POP 1222 56 *JUMP 1223 5B JUMPDEST 1224 81 DUP2 1225 51 MLOAD 1226 60 PUSH1 0x00 1228 90 SWAP1 1229 81 DUP2 122A 90 SWAP1 122B 81 DUP2 122C 90 SWAP1 122D 60 PUSH1 0x01 122F 81 DUP2 1230 14 EQ 1231 15 ISZERO 1232 61 PUSH2 0x1266 1235 57 *JUMPI 1236 61 PUSH2 0x1256 1239 86 DUP7 123A 60 PUSH1 0x20 123C 01 ADD 123D 51 MLOAD 123E 80 DUP1 123F 60 PUSH1 0x20 1241 01 ADD 1242 90 SWAP1 1243 51 MLOAD 1244 81 DUP2 1245 01 ADD 1246 90 SWAP1 1247 61 PUSH2 0x1250 124A 91 SWAP2 124B 90 SWAP1 124C 61 PUSH2 0x4590 124F 56 *JUMP 1250 5B JUMPDEST 1251 86 DUP7 1252 61 PUSH2 0x17e0 1255 56 *JUMP 1256 5B JUMPDEST 1257 90 SWAP1 1258 94 SWAP5 1259 50 POP 125A 92 SWAP3 125B 50 POP 125C 60 PUSH1 0x00 125E 91 SWAP2 125F 50 POP 1260 61 PUSH2 0x12e2 1263 90 SWAP1 1264 50 POP 1265 56 *JUMP 1266 5B JUMPDEST 1267 80 DUP1 1268 60 PUSH1 0x02 126A 14 EQ 126B 15 ISZERO 126C 61 PUSH2 0x129c 126F 57 *JUMPI 1270 61 PUSH2 0x1290 1273 86 DUP7 1274 60 PUSH1 0x20 1276 01 ADD 1277 51 MLOAD 1278 80 DUP1 1279 60 PUSH1 0x20 127B 01 ADD 127C 90 SWAP1 127D 51 MLOAD 127E 81 DUP2 127F 01 ADD 1280 90 SWAP1 1281 61 PUSH2 0x128a 1284 91 SWAP2 1285 90 SWAP1 1286 61 PUSH2 0x467b 1289 56 *JUMP 128A 5B JUMPDEST 128B 86 DUP7 128C 61 PUSH2 0x190b 128F 56 *JUMP 1290 5B JUMPDEST 1291 93 SWAP4 1292 50 POP 1293 93 SWAP4 1294 50 POP 1295 93 SWAP4 1296 50 POP 1297 50 POP 1298 61 PUSH2 0x12e2 129B 56 *JUMP 129C 5B JUMPDEST 129D 80 DUP1 129E 60 PUSH1 0x03 12A0 14 EQ 12A1 15 ISZERO 12A2 61 PUSH2 0x12d5 12A5 57 *JUMPI 12A6 61 PUSH2 0x12c6 12A9 86 DUP7 12AA 60 PUSH1 0x20 12AC 01 ADD 12AD 51 MLOAD 12AE 80 DUP1 12AF 60 PUSH1 0x20 12B1 01 ADD 12B2 90 SWAP1 12B3 51 MLOAD 12B4 81 DUP2 12B5 01 ADD 12B6 90 SWAP1 12B7 61 PUSH2 0x12c0 12BA 91 SWAP2 12BB 90 SWAP1 12BC 61 PUSH2 0x4117 12BF 56 *JUMP 12C0 5B JUMPDEST 12C1 86 DUP7 12C2 61 PUSH2 0x1c0e 12C5 56 *JUMP 12C6 5B JUMPDEST 12C7 60 PUSH1 0x00 12C9 80 DUP1 12CA 93 SWAP4 12CB 50 POP 12CC 93 SWAP4 12CD 50 POP 12CE 93 SWAP4 12CF 50 POP 12D0 50 POP 12D1 61 PUSH2 0x12e2 12D4 56 *JUMP 12D5 5B JUMPDEST 12D6 60 PUSH1 0x00 12D8 80 DUP1 12D9 60 PUSH1 0x00 12DB 93 SWAP4 12DC 50 POP 12DD 93 SWAP4 12DE 50 POP 12DF 93 SWAP4 12E0 50 POP 12E1 50 POP 12E2 5B JUMPDEST 12E3 92 SWAP3 12E4 50 POP 12E5 92 SWAP3 12E6 50 POP 12E7 92 SWAP3 12E8 56 *JUMP 12E9 5B JUMPDEST 12EA 60 PUSH1 0x00 12EC 82 DUP3 12ED 80 DUP1 12EE 60 PUSH1 0x20 12F0 01 ADD 12F1 90 SWAP1 12F2 51 MLOAD 12F3 81 DUP2 12F4 01 ADD 12F5 90 SWAP1 12F6 61 PUSH2 0x12ff 12F9 91 SWAP2 12FA 90 SWAP1 12FB 61 PUSH2 0x439d 12FE 56 *JUMP 12FF 5B JUMPDEST 1300 80 DUP1 1301 51 MLOAD 1302 90 SWAP1 1303 91 SWAP2 1304 50 POP 1305 60 PUSH1 0x01 1307 14 EQ 1308 15 ISZERO 1309 61 PUSH2 0x1325 130C 57 *JUMPI 130D 61 PUSH2 0x1320 1310 81 DUP2 1311 61 PUSH2 0x131a 1314 86 DUP7 1315 88 DUP9 1316 61 PUSH2 0x5553 1319 56 *JUMP 131A 5B JUMPDEST 131B 84 DUP5 131C 61 PUSH2 0x1df2 131F 56 *JUMP 1320 5B JUMPDEST 1321 61 PUSH2 0x04a8 1324 56 *JUMP 1325 5B JUMPDEST 1326 80 DUP1 1327 51 MLOAD 1328 60 PUSH1 0x02 132A 14 EQ 132B 15 ISZERO 132C 61 PUSH2 0x1343 132F 57 *JUMPI 1330 61 PUSH2 0x1320 1333 81 DUP2 1334 61 PUSH2 0x133d 1337 86 DUP7 1338 88 DUP9 1339 61 PUSH2 0x5553 133C 56 *JUMP 133D 5B JUMPDEST 133E 84 DUP5 133F 61 PUSH2 0x20a4 1342 56 *JUMP 1343 5B JUMPDEST 1344 80 DUP1 1345 51 MLOAD 1346 60 PUSH1 0x03 1348 14 EQ 1349 15 ISZERO 134A 61 PUSH2 0x1361 134D 57 *JUMPI 134E 61 PUSH2 0x1320 1351 81 DUP2 1352 61 PUSH2 0x135b 1355 86 DUP7 1356 88 DUP9 1357 61 PUSH2 0x5553 135A 56 *JUMP 135B 5B JUMPDEST 135C 84 DUP5 135D 61 PUSH2 0x245a 1360 56 *JUMP 1361 5B JUMPDEST 1362 80 DUP1 1363 51 MLOAD 1364 60 PUSH1 0x04 1366 14 EQ 1367 15 ISZERO 1368 61 PUSH2 0x04a8 136B 57 *JUMPI 136C 61 PUSH2 0x04a8 136F 81 DUP2 1370 61 PUSH2 0x1379 1373 86 DUP7 1374 88 DUP9 1375 61 PUSH2 0x5553 1378 56 *JUMP 1379 5B JUMPDEST 137A 84 DUP5 137B 61 PUSH2 0x2739 137E 56 *JUMP label_137F: // Incoming call from 0x0D87, returns to 0x0D88 // Incoming jump from 0x0CAD // Inputs[2] // { // @1384 stack[-3] // @1385 memory[stack[-3]:stack[-3] + 0x20] // } 137F 5B JUMPDEST 1380 60 PUSH1 0x00 1382 80 DUP1 1383 5B JUMPDEST 1384 84 DUP5 1385 51 MLOAD 1386 81 DUP2 1387 10 LT 1388 15 ISZERO 1389 61 PUSH2 0x1764 138C 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @1380 stack[0] = 0x00 // @1382 stack[1] = 0x00 // } // Block ends with conditional jump to 0x1764, if !(0x00 < memory[stack[-3]:stack[-3] + 0x20]) label_138D: // Incoming jump from 0x138C, if not !(stack[-1] < memory[stack[-5]:stack[-5] + 0x20]) // Incoming jump from 0x138C, if not !(0x00 < memory[stack[-3]:stack[-3] + 0x20]) // Inputs[3] // { // @138F stack[-5] // @1390 stack[-1] // @1392 memory[stack[-5]:stack[-5] + 0x20] // } 138D 60 PUSH1 0x00 138F 85 DUP6 1390 82 DUP3 1391 81 DUP2 1392 51 MLOAD 1393 81 DUP2 1394 10 LT 1395 61 PUSH2 0x13ae 1398 57 *JUMPI // Stack delta = +3 // Outputs[3] // { // @138D stack[0] = 0x00 // @138F stack[1] = stack[-5] // @1390 stack[2] = stack[-1] // } // Block ends with conditional jump to 0x13ae, if stack[-1] < memory[stack[-5]:stack[-5] + 0x20] label_1399: // Incoming jump from 0x1398, if not stack[-1] < memory[stack[-5]:stack[-5] + 0x20] // Inputs[1] { @13AD memory[0x00:0x24] } 1399 63 PUSH4 0x4e487b71 139E 60 PUSH1 0xe0 13A0 1B SHL 13A1 60 PUSH1 0x00 13A3 52 MSTORE 13A4 60 PUSH1 0x32 13A6 60 PUSH1 0x04 13A8 52 MSTORE 13A9 60 PUSH1 0x24 13AB 60 PUSH1 0x00 13AD FD *REVERT // Stack delta = +0 // Outputs[3] // { // @13A3 memory[0x00:0x20] = 0x4e487b71 << 0xe0 // @13A8 memory[0x04:0x24] = 0x32 // @13AD revert(memory[0x00:0x24]); // } // Block terminates label_13AE: // Incoming jump from 0x1398, if stack[-1] < memory[stack[-5]:stack[-5] + 0x20] // Inputs[8] // { // @13B1 stack[-1] // @13B5 stack[-2] // @13B6 memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @13B7 stack[-3] // @13BF memory[0x40 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x40 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20] // @13C8 memory[0x40 + memory[0x40 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x40 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20]:0x40 + memory[0x40 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x40 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20] + 0x20] // @13E7 memory[0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20] // @13EB memory[0x20 + memory[0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20]:0x20 + memory[0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20] + 0x20] // } 13AE 5B JUMPDEST 13AF 60 PUSH1 0x20 13B1 02 MUL 13B2 60 PUSH1 0x20 13B4 01 ADD 13B5 01 ADD 13B6 51 MLOAD 13B7 90 SWAP1 13B8 50 POP 13B9 60 PUSH1 0x00 13BB 81 DUP2 13BC 60 PUSH1 0x40 13BE 01 ADD 13BF 51 MLOAD 13C0 90 SWAP1 13C1 50 POP 13C2 60 PUSH1 0x00 13C4 81 DUP2 13C5 60 PUSH1 0x40 13C7 01 ADD 13C8 51 MLOAD 13C9 90 SWAP1 13CA 50 POP 13CB 60 PUSH1 0x00 13CD 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 13E2 16 AND 13E3 83 DUP4 13E4 60 PUSH1 0x20 13E6 01 ADD 13E7 51 MLOAD 13E8 60 PUSH1 0x20 13EA 01 ADD 13EB 51 MLOAD 13EC 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1401 16 AND 1402 14 EQ 1403 61 PUSH2 0x141d 1406 57 *JUMPI // Stack delta = +0 // Outputs[3] // { // @13B7 stack[-3] = memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @13C0 stack[-2] = memory[0x40 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x40 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20] // @13C9 stack[-1] = memory[0x40 + memory[0x40 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x40 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20]:0x40 + memory[0x40 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x40 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20] + 0x20] // } // Block ends with conditional jump to 0x141d, if 0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + memory[0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20]:0x20 + memory[0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20] + 0x20] == 0xffffffffffffffffffffffffffffffffffffffff & 0x00 label_1407: // Incoming jump from 0x1406, if not 0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + memory[0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20]:0x20 + memory[0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20] + 0x20] == 0xffffffffffffffffffffffffffffffffffffffff & 0x00 // Inputs[5] // { // @140A stack[-3] // @140C memory[stack[-3] + 0x20:stack[-3] + 0x20 + 0x20] // @1410 memory[memory[stack[-3] + 0x20:stack[-3] + 0x20 + 0x20] + 0x20:memory[stack[-3] + 0x20:stack[-3] + 0x20 + 0x20] + 0x20 + 0x20] // @1412 memory[memory[stack[-3] + 0x20:stack[-3] + 0x20 + 0x20]:memory[stack[-3] + 0x20:stack[-3] + 0x20 + 0x20] + 0x20] // @1418 stack[-7] // } 1407 60 PUSH1 0x20 1409 80 DUP1 140A 84 DUP5 140B 01 ADD 140C 51 MLOAD 140D 90 SWAP1 140E 81 DUP2 140F 01 ADD 1410 51 MLOAD 1411 90 SWAP1 1412 51 MLOAD 1413 61 PUSH2 0x141d 1416 91 SWAP2 1417 90 SWAP1 1418 89 DUP10 1419 61 PUSH2 0x2870 141C 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @1416 stack[0] = 0x141d // @1417 stack[1] = memory[memory[stack[-3] + 0x20:stack[-3] + 0x20 + 0x20] + 0x20:memory[stack[-3] + 0x20:stack[-3] + 0x20 + 0x20] + 0x20 + 0x20] // @1417 stack[2] = memory[memory[stack[-3] + 0x20:stack[-3] + 0x20 + 0x20]:memory[stack[-3] + 0x20:stack[-3] + 0x20 + 0x20] + 0x20] // @1418 stack[3] = stack[-7] // } // Block ends with call to 0x2870, returns to 0x141D label_141D: // Incoming jump from 0x1406, if 0xffffffffffffffffffffffffffffffffffffffff & memory[0x20 + memory[0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20]:0x20 + memory[0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20] + 0x20] == 0xffffffffffffffffffffffffffffffffffffffff & 0x00 // Incoming return from call to 0x2870 at 0x141C // Inputs[3] // { // @141E stack[-3] // @141F memory[stack[-3]:stack[-3] + 0x20] // @1420 memory[memory[stack[-3]:stack[-3] + 0x20]:memory[stack[-3]:stack[-3] + 0x20] + 0x20] // } 141D 5B JUMPDEST 141E 82 DUP3 141F 51 MLOAD 1420 51 MLOAD 1421 60 PUSH1 0x00 1423 90 SWAP1 1424 60 PUSH1 0x01 1426 14 EQ 1427 15 ISZERO 1428 61 PUSH2 0x14b6 142B 57 *JUMPI // Stack delta = +1 // Outputs[1] { @1423 stack[0] = 0x00 } // Block ends with conditional jump to 0x14b6, if !(0x01 == memory[memory[stack[-3]:stack[-3] + 0x20]:memory[stack[-3]:stack[-3] + 0x20] + 0x20]) label_142C: // Incoming jump from 0x142B, if not !(0x01 == memory[memory[stack[-3]:stack[-3] + 0x20]:memory[stack[-3]:stack[-3] + 0x20] + 0x20]) // Inputs[7] // { // @142C stack[-4] // @142D memory[stack[-4]:stack[-4] + 0x20] // @1431 memory[0x20 + memory[stack[-4]:stack[-4] + 0x20]:0x20 + memory[stack[-4]:stack[-4] + 0x20] + 0x20] // @1434 memory[0x40:0x60] // @145C stack[-8] // @1485 memory[0x40:0x60] // @148E address(memory[0x20 + memory[stack[-4]:stack[-4] + 0x20]:0x20 + memory[stack[-4]:stack[-4] + 0x20] + 0x20] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // } 142C 83 DUP4 142D 51 MLOAD 142E 60 PUSH1 0x20 1430 01 ADD 1431 51 MLOAD 1432 60 PUSH1 0x40 1434 51 MLOAD 1435 7F PUSH32 0x2e1a7d4d00000000000000000000000000000000000000000000000000000000 1456 81 DUP2 1457 52 MSTORE 1458 60 PUSH1 0x04 145A 81 DUP2 145B 01 ADD 145C 8A DUP11 145D 90 SWAP1 145E 52 MSTORE 145F 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1474 90 SWAP1 1475 91 SWAP2 1476 16 AND 1477 90 SWAP1 1478 63 PUSH4 0x2e1a7d4d 147D 90 SWAP1 147E 60 PUSH1 0x24 1480 01 ADD 1481 60 PUSH1 0x00 1483 60 PUSH1 0x40 1485 51 MLOAD 1486 80 DUP1 1487 83 DUP4 1488 03 SUB 1489 81 DUP2 148A 60 PUSH1 0x00 148C 87 DUP8 148D 80 DUP1 148E 3B EXTCODESIZE 148F 15 ISZERO 1490 80 DUP1 1491 15 ISZERO 1492 61 PUSH2 0x149a 1495 57 *JUMPI // Stack delta = +10 // Outputs[12] // { // @1457 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x2e1a7d4d00000000000000000000000000000000000000000000000000000000 // @145E memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = stack[-8] // @1477 stack[0] = memory[0x20 + memory[stack[-4]:stack[-4] + 0x20]:0x20 + memory[stack[-4]:stack[-4] + 0x20] + 0x20] & 0xffffffffffffffffffffffffffffffffffffffff // @147D stack[1] = 0x2e1a7d4d // @1480 stack[2] = 0x24 + memory[0x40:0x60] // @1481 stack[3] = 0x00 // @1485 stack[4] = memory[0x40:0x60] // @1488 stack[5] = (0x24 + memory[0x40:0x60]) - memory[0x40:0x60] // @1489 stack[6] = memory[0x40:0x60] // @148A stack[7] = 0x00 // @148C stack[8] = memory[0x20 + memory[stack[-4]:stack[-4] + 0x20]:0x20 + memory[stack[-4]:stack[-4] + 0x20] + 0x20] & 0xffffffffffffffffffffffffffffffffffffffff // @148F stack[9] = !address(memory[0x20 + memory[stack[-4]:stack[-4] + 0x20]:0x20 + memory[stack[-4]:stack[-4] + 0x20] + 0x20] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // } // Block ends with conditional jump to 0x149a, if !!address(memory[0x20 + memory[stack[-4]:stack[-4] + 0x20]:0x20 + memory[stack[-4]:stack[-4] + 0x20] + 0x20] & 0xffffffffffffffffffffffffffffffffffffffff).code.length label_1496: // Incoming jump from 0x1495, if not !!address(memory[0x20 + memory[stack[-4]:stack[-4] + 0x20]:0x20 + memory[stack[-4]:stack[-4] + 0x20] + 0x20] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Inputs[1] { @1499 memory[0x00:0x00] } 1496 60 PUSH1 0x00 1498 80 DUP1 1499 FD *REVERT // Stack delta = +0 // Outputs[1] { @1499 revert(memory[0x00:0x00]); } // Block terminates label_149A: // Incoming jump from 0x1495, if !!address(memory[0x20 + memory[stack[-4]:stack[-4] + 0x20]:0x20 + memory[stack[-4]:stack[-4] + 0x20] + 0x20] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Inputs[9] // { // @149C msg.gas // @149D memory[stack[-4]:stack[-4] + stack[-5]] // @149D address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // @149D stack[-3] // @149D stack[-5] // @149D stack[-4] // @149D stack[-2] // @149D stack[-7] // @149D stack[-6] // } 149A 5B JUMPDEST 149B 50 POP 149C 5A GAS 149D F1 CALL 149E 15 ISZERO 149F 80 DUP1 14A0 15 ISZERO 14A1 61 PUSH2 0x14ae 14A4 57 *JUMPI // Stack delta = -6 // Outputs[2] // { // @149D memory[stack[-6]:stack[-6] + stack[-7]] = address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // @149E 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 0x14ae, if !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) label_14A5: // Incoming jump from 0x14A4, if not !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // Inputs[4] // { // @14A5 returndata.length // @14A9 returndata[0x00:0x00 + returndata.length] // @14AA returndata.length // @14AD memory[0x00:0x00 + returndata.length] // } 14A5 3D RETURNDATASIZE 14A6 60 PUSH1 0x00 14A8 80 DUP1 14A9 3E RETURNDATACOPY 14AA 3D RETURNDATASIZE 14AB 60 PUSH1 0x00 14AD FD *REVERT // Stack delta = +0 // Outputs[2] // { // @14A9 memory[0x00:0x00 + returndata.length] = returndata[0x00:0x00 + returndata.length] // @14AD revert(memory[0x00:0x00 + returndata.length]); // } // Block terminates label_14AE: // Incoming jump from 0x14A4, if !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // Inputs[2] // { // @14B3 stack[-12] // @14B4 stack[-5] // } 14AE 5B JUMPDEST 14AF 50 POP 14B0 50 POP 14B1 50 POP 14B2 50 POP 14B3 87 DUP8 14B4 90 SWAP1 14B5 50 POP // Stack delta = -4 // Outputs[1] { @14B4 stack[-5] = stack[-12] } // Block continues label_14B6: // Incoming jump from 0x142B, if !(0x01 == memory[memory[stack[-3]:stack[-3] + 0x20]:memory[stack[-3]:stack[-3] + 0x20] + 0x20]) // Incoming jump from 0x14B5 // Inputs[2] // { // @14B7 stack[-2] // @14BB memory[stack[-2]:stack[-2] + 0x20] // } 14B6 5B JUMPDEST 14B7 81 DUP2 14B8 60 PUSH1 0x00 14BA 81 DUP2 14BB 51 MLOAD 14BC 81 DUP2 14BD 10 LT 14BE 61 PUSH2 0x14d7 14C1 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @14B7 stack[0] = stack[-2] // @14B8 stack[1] = 0x00 // } // Block ends with conditional jump to 0x14d7, if 0x00 < memory[stack[-2]:stack[-2] + 0x20] label_14C2: // Incoming jump from 0x14C1, if not 0x00 < memory[stack[-2]:stack[-2] + 0x20] // Inputs[1] { @14D6 memory[0x00:0x24] } 14C2 63 PUSH4 0x4e487b71 14C7 60 PUSH1 0xe0 14C9 1B SHL 14CA 60 PUSH1 0x00 14CC 52 MSTORE 14CD 60 PUSH1 0x32 14CF 60 PUSH1 0x04 14D1 52 MSTORE 14D2 60 PUSH1 0x24 14D4 60 PUSH1 0x00 14D6 FD *REVERT // Stack delta = +0 // Outputs[3] // { // @14CC memory[0x00:0x20] = 0x4e487b71 << 0xe0 // @14D1 memory[0x04:0x24] = 0x32 // @14D6 revert(memory[0x00:0x24]); // } // Block terminates label_14D7: // Incoming jump from 0x14C1, if 0x00 < memory[stack[-2]:stack[-2] + 0x20] // Inputs[4] // { // @14DA stack[-1] // @14DE stack[-2] // @14DF memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @14E3 memory[0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20] // } 14D7 5B JUMPDEST 14D8 60 PUSH1 0x20 14DA 02 MUL 14DB 60 PUSH1 0x20 14DD 01 ADD 14DE 01 ADD 14DF 51 MLOAD 14E0 60 PUSH1 0x20 14E2 01 ADD 14E3 51 MLOAD 14E4 60 PUSH1 0x01 14E6 14 EQ 14E7 15 ISZERO 14E8 61 PUSH2 0x1551 14EB 57 *JUMPI // Stack delta = -2 // Block ends with conditional jump to 0x1551, if !(0x01 == memory[0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20]) label_14EC: // Incoming jump from 0x14EB, if not !(0x01 == memory[0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20]) // Inputs[2] // { // @14EF stack[-8] // @14F2 memory[0x40:0x60] // } 14EC 61 PUSH2 0x1551 14EF 88 DUP9 14F0 60 PUSH1 0x40 14F2 51 MLOAD 14F3 60 PUSH1 0x20 14F5 01 ADD 14F6 61 PUSH2 0x1501 14F9 91 SWAP2 14FA 81 DUP2 14FB 52 MSTORE 14FC 60 PUSH1 0x20 14FE 01 ADD 14FF 90 SWAP1 1500 56 *JUMP // Stack delta = +2 // Outputs[3] // { // @14EC stack[0] = 0x1551 // @14FB memory[0x20 + memory[0x40:0x60]:0x20 + memory[0x40:0x60] + 0x20] = stack[-8] // @14FF stack[1] = 0x20 + 0x20 + memory[0x40:0x60] // } // Block ends with call to 0x1501, returns to 0x1551 label_1501: // Incoming call from 0x1500, returns to 0x1551 // Inputs[6] // { // @1504 memory[0x40:0x60] // @1508 stack[-1] // @1511 stack[-5] // @1515 memory[0x20 + stack[-5]:0x20 + stack[-5] + 0x20] // @1516 stack[-4] // @151A memory[stack[-4]:stack[-4] + 0x20] // } 1501 5B JUMPDEST 1502 60 PUSH1 0x40 1504 51 MLOAD 1505 60 PUSH1 0x20 1507 81 DUP2 1508 83 DUP4 1509 03 SUB 150A 03 SUB 150B 81 DUP2 150C 52 MSTORE 150D 90 SWAP1 150E 60 PUSH1 0x40 1510 52 MSTORE 1511 84 DUP5 1512 60 PUSH1 0x20 1514 01 ADD 1515 51 MLOAD 1516 84 DUP5 1517 60 PUSH1 0x00 1519 81 DUP2 151A 51 MLOAD 151B 81 DUP2 151C 10 LT 151D 61 PUSH2 0x1536 1520 57 *JUMPI // Stack delta = +3 // Outputs[6] // { // @150C memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = stack[-1] - memory[0x40:0x60] - 0x20 // @150D stack[-1] = memory[0x40:0x60] // @1510 memory[0x40:0x60] = stack[-1] // @1515 stack[0] = memory[0x20 + stack[-5]:0x20 + stack[-5] + 0x20] // @1516 stack[1] = stack[-4] // @1517 stack[2] = 0x00 // } // Block ends with conditional jump to 0x1536, if 0x00 < memory[stack[-4]:stack[-4] + 0x20] label_1521: // Incoming jump from 0x1520, if not 0x00 < memory[stack[-4]:stack[-4] + 0x20] // Inputs[1] { @1535 memory[0x00:0x24] } 1521 63 PUSH4 0x4e487b71 1526 60 PUSH1 0xe0 1528 1B SHL 1529 60 PUSH1 0x00 152B 52 MSTORE 152C 60 PUSH1 0x32 152E 60 PUSH1 0x04 1530 52 MSTORE 1531 60 PUSH1 0x24 1533 60 PUSH1 0x00 1535 FD *REVERT // Stack delta = +0 // Outputs[3] // { // @152B memory[0x00:0x20] = 0x4e487b71 << 0xe0 // @1530 memory[0x04:0x24] = 0x32 // @1535 revert(memory[0x00:0x24]); // } // Block terminates label_1536: // Incoming jump from 0x1520, if 0x00 < memory[stack[-4]:stack[-4] + 0x20] // Inputs[8] // { // @1539 stack[-1] // @153D stack[-2] // @153E memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @1542 memory[0x00 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x00 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20] // @1545 stack[-4] // @1548 memory[0x20 + stack[-4]:0x20 + stack[-4] + 0x20] // @154B stack[-3] // @1550 stack[-5] // } 1536 5B JUMPDEST 1537 60 PUSH1 0x20 1539 02 MUL 153A 60 PUSH1 0x20 153C 01 ADD 153D 01 ADD 153E 51 MLOAD 153F 60 PUSH1 0x00 1541 01 ADD 1542 51 MLOAD 1543 60 PUSH1 0x20 1545 92 SWAP3 1546 83 DUP4 1547 01 ADD 1548 51 MLOAD 1549 92 SWAP3 154A 02 MUL 154B 01 ADD 154C 60 PUSH1 0x04 154E 01 ADD 154F 52 MSTORE 1550 56 *JUMP // Stack delta = -5 // Outputs[1] { @154F memory[0x04 + 0x20 * memory[0x00 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x00 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20] + stack[-3]:0x04 + 0x20 * memory[0x00 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x00 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20] + stack[-3] + 0x20] = memory[0x20 + stack[-4]:0x20 + stack[-4] + 0x20] } // Block ends with unconditional jump to stack[-5] label_1551: // Incoming return from call to 0x1501 at 0x1500 // Incoming jump from 0x14EB, if !(0x01 == memory[0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20]) // Inputs[5] // { // @1555 stack[-3] // @1559 memory[0x00 + stack[-3]:0x00 + stack[-3] + 0x20] // @1570 stack[-1] // @1575 memory[0x20 + stack[-3]:0x20 + stack[-3] + 0x20] // @1578 memory[0x40:0x60] // } 1551 5B JUMPDEST 1552 60 PUSH1 0x00 1554 80 DUP1 1555 84 DUP5 1556 60 PUSH1 0x00 1558 01 ADD 1559 51 MLOAD 155A 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 156F 16 AND 1570 83 DUP4 1571 86 DUP7 1572 60 PUSH1 0x20 1574 01 ADD 1575 51 MLOAD 1576 60 PUSH1 0x40 1578 51 MLOAD 1579 61 PUSH2 0x1582 157C 91 SWAP2 157D 90 SWAP1 157E 61 PUSH2 0x4b1f 1581 56 *JUMP // Stack delta = +7 // Outputs[7] // { // @1552 stack[0] = 0x00 // @1554 stack[1] = 0x00 // @156F stack[2] = 0xffffffffffffffffffffffffffffffffffffffff & memory[0x00 + stack[-3]:0x00 + stack[-3] + 0x20] // @1570 stack[3] = stack[-1] // @157C stack[4] = 0x1582 // @157D stack[5] = memory[0x20 + stack[-3]:0x20 + stack[-3] + 0x20] // @157D stack[6] = memory[0x40:0x60] // } // Block ends with call to 0x4b1f, returns to 0x1582 label_1582: // Incoming return from call to 0x4B1F at 0x1581 // Inputs[8] // { // @1587 memory[0x40:0x60] // @1589 stack[-1] // @158C stack[-2] // @158D stack[-3] // @158E msg.gas // @158F address(stack[-3]).call.gas(msg.gas).value(stack[-2])(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) // @158F memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]] // @1594 returndata.length // } 1582 5B JUMPDEST 1583 60 PUSH1 0x00 1585 60 PUSH1 0x40 1587 51 MLOAD 1588 80 DUP1 1589 83 DUP4 158A 03 SUB 158B 81 DUP2 158C 85 DUP6 158D 87 DUP8 158E 5A GAS 158F F1 CALL 1590 92 SWAP3 1591 50 POP 1592 50 POP 1593 50 POP 1594 3D RETURNDATASIZE 1595 80 DUP1 1596 60 PUSH1 0x00 1598 81 DUP2 1599 14 EQ 159A 61 PUSH2 0x15bf 159D 57 *JUMPI // Stack delta = +0 // Outputs[4] // { // @158F memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00] = address(stack[-3]).call.gas(msg.gas).value(stack[-2])(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) // @1590 stack[-3] = address(stack[-3]).call.gas(msg.gas).value(stack[-2])(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) // @1594 stack[-2] = returndata.length // @1595 stack[-1] = returndata.length // } // Block ends with conditional jump to 0x15bf, if returndata.length == 0x00 label_159E: // Incoming jump from 0x159D, if not returndata.length == 0x00 // Inputs[6] // { // @15A0 memory[0x40:0x60] // @15A1 stack[-2] // @15A8 returndata.length // @15B0 returndata.length // @15B3 returndata.length // @15BA returndata[0x00:0x00 + returndata.length] // } 159E 60 PUSH1 0x40 15A0 51 MLOAD 15A1 91 SWAP2 15A2 50 POP 15A3 60 PUSH1 0x1f 15A5 19 NOT 15A6 60 PUSH1 0x3f 15A8 3D RETURNDATASIZE 15A9 01 ADD 15AA 16 AND 15AB 82 DUP3 15AC 01 ADD 15AD 60 PUSH1 0x40 15AF 52 MSTORE 15B0 3D RETURNDATASIZE 15B1 82 DUP3 15B2 52 MSTORE 15B3 3D RETURNDATASIZE 15B4 60 PUSH1 0x00 15B6 60 PUSH1 0x20 15B8 84 DUP5 15B9 01 ADD 15BA 3E RETURNDATACOPY 15BB 61 PUSH2 0x15c4 15BE 56 *JUMP // Stack delta = +0 // Outputs[4] // { // @15A1 stack[-2] = memory[0x40:0x60] // @15AF memory[0x40:0x60] = memory[0x40:0x60] + (returndata.length + 0x3f & ~0x1f) // @15B2 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = returndata.length // @15BA memory[memory[0x40:0x60] + 0x20:memory[0x40:0x60] + 0x20 + returndata.length] = returndata[0x00:0x00 + returndata.length] // } // Block ends with unconditional jump to 0x15c4 label_15BF: // Incoming jump from 0x159D, if returndata.length == 0x00 // Inputs[4] // { // @15C2 stack[-2] // @15C6 stack[-4] // @15C8 stack[-3] // @15C8 stack[-5] // } 15BF 5B JUMPDEST 15C0 60 PUSH1 0x60 15C2 91 SWAP2 15C3 50 POP 15C4 5B JUMPDEST 15C5 50 POP 15C6 91 SWAP2 15C7 50 POP 15C8 91 SWAP2 15C9 50 POP 15CA 81 DUP2 15CB 61 PUSH2 0x15db 15CE 57 *JUMPI // Stack delta = -3 // Outputs[2] // { // @15C6 stack[-4] = 0x60 // @15C8 stack[-5] = stack[-3] // } // Block ends with conditional jump to 0x15db, if stack[-3] label_15CF: // Incoming jump from 0x15CE, if not stack[-3] // Incoming jump from 0x15CE, if not stack[-3] // Inputs[4] // { // @15D1 memory[0x40:0x60] // @15D2 returndata.length // @15D7 returndata[0x00:0x00 + returndata.length] // @15DA memory[memory[0x40:0x60]:memory[0x40:0x60] + returndata.length] // } 15CF 60 PUSH1 0x40 15D1 51 MLOAD 15D2 3D RETURNDATASIZE 15D3 80 DUP1 15D4 60 PUSH1 0x00 15D6 83 DUP4 15D7 3E RETURNDATACOPY 15D8 80 DUP1 15D9 82 DUP3 15DA FD *REVERT // Stack delta = +2 // Outputs[4] // { // @15D1 stack[0] = memory[0x40:0x60] // @15D2 stack[1] = returndata.length // @15D7 memory[memory[0x40:0x60]:memory[0x40:0x60] + returndata.length] = returndata[0x00:0x00 + returndata.length] // @15DA revert(memory[memory[0x40:0x60]:memory[0x40:0x60] + returndata.length]); // } // Block terminates label_15DB: // Incoming jump from 0x15CE, if stack[-3] // Incoming jump from 0x15CE, if stack[-3] // Inputs[2] // { // @15DE stack[-4] // @15DF memory[stack[-4]:stack[-4] + 0x20] // } 15DB 5B JUMPDEST 15DC 60 PUSH1 0x01 15DE 84 DUP5 15DF 51 MLOAD 15E0 11 GT 15E1 80 DUP1 15E2 15 ISZERO 15E3 61 PUSH2 0x1618 15E6 57 *JUMPI // Stack delta = +1 // Outputs[1] { @15E0 stack[0] = memory[stack[-4]:stack[-4] + 0x20] > 0x01 } // Block ends with conditional jump to 0x1618, if !(memory[stack[-4]:stack[-4] + 0x20] > 0x01) label_15E7: // Incoming jump from 0x15E6, if not !(memory[stack[-4]:stack[-4] + 0x20] > 0x01) // Inputs[2] // { // @15E8 stack[-5] // @15EC memory[stack[-5]:stack[-5] + 0x20] // } 15E7 50 POP 15E8 83 DUP4 15E9 60 PUSH1 0x01 15EB 81 DUP2 15EC 51 MLOAD 15ED 81 DUP2 15EE 10 LT 15EF 61 PUSH2 0x1608 15F2 57 *JUMPI // Stack delta = +1 // Outputs[2] // { // @15E8 stack[-1] = stack[-5] // @15E9 stack[0] = 0x01 // } // Block ends with conditional jump to 0x1608, if 0x01 < memory[stack[-5]:stack[-5] + 0x20] label_15F3: // Incoming jump from 0x15F2, if not 0x01 < memory[stack[-5]:stack[-5] + 0x20] // Inputs[1] { @1607 memory[0x00:0x24] } 15F3 63 PUSH4 0x4e487b71 15F8 60 PUSH1 0xe0 15FA 1B SHL 15FB 60 PUSH1 0x00 15FD 52 MSTORE 15FE 60 PUSH1 0x32 1600 60 PUSH1 0x04 1602 52 MSTORE 1603 60 PUSH1 0x24 1605 60 PUSH1 0x00 1607 FD *REVERT // Stack delta = +0 // Outputs[3] // { // @15FD memory[0x00:0x20] = 0x4e487b71 << 0xe0 // @1602 memory[0x04:0x24] = 0x32 // @1607 revert(memory[0x00:0x24]); // } // Block terminates label_1608: // Incoming jump from 0x15F2, if 0x01 < memory[stack[-5]:stack[-5] + 0x20] // Inputs[4] // { // @160B stack[-1] // @160F stack[-2] // @1610 memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @1614 memory[0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20] // } 1608 5B JUMPDEST 1609 60 PUSH1 0x20 160B 02 MUL 160C 60 PUSH1 0x20 160E 01 ADD 160F 01 ADD 1610 51 MLOAD 1611 60 PUSH1 0x20 1613 01 ADD 1614 51 MLOAD 1615 60 PUSH1 0x02 1617 14 EQ // Stack delta = -1 // Outputs[1] { @1617 stack[-2] = 0x02 == memory[0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x20 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20] } // Block continues label_1618: // Incoming jump from 0x15E6, if !(memory[stack[-4]:stack[-4] + 0x20] > 0x01) // Incoming jump from 0x1617 // Inputs[1] { @1619 stack[-1] } 1618 5B JUMPDEST 1619 15 ISZERO 161A 61 PUSH2 0x1669 161D 57 *JUMPI // Stack delta = -1 // Block ends with conditional jump to 0x1669, if !stack[-1] label_161E: // Incoming jump from 0x161D, if not !stack[-1] // Inputs[3] // { // @1621 stack[-1] // @1622 stack[-4] // @1626 memory[stack[-4]:stack[-4] + 0x20] // } 161E 61 PUSH2 0x1653 1621 81 DUP2 1622 85 DUP6 1623 60 PUSH1 0x01 1625 81 DUP2 1626 51 MLOAD 1627 81 DUP2 1628 10 LT 1629 61 PUSH2 0x1642 162C 57 *JUMPI // Stack delta = +4 // Outputs[4] // { // @161E stack[0] = 0x1653 // @1621 stack[1] = stack[-1] // @1622 stack[2] = stack[-4] // @1623 stack[3] = 0x01 // } // Block ends with conditional call to 0x1642, returns to 0x1653, if 0x01 < memory[stack[-4]:stack[-4] + 0x20] label_162D: // Incoming jump from 0x162C, if not 0x01 < memory[stack[-4]:stack[-4] + 0x20] // Inputs[1] { @1641 memory[0x00:0x24] } 162D 63 PUSH4 0x4e487b71 1632 60 PUSH1 0xe0 1634 1B SHL 1635 60 PUSH1 0x00 1637 52 MSTORE 1638 60 PUSH1 0x32 163A 60 PUSH1 0x04 163C 52 MSTORE 163D 60 PUSH1 0x24 163F 60 PUSH1 0x00 1641 FD *REVERT // Stack delta = +0 // Outputs[3] // { // @1637 memory[0x00:0x20] = 0x4e487b71 << 0xe0 // @163C memory[0x04:0x24] = 0x32 // @1641 revert(memory[0x00:0x24]); // } // Block terminates label_1642: // Incoming call from 0x162C, returns to 0x1653, if 0x01 < memory[stack[-4]:stack[-4] + 0x20] // Inputs[4] // { // @1645 stack[-1] // @1649 stack[-2] // @164A memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] // @164E memory[0x00 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x00 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20] // } 1642 5B JUMPDEST 1643 60 PUSH1 0x20 1645 02 MUL 1646 60 PUSH1 0x20 1648 01 ADD 1649 01 ADD 164A 51 MLOAD 164B 60 PUSH1 0x00 164D 01 ADD 164E 51 MLOAD 164F 61 PUSH2 0x294e 1652 56 *JUMP // Stack delta = -1 // Outputs[1] { @164E stack[-2] = memory[0x00 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20]:0x00 + memory[0x20 + 0x20 * stack[-1] + stack[-2]:0x20 + 0x20 * stack[-1] + stack[-2] + 0x20] + 0x20] } // Block ends with unconditional jump to 0x294e label_1653: // Incoming return from call to 0x1642 at 0x162C // Inputs[2] // { // @1654 stack[-1] // @1659 memory[stack[-1]:stack[-1] + 0x20] // } 1653 5B JUMPDEST 1654 80 DUP1 1655 60 PUSH1 0x20 1657 01 ADD 1658 90 SWAP1 1659 51 MLOAD 165A 81 DUP2 165B 01 ADD 165C 90 SWAP1 165D 61 PUSH2 0x1666 1660 91 SWAP2 1661 90 SWAP1 1662 61 PUSH2 0x47e3 1665 56 *JUMP // Stack delta = +2 // Outputs[3] // { // @1660 stack[-1] = 0x1666 // @1661 stack[1] = 0x20 + stack[-1] // @1661 stack[0] = 0x20 + stack[-1] + memory[stack[-1]:stack[-1] + 0x20] // } // Block ends with call to 0x47e3, returns to 0x1666 label_1666: // Incoming return from call to 0x47E3 at 0x1665 // Inputs[2] // { // @1667 stack[-9] // @1667 stack[-1] // } 1666 5B JUMPDEST 1667 97 SWAP8 1668 50 POP // Stack delta = -1 // Outputs[1] { @1667 stack[-9] = stack[-1] } // Block continues label_1669: // Incoming jump from 0x161D, if !stack[-1] // Incoming jump from 0x1668 // Inputs[1] { @166A stack[-8] } 1669 5B JUMPDEST 166A 87 DUP8 166B 61 PUSH2 0x16d5 166E 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x16d5, if stack[-8] label_166F: // Incoming jump from 0x166E, if not stack[-8] // Inputs[1] { @1671 memory[0x40:0x60] } 166F 60 PUSH1 0x40 1671 51 MLOAD 1672 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 1693 81 DUP2 1694 52 MSTORE 1695 60 PUSH1 0x20 1697 60 PUSH1 0x04 1699 82 DUP3 169A 01 ADD 169B 52 MSTORE 169C 60 PUSH1 0x13 169E 60 PUSH1 0x24 16A0 82 DUP3 16A1 01 ADD 16A2 52 MSTORE 16A3 7F PUSH32 0x496e76616c69642073776170206f757470757400000000000000000000000000 16C4 60 PUSH1 0x44 16C6 82 DUP3 16C7 01 ADD 16C8 52 MSTORE 16C9 60 PUSH1 0x64 16CB 01 ADD // Stack delta = +1 // Outputs[5] // { // @1694 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @169B memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @16A2 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x13 // @16C8 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x496e76616c69642073776170206f757470757400000000000000000000000000 // @16CB stack[0] = 0x64 + memory[0x40:0x60] // } // Block continues label_16CC: // Incoming jump from 0x16CB // Incoming jump from 0x17D9 // Inputs[3] // { // @16CF memory[0x40:0x60] // @16D1 stack[-1] // @16D4 memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]] // } 16CC 5B JUMPDEST 16CD 60 PUSH1 0x40 16CF 51 MLOAD 16D0 80 DUP1 16D1 91 SWAP2 16D2 03 SUB 16D3 90 SWAP1 16D4 FD *REVERT // Stack delta = -1 // Outputs[1] { @16D4 revert(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]); } // Block terminates label_16D5: // Incoming jump from 0x166E, if stack[-8] // Inputs[5] // { // @16D6 stack[-6] // @16D7 memory[stack[-6]:stack[-6] + 0x20] // @16D8 memory[memory[stack[-6]:stack[-6] + 0x20]:memory[stack[-6]:stack[-6] + 0x20] + 0x20] // @16D9 stack[-8] // @16DA stack[-10] // } 16D5 5B JUMPDEST 16D6 85 DUP6 16D7 51 MLOAD 16D8 51 MLOAD 16D9 97 SWAP8 16DA 99 SWAP10 16DB 50 POP 16DC 89 DUP10 16DD 97 SWAP8 16DE 60 PUSH1 0x02 16E0 14 EQ 16E1 15 ISZERO 16E2 61 PUSH2 0x174b 16E5 57 *JUMPI // Stack delta = +0 // Outputs[2] // { // @16DA stack[-10] = stack[-8] // @16DD stack[-8] = stack[-8] // } // Block ends with conditional jump to 0x174b, if !(0x02 == memory[memory[stack[-6]:stack[-6] + 0x20]:memory[stack[-6]:stack[-6] + 0x20] + 0x20]) label_16E6: // Incoming jump from 0x16E5, if not !(0x02 == memory[memory[stack[-6]:stack[-6] + 0x20]:memory[stack[-6]:stack[-6] + 0x20] + 0x20]) // Inputs[9] // { // @16E6 stack[-6] // @16E7 memory[stack[-6]:stack[-6] + 0x20] // @16EB memory[0x20 + memory[stack[-6]:stack[-6] + 0x20]:0x20 + memory[stack[-6]:stack[-6] + 0x20] + 0x20] // @16EE memory[0x40:0x60] // @1708 stack[-10] // @1711 msg.gas // @1712 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00] // @1712 address(memory[0x20 + memory[stack[-6]:stack[-6] + 0x20]:0x20 + memory[stack[-6]:stack[-6] + 0x20] + 0x20] & 0xffffffffffffffffffffffffffffffffffffffff).call.gas(msg.gas).value(stack[-10])(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00]) // @1717 returndata.length // } 16E6 85 DUP6 16E7 51 MLOAD 16E8 60 PUSH1 0x20 16EA 01 ADD 16EB 51 MLOAD 16EC 60 PUSH1 0x40 16EE 51 MLOAD 16EF 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1704 90 SWAP1 1705 91 SWAP2 1706 16 AND 1707 90 SWAP1 1708 8B DUP12 1709 90 SWAP1 170A 60 PUSH1 0x00 170C 81 DUP2 170D 81 DUP2 170E 81 DUP2 170F 85 DUP6 1710 87 DUP8 1711 5A GAS 1712 F1 CALL 1713 92 SWAP3 1714 50 POP 1715 50 POP 1716 50 POP 1717 3D RETURNDATASIZE 1718 80 DUP1 1719 60 PUSH1 0x00 171B 81 DUP2 171C 14 EQ 171D 61 PUSH2 0x1742 1720 57 *JUMPI // Stack delta = +3 // Outputs[4] // { // @1712 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00] = address(memory[0x20 + memory[stack[-6]:stack[-6] + 0x20]:0x20 + memory[stack[-6]:stack[-6] + 0x20] + 0x20] & 0xffffffffffffffffffffffffffffffffffffffff).call.gas(msg.gas).value(stack[-10])(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00]) // @1713 stack[0] = address(memory[0x20 + memory[stack[-6]:stack[-6] + 0x20]:0x20 + memory[stack[-6]:stack[-6] + 0x20] + 0x20] & 0xffffffffffffffffffffffffffffffffffffffff).call.gas(msg.gas).value(stack[-10])(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00]) // @1717 stack[1] = returndata.length // @1718 stack[2] = returndata.length // } // Block ends with conditional jump to 0x1742, if returndata.length == 0x00 label_1721: // Incoming jump from 0x1720, if not returndata.length == 0x00 // Inputs[6] // { // @1723 memory[0x40:0x60] // @1724 stack[-2] // @172B returndata.length // @1733 returndata.length // @1736 returndata.length // @173D returndata[0x00:0x00 + returndata.length] // } 1721 60 PUSH1 0x40 1723 51 MLOAD 1724 91 SWAP2 1725 50 POP 1726 60 PUSH1 0x1f 1728 19 NOT 1729 60 PUSH1 0x3f 172B 3D RETURNDATASIZE 172C 01 ADD 172D 16 AND 172E 82 DUP3 172F 01 ADD 1730 60 PUSH1 0x40 1732 52 MSTORE 1733 3D RETURNDATASIZE 1734 82 DUP3 1735 52 MSTORE 1736 3D RETURNDATASIZE 1737 60 PUSH1 0x00 1739 60 PUSH1 0x20 173B 84 DUP5 173C 01 ADD 173D 3E RETURNDATACOPY 173E 61 PUSH2 0x1747 1741 56 *JUMP // Stack delta = +0 // Outputs[4] // { // @1724 stack[-2] = memory[0x40:0x60] // @1732 memory[0x40:0x60] = memory[0x40:0x60] + (returndata.length + 0x3f & ~0x1f) // @1735 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = returndata.length // @173D memory[memory[0x40:0x60] + 0x20:memory[0x40:0x60] + 0x20 + returndata.length] = returndata[0x00:0x00 + returndata.length] // } // Block ends with unconditional jump to 0x1747 label_1742: // Incoming jump from 0x1720, if returndata.length == 0x00 // Inputs[1] { @1745 stack[-2] } 1742 5B JUMPDEST 1743 60 PUSH1 0x60 1745 91 SWAP2 1746 50 POP 1747 5B JUMPDEST 1748 50 POP 1749 50 POP 174A 50 POP // Stack delta = -3 // Block continues label_174B: // Incoming jump from 0x174A // Incoming jump from 0x174A // Incoming jump from 0x16E5, if !(0x02 == memory[memory[stack[-6]:stack[-6] + 0x20]:memory[stack[-6]:stack[-6] + 0x20] + 0x20]) // Inputs[1] { @1752 stack[-7] } 174B 5B JUMPDEST 174C 50 POP 174D 50 POP 174E 50 POP 174F 50 POP 1750 50 POP 1751 50 POP 1752 80 DUP1 1753 80 DUP1 1754 61 PUSH2 0x175c 1757 90 SWAP1 1758 61 PUSH2 0x5598 175B 56 *JUMP // Stack delta = -3 // Outputs[3] // { // @1752 stack[-6] = stack[-7] // @1757 stack[-5] = 0x175c // @1757 stack[-4] = stack[-7] // } // Block ends with call to 0x5598, returns to 0x175C label_175C: // Incoming return from call to 0x5598 at 0x175B // Inputs[2] // { // @175D stack[-3] // @175D stack[-1] // } 175C 5B JUMPDEST 175D 91 SWAP2 175E 50 POP 175F 50 POP 1760 61 PUSH2 0x1383 1763 56 *JUMP // Stack delta = -2 // Outputs[1] { @175D stack[-3] = stack[-1] } // Block ends with unconditional jump to 0x1383 label_1764: // Incoming jump from 0x138C, if !(stack[-1] < memory[stack[-5]:stack[-5] + 0x20]) // Incoming jump from 0x138C, if !(0x00 < memory[stack[-3]:stack[-3] + 0x20]) // Inputs[1] { @1766 stack[-3] } 1764 5B JUMPDEST 1765 50 POP 1766 81 DUP2 1767 15 ISZERO 1768 80 DUP1 1769 15 ISZERO 176A 90 SWAP1 176B 61 PUSH2 0x1773 176E 57 *JUMPI // Stack delta = +0 // Outputs[1] { @176A stack[-1] = !!stack[-3] } // Block ends with conditional jump to 0x1773, if !stack[-3] label_176F: // Incoming jump from 0x176E, if not !stack[-3] // Inputs[2] // { // @1770 stack[-3] // @1771 stack[-4] // } 176F 50 POP 1770 81 DUP2 1771 83 DUP4 1772 10 LT 1773 5B JUMPDEST 1774 15 ISZERO 1775 61 PUSH2 0x17da 1778 57 *JUMPI // Stack delta = -1 // Block ends with conditional jump to 0x17da, if !(stack[-4] < stack[-3]) label_1779: // Incoming jump from 0x1778, if not !(stack[-4] < stack[-3]) // Incoming jump from 0x1778, if not !stack[-1] // Inputs[1] { @177B memory[0x40:0x60] } 1779 60 PUSH1 0x40 177B 51 MLOAD 177C 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 179D 81 DUP2 179E 52 MSTORE 179F 60 PUSH1 0x20 17A1 60 PUSH1 0x04 17A3 82 DUP3 17A4 01 ADD 17A5 52 MSTORE 17A6 60 PUSH1 0x1b 17A8 60 PUSH1 0x24 17AA 82 DUP3 17AB 01 ADD 17AC 52 MSTORE 17AD 7F PUSH32 0x496e73756666696369656e74206f757470757420616d6f756e742e0000000000 17CE 60 PUSH1 0x44 17D0 82 DUP3 17D1 01 ADD 17D2 52 MSTORE 17D3 60 PUSH1 0x64 17D5 01 ADD 17D6 61 PUSH2 0x16cc 17D9 56 *JUMP // Stack delta = +1 // Outputs[5] // { // @179E memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @17A5 memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = 0x20 // @17AC memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0x1b // @17D2 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = 0x496e73756666696369656e74206f757470757420616d6f756e742e0000000000 // @17D5 stack[0] = 0x64 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x16cc label_17DA: // Incoming jump from 0x1778, if !stack[-1] // Incoming jump from 0x1778, if !(stack[-4] < stack[-3]) // Incoming jump from 0x558F, if !(stack[-1] > stack[-4]) // Inputs[1] { @17DF stack[-5] } 17DA 5B JUMPDEST 17DB 50 POP 17DC 50 POP 17DD 50 POP 17DE 50 POP 17DF 56 *JUMP // Stack delta = -5 // Block ends with unconditional jump to stack[-5] 17E0 5B JUMPDEST 17E1 60 PUSH1 0x20 17E3 82 DUP3 17E4 01 ADD 17E5 51 MLOAD 17E6 82 DUP3 17E7 51 MLOAD 17E8 60 PUSH1 0x00 17EA 91 SWAP2 17EB 82 DUP3 17EC 91 SWAP2 17ED 61 PUSH2 0x18d7 17F0 57 *JUMPI 17F1 60 PUSH1 0x00 17F3 85 DUP6 17F4 60 PUSH1 0x60 17F6 01 ADD 17F7 51 MLOAD 17F8 80 DUP1 17F9 60 PUSH1 0x20 17FB 01 ADD 17FC 90 SWAP1 17FD 51 MLOAD 17FE 81 DUP2 17FF 01 ADD 1800 90 SWAP1 1801 61 PUSH2 0x180a 1804 91 SWAP2 1805 90 SWAP1 1806 61 PUSH2 0x46e1 1809 56 *JUMP 180A 5B JUMPDEST 180B 90 SWAP1 180C 50 POP 180D 60 PUSH1 0x00 180F 80 DUP1 1810 82 DUP3 1811 60 PUSH1 0x00 1813 01 ADD 1814 51 MLOAD 1815 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 182A 16 AND 182B 83 DUP4 182C 60 PUSH1 0x20 182E 01 ADD 182F 51 MLOAD 1830 60 PUSH1 0x40 1832 51 MLOAD 1833 61 PUSH2 0x183c 1836 91 SWAP2 1837 90 SWAP1 1838 61 PUSH2 0x4b1f 183B 56 *JUMP 183C 5B JUMPDEST 183D 60 PUSH1 0x00 183F 60 PUSH1 0x40 1841 51 MLOAD 1842 80 DUP1 1843 83 DUP4 1844 03 SUB 1845 81 DUP2 1846 60 PUSH1 0x00 1848 86 DUP7 1849 5A GAS 184A F1 CALL 184B 91 SWAP2 184C 50 POP 184D 50 POP 184E 3D RETURNDATASIZE 184F 80 DUP1 1850 60 PUSH1 0x00 1852 81 DUP2 1853 14 EQ 1854 61 PUSH2 0x1879 1857 57 *JUMPI 1858 60 PUSH1 0x40 185A 51 MLOAD 185B 91 SWAP2 185C 50 POP 185D 60 PUSH1 0x1f 185F 19 NOT 1860 60 PUSH1 0x3f 1862 3D RETURNDATASIZE 1863 01 ADD 1864 16 AND 1865 82 DUP3 1866 01 ADD 1867 60 PUSH1 0x40 1869 52 MSTORE 186A 3D RETURNDATASIZE 186B 82 DUP3 186C 52 MSTORE 186D 3D RETURNDATASIZE 186E 60 PUSH1 0x00 1870 60 PUSH1 0x20 1872 84 DUP5 1873 01 ADD 1874 3E RETURNDATACOPY 1875 61 PUSH2 0x187e 1878 56 *JUMP 1879 5B JUMPDEST 187A 60 PUSH1 0x60 187C 91 SWAP2 187D 50 POP 187E 5B JUMPDEST 187F 50 POP 1880 91 SWAP2 1881 50 POP 1882 91 SWAP2 1883 50 POP 1884 81 DUP2 1885 61 PUSH2 0x1895 1888 57 *JUMPI 1889 60 PUSH1 0x40 188B 51 MLOAD 188C 3D RETURNDATASIZE 188D 80 DUP1 188E 60 PUSH1 0x00 1890 83 DUP4 1891 3E RETURNDATACOPY 1892 80 DUP1 1893 82 DUP3 1894 FD *REVERT 1895 5B JUMPDEST 1896 61 PUSH2 0x18be 1899 81 DUP2 189A 84 DUP5 189B 60 PUSH1 0x40 189D 01 ADD 189E 51 MLOAD 189F 60 PUSH1 0x00 18A1 81 DUP2 18A2 51 MLOAD 18A3 81 DUP2 18A4 10 LT 18A5 61 PUSH2 0x1642 18A8 57 *JUMPI 18A9 63 PUSH4 0x4e487b71 18AE 60 PUSH1 0xe0 18B0 1B SHL 18B1 60 PUSH1 0x00 18B3 52 MSTORE 18B4 60 PUSH1 0x32 18B6 60 PUSH1 0x04 18B8 52 MSTORE 18B9 60 PUSH1 0x24 18BB 60 PUSH1 0x00 18BD FD *REVERT 18BE 5B JUMPDEST 18BF 80 DUP1 18C0 60 PUSH1 0x20 18C2 01 ADD 18C3 90 SWAP1 18C4 51 MLOAD 18C5 81 DUP2 18C6 01 ADD 18C7 90 SWAP1 18C8 61 PUSH2 0x18d1 18CB 91 SWAP2 18CC 90 SWAP1 18CD 61 PUSH2 0x47e3 18D0 56 *JUMP 18D1 5B JUMPDEST 18D2 93 SWAP4 18D3 50 POP 18D4 50 POP 18D5 50 POP 18D6 50 POP 18D7 5B JUMPDEST 18D8 60 PUSH1 0x01 18DA 85 DUP6 18DB 60 PUSH1 0x40 18DD 01 ADD 18DE 51 MLOAD 18DF 60 PUSH1 0x0a 18E1 61 PUSH2 0x18ea 18E4 91 SWAP2 18E5 90 SWAP1 18E6 61 PUSH2 0x5413 18E9 56 *JUMP 18EA 5B JUMPDEST 18EB 61 PUSH2 0x18f4 18EE 83 DUP4 18EF 87 DUP8 18F0 61 PUSH2 0x54ff 18F3 56 *JUMP 18F4 5B JUMPDEST 18F5 61 PUSH2 0x18fe 18F8 91 SWAP2 18F9 90 SWAP1 18FA 61 PUSH2 0x53ad 18FD 56 *JUMP 18FE 5B JUMPDEST 18FF 92 SWAP3 1900 50 POP 1901 92 SWAP3 1902 50 POP 1903 50 POP label_1904: // Incoming jump from 0x31C0, if !(stack[-3] + stack[-1] * 0x20 + 0x20 > stack[-4]) // Incoming jump from 0x3361, if !(stack[-3] + stack[-1] + 0x20 > stack[-4]) // Inputs[5] // { // @1905 stack[-1] // @1905 stack[-4] // @1907 stack[-5] // @1907 stack[-2] // @1908 stack[-3] // } 1904 5B JUMPDEST 1905 92 SWAP3 1906 50 POP 1907 92 SWAP3 1908 90 SWAP1 1909 50 POP 190A 56 *JUMP // Stack delta = -3 // Outputs[2] // { // @1905 stack[-4] = stack[-1] // @1907 stack[-5] = stack[-2] // } // Block ends with unconditional jump to stack[-5] 190B 5B JUMPDEST 190C 60 PUSH1 0x00 190E 80 DUP1 190F 60 PUSH1 0x00 1911 80 DUP1 1912 60 PUSH1 0x60 1914 60 PUSH1 0x00 1916 87 DUP8 1917 60 PUSH1 0x20 1919 01 ADD 191A 51 MLOAD 191B 90 SWAP1 191C 50 POP 191D 60 PUSH1 0x00 191F 5B JUMPDEST 1920 88 DUP9 1921 51 MLOAD 1922 51 MLOAD 1923 81 DUP2 1924 10 LT 1925 15 ISZERO 1926 61 PUSH2 0x1a44 1929 57 *JUMPI 192A 60 PUSH1 0x00 192C 89 DUP10 192D 60 PUSH1 0x00 192F 01 ADD 1930 51 MLOAD 1931 82 DUP3 1932 81 DUP2 1933 51 MLOAD 1934 81 DUP2 1935 10 LT 1936 61 PUSH2 0x194f 1939 57 *JUMPI 193A 63 PUSH4 0x4e487b71 193F 60 PUSH1 0xe0 1941 1B SHL 1942 60 PUSH1 0x00 1944 52 MSTORE 1945 60 PUSH1 0x32 1947 60 PUSH1 0x04 1949 52 MSTORE 194A 60 PUSH1 0x24 194C 60 PUSH1 0x00 194E FD *REVERT 194F 5B JUMPDEST 1950 60 PUSH1 0x20 1952 02 MUL 1953 60 PUSH1 0x20 1955 01 ADD 1956 01 ADD 1957 51 MLOAD 1958 90 SWAP1 1959 50 POP 195A 80 DUP1 195B 60 PUSH1 0x00 195D 01 ADD 195E 51 MLOAD 195F 60 PUSH1 0x00 1961 01 ADD 1962 51 MLOAD 1963 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1978 16 AND 1979 81 DUP2 197A 60 PUSH1 0x00 197C 01 ADD 197D 51 MLOAD 197E 60 PUSH1 0x20 1980 01 ADD 1981 51 MLOAD 1982 60 PUSH1 0x40 1984 51 MLOAD 1985 61 PUSH2 0x198e 1988 91 SWAP2 1989 90 SWAP1 198A 61 PUSH2 0x4b1f 198D 56 *JUMP 198E 5B JUMPDEST 198F 60 PUSH1 0x00 1991 60 PUSH1 0x40 1993 51 MLOAD 1994 80 DUP1 1995 83 DUP4 1996 03 SUB 1997 81 DUP2 1998 60 PUSH1 0x00 199A 86 DUP7 199B 5A GAS 199C F1 CALL 199D 91 SWAP2 199E 50 POP 199F 50 POP 19A0 3D RETURNDATASIZE 19A1 80 DUP1 19A2 60 PUSH1 0x00 19A4 81 DUP2 19A5 14 EQ 19A6 61 PUSH2 0x19cb 19A9 57 *JUMPI 19AA 60 PUSH1 0x40 19AC 51 MLOAD 19AD 91 SWAP2 19AE 50 POP 19AF 60 PUSH1 0x1f 19B1 19 NOT 19B2 60 PUSH1 0x3f 19B4 3D RETURNDATASIZE 19B5 01 ADD 19B6 16 AND 19B7 82 DUP3 19B8 01 ADD 19B9 60 PUSH1 0x40 19BB 52 MSTORE 19BC 3D RETURNDATASIZE 19BD 82 DUP3 19BE 52 MSTORE 19BF 3D RETURNDATASIZE 19C0 60 PUSH1 0x00 19C2 60 PUSH1 0x20 19C4 84 DUP5 19C5 01 ADD 19C6 3E RETURNDATACOPY 19C7 61 PUSH2 0x19d0 19CA 56 *JUMP 19CB 5B JUMPDEST 19CC 60 PUSH1 0x60 19CE 91 SWAP2 19CF 50 POP 19D0 5B JUMPDEST 19D1 50 POP 19D2 90 SWAP1 19D3 95 SWAP6 19D4 50 POP 19D5 93 SWAP4 19D6 50 POP 19D7 84 DUP5 19D8 61 PUSH2 0x19e8 19DB 57 *JUMPI 19DC 60 PUSH1 0x40 19DE 51 MLOAD 19DF 3D RETURNDATASIZE 19E0 80 DUP1 19E1 60 PUSH1 0x00 19E3 83 DUP4 19E4 3E RETURNDATACOPY 19E5 80 DUP1 19E6 82 DUP3 19E7 FD *REVERT 19E8 5B JUMPDEST 19E9 61 PUSH2 0x1a31 19EC 61 PUSH2 0x1a18 19EF 85 DUP6 19F0 83 DUP4 19F1 60 PUSH1 0x00 19F3 01 ADD 19F4 51 MLOAD 19F5 60 PUSH1 0x40 19F7 01 ADD 19F8 51 MLOAD 19F9 60 PUSH1 0x00 19FB 81 DUP2 19FC 51 MLOAD 19FD 81 DUP2 19FE 10 LT 19FF 61 PUSH2 0x1642 1A02 57 *JUMPI 1A03 63 PUSH4 0x4e487b71 1A08 60 PUSH1 0xe0 1A0A 1B SHL 1A0B 60 PUSH1 0x00 1A0D 52 MSTORE 1A0E 60 PUSH1 0x32 1A10 60 PUSH1 0x04 1A12 52 MSTORE 1A13 60 PUSH1 0x24 1A15 60 PUSH1 0x00 1A17 FD *REVERT 1A18 5B JUMPDEST 1A19 84 DUP5 1A1A 60 PUSH1 0x20 1A1C 01 ADD 1A1D 51 MLOAD 1A1E 83 DUP4 1A1F 60 PUSH1 0x20 1A21 01 ADD 1A22 51 MLOAD 1A23 60 PUSH1 0x20 1A25 92 SWAP3 1A26 83 DUP4 1A27 01 ADD 1A28 51 MLOAD 1A29 92 SWAP3 1A2A 02 MUL 1A2B 01 ADD 1A2C 60 PUSH1 0x04 1A2E 01 ADD 1A2F 52 MSTORE 1A30 56 *JUMP 1A31 5B JUMPDEST 1A32 50 POP 1A33 80 DUP1 1A34 61 PUSH2 0x1a3c 1A37 81 DUP2 1A38 61 PUSH2 0x5598 1A3B 56 *JUMP 1A3C 5B JUMPDEST 1A3D 91 SWAP2 1A3E 50 POP 1A3F 50 POP 1A40 61 PUSH2 0x191f 1A43 56 *JUMP 1A44 5B JUMPDEST 1A45 50 POP 1A46 60 PUSH1 0x00 1A48 88 DUP9 1A49 60 PUSH1 0x20 1A4B 01 ADD 1A4C 51 MLOAD 1A4D 60 PUSH1 0x40 1A4F 01 ADD 1A50 51 MLOAD 1A51 60 PUSH1 0x00 1A53 81 DUP2 1A54 51 MLOAD 1A55 81 DUP2 1A56 10 LT 1A57 61 PUSH2 0x1a70 1A5A 57 *JUMPI 1A5B 63 PUSH4 0x4e487b71 1A60 60 PUSH1 0xe0 1A62 1B SHL 1A63 60 PUSH1 0x00 1A65 52 MSTORE 1A66 60 PUSH1 0x32 1A68 60 PUSH1 0x04 1A6A 52 MSTORE 1A6B 60 PUSH1 0x24 1A6D 60 PUSH1 0x00 1A6F FD *REVERT 1A70 5B JUMPDEST 1A71 60 PUSH1 0x20 1A73 02 MUL 1A74 60 PUSH1 0x20 1A76 01 ADD 1A77 01 ADD 1A78 51 MLOAD 1A79 60 PUSH1 0x20 1A7B 01 ADD 1A7C 51 MLOAD 1A7D 60 PUSH1 0x01 1A7F 14 EQ 1A80 15 ISZERO 1A81 61 PUSH2 0x1ae1 1A84 57 *JUMPI 1A85 61 PUSH2 0x1ad3 1A88 88 DUP9 1A89 60 PUSH1 0x40 1A8B 51 MLOAD 1A8C 60 PUSH1 0x20 1A8E 01 ADD 1A8F 61 PUSH2 0x1a9a 1A92 91 SWAP2 1A93 81 DUP2 1A94 52 MSTORE 1A95 60 PUSH1 0x20 1A97 01 ADD 1A98 90 SWAP1 1A99 56 *JUMP 1A9A 5B JUMPDEST 1A9B 60 PUSH1 0x40 1A9D 51 MLOAD 1A9E 60 PUSH1 0x20 1AA0 81 DUP2 1AA1 83 DUP4 1AA2 03 SUB 1AA3 03 SUB 1AA4 81 DUP2 1AA5 52 MSTORE 1AA6 90 SWAP1 1AA7 60 PUSH1 0x40 1AA9 52 MSTORE 1AAA 83 DUP4 1AAB 60 PUSH1 0x20 1AAD 01 ADD 1AAE 51 MLOAD 1AAF 84 DUP5 1AB0 60 PUSH1 0x40 1AB2 01 ADD 1AB3 51 MLOAD 1AB4 60 PUSH1 0x00 1AB6 81 DUP2 1AB7 51 MLOAD 1AB8 81 DUP2 1AB9 10 LT 1ABA 61 PUSH2 0x1536 1ABD 57 *JUMPI 1ABE 63 PUSH4 0x4e487b71 1AC3 60 PUSH1 0xe0 1AC5 1B SHL 1AC6 60 PUSH1 0x00 1AC8 52 MSTORE 1AC9 60 PUSH1 0x32 1ACB 60 PUSH1 0x04 1ACD 52 MSTORE 1ACE 60 PUSH1 0x24 1AD0 60 PUSH1 0x00 1AD2 FD *REVERT 1AD3 5B JUMPDEST 1AD4 61 PUSH2 0x1ade 1AD7 60 PUSH1 0x01 1AD9 82 DUP3 1ADA 61 PUSH2 0x5395 1ADD 56 *JUMP 1ADE 5B JUMPDEST 1ADF 90 SWAP1 1AE0 50 POP 1AE1 5B JUMPDEST 1AE2 81 DUP2 1AE3 60 PUSH1 0x00 1AE5 01 ADD 1AE6 51 MLOAD 1AE7 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1AFC 16 AND 1AFD 82 DUP3 1AFE 60 PUSH1 0x20 1B00 01 ADD 1B01 51 MLOAD 1B02 60 PUSH1 0x40 1B04 51 MLOAD 1B05 61 PUSH2 0x1b0e 1B08 91 SWAP2 1B09 90 SWAP1 1B0A 61 PUSH2 0x4b1f 1B0D 56 *JUMP 1B0E 5B JUMPDEST 1B0F 60 PUSH1 0x00 1B11 60 PUSH1 0x40 1B13 51 MLOAD 1B14 80 DUP1 1B15 83 DUP4 1B16 03 SUB 1B17 81 DUP2 1B18 60 PUSH1 0x00 1B1A 86 DUP7 1B1B 5A GAS 1B1C F1 CALL 1B1D 91 SWAP2 1B1E 50 POP 1B1F 50 POP 1B20 3D RETURNDATASIZE 1B21 80 DUP1 1B22 60 PUSH1 0x00 1B24 81 DUP2 1B25 14 EQ 1B26 61 PUSH2 0x1b4b 1B29 57 *JUMPI 1B2A 60 PUSH1 0x40 1B2C 51 MLOAD 1B2D 91 SWAP2 1B2E 50 POP 1B2F 60 PUSH1 0x1f 1B31 19 NOT 1B32 60 PUSH1 0x3f 1B34 3D RETURNDATASIZE 1B35 01 ADD 1B36 16 AND 1B37 82 DUP3 1B38 01 ADD 1B39 60 PUSH1 0x40 1B3B 52 MSTORE 1B3C 3D RETURNDATASIZE 1B3D 82 DUP3 1B3E 52 MSTORE 1B3F 3D RETURNDATASIZE 1B40 60 PUSH1 0x00 1B42 60 PUSH1 0x20 1B44 84 DUP5 1B45 01 ADD 1B46 3E RETURNDATACOPY 1B47 61 PUSH2 0x1b50 1B4A 56 *JUMP 1B4B 5B JUMPDEST 1B4C 60 PUSH1 0x60 1B4E 91 SWAP2 1B4F 50 POP 1B50 5B JUMPDEST 1B51 50 POP 1B52 90 SWAP1 1B53 94 SWAP5 1B54 50 POP 1B55 92 SWAP3 1B56 50 POP 1B57 83 DUP4 1B58 61 PUSH2 0x1b68 1B5B 57 *JUMPI 1B5C 60 PUSH1 0x40 1B5E 51 MLOAD 1B5F 3D RETURNDATASIZE 1B60 80 DUP1 1B61 60 PUSH1 0x00 1B63 83 DUP4 1B64 3E RETURNDATACOPY 1B65 80 DUP1 1B66 82 DUP3 1B67 FD *REVERT 1B68 5B JUMPDEST 1B69 60 PUSH1 0x00 1B6B 82 DUP3 1B6C 60 PUSH1 0x40 1B6E 01 ADD 1B6F 51 MLOAD 1B70 82 DUP3 1B71 81 DUP2 1B72 51 MLOAD 1B73 81 DUP2 1B74 10 LT 1B75 61 PUSH2 0x1b8e 1B78 57 *JUMPI 1B79 63 PUSH4 0x4e487b71 1B7E 60 PUSH1 0xe0 1B80 1B SHL 1B81 60 PUSH1 0x00 1B83 52 MSTORE 1B84 60 PUSH1 0x32 1B86 60 PUSH1 0x04 1B88 52 MSTORE 1B89 60 PUSH1 0x24 1B8B 60 PUSH1 0x00 1B8D FD *REVERT 1B8E 5B JUMPDEST 1B8F 60 PUSH1 0x20 1B91 02 MUL 1B92 60 PUSH1 0x20 1B94 01 ADD 1B95 01 ADD 1B96 51 MLOAD 1B97 90 SWAP1 1B98 50 POP 1B99 80 DUP1 1B9A 60 PUSH1 0x20 1B9C 01 ADD 1B9D 51 MLOAD 1B9E 60 PUSH1 0x02 1BA0 14 EQ 1BA1 15 ISZERO 1BA2 61 PUSH2 0x1bcd 1BA5 57 *JUMPI 1BA6 61 PUSH2 0x1bb3 1BA9 84 DUP5 1BAA 82 DUP3 1BAB 60 PUSH1 0x00 1BAD 01 ADD 1BAE 51 MLOAD 1BAF 61 PUSH2 0x294e 1BB2 56 *JUMP 1BB3 5B JUMPDEST 1BB4 80 DUP1 1BB5 60 PUSH1 0x20 1BB7 01 ADD 1BB8 90 SWAP1 1BB9 51 MLOAD 1BBA 81 DUP2 1BBB 01 ADD 1BBC 90 SWAP1 1BBD 61 PUSH2 0x1bc6 1BC0 91 SWAP2 1BC1 90 SWAP1 1BC2 61 PUSH2 0x47e3 1BC5 56 *JUMP 1BC6 5B JUMPDEST 1BC7 96 SWAP7 1BC8 50 POP 1BC9 61 PUSH2 0x1bfe 1BCC 56 *JUMP 1BCD 5B JUMPDEST 1BCE 80 DUP1 1BCF 60 PUSH1 0x20 1BD1 01 ADD 1BD2 51 MLOAD 1BD3 60 PUSH1 0x04 1BD5 14 EQ 1BD6 15 ISZERO 1BD7 61 PUSH2 0x1bfe 1BDA 57 *JUMPI 1BDB 61 PUSH2 0x1be8 1BDE 84 DUP5 1BDF 82 DUP3 1BE0 60 PUSH1 0x00 1BE2 01 ADD 1BE3 51 MLOAD 1BE4 61 PUSH2 0x294e 1BE7 56 *JUMP 1BE8 5B JUMPDEST 1BE9 80 DUP1 1BEA 60 PUSH1 0x20 1BEC 01 ADD 1BED 90 SWAP1 1BEE 51 MLOAD 1BEF 81 DUP2 1BF0 01 ADD 1BF1 90 SWAP1 1BF2 61 PUSH2 0x1bfb 1BF5 91 SWAP2 1BF6 90 SWAP1 1BF7 61 PUSH2 0x47e3 1BFA 56 *JUMP 1BFB 5B JUMPDEST 1BFC 95 SWAP6 1BFD 50 POP 1BFE 5B JUMPDEST 1BFF 60 PUSH1 0x01 1C01 97 SWAP8 1C02 50 POP 1C03 50 POP 1C04 50 POP 1C05 50 POP 1C06 50 POP 1C07 50 POP 1C08 92 SWAP3 1C09 50 POP 1C0A 92 SWAP3 1C0B 50 POP 1C0C 92 SWAP3 1C0D 56 *JUMP 1C0E 5B JUMPDEST 1C0F 60 PUSH1 0x00 1C11 80 DUP1 1C12 5B JUMPDEST 1C13 83 DUP4 1C14 51 MLOAD 1C15 51 MLOAD 1C16 81 DUP2 1C17 10 LT 1C18 15 ISZERO 1C19 61 PUSH2 0x1de6 1C1C 57 *JUMPI 1C1D 60 PUSH1 0x00 1C1F 84 DUP5 1C20 60 PUSH1 0x00 1C22 01 ADD 1C23 51 MLOAD 1C24 82 DUP3 1C25 81 DUP2 1C26 51 MLOAD 1C27 81 DUP2 1C28 10 LT 1C29 61 PUSH2 0x1c42 1C2C 57 *JUMPI 1C2D 63 PUSH4 0x4e487b71 1C32 60 PUSH1 0xe0 1C34 1B SHL 1C35 60 PUSH1 0x00 1C37 52 MSTORE 1C38 60 PUSH1 0x32 1C3A 60 PUSH1 0x04 1C3C 52 MSTORE 1C3D 60 PUSH1 0x24 1C3F 60 PUSH1 0x00 1C41 FD *REVERT 1C42 5B JUMPDEST 1C43 60 PUSH1 0x20 1C45 02 MUL 1C46 60 PUSH1 0x20 1C48 01 ADD 1C49 01 ADD 1C4A 51 MLOAD 1C4B 90 SWAP1 1C4C 50 POP 1C4D 60 PUSH1 0x00 1C4F 85 DUP6 1C50 60 PUSH1 0x20 1C52 01 ADD 1C53 51 MLOAD 1C54 83 DUP4 1C55 81 DUP2 1C56 51 MLOAD 1C57 81 DUP2 1C58 10 LT 1C59 61 PUSH2 0x1c72 1C5C 57 *JUMPI 1C5D 63 PUSH4 0x4e487b71 1C62 60 PUSH1 0xe0 1C64 1B SHL 1C65 60 PUSH1 0x00 1C67 52 MSTORE 1C68 60 PUSH1 0x32 1C6A 60 PUSH1 0x04 1C6C 52 MSTORE 1C6D 60 PUSH1 0x24 1C6F 60 PUSH1 0x00 1C71 FD *REVERT 1C72 5B JUMPDEST 1C73 60 PUSH1 0x20 1C75 02 MUL 1C76 60 PUSH1 0x20 1C78 01 ADD 1C79 01 ADD 1C7A 51 MLOAD 1C7B 90 SWAP1 1C7C 50 POP 1C7D 60 PUSH1 0x00 1C7F 80 DUP1 1C80 61 PUSH2 0x1c89 1C83 84 DUP5 1C84 88 DUP9 1C85 61 PUSH2 0x190b 1C88 56 *JUMP 1C89 5B JUMPDEST 1C8A 50 POP 1C8B 91 SWAP2 1C8C 50 POP 1C8D 91 SWAP2 1C8E 50 POP 1C8F 81 DUP2 1C90 61 PUSH2 0x1ca1 1C93 57 *JUMPI 1C94 60 PUSH1 0x00 1C96 95 SWAP6 1C97 50 POP 1C98 50 POP 1C99 50 POP 1C9A 50 POP 1C9B 50 POP 1C9C 50 POP 1C9D 61 PUSH2 0x1dec 1CA0 56 *JUMP 1CA1 5B JUMPDEST 1CA2 82 DUP3 1CA3 51 MLOAD 1CA4 60 PUSH1 0x00 1CA6 90 SWAP1 1CA7 15 ISZERO 1CA8 61 PUSH2 0x1cb6 1CAB 57 *JUMPI 1CAC 50 POP 1CAD 60 PUSH1 0x20 1CAF 83 DUP4 1CB0 01 ADD 1CB1 51 MLOAD 1CB2 61 PUSH2 0x1d0d 1CB5 56 *JUMP 1CB6 5B JUMPDEST 1CB7 83 DUP4 1CB8 60 PUSH1 0x40 1CBA 01 ADD 1CBB 51 MLOAD 1CBC 60 PUSH1 0x01 1CBE 14 EQ 1CBF 15 ISZERO 1CC0 61 PUSH2 0x1cca 1CC3 57 *JUMPI 1CC4 50 POP 1CC5 86 DUP7 1CC6 61 PUSH2 0x1d0d 1CC9 56 *JUMP 1CCA 5B JUMPDEST 1CCB 60 PUSH1 0x00 1CCD 80 DUP1 1CCE 61 PUSH2 0x1cee 1CD1 86 DUP7 1CD2 60 PUSH1 0x60 1CD4 01 ADD 1CD5 51 MLOAD 1CD6 80 DUP1 1CD7 60 PUSH1 0x20 1CD9 01 ADD 1CDA 90 SWAP1 1CDB 51 MLOAD 1CDC 81 DUP2 1CDD 01 ADD 1CDE 90 SWAP1 1CDF 61 PUSH2 0x1ce8 1CE2 91 SWAP2 1CE3 90 SWAP1 1CE4 61 PUSH2 0x467b 1CE7 56 *JUMP 1CE8 5B JUMPDEST 1CE9 8B DUP12 1CEA 61 PUSH2 0x190b 1CED 56 *JUMP 1CEE 5B JUMPDEST 1CEF 50 POP 1CF0 91 SWAP2 1CF1 50 POP 1CF2 91 SWAP2 1CF3 50 POP 1CF4 81 DUP2 1CF5 61 PUSH2 0x1d09 1CF8 57 *JUMPI 1CF9 60 PUSH1 0x00 1CFB 98 SWAP9 1CFC 50 POP 1CFD 50 POP 1CFE 50 POP 1CFF 50 POP 1D00 50 POP 1D01 50 POP 1D02 50 POP 1D03 50 POP 1D04 50 POP 1D05 61 PUSH2 0x1dec 1D08 56 *JUMP 1D09 5B JUMPDEST 1D0A 91 SWAP2 1D0B 50 POP 1D0C 50 POP 1D0D 5B JUMPDEST 1D0E 60 PUSH1 0x00 1D10 80 DUP1 1D11 5B JUMPDEST 1D12 85 DUP6 1D13 60 PUSH1 0x80 1D15 01 ADD 1D16 51 MLOAD 1D17 51 MLOAD 1D18 81 DUP2 1D19 10 LT 1D1A 15 ISZERO 1D1B 61 PUSH2 0x1db7 1D1E 57 *JUMPI 1D1F 60 PUSH1 0x00 1D21 86 DUP7 1D22 60 PUSH1 0x80 1D24 01 ADD 1D25 51 MLOAD 1D26 82 DUP3 1D27 81 DUP2 1D28 51 MLOAD 1D29 81 DUP2 1D2A 10 LT 1D2B 61 PUSH2 0x1d44 1D2E 57 *JUMPI 1D2F 63 PUSH4 0x4e487b71 1D34 60 PUSH1 0xe0 1D36 1B SHL 1D37 60 PUSH1 0x00 1D39 52 MSTORE 1D3A 60 PUSH1 0x32 1D3C 60 PUSH1 0x04 1D3E 52 MSTORE 1D3F 60 PUSH1 0x24 1D41 60 PUSH1 0x00 1D43 FD *REVERT 1D44 5B JUMPDEST 1D45 60 PUSH1 0x20 1D47 02 MUL 1D48 60 PUSH1 0x20 1D4A 01 ADD 1D4B 01 ADD 1D4C 51 MLOAD 1D4D 90 SWAP1 1D4E 50 POP 1D4F 80 DUP1 1D50 60 PUSH1 0x01 1D52 14 EQ 1D53 15 ISZERO 1D54 61 PUSH2 0x1d6e 1D57 57 *JUMPI 1D58 83 DUP4 1D59 85 DUP6 1D5A 11 GT 1D5B 15 ISZERO 1D5C 61 PUSH2 0x1d69 1D5F 57 *JUMPI 1D60 60 PUSH1 0x01 1D62 92 SWAP3 1D63 50 POP 1D64 50 POP 1D65 61 PUSH2 0x1db7 1D68 56 *JUMP 1D69 5B JUMPDEST 1D6A 61 PUSH2 0x1da4 1D6D 56 *JUMP 1D6E 5B JUMPDEST 1D6F 80 DUP1 1D70 60 PUSH1 0x02 1D72 14 EQ 1D73 15 ISZERO 1D74 61 PUSH2 0x1d89 1D77 57 *JUMPI 1D78 83 DUP4 1D79 85 DUP6 1D7A 10 LT 1D7B 15 ISZERO 1D7C 61 PUSH2 0x1d69 1D7F 57 *JUMPI 1D80 60 PUSH1 0x01 1D82 92 SWAP3 1D83 50 POP 1D84 50 POP 1D85 61 PUSH2 0x1db7 1D88 56 *JUMP 1D89 5B JUMPDEST 1D8A 80 DUP1 1D8B 60 PUSH1 0x03 1D8D 14 EQ 1D8E 15 ISZERO 1D8F 61 PUSH2 0x1da4 1D92 57 *JUMPI 1D93 83 DUP4 1D94 85 DUP6 1D95 14 EQ 1D96 15 ISZERO 1D97 61 PUSH2 0x1da4 1D9A 57 *JUMPI 1D9B 60 PUSH1 0x01 1D9D 92 SWAP3 1D9E 50 POP 1D9F 50 POP 1DA0 61 PUSH2 0x1db7 1DA3 56 *JUMP 1DA4 5B JUMPDEST 1DA5 50 POP 1DA6 80 DUP1 1DA7 61 PUSH2 0x1daf 1DAA 81 DUP2 1DAB 61 PUSH2 0x5598 1DAE 56 *JUMP 1DAF 5B JUMPDEST 1DB0 91 SWAP2 1DB1 50 POP 1DB2 50 POP 1DB3 61 PUSH2 0x1d11 1DB6 56 *JUMP 1DB7 5B JUMPDEST 1DB8 50 POP 1DB9 80 DUP1 1DBA 61 PUSH2 0x1dcd 1DBD 57 *JUMPI 1DBE 60 PUSH1 0x00 1DC0 97 SWAP8 1DC1 50 POP 1DC2 50 POP 1DC3 50 POP 1DC4 50 POP 1DC5 50 POP 1DC6 50 POP 1DC7 50 POP 1DC8 50 POP 1DC9 61 PUSH2 0x1dec 1DCC 56 *JUMP 1DCD 5B JUMPDEST 1DCE 50 POP 1DCF 50 POP 1DD0 50 POP 1DD1 50 POP 1DD2 50 POP 1DD3 50 POP 1DD4 80 DUP1 1DD5 80 DUP1 1DD6 61 PUSH2 0x1dde 1DD9 90 SWAP1 1DDA 61 PUSH2 0x5598 1DDD 56 *JUMP 1DDE 5B JUMPDEST 1DDF 91 SWAP2 1DE0 50 POP 1DE1 50 POP 1DE2 61 PUSH2 0x1c12 1DE5 56 *JUMP 1DE6 5B JUMPDEST 1DE7 50 POP 1DE8 60 PUSH1 0x01 1DEA 90 SWAP1 1DEB 50 POP 1DEC 5B JUMPDEST 1DED 92 SWAP3 1DEE 91 SWAP2 1DEF 50 POP 1DF0 50 POP 1DF1 56 *JUMP 1DF2 5B JUMPDEST 1DF3 60 PUSH1 0x20 1DF5 83 DUP4 1DF6 01 ADD 1DF7 51 MLOAD 1DF8 60 PUSH1 0x40 1DFA 51 MLOAD 1DFB 7F PUSH32 0x12038e5d00000000000000000000000000000000000000000000000000000000 1E1C 81 DUP2 1E1D 52 MSTORE 1E1E 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1E33 90 SWAP1 1E34 91 SWAP2 1E35 16 AND 1E36 60 PUSH1 0x04 1E38 82 DUP3 1E39 01 ADD 1E3A 52 MSTORE 1E3B 30 ADDRESS 1E3C 90 SWAP1 1E3D 63 PUSH4 0x12038e5d 1E42 90 SWAP1 1E43 60 PUSH1 0x24 1E45 01 ADD 1E46 60 PUSH1 0x00 1E48 60 PUSH1 0x40 1E4A 51 MLOAD 1E4B 80 DUP1 1E4C 83 DUP4 1E4D 03 SUB 1E4E 81 DUP2 1E4F 60 PUSH1 0x00 1E51 87 DUP8 1E52 80 DUP1 1E53 3B EXTCODESIZE 1E54 15 ISZERO 1E55 80 DUP1 1E56 15 ISZERO 1E57 61 PUSH2 0x1e5f 1E5A 57 *JUMPI 1E5B 60 PUSH1 0x00 1E5D 80 DUP1 1E5E FD *REVERT 1E5F 5B JUMPDEST 1E60 50 POP 1E61 5A GAS 1E62 F1 CALL 1E63 15 ISZERO 1E64 80 DUP1 1E65 15 ISZERO 1E66 61 PUSH2 0x1e73 1E69 57 *JUMPI 1E6A 3D RETURNDATASIZE 1E6B 60 PUSH1 0x00 1E6D 80 DUP1 1E6E 3E RETURNDATACOPY 1E6F 3D RETURNDATASIZE 1E70 60 PUSH1 0x00 1E72 FD *REVERT 1E73 5B JUMPDEST 1E74 50 POP 1E75 50 POP 1E76 50 POP 1E77 50 POP 1E78 60 PUSH1 0x00 1E7A 83 DUP4 1E7B 83 DUP4 1E7C 60 PUSH1 0x40 1E7E 51 MLOAD 1E7F 60 PUSH1 0x20 1E81 01 ADD 1E82 61 PUSH2 0x1e8c 1E85 92 SWAP3 1E86 91 SWAP2 1E87 90 SWAP1 1E88 61 PUSH2 0x505b 1E8B 56 *JUMP 1E8C 5B JUMPDEST 1E8D 60 PUSH1 0x40 1E8F 51 MLOAD 1E90 60 PUSH1 0x20 1E92 81 DUP2 1E93 83 DUP4 1E94 03 SUB 1E95 03 SUB 1E96 81 DUP2 1E97 52 MSTORE 1E98 90 SWAP1 1E99 60 PUSH1 0x40 1E9B 52 MSTORE 1E9C 90 SWAP1 1E9D 50 POP 1E9E 83 DUP4 1E9F 60 PUSH1 0x20 1EA1 01 ADD 1EA2 51 MLOAD 1EA3 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1EB8 16 AND 1EB9 63 PUSH4 0x0dfe1681 1EBE 60 PUSH1 0x40 1EC0 51 MLOAD 1EC1 81 DUP2 1EC2 63 PUSH4 0xffffffff 1EC7 16 AND 1EC8 60 PUSH1 0xe0 1ECA 1B SHL 1ECB 81 DUP2 1ECC 52 MSTORE 1ECD 60 PUSH1 0x04 1ECF 01 ADD 1ED0 60 PUSH1 0x20 1ED2 60 PUSH1 0x40 1ED4 51 MLOAD 1ED5 80 DUP1 1ED6 83 DUP4 1ED7 03 SUB 1ED8 81 DUP2 1ED9 86 DUP7 1EDA 80 DUP1 1EDB 3B EXTCODESIZE 1EDC 15 ISZERO 1EDD 80 DUP1 1EDE 15 ISZERO 1EDF 61 PUSH2 0x1ee7 1EE2 57 *JUMPI 1EE3 60 PUSH1 0x00 1EE5 80 DUP1 1EE6 FD *REVERT 1EE7 5B JUMPDEST 1EE8 50 POP 1EE9 5A GAS 1EEA FA STATICCALL 1EEB 15 ISZERO 1EEC 80 DUP1 1EED 15 ISZERO 1EEE 61 PUSH2 0x1efb 1EF1 57 *JUMPI 1EF2 3D RETURNDATASIZE 1EF3 60 PUSH1 0x00 1EF5 80 DUP1 1EF6 3E RETURNDATACOPY 1EF7 3D RETURNDATASIZE 1EF8 60 PUSH1 0x00 1EFA FD *REVERT 1EFB 5B JUMPDEST 1EFC 50 POP 1EFD 50 POP 1EFE 50 POP 1EFF 50 POP 1F00 60 PUSH1 0x40 1F02 51 MLOAD 1F03 3D RETURNDATASIZE 1F04 60 PUSH1 0x1f 1F06 19 NOT 1F07 60 PUSH1 0x1f 1F09 82 DUP3 1F0A 01 ADD 1F0B 16 AND 1F0C 82 DUP3 1F0D 01 ADD 1F0E 80 DUP1 1F0F 60 PUSH1 0x40 1F11 52 MSTORE 1F12 50 POP 1F13 81 DUP2 1F14 01 ADD 1F15 90 SWAP1 1F16 61 PUSH2 0x1f1f 1F19 91 SWAP2 1F1A 90 SWAP1 1F1B 61 PUSH2 0x3b87 1F1E 56 *JUMP 1F1F 5B JUMPDEST 1F20 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1F35 16 AND 1F36 84 DUP5 1F37 60 PUSH1 0x60 1F39 01 ADD 1F3A 51 MLOAD 1F3B 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1F50 16 AND 1F51 14 EQ 1F52 15 ISZERO 1F53 61 PUSH2 0x1ff9 1F56 57 *JUMPI 1F57 83 DUP4 1F58 60 PUSH1 0x20 1F5A 01 ADD 1F5B 51 MLOAD 1F5C 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 1F71 16 AND 1F72 63 PUSH4 0x128acb08 1F77 30 ADDRESS 1F78 60 PUSH1 0x01 1F7A 85 DUP6 1F7B 64 PUSH5 0x01000276a4 1F81 86 DUP7 1F82 60 PUSH1 0x40 1F84 51 MLOAD 1F85 86 DUP7 1F86 63 PUSH4 0xffffffff 1F8B 16 AND 1F8C 60 PUSH1 0xe0 1F8E 1B SHL 1F8F 81 DUP2 1F90 52 MSTORE 1F91 60 PUSH1 0x04 1F93 01 ADD 1F94 61 PUSH2 0x1fa1 1F97 95 SWAP6 1F98 94 SWAP5 1F99 93 SWAP4 1F9A 92 SWAP3 1F9B 91 SWAP2 1F9C 90 SWAP1 1F9D 61 PUSH2 0x4b84 1FA0 56 *JUMP 1FA1 5B JUMPDEST 1FA2 60 PUSH1 0x40 1FA4 80 DUP1 1FA5 51 MLOAD 1FA6 80 DUP1 1FA7 83 DUP4 1FA8 03 SUB 1FA9 81 DUP2 1FAA 60 PUSH1 0x00 1FAC 87 DUP8 1FAD 80 DUP1 1FAE 3B EXTCODESIZE 1FAF 15 ISZERO 1FB0 80 DUP1 1FB1 15 ISZERO 1FB2 61 PUSH2 0x1fba 1FB5 57 *JUMPI 1FB6 60 PUSH1 0x00 1FB8 80 DUP1 1FB9 FD *REVERT 1FBA 5B JUMPDEST 1FBB 50 POP 1FBC 5A GAS 1FBD F1 CALL 1FBE 15 ISZERO 1FBF 80 DUP1 1FC0 15 ISZERO 1FC1 61 PUSH2 0x1fce 1FC4 57 *JUMPI 1FC5 3D RETURNDATASIZE 1FC6 60 PUSH1 0x00 1FC8 80 DUP1 1FC9 3E RETURNDATACOPY 1FCA 3D RETURNDATASIZE 1FCB 60 PUSH1 0x00 1FCD FD *REVERT 1FCE 5B JUMPDEST 1FCF 50 POP 1FD0 50 POP 1FD1 50 POP 1FD2 50 POP 1FD3 60 PUSH1 0x40 1FD5 51 MLOAD 1FD6 3D RETURNDATASIZE 1FD7 60 PUSH1 0x1f 1FD9 19 NOT 1FDA 60 PUSH1 0x1f 1FDC 82 DUP3 1FDD 01 ADD 1FDE 16 AND 1FDF 82 DUP3 1FE0 01 ADD 1FE1 80 DUP1 1FE2 60 PUSH1 0x40 1FE4 52 MSTORE 1FE5 50 POP 1FE6 81 DUP2 1FE7 01 ADD 1FE8 90 SWAP1 1FE9 61 PUSH2 0x1ff2 1FEC 91 SWAP2 1FED 90 SWAP1 1FEE 61 PUSH2 0x3dc4 1FF1 56 *JUMP 1FF2 5B JUMPDEST 1FF3 50 POP 1FF4 50 POP 1FF5 61 PUSH2 0x17da 1FF8 56 *JUMP 1FF9 5B JUMPDEST 1FFA 83 DUP4 1FFB 60 PUSH1 0x20 1FFD 01 ADD 1FFE 51 MLOAD 1FFF 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2014 16 AND 2015 63 PUSH4 0x128acb08 201A 30 ADDRESS 201B 60 PUSH1 0x00 201D 85 DUP6 201E 73 PUSH20 0xfffd8963efd1fc6a506488495d951d5263988d25 2033 86 DUP7 2034 60 PUSH1 0x40 2036 51 MLOAD 2037 86 DUP7 2038 63 PUSH4 0xffffffff 203D 16 AND 203E 60 PUSH1 0xe0 2040 1B SHL 2041 81 DUP2 2042 52 MSTORE 2043 60 PUSH1 0x04 2045 01 ADD 2046 61 PUSH2 0x2053 2049 95 SWAP6 204A 94 SWAP5 204B 93 SWAP4 204C 92 SWAP3 204D 91 SWAP2 204E 90 SWAP1 204F 61 PUSH2 0x4b84 2052 56 *JUMP 2053 5B JUMPDEST 2054 60 PUSH1 0x40 2056 80 DUP1 2057 51 MLOAD 2058 80 DUP1 2059 83 DUP4 205A 03 SUB 205B 81 DUP2 205C 60 PUSH1 0x00 205E 87 DUP8 205F 80 DUP1 2060 3B EXTCODESIZE 2061 15 ISZERO 2062 80 DUP1 2063 15 ISZERO 2064 61 PUSH2 0x206c 2067 57 *JUMPI 2068 60 PUSH1 0x00 206A 80 DUP1 206B FD *REVERT 206C 5B JUMPDEST 206D 50 POP 206E 5A GAS 206F F1 CALL 2070 15 ISZERO 2071 80 DUP1 2072 15 ISZERO 2073 61 PUSH2 0x2080 2076 57 *JUMPI 2077 3D RETURNDATASIZE 2078 60 PUSH1 0x00 207A 80 DUP1 207B 3E RETURNDATACOPY 207C 3D RETURNDATASIZE 207D 60 PUSH1 0x00 207F FD *REVERT 2080 5B JUMPDEST 2081 50 POP 2082 50 POP 2083 50 POP 2084 50 POP 2085 60 PUSH1 0x40 2087 51 MLOAD 2088 3D RETURNDATASIZE 2089 60 PUSH1 0x1f 208B 19 NOT 208C 60 PUSH1 0x1f 208E 82 DUP3 208F 01 ADD 2090 16 AND 2091 82 DUP3 2092 01 ADD 2093 80 DUP1 2094 60 PUSH1 0x40 2096 52 MSTORE 2097 50 POP 2098 81 DUP2 2099 01 ADD 209A 90 SWAP1 209B 61 PUSH2 0x0cae 209E 91 SWAP2 209F 90 SWAP1 20A0 61 PUSH2 0x3dc4 20A3 56 *JUMP 20A4 5B JUMPDEST 20A5 60 PUSH1 0x20 20A7 83 DUP4 20A8 01 ADD 20A9 51 MLOAD 20AA 60 PUSH1 0x40 20AC 51 MLOAD 20AD 7F PUSH32 0x12038e5d00000000000000000000000000000000000000000000000000000000 20CE 81 DUP2 20CF 52 MSTORE 20D0 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 20E5 90 SWAP1 20E6 91 SWAP2 20E7 16 AND 20E8 60 PUSH1 0x04 20EA 82 DUP3 20EB 01 ADD 20EC 52 MSTORE 20ED 30 ADDRESS 20EE 90 SWAP1 20EF 63 PUSH4 0x12038e5d 20F4 90 SWAP1 20F5 60 PUSH1 0x24 20F7 01 ADD 20F8 60 PUSH1 0x00 20FA 60 PUSH1 0x40 20FC 51 MLOAD 20FD 80 DUP1 20FE 83 DUP4 20FF 03 SUB 2100 81 DUP2 2101 60 PUSH1 0x00 2103 87 DUP8 2104 80 DUP1 2105 3B EXTCODESIZE 2106 15 ISZERO 2107 80 DUP1 2108 15 ISZERO 2109 61 PUSH2 0x2111 210C 57 *JUMPI 210D 60 PUSH1 0x00 210F 80 DUP1 2110 FD *REVERT 2111 5B JUMPDEST 2112 50 POP 2113 5A GAS 2114 F1 CALL 2115 15 ISZERO 2116 80 DUP1 2117 15 ISZERO 2118 61 PUSH2 0x2125 211B 57 *JUMPI 211C 3D RETURNDATASIZE 211D 60 PUSH1 0x00 211F 80 DUP1 2120 3E RETURNDATACOPY 2121 3D RETURNDATASIZE 2122 60 PUSH1 0x00 2124 FD *REVERT 2125 5B JUMPDEST 2126 50 POP 2127 50 POP 2128 50 POP 2129 50 POP 212A 60 PUSH1 0x00 212C 80 DUP1 212D 60 PUSH1 0x00 212F 80 DUP1 2130 86 DUP7 2131 60 PUSH1 0x20 2133 01 ADD 2134 51 MLOAD 2135 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 214A 16 AND 214B 63 PUSH4 0x0902f1ac 2150 60 PUSH1 0x40 2152 51 MLOAD 2153 81 DUP2 2154 63 PUSH4 0xffffffff 2159 16 AND 215A 60 PUSH1 0xe0 215C 1B SHL 215D 81 DUP2 215E 52 MSTORE 215F 60 PUSH1 0x04 2161 01 ADD 2162 60 PUSH1 0x60 2164 60 PUSH1 0x40 2166 51 MLOAD 2167 80 DUP1 2168 83 DUP4 2169 03 SUB 216A 81 DUP2 216B 86 DUP7 216C 80 DUP1 216D 3B EXTCODESIZE 216E 15 ISZERO 216F 80 DUP1 2170 15 ISZERO 2171 61 PUSH2 0x2179 2174 57 *JUMPI 2175 60 PUSH1 0x00 2177 80 DUP1 2178 FD *REVERT 2179 5B JUMPDEST 217A 50 POP 217B 5A GAS 217C FA STATICCALL 217D 15 ISZERO 217E 80 DUP1 217F 15 ISZERO 2180 61 PUSH2 0x218d 2183 57 *JUMPI 2184 3D RETURNDATASIZE 2185 60 PUSH1 0x00 2187 80 DUP1 2188 3E RETURNDATACOPY 2189 3D RETURNDATASIZE 218A 60 PUSH1 0x00 218C FD *REVERT 218D 5B JUMPDEST 218E 50 POP 218F 50 POP 2190 50 POP 2191 50 POP 2192 60 PUSH1 0x40 2194 51 MLOAD 2195 3D RETURNDATASIZE 2196 60 PUSH1 0x1f 2198 19 NOT 2199 60 PUSH1 0x1f 219B 82 DUP3 219C 01 ADD 219D 16 AND 219E 82 DUP3 219F 01 ADD 21A0 80 DUP1 21A1 60 PUSH1 0x40 21A3 52 MSTORE 21A4 50 POP 21A5 81 DUP2 21A6 01 ADD 21A7 90 SWAP1 21A8 61 PUSH2 0x21b1 21AB 91 SWAP2 21AC 90 SWAP1 21AD 61 PUSH2 0x4795 21B0 56 *JUMP 21B1 5B JUMPDEST 21B2 50 POP 21B3 6D PUSH14 0xffffffffffffffffffffffffffff 21C2 16 AND 21C3 91 SWAP2 21C4 50 POP 21C5 6D PUSH14 0xffffffffffffffffffffffffffff 21D4 16 AND 21D5 91 SWAP2 21D6 50 POP 21D7 60 PUSH1 0x00 21D9 87 DUP8 21DA 60 PUSH1 0x20 21DC 01 ADD 21DD 51 MLOAD 21DE 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 21F3 16 AND 21F4 63 PUSH4 0x0dfe1681 21F9 60 PUSH1 0x40 21FB 51 MLOAD 21FC 81 DUP2 21FD 63 PUSH4 0xffffffff 2202 16 AND 2203 60 PUSH1 0xe0 2205 1B SHL 2206 81 DUP2 2207 52 MSTORE 2208 60 PUSH1 0x04 220A 01 ADD 220B 60 PUSH1 0x20 220D 60 PUSH1 0x40 220F 51 MLOAD 2210 80 DUP1 2211 83 DUP4 2212 03 SUB 2213 81 DUP2 2214 86 DUP7 2215 80 DUP1 2216 3B EXTCODESIZE 2217 15 ISZERO 2218 80 DUP1 2219 15 ISZERO 221A 61 PUSH2 0x2222 221D 57 *JUMPI 221E 60 PUSH1 0x00 2220 80 DUP1 2221 FD *REVERT 2222 5B JUMPDEST 2223 50 POP 2224 5A GAS 2225 FA STATICCALL 2226 15 ISZERO 2227 80 DUP1 2228 15 ISZERO 2229 61 PUSH2 0x2236 222C 57 *JUMPI 222D 3D RETURNDATASIZE 222E 60 PUSH1 0x00 2230 80 DUP1 2231 3E RETURNDATACOPY 2232 3D RETURNDATASIZE 2233 60 PUSH1 0x00 2235 FD *REVERT 2236 5B JUMPDEST 2237 50 POP 2238 50 POP 2239 50 POP 223A 50 POP 223B 60 PUSH1 0x40 223D 51 MLOAD 223E 3D RETURNDATASIZE 223F 60 PUSH1 0x1f 2241 19 NOT 2242 60 PUSH1 0x1f 2244 82 DUP3 2245 01 ADD 2246 16 AND 2247 82 DUP3 2248 01 ADD 2249 80 DUP1 224A 60 PUSH1 0x40 224C 52 MSTORE 224D 50 POP 224E 81 DUP2 224F 01 ADD 2250 90 SWAP1 2251 61 PUSH2 0x225a 2254 91 SWAP2 2255 90 SWAP1 2256 61 PUSH2 0x3b87 2259 56 *JUMP 225A 5B JUMPDEST 225B 90 SWAP1 225C 50 POP 225D 80 DUP1 225E 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2273 16 AND 2274 88 DUP9 2275 60 PUSH1 0x40 2277 01 ADD 2278 51 MLOAD 2279 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 228E 16 AND 228F 14 EQ 2290 15 ISZERO 2291 61 PUSH2 0x229f 2294 57 *JUMPI 2295 81 DUP2 2296 94 SWAP5 2297 50 POP 2298 82 DUP3 2299 93 SWAP4 229A 50 POP 229B 61 PUSH2 0x22a6 229E 56 *JUMP 229F 5B JUMPDEST 22A0 82 DUP3 22A1 94 SWAP5 22A2 50 POP 22A3 81 DUP2 22A4 93 SWAP4 22A5 50 POP 22A6 5B JUMPDEST 22A7 60 PUSH1 0x00 22A9 88 DUP9 22AA 60 PUSH1 0x80 22AC 01 ADD 22AD 51 MLOAD 22AE 61 PUSH2 0x2710 22B1 61 PUSH2 0x22ba 22B4 91 SWAP2 22B5 90 SWAP1 22B6 61 PUSH2 0x553c 22B9 56 *JUMP 22BA 5B JUMPDEST 22BB 90 SWAP1 22BC 50 POP 22BD 60 PUSH1 0x00 22BF 61 PUSH2 0x22c8 22C2 82 DUP3 22C3 89 DUP10 22C4 61 PUSH2 0x54ff 22C7 56 *JUMP 22C8 5B JUMPDEST 22C9 90 SWAP1 22CA 50 POP 22CB 60 PUSH1 0x00 22CD 81 DUP2 22CE 61 PUSH2 0x22d9 22D1 89 DUP10 22D2 61 PUSH2 0x2710 22D5 61 PUSH2 0x54ff 22D8 56 *JUMP 22D9 5B JUMPDEST 22DA 61 PUSH2 0x22e3 22DD 91 SWAP2 22DE 90 SWAP1 22DF 61 PUSH2 0x5395 22E2 56 *JUMP 22E3 5B JUMPDEST 22E4 61 PUSH2 0x22ed 22E7 88 DUP9 22E8 84 DUP5 22E9 61 PUSH2 0x54ff 22EC 56 *JUMP 22ED 5B JUMPDEST 22EE 61 PUSH2 0x22f7 22F1 91 SWAP2 22F2 90 SWAP1 22F3 61 PUSH2 0x53ad 22F6 56 *JUMP 22F7 5B JUMPDEST 22F8 90 SWAP1 22F9 50 POP 22FA 60 PUSH1 0x00 22FC 8B DUP12 22FD 8B DUP12 22FE 8A DUP11 22FF 8A DUP11 2300 60 PUSH1 0x40 2302 51 MLOAD 2303 60 PUSH1 0x20 2305 01 ADD 2306 61 PUSH2 0x2312 2309 94 SWAP5 230A 93 SWAP4 230B 92 SWAP3 230C 91 SWAP2 230D 90 SWAP1 230E 61 PUSH2 0x513d 2311 56 *JUMP 2312 5B JUMPDEST 2313 60 PUSH1 0x40 2315 51 MLOAD 2316 60 PUSH1 0x20 2318 81 DUP2 2319 83 DUP4 231A 03 SUB 231B 03 SUB 231C 81 DUP2 231D 52 MSTORE 231E 90 SWAP1 231F 60 PUSH1 0x40 2321 52 MSTORE 2322 90 SWAP1 2323 50 POP 2324 84 DUP5 2325 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 233A 16 AND 233B 8C DUP13 233C 60 PUSH1 0x40 233E 01 ADD 233F 51 MLOAD 2340 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2355 16 AND 2356 14 EQ 2357 15 ISZERO 2358 61 PUSH2 0x23d6 235B 57 *JUMPI 235C 8B DUP12 235D 60 PUSH1 0x20 235F 01 ADD 2360 51 MLOAD 2361 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2376 16 AND 2377 63 PUSH4 0x022c0d9f 237C 83 DUP4 237D 60 PUSH1 0x00 237F 30 ADDRESS 2380 85 DUP6 2381 60 PUSH1 0x40 2383 51 MLOAD 2384 85 DUP6 2385 63 PUSH4 0xffffffff 238A 16 AND 238B 60 PUSH1 0xe0 238D 1B SHL 238E 81 DUP2 238F 52 MSTORE 2390 60 PUSH1 0x04 2392 01 ADD 2393 61 PUSH2 0x239f 2396 94 SWAP5 2397 93 SWAP4 2398 92 SWAP3 2399 91 SWAP2 239A 90 SWAP1 239B 61 PUSH2 0x4d26 239E 56 *JUMP 239F 5B JUMPDEST 23A0 60 PUSH1 0x00 23A2 60 PUSH1 0x40 23A4 51 MLOAD 23A5 80 DUP1 23A6 83 DUP4 23A7 03 SUB 23A8 81 DUP2 23A9 60 PUSH1 0x00 23AB 87 DUP8 23AC 80 DUP1 23AD 3B EXTCODESIZE 23AE 15 ISZERO 23AF 80 DUP1 23B0 15 ISZERO 23B1 61 PUSH2 0x23b9 23B4 57 *JUMPI 23B5 60 PUSH1 0x00 23B7 80 DUP1 23B8 FD *REVERT 23B9 5B JUMPDEST 23BA 50 POP 23BB 5A GAS 23BC F1 CALL 23BD 15 ISZERO 23BE 80 DUP1 23BF 15 ISZERO 23C0 61 PUSH2 0x23cd 23C3 57 *JUMPI 23C4 3D RETURNDATASIZE 23C5 60 PUSH1 0x00 23C7 80 DUP1 23C8 3E RETURNDATACOPY 23C9 3D RETURNDATASIZE 23CA 60 PUSH1 0x00 23CC FD *REVERT 23CD 5B JUMPDEST 23CE 50 POP 23CF 50 POP 23D0 50 POP 23D1 50 POP 23D2 61 PUSH2 0x1215 23D5 56 *JUMP 23D6 5B JUMPDEST 23D7 8B DUP12 23D8 60 PUSH1 0x20 23DA 01 ADD 23DB 51 MLOAD 23DC 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 23F1 16 AND 23F2 63 PUSH4 0x022c0d9f 23F7 60 PUSH1 0x00 23F9 84 DUP5 23FA 30 ADDRESS 23FB 85 DUP6 23FC 60 PUSH1 0x40 23FE 51 MLOAD 23FF 85 DUP6 2400 63 PUSH4 0xffffffff 2405 16 AND 2406 60 PUSH1 0xe0 2408 1B SHL 2409 81 DUP2 240A 52 MSTORE 240B 60 PUSH1 0x04 240D 01 ADD 240E 61 PUSH2 0x241a 2411 94 SWAP5 2412 93 SWAP4 2413 92 SWAP3 2414 91 SWAP2 2415 90 SWAP1 2416 61 PUSH2 0x4d26 2419 56 *JUMP 241A 5B JUMPDEST 241B 60 PUSH1 0x00 241D 60 PUSH1 0x40 241F 51 MLOAD 2420 80 DUP1 2421 83 DUP4 2422 03 SUB 2423 81 DUP2 2424 60 PUSH1 0x00 2426 87 DUP8 2427 80 DUP1 2428 3B EXTCODESIZE 2429 15 ISZERO 242A 80 DUP1 242B 15 ISZERO 242C 61 PUSH2 0x2434 242F 57 *JUMPI 2430 60 PUSH1 0x00 2432 80 DUP1 2433 FD *REVERT 2434 5B JUMPDEST 2435 50 POP 2436 5A GAS 2437 F1 CALL 2438 15 ISZERO 2439 80 DUP1 243A 15 ISZERO 243B 61 PUSH2 0x2448 243E 57 *JUMPI 243F 3D RETURNDATASIZE 2440 60 PUSH1 0x00 2442 80 DUP1 2443 3E RETURNDATACOPY 2444 3D RETURNDATASIZE 2445 60 PUSH1 0x00 2447 FD *REVERT 2448 5B JUMPDEST 2449 50 POP 244A 50 POP 244B 50 POP 244C 50 POP 244D 50 POP 244E 50 POP 244F 50 POP 2450 50 POP 2451 50 POP 2452 50 POP 2453 50 POP 2454 50 POP 2455 50 POP 2456 50 POP 2457 50 POP 2458 50 POP 2459 56 *JUMP 245A 5B JUMPDEST 245B 60 PUSH1 0x20 245D 83 DUP4 245E 01 ADD 245F 51 MLOAD 2460 60 PUSH1 0x40 2462 51 MLOAD 2463 7F PUSH32 0x12038e5d00000000000000000000000000000000000000000000000000000000 2484 81 DUP2 2485 52 MSTORE 2486 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 249B 90 SWAP1 249C 91 SWAP2 249D 16 AND 249E 60 PUSH1 0x04 24A0 82 DUP3 24A1 01 ADD 24A2 52 MSTORE 24A3 30 ADDRESS 24A4 90 SWAP1 24A5 63 PUSH4 0x12038e5d 24AA 90 SWAP1 24AB 60 PUSH1 0x24 24AD 01 ADD 24AE 60 PUSH1 0x00 24B0 60 PUSH1 0x40 24B2 51 MLOAD 24B3 80 DUP1 24B4 83 DUP4 24B5 03 SUB 24B6 81 DUP2 24B7 60 PUSH1 0x00 24B9 87 DUP8 24BA 80 DUP1 24BB 3B EXTCODESIZE 24BC 15 ISZERO 24BD 80 DUP1 24BE 15 ISZERO 24BF 61 PUSH2 0x24c7 24C2 57 *JUMPI 24C3 60 PUSH1 0x00 24C5 80 DUP1 24C6 FD *REVERT 24C7 5B JUMPDEST 24C8 50 POP 24C9 5A GAS 24CA F1 CALL 24CB 15 ISZERO 24CC 80 DUP1 24CD 15 ISZERO 24CE 61 PUSH2 0x24db 24D1 57 *JUMPI 24D2 3D RETURNDATASIZE 24D3 60 PUSH1 0x00 24D5 80 DUP1 24D6 3E RETURNDATACOPY 24D7 3D RETURNDATASIZE 24D8 60 PUSH1 0x00 24DA FD *REVERT 24DB 5B JUMPDEST 24DC 50 POP 24DD 50 POP 24DE 50 POP 24DF 50 POP 24E0 60 PUSH1 0x00 24E2 83 DUP4 24E3 83 DUP4 24E4 83 DUP4 24E5 60 PUSH1 0x40 24E7 51 MLOAD 24E8 60 PUSH1 0x20 24EA 01 ADD 24EB 61 PUSH2 0x24f6 24EE 93 SWAP4 24EF 92 SWAP3 24F0 91 SWAP2 24F1 90 SWAP1 24F2 61 PUSH2 0x50c4 24F5 56 *JUMP 24F6 5B JUMPDEST 24F7 60 PUSH1 0x40 24F9 80 DUP1 24FA 51 MLOAD 24FB 60 PUSH1 0x1f 24FD 19 NOT 24FE 81 DUP2 24FF 84 DUP5 2500 03 SUB 2501 01 ADD 2502 81 DUP2 2503 52 MSTORE 2504 91 SWAP2 2505 90 SWAP1 2506 52 MSTORE 2507 90 SWAP1 2508 50 POP 2509 60 PUSH1 0x00 250B 61 PUSH2 0x2515 250E 83 DUP4 250F 60 PUSH1 0x02 2511 61 PUSH2 0x5395 2514 56 *JUMP 2515 5B JUMPDEST 2516 90 SWAP1 2517 50 POP 2518 60 PUSH1 0x00 251A 61 PUSH2 0x252b 251D 86 DUP7 251E 60 PUSH1 0x20 2520 01 ADD 2521 51 MLOAD 2522 87 DUP8 2523 60 PUSH1 0x40 2525 01 ADD 2526 51 MLOAD 2527 61 PUSH2 0x2981 252A 56 *JUMP 252B 5B JUMPDEST 252C 90 SWAP1 252D 50 POP 252E 61 PUSH2 0x2540 2531 86 DUP7 2532 60 PUSH1 0x40 2534 01 ADD 2535 51 MLOAD 2536 87 DUP8 2537 60 PUSH1 0x20 2539 01 ADD 253A 51 MLOAD 253B 84 DUP5 253C 61 PUSH2 0x2870 253F 56 *JUMP 2540 5B JUMPDEST 2541 60 PUSH1 0x40 2543 80 DUP1 2544 51 MLOAD 2545 60 PUSH1 0x03 2547 80 DUP1 2548 82 DUP3 2549 52 MSTORE 254A 60 PUSH1 0x80 254C 82 DUP3 254D 01 ADD 254E 90 SWAP1 254F 92 SWAP3 2550 52 MSTORE 2551 60 PUSH1 0x60 2553 91 SWAP2 2554 60 PUSH1 0x00 2556 91 SWAP2 2557 90 SWAP1 2558 81 DUP2 2559 60 PUSH1 0x20 255B 01 ADD 255C 5B JUMPDEST 255D 61 PUSH2 0x2564 2560 61 PUSH2 0x2f64 2563 56 *JUMP 2564 5B JUMPDEST 2565 81 DUP2 2566 52 MSTORE 2567 60 PUSH1 0x20 2569 01 ADD 256A 90 SWAP1 256B 60 PUSH1 0x01 256D 90 SWAP1 256E 03 SUB 256F 90 SWAP1 2570 81 DUP2 2571 61 PUSH2 0x255c 2574 57 *JUMPI 2575 90 SWAP1 2576 50 POP 2577 50 POP 2578 90 SWAP1 2579 50 POP 257A 61 PUSH2 0x2586 257D 60 PUSH1 0x01 257F 83 DUP4 2580 85 DUP6 2581 89 DUP10 2582 61 PUSH2 0x2b0c 2585 56 *JUMP 2586 5B JUMPDEST 2587 81 DUP2 2588 60 PUSH1 0x00 258A 81 DUP2 258B 51 MLOAD 258C 81 DUP2 258D 10 LT 258E 61 PUSH2 0x25a7 2591 57 *JUMPI 2592 63 PUSH4 0x4e487b71 2597 60 PUSH1 0xe0 2599 1B SHL 259A 60 PUSH1 0x00 259C 52 MSTORE 259D 60 PUSH1 0x32 259F 60 PUSH1 0x04 25A1 52 MSTORE 25A2 60 PUSH1 0x24 25A4 60 PUSH1 0x00 25A6 FD *REVERT 25A7 5B JUMPDEST 25A8 60 PUSH1 0x20 25AA 02 MUL 25AB 60 PUSH1 0x20 25AD 01 ADD 25AE 01 ADD 25AF 81 DUP2 25B0 90 SWAP1 25B1 52 MSTORE 25B2 50 POP 25B3 61 PUSH2 0x25c0 25B6 60 PUSH1 0x08 25B8 86 DUP7 25B9 60 PUSH1 0x00 25BB 80 DUP1 25BC 61 PUSH2 0x2b0c 25BF 56 *JUMP 25C0 5B JUMPDEST 25C1 81 DUP2 25C2 60 PUSH1 0x01 25C4 81 DUP2 25C5 51 MLOAD 25C6 81 DUP2 25C7 10 LT 25C8 61 PUSH2 0x25e1 25CB 57 *JUMPI 25CC 63 PUSH4 0x4e487b71 25D1 60 PUSH1 0xe0 25D3 1B SHL 25D4 60 PUSH1 0x00 25D6 52 MSTORE 25D7 60 PUSH1 0x32 25D9 60 PUSH1 0x04 25DB 52 MSTORE 25DC 60 PUSH1 0x24 25DE 60 PUSH1 0x00 25E0 FD *REVERT 25E1 5B JUMPDEST 25E2 60 PUSH1 0x20 25E4 02 MUL 25E5 60 PUSH1 0x20 25E7 01 ADD 25E8 01 ADD 25E9 81 DUP2 25EA 90 SWAP1 25EB 52 MSTORE 25EC 50 POP 25ED 61 PUSH2 0x25f9 25F0 60 PUSH1 0x00 25F2 83 DUP4 25F3 85 DUP6 25F4 87 DUP8 25F5 61 PUSH2 0x2b0c 25F8 56 *JUMP 25F9 5B JUMPDEST 25FA 81 DUP2 25FB 60 PUSH1 0x02 25FD 81 DUP2 25FE 51 MLOAD 25FF 81 DUP2 2600 10 LT 2601 61 PUSH2 0x261a 2604 57 *JUMPI 2605 63 PUSH4 0x4e487b71 260A 60 PUSH1 0xe0 260C 1B SHL 260D 60 PUSH1 0x00 260F 52 MSTORE 2610 60 PUSH1 0x32 2612 60 PUSH1 0x04 2614 52 MSTORE 2615 60 PUSH1 0x24 2617 60 PUSH1 0x00 2619 FD *REVERT 261A 5B JUMPDEST 261B 60 PUSH1 0x20 261D 90 SWAP1 261E 81 DUP2 261F 02 MUL 2620 91 SWAP2 2621 90 SWAP1 2622 91 SWAP2 2623 01 ADD 2624 01 ADD 2625 52 MSTORE 2626 60 PUSH1 0x40 2628 80 DUP1 2629 51 MLOAD 262A 60 PUSH1 0x01 262C 80 DUP1 262D 82 DUP3 262E 52 MSTORE 262F 81 DUP2 2630 83 DUP4 2631 01 ADD 2632 90 SWAP1 2633 92 SWAP3 2634 52 MSTORE 2635 60 PUSH1 0x00 2637 91 SWAP2 2638 81 DUP2 2639 60 PUSH1 0x20 263B 01 ADD 263C 5B JUMPDEST 263D 60 PUSH1 0x40 263F 80 DUP1 2640 51 MLOAD 2641 80 DUP1 2642 82 DUP3 2643 01 ADD 2644 90 SWAP1 2645 91 SWAP2 2646 52 MSTORE 2647 60 PUSH1 0x00 2649 80 DUP1 264A 82 DUP3 264B 52 MSTORE 264C 60 PUSH1 0x20 264E 82 DUP3 264F 01 ADD 2650 52 MSTORE 2651 81 DUP2 2652 52 MSTORE 2653 60 PUSH1 0x20 2655 01 ADD 2656 90 SWAP1 2657 60 PUSH1 0x01 2659 90 SWAP1 265A 03 SUB 265B 90 SWAP1 265C 81 DUP2 265D 61 PUSH2 0x263c 2660 57 *JUMPI 2661 90 SWAP1 2662 50 POP 2663 50 POP 2664 90 SWAP1 2665 50 POP 2666 60 PUSH1 0x40 2668 51 MLOAD 2669 80 DUP1 266A 60 PUSH1 0x40 266C 01 ADD 266D 60 PUSH1 0x40 266F 52 MSTORE 2670 80 DUP1 2671 30 ADDRESS 2672 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2687 16 AND 2688 81 DUP2 2689 52 MSTORE 268A 60 PUSH1 0x20 268C 01 ADD 268D 60 PUSH1 0x01 268F 81 DUP2 2690 52 MSTORE 2691 50 POP 2692 81 DUP2 2693 60 PUSH1 0x00 2695 81 DUP2 2696 51 MLOAD 2697 81 DUP2 2698 10 LT 2699 61 PUSH2 0x26b2 269C 57 *JUMPI 269D 63 PUSH4 0x4e487b71 26A2 60 PUSH1 0xe0 26A4 1B SHL 26A5 60 PUSH1 0x00 26A7 52 MSTORE 26A8 60 PUSH1 0x32 26AA 60 PUSH1 0x04 26AC 52 MSTORE 26AD 60 PUSH1 0x24 26AF 60 PUSH1 0x00 26B1 FD *REVERT 26B2 5B JUMPDEST 26B3 60 PUSH1 0x20 26B5 02 MUL 26B6 60 PUSH1 0x20 26B8 01 ADD 26B9 01 ADD 26BA 81 DUP2 26BB 90 SWAP1 26BC 52 MSTORE 26BD 50 POP 26BE 88 DUP9 26BF 60 PUSH1 0x20 26C1 01 ADD 26C2 51 MLOAD 26C3 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 26D8 16 AND 26D9 63 PUSH4 0xa67a6a45 26DE 82 DUP3 26DF 84 DUP5 26E0 60 PUSH1 0x40 26E2 51 MLOAD 26E3 83 DUP4 26E4 63 PUSH4 0xffffffff 26E9 16 AND 26EA 60 PUSH1 0xe0 26EC 1B SHL 26ED 81 DUP2 26EE 52 MSTORE 26EF 60 PUSH1 0x04 26F1 01 ADD 26F2 61 PUSH2 0x26fc 26F5 92 SWAP3 26F6 91 SWAP2 26F7 90 SWAP1 26F8 61 PUSH2 0x4bcb 26FB 56 *JUMP 26FC 5B JUMPDEST 26FD 60 PUSH1 0x00 26FF 60 PUSH1 0x40 2701 51 MLOAD 2702 80 DUP1 2703 83 DUP4 2704 03 SUB 2705 81 DUP2 2706 60 PUSH1 0x00 2708 87 DUP8 2709 80 DUP1 270A 3B EXTCODESIZE 270B 15 ISZERO 270C 80 DUP1 270D 15 ISZERO 270E 61 PUSH2 0x2716 2711 57 *JUMPI 2712 60 PUSH1 0x00 2714 80 DUP1 2715 FD *REVERT 2716 5B JUMPDEST 2717 50 POP 2718 5A GAS 2719 F1 CALL 271A 15 ISZERO 271B 80 DUP1 271C 15 ISZERO 271D 61 PUSH2 0x272a 2720 57 *JUMPI 2721 3D RETURNDATASIZE 2722 60 PUSH1 0x00 2724 80 DUP1 2725 3E RETURNDATACOPY 2726 3D RETURNDATASIZE 2727 60 PUSH1 0x00 2729 FD *REVERT 272A 5B JUMPDEST 272B 50 POP 272C 50 POP 272D 50 POP 272E 50 POP 272F 50 POP 2730 50 POP 2731 50 POP 2732 50 POP 2733 50 POP 2734 50 POP 2735 50 POP 2736 50 POP 2737 50 POP 2738 56 *JUMP 2739 5B JUMPDEST 273A 60 PUSH1 0x20 273C 83 DUP4 273D 01 ADD 273E 51 MLOAD 273F 60 PUSH1 0x40 2741 51 MLOAD 2742 7F PUSH32 0x12038e5d00000000000000000000000000000000000000000000000000000000 2763 81 DUP2 2764 52 MSTORE 2765 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 277A 90 SWAP1 277B 91 SWAP2 277C 16 AND 277D 60 PUSH1 0x04 277F 82 DUP3 2780 01 ADD 2781 52 MSTORE 2782 30 ADDRESS 2783 90 SWAP1 2784 63 PUSH4 0x12038e5d 2789 90 SWAP1 278A 60 PUSH1 0x24 278C 01 ADD 278D 60 PUSH1 0x00 278F 60 PUSH1 0x40 2791 51 MLOAD 2792 80 DUP1 2793 83 DUP4 2794 03 SUB 2795 81 DUP2 2796 60 PUSH1 0x00 2798 87 DUP8 2799 80 DUP1 279A 3B EXTCODESIZE 279B 15 ISZERO 279C 80 DUP1 279D 15 ISZERO 279E 61 PUSH2 0x27a6 27A1 57 *JUMPI 27A2 60 PUSH1 0x00 27A4 80 DUP1 27A5 FD *REVERT 27A6 5B JUMPDEST 27A7 50 POP 27A8 5A GAS 27A9 F1 CALL 27AA 15 ISZERO 27AB 80 DUP1 27AC 15 ISZERO 27AD 61 PUSH2 0x27ba 27B0 57 *JUMPI 27B1 3D RETURNDATASIZE 27B2 60 PUSH1 0x00 27B4 80 DUP1 27B5 3E RETURNDATACOPY 27B6 3D RETURNDATASIZE 27B7 60 PUSH1 0x00 27B9 FD *REVERT 27BA 5B JUMPDEST 27BB 50 POP 27BC 50 POP 27BD 50 POP 27BE 50 POP 27BF 60 PUSH1 0x00 27C1 83 DUP4 27C2 83 DUP4 27C3 60 PUSH1 0x40 27C5 51 MLOAD 27C6 60 PUSH1 0x20 27C8 01 ADD 27C9 61 PUSH2 0x27d3 27CC 92 SWAP3 27CD 91 SWAP2 27CE 90 SWAP1 27CF 61 PUSH2 0x505b 27D2 56 *JUMP 27D3 5B JUMPDEST 27D4 60 PUSH1 0x40 27D6 80 DUP1 27D7 51 MLOAD 27D8 60 PUSH1 0x1f 27DA 19 NOT 27DB 81 DUP2 27DC 84 DUP5 27DD 03 SUB 27DE 01 ADD 27DF 81 DUP2 27E0 52 MSTORE 27E1 90 SWAP1 27E2 82 DUP3 27E3 90 SWAP1 27E4 52 MSTORE 27E5 60 PUSH1 0x20 27E7 86 DUP7 27E8 01 ADD 27E9 51 MLOAD 27EA 7F PUSH32 0x5cffe9de00000000000000000000000000000000000000000000000000000000 280B 83 DUP4 280C 52 MSTORE 280D 90 SWAP1 280E 92 SWAP3 280F 50 POP 2810 90 SWAP1 2811 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2826 82 DUP3 2827 16 AND 2828 90 SWAP1 2829 63 PUSH4 0x5cffe9de 282E 90 SWAP1 282F 61 PUSH2 0x2842 2832 90 SWAP1 2833 30 ADDRESS 2834 90 SWAP1 2835 85 DUP6 2836 90 SWAP1 2837 88 DUP9 2838 90 SWAP1 2839 88 DUP9 283A 90 SWAP1 283B 60 PUSH1 0x04 283D 01 ADD 283E 61 PUSH2 0x4b3b 2841 56 *JUMP 2842 5B JUMPDEST 2843 60 PUSH1 0x00 2845 60 PUSH1 0x40 2847 51 MLOAD 2848 80 DUP1 2849 83 DUP4 284A 03 SUB 284B 81 DUP2 284C 60 PUSH1 0x00 284E 87 DUP8 284F 80 DUP1 2850 3B EXTCODESIZE 2851 15 ISZERO 2852 80 DUP1 2853 15 ISZERO 2854 61 PUSH2 0x285c 2857 57 *JUMPI 2858 60 PUSH1 0x00 285A 80 DUP1 285B FD *REVERT 285C 5B JUMPDEST 285D 50 POP 285E 5A GAS 285F F1 CALL 2860 15 ISZERO 2861 80 DUP1 2862 15 ISZERO 2863 61 PUSH2 0x1096 2866 57 *JUMPI 2867 3D RETURNDATASIZE 2868 60 PUSH1 0x00 286A 80 DUP1 286B 3E RETURNDATACOPY 286C 3D RETURNDATASIZE 286D 60 PUSH1 0x00 286F FD *REVERT label_2870: // Incoming call from 0x141C, returns to 0x141D // Inputs[6] // { // @2873 memory[0x40:0x60] // @2897 address(this) // @28B2 stack[-2] // @28BA stack[-3] // @28CF memory[0x40:0x60] // @28D8 address(stack[-3] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // } 2870 5B JUMPDEST 2871 60 PUSH1 0x40 2873 51 MLOAD 2874 7F PUSH32 0xdd62ed3e00000000000000000000000000000000000000000000000000000000 2895 81 DUP2 2896 52 MSTORE 2897 30 ADDRESS 2898 60 PUSH1 0x04 289A 82 DUP3 289B 01 ADD 289C 52 MSTORE 289D 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 28B2 83 DUP4 28B3 81 DUP2 28B4 16 AND 28B5 60 PUSH1 0x24 28B7 83 DUP4 28B8 01 ADD 28B9 52 MSTORE 28BA 84 DUP5 28BB 91 SWAP2 28BC 60 PUSH1 0x00 28BE 91 SWAP2 28BF 83 DUP4 28C0 16 AND 28C1 90 SWAP1 28C2 63 PUSH4 0xdd62ed3e 28C7 90 SWAP1 28C8 60 PUSH1 0x44 28CA 01 ADD 28CB 60 PUSH1 0x20 28CD 60 PUSH1 0x40 28CF 51 MLOAD 28D0 80 DUP1 28D1 83 DUP4 28D2 03 SUB 28D3 81 DUP2 28D4 60 PUSH1 0x00 28D6 87 DUP8 28D7 80 DUP1 28D8 3B EXTCODESIZE 28D9 15 ISZERO 28DA 80 DUP1 28DB 15 ISZERO 28DC 61 PUSH2 0x28e4 28DF 57 *JUMPI // Stack delta = +12 // Outputs[15] // { // @2896 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0xdd62ed3e00000000000000000000000000000000000000000000000000000000 // @289C memory[memory[0x40:0x60] + 0x04:memory[0x40:0x60] + 0x04 + 0x20] = address(this) // @28B9 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = 0xffffffffffffffffffffffffffffffffffffffff & stack[-2] // @28BB stack[0] = stack[-3] // @28BE stack[1] = 0x00 // @28C1 stack[2] = stack[-3] & 0xffffffffffffffffffffffffffffffffffffffff // @28C7 stack[3] = 0xdd62ed3e // @28CA stack[4] = 0x44 + memory[0x40:0x60] // @28CB stack[5] = 0x20 // @28CF stack[6] = memory[0x40:0x60] // @28D2 stack[7] = (0x44 + memory[0x40:0x60]) - memory[0x40:0x60] // @28D3 stack[8] = memory[0x40:0x60] // @28D4 stack[9] = 0x00 // @28D6 stack[10] = stack[-3] & 0xffffffffffffffffffffffffffffffffffffffff // @28D9 stack[11] = !address(stack[-3] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // } // Block ends with conditional jump to 0x28e4, if !!address(stack[-3] & 0xffffffffffffffffffffffffffffffffffffffff).code.length label_28E0: // Incoming jump from 0x28DF, if not !!address(stack[-3] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Inputs[1] { @28E3 memory[0x00:0x00] } 28E0 60 PUSH1 0x00 28E2 80 DUP1 28E3 FD *REVERT // Stack delta = +0 // Outputs[1] { @28E3 revert(memory[0x00:0x00]); } // Block terminates label_28E4: // Incoming jump from 0x28DF, if !!address(stack[-3] & 0xffffffffffffffffffffffffffffffffffffffff).code.length // Inputs[9] // { // @28E6 msg.gas // @28E7 stack[-7] // @28E7 stack[-5] // @28E7 stack[-3] // @28E7 stack[-6] // @28E7 stack[-2] // @28E7 address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // @28E7 stack[-4] // @28E7 memory[stack[-4]:stack[-4] + stack[-5]] // } 28E4 5B JUMPDEST 28E5 50 POP 28E6 5A GAS 28E7 F1 CALL 28E8 15 ISZERO 28E9 80 DUP1 28EA 15 ISZERO 28EB 61 PUSH2 0x28f8 28EE 57 *JUMPI // Stack delta = -6 // Outputs[2] // { // @28E7 memory[stack[-6]:stack[-6] + stack[-7]] = address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // @28E8 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 0x28f8, if !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) label_28EF: // Incoming jump from 0x28EE, if not !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // Inputs[4] // { // @28EF returndata.length // @28F3 returndata[0x00:0x00 + returndata.length] // @28F4 returndata.length // @28F7 memory[0x00:0x00 + returndata.length] // } 28EF 3D RETURNDATASIZE 28F0 60 PUSH1 0x00 28F2 80 DUP1 28F3 3E RETURNDATACOPY 28F4 3D RETURNDATASIZE 28F5 60 PUSH1 0x00 28F7 FD *REVERT // Stack delta = +0 // Outputs[2] // { // @28F3 memory[0x00:0x00 + returndata.length] = returndata[0x00:0x00 + returndata.length] // @28F7 revert(memory[0x00:0x00 + returndata.length]); // } // Block terminates label_28F8: // Incoming jump from 0x28EE, if !!address(stack[-2]).call.gas(msg.gas).value(stack[-3])(memory[stack[-4]:stack[-4] + stack[-5]]) // Inputs[2] // { // @28FF memory[0x40:0x60] // @2900 returndata.length // } 28F8 5B JUMPDEST 28F9 50 POP 28FA 50 POP 28FB 50 POP 28FC 50 POP 28FD 60 PUSH1 0x40 28FF 51 MLOAD 2900 3D RETURNDATASIZE 2901 60 PUSH1 0x1f 2903 19 NOT 2904 60 PUSH1 0x1f 2906 82 DUP3 2907 01 ADD 2908 16 AND 2909 82 DUP3 290A 01 ADD 290B 80 DUP1 290C 60 PUSH1 0x40 290E 52 MSTORE 290F 50 POP 2910 81 DUP2 2911 01 ADD 2912 90 SWAP1 2913 61 PUSH2 0x291c 2916 91 SWAP2 2917 90 SWAP1 2918 61 PUSH2 0x47e3 291B 56 *JUMP // Stack delta = -1 // Outputs[4] // { // @290E memory[0x40:0x60] = memory[0x40:0x60] + (returndata.length + 0x1f & ~0x1f) // @2916 stack[-4] = 0x291c // @2917 stack[-2] = memory[0x40:0x60] // @2917 stack[-3] = memory[0x40:0x60] + returndata.length // } // Block ends with call to 0x47e3, returns to 0x291C label_291C: // Incoming return from call to 0x47E3 at 0x291B // Inputs[3] // { // @291D stack[-1] // @291D stack[-2] // @291F stack[-4] // } 291C 5B JUMPDEST 291D 90 SWAP1 291E 50 POP 291F 82 DUP3 2920 81 DUP2 2921 10 LT 2922 15 ISZERO 2923 61 PUSH2 0x04a8 2926 57 *JUMPI // Stack delta = -1 // Outputs[1] { @291D stack[-2] = stack[-1] } // Block ends with conditional jump to 0x04a8, if !(stack[-1] < stack[-4]) label_2927: // Incoming jump from 0x2926, if not !(stack[-1] < stack[-4]) // Inputs[1] { @2927 stack[-1] } 2927 80 DUP1 2928 15 ISZERO 2929 61 PUSH2 0x2938 292C 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x2938, if !stack[-1] label_292D: // Incoming jump from 0x292C, if not !stack[-1] // Inputs[2] // { // @2930 stack[-2] // @2931 stack[-4] // } 292D 61 PUSH2 0x2938 2930 82 DUP3 2931 85 DUP6 2932 60 PUSH1 0x00 2934 61 PUSH2 0x2c80 2937 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @292D stack[0] = 0x2938 // @2930 stack[1] = stack[-2] // @2931 stack[2] = stack[-4] // @2932 stack[3] = 0x00 // } // Block ends with unconditional jump to 0x2c80 label_2938: // Incoming jump from 0x292C, if !stack[-1] // Inputs[3] // { // @293C stack[-2] // @293D stack[-4] // @2941 stack[-3] // } 2938 5B JUMPDEST 2939 61 PUSH2 0x04a8 293C 82 DUP3 293D 85 DUP6 293E 61 PUSH2 0x2949 2941 86 DUP7 2942 61 PUSH2 0x03e8 2945 61 PUSH2 0x54ff 2948 56 *JUMP // Stack delta = +6 // Outputs[6] // { // @2939 stack[0] = 0x04a8 // @293C stack[1] = stack[-2] // @293D stack[2] = stack[-4] // @293E stack[3] = 0x2949 // @2941 stack[4] = stack[-3] // @2942 stack[5] = 0x03e8 // } // Block ends with call to 0x54ff, returns to 0x2949 label_2949: // Incoming return from call to 0x54FF at 0x2948 2949 5B JUMPDEST 294A 61 PUSH2 0x2c80 294D 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x2c80 label_294E: // Incoming jump from 0x1652 // Inputs[7] // { // @2952 memory[0x40:0x60] // @2967 msg.data.length // @2969 msg.data[msg.data.length:msg.data.length + 0x20] // @2970 stack[-1] // @2974 stack[-2] // @2976 memory[stack[-2] + 0x20 * stack[-1]:stack[-2] + 0x20 * stack[-1] + 0x20] // @297C stack[-3] // } 294E 5B JUMPDEST 294F 60 PUSH1 0x40 2951 80 DUP1 2952 51 MLOAD 2953 60 PUSH1 0x20 2955 80 DUP1 2956 82 DUP3 2957 52 MSTORE 2958 81 DUP2 2959 83 DUP4 295A 01 ADD 295B 90 SWAP1 295C 92 SWAP3 295D 52 MSTORE 295E 60 PUSH1 0x60 2960 91 SWAP2 2961 60 PUSH1 0x20 2963 82 DUP3 2964 01 ADD 2965 81 DUP2 2966 80 DUP1 2967 36 CALLDATASIZE 2968 83 DUP4 2969 37 CALLDATACOPY 296A 01 ADD 296B 90 SWAP1 296C 50 POP 296D 50 POP 296E 90 SWAP1 296F 50 POP 2970 81 DUP2 2971 60 PUSH1 0x20 2973 02 MUL 2974 83 DUP4 2975 01 ADD 2976 51 MLOAD 2977 60 PUSH1 0x20 2979 82 DUP3 297A 01 ADD 297B 52 MSTORE 297C 92 SWAP3 297D 91 SWAP2 297E 50 POP 297F 50 POP 2980 56 *JUMP // Stack delta = -2 // Outputs[5] // { // @2957 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x20 // @295D memory[0x40:0x60] = 0x40 + memory[0x40:0x60] // @2969 memory[memory[0x40:0x60] + 0x20:memory[0x40:0x60] + 0x20 + 0x20] = msg.data[msg.data.length:msg.data.length + 0x20] // @297B memory[memory[0x40:0x60] + 0x20:memory[0x40:0x60] + 0x20 + 0x20] = memory[stack[-2] + 0x20 * stack[-1]:stack[-2] + 0x20 * stack[-1] + 0x20] // @297C stack[-3] = memory[0x40:0x60] // } // Block ends with unconditional jump to stack[-3] 2981 5B JUMPDEST 2982 60 PUSH1 0x00 2984 80 DUP1 2985 83 DUP4 2986 90 SWAP1 2987 50 POP 2988 60 PUSH1 0x00 298A 81 DUP2 298B 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 29A0 16 AND 29A1 63 PUSH4 0x295c39a5 29A6 60 PUSH1 0x40 29A8 51 MLOAD 29A9 81 DUP2 29AA 63 PUSH4 0xffffffff 29AF 16 AND 29B0 60 PUSH1 0xe0 29B2 1B SHL 29B3 81 DUP2 29B4 52 MSTORE 29B5 60 PUSH1 0x04 29B7 01 ADD 29B8 60 PUSH1 0x20 29BA 60 PUSH1 0x40 29BC 51 MLOAD 29BD 80 DUP1 29BE 83 DUP4 29BF 03 SUB 29C0 81 DUP2 29C1 86 DUP7 29C2 80 DUP1 29C3 3B EXTCODESIZE 29C4 15 ISZERO 29C5 80 DUP1 29C6 15 ISZERO 29C7 61 PUSH2 0x29cf 29CA 57 *JUMPI 29CB 60 PUSH1 0x00 29CD 80 DUP1 29CE FD *REVERT 29CF 5B JUMPDEST 29D0 50 POP 29D1 5A GAS 29D2 FA STATICCALL 29D3 15 ISZERO 29D4 80 DUP1 29D5 15 ISZERO 29D6 61 PUSH2 0x29e3 29D9 57 *JUMPI 29DA 3D RETURNDATASIZE 29DB 60 PUSH1 0x00 29DD 80 DUP1 29DE 3E RETURNDATACOPY 29DF 3D RETURNDATASIZE 29E0 60 PUSH1 0x00 29E2 FD *REVERT 29E3 5B JUMPDEST 29E4 50 POP 29E5 50 POP 29E6 50 POP 29E7 50 POP 29E8 60 PUSH1 0x40 29EA 51 MLOAD 29EB 3D RETURNDATASIZE 29EC 60 PUSH1 0x1f 29EE 19 NOT 29EF 60 PUSH1 0x1f 29F1 82 DUP3 29F2 01 ADD 29F3 16 AND 29F4 82 DUP3 29F5 01 ADD 29F6 80 DUP1 29F7 60 PUSH1 0x40 29F9 52 MSTORE 29FA 50 POP 29FB 81 DUP2 29FC 01 ADD 29FD 90 SWAP1 29FE 61 PUSH2 0x2a07 2A01 91 SWAP2 2A02 90 SWAP1 2A03 61 PUSH2 0x47e3 2A06 56 *JUMP 2A07 5B JUMPDEST 2A08 90 SWAP1 2A09 50 POP 2A0A 60 PUSH1 0x00 2A0C 80 DUP1 2A0D 5B JUMPDEST 2A0E 82 DUP3 2A0F 81 DUP2 2A10 10 LT 2A11 15 ISZERO 2A12 61 PUSH2 0x2b06 2A15 57 *JUMPI 2A16 60 PUSH1 0x40 2A18 51 MLOAD 2A19 7F PUSH32 0x062bd3e900000000000000000000000000000000000000000000000000000000 2A3A 81 DUP2 2A3B 52 MSTORE 2A3C 60 PUSH1 0x04 2A3E 81 DUP2 2A3F 01 ADD 2A40 82 DUP3 2A41 90 SWAP1 2A42 52 MSTORE 2A43 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2A58 85 DUP6 2A59 16 AND 2A5A 90 SWAP1 2A5B 63 PUSH4 0x062bd3e9 2A60 90 SWAP1 2A61 60 PUSH1 0x24 2A63 01 ADD 2A64 60 PUSH1 0x20 2A66 60 PUSH1 0x40 2A68 51 MLOAD 2A69 80 DUP1 2A6A 83 DUP4 2A6B 03 SUB 2A6C 81 DUP2 2A6D 86 DUP7 2A6E 80 DUP1 2A6F 3B EXTCODESIZE 2A70 15 ISZERO 2A71 80 DUP1 2A72 15 ISZERO 2A73 61 PUSH2 0x2a7b 2A76 57 *JUMPI 2A77 60 PUSH1 0x00 2A79 80 DUP1 2A7A FD *REVERT 2A7B 5B JUMPDEST 2A7C 50 POP 2A7D 5A GAS 2A7E FA STATICCALL 2A7F 15 ISZERO 2A80 80 DUP1 2A81 15 ISZERO 2A82 61 PUSH2 0x2a8f 2A85 57 *JUMPI 2A86 3D RETURNDATASIZE 2A87 60 PUSH1 0x00 2A89 80 DUP1 2A8A 3E RETURNDATACOPY 2A8B 3D RETURNDATASIZE 2A8C 60 PUSH1 0x00 2A8E FD *REVERT 2A8F 5B JUMPDEST 2A90 50 POP 2A91 50 POP 2A92 50 POP 2A93 50 POP 2A94 60 PUSH1 0x40 2A96 51 MLOAD 2A97 3D RETURNDATASIZE 2A98 60 PUSH1 0x1f 2A9A 19 NOT 2A9B 60 PUSH1 0x1f 2A9D 82 DUP3 2A9E 01 ADD 2A9F 16 AND 2AA0 82 DUP3 2AA1 01 ADD 2AA2 80 DUP1 2AA3 60 PUSH1 0x40 2AA5 52 MSTORE 2AA6 50 POP 2AA7 81 DUP2 2AA8 01 ADD 2AA9 90 SWAP1 2AAA 61 PUSH2 0x2ab3 2AAD 91 SWAP2 2AAE 90 SWAP1 2AAF 61 PUSH2 0x3b87 2AB2 56 *JUMP 2AB3 5B JUMPDEST 2AB4 91 SWAP2 2AB5 50 POP 2AB6 85 DUP6 2AB7 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2ACC 16 AND 2ACD 82 DUP3 2ACE 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2AE3 16 AND 2AE4 14 EQ 2AE5 15 ISZERO 2AE6 61 PUSH2 0x2af4 2AE9 57 *JUMPI 2AEA 93 SWAP4 2AEB 50 POP 2AEC 61 PUSH2 0x1dec 2AEF 92 SWAP3 2AF0 50 POP 2AF1 50 POP 2AF2 50 POP 2AF3 56 *JUMP 2AF4 5B JUMPDEST 2AF5 80 DUP1 2AF6 61 PUSH2 0x2afe 2AF9 81 DUP2 2AFA 61 PUSH2 0x5598 2AFD 56 *JUMP 2AFE 5B JUMPDEST 2AFF 91 SWAP2 2B00 50 POP 2B01 50 POP 2B02 61 PUSH2 0x2a0d 2B05 56 *JUMP 2B06 5B JUMPDEST 2B07 50 POP 2B08 60 PUSH1 0x00 2B0A 80 DUP1 2B0B FD *REVERT 2B0C 5B JUMPDEST 2B0D 61 PUSH2 0x2b14 2B10 61 PUSH2 0x2f64 2B13 56 *JUMP 2B14 5B JUMPDEST 2B15 60 PUSH1 0x00 2B17 60 PUSH1 0x20 2B19 82 DUP3 2B1A 01 ADD 2B1B 81 DUP2 2B1C 90 SWAP1 2B1D 52 MSTORE 2B1E 30 ADDRESS 2B1F 60 PUSH1 0xa0 2B21 83 DUP4 2B22 01 ADD 2B23 52 MSTORE 2B24 60 PUSH1 0xc0 2B26 82 DUP3 2B27 01 ADD 2B28 81 DUP2 2B29 90 SWAP1 2B2A 52 MSTORE 2B2B 60 PUSH1 0x80 2B2D 82 DUP3 2B2E 01 ADD 2B2F 52 MSTORE 2B30 60 PUSH1 0x01 2B32 85 DUP6 2B33 60 PUSH1 0x08 2B35 81 DUP2 2B36 11 GT 2B37 15 ISZERO 2B38 61 PUSH2 0x2b51 2B3B 57 *JUMPI 2B3C 63 PUSH4 0x4e487b71 2B41 60 PUSH1 0xe0 2B43 1B SHL 2B44 60 PUSH1 0x00 2B46 52 MSTORE 2B47 60 PUSH1 0x21 2B49 60 PUSH1 0x04 2B4B 52 MSTORE 2B4C 60 PUSH1 0x24 2B4E 60 PUSH1 0x00 2B50 FD *REVERT 2B51 5B JUMPDEST 2B52 14 EQ 2B53 15 ISZERO 2B54 61 PUSH2 0x2ba2 2B57 57 *JUMPI 2B58 60 PUSH1 0x01 2B5A 81 DUP2 2B5B 52 MSTORE 2B5C 60 PUSH1 0x40 2B5E 80 DUP1 2B5F 51 MLOAD 2B60 60 PUSH1 0x80 2B62 81 DUP2 2B63 01 ADD 2B64 82 DUP3 2B65 52 MSTORE 2B66 60 PUSH1 0x00 2B68 80 DUP1 2B69 82 DUP3 2B6A 52 MSTORE 2B6B 60 PUSH1 0x20 2B6D 80 DUP1 2B6E 83 DUP4 2B6F 01 ADD 2B70 82 DUP3 2B71 90 SWAP1 2B72 52 MSTORE 2B73 82 DUP3 2B74 84 DUP5 2B75 01 ADD 2B76 82 DUP3 2B77 90 SWAP1 2B78 52 MSTORE 2B79 60 PUSH1 0x60 2B7B 80 DUP1 2B7C 84 DUP5 2B7D 01 ADD 2B7E 87 DUP8 2B7F 90 SWAP1 2B80 52 MSTORE 2B81 84 DUP5 2B82 86 DUP7 2B83 01 ADD 2B84 93 SWAP4 2B85 90 SWAP1 2B86 93 SWAP4 2B87 52 MSTORE 2B88 91 SWAP2 2B89 84 DUP5 2B8A 01 ADD 2B8B 86 DUP7 2B8C 90 SWAP1 2B8D 52 MSTORE 2B8E 82 DUP3 2B8F 51 MLOAD 2B90 91 SWAP2 2B91 82 DUP3 2B92 01 ADD 2B93 90 SWAP1 2B94 92 SWAP3 2B95 52 MSTORE 2B96 90 SWAP1 2B97 81 DUP2 2B98 52 MSTORE 2B99 60 PUSH1 0xe0 2B9B 82 DUP3 2B9C 01 ADD 2B9D 52 MSTORE 2B9E 61 PUSH2 0x2c78 2BA1 56 *JUMP 2BA2 5B JUMPDEST 2BA3 60 PUSH1 0x08 2BA5 85 DUP6 2BA6 60 PUSH1 0x08 2BA8 81 DUP2 2BA9 11 GT 2BAA 15 ISZERO 2BAB 61 PUSH2 0x2bc4 2BAE 57 *JUMPI 2BAF 63 PUSH4 0x4e487b71 2BB4 60 PUSH1 0xe0 2BB6 1B SHL 2BB7 60 PUSH1 0x00 2BB9 52 MSTORE 2BBA 60 PUSH1 0x21 2BBC 60 PUSH1 0x04 2BBE 52 MSTORE 2BBF 60 PUSH1 0x24 2BC1 60 PUSH1 0x00 2BC3 FD *REVERT 2BC4 5B JUMPDEST 2BC5 14 EQ 2BC6 15 ISZERO 2BC7 61 PUSH2 0x2c09 2BCA 57 *JUMPI 2BCB 60 PUSH1 0x08 2BCD 81 DUP2 2BCE 52 MSTORE 2BCF 60 PUSH1 0x40 2BD1 80 DUP1 2BD2 51 MLOAD 2BD3 60 PUSH1 0x80 2BD5 81 DUP2 2BD6 01 ADD 2BD7 82 DUP3 2BD8 52 MSTORE 2BD9 60 PUSH1 0x00 2BDB 80 DUP1 2BDC 82 DUP3 2BDD 52 MSTORE 2BDE 60 PUSH1 0x20 2BE0 82 DUP3 2BE1 01 ADD 2BE2 81 DUP2 2BE3 90 SWAP1 2BE4 52 MSTORE 2BE5 81 DUP2 2BE6 83 DUP4 2BE7 01 ADD 2BE8 81 DUP2 2BE9 90 SWAP1 2BEA 52 MSTORE 2BEB 60 PUSH1 0x60 2BED 80 DUP1 2BEE 83 DUP4 2BEF 01 ADD 2BF0 82 DUP3 2BF1 90 SWAP1 2BF2 52 MSTORE 2BF3 92 SWAP3 2BF4 84 DUP5 2BF5 01 ADD 2BF6 91 SWAP2 2BF7 90 SWAP1 2BF8 91 SWAP2 2BF9 52 MSTORE 2BFA 90 SWAP1 2BFB 82 DUP3 2BFC 01 ADD 2BFD 52 MSTORE 2BFE 60 PUSH1 0xe0 2C00 81 DUP2 2C01 01 ADD 2C02 84 DUP5 2C03 90 SWAP1 2C04 52 MSTORE 2C05 61 PUSH2 0x2c78 2C08 56 *JUMP 2C09 5B JUMPDEST 2C0A 60 PUSH1 0x00 2C0C 85 DUP6 2C0D 60 PUSH1 0x08 2C0F 81 DUP2 2C10 11 GT 2C11 15 ISZERO 2C12 61 PUSH2 0x2c2b 2C15 57 *JUMPI 2C16 63 PUSH4 0x4e487b71 2C1B 60 PUSH1 0xe0 2C1D 1B SHL 2C1E 60 PUSH1 0x00 2C20 52 MSTORE 2C21 60 PUSH1 0x21 2C23 60 PUSH1 0x04 2C25 52 MSTORE 2C26 60 PUSH1 0x24 2C28 60 PUSH1 0x00 2C2A FD *REVERT 2C2B 5B JUMPDEST 2C2C 14 EQ 2C2D 15 ISZERO 2C2E 61 PUSH2 0x2c78 2C31 57 *JUMPI 2C32 60 PUSH1 0x00 2C34 80 DUP1 2C35 82 DUP3 2C36 52 MSTORE 2C37 60 PUSH1 0x40 2C39 80 DUP1 2C3A 51 MLOAD 2C3B 60 PUSH1 0x80 2C3D 81 DUP2 2C3E 01 ADD 2C3F 82 DUP3 2C40 52 MSTORE 2C41 60 PUSH1 0x01 2C43 81 DUP2 2C44 52 MSTORE 2C45 60 PUSH1 0x20 2C47 80 DUP1 2C48 82 DUP3 2C49 01 ADD 2C4A 84 DUP5 2C4B 90 SWAP1 2C4C 52 MSTORE 2C4D 81 DUP2 2C4E 83 DUP4 2C4F 01 ADD 2C50 84 DUP5 2C51 90 SWAP1 2C52 52 MSTORE 2C53 60 PUSH1 0x60 2C55 80 DUP1 2C56 83 DUP4 2C57 01 ADD 2C58 87 DUP8 2C59 90 SWAP1 2C5A 52 MSTORE 2C5B 83 DUP4 2C5C 86 DUP7 2C5D 01 ADD 2C5E 92 SWAP3 2C5F 90 SWAP1 2C60 92 SWAP3 2C61 52 MSTORE 2C62 90 SWAP1 2C63 84 DUP5 2C64 01 ADD 2C65 86 DUP7 2C66 90 SWAP1 2C67 52 MSTORE 2C68 81 DUP2 2C69 51 MLOAD 2C6A 90 SWAP1 2C6B 81 DUP2 2C6C 01 ADD 2C6D 90 SWAP1 2C6E 91 SWAP2 2C6F 52 MSTORE 2C70 90 SWAP1 2C71 81 DUP2 2C72 52 MSTORE 2C73 60 PUSH1 0xe0 2C75 82 DUP3 2C76 01 ADD 2C77 52 MSTORE label_2C78: // Incoming return from call to 0x34A1 at 0x4213 // Incoming return from call to 0x3879 at 0x46E0 // Incoming return from call to 0x36BB at 0x467A // Incoming return from call to 0x3A5E at 0x4746 // Incoming return from call to 0x3668 at 0x4647 // Inputs[3] // { // @2C79 stack[-1] // @2C79 stack[-6] // @2C7A stack[-5] // } 2C78 5B JUMPDEST 2C79 94 SWAP5 2C7A 93 SWAP4 2C7B 50 POP 2C7C 50 POP 2C7D 50 POP 2C7E 50 POP 2C7F 56 *JUMP // Stack delta = -5 // Outputs[1] { @2C79 stack[-6] = stack[-1] } // Block ends with unconditional jump to stack[-6] label_2C80: // Incoming jump from 0x2937 // Incoming jump from 0x294D // Inputs[6] // { // @2C84 memory[0x40:0x60] // @2C9A stack[-2] // @2CA6 stack[-1] // @2CAA memory[0x40:0x60] // @2CC0 memory[memory[0x40:0x60] + 0x20:memory[0x40:0x60] + 0x20 + 0x20] // @2D07 stack[-3] // } 2C80 5B JUMPDEST 2C81 60 PUSH1 0x40 2C83 80 DUP1 2C84 51 MLOAD 2C85 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2C9A 84 DUP5 2C9B 16 AND 2C9C 60 PUSH1 0x24 2C9E 82 DUP3 2C9F 01 ADD 2CA0 52 MSTORE 2CA1 60 PUSH1 0x44 2CA3 80 DUP1 2CA4 82 DUP3 2CA5 01 ADD 2CA6 84 DUP5 2CA7 90 SWAP1 2CA8 52 MSTORE 2CA9 82 DUP3 2CAA 51 MLOAD 2CAB 80 DUP1 2CAC 83 DUP4 2CAD 03 SUB 2CAE 90 SWAP1 2CAF 91 SWAP2 2CB0 01 ADD 2CB1 81 DUP2 2CB2 52 MSTORE 2CB3 60 PUSH1 0x64 2CB5 90 SWAP1 2CB6 91 SWAP2 2CB7 01 ADD 2CB8 90 SWAP1 2CB9 91 SWAP2 2CBA 52 MSTORE 2CBB 60 PUSH1 0x20 2CBD 81 DUP2 2CBE 01 ADD 2CBF 80 DUP1 2CC0 51 MLOAD 2CC1 7B PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 2CDE 16 AND 2CDF 7F PUSH32 0x095ea7b300000000000000000000000000000000000000000000000000000000 2D00 17 OR 2D01 90 SWAP1 2D02 52 MSTORE 2D03 61 PUSH2 0x2d0d 2D06 90 SWAP1 2D07 84 DUP5 2D08 90 SWAP1 2D09 61 PUSH2 0x2d12 2D0C 56 *JUMP // Stack delta = +3 // Outputs[8] // { // @2CA0 memory[memory[0x40:0x60] + 0x24:memory[0x40:0x60] + 0x24 + 0x20] = stack[-2] & 0xffffffffffffffffffffffffffffffffffffffff // @2CA8 memory[memory[0x40:0x60] + 0x44:memory[0x40:0x60] + 0x44 + 0x20] = stack[-1] // @2CB2 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x44 + (memory[0x40:0x60] - memory[0x40:0x60]) // @2CBA memory[0x40:0x60] = memory[0x40:0x60] + 0x64 // @2D02 memory[memory[0x40:0x60] + 0x20:memory[0x40:0x60] + 0x20 + 0x20] = 0x095ea7b300000000000000000000000000000000000000000000000000000000 | (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff & memory[memory[0x40:0x60] + 0x20:memory[0x40:0x60] + 0x20 + 0x20]) // @2D06 stack[0] = 0x2d0d // @2D08 stack[1] = stack[-3] // @2D08 stack[2] = memory[0x40:0x60] // } // Block ends with unconditional jump to 0x2d12 2D0D 5B JUMPDEST 2D0E 50 POP 2D0F 50 POP 2D10 50 POP 2D11 56 *JUMP label_2D12: // Incoming jump from 0x2D0C // Inputs[3] // { // @2D18 stack[-2] // @2D19 stack[-1] // @2D1C memory[0x40:0x60] // } 2D12 5B JUMPDEST 2D13 60 PUSH1 0x00 2D15 61 PUSH2 0x2d2e 2D18 83 DUP4 2D19 83 DUP4 2D1A 60 PUSH1 0x40 2D1C 51 MLOAD 2D1D 80 DUP1 2D1E 60 PUSH1 0x20 2D20 01 ADD 2D21 60 PUSH1 0x40 2D23 52 MSTORE 2D24 80 DUP1 2D25 60 PUSH1 0x00 2D27 81 DUP2 2D28 52 MSTORE 2D29 50 POP 2D2A 61 PUSH2 0x2d55 2D2D 56 *JUMP // Stack delta = +5 // Outputs[7] // { // @2D13 stack[0] = 0x00 // @2D15 stack[1] = 0x2d2e // @2D18 stack[2] = stack[-2] // @2D19 stack[3] = stack[-1] // @2D1C stack[4] = memory[0x40:0x60] // @2D23 memory[0x40:0x60] = 0x20 + memory[0x40:0x60] // @2D28 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x00 // } // Block ends with unconditional jump to 0x2d55 2D2E 5B JUMPDEST 2D2F 80 DUP1 2D30 51 MLOAD 2D31 90 SWAP1 2D32 91 SWAP2 2D33 50 POP 2D34 15 ISZERO 2D35 61 PUSH2 0x2d0d 2D38 57 *JUMPI 2D39 80 DUP1 2D3A 80 DUP1 2D3B 60 PUSH1 0x20 2D3D 01 ADD 2D3E 90 SWAP1 2D3F 51 MLOAD 2D40 81 DUP2 2D41 01 ADD 2D42 90 SWAP1 2D43 61 PUSH2 0x2d4c 2D46 91 SWAP2 2D47 90 SWAP1 2D48 61 PUSH2 0x3da8 2D4B 56 *JUMP 2D4C 5B JUMPDEST 2D4D 61 PUSH2 0x2d0d 2D50 57 *JUMPI 2D51 60 PUSH1 0x00 2D53 80 DUP1 2D54 FD *REVERT label_2D55: // Incoming jump from 0x2D2D // Inputs[3] // { // @2D5B stack[-3] // @2D5C stack[-2] // @2D5F stack[-1] // } 2D55 5B JUMPDEST 2D56 60 PUSH1 0x60 2D58 61 PUSH2 0x2d64 2D5B 84 DUP5 2D5C 84 DUP5 2D5D 60 PUSH1 0x00 2D5F 85 DUP6 2D60 61 PUSH2 0x2d6e 2D63 56 *JUMP // Stack delta = +6 // Outputs[6] // { // @2D56 stack[0] = 0x60 // @2D58 stack[1] = 0x2d64 // @2D5B stack[2] = stack[-3] // @2D5C stack[3] = stack[-2] // @2D5D stack[4] = 0x00 // @2D5F stack[5] = stack[-1] // } // Block ends with call to 0x2d6e, returns to 0x2D64 label_2D64: // Incoming return from call to 0x2D6E at 0x2D63 // Inputs[2] // { // @2D65 stack[-2] // @2D65 stack[-1] // } 2D64 5B JUMPDEST 2D65 90 SWAP1 2D66 50 POP // Stack delta = -1 // Outputs[1] { @2D65 stack[-2] = stack[-1] } // Block continues label_2D67: // Incoming return from call to 0x484E at 0x4D25 // Incoming jump from 0x2D66 // Incoming return from call to 0x567E at 0x3DA7 // Incoming return from call to 0x3B1E at 0x4794 // Incoming return from call to 0x565C at 0x3BA2 // Incoming return from call to 0x3590 at 0x439C // Incoming return from call to 0x3470 at 0x403B // Incoming return from call to 0x2FE4 at 0x31E3 // Inputs[3] // { // @2D68 stack[-1] // @2D68 stack[-5] // @2D69 stack[-4] // } 2D67 5B JUMPDEST 2D68 93 SWAP4 2D69 92 SWAP3 2D6A 50 POP 2D6B 50 POP 2D6C 50 POP 2D6D 56 *JUMP // Stack delta = -4 // Outputs[1] { @2D68 stack[-5] = stack[-1] } // Block ends with unconditional jump to stack[-5] label_2D6E: // Incoming call from 0x2D63, returns to 0x2D64 // Inputs[3] // { // @2D71 stack[-2] // @2D72 address(this) // @2D72 address(this).balance // } 2D6E 5B JUMPDEST 2D6F 60 PUSH1 0x60 2D71 82 DUP3 2D72 47 SELFBALANCE 2D73 10 LT 2D74 15 ISZERO 2D75 61 PUSH2 0x2d7d 2D78 57 *JUMPI // Stack delta = +1 // Outputs[1] { @2D6F stack[0] = 0x60 } // Block ends with conditional jump to 0x2d7d, if !(address(this).balance < stack[-2]) label_2D79: // Incoming jump from 0x2D78, if not !(address(this).balance < stack[-2]) // Inputs[1] { @2D7C memory[0x00:0x00] } 2D79 60 PUSH1 0x00 2D7B 80 DUP1 2D7C FD *REVERT // Stack delta = +0 // Outputs[1] { @2D7C revert(memory[0x00:0x00]); } // Block terminates label_2D7D: // Incoming jump from 0x2D78, if !(address(this).balance < stack[-2]) // Inputs[2] // { // @2D7E stack[-5] // @2D7F address(stack[-5]).code.length // } 2D7D 5B JUMPDEST 2D7E 84 DUP5 2D7F 3B EXTCODESIZE 2D80 61 PUSH2 0x2d88 2D83 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x2d88, if address(stack[-5]).code.length label_2D84: // Incoming jump from 0x2D83, if not address(stack[-5]).code.length // Inputs[1] { @2D87 memory[0x00:0x00] } 2D84 60 PUSH1 0x00 2D86 80 DUP1 2D87 FD *REVERT // Stack delta = +0 // Outputs[1] { @2D87 revert(memory[0x00:0x00]); } // Block terminates label_2D88: // Incoming jump from 0x2D83, if address(stack[-5]).code.length // Inputs[4] // { // @2D8C stack[-5] // @2DA3 stack[-3] // @2DA4 stack[-4] // @2DA7 memory[0x40:0x60] // } 2D88 5B JUMPDEST 2D89 60 PUSH1 0x00 2D8B 80 DUP1 2D8C 86 DUP7 2D8D 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2DA2 16 AND 2DA3 85 DUP6 2DA4 87 DUP8 2DA5 60 PUSH1 0x40 2DA7 51 MLOAD 2DA8 61 PUSH2 0x2db1 2DAB 91 SWAP2 2DAC 90 SWAP1 2DAD 61 PUSH2 0x4b1f 2DB0 56 *JUMP // Stack delta = +7 // Outputs[7] // { // @2D89 stack[0] = 0x00 // @2D8B stack[1] = 0x00 // @2DA2 stack[2] = 0xffffffffffffffffffffffffffffffffffffffff & stack[-5] // @2DA3 stack[3] = stack[-3] // @2DAB stack[4] = 0x2db1 // @2DAC stack[5] = stack[-4] // @2DAC stack[6] = memory[0x40:0x60] // } // Block ends with call to 0x4b1f, returns to 0x2DB1 label_2DB1: // Incoming return from call to 0x4B1F at 0x2DB0 // Inputs[8] // { // @2DB6 memory[0x40:0x60] // @2DB8 stack[-1] // @2DBB stack[-2] // @2DBC stack[-3] // @2DBD msg.gas // @2DBE memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]] // @2DBE address(stack[-3]).call.gas(msg.gas).value(stack[-2])(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) // @2DC3 returndata.length // } 2DB1 5B JUMPDEST 2DB2 60 PUSH1 0x00 2DB4 60 PUSH1 0x40 2DB6 51 MLOAD 2DB7 80 DUP1 2DB8 83 DUP4 2DB9 03 SUB 2DBA 81 DUP2 2DBB 85 DUP6 2DBC 87 DUP8 2DBD 5A GAS 2DBE F1 CALL 2DBF 92 SWAP3 2DC0 50 POP 2DC1 50 POP 2DC2 50 POP 2DC3 3D RETURNDATASIZE 2DC4 80 DUP1 2DC5 60 PUSH1 0x00 2DC7 81 DUP2 2DC8 14 EQ 2DC9 61 PUSH2 0x2dee 2DCC 57 *JUMPI // Stack delta = +0 // Outputs[4] // { // @2DBE memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00] = address(stack[-3]).call.gas(msg.gas).value(stack[-2])(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) // @2DBF stack[-3] = address(stack[-3]).call.gas(msg.gas).value(stack[-2])(memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]) // @2DC3 stack[-2] = returndata.length // @2DC4 stack[-1] = returndata.length // } // Block ends with conditional jump to 0x2dee, if returndata.length == 0x00 label_2DCD: // Incoming jump from 0x2DCC, if not returndata.length == 0x00 // Inputs[6] // { // @2DCF memory[0x40:0x60] // @2DD0 stack[-2] // @2DD7 returndata.length // @2DDF returndata.length // @2DE2 returndata.length // @2DE9 returndata[0x00:0x00 + returndata.length] // } 2DCD 60 PUSH1 0x40 2DCF 51 MLOAD 2DD0 91 SWAP2 2DD1 50 POP 2DD2 60 PUSH1 0x1f 2DD4 19 NOT 2DD5 60 PUSH1 0x3f 2DD7 3D RETURNDATASIZE 2DD8 01 ADD 2DD9 16 AND 2DDA 82 DUP3 2DDB 01 ADD 2DDC 60 PUSH1 0x40 2DDE 52 MSTORE 2DDF 3D RETURNDATASIZE 2DE0 82 DUP3 2DE1 52 MSTORE 2DE2 3D RETURNDATASIZE 2DE3 60 PUSH1 0x00 2DE5 60 PUSH1 0x20 2DE7 84 DUP5 2DE8 01 ADD 2DE9 3E RETURNDATACOPY 2DEA 61 PUSH2 0x2df3 2DED 56 *JUMP // Stack delta = +0 // Outputs[4] // { // @2DD0 stack[-2] = memory[0x40:0x60] // @2DDE memory[0x40:0x60] = memory[0x40:0x60] + (returndata.length + 0x3f & ~0x1f) // @2DE1 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = returndata.length // @2DE9 memory[memory[0x40:0x60] + 0x20:memory[0x40:0x60] + 0x20 + returndata.length] = returndata[0x00:0x00 + returndata.length] // } // Block ends with unconditional jump to 0x2df3 label_2DEE: // Incoming jump from 0x2DCC, if returndata.length == 0x00 // Inputs[5] // { // @2DF1 stack[-2] // @2DF5 stack[-4] // @2DF7 stack[-5] // @2DF7 stack[-3] // @2DFE stack[-7] // } 2DEE 5B JUMPDEST 2DEF 60 PUSH1 0x60 2DF1 91 SWAP2 2DF2 50 POP 2DF3 5B JUMPDEST 2DF4 50 POP 2DF5 91 SWAP2 2DF6 50 POP 2DF7 91 SWAP2 2DF8 50 POP 2DF9 61 PUSH2 0x2e03 2DFC 82 DUP3 2DFD 82 DUP3 2DFE 86 DUP7 2DFF 61 PUSH2 0x2e0e 2E02 56 *JUMP // Stack delta = +1 // Outputs[6] // { // @2DF5 stack[-4] = 0x60 // @2DF7 stack[-5] = stack[-3] // @2DF9 stack[-3] = 0x2e03 // @2DFC stack[-2] = stack[-3] // @2DFD stack[-1] = 0x60 // @2DFE stack[0] = stack[-7] // } // Block ends with call to 0x2e0e, returns to 0x2E03 label_2E03: // Incoming return from call to 0x2E0E at 0x2E02 // Incoming return from call to 0x2E0E at 0x2E02 // Inputs[3] // { // @2E04 stack[-9] // @2E04 stack[-1] // @2E05 stack[-8] // } 2E03 5B JUMPDEST 2E04 97 SWAP8 2E05 96 SWAP7 2E06 50 POP 2E07 50 POP 2E08 50 POP 2E09 50 POP 2E0A 50 POP 2E0B 50 POP 2E0C 50 POP 2E0D 56 *JUMP // Stack delta = -8 // Outputs[1] { @2E04 stack[-9] = stack[-1] } // Block ends with unconditional jump to stack[-9] label_2E0E: // Incoming call from 0x2E02, returns to 0x2E03 // Incoming call from 0x2E02, returns to 0x2E03 // Inputs[1] { @2E11 stack[-3] } 2E0E 5B JUMPDEST 2E0F 60 PUSH1 0x60 2E11 83 DUP4 2E12 61 PUSH2 0x2e59 2E15 57 *JUMPI // Stack delta = +1 // Outputs[1] { @2E0F stack[0] = 0x60 } // Block ends with conditional jump to 0x2e59, if stack[-3] label_2E16: // Incoming jump from 0x2E15, if not stack[-3] // Inputs[2] // { // @2E16 stack[-3] // @2E17 memory[stack[-3]:stack[-3] + 0x20] // } 2E16 82 DUP3 2E17 51 MLOAD 2E18 15 ISZERO 2E19 61 PUSH2 0x2e25 2E1C 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x2e25, if !memory[stack[-3]:stack[-3] + 0x20] label_2E1D: // Incoming jump from 0x2E1C, if not !memory[stack[-3]:stack[-3] + 0x20] // Inputs[3] // { // @2E1D stack[-3] // @2E1E memory[stack[-3]:stack[-3] + 0x20] // @2E24 memory[0x20 + stack[-3]:0x20 + stack[-3] + memory[stack[-3]:stack[-3] + 0x20]] // } 2E1D 82 DUP3 2E1E 51 MLOAD 2E1F 80 DUP1 2E20 84 DUP5 2E21 60 PUSH1 0x20 2E23 01 ADD 2E24 FD *REVERT // Stack delta = +1 // Outputs[2] // { // @2E1E stack[0] = memory[stack[-3]:stack[-3] + 0x20] // @2E24 revert(memory[0x20 + stack[-3]:0x20 + stack[-3] + memory[stack[-3]:stack[-3] + 0x20]]); // } // Block terminates label_2E25: // Incoming jump from 0x2E1C, if !memory[stack[-3]:stack[-3] + 0x20] // Inputs[2] // { // @2E26 stack[-2] // @2E29 memory[0x40:0x60] // } 2E25 5B JUMPDEST 2E26 81 DUP2 2E27 60 PUSH1 0x40 2E29 51 MLOAD 2E2A 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 2E4B 81 DUP2 2E4C 52 MSTORE 2E4D 60 PUSH1 0x04 2E4F 01 ADD 2E50 61 PUSH2 0x16cc 2E53 91 SWAP2 2E54 90 SWAP1 2E55 61 PUSH2 0x4d13 2E58 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @2E4C memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000 // @2E53 stack[0] = 0x16cc // @2E54 stack[1] = stack[-2] // @2E54 stack[2] = 0x04 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x4d13 label_2E59: // Incoming jump from 0x2E15, if stack[-3] // Inputs[4] // { // @2E5B stack[-2] // @2E5B stack[-3] // @2E5C stack[-5] // @2E5D stack[-4] // } 2E59 5B JUMPDEST 2E5A 50 POP 2E5B 90 SWAP1 2E5C 92 SWAP3 2E5D 91 SWAP2 2E5E 50 POP 2E5F 50 POP 2E60 56 *JUMP // Stack delta = -4 // Outputs[1] { @2E5C stack[-5] = stack[-3] } // Block ends with unconditional jump to stack[-5] 2E61 5B JUMPDEST 2E62 60 PUSH1 0x40 2E64 80 DUP1 2E65 51 MLOAD 2E66 60 PUSH1 0xa0 2E68 81 DUP2 2E69 01 ADD 2E6A 82 DUP3 2E6B 52 MSTORE 2E6C 60 PUSH1 0x00 2E6E 91 SWAP2 2E6F 81 DUP2 2E70 01 ADD 2E71 91 SWAP2 2E72 82 DUP3 2E73 52 MSTORE 2E74 60 PUSH1 0x60 2E76 80 DUP1 2E77 82 DUP3 2E78 01 ADD 2E79 81 DUP2 2E7A 90 SWAP1 2E7B 52 MSTORE 2E7C 60 PUSH1 0x80 2E7E 82 DUP3 2E7F 01 ADD 2E80 52 MSTORE 2E81 90 SWAP1 2E82 81 DUP2 2E83 90 SWAP1 2E84 5B JUMPDEST 2E85 81 DUP2 2E86 52 MSTORE 2E87 60 PUSH1 0x20 2E89 01 ADD 2E8A 60 PUSH1 0x00 2E8C 81 DUP2 2E8D 52 MSTORE 2E8E 50 POP 2E8F 90 SWAP1 2E90 56 *JUMP 2E91 5B JUMPDEST 2E92 60 PUSH1 0x40 2E94 51 MLOAD 2E95 80 DUP1 2E96 60 PUSH1 0x40 2E98 01 ADD 2E99 60 PUSH1 0x40 2E9B 52 MSTORE 2E9C 80 DUP1 2E9D 60 PUSH1 0x00 2E9F 81 DUP2 2EA0 52 MSTORE 2EA1 60 PUSH1 0x20 2EA3 01 ADD 2EA4 61 PUSH2 0x2ec0 2EA7 60 PUSH1 0x40 2EA9 51 MLOAD 2EAA 80 DUP1 2EAB 60 PUSH1 0x40 2EAD 01 ADD 2EAE 60 PUSH1 0x40 2EB0 52 MSTORE 2EB1 80 DUP1 2EB2 60 PUSH1 0x00 2EB4 81 DUP2 2EB5 52 MSTORE 2EB6 60 PUSH1 0x20 2EB8 01 ADD 2EB9 60 PUSH1 0x60 2EBB 81 DUP2 2EBC 52 MSTORE 2EBD 50 POP 2EBE 90 SWAP1 2EBF 56 *JUMP 2EC0 5B JUMPDEST 2EC1 90 SWAP1 2EC2 52 MSTORE 2EC3 90 SWAP1 2EC4 56 *JUMP 2EC5 5B JUMPDEST 2EC6 60 PUSH1 0x40 2EC8 51 MLOAD 2EC9 80 DUP1 2ECA 60 PUSH1 0x40 2ECC 01 ADD 2ECD 60 PUSH1 0x40 2ECF 52 MSTORE 2ED0 80 DUP1 2ED1 60 PUSH1 0x60 2ED3 81 DUP2 2ED4 52 MSTORE 2ED5 60 PUSH1 0x20 2ED7 01 ADD 2ED8 61 PUSH2 0x2ec0 2EDB 60 PUSH1 0x40 2EDD 51 MLOAD 2EDE 80 DUP1 2EDF 60 PUSH1 0x60 2EE1 01 ADD 2EE2 60 PUSH1 0x40 2EE4 52 MSTORE 2EE5 80 DUP1 2EE6 60 PUSH1 0x00 2EE8 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2EFD 16 AND 2EFE 81 DUP2 2EFF 52 MSTORE 2F00 60 PUSH1 0x20 2F02 01 ADD 2F03 60 PUSH1 0x60 2F05 81 DUP2 2F06 52 MSTORE 2F07 60 PUSH1 0x20 2F09 01 ADD 2F0A 60 PUSH1 0x60 2F0C 81 DUP2 2F0D 52 MSTORE 2F0E 50 POP 2F0F 90 SWAP1 2F10 56 *JUMP 2F11 5B JUMPDEST 2F12 60 PUSH1 0x40 2F14 80 DUP1 2F15 51 MLOAD 2F16 60 PUSH1 0xa0 2F18 81 DUP2 2F19 01 ADD 2F1A 82 DUP3 2F1B 52 MSTORE 2F1C 60 PUSH1 0x00 2F1E 60 PUSH1 0x60 2F20 80 DUP1 2F21 83 DUP4 2F22 01 ADD 2F23 82 DUP3 2F24 81 DUP2 2F25 52 MSTORE 2F26 60 PUSH1 0x80 2F28 84 DUP5 2F29 01 ADD 2F2A 83 DUP4 2F2B 90 SWAP1 2F2C 52 MSTORE 2F2D 83 DUP4 2F2E 52 MSTORE 2F2F 83 DUP4 2F30 51 MLOAD 2F31 80 DUP1 2F32 85 DUP6 2F33 01 ADD 2F34 85 DUP6 2F35 52 MSTORE 2F36 82 DUP3 2F37 81 DUP2 2F38 52 MSTORE 2F39 60 PUSH1 0x20 2F3B 80 DUP1 2F3C 82 DUP3 2F3D 01 ADD 2F3E 84 DUP5 2F3F 90 SWAP1 2F40 52 MSTORE 2F41 80 DUP1 2F42 85 DUP6 2F43 01 ADD 2F44 91 SWAP2 2F45 90 SWAP1 2F46 91 SWAP2 2F47 52 MSTORE 2F48 84 DUP5 2F49 51 MLOAD 2F4A 80 DUP1 2F4B 83 DUP4 2F4C 01 ADD 2F4D 86 DUP7 2F4E 52 MSTORE 2F4F 92 SWAP3 2F50 83 DUP4 2F51 52 MSTORE 2F52 82 DUP3 2F53 01 ADD 2F54 81 DUP2 2F55 90 SWAP1 2F56 52 MSTORE 2F57 81 DUP2 2F58 84 DUP5 2F59 01 ADD 2F5A 52 MSTORE 2F5B 90 SWAP1 2F5C 91 SWAP2 2F5D 82 DUP3 2F5E 01 ADD 2F5F 90 SWAP1 2F60 61 PUSH2 0x2ec0 2F63 56 *JUMP 2F64 5B JUMPDEST 2F65 60 PUSH1 0x40 2F67 80 DUP1 2F68 51 MLOAD 2F69 61 PUSH2 0x0100 2F6C 81 DUP2 2F6D 01 ADD 2F6E 82 DUP3 2F6F 52 MSTORE 2F70 60 PUSH1 0x00 2F72 80 DUP1 2F73 82 DUP3 2F74 52 MSTORE 2F75 60 PUSH1 0x20 2F77 82 DUP3 2F78 01 ADD 2F79 52 MSTORE 2F7A 90 SWAP1 2F7B 81 DUP2 2F7C 01 ADD 2F7D 61 PUSH2 0x2f84 2F80 61 PUSH2 0x2fc3 2F83 56 *JUMP 2F84 5B JUMPDEST 2F85 81 DUP2 2F86 52 MSTORE 2F87 60 PUSH1 0x20 2F89 01 ADD 2F8A 60 PUSH1 0x00 2F8C 81 DUP2 2F8D 52 MSTORE 2F8E 60 PUSH1 0x20 2F90 01 ADD 2F91 60 PUSH1 0x00 2F93 81 DUP2 2F94 52 MSTORE 2F95 60 PUSH1 0x20 2F97 01 ADD 2F98 60 PUSH1 0x00 2F9A 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff 2FAF 16 AND 2FB0 81 DUP2 2FB1 52 MSTORE 2FB2 60 PUSH1 0x20 2FB4 01 ADD 2FB5 60 PUSH1 0x00 2FB7 81 DUP2 2FB8 52 MSTORE 2FB9 60 PUSH1 0x20 2FBB 01 ADD 2FBC 60 PUSH1 0x60 2FBE 81 DUP2 2FBF 52 MSTORE 2FC0 50 POP 2FC1 90 SWAP1 2FC2 56 *JUMP 2FC3 5B JUMPDEST 2FC4 60 PUSH1 0x40 2FC6 80 DUP1 2FC7 51 MLOAD 2FC8 60 PUSH1 0x80 2FCA 81 DUP2 2FCB 01 ADD 2FCC 90 SWAP1 2FCD 91 SWAP2 2FCE 52 MSTORE 2FCF 60 PUSH1 0x00 2FD1 80 DUP1 2FD2 82 DUP3 2FD3 52 MSTORE 2FD4 60 PUSH1 0x20 2FD6 82 DUP3 2FD7 01 ADD 2FD8 90 SWAP1 2FD9 81 DUP2 2FDA 52 MSTORE 2FDB 60 PUSH1 0x20 2FDD 01 ADD 2FDE 60 PUSH1 0x00 2FE0 61 PUSH2 0x2e84 2FE3 56 *JUMP label_2FE4: // Incoming call from 0x31E3, returns to 0x2D67 // Inputs[1] { @2FED stack[-2] } 2FE4 5B JUMPDEST 2FE5 60 PUSH1 0x00 2FE7 61 PUSH2 0x2ff7 2FEA 61 PUSH2 0x2ff2 2FED 84 DUP5 2FEE 61 PUSH2 0x5349 2FF1 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @2FE5 stack[0] = 0x00 // @2FE7 stack[1] = 0x2ff7 // @2FEA stack[2] = 0x2ff2 // @2FED stack[3] = stack[-2] // } // Block ends with call to 0x5349, returns to 0x2FF2 label_2FF2: // Incoming return from call to 0x5349 at 0x353E // Incoming return from call to 0x5349 at 0x3203 // Incoming return from call to 0x5349 at 0x3904 // Incoming return from call to 0x5349 at 0x3062 // Incoming return from call to 0x5349 at 0x3713 // Incoming return from call to 0x536D at 0x3383 // Incoming return from call to 0x5349 at 0x2FF1 // Incoming return from call to 0x5349 at 0x40AD 2FF2 5B JUMPDEST 2FF3 61 PUSH2 0x5318 2FF6 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x5318 label_2FF7: // Incoming return from call to 0x2FF2 at 0x2FF1 // Inputs[4] // { // @2FF8 stack[-4] // @2FF9 stack[-1] // @2FFB stack[-2] // @3003 stack[-3] // } 2FF7 5B JUMPDEST 2FF8 83 DUP4 2FF9 81 DUP2 2FFA 52 MSTORE 2FFB 90 SWAP1 2FFC 50 POP 2FFD 60 PUSH1 0x20 2FFF 80 DUP1 3000 82 DUP3 3001 01 ADD 3002 90 SWAP1 3003 83 DUP4 3004 60 PUSH1 0x00 3006 5B JUMPDEST 3007 86 DUP7 3008 81 DUP2 3009 10 LT 300A 15 ISZERO 300B 61 PUSH2 0x302d 300E 57 *JUMPI // Stack delta = +3 // Outputs[6] // { // @2FFA memory[stack[-1]:stack[-1] + 0x20] = stack[-4] // @2FFB stack[-2] = stack[-1] // @3002 stack[-1] = stack[-1] + 0x20 // @3002 stack[0] = 0x20 // @3003 stack[1] = stack[-3] // @3004 stack[2] = 0x00 // } // Block ends with conditional jump to 0x302d, if !(0x00 < stack[-4]) label_300F: // Incoming jump from 0x300E, if not !(0x00 < stack[-4]) // Inputs[4] // { // @3012 stack[-8] // @3013 stack[-2] // @3014 msg.data[stack[-2]:stack[-2] + 0x20] // @3015 stack[-6] // } 300F 61 PUSH2 0x301b 3012 88 DUP9 3013 83 DUP4 3014 35 CALLDATALOAD 3015 88 DUP9 3016 01 ADD 3017 61 PUSH2 0x3ab1 301A 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @300F stack[0] = 0x301b // @3012 stack[1] = stack[-8] // @3016 stack[2] = stack[-6] + msg.data[stack[-2]:stack[-2] + 0x20] // } // Block ends with unconditional jump to 0x3ab1 301B 5B JUMPDEST 301C 84 DUP5 301D 52 MSTORE 301E 92 SWAP3 301F 82 DUP3 3020 01 ADD 3021 92 SWAP3 3022 90 SWAP1 3023 82 DUP3 3024 01 ADD 3025 90 SWAP1 3026 60 PUSH1 0x01 3028 01 ADD 3029 61 PUSH2 0x3006 302C 56 *JUMP label_302D: // Incoming jump from 0x300E, if !(0x00 < stack[-4]) // Inputs[3] // { // @3032 stack[-5] // @3032 stack[-9] // @3033 stack[-8] // } 302D 5B JUMPDEST 302E 50 POP 302F 50 POP 3030 50 POP 3031 50 POP 3032 93 SWAP4 3033 92 SWAP3 3034 50 POP 3035 50 POP 3036 50 POP 3037 56 *JUMP // Stack delta = -8 // Outputs[1] { @3032 stack[-9] = stack[-5] } // Block ends with unconditional jump to stack[-9] label_3038: // Incoming jump from 0x433B // Inputs[2] // { // @3039 stack[-1] // @303A msg.data[stack[-1]:stack[-1] + 0x20] // } 3038 5B JUMPDEST 3039 80 DUP1 303A 35 CALLDATALOAD 303B 61 PUSH2 0x0496 303E 81 DUP2 303F 61 PUSH2 0x565c 3042 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @303A stack[0] = msg.data[stack[-1]:stack[-1] + 0x20] // @303B stack[1] = 0x0496 // @303E stack[2] = msg.data[stack[-1]:stack[-1] + 0x20] // } // Block ends with call to 0x565c, returns to 0x0496 label_3043: // Incoming call from 0x4105, returns to 0x4106 // Inputs[2] // { // @3046 stack[-2] // @3049 stack[-1] // } 3043 5B JUMPDEST 3044 60 PUSH1 0x00 3046 82 DUP3 3047 60 PUSH1 0x1f 3049 83 DUP4 304A 01 ADD 304B 12 SLT 304C 61 PUSH2 0x3053 304F 57 *JUMPI // Stack delta = +1 // Outputs[1] { @3044 stack[0] = 0x00 } // Block ends with conditional jump to 0x3053, if stack[-1] + 0x1f i< stack[-2] label_3050: // Incoming jump from 0x304F, if not stack[-1] + 0x1f i< stack[-2] // Inputs[2] // { // @3050 stack[-1] // @3052 memory[stack[-1]:stack[-1] + stack[-1]] // } 3050 80 DUP1 3051 81 DUP2 3052 FD *REVERT // Stack delta = +0 // Outputs[1] { @3052 revert(memory[stack[-1]:stack[-1] + stack[-1]]); } // Block terminates label_3053: // Incoming jump from 0x304F, if stack[-1] + 0x1f i< stack[-2] // Inputs[2] // { // @3054 stack[-2] // @3055 msg.data[stack[-2]:stack[-2] + 0x20] // } 3053 5B JUMPDEST 3054 81 DUP2 3055 35 CALLDATALOAD 3056 60 PUSH1 0x20 3058 61 PUSH2 0x3063 305B 61 PUSH2 0x2ff2 305E 83 DUP4 305F 61 PUSH2 0x5349 3062 56 *JUMP // Stack delta = +5 // Outputs[5] // { // @3055 stack[0] = msg.data[stack[-2]:stack[-2] + 0x20] // @3056 stack[1] = 0x20 // @3058 stack[2] = 0x3063 // @305B stack[3] = 0x2ff2 // @305E stack[4] = msg.data[stack[-2]:stack[-2] + 0x20] // } // Block ends with call to 0x5349, returns to 0x2FF2 label_3063: // Incoming return from call to 0x2FF2 at 0x3062 // Inputs[5] // { // @3064 stack[-3] // @3065 stack[-1] // @3067 stack[-2] // @306B stack[-5] // @306E stack[-4] // } 3063 5B JUMPDEST 3064 82 DUP3 3065 81 DUP2 3066 52 MSTORE 3067 81 DUP2 3068 81 DUP2 3069 01 ADD 306A 90 SWAP1 306B 85 DUP6 306C 83 DUP4 306D 01 ADD 306E 85 DUP6 306F 5B JUMPDEST 3070 85 DUP6 3071 81 DUP2 3072 10 LT 3073 15 ISZERO 3074 61 PUSH2 0x3098 3077 57 *JUMPI // Stack delta = +3 // Outputs[5] // { // @3066 memory[stack[-1]:stack[-1] + 0x20] = stack[-3] // @306A stack[0] = stack[-1] // @306A stack[-1] = stack[-1] + stack[-2] // @306D stack[1] = stack[-2] + stack[-5] // @306E stack[2] = stack[-4] // } // Block ends with conditional jump to 0x3098, if !(stack[-4] < stack[-3]) label_3078: // Incoming jump from 0x3077, if not !(stack[-1] < stack[-6]) // Incoming jump from 0x3077, if not !(stack[-4] < stack[-3]) // Inputs[5] // { // @307B stack[-9] // @307C stack[-5] // @307D stack[-2] // @307E msg.data[stack[-2]:stack[-2] + 0x20] // @307F stack[-8] // } 3078 61 PUSH2 0x3086 307B 89 DUP10 307C 86 DUP7 307D 84 DUP5 307E 35 CALLDATALOAD 307F 8B DUP12 3080 01 ADD 3081 01 ADD 3082 61 PUSH2 0x34a1 3085 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @3078 stack[0] = 0x3086 // @307B stack[1] = stack[-9] // @3081 stack[2] = stack[-8] + msg.data[stack[-2]:stack[-2] + 0x20] + stack[-5] // } // Block ends with call to 0x34a1, returns to 0x3086 label_3086: // Incoming return from call to 0x34A1 at 0x3085 // Inputs[5] // { // @3087 stack[-5] // @3088 stack[-1] // @3089 stack[-2] // @308A stack[-6] // @308D stack[-3] // } 3086 5B JUMPDEST 3087 84 DUP5 3088 52 MSTORE 3089 92 SWAP3 308A 84 DUP5 308B 01 ADD 308C 92 SWAP3 308D 90 SWAP1 308E 84 DUP5 308F 01 ADD 3090 90 SWAP1 3091 60 PUSH1 0x01 3093 01 ADD 3094 61 PUSH2 0x306f 3097 56 *JUMP // Stack delta = -1 // Outputs[4] // { // @3088 memory[stack[-5]:stack[-5] + 0x20] = stack[-1] // @308C stack[-5] = stack[-6] + stack[-5] // @3090 stack[-3] = stack[-6] + stack[-3] // @3093 stack[-2] = 0x01 + stack[-2] // } // Block ends with unconditional jump to 0x306f label_3098: // Incoming jump from 0x3218, if !(stack[-4] < stack[-3]) // Incoming jump from 0x3077, if !(stack[-1] < stack[-6]) // Incoming jump from 0x3077, if !(stack[-4] < stack[-3]) // Inputs[4] // { // @309A stack[-2] // @309A stack[-3] // @309B stack[-10] // @309C stack[-9] // } 3098 5B JUMPDEST 3099 50 POP 309A 90 SWAP1 309B 97 SWAP8 309C 96 SWAP7 309D 50 POP 309E 50 POP 309F 50 POP 30A0 50 POP 30A1 50 POP 30A2 50 POP 30A3 50 POP 30A4 56 *JUMP // Stack delta = -9 // Outputs[1] { @309B stack[-10] = stack[-3] } // Block ends with unconditional jump to stack[-10] 30A5 5B JUMPDEST 30A6 60 PUSH1 0x00 30A8 82 DUP3 30A9 60 PUSH1 0x1f 30AB 83 DUP4 30AC 01 ADD 30AD 12 SLT 30AE 61 PUSH2 0x30b5 30B1 57 *JUMPI 30B2 80 DUP1 30B3 81 DUP2 30B4 FD *REVERT 30B5 5B JUMPDEST 30B6 81 DUP2 30B7 51 MLOAD 30B8 60 PUSH1 0x20 30BA 61 PUSH2 0x30c5 30BD 61 PUSH2 0x2ff2 30C0 83 DUP4 30C1 61 PUSH2 0x5349 30C4 56 *JUMP 30C5 5B JUMPDEST 30C6 82 DUP3 30C7 81 DUP2 30C8 52 MSTORE 30C9 81 DUP2 30CA 81 DUP2 30CB 01 ADD 30CC 90 SWAP1 30CD 85 DUP6 30CE 83 DUP4 30CF 01 ADD 30D0 85 DUP6 30D1 5B JUMPDEST 30D2 85 DUP6 30D3 81 DUP2 30D4 10 LT 30D5 15 ISZERO 30D6 61 PUSH2 0x3098 30D9 57 *JUMPI 30DA 81 DUP2 30DB 51 MLOAD 30DC 88 DUP9 30DD 01 ADD 30DE 60 PUSH1 0xa0 30E0 80 DUP1 30E1 60 PUSH1 0x1f 30E3 19 NOT 30E4 83 DUP4 30E5 8D DUP14 30E6 03 SUB 30E7 01 ADD 30E8 12 SLT 30E9 15 ISZERO 30EA 61 PUSH2 0x30f1 30ED 57 *JUMPI 30EE 88 DUP9 30EF 89 DUP10 30F0 FD *REVERT 30F1 5B JUMPDEST 30F2 61 PUSH2 0x30fa 30F5 81 DUP2 30F6 61 PUSH2 0x5318 30F9 56 *JUMP 30FA 5B JUMPDEST 30FB 87 DUP8 30FC 83 DUP4 30FD 01 ADD 30FE 51 MLOAD 30FF 61 PUSH2 0x3107 3102 81 DUP2 3103 61 PUSH2 0x567e 3106 56 *JUMP 3107 5B JUMPDEST 3108 81 DUP2 3109 52 MSTORE 310A 60 PUSH1 0x40 310C 83 DUP4 310D 81 DUP2 310E 01 ADD 310F 51 MLOAD 3110 89 DUP10 3111 83 DUP4 3112 01 ADD 3113 52 MSTORE 3114 60 PUSH1 0x60 3116 84 DUP5 3117 01 ADD 3118 51 MLOAD 3119 90 SWAP1 311A 82 DUP3 311B 01 ADD 311C 52 MSTORE 311D 60 PUSH1 0x80 311F 80 DUP1 3120 84 DUP5 3121 01 ADD 3122 51 MLOAD 3123 67 PUSH8 0xffffffffffffffff 312C 80 DUP1 312D 82 DUP3 312E 11 GT 312F 15 ISZERO 3130 61 PUSH2 0x3137 3133 57 *JUMPI 3134 8C DUP13 3135 8D DUP14 3136 FD *REVERT 3137 5B JUMPDEST 3138 61 PUSH2 0x3145 313B 8F DUP16 313C 8C DUP13 313D 84 DUP5 313E 89 DUP10 313F 01 ADD 3140 01 ADD 3141 61 PUSH2 0x33b2 3144 56 *JUMP 3145 5B JUMPDEST 3146 60 PUSH1 0x60 3148 85 DUP6 3149 01 ADD 314A 52 MSTORE 314B 93 SWAP4 314C 85 DUP6 314D 01 ADD 314E 51 MLOAD 314F 93 SWAP4 3150 80 DUP1 3151 85 DUP6 3152 11 GT 3153 15 ISZERO 3154 61 PUSH2 0x315b 3157 57 *JUMPI 3158 8C DUP13 3159 8D DUP14 315A FD *REVERT 315B 5B JUMPDEST 315C 50 POP 315D 50 POP 315E 61 PUSH2 0x316b 3161 8D DUP14 3162 8A DUP11 3163 85 DUP6 3164 87 DUP8 3165 01 ADD 3166 01 ADD 3167 61 PUSH2 0x32c1 316A 56 *JUMP 316B 5B JUMPDEST 316C 90 SWAP1 316D 82 DUP3 316E 01 ADD 316F 52 MSTORE 3170 86 DUP7 3171 52 MSTORE 3172 50 POP 3173 50 POP 3174 92 SWAP3 3175 84 DUP5 3176 01 ADD 3177 92 SWAP3 3178 90 SWAP1 3179 84 DUP5 317A 01 ADD 317B 90 SWAP1 317C 60 PUSH1 0x01 317E 01 ADD 317F 61 PUSH2 0x30d1 3182 56 *JUMP label_3183: // Incoming call from 0x3D52, returns to 0x3D53 // Incoming call from 0x3D2E, returns to 0x3D2F // Inputs[2] // { // @3187 stack[-2] // @318A stack[-1] // } 3183 5B JUMPDEST 3184 60 PUSH1 0x00 3186 80 DUP1 3187 83 DUP4 3188 60 PUSH1 0x1f 318A 84 DUP5 318B 01 ADD 318C 12 SLT 318D 61 PUSH2 0x3194 3190 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @3184 stack[0] = 0x00 // @3186 stack[1] = 0x00 // } // Block ends with conditional jump to 0x3194, if stack[-1] + 0x1f i< stack[-2] label_3191: // Incoming jump from 0x3190, if not stack[-1] + 0x1f i< stack[-2] // Inputs[2] // { // @3191 stack[-2] // @3193 memory[stack[-2]:stack[-2] + stack[-2]] // } 3191 81 DUP2 3192 82 DUP3 3193 FD *REVERT // Stack delta = +0 // Outputs[1] { @3193 revert(memory[stack[-2]:stack[-2] + stack[-2]]); } // Block terminates label_3194: // Incoming jump from 0x3190, if stack[-1] + 0x1f i< stack[-2] // Inputs[2] // { // @3196 stack[-3] // @3197 msg.data[stack[-3]:stack[-3] + 0x20] // } 3194 5B JUMPDEST 3195 50 POP 3196 81 DUP2 3197 35 CALLDATALOAD 3198 67 PUSH8 0xffffffffffffffff 31A1 81 DUP2 31A2 11 GT 31A3 15 ISZERO 31A4 61 PUSH2 0x31ab 31A7 57 *JUMPI // Stack delta = +0 // Outputs[1] { @3197 stack[-1] = msg.data[stack[-3]:stack[-3] + 0x20] } // Block ends with conditional jump to 0x31ab, if !(msg.data[stack[-3]:stack[-3] + 0x20] > 0xffffffffffffffff) label_31A8: // Incoming jump from 0x31A7, if not !(msg.data[stack[-3]:stack[-3] + 0x20] > 0xffffffffffffffff) // Inputs[2] // { // @31A8 stack[-2] // @31AA memory[stack[-2]:stack[-2] + stack[-2]] // } 31A8 81 DUP2 31A9 82 DUP3 31AA FD *REVERT // Stack delta = +0 // Outputs[1] { @31AA revert(memory[stack[-2]:stack[-2] + stack[-2]]); } // Block terminates label_31AB: // Incoming jump from 0x31A7, if !(msg.data[stack[-3]:stack[-3] + 0x20] > 0xffffffffffffffff) // Inputs[4] // { // @31AE stack[-3] // @31B0 stack[-2] // @31B2 stack[-4] // @31B6 stack[-1] // } 31AB 5B JUMPDEST 31AC 60 PUSH1 0x20 31AE 83 DUP4 31AF 01 ADD 31B0 91 SWAP2 31B1 50 POP 31B2 83 DUP4 31B3 60 PUSH1 0x20 31B5 80 DUP1 31B6 83 DUP4 31B7 02 MUL 31B8 85 DUP6 31B9 01 ADD 31BA 01 ADD 31BB 11 GT 31BC 15 ISZERO 31BD 61 PUSH2 0x1904 31C0 57 *JUMPI // Stack delta = +0 // Outputs[1] { @31B0 stack[-2] = stack[-3] + 0x20 } // Block ends with conditional jump to 0x1904, if !(stack[-3] + stack[-1] * 0x20 + 0x20 > stack[-4]) label_31C1: // Incoming jump from 0x31C0, if not !(stack[-3] + stack[-1] * 0x20 + 0x20 > stack[-4]) // Inputs[1] { @31C4 memory[0x00:0x00] } 31C1 60 PUSH1 0x00 31C3 80 DUP1 31C4 FD *REVERT // Stack delta = +0 // Outputs[1] { @31C4 revert(memory[0x00:0x00]); } // Block terminates label_31C5: // Incoming jump from 0x43FA // Incoming jump from 0x44E4 // Inputs[2] // { // @31C8 stack[-2] // @31CB stack[-1] // } 31C5 5B JUMPDEST 31C6 60 PUSH1 0x00 31C8 82 DUP3 31C9 60 PUSH1 0x1f 31CB 83 DUP4 31CC 01 ADD 31CD 12 SLT 31CE 61 PUSH2 0x31d5 31D1 57 *JUMPI // Stack delta = +1 // Outputs[1] { @31C6 stack[0] = 0x00 } // Block ends with conditional jump to 0x31d5, if stack[-1] + 0x1f i< stack[-2] label_31D2: // Incoming jump from 0x31D1, if not stack[-1] + 0x1f i< stack[-2] // Inputs[2] // { // @31D2 stack[-1] // @31D4 memory[stack[-1]:stack[-1] + stack[-1]] // } 31D2 80 DUP1 31D3 81 DUP2 31D4 FD *REVERT // Stack delta = +0 // Outputs[1] { @31D4 revert(memory[stack[-1]:stack[-1] + stack[-1]]); } // Block terminates label_31D5: // Incoming jump from 0x31D1, if stack[-1] + 0x1f i< stack[-2] // Inputs[3] // { // @31D9 stack[-3] // @31DA stack[-2] // @31DB msg.data[stack[-2]:stack[-2] + 0x20] // } 31D5 5B JUMPDEST 31D6 61 PUSH2 0x2d67 31D9 83 DUP4 31DA 83 DUP4 31DB 35 CALLDATALOAD 31DC 60 PUSH1 0x20 31DE 85 DUP6 31DF 01 ADD 31E0 61 PUSH2 0x2fe4 31E3 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @31D6 stack[0] = 0x2d67 // @31D9 stack[1] = stack[-3] // @31DB stack[2] = msg.data[stack[-2]:stack[-2] + 0x20] // @31DF stack[3] = stack[-2] + 0x20 // } // Block ends with call to 0x2fe4, returns to 0x2D67 label_31E4: // Incoming call from 0x4447, returns to 0x43FB // Incoming call from 0x448C, returns to 0x448D // Inputs[2] // { // @31E7 stack[-2] // @31EA stack[-1] // } 31E4 5B JUMPDEST 31E5 60 PUSH1 0x00 31E7 82 DUP3 31E8 60 PUSH1 0x1f 31EA 83 DUP4 31EB 01 ADD 31EC 12 SLT 31ED 61 PUSH2 0x31f4 31F0 57 *JUMPI // Stack delta = +1 // Outputs[1] { @31E5 stack[0] = 0x00 } // Block ends with conditional jump to 0x31f4, if stack[-1] + 0x1f i< stack[-2] label_31F1: // Incoming jump from 0x31F0, if not stack[-1] + 0x1f i< stack[-2] // Inputs[2] // { // @31F1 stack[-1] // @31F3 memory[stack[-1]:stack[-1] + stack[-1]] // } 31F1 80 DUP1 31F2 81 DUP2 31F3 FD *REVERT // Stack delta = +0 // Outputs[1] { @31F3 revert(memory[stack[-1]:stack[-1] + stack[-1]]); } // Block terminates label_31F4: // Incoming jump from 0x31F0, if stack[-1] + 0x1f i< stack[-2] // Inputs[2] // { // @31F5 stack[-2] // @31F6 memory[stack[-2]:stack[-2] + 0x20] // } 31F4 5B JUMPDEST 31F5 81 DUP2 31F6 51 MLOAD 31F7 60 PUSH1 0x20 31F9 61 PUSH2 0x3204 31FC 61 PUSH2 0x2ff2 31FF 83 DUP4 3200 61 PUSH2 0x5349 3203 56 *JUMP // Stack delta = +5 // Outputs[5] // { // @31F6 stack[0] = memory[stack[-2]:stack[-2] + 0x20] // @31F7 stack[1] = 0x20 // @31F9 stack[2] = 0x3204 // @31FC stack[3] = 0x2ff2 // @31FF stack[4] = memory[stack[-2]:stack[-2] + 0x20] // } // Block ends with call to 0x5349, returns to 0x2FF2 label_3204: // Incoming return from call to 0x2FF2 at 0x3203 // Inputs[5] // { // @3205 stack[-3] // @3206 stack[-1] // @3208 stack[-2] // @320C stack[-5] // @320F stack[-4] // } 3204 5B JUMPDEST 3205 82 DUP3 3206 81 DUP2 3207 52 MSTORE 3208 81 DUP2 3209 81 DUP2 320A 01 ADD 320B 90 SWAP1 320C 85 DUP6 320D 83 DUP4 320E 01 ADD 320F 85 DUP6 3210 5B JUMPDEST 3211 85 DUP6 3212 81 DUP2 3213 10 LT 3214 15 ISZERO 3215 61 PUSH2 0x3098 3218 57 *JUMPI // Stack delta = +3 // Outputs[5] // { // @3207 memory[stack[-1]:stack[-1] + 0x20] = stack[-3] // @320B stack[0] = stack[-1] // @320B stack[-1] = stack[-1] + stack[-2] // @320E stack[1] = stack[-2] + stack[-5] // @320F stack[2] = stack[-4] // } // Block ends with conditional jump to 0x3098, if !(stack[-4] < stack[-3]) label_3219: // Incoming jump from 0x3218, if not !(stack[-4] < stack[-3]) // Inputs[4] // { // @3219 stack[-2] // @321A memory[stack[-2]:stack[-2] + 0x20] // @321B stack[-8] // @3221 stack[-9] // } 3219 81 DUP2 321A 51 MLOAD 321B 88 DUP9 321C 01 ADD 321D 60 PUSH1 0x1f 321F 19 NOT 3220 81 DUP2 3221 8B DUP12 3222 03 SUB 3223 01 ADD 3224 60 PUSH1 0xa0 3226 80 DUP1 3227 82 DUP3 3228 12 SLT 3229 15 ISZERO 322A 61 PUSH2 0x3231 322D 57 *JUMPI // Stack delta = +3 // Outputs[3] // { // @321C stack[0] = stack[-8] + memory[stack[-2]:stack[-2] + 0x20] // @3223 stack[1] = stack[-9] - (stack[-8] + memory[stack[-2]:stack[-2] + 0x20]) + ~0x1f // @3224 stack[2] = 0xa0 // } // Block ends with conditional jump to 0x3231, if !(stack[-9] - (stack[-8] + memory[stack[-2]:stack[-2] + 0x20]) + ~0x1f i< 0xa0) label_322E: // Incoming jump from 0x322D, if not !(stack[-9] - (stack[-8] + memory[stack[-2]:stack[-2] + 0x20]) + ~0x1f i< 0xa0) // Inputs[2] // { // @322E stack[-10] // @3230 memory[stack[-10]:stack[-10] + stack[-10]] // } 322E 89 DUP10 322F 8A DUP11 3230 FD *REVERT // Stack delta = +0 // Outputs[1] { @3230 revert(memory[stack[-10]:stack[-10] + stack[-10]]); } // Block terminates label_3231: // Incoming jump from 0x322D, if !(stack[-9] - (stack[-8] + memory[stack[-2]:stack[-2] + 0x20]) + ~0x1f i< 0xa0) 3231 5B JUMPDEST 3232 60 PUSH1 0x60 3234 61 PUSH2 0x323c 3237 81 DUP2 3238 61 PUSH2 0x5318 323B 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @3232 stack[0] = 0x60 // @3234 stack[1] = 0x323c // @3237 stack[2] = 0x60 // } // Block ends with call to 0x5318, returns to 0x323C label_323C: // Incoming return from call to 0x5318 at 0x323B // Inputs[1] { @3240 stack[-4] } 323C 5B JUMPDEST 323D 60 PUSH1 0x40 323F 80 DUP1 3240 85 DUP6 3241 12 SLT 3242 15 ISZERO 3243 61 PUSH2 0x324a 3246 57 *JUMPI // Stack delta = +1 // Outputs[1] { @323D stack[0] = 0x40 } // Block ends with conditional jump to 0x324a, if !(stack[-4] i< 0x40) label_3247: // Incoming jump from 0x3246, if not !(stack[-4] i< 0x40) // Inputs[2] // { // @3247 stack[-13] // @3249 memory[stack[-13]:stack[-13] + stack[-13]] // } 3247 8C DUP13 3248 8D DUP14 3249 FD *REVERT // Stack delta = +0 // Outputs[1] { @3249 revert(memory[stack[-13]:stack[-13] + stack[-13]]); } // Block terminates label_324A: // Incoming jump from 0x3246, if !(stack[-4] i< 0x40) // Inputs[1] { @324E stack[-1] } 324A 5B JUMPDEST 324B 61 PUSH2 0x3253 324E 81 DUP2 324F 61 PUSH2 0x5318 3252 56 *JUMP // Stack delta = +2 // Outputs[2] // { // @324B stack[0] = 0x3253 // @324E stack[1] = stack[-1] // } // Block ends with call to 0x5318, returns to 0x3253 label_3253: // Incoming return from call to 0x5318 at 0x3252 // Inputs[7] // { // @3254 stack[-1] // @3254 stack[-6] // @3256 stack[-12] // @3257 stack[-7] // @3259 memory[stack[-7] + stack[-12]:stack[-7] + stack[-12] + 0x20] // @325C stack[-2] // @325F memory[stack[-7] + stack[-2]:stack[-7] + stack[-2] + 0x20] // } 3253 5B JUMPDEST 3254 94 SWAP5 3255 50 POP 3256 8A DUP11 3257 86 DUP7 3258 01 ADD 3259 51 MLOAD 325A 85 DUP6 325B 52 MSTORE 325C 80 DUP1 325D 86 DUP7 325E 01 ADD 325F 51 MLOAD 3260 61 PUSH2 0x3268 3263 81 DUP2 3264 61 PUSH2 0x565c 3267 56 *JUMP // Stack delta = +2 // Outputs[5] // { // @3254 stack[-6] = stack[-1] // @325B memory[stack[-1]:stack[-1] + 0x20] = memory[stack[-7] + stack[-12]:stack[-7] + stack[-12] + 0x20] // @325F stack[-1] = memory[stack[-7] + stack[-2]:stack[-7] + stack[-2] + 0x20] // @3260 stack[0] = 0x3268 // @3263 stack[1] = memory[stack[-7] + stack[-2]:stack[-7] + stack[-2] + 0x20] // } // Block ends with call to 0x565c, returns to 0x3268 label_3268: // Incoming return from call to 0x565C at 0x3267 // Inputs[7] // { // @3269 stack[-6] // @326A stack[-12] // @326C stack[-1] // @326E stack[-3] // @3273 stack[-16] // @3274 stack[-7] // @3275 stack[-4] // } 3268 5B JUMPDEST 3269 85 DUP6 326A 8C DUP13 326B 01 ADD 326C 52 MSTORE 326D 84 DUP5 326E 82 DUP3 326F 52 MSTORE 3270 61 PUSH2 0x327b 3273 8F DUP16 3274 87 DUP8 3275 85 DUP6 3276 01 ADD 3277 61 PUSH2 0x3438 327A 56 *JUMP // Stack delta = +2 // Outputs[5] // { // @326C memory[stack[-12] + stack[-6]:stack[-12] + stack[-6] + 0x20] = stack[-1] // @326F memory[stack[-3]:stack[-3] + 0x20] = stack[-6] // @3270 stack[-1] = 0x327b // @3273 stack[0] = stack[-16] // @3276 stack[1] = stack[-4] + stack[-7] // } // Block ends with unconditional jump to 0x3438 327B 5B JUMPDEST 327C 8B DUP12 327D 83 DUP4 327E 01 ADD 327F 52 MSTORE 3280 83 DUP4 3281 86 DUP7 3282 01 ADD 3283 51 MLOAD 3284 94 SWAP5 3285 50 POP 3286 67 PUSH8 0xffffffffffffffff 328F 85 DUP6 3290 11 GT 3291 15 ISZERO 3292 61 PUSH2 0x3299 3295 57 *JUMPI 3296 8C DUP13 3297 8D DUP14 3298 FD *REVERT 3299 5B JUMPDEST 329A 61 PUSH2 0x32a7 329D 8F DUP16 329E 8C DUP13 329F 87 DUP8 32A0 89 DUP10 32A1 01 ADD 32A2 01 ADD 32A3 61 PUSH2 0x395f 32A6 56 *JUMP 32A7 5B JUMPDEST 32A8 90 SWAP1 32A9 82 DUP3 32AA 01 ADD 32AB 52 MSTORE 32AC 88 DUP9 32AD 52 MSTORE 32AE 50 POP 32AF 50 POP 32B0 50 POP 32B1 93 SWAP4 32B2 85 DUP6 32B3 01 ADD 32B4 93 SWAP4 32B5 50 POP 32B6 90 SWAP1 32B7 84 DUP5 32B8 01 ADD 32B9 90 SWAP1 32BA 60 PUSH1 0x01 32BC 01 ADD 32BD 61 PUSH2 0x3210 32C0 56 *JUMP 32C1 5B JUMPDEST 32C2 60 PUSH1 0x00 32C4 82 DUP3 32C5 60 PUSH1 0x1f 32C7 83 DUP4 32C8 01 ADD 32C9 12 SLT 32CA 61 PUSH2 0x32d1 32CD 57 *JUMPI 32CE 80 DUP1 32CF 81 DUP2 32D0 FD *REVERT 32D1 5B JUMPDEST 32D2 81 DUP2 32D3 51 MLOAD 32D4 60 PUSH1 0x20 32D6 61 PUSH2 0x32e1 32D9 61 PUSH2 0x2ff2 32DC 83 DUP4 32DD 61 PUSH2 0x5349 32E0 56 *JUMP 32E1 5B JUMPDEST 32E2 82 DUP3 32E3 81 DUP2 32E4 52 MSTORE 32E5 81 DUP2 32E6 81 DUP2 32E7 01 ADD 32E8 90 SWAP1 32E9 85 DUP6 32EA 83 DUP4 32EB 01 ADD 32EC 83 DUP4 32ED 85 DUP6 32EE 02 MUL 32EF 87 DUP8 32F0 01 ADD 32F1 84 DUP5 32F2 01 ADD 32F3 88 DUP9 32F4 10 LT 32F5 15 ISZERO 32F6 61 PUSH2 0x32fd 32F9 57 *JUMPI 32FA 85 DUP6 32FB 86 DUP7 32FC FD *REVERT 32FD 5B JUMPDEST 32FE 85 DUP6 32FF 5B JUMPDEST 3300 85 DUP6 3301 81 DUP2