Online Solidity Decompiler

« Decompile another contract

Address

0x60f80121c31a0d46b5279700f9df786054aa5ee5 [etherscan.io | etherchain.org]

Public Methods

Method names cached from 4byte.directory.
0x01ffc9a7 supportsInterface(bytes4)
0x06fdde03 name()
0x081812fc getApproved(uint256)
0x095ea7b3 approve(address,uint256)
0x0ebd4c7f getFeeBps(uint256)
0x18160ddd totalSupply()
0x23b872dd transferFrom(address,address,uint256)
0x2f745c59 tokenOfOwnerByIndex(address,uint256)
0x42842e0e safeTransferFrom(address,address,uint256)
0x42966c68 burn(uint256)
0x4f6ccce7 tokenByIndex(uint256)
0x6308f1cd fees(uint256,uint256)
0x6352211e ownerOf(uint256)
0x672a9400 mint(uint256,uint8,bytes32,bytes32,(address,uint256)[],string)
0x70a08231 balanceOf(address)
0x715018a6 renounceOwnership()
0x8da5cb5b owner()
0x8f32d59b isOwner()
0x938e3d7b setContractURI(string)
0x95d89b41 symbol()
0x99e0dd7c setTokenURIPrefix(string)
0xa22cb465 setApprovalForAll(address,bool)
0xb88d4fde safeTransferFrom(address,address,uint256,bytes)
0xb9c4d9fb getFeeRecipients(uint256)
0xc0ac9983 tokenURIPrefix()
0xc87b56dd tokenURI(uint256)
0xe8a3d485 contractURI()
0xe985e9c5 isApprovedForAll(address,address)
0xf2fde38b transferOwnership(address)

Internal Methods

func_0429(arg0) returns (r0)
func_06DB() returns (r0)
func_06DF(arg0) returns (r0)
renounceOwnership()
func_0A0F() returns (r0)
func_0A1E() returns (r0)
symbol(arg0) returns (r0)
tokenURIPrefix(arg0) returns (r0)
contractURI(arg0) returns (r0)
func_0E5A() returns (r0)
func_1C81(arg0, arg1) returns (r0)
func_1D2D(arg0) returns (r0)
func_1DBB(arg0, arg1) returns (r0)
func_2016(arg0, arg1) returns (r0)
func_215F(arg0, arg1)
func_226C(arg0, arg1)
func_2275(arg0, arg1) returns (r0)
func_2719(arg0) returns (r0)
func_2ACB(arg0, arg1) returns (r0)
func_2CE6(arg0) returns (r0)
func_2D14(arg0) returns (r0)
func_2D18(arg0, arg1) returns (r0)
approve(arg0) returns (r0)
func_2D31(arg0) returns (r0)
func_2D36(arg0) returns (r0)
func_2D43(arg0) returns (r0)
func_2D60(arg0, arg1, arg2)
func_2D6C(arg0, arg1, arg2)
func_2DA9(arg0) returns (r0)
getApproved(arg0)
supportsInterface(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 (0x70a08231 > var0) { if (0x2f745c59 > var0) { if (0x095ea7b3 > var0) { if (var0 == 0x01ffc9a7) { // Dispatch table entry for supportsInterface(bytes4) var var1 = 0x01e7; var var2 = 0x01e2; var var3 = msg.data.length; var var4 = 0x04; var var5 = 0x00; if (var3 - var4 i< 0x20) { revert(memory[0x00:0x00]); } var var6 = 0x00; var var7 = 0x0edb; var var8 = var3; var var9 = var4; var var10 = msg.data[var9:var9 + 0x20]; var var11 = 0x077a; var var12 = var10; supportsInterface(var12); label_077A: var7 = var10; // Error: Could not resolve jump destination! } else if (var0 == 0x06fdde03) { // Dispatch table entry for name() var1 = 0x0205; var2 = func_0429(); label_0205: var temp0 = var2; var2 = 0x01f4; var3 = temp0; var4 = memory[0x40:0x60]; var2 = func_2ACB(var3, var4); var temp1 = memory[0x40:0x60]; return memory[temp1:temp1 + var2 - temp1]; } else if (var0 == 0x081812fc) { // Dispatch table entry for getApproved(uint256) var1 = 0x0225; var2 = 0x0220; var3 = msg.data.length; var4 = 0x04; label_204B: var5 = 0x00; if (var3 - var4 i< 0x20) { revert(memory[0x00:0x00]); } var6 = 0x00; var7 = 0x0edb; var8 = var3; var9 = var4; label_1D9A: var10 = msg.data[var9:var9 + 0x20]; var11 = 0x077a; var12 = var10; getApproved(var12); goto label_077A; } else { revert(memory[0x00:0x00]); } } else if (var0 == 0x095ea7b3) { // Dispatch table entry for approve(address,uint256) var1 = 0x0245; var2 = 0x0240; var3 = msg.data.length; var4 = 0x04; label_1FAA: var5 = 0x00; var6 = var5; if (var3 - var4 i< 0x40) { revert(memory[0x00:0x00]); } var7 = 0x00; var8 = 0x1fc9; var9 = var3; var10 = var4; label_1D03: var11 = msg.data[var10:var10 + 0x20]; var12 = 0x077a; var var13 = var11; var var14 = 0x2dc2; var var15 = var13; var14 = approve(var15); if (var13 != var14) { revert(memory[0x00:0x00]); } // Error: Could not resolve jump destination! } else if (var0 == 0x0ebd4c7f) { // Dispatch table entry for getFeeBps(uint256) var1 = 0x025a; var2 = 0x0255; var3 = msg.data.length; var4 = 0x04; goto label_204B; } else if (var0 == 0x18160ddd) { // Dispatch table entry for totalSupply() var1 = 0x026f; var1 = func_06DB(); var temp2 = var1; var1 = 0x01f4; var2 = temp2; var3 = memory[0x40:0x60]; var4 = var3 + 0x20; var5 = 0x077a; var6 = var3; var7 = var2; func_226C(var6, var7); goto label_077A; } else if (var0 == 0x23b872dd) { // Dispatch table entry for transferFrom(address,address,uint256) var1 = 0x0245; var2 = 0x028a; var3 = msg.data.length; var4 = 0x04; label_1EB4: var5 = 0x00; var6 = var5; var7 = 0x00; if (var3 - var4 i< 0x60) { revert(memory[0x00:0x00]); } var8 = 0x00; var9 = 0x1ed5; var10 = var3; var11 = var4; goto label_1D03; } else { revert(memory[0x00:0x00]); } } else if (0x4f6ccce7 > var0) { if (var0 == 0x2f745c59) { // Dispatch table entry for tokenOfOwnerByIndex(address,uint256) var1 = 0x026f; var2 = 0x029d; var3 = msg.data.length; var4 = 0x04; goto label_1FAA; } else if (var0 == 0x42842e0e) { // Dispatch table entry for safeTransferFrom(address,address,uint256) var1 = 0x0245; var2 = 0x02b0; var3 = msg.data.length; var4 = 0x04; goto label_1EB4; } else if (var0 == 0x42966c68) { // Dispatch table entry for burn(uint256) var1 = 0x0245; var2 = 0x02c3; var3 = msg.data.length; var4 = 0x04; goto label_204B; } else { revert(memory[0x00:0x00]); } } else if (var0 == 0x4f6ccce7) { // Dispatch table entry for tokenByIndex(uint256) var1 = 0x026f; var2 = 0x02d6; var3 = msg.data.length; var4 = 0x04; goto label_204B; } else if (var0 == 0x6308f1cd) { // Dispatch table entry for fees(uint256,uint256) var1 = 0x02ee; var2 = 0x02e9; var3 = msg.data.length; var4 = 0x04; var5 = 0x00; var6 = var5; if (var3 - var4 i< 0x40) { revert(memory[0x00:0x00]); } var7 = 0x00; var8 = 0x1fc9; var9 = var3; var10 = var4; goto label_1D9A; } else if (var0 == 0x6352211e) { // Dispatch table entry for ownerOf(uint256) var1 = 0x0225; var2 = 0x030a; var3 = msg.data.length; var4 = 0x04; goto label_204B; } else if (var0 == 0x672a9400) { // Dispatch table entry for mint(uint256,uint8,bytes32,bytes32,(address,uint256)[],string) var1 = 0x0245; var2 = 0x031d; var3 = msg.data.length; var4 = 0x04; var5 = 0x00; var6 = var5; var7 = 0x00; var8 = var7; var9 = 0x00; var10 = var9; if (var3 - var4 i< 0xc0) { revert(memory[0x00:0x00]); } var11 = 0x00; var12 = 0x20ad; var13 = var3; var14 = var4; goto label_1D9A; } else { revert(memory[0x00:0x00]); } } else if (0xa22cb465 > var0) { if (0x8f32d59b > var0) { if (var0 == 0x70a08231) { // Dispatch table entry for balanceOf(address) var1 = 0x026f; var2 = 0x0330; var3 = msg.data.length; var4 = 0x04; label_1E5C: var5 = 0x00; if (var3 - var4 i< 0x20) { revert(memory[0x00:0x00]); } var6 = 0x00; var7 = 0x0edb; var8 = var3; var9 = var4; goto label_1D03; } else if (var0 == 0x715018a6) { // Dispatch table entry for renounceOwnership() var1 = 0x0245; renounceOwnership(); stop(); } else if (var0 == 0x8da5cb5b) { // Dispatch table entry for owner() var1 = 0x0225; var1 = func_0A0F(); var temp3 = var1; var1 = 0x01f4; var2 = temp3; var3 = memory[0x40:0x60]; var4 = var3 + 0x20; var5 = 0x077a; var6 = var3; var7 = var2; func_215F(var6, var7); goto label_077A; } else { revert(memory[0x00:0x00]); } } else if (var0 == 0x8f32d59b) { // Dispatch table entry for isOwner() var1 = 0x01e7; var1 = func_0A1E(); var temp4 = var1; var1 = 0x01f4; var2 = temp4; var3 = memory[0x40:0x60]; var4 = var3 + 0x20; var5 = 0x077a; var6 = var3; var7 = var2; var8 = 0x2168; var9 = var7; var8 = func_2D31(var9); memory[var6:var6 + 0x20] = var8; // Error: Could not resolve jump destination! } else if (var0 == 0x938e3d7b) { // Dispatch table entry for setContractURI(string) var1 = 0x0245; var2 = 0x035b; var3 = msg.data.length; var4 = 0x04; var2 = func_2016(var3, var4); var3 = 0x0a4a; var3 = func_0A1E(); if (var3) { var3 = 0x07cb; var4 = var2; var temp5 = var4; var5 = 0x1168; var6 = 0x06; var7 = temp5 + 0x20; var8 = memory[temp5:temp5 + 0x20]; label_1C07: var temp6 = var6; var temp7 = storage[temp6]; memory[0x00:0x20] = temp6; var9 = keccak256(memory[0x00:0x20]); var10 = var7; var7 = var9 + ((!(temp7 & 0x01) * 0x0100 - 0x01 & temp7) / 0x02 + 0x1f) / 0x20; if (0x1f < var8) { var temp8 = var8; storage[var6] = temp8 + temp8 + 0x01; if (!temp8) { label_1C75: var temp9 = var7; var7 = 0x1c81; var8 = temp9; var temp10 = var8; var8 = 0x06df; var temp11 = var9; var9 = temp10; var10 = temp11; if (var9 <= var10) { var8 = func_1C81(var9, var10); var7 = func_06DF(var8); // Error: Could not resolve method call return address! } else { label_1CF8: var temp12 = var10; storage[temp12] = 0x00; var10 = temp12 + 0x01; if (var9 > var10) { goto label_1CF8; } var8 = func_1C81(var9, var10); // Error: Could not resolve method call return address! } } else { var temp13 = var8; var temp14 = var10; var8 = temp14; var10 = var8 + temp13; if (var10 <= var8) { goto label_1C75; } label_1C63: var temp15 = var8; var temp16 = var9; storage[temp16] = memory[temp15:temp15 + 0x20]; var8 = temp15 + 0x20; var9 = temp16 + 0x01; var10 = var10; if (var10 <= var8) { goto label_1C75; } else { goto label_1C63; } } } else { var temp17 = var8; storage[var6] = temp17 + temp17 | (memory[var10:var10 + 0x20] & ~0xff); goto label_1C75; } } else { var temp18 = memory[0x40:0x60]; memory[temp18:temp18 + 0x20] = 0x461bcd << 0xe5; var3 = 0x04de; var4 = temp18 + 0x04; label_2BCC: var temp19 = var4; memory[temp19:temp19 + 0x20] = 0x20; var5 = temp19 + 0x20; var6 = 0x077a; var7 = var5; var6 = func_2719(var7); goto label_077A; } } else if (var0 == 0x95d89b41) { // Dispatch table entry for symbol() var1 = 0x0205; var2 = symbol(); goto label_0205; } else if (var0 == 0x99e0dd7c) { // Dispatch table entry for setTokenURIPrefix(string) var1 = 0x0245; var2 = 0x0376; var3 = msg.data.length; var4 = 0x04; var2 = func_2016(var3, var4); var3 = 0x0ad2; var3 = func_0A1E(); if (var3) { var3 = 0x07cb; var4 = var2; var temp20 = var4; var5 = 0x1168; var6 = 0x07; var7 = temp20 + 0x20; var8 = memory[temp20:temp20 + 0x20]; goto label_1C07; } else { var temp21 = memory[0x40:0x60]; memory[temp21:temp21 + 0x20] = 0x461bcd << 0xe5; var3 = 0x04de; var4 = temp21 + 0x04; goto label_2BCC; } } else { revert(memory[0x00:0x00]); } } else if (0xc87b56dd > var0) { if (var0 == 0xa22cb465) { // Dispatch table entry for setApprovalForAll(address,bool) var1 = 0x0245; var2 = 0x0389; var3 = msg.data.length; var4 = 0x04; var5 = 0x00; var6 = var5; if (var3 - var4 i< 0x40) { revert(memory[0x00:0x00]); } var7 = 0x00; var8 = 0x1f99; var9 = var3; var10 = var4; goto label_1D03; } else if (var0 == 0xb88d4fde) { // Dispatch table entry for safeTransferFrom(address,address,uint256,bytes) var1 = 0x0245; var2 = 0x039c; var3 = msg.data.length; var4 = 0x04; var5 = 0x00; var6 = var5; var7 = 0x00; var8 = var7; if (var3 - var4 i< 0x80) { revert(memory[0x00:0x00]); } var9 = 0x00; var10 = 0x1f23; var11 = var3; var12 = var4; goto label_1D03; } else if (var0 == 0xb9c4d9fb) { // Dispatch table entry for getFeeRecipients(uint256) var1 = 0x03b4; var2 = 0x03af; var3 = msg.data.length; var4 = 0x04; goto label_204B; } else if (var0 == 0xc0ac9983) { // Dispatch table entry for tokenURIPrefix() var1 = 0x0205; var2 = tokenURIPrefix(); goto label_0205; } else { revert(memory[0x00:0x00]); } } else if (var0 == 0xc87b56dd) { // Dispatch table entry for tokenURI(uint256) var1 = 0x0205; var2 = 0x03d7; var3 = msg.data.length; var4 = 0x04; goto label_204B; } else if (var0 == 0xe8a3d485) { // Dispatch table entry for contractURI() var1 = 0x0205; var2 = contractURI(); goto label_0205; } else if (var0 == 0xe985e9c5) { // Dispatch table entry for isApprovedForAll(address,address) var1 = 0x01e7; var2 = 0x03f2; var3 = msg.data.length; var4 = 0x04; var5 = 0x00; var6 = var5; if (var3 - var4 i< 0x40) { revert(memory[0x00:0x00]); } var7 = 0x00; var8 = 0x1e99; var9 = var3; var10 = var4; goto label_1D03; } else if (var0 == 0xf2fde38b) { // Dispatch table entry for transferOwnership(address) var1 = 0x0245; var2 = 0x0405; var3 = msg.data.length; var4 = 0x04; goto label_1E5C; } else { revert(memory[0x00:0x00]); } } function func_0429() returns (var r0) { var temp0 = storage[0x0d]; var temp1 = memory[0x40:0x60]; var temp2 = (temp0 & !(temp0 & 0x01) * 0x0100 + ~0x00) / 0x02; var var2 = temp2; memory[0x40:0x60] = temp1 + (var2 + 0x1f) / 0x20 * 0x20 + 0x20; memory[temp1:temp1 + 0x20] = var2; r0 = temp1; var var1 = 0x0d; var var3 = r0 + 0x20; var var4 = var1; var var5 = var2; if (!var5) { label_04AF: return r0; } else if (0x1f < var5) { var temp3 = var3; var temp4 = temp3 + var5; var3 = temp4; memory[0x00:0x20] = var4; var temp5 = keccak256(memory[0x00:0x20]); memory[temp3:temp3 + 0x20] = storage[temp5]; var4 = temp5 + 0x01; var5 = temp3 + 0x20; if (var3 <= var5) { goto label_04A6; } label_0492: var temp6 = var4; var temp7 = var5; memory[temp7:temp7 + 0x20] = storage[temp6]; var4 = temp6 + 0x01; var5 = temp7 + 0x20; if (var3 > var5) { goto label_0492; } label_04A6: var temp8 = var3; var temp9 = temp8 + (var5 - temp8 & 0x1f); var5 = temp8; var3 = temp9; goto label_04AF; } else { var temp10 = var3; memory[temp10:temp10 + 0x20] = storage[var4] / 0x0100 * 0x0100; var3 = temp10 + 0x20; var5 = var5; goto label_04AF; } } function func_06DB() returns (var r0) { var var0 = storage[0x0b]; r0 = func_06DF(var0); // Error: Could not resolve method call return address! } function func_06DF(var arg0) returns (var r0) { return arg0; } function renounceOwnership() { var var0 = 0x09a9; var0 = func_0A1E(); if (var0) { log(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00], [0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0, storage[0x00] & (0x01 << 0xa0) - 0x01, 0x00]); storage[0x00] = storage[0x00] & ~((0x01 << 0xa0) - 0x01); return; } else { var temp0 = memory[0x40:0x60]; memory[temp0:temp0 + 0x20] = 0x461bcd << 0xe5; var var1 = temp0 + 0x04; var0 = 0x04de; var temp1 = var1; memory[temp1:temp1 + 0x20] = 0x20; var var2 = temp1 + 0x20; var var3 = 0x077a; var var4 = var2; var3 = func_2719(var4); var0 = var3; // Error: Could not resolve jump destination! } } function func_0A0F() returns (var r0) { return storage[0x00] & (0x01 << 0xa0) - 0x01; } function func_0A1E() returns (var r0) { var var0 = 0x00; var var1 = storage[var0] & (0x01 << 0xa0) - 0x01; var var2 = 0x0a33; var2 = func_0E5A(); return var2 & (0x01 << 0xa0) - 0x01 == var1; } function symbol() returns (var r0) { var temp0 = storage[0x0e]; var temp1 = memory[0x40:0x60]; var temp2 = (temp0 & !(temp0 & 0x01) * 0x0100 + ~0x00) / 0x02; var var2 = temp2; memory[0x40:0x60] = temp1 + (var2 + 0x1f) / 0x20 * 0x20 + 0x20; memory[temp1:temp1 + 0x20] = var2; r0 = temp1; var var1 = 0x0e; var var3 = r0 + 0x20; var var4 = var1; var var5 = var2; if (!var5) { label_04AF: return r0; } else if (0x1f < var5) { var temp3 = var3; var temp4 = temp3 + var5; var3 = temp4; memory[0x00:0x20] = var4; var temp5 = keccak256(memory[0x00:0x20]); memory[temp3:temp3 + 0x20] = storage[temp5]; var4 = temp5 + 0x01; var5 = temp3 + 0x20; if (var3 <= var5) { goto label_04A6; } label_0492: var temp6 = var4; var temp7 = var5; memory[temp7:temp7 + 0x20] = storage[temp6]; var4 = temp6 + 0x01; var5 = temp7 + 0x20; if (var3 > var5) { goto label_0492; } label_04A6: var temp8 = var3; var temp9 = temp8 + (var5 - temp8 & 0x1f); var5 = temp8; var3 = temp9; goto label_04AF; } else { var temp10 = var3; memory[temp10:temp10 + 0x20] = storage[var4] / 0x0100 * 0x0100; var3 = temp10 + 0x20; var5 = var5; goto label_04AF; } } function tokenURIPrefix() returns (var r0) { var temp0 = storage[0x07]; var temp1 = memory[0x40:0x60]; var temp2 = (temp0 & !(temp0 & 0x01) * 0x0100 + ~0x00) / 0x02; var var2 = temp2; memory[0x40:0x60] = temp1 + (var2 + 0x1f) / 0x20 * 0x20 + 0x20; memory[temp1:temp1 + 0x20] = var2; r0 = temp1; var var1 = 0x07; var var3 = r0 + 0x20; var var4 = var1; var var5 = var2; if (!var5) { label_04AF: return r0; } else if (0x1f < var5) { var temp3 = var3; var temp4 = temp3 + var5; var3 = temp4; memory[0x00:0x20] = var4; var temp5 = keccak256(memory[0x00:0x20]); memory[temp3:temp3 + 0x20] = storage[temp5]; var4 = temp5 + 0x01; var5 = temp3 + 0x20; if (var3 <= var5) { goto label_04A6; } label_0492: var temp6 = var4; var temp7 = var5; memory[temp7:temp7 + 0x20] = storage[temp6]; var4 = temp6 + 0x01; var5 = temp7 + 0x20; if (var3 > var5) { goto label_0492; } label_04A6: var temp8 = var3; var temp9 = temp8 + (var5 - temp8 & 0x1f); var5 = temp8; var3 = temp9; goto label_04AF; } else { var temp10 = var3; memory[temp10:temp10 + 0x20] = storage[var4] / 0x0100 * 0x0100; var5 = var5; var3 = temp10 + 0x20; goto label_04AF; } } function contractURI() returns (var r0) { var temp0 = storage[0x06]; var temp1 = memory[0x40:0x60]; var temp2 = (temp0 & !(temp0 & 0x01) * 0x0100 + ~0x00) / 0x02; var var2 = temp2; memory[0x40:0x60] = temp1 + (var2 + 0x1f) / 0x20 * 0x20 + 0x20; memory[temp1:temp1 + 0x20] = var2; r0 = temp1; var var1 = 0x06; var var3 = r0 + 0x20; var var4 = var1; var var5 = var2; if (!var5) { label_04AF: return r0; } else if (0x1f < var5) { var temp3 = var3; var temp4 = temp3 + var5; var3 = temp4; memory[0x00:0x20] = var4; var temp5 = keccak256(memory[0x00:0x20]); memory[temp3:temp3 + 0x20] = storage[temp5]; var4 = temp5 + 0x01; var5 = temp3 + 0x20; if (var3 <= var5) { goto label_04A6; } label_0492: var temp6 = var4; var temp7 = var5; memory[temp7:temp7 + 0x20] = storage[temp6]; var4 = temp6 + 0x01; var5 = temp7 + 0x20; if (var3 > var5) { goto label_0492; } label_04A6: var temp8 = var3; var temp9 = temp8 + (var5 - temp8 & 0x1f); var5 = temp8; var3 = temp9; goto label_04AF; } else { var temp10 = var3; memory[temp10:temp10 + 0x20] = storage[var4] / 0x0100 * 0x0100; var3 = temp10 + 0x20; var5 = var5; goto label_04AF; } } function func_0E5A() returns (var r0) { return msg.sender; } function func_1C81(var arg0, var arg1) returns (var r0) { return arg0; } function func_1D2D(var arg0) returns (var r0) { var temp0 = memory[0x40:0x60]; var var0 = temp0; var temp1 = var0 + arg0; var var1 = temp1; if ((var1 < var0) | (var1 > 0xffffffffffffffff)) { revert(memory[0x00:0x00]); } memory[0x40:0x60] = var1; return var0; } function func_1DBB(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg1 + 0x1f i>= arg0) { revert(memory[0x00:0x00]); } var var1 = msg.data[arg1:arg1 + 0x20]; var var2 = 0x1dda; var var3 = 0x1d2d; var var4 = var1; var3 = func_2CE6(var4); var2 = func_1D2D(var3); var temp0 = var2; var0 = temp0; var temp1 = var1; memory[var0:var0 + 0x20] = temp1; var2 = arg1 + 0x20; var3 = var0 + 0x20; if (var2 + temp1 > arg0) { revert(memory[0x00:0x00]); } var4 = 0x1e01; var var5 = var1; var var6 = var3; var var7 = var2; func_2D60(var5, var6, var7); return var0; } function func_2016(var arg0, var arg1) returns (var r0) { var var0 = 0x00; if (arg0 - arg1 i< 0x20) { revert(memory[0x00:0x00]); } var var1 = msg.data[arg1:arg1 + 0x20]; if (var1 > 0xffffffffffffffff) { revert(memory[0x00:0x00]); } var var2 = 0x0edb; var var3 = arg0; var var4 = arg1 + var1; return func_1DBB(var3, var4); } function func_215F(var arg0, var arg1) { var var0 = 0x2168; var var1 = arg1; var0 = approve(var1); memory[arg0:arg0 + 0x20] = var0; } function func_226C(var arg0, var arg1) { var var0 = 0x2168; var var1 = arg1; var0 = func_06DF(var1); memory[arg0:arg0 + 0x20] = var0; } function func_2275(var arg0, var arg1) returns (var r0) { var var0 = 0x00; var var1 = 0x2280; var var2 = arg1; var1 = func_2D14(var2); var2 = 0x228a; var var3 = var1; var var4 = arg0; var2 = func_2D18(var3, var4); var temp0 = var2; arg0 = temp0; var2 = 0x229a; var3 = var1; var4 = arg0; var var5 = arg1 + 0x20; func_2D6C(var3, var4, var5); var2 = 0x22a3; var3 = var1; var2 = func_2DA9(var3); return arg0 + var2; } function func_2719(var arg0) returns (var r0) { var var0 = 0x00; var var1 = 0x2726; var var2 = 0x20; var var3 = arg0; var1 = func_2D18(var2, var3); var temp0 = var1; memory[temp0:temp0 + 0x20] = 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572; return temp0 + 0x20; } function func_2ACB(var arg0, var arg1) returns (var r0) { var temp0 = arg1; memory[temp0:temp0 + 0x20] = 0x20; var var0 = temp0 + 0x20; var var1 = 0x18d2; var var2 = var0; var var3 = arg0; return func_2275(var2, var3); } function func_2CE6(var arg0) returns (var r0) { var var0 = 0x00; if (arg0 <= 0xffffffffffffffff) { return (arg0 + 0x1f & ~0x1f) + 0x20; } else { revert(memory[0x00:0x00]); } } function func_2D14(var arg0) returns (var r0) { return memory[arg0:arg0 + 0x20]; } function func_2D18(var arg0, var arg1) returns (var r0) { var temp0 = arg1; memory[temp0:temp0 + 0x20] = arg0; return temp0 + 0x20; } function approve(var arg0) returns (var r0) { var var0 = 0x00; var var1 = 0x077a; var var2 = arg0; return func_2D43(var2); } function func_2D31(var arg0) returns (var r0) { return !!arg0; } function func_2D36(var arg0) returns (var r0) { return arg0 & ~((0x01 << 0xe0) - 0x01); } function func_2D43(var arg0) returns (var r0) { return arg0 & (0x01 << 0xa0) - 0x01; } function func_2D60(var arg0, var arg1, var arg2) { var temp0 = arg0; var temp1 = arg1; memory[temp1:temp1 + temp0] = msg.data[arg2:arg2 + temp0]; memory[temp0 + temp1:temp0 + temp1 + 0x20] = 0x00; } function func_2D6C(var arg0, var arg1, var arg2) { var var0 = 0x00; if (var0 >= arg0) { label_2D87: if (var0 <= arg0) { return; } memory[arg0 + arg1:arg0 + arg1 + 0x20] = 0x00; return; } else { label_2D78: var temp0 = var0; memory[temp0 + arg1:temp0 + arg1 + 0x20] = memory[temp0 + arg2:temp0 + arg2 + 0x20]; var0 = temp0 + 0x20; if (var0 >= arg0) { goto label_2D87; } else { goto label_2D78; } } } function func_2DA9(var arg0) returns (var r0) { return arg0 + 0x1f & ~0x1f; } function getApproved(var arg0) { var var0 = 0x2dc2; var var1 = arg0; var0 = func_06DF(var1); if (arg0 == var0) { return; } else { revert(memory[0x00:0x00]); } } function supportsInterface(var arg0) { var var0 = 0x2dc2; var var1 = arg0; var0 = func_2D36(var1); if (arg0 == var0) { 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 0x01cf 0019 57 *JUMPI // Stack delta = -1 // Block ends with conditional jump to 0x01cf, 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 0x70a08231 0026 11 GT 0027 61 PUSH2 0x0104 002A 57 *JUMPI // Stack delta = +1 // Outputs[1] { @001F stack[0] = msg.data[0x00:0x20] >> 0xe0 } // Block ends with conditional jump to 0x0104, if 0x70a08231 > msg.data[0x00:0x20] >> 0xe0 label_002B: // Incoming jump from 0x002A, if not 0x70a08231 > msg.data[0x00:0x20] >> 0xe0 // Inputs[1] { @002B stack[-1] } 002B 80 DUP1 002C 63 PUSH4 0xa22cb465 0031 11 GT 0032 61 PUSH2 0x00a2 0035 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x00a2, if 0xa22cb465 > stack[-1] label_0036: // Incoming jump from 0x0035, if not 0xa22cb465 > stack[-1] // Inputs[1] { @0036 stack[-1] } 0036 80 DUP1 0037 63 PUSH4 0xc87b56dd 003C 11 GT 003D 61 PUSH2 0x0071 0040 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0071, if 0xc87b56dd > stack[-1] label_0041: // Incoming jump from 0x0040, if not 0xc87b56dd > stack[-1] // Inputs[1] { @0041 stack[-1] } 0041 80 DUP1 0042 63 PUSH4 0xc87b56dd 0047 14 EQ 0048 61 PUSH2 0x03c9 004B 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x03c9, if 0xc87b56dd == stack[-1] label_004C: // Incoming jump from 0x004B, if not 0xc87b56dd == stack[-1] // Inputs[1] { @004C stack[-1] } 004C 80 DUP1 004D 63 PUSH4 0xe8a3d485 0052 14 EQ 0053 61 PUSH2 0x03dc 0056 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x03dc, if 0xe8a3d485 == stack[-1] label_0057: // Incoming jump from 0x0056, if not 0xe8a3d485 == stack[-1] // Inputs[1] { @0057 stack[-1] } 0057 80 DUP1 0058 63 PUSH4 0xe985e9c5 005D 14 EQ 005E 61 PUSH2 0x03e4 0061 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x03e4, if 0xe985e9c5 == stack[-1] label_0062: // Incoming jump from 0x0061, if not 0xe985e9c5 == stack[-1] // Inputs[1] { @0062 stack[-1] } 0062 80 DUP1 0063 63 PUSH4 0xf2fde38b 0068 14 EQ 0069 61 PUSH2 0x03f7 006C 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x03f7, if 0xf2fde38b == stack[-1] label_006D: // Incoming jump from 0x006C, if not 0xf2fde38b == stack[-1] 006D 61 PUSH2 0x01cf 0070 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x01cf label_0071: // Incoming jump from 0x0040, if 0xc87b56dd > stack[-1] // Inputs[1] { @0072 stack[-1] } 0071 5B JUMPDEST 0072 80 DUP1 0073 63 PUSH4 0xa22cb465 0078 14 EQ 0079 61 PUSH2 0x037b 007C 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x037b, if 0xa22cb465 == stack[-1] label_007D: // Incoming jump from 0x007C, if not 0xa22cb465 == stack[-1] // Inputs[1] { @007D stack[-1] } 007D 80 DUP1 007E 63 PUSH4 0xb88d4fde 0083 14 EQ 0084 61 PUSH2 0x038e 0087 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x038e, if 0xb88d4fde == stack[-1] label_0088: // Incoming jump from 0x0087, if not 0xb88d4fde == stack[-1] // Inputs[1] { @0088 stack[-1] } 0088 80 DUP1 0089 63 PUSH4 0xb9c4d9fb 008E 14 EQ 008F 61 PUSH2 0x03a1 0092 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x03a1, if 0xb9c4d9fb == stack[-1] label_0093: // Incoming jump from 0x0092, if not 0xb9c4d9fb == stack[-1] // Inputs[1] { @0093 stack[-1] } 0093 80 DUP1 0094 63 PUSH4 0xc0ac9983 0099 14 EQ 009A 61 PUSH2 0x03c1 009D 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x03c1, if 0xc0ac9983 == stack[-1] label_009E: // Incoming jump from 0x009D, if not 0xc0ac9983 == stack[-1] 009E 61 PUSH2 0x01cf 00A1 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x01cf label_00A2: // Incoming jump from 0x0035, if 0xa22cb465 > stack[-1] // Inputs[1] { @00A3 stack[-1] } 00A2 5B JUMPDEST 00A3 80 DUP1 00A4 63 PUSH4 0x8f32d59b 00A9 11 GT 00AA 61 PUSH2 0x00de 00AD 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x00de, if 0x8f32d59b > stack[-1] label_00AE: // Incoming jump from 0x00AD, if not 0x8f32d59b > stack[-1] // Inputs[1] { @00AE stack[-1] } 00AE 80 DUP1 00AF 63 PUSH4 0x8f32d59b 00B4 14 EQ 00B5 61 PUSH2 0x0345 00B8 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0345, if 0x8f32d59b == stack[-1] label_00B9: // Incoming jump from 0x00B8, if not 0x8f32d59b == stack[-1] // Inputs[1] { @00B9 stack[-1] } 00B9 80 DUP1 00BA 63 PUSH4 0x938e3d7b 00BF 14 EQ 00C0 61 PUSH2 0x034d 00C3 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x034d, if 0x938e3d7b == stack[-1] label_00C4: // Incoming jump from 0x00C3, if not 0x938e3d7b == stack[-1] // Inputs[1] { @00C4 stack[-1] } 00C4 80 DUP1 00C5 63 PUSH4 0x95d89b41 00CA 14 EQ 00CB 61 PUSH2 0x0360 00CE 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0360, if 0x95d89b41 == stack[-1] label_00CF: // Incoming jump from 0x00CE, if not 0x95d89b41 == stack[-1] // Inputs[1] { @00CF stack[-1] } 00CF 80 DUP1 00D0 63 PUSH4 0x99e0dd7c 00D5 14 EQ 00D6 61 PUSH2 0x0368 00D9 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0368, if 0x99e0dd7c == stack[-1] label_00DA: // Incoming jump from 0x00D9, if not 0x99e0dd7c == stack[-1] 00DA 61 PUSH2 0x01cf 00DD 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x01cf label_00DE: // Incoming jump from 0x00AD, if 0x8f32d59b > stack[-1] // Inputs[1] { @00DF stack[-1] } 00DE 5B JUMPDEST 00DF 80 DUP1 00E0 63 PUSH4 0x70a08231 00E5 14 EQ 00E6 61 PUSH2 0x0322 00E9 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0322, if 0x70a08231 == stack[-1] label_00EA: // Incoming jump from 0x00E9, if not 0x70a08231 == stack[-1] // Inputs[1] { @00EA stack[-1] } 00EA 80 DUP1 00EB 63 PUSH4 0x715018a6 00F0 14 EQ 00F1 61 PUSH2 0x0335 00F4 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0335, if 0x715018a6 == stack[-1] label_00F5: // Incoming jump from 0x00F4, if not 0x715018a6 == stack[-1] // Inputs[1] { @00F5 stack[-1] } 00F5 80 DUP1 00F6 63 PUSH4 0x8da5cb5b 00FB 14 EQ 00FC 61 PUSH2 0x033d 00FF 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x033d, if 0x8da5cb5b == stack[-1] label_0100: // Incoming jump from 0x00FF, if not 0x8da5cb5b == stack[-1] 0100 61 PUSH2 0x01cf 0103 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x01cf label_0104: // Incoming jump from 0x002A, if 0x70a08231 > msg.data[0x00:0x20] >> 0xe0 // Inputs[1] { @0105 stack[-1] } 0104 5B JUMPDEST 0105 80 DUP1 0106 63 PUSH4 0x2f745c59 010B 11 GT 010C 61 PUSH2 0x0171 010F 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0171, if 0x2f745c59 > stack[-1] label_0110: // Incoming jump from 0x010F, if not 0x2f745c59 > stack[-1] // Inputs[1] { @0110 stack[-1] } 0110 80 DUP1 0111 63 PUSH4 0x4f6ccce7 0116 11 GT 0117 61 PUSH2 0x014b 011A 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x014b, if 0x4f6ccce7 > stack[-1] label_011B: // Incoming jump from 0x011A, if not 0x4f6ccce7 > stack[-1] // Inputs[1] { @011B stack[-1] } 011B 80 DUP1 011C 63 PUSH4 0x4f6ccce7 0121 14 EQ 0122 61 PUSH2 0x02c8 0125 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x02c8, if 0x4f6ccce7 == stack[-1] label_0126: // Incoming jump from 0x0125, if not 0x4f6ccce7 == stack[-1] // Inputs[1] { @0126 stack[-1] } 0126 80 DUP1 0127 63 PUSH4 0x6308f1cd 012C 14 EQ 012D 61 PUSH2 0x02db 0130 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x02db, if 0x6308f1cd == stack[-1] label_0131: // Incoming jump from 0x0130, if not 0x6308f1cd == stack[-1] // Inputs[1] { @0131 stack[-1] } 0131 80 DUP1 0132 63 PUSH4 0x6352211e 0137 14 EQ 0138 61 PUSH2 0x02fc 013B 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x02fc, if 0x6352211e == stack[-1] label_013C: // Incoming jump from 0x013B, if not 0x6352211e == stack[-1] // Inputs[1] { @013C stack[-1] } 013C 80 DUP1 013D 63 PUSH4 0x672a9400 0142 14 EQ 0143 61 PUSH2 0x030f 0146 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x030f, if 0x672a9400 == stack[-1] label_0147: // Incoming jump from 0x0146, if not 0x672a9400 == stack[-1] 0147 61 PUSH2 0x01cf 014A 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x01cf label_014B: // Incoming jump from 0x011A, if 0x4f6ccce7 > stack[-1] // Inputs[1] { @014C stack[-1] } 014B 5B JUMPDEST 014C 80 DUP1 014D 63 PUSH4 0x2f745c59 0152 14 EQ 0153 61 PUSH2 0x028f 0156 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x028f, if 0x2f745c59 == stack[-1] label_0157: // Incoming jump from 0x0156, if not 0x2f745c59 == stack[-1] // Inputs[1] { @0157 stack[-1] } 0157 80 DUP1 0158 63 PUSH4 0x42842e0e 015D 14 EQ 015E 61 PUSH2 0x02a2 0161 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x02a2, if 0x42842e0e == stack[-1] label_0162: // Incoming jump from 0x0161, if not 0x42842e0e == stack[-1] // Inputs[1] { @0162 stack[-1] } 0162 80 DUP1 0163 63 PUSH4 0x42966c68 0168 14 EQ 0169 61 PUSH2 0x02b5 016C 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x02b5, if 0x42966c68 == stack[-1] label_016D: // Incoming jump from 0x016C, if not 0x42966c68 == stack[-1] 016D 61 PUSH2 0x01cf 0170 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x01cf label_0171: // Incoming jump from 0x010F, if 0x2f745c59 > stack[-1] // Inputs[1] { @0172 stack[-1] } 0171 5B JUMPDEST 0172 80 DUP1 0173 63 PUSH4 0x095ea7b3 0178 11 GT 0179 61 PUSH2 0x01ad 017C 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x01ad, if 0x095ea7b3 > stack[-1] label_017D: // Incoming jump from 0x017C, if not 0x095ea7b3 > stack[-1] // Inputs[1] { @017D stack[-1] } 017D 80 DUP1 017E 63 PUSH4 0x095ea7b3 0183 14 EQ 0184 61 PUSH2 0x0232 0187 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0232, if 0x095ea7b3 == stack[-1] label_0188: // Incoming jump from 0x0187, if not 0x095ea7b3 == stack[-1] // Inputs[1] { @0188 stack[-1] } 0188 80 DUP1 0189 63 PUSH4 0x0ebd4c7f 018E 14 EQ 018F 61 PUSH2 0x0247 0192 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0247, if 0x0ebd4c7f == stack[-1] label_0193: // Incoming jump from 0x0192, if not 0x0ebd4c7f == stack[-1] // Inputs[1] { @0193 stack[-1] } 0193 80 DUP1 0194 63 PUSH4 0x18160ddd 0199 14 EQ 019A 61 PUSH2 0x0267 019D 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0267, if 0x18160ddd == stack[-1] label_019E: // Incoming jump from 0x019D, if not 0x18160ddd == stack[-1] // Inputs[1] { @019E stack[-1] } 019E 80 DUP1 019F 63 PUSH4 0x23b872dd 01A4 14 EQ 01A5 61 PUSH2 0x027c 01A8 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x027c, if 0x23b872dd == stack[-1] label_01A9: // Incoming jump from 0x01A8, if not 0x23b872dd == stack[-1] 01A9 61 PUSH2 0x01cf 01AC 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x01cf label_01AD: // Incoming jump from 0x017C, if 0x095ea7b3 > stack[-1] // Inputs[1] { @01AE stack[-1] } 01AD 5B JUMPDEST 01AE 80 DUP1 01AF 63 PUSH4 0x01ffc9a7 01B4 14 EQ 01B5 61 PUSH2 0x01d4 01B8 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x01d4, if 0x01ffc9a7 == stack[-1] label_01B9: // Incoming jump from 0x01B8, if not 0x01ffc9a7 == stack[-1] // Inputs[1] { @01B9 stack[-1] } 01B9 80 DUP1 01BA 63 PUSH4 0x06fdde03 01BF 14 EQ 01C0 61 PUSH2 0x01fd 01C3 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x01fd, if 0x06fdde03 == stack[-1] label_01C4: // Incoming jump from 0x01C3, if not 0x06fdde03 == stack[-1] // Inputs[1] { @01C4 stack[-1] } 01C4 80 DUP1 01C5 63 PUSH4 0x081812fc 01CA 14 EQ 01CB 61 PUSH2 0x0212 01CE 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0212, if 0x081812fc == stack[-1] label_01CF: // Incoming jump from 0x014A // Incoming jump from 0x01AC // Incoming jump from 0x00A1 // Incoming jump from 0x0070 // Incoming jump from 0x01CE, if not 0x081812fc == stack[-1] // Incoming jump from 0x0103 // Incoming jump from 0x0019, if msg.data.length < 0x04 // Incoming jump from 0x00DD // Incoming jump from 0x0170 // Inputs[1] { @01D3 memory[0x00:0x00] } 01CF 5B JUMPDEST 01D0 60 PUSH1 0x00 01D2 80 DUP1 01D3 FD *REVERT // Stack delta = +0 // Outputs[1] { @01D3 revert(memory[0x00:0x00]); } // Block terminates label_01D4: // Incoming jump from 0x01B8, if 0x01ffc9a7 == stack[-1] // Inputs[1] { @01DB msg.data.length } 01D4 5B JUMPDEST 01D5 61 PUSH2 0x01e7 01D8 61 PUSH2 0x01e2 01DB 36 CALLDATASIZE 01DC 60 PUSH1 0x04 01DE 61 PUSH2 0x1fda 01E1 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @01D5 stack[0] = 0x01e7 // @01D8 stack[1] = 0x01e2 // @01DB stack[2] = msg.data.length // @01DC stack[3] = 0x04 // } // Block ends with unconditional jump to 0x1fda 01E2 5B JUMPDEST 01E3 61 PUSH2 0x040a 01E6 56 *JUMP label_01E7: // Incoming return from call to 0x0A1E at 0x034C // Inputs[2] // { // @01EA memory[0x40:0x60] // @01EE stack[-1] // } 01E7 5B JUMPDEST 01E8 60 PUSH1 0x40 01EA 51 MLOAD 01EB 61 PUSH2 0x01f4 01EE 91 SWAP2 01EF 90 SWAP1 01F0 61 PUSH2 0x2a7f 01F3 56 *JUMP // Stack delta = +2 // Outputs[3] // { // @01EE stack[-1] = 0x01f4 // @01EF stack[1] = memory[0x40:0x60] // @01EF stack[0] = stack[-1] // } // Block ends with unconditional jump to 0x2a7f label_01F4: // Incoming return from call to 0x2ACB at 0x0211 // Inputs[3] // { // @01F7 memory[0x40:0x60] // @01F9 stack[-1] // @01FC memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]] // } 01F4 5B JUMPDEST 01F5 60 PUSH1 0x40 01F7 51 MLOAD 01F8 80 DUP1 01F9 91 SWAP2 01FA 03 SUB 01FB 90 SWAP1 01FC F3 *RETURN // Stack delta = -1 // Outputs[1] { @01FC return memory[memory[0x40:0x60]:memory[0x40:0x60] + stack[-1] - memory[0x40:0x60]]; } // Block terminates label_01FD: // Incoming jump from 0x01C3, if 0x06fdde03 == stack[-1] 01FD 5B JUMPDEST 01FE 61 PUSH2 0x0205 0201 61 PUSH2 0x0429 0204 56 *JUMP // Stack delta = +1 // Outputs[1] { @01FE stack[0] = 0x0205 } // Block ends with call to 0x0429, returns to 0x0205 label_0205: // Incoming return from call to 0x0A6F at 0x0367 // Incoming return from call to 0x0D87 at 0x03E3 // Incoming return from call to 0x0CFC at 0x03C8 // Incoming return from call to 0x0429 at 0x0204 // Inputs[2] // { // @0208 memory[0x40:0x60] // @020C stack[-1] // } 0205 5B JUMPDEST 0206 60 PUSH1 0x40 0208 51 MLOAD 0209 61 PUSH2 0x01f4 020C 91 SWAP2 020D 90 SWAP1 020E 61 PUSH2 0x2acb 0211 56 *JUMP // Stack delta = +2 // Outputs[3] // { // @020C stack[-1] = 0x01f4 // @020D stack[1] = memory[0x40:0x60] // @020D stack[0] = stack[-1] // } // Block ends with call to 0x2acb, returns to 0x01F4 label_0212: // Incoming jump from 0x01CE, if 0x081812fc == stack[-1] // Inputs[1] { @0219 msg.data.length } 0212 5B JUMPDEST 0213 61 PUSH2 0x0225 0216 61 PUSH2 0x0220 0219 36 CALLDATASIZE 021A 60 PUSH1 0x04 021C 61 PUSH2 0x204b 021F 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @0213 stack[0] = 0x0225 // @0216 stack[1] = 0x0220 // @0219 stack[2] = msg.data.length // @021A stack[3] = 0x04 // } // Block ends with unconditional jump to 0x204b 0220 5B JUMPDEST 0221 61 PUSH2 0x04b7 0224 56 *JUMP label_0225: // Incoming return from call to 0x0A0F at 0x0344 // Inputs[2] // { // @0228 memory[0x40:0x60] // @022C stack[-1] // } 0225 5B JUMPDEST 0226 60 PUSH1 0x40 0228 51 MLOAD 0229 61 PUSH2 0x01f4 022C 91 SWAP2 022D 90 SWAP1 022E 61 PUSH2 0x29f0 0231 56 *JUMP // Stack delta = +2 // Outputs[3] // { // @022C stack[-1] = 0x01f4 // @022D stack[1] = memory[0x40:0x60] // @022D stack[0] = stack[-1] // } // Block ends with unconditional jump to 0x29f0 label_0232: // Incoming jump from 0x0187, if 0x095ea7b3 == stack[-1] // Inputs[1] { @0239 msg.data.length } 0232 5B JUMPDEST 0233 61 PUSH2 0x0245 0236 61 PUSH2 0x0240 0239 36 CALLDATASIZE 023A 60 PUSH1 0x04 023C 61 PUSH2 0x1faa 023F 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @0233 stack[0] = 0x0245 // @0236 stack[1] = 0x0240 // @0239 stack[2] = msg.data.length // @023A stack[3] = 0x04 // } // Block ends with unconditional jump to 0x1faa 0240 5B JUMPDEST 0241 61 PUSH2 0x0503 0244 56 *JUMP label_0245: // Incoming return from call to 0x09A1 at 0x033C 0245 5B JUMPDEST 0246 00 *STOP // Stack delta = +0 // Outputs[1] { @0246 stop(); } // Block terminates label_0247: // Incoming jump from 0x0192, if 0x0ebd4c7f == stack[-1] // Inputs[1] { @024E msg.data.length } 0247 5B JUMPDEST 0248 61 PUSH2 0x025a 024B 61 PUSH2 0x0255 024E 36 CALLDATASIZE 024F 60 PUSH1 0x04 0251 61 PUSH2 0x204b 0254 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @0248 stack[0] = 0x025a // @024B stack[1] = 0x0255 // @024E stack[2] = msg.data.length // @024F stack[3] = 0x04 // } // Block ends with unconditional jump to 0x204b 0255 5B JUMPDEST 0256 61 PUSH2 0x05e8 0259 56 *JUMP 025A 5B JUMPDEST 025B 60 PUSH1 0x40 025D 51 MLOAD 025E 61 PUSH2 0x01f4 0261 91 SWAP2 0262 90 SWAP1 0263 61 PUSH2 0x2a6e 0266 56 *JUMP label_0267: // Incoming jump from 0x019D, if 0x18160ddd == stack[-1] 0267 5B JUMPDEST 0268 61 PUSH2 0x026f 026B 61 PUSH2 0x06db 026E 56 *JUMP // Stack delta = +1 // Outputs[1] { @0268 stack[0] = 0x026f } // Block ends with call to 0x06db, returns to 0x026F label_026F: // Incoming return from call to 0x06DB at 0x026E // Inputs[2] // { // @0272 memory[0x40:0x60] // @0276 stack[-1] // } 026F 5B JUMPDEST 0270 60 PUSH1 0x40 0272 51 MLOAD 0273 61 PUSH2 0x01f4 0276 91 SWAP2 0277 90 SWAP1 0278 61 PUSH2 0x2c5c 027B 56 *JUMP // Stack delta = +2 // Outputs[3] // { // @0276 stack[-1] = 0x01f4 // @0277 stack[1] = memory[0x40:0x60] // @0277 stack[0] = stack[-1] // } // Block ends with unconditional jump to 0x2c5c label_027C: // Incoming jump from 0x01A8, if 0x23b872dd == stack[-1] // Inputs[1] { @0283 msg.data.length } 027C 5B JUMPDEST 027D 61 PUSH2 0x0245 0280 61 PUSH2 0x028a 0283 36 CALLDATASIZE 0284 60 PUSH1 0x04 0286 61 PUSH2 0x1eb4 0289 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @027D stack[0] = 0x0245 // @0280 stack[1] = 0x028a // @0283 stack[2] = msg.data.length // @0284 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x1eb4 028A 5B JUMPDEST 028B 61 PUSH2 0x06e2 028E 56 *JUMP label_028F: // Incoming jump from 0x0156, if 0x2f745c59 == stack[-1] // Inputs[1] { @0296 msg.data.length } 028F 5B JUMPDEST 0290 61 PUSH2 0x026f 0293 61 PUSH2 0x029d 0296 36 CALLDATASIZE 0297 60 PUSH1 0x04 0299 61 PUSH2 0x1faa 029C 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @0290 stack[0] = 0x026f // @0293 stack[1] = 0x029d // @0296 stack[2] = msg.data.length // @0297 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x1faa 029D 5B JUMPDEST 029E 61 PUSH2 0x071f 02A1 56 *JUMP label_02A2: // Incoming jump from 0x0161, if 0x42842e0e == stack[-1] // Inputs[1] { @02A9 msg.data.length } 02A2 5B JUMPDEST 02A3 61 PUSH2 0x0245 02A6 61 PUSH2 0x02b0 02A9 36 CALLDATASIZE 02AA 60 PUSH1 0x04 02AC 61 PUSH2 0x1eb4 02AF 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @02A3 stack[0] = 0x0245 // @02A6 stack[1] = 0x02b0 // @02A9 stack[2] = msg.data.length // @02AA stack[3] = 0x04 // } // Block ends with unconditional jump to 0x1eb4 02B0 5B JUMPDEST 02B1 61 PUSH2 0x0780 02B4 56 *JUMP label_02B5: // Incoming jump from 0x016C, if 0x42966c68 == stack[-1] // Inputs[1] { @02BC msg.data.length } 02B5 5B JUMPDEST 02B6 61 PUSH2 0x0245 02B9 61 PUSH2 0x02c3 02BC 36 CALLDATASIZE 02BD 60 PUSH1 0x04 02BF 61 PUSH2 0x204b 02C2 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @02B6 stack[0] = 0x0245 // @02B9 stack[1] = 0x02c3 // @02BC stack[2] = msg.data.length // @02BD stack[3] = 0x04 // } // Block ends with unconditional jump to 0x204b 02C3 5B JUMPDEST 02C4 61 PUSH2 0x079b 02C7 56 *JUMP label_02C8: // Incoming jump from 0x0125, if 0x4f6ccce7 == stack[-1] // Inputs[1] { @02CF msg.data.length } 02C8 5B JUMPDEST 02C9 61 PUSH2 0x026f 02CC 61 PUSH2 0x02d6 02CF 36 CALLDATASIZE 02D0 60 PUSH1 0x04 02D2 61 PUSH2 0x204b 02D5 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @02C9 stack[0] = 0x026f // @02CC stack[1] = 0x02d6 // @02CF stack[2] = msg.data.length // @02D0 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x204b 02D6 5B JUMPDEST 02D7 61 PUSH2 0x07ce 02DA 56 *JUMP label_02DB: // Incoming jump from 0x0130, if 0x6308f1cd == stack[-1] // Inputs[1] { @02E2 msg.data.length } 02DB 5B JUMPDEST 02DC 61 PUSH2 0x02ee 02DF 61 PUSH2 0x02e9 02E2 36 CALLDATASIZE 02E3 60 PUSH1 0x04 02E5 61 PUSH2 0x2069 02E8 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @02DC stack[0] = 0x02ee // @02DF stack[1] = 0x02e9 // @02E2 stack[2] = msg.data.length // @02E3 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x2069 02E9 5B JUMPDEST 02EA 61 PUSH2 0x0815 02ED 56 *JUMP 02EE 5B JUMPDEST 02EF 60 PUSH1 0x40 02F1 51 MLOAD 02F2 61 PUSH2 0x01f4 02F5 92 SWAP3 02F6 91 SWAP2 02F7 90 SWAP1 02F8 61 PUSH2 0x2a42 02FB 56 *JUMP label_02FC: // Incoming jump from 0x013B, if 0x6352211e == stack[-1] // Inputs[1] { @0303 msg.data.length } 02FC 5B JUMPDEST 02FD 61 PUSH2 0x0225 0300 61 PUSH2 0x030a 0303 36 CALLDATASIZE 0304 60 PUSH1 0x04 0306 61 PUSH2 0x204b 0309 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @02FD stack[0] = 0x0225 // @0300 stack[1] = 0x030a // @0303 stack[2] = msg.data.length // @0304 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x204b 030A 5B JUMPDEST 030B 61 PUSH2 0x0858 030E 56 *JUMP label_030F: // Incoming jump from 0x0146, if 0x672a9400 == stack[-1] // Inputs[1] { @0316 msg.data.length } 030F 5B JUMPDEST 0310 61 PUSH2 0x0245 0313 61 PUSH2 0x031d 0316 36 CALLDATASIZE 0317 60 PUSH1 0x04 0319 61 PUSH2 0x2088 031C 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @0310 stack[0] = 0x0245 // @0313 stack[1] = 0x031d // @0316 stack[2] = msg.data.length // @0317 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x2088 031D 5B JUMPDEST 031E 61 PUSH2 0x088d 0321 56 *JUMP label_0322: // Incoming jump from 0x00E9, if 0x70a08231 == stack[-1] // Inputs[1] { @0329 msg.data.length } 0322 5B JUMPDEST 0323 61 PUSH2 0x026f 0326 61 PUSH2 0x0330 0329 36 CALLDATASIZE 032A 60 PUSH1 0x04 032C 61 PUSH2 0x1e5c 032F 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @0323 stack[0] = 0x026f // @0326 stack[1] = 0x0330 // @0329 stack[2] = msg.data.length // @032A stack[3] = 0x04 // } // Block ends with unconditional jump to 0x1e5c 0330 5B JUMPDEST 0331 61 PUSH2 0x0958 0334 56 *JUMP label_0335: // Incoming jump from 0x00F4, if 0x715018a6 == stack[-1] 0335 5B JUMPDEST 0336 61 PUSH2 0x0245 0339 61 PUSH2 0x09a1 033C 56 *JUMP // Stack delta = +1 // Outputs[1] { @0336 stack[0] = 0x0245 } // Block ends with call to 0x09a1, returns to 0x0245 label_033D: // Incoming jump from 0x00FF, if 0x8da5cb5b == stack[-1] 033D 5B JUMPDEST 033E 61 PUSH2 0x0225 0341 61 PUSH2 0x0a0f 0344 56 *JUMP // Stack delta = +1 // Outputs[1] { @033E stack[0] = 0x0225 } // Block ends with call to 0x0a0f, returns to 0x0225 label_0345: // Incoming jump from 0x00B8, if 0x8f32d59b == stack[-1] 0345 5B JUMPDEST 0346 61 PUSH2 0x01e7 0349 61 PUSH2 0x0a1e 034C 56 *JUMP // Stack delta = +1 // Outputs[1] { @0346 stack[0] = 0x01e7 } // Block ends with call to 0x0a1e, returns to 0x01E7 label_034D: // Incoming jump from 0x00C3, if 0x938e3d7b == stack[-1] // Inputs[1] { @0354 msg.data.length } 034D 5B JUMPDEST 034E 61 PUSH2 0x0245 0351 61 PUSH2 0x035b 0354 36 CALLDATASIZE 0355 60 PUSH1 0x04 0357 61 PUSH2 0x2016 035A 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @034E stack[0] = 0x0245 // @0351 stack[1] = 0x035b // @0354 stack[2] = msg.data.length // @0355 stack[3] = 0x04 // } // Block ends with call to 0x2016, returns to 0x035B label_035B: // Incoming return from call to 0x2016 at 0x035A 035B 5B JUMPDEST 035C 61 PUSH2 0x0a42 035F 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x0a42 label_0360: // Incoming jump from 0x00CE, if 0x95d89b41 == stack[-1] 0360 5B JUMPDEST 0361 61 PUSH2 0x0205 0364 61 PUSH2 0x0a6f 0367 56 *JUMP // Stack delta = +1 // Outputs[1] { @0361 stack[0] = 0x0205 } // Block ends with call to 0x0a6f, returns to 0x0205 label_0368: // Incoming jump from 0x00D9, if 0x99e0dd7c == stack[-1] // Inputs[1] { @036F msg.data.length } 0368 5B JUMPDEST 0369 61 PUSH2 0x0245 036C 61 PUSH2 0x0376 036F 36 CALLDATASIZE 0370 60 PUSH1 0x04 0372 61 PUSH2 0x2016 0375 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @0369 stack[0] = 0x0245 // @036C stack[1] = 0x0376 // @036F stack[2] = msg.data.length // @0370 stack[3] = 0x04 // } // Block ends with call to 0x2016, returns to 0x0376 label_0376: // Incoming return from call to 0x2016 at 0x0375 0376 5B JUMPDEST 0377 61 PUSH2 0x0aca 037A 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x0aca label_037B: // Incoming jump from 0x007C, if 0xa22cb465 == stack[-1] // Inputs[1] { @0382 msg.data.length } 037B 5B JUMPDEST 037C 61 PUSH2 0x0245 037F 61 PUSH2 0x0389 0382 36 CALLDATASIZE 0383 60 PUSH1 0x04 0385 61 PUSH2 0x1f7a 0388 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @037C stack[0] = 0x0245 // @037F stack[1] = 0x0389 // @0382 stack[2] = msg.data.length // @0383 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x1f7a 0389 5B JUMPDEST 038A 61 PUSH2 0x0af7 038D 56 *JUMP label_038E: // Incoming jump from 0x0087, if 0xb88d4fde == stack[-1] // Inputs[1] { @0395 msg.data.length } 038E 5B JUMPDEST 038F 61 PUSH2 0x0245 0392 61 PUSH2 0x039c 0395 36 CALLDATASIZE 0396 60 PUSH1 0x04 0398 61 PUSH2 0x1f01 039B 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @038F stack[0] = 0x0245 // @0392 stack[1] = 0x039c // @0395 stack[2] = msg.data.length // @0396 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x1f01 039C 5B JUMPDEST 039D 61 PUSH2 0x0bc5 03A0 56 *JUMP label_03A1: // Incoming jump from 0x0092, if 0xb9c4d9fb == stack[-1] // Inputs[1] { @03A8 msg.data.length } 03A1 5B JUMPDEST 03A2 61 PUSH2 0x03b4 03A5 61 PUSH2 0x03af 03A8 36 CALLDATASIZE 03A9 60 PUSH1 0x04 03AB 61 PUSH2 0x204b 03AE 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @03A2 stack[0] = 0x03b4 // @03A5 stack[1] = 0x03af // @03A8 stack[2] = msg.data.length // @03A9 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x204b 03AF 5B JUMPDEST 03B0 61 PUSH2 0x0c04 03B3 56 *JUMP 03B4 5B JUMPDEST 03B5 60 PUSH1 0x40 03B7 51 MLOAD 03B8 61 PUSH2 0x01f4 03BB 91 SWAP2 03BC 90 SWAP1 03BD 61 PUSH2 0x2a5d 03C0 56 *JUMP label_03C1: // Incoming jump from 0x009D, if 0xc0ac9983 == stack[-1] 03C1 5B JUMPDEST 03C2 61 PUSH2 0x0205 03C5 61 PUSH2 0x0cfc 03C8 56 *JUMP // Stack delta = +1 // Outputs[1] { @03C2 stack[0] = 0x0205 } // Block ends with call to 0x0cfc, returns to 0x0205 label_03C9: // Incoming jump from 0x004B, if 0xc87b56dd == stack[-1] // Inputs[1] { @03D0 msg.data.length } 03C9 5B JUMPDEST 03CA 61 PUSH2 0x0205 03CD 61 PUSH2 0x03d7 03D0 36 CALLDATASIZE 03D1 60 PUSH1 0x04 03D3 61 PUSH2 0x204b 03D6 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @03CA stack[0] = 0x0205 // @03CD stack[1] = 0x03d7 // @03D0 stack[2] = msg.data.length // @03D1 stack[3] = 0x04 // } // Block ends with unconditional jump to 0x204b 03D7 5B JUMPDEST 03D8 61 PUSH2 0x0d57 03DB 56 *JUMP label_03DC: // Incoming jump from 0x0056, if 0xe8a3d485 == stack[-1] 03DC 5B JUMPDEST 03DD 61 PUSH2 0x0205 03E0 61 PUSH2 0x0d87 03E3 56 *JUMP // Stack delta = +1 // Outputs[1] { @03DD stack[0] = 0x0205 } // Block ends with call to 0x0d87, returns to 0x0205 label_03E4: // Incoming jump from 0x0061, if 0xe985e9c5 == stack[-1] // Inputs[1] { @03EB msg.data.length } 03E4 5B JUMPDEST 03E5 61 PUSH2 0x01e7 03E8 61 PUSH2 0x03f2 03EB 36 CALLDATASIZE 03EC 60 PUSH1 0x04 03EE 61 PUSH2 0x1e7a 03F1 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @03E5 stack[0] = 0x01e7 // @03E8 stack[1] = 0x03f2 // @03EB stack[2] = msg.data.length // @03EC stack[3] = 0x04 // } // Block ends with unconditional jump to 0x1e7a 03F2 5B JUMPDEST 03F3 61 PUSH2 0x0de2 03F6 56 *JUMP label_03F7: // Incoming jump from 0x006C, if 0xf2fde38b == stack[-1] // Inputs[1] { @03FE msg.data.length } 03F7 5B JUMPDEST 03F8 61 PUSH2 0x0245 03FB 61 PUSH2 0x0405 03FE 36 CALLDATASIZE 03FF 60 PUSH1 0x04 0401 61 PUSH2 0x1e5c 0404 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @03F8 stack[0] = 0x0245 // @03FB stack[1] = 0x0405 // @03FE stack[2] = msg.data.length // @03FF stack[3] = 0x04 // } // Block ends with unconditional jump to 0x1e5c 0405 5B JUMPDEST 0406 61 PUSH2 0x0e10 0409 56 *JUMP 040A 5B JUMPDEST 040B 60 PUSH1 0x01 040D 60 PUSH1 0x01 040F 60 PUSH1 0xe0 0411 1B SHL 0412 03 SUB 0413 19 NOT 0414 16 AND 0415 60 PUSH1 0x00 0417 90 SWAP1 0418 81 DUP2 0419 52 MSTORE 041A 60 PUSH1 0x01 041C 60 PUSH1 0x20 041E 52 MSTORE 041F 60 PUSH1 0x40 0421 90 SWAP1 0422 20 SHA3 0423 54 SLOAD 0424 60 PUSH1 0xff 0426 16 AND 0427 90 SWAP1 0428 56 *JUMP label_0429: // Incoming call from 0x0204, returns to 0x0205 // Inputs[2] // { // @042D storage[0x0d] // @0431 memory[0x40:0x60] // } 0429 5B JUMPDEST 042A 60 PUSH1 0x0d 042C 80 DUP1 042D 54 SLOAD 042E 60 PUSH1 0x40 0430 80 DUP1 0431 51 MLOAD 0432 60 PUSH1 0x20 0434 60 PUSH1 0x02 0436 60 PUSH1 0x01 0438 85 DUP6 0439 16 AND 043A 15 ISZERO 043B 61 PUSH2 0x0100 043E 02 MUL 043F 60 PUSH1 0x00 0441 19 NOT 0442 01 ADD 0443 90 SWAP1 0444 94 SWAP5 0445 16 AND 0446 93 SWAP4 0447 90 SWAP1 0448 93 SWAP4 0449 04 DIV 044A 60 PUSH1 0x1f 044C 81 DUP2 044D 01 ADD 044E 84 DUP5 044F 90 SWAP1 0450 04 DIV 0451 84 DUP5 0452 02 MUL 0453 82 DUP3 0454 01 ADD 0455 84 DUP5 0456 01 ADD 0457 90 SWAP1 0458 92 SWAP3 0459 52 MSTORE 045A 81 DUP2 045B 81 DUP2 045C 52 MSTORE 045D 92 SWAP3 045E 91 SWAP2 045F 83 DUP4 0460 01 ADD 0461 82 DUP3 0462 82 DUP3 0463 80 DUP1 0464 15 ISZERO 0465 61 PUSH2 0x04af 0468 57 *JUMPI // Stack delta = +6 // Outputs[8] // { // @0458 stack[2] = (storage[0x0d] & ~0x00 + 0x0100 * !(storage[0x0d] & 0x01)) / 0x02 // @0459 memory[0x40:0x60] = 0x20 + memory[0x40:0x60] + 0x20 * (((storage[0x0d] & ~0x00 + 0x0100 * !(storage[0x0d] & 0x01)) / 0x02 + 0x1f) / 0x20) // @045C memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = (storage[0x0d] & ~0x00 + 0x0100 * !(storage[0x0d] & 0x01)) / 0x02 // @045D stack[0] = memory[0x40:0x60] // @045E stack[1] = 0x0d // @0460 stack[3] = memory[0x40:0x60] + 0x20 // @0461 stack[4] = 0x0d // @0462 stack[5] = (storage[0x0d] & ~0x00 + 0x0100 * !(storage[0x0d] & 0x01)) / 0x02 // } // Block ends with conditional jump to 0x04af, if !((storage[0x0d] & ~0x00 + 0x0100 * !(storage[0x0d] & 0x01)) / 0x02) label_0469: // Incoming jump from 0x0468, if not !((storage[0x0d] & ~0x00 + 0x0100 * !(storage[0x0d] & 0x01)) / 0x02) // Inputs[1] { @0469 stack[-1] } 0469 80 DUP1 046A 60 PUSH1 0x1f 046C 10 LT 046D 61 PUSH2 0x0484 0470 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0484, if 0x1f < stack[-1] label_0471: // Incoming jump from 0x0470, if not 0x1f < stack[-1] // Inputs[4] // { // @0475 stack[-2] // @0476 storage[stack[-2]] // @0479 stack[-3] // @047B stack[-1] // } 0471 61 PUSH2 0x0100 0474 80 DUP1 0475 83 DUP4 0476 54 SLOAD 0477 04 DIV 0478 02 MUL 0479 83 DUP4 047A 52 MSTORE 047B 91 SWAP2 047C 60 PUSH1 0x20 047E 01 ADD 047F 91 SWAP2 0480 61 PUSH2 0x04af 0483 56 *JUMP // Stack delta = +0 // Outputs[3] // { // @047A memory[stack[-3]:stack[-3] + 0x20] = storage[stack[-2]] / 0x0100 * 0x0100 // @047F stack[-1] = stack[-1] // @047F stack[-3] = 0x20 + stack[-3] // } // Block ends with unconditional jump to 0x04af label_0484: // Incoming jump from 0x0AB6, if 0x1f < stack[-1] // Incoming jump from 0x0DCE, if 0x1f < stack[-1] // Incoming jump from 0x0D43, if 0x1f < stack[-1] // Incoming jump from 0x0470, if 0x1f < stack[-1] // Inputs[5] // { // @0485 stack[-3] // @0486 stack[-1] // @0488 stack[-2] // @0490 memory[0x00:0x20] // @0494 storage[keccak256(memory[0x00:0x20])] // } 0484 5B JUMPDEST 0485 82 DUP3 0486 01 ADD 0487 91 SWAP2 0488 90 SWAP1 0489 60 PUSH1 0x00 048B 52 MSTORE 048C 60 PUSH1 0x20 048E 60 PUSH1 0x00 0490 20 SHA3 0491 90 SWAP1 0492 5B JUMPDEST 0493 81 DUP2 0494 54 SLOAD 0495 81 DUP2 0496 52 MSTORE 0497 90 SWAP1 0498 60 PUSH1 0x01 049A 01 ADD 049B 90 SWAP1 049C 60 PUSH1 0x20 049E 01 ADD 049F 80 DUP1 04A0 83 DUP4 04A1 11 GT 04A2 61 PUSH2 0x0492 04A5 57 *JUMPI // Stack delta = +0 // Outputs[5] // { // @0487 stack[-3] = stack[-3] + stack[-1] // @048B memory[0x00:0x20] = stack[-2] // @0496 memory[stack[-3]:stack[-3] + 0x20] = storage[keccak256(memory[0x00:0x20])] // @049B stack[-2] = 0x01 + keccak256(memory[0x00:0x20]) // @049E stack[-1] = 0x20 + stack[-3] // } // Block ends with conditional jump to 0x0492, if stack[-3] + stack[-1] > 0x20 + stack[-3] label_04A6: // Incoming jump from 0x04A5, if not stack[-3] > 0x20 + stack[-1] // Incoming jump from 0x04A5, if not stack[-3] + stack[-1] > 0x20 + stack[-3] // Inputs[2] // { // @04A6 stack[-3] // @04A7 stack[-1] // } 04A6 82 DUP3 04A7 90 SWAP1 04A8 03 SUB 04A9 60 PUSH1 0x1f 04AB 16 AND 04AC 82 DUP3 04AD 01 ADD 04AE 91 SWAP2 // Stack delta = +0 // Outputs[2] // { // @04AE stack[-3] = stack[-3] + (0x1f & stack[-1] - stack[-3]) // @04AE stack[-1] = stack[-3] // } // Block continues label_04AF: // Incoming jump from 0x0AC9 // Incoming jump from 0x0DE1 // Incoming jump from 0x0D56 // Incoming jump from 0x0D3B, if !((storage[0x07] & ~0x00 + 0x0100 * !(storage[0x07] & 0x01)) / 0x02) // Incoming jump from 0x0DC6, if !((storage[0x06] & ~0x00 + 0x0100 * !(storage[0x06] & 0x01)) / 0x02) // Incoming jump from 0x0AAE, if !((storage[0x0e] & ~0x00 + 0x0100 * !(storage[0x0e] & 0x01)) / 0x02) // Incoming jump from 0x04AE // Incoming jump from 0x0483 // Incoming jump from 0x0468, if !((storage[0x0d] & ~0x00 + 0x0100 * !(storage[0x0d] & 0x01)) / 0x02) // Inputs[1] { @04B5 stack[-7] } 04AF 5B JUMPDEST 04B0 50 POP 04B1 50 POP 04B2 50 POP 04B3 50 POP 04B4 50 POP 04B5 81 DUP2 04B6 56 *JUMP // Stack delta = -5 // Block ends with unconditional jump to stack[-7] 04B7 5B JUMPDEST 04B8 60 PUSH1 0x00 04BA 61 PUSH2 0x04c2 04BD 82 DUP3 04BE 61 PUSH2 0x0e3d 04C1 56 *JUMP 04C2 5B JUMPDEST 04C3 61 PUSH2 0x04e7 04C6 57 *JUMPI 04C7 60 PUSH1 0x40 04C9 51 MLOAD 04CA 62 PUSH3 0x461bcd 04CE 60 PUSH1 0xe5 04D0 1B SHL 04D1 81 DUP2 04D2 52 MSTORE 04D3 60 PUSH1 0x04 04D5 01 ADD 04D6 61 PUSH2 0x04de 04D9 90 SWAP1 04DA 61 PUSH2 0x2bac 04DD 56 *JUMP 04DE 5B JUMPDEST 04DF 60 PUSH1 0x40 04E1 51 MLOAD 04E2 80 DUP1 04E3 91 SWAP2 04E4 03 SUB 04E5 90 SWAP1 04E6 FD *REVERT 04E7 5B JUMPDEST 04E8 50 POP 04E9 60 PUSH1 0x00 04EB 90 SWAP1 04EC 81 DUP2 04ED 52 MSTORE 04EE 60 PUSH1 0x03 04F0 60 PUSH1 0x20 04F2 52 MSTORE 04F3 60 PUSH1 0x40 04F5 90 SWAP1 04F6 20 SHA3 04F7 54 SLOAD 04F8 60 PUSH1 0x01 04FA 60 PUSH1 0x01 04FC 60 PUSH1 0xa0 04FE 1B SHL 04FF 03 SUB 0500 16 AND 0501 90 SWAP1 0502 56 *JUMP 0503 5B JUMPDEST 0504 60 PUSH1 0x00 0506 61 PUSH2 0x050e 0509 82 DUP3 050A 61 PUSH2 0x0858 050D 56 *JUMP 050E 5B JUMPDEST 050F 90 SWAP1 0510 50 POP 0511 80 DUP1 0512 60 PUSH1 0x01 0514 60 PUSH1 0x01 0516 60 PUSH1 0xa0 0518 1B SHL 0519 03 SUB 051A 16 AND 051B 83 DUP4 051C 60 PUSH1 0x01 051E 60 PUSH1 0x01 0520 60 PUSH1 0xa0 0522 1B SHL 0523 03 SUB 0524 16 AND 0525 14 EQ 0526 15 ISZERO 0527 61 PUSH2 0x0542 052A 57 *JUMPI 052B 60 PUSH1 0x40 052D 51 MLOAD 052E 62 PUSH3 0x461bcd 0532 60 PUSH1 0xe5 0534 1B SHL 0535 81 DUP2 0536 52 MSTORE 0537 60 PUSH1 0x04 0539 01 ADD 053A 61 PUSH2 0x04de 053D 90 SWAP1 053E 61 PUSH2 0x2bfc 0541 56 *JUMP 0542 5B JUMPDEST 0543 80 DUP1 0544 60 PUSH1 0x01 0546 60 PUSH1 0x01 0548 60 PUSH1 0xa0 054A 1B SHL 054B 03 SUB 054C 16 AND 054D 61 PUSH2 0x0554 0550 61 PUSH2 0x0e5a 0553 56 *JUMP 0554 5B JUMPDEST 0555 60 PUSH1 0x01 0557 60 PUSH1 0x01 0559 60 PUSH1 0xa0 055B 1B SHL 055C 03 SUB 055D 16 AND 055E 14 EQ 055F 80 DUP1 0560 61 PUSH2 0x0570 0563 57 *JUMPI 0564 50 POP 0565 61 PUSH2 0x0570 0568 81 DUP2 0569 61 PUSH2 0x03f2 056C 61 PUSH2 0x0e5a 056F 56 *JUMP 0570 5B JUMPDEST 0571 61 PUSH2 0x058c 0574 57 *JUMPI 0575 60 PUSH1 0x40 0577 51 MLOAD 0578 62 PUSH3 0x461bcd 057C 60 PUSH1 0xe5 057E 1B SHL 057F 81 DUP2 0580 52 MSTORE 0581 60 PUSH1 0x04 0583 01 ADD 0584 61 PUSH2 0x04de 0587 90 SWAP1 0588 61 PUSH2 0x2b6c 058B 56 *JUMP 058C 5B JUMPDEST 058D 60 PUSH1 0x00 058F 82 DUP3 0590 81 DUP2 0591 52 MSTORE 0592 60 PUSH1 0x03 0594 60 PUSH1 0x20 0596 52 MSTORE 0597 60 PUSH1 0x40 0599 80 DUP1 059A 82 DUP3 059B 20 SHA3 059C 80 DUP1 059D 54 SLOAD 059E 60 PUSH1 0x01 05A0 60 PUSH1 0x01 05A2 60 PUSH1 0xa0 05A4 1B SHL 05A5 03 SUB 05A6 19 NOT 05A7 16 AND 05A8 60 PUSH1 0x01 05AA 60 PUSH1 0x01 05AC 60 PUSH1 0xa0 05AE 1B SHL 05AF 03 SUB 05B0 87 DUP8 05B1 81 DUP2 05B2 16 AND 05B3 91 SWAP2 05B4 82 DUP3 05B5 17 OR 05B6 90 SWAP1 05B7 92 SWAP3 05B8 55 SSTORE 05B9 91 SWAP2 05BA 51 MLOAD 05BB 85 DUP6 05BC 93 SWAP4 05BD 91 SWAP2 05BE 85 DUP6 05BF 16 AND 05C0 91 SWAP2 05C1 7F PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925 05E2 91 SWAP2 05E3 A4 LOG4 05E4 50 POP 05E5 50 POP 05E6 50 POP 05E7 56 *JUMP 05E8 5B JUMPDEST 05E9 60 PUSH1 0x00 05EB 81 DUP2 05EC 81 DUP2 05ED 52 MSTORE 05EE 60 PUSH1 0x0f 05F0 60 PUSH1 0x20 05F2 90 SWAP1 05F3 81 DUP2 05F4 52 MSTORE 05F5 60 PUSH1 0x40 05F7 80 DUP1 05F8 83 DUP4 05F9 20 SHA3 05FA 80 DUP1 05FB 54 SLOAD 05FC 82 DUP3 05FD 51 MLOAD 05FE 81 DUP2 05FF 85 DUP6 0600 02 MUL 0601 81 DUP2 0602 01 ADD 0603 85 DUP6 0604 01 ADD 0605 90 SWAP1 0606 93 SWAP4 0607 52 MSTORE 0608 80 DUP1 0609 83 DUP4 060A 52 MSTORE 060B 60 PUSH1 0x60 060D 94 SWAP5 060E 85 DUP6 060F 94 SWAP5 0610 84 DUP5 0611 01 ADD 0612 5B JUMPDEST 0613 82 DUP3 0614 82 DUP3 0615 10 LT 0616 15 ISZERO 0617 61 PUSH2 0x065a 061A 57 *JUMPI 061B 60 PUSH1 0x00 061D 84 DUP5 061E 81 DUP2 061F 52 MSTORE 0620 60 PUSH1 0x20 0622 90 SWAP1 0623 81 DUP2 0624 90 SWAP1 0625 20 SHA3 0626 60 PUSH1 0x40 0628 80 DUP1 0629 51 MLOAD 062A 80 DUP1 062B 82 DUP3 062C 01 ADD 062D 90 SWAP1 062E 91 SWAP2 062F 52 MSTORE 0630 60 PUSH1 0x02 0632 85 DUP6 0633 02 MUL 0634 90 SWAP1 0635 91 SWAP2 0636 01 ADD 0637 80 DUP1 0638 54 SLOAD 0639 60 PUSH1 0x01 063B 60 PUSH1 0x01 063D 60 PUSH1 0xa0 063F 1B SHL 0640 03 SUB 0641 16 AND 0642 82 DUP3 0643 52 MSTORE 0644 60 PUSH1 0x01 0646 90 SWAP1 0647 81 DUP2 0648 01 ADD 0649 54 SLOAD 064A 82 DUP3 064B 84 DUP5 064C 01 ADD 064D 52 MSTORE 064E 90 SWAP1 064F 83 DUP4 0650 52 MSTORE 0651 90 SWAP1 0652 92 SWAP3 0653 01 ADD 0654 91 SWAP2 0655 01 ADD 0656 61 PUSH2 0x0612 0659 56 *JUMP 065A 5B JUMPDEST 065B 50 POP 065C 50 POP 065D 50 POP 065E 50 POP 065F 90 SWAP1 0660 50 POP 0661 60 PUSH1 0x60 0663 81 DUP2 0664 51 MLOAD 0665 60 PUSH1 0x40 0667 51 MLOAD 0668 90 SWAP1 0669 80 DUP1 066A 82 DUP3 066B 52 MSTORE 066C 80 DUP1 066D 60 PUSH1 0x20 066F 02 MUL 0670 60 PUSH1 0x20 0672 01 ADD 0673 82 DUP3 0674 01 ADD 0675 60 PUSH1 0x40 0677 52 MSTORE 0678 80 DUP1 0679 15 ISZERO 067A 61 PUSH2 0x068d 067D 57 *JUMPI 067E 81 DUP2 067F 60 PUSH1 0x20 0681 01 ADD 0682 60 PUSH1 0x20 0684 82 DUP3 0685 02 MUL 0686 80 DUP1 0687 38 CODESIZE 0688 83 DUP4 0689 39 CODECOPY 068A 01 ADD 068B 90 SWAP1 068C 50 POP 068D 5B JUMPDEST 068E 50 POP 068F 90 SWAP1 0690 50 POP 0691 60 PUSH1 0x00 0693 5B JUMPDEST 0694 82 DUP3 0695 51 MLOAD 0696 81 DUP2 0697 10 LT 0698 15 ISZERO 0699 61 PUSH2 0x06d3 069C 57 *JUMPI 069D 82 DUP3 069E 81 DUP2 069F 81 DUP2 06A0 51 MLOAD 06A1 81 DUP2 06A2 10 LT 06A3 61 PUSH2 0x06a8 06A6 57 *JUMPI 06A7 FE *ASSERT 06A8 5B JUMPDEST 06A9 60 PUSH1 0x20 06AB 02 MUL 06AC 60 PUSH1 0x20 06AE 01 ADD 06AF 01 ADD 06B0 51 MLOAD 06B1 60 PUSH1 0x20 06B3 01 ADD 06B4 51 MLOAD 06B5 82 DUP3 06B6 82 DUP3 06B7 81 DUP2 06B8 51 MLOAD 06B9 81 DUP2 06BA 10 LT 06BB 61 PUSH2 0x06c0 06BE 57 *JUMPI 06BF FE *ASSERT 06C0 5B JUMPDEST 06C1 60 PUSH1 0x20 06C3 90 SWAP1 06C4 81 DUP2 06C5 02 MUL 06C6 91 SWAP2 06C7 90 SWAP1 06C8 91 SWAP2 06C9 01 ADD 06CA 01 ADD 06CB 52 MSTORE 06CC 60 PUSH1 0x01 06CE 01 ADD 06CF 61 PUSH2 0x0693 06D2 56 *JUMP 06D3 5B JUMPDEST 06D4 50 POP 06D5 93 SWAP4 06D6 92 SWAP3 06D7 50 POP 06D8 50 POP 06D9 50 POP 06DA 56 *JUMP label_06DB: // Incoming call from 0x026E, returns to 0x026F // Inputs[1] { @06DE storage[0x0b] } 06DB 5B JUMPDEST 06DC 60 PUSH1 0x0b 06DE 54 SLOAD // Stack delta = +1 // Outputs[1] { @06DE stack[0] = storage[0x0b] } // Block continues label_06DF: // Incoming call from 0x2DDE, returns to 0x2DC2 // Incoming return from call to 0x1C81 at 0x1CF7 // Incoming jump from 0x06DE // Incoming call from 0x2274, returns to 0x2168 // Inputs[2] // { // @06E0 stack[-2] // @06E0 stack[-1] // } 06DF 5B JUMPDEST 06E0 90 SWAP1 06E1 56 *JUMP // Stack delta = -1 // Outputs[1] { @06E0 stack[-2] = stack[-1] } // Block ends with unconditional jump to stack[-2] 06E2 5B JUMPDEST 06E3 61 PUSH2 0x06f3 06E6 61 PUSH2 0x06ed 06E9 61 PUSH2 0x0e5a 06EC 56 *JUMP 06ED 5B JUMPDEST 06EE 82 DUP3 06EF 61 PUSH2 0x0e5e 06F2 56 *JUMP 06F3 5B JUMPDEST 06F4 61 PUSH2 0x070f 06F7 57 *JUMPI 06F8 60 PUSH1 0x40 06FA 51 MLOAD 06FB 62 PUSH3 0x461bcd 06FF 60 PUSH1 0xe5 0701 1B SHL 0702 81 DUP2 0703 52 MSTORE 0704 60 PUSH1 0x04 0706 01 ADD 0707 61 PUSH2 0x04de 070A 90 SWAP1 070B 61 PUSH2 0x2c0c 070E 56 *JUMP 070F 5B JUMPDEST 0710 61 PUSH2 0x071a 0713 83 DUP4 0714 83 DUP4 0715 83 DUP4 0716 61 PUSH2 0x0ee3 0719 56 *JUMP 071A 5B JUMPDEST 071B 50 POP 071C 50 POP 071D 50 POP 071E 56 *JUMP 071F 5B JUMPDEST 0720 60 PUSH1 0x00 0722 61 PUSH2 0x072a 0725 83 DUP4 0726 61 PUSH2 0x0958 0729 56 *JUMP 072A 5B JUMPDEST 072B 82 DUP3 072C 10 LT 072D 61 PUSH2 0x0748 0730 57 *JUMPI 0731 60 PUSH1 0x40 0733 51 MLOAD 0734 62 PUSH3 0x461bcd 0738 60 PUSH1 0xe5 073A 1B SHL 073B 81 DUP2 073C 52 MSTORE 073D 60 PUSH1 0x04 073F 01 ADD 0740 61 PUSH2 0x04de 0743 90 SWAP1 0744 61 PUSH2 0x2aec 0747 56 *JUMP 0748 5B JUMPDEST 0749 60 PUSH1 0x01 074B 60 PUSH1 0x01 074D 60 PUSH1 0xa0 074F 1B SHL 0750 03 SUB 0751 83 DUP4 0752 16 AND 0753 60 PUSH1 0x00 0755 90 SWAP1 0756 81 DUP2 0757 52 MSTORE 0758 60 PUSH1 0x09 075A 60 PUSH1 0x20 075C 52 MSTORE 075D 60 PUSH1 0x40 075F 90 SWAP1 0760 20 SHA3 0761 80 DUP1 0762 54 SLOAD 0763 83 DUP4 0764 90 SWAP1 0765 81 DUP2 0766 10 LT 0767 61 PUSH2 0x076c 076A 57 *JUMPI 076B FE *ASSERT 076C 5B JUMPDEST 076D 90 SWAP1 076E 60 PUSH1 0x00 0770 52 MSTORE 0771 60 PUSH1 0x20 0773 60 PUSH1 0x00 0775 20 SHA3 0776 01 ADD 0777 54 SLOAD 0778 90 SWAP1 0779 50 POP label_077A: // Incoming return from call to 0x2DDF at 0x1DAF // Incoming return from call to 0x2D43 at 0x2D30 // Incoming return from call to 0x2719 at 0x2BDB // Incoming return from call to 0x215F at 0x29FD // Incoming return from call to 0x2DD6 at 0x1DA4 // Incoming return from call to 0x226C at 0x2C69 // Inputs[3] // { // @077B stack[-4] // @077B stack[-1] // @077C stack[-3] // } 077A 5B JUMPDEST 077B 92 SWAP3 077C 91 SWAP2 077D 50 POP 077E 50 POP 077F 56 *JUMP // Stack delta = -3 // Outputs[1] { @077B stack[-4] = stack[-1] } // Block ends with unconditional jump to stack[-4] 0780 5B JUMPDEST 0781 61 PUSH2 0x071a 0784 83 DUP4 0785 83 DUP4 0786 83 DUP4 0787 60 PUSH1 0x40 0789 51 MLOAD 078A 80 DUP1 078B 60 PUSH1 0x20 078D 01 ADD 078E 60 PUSH1 0x40 0790 52 MSTORE 0791 80 DUP1 0792 60 PUSH1 0x00 0794 81 DUP2 0795 52 MSTORE 0796 50 POP 0797 61 PUSH2 0x0bc5 079A 56 *JUMP 079B 5B JUMPDEST 079C 61 PUSH2 0x07a6 079F 61 PUSH2 0x06ed 07A2 61 PUSH2 0x0e5a 07A5 56 *JUMP 07A6 5B JUMPDEST 07A7 61 PUSH2 0x07c2 07AA 57 *JUMPI 07AB 60 PUSH1 0x40 07AD 51 MLOAD 07AE 62 PUSH3 0x461bcd 07B2 60 PUSH1 0xe5 07B4 1B SHL 07B5 81 DUP2 07B6 52 MSTORE 07B7 60 PUSH1 0x04 07B9 01 ADD 07BA 61 PUSH2 0x04de 07BD 90 SWAP1 07BE 61 PUSH2 0x2c4c 07C1 56 *JUMP 07C2 5B JUMPDEST 07C3 61 PUSH2 0x07cb 07C6 81 DUP2 07C7 61 PUSH2 0x0f02 07CA 56 *JUMP label_07CB: // Incoming jump from 0x2DC8, if stack[-2] == stack[-1] // Inputs[1] { @07CD stack[-2] } 07CB 5B JUMPDEST 07CC 50 POP 07CD 56 *JUMP // Stack delta = -2 // Block ends with unconditional jump to stack[-2] 07CE 5B JUMPDEST 07CF 60 PUSH1 0x00 07D1 61 PUSH2 0x07d8 07D4 61 PUSH2 0x06db 07D7 56 *JUMP 07D8 5B JUMPDEST 07D9 82 DUP3 07DA 10 LT 07DB 61 PUSH2 0x07f6 07DE 57 *JUMPI 07DF 60 PUSH1 0x40 07E1 51 MLOAD 07E2 62 PUSH3 0x461bcd 07E6 60 PUSH1 0xe5 07E8 1B SHL 07E9 81 DUP2 07EA 52 MSTORE 07EB 60 PUSH1 0x04 07ED 01 ADD 07EE 61 PUSH2 0x04de 07F1 90 SWAP1 07F2 61 PUSH2 0x2c1c 07F5 56 *JUMP 07F6 5B JUMPDEST 07F7 60 PUSH1 0x0b 07F9 82 DUP3 07FA 81 DUP2 07FB 54 SLOAD 07FC 81 DUP2 07FD 10 LT 07FE 61 PUSH2 0x0803 0801 57 *JUMPI 0802 FE *ASSERT 0803 5B JUMPDEST 0804 90 SWAP1 0805 60 PUSH1 0x00 0807 52 MSTORE 0808 60 PUSH1 0x20 080A 60 PUSH1 0x00 080C 20 SHA3 080D 01 ADD 080E 54 SLOAD 080F 90 SWAP1 0810 50 POP 0811 91 SWAP2 0812 90 SWAP1 0813 50 POP 0814 56 *JUMP 0815 5B JUMPDEST 0816 60 PUSH1 0x0f 0818 60 PUSH1 0x20 081A 52 MSTORE 081B 81 DUP2 081C 60 PUSH1 0x00 081E 52 MSTORE 081F 60 PUSH1 0x40 0821 60 PUSH1 0x00 0823 20 SHA3 0824 81 DUP2 0825 81 DUP2 0826 54 SLOAD 0827 81 DUP2 0828 10 LT 0829 61 PUSH2 0x082e 082C 57 *JUMPI 082D FE *ASSERT 082E 5B JUMPDEST 082F 60 PUSH1 0x00 0831 91 SWAP2 0832 82 DUP3 0833 52 MSTORE 0834 60 PUSH1 0x20 0836 90 SWAP1 0837 91 SWAP2 0838 20 SHA3 0839 60 PUSH1 0x02 083B 90 SWAP1 083C 91 SWAP2 083D 02 MUL 083E 01 ADD 083F 80 DUP1 0840 54 SLOAD 0841 60 PUSH1 0x01 0843 90 SWAP1 0844 91 SWAP2 0845 01 ADD 0846 54 SLOAD 0847 60 PUSH1 0x01 0849 60 PUSH1 0x01 084B 60 PUSH1 0xa0 084D 1B SHL 084E 03 SUB 084F 90 SWAP1 0850 91 SWAP2 0851 16 AND 0852 92 SWAP3 0853 50 POP 0854 90 SWAP1 0855 50 POP 0856 82 DUP3 0857 56 *JUMP 0858 5B JUMPDEST 0859 60 PUSH1 0x00 085B 81 DUP2 085C 81 DUP2 085D 52 MSTORE 085E 60 PUSH1 0x02 0860 60 PUSH1 0x20 0862 52 MSTORE 0863 60 PUSH1 0x40 0865 81 DUP2 0866 20 SHA3 0867 54 SLOAD 0868 60 PUSH1 0x01 086A 60 PUSH1 0x01 086C 60 PUSH1 0xa0 086E 1B SHL 086F 03 SUB 0870 16 AND 0871 80 DUP1 0872 61 PUSH2 0x077a 0875 57 *JUMPI 0876 60 PUSH1 0x40 0878 51 MLOAD 0879 62 PUSH3 0x461bcd 087D 60 PUSH1 0xe5 087F 1B SHL 0880 81 DUP2 0881 52 MSTORE 0882 60 PUSH1 0x04 0884 01 ADD 0885 61 PUSH2 0x04de 0888 90 SWAP1 0889 61 PUSH2 0x2b8c 088C 56 *JUMP 088D 5B JUMPDEST 088E 60 PUSH1 0x01 0890 30 ADDRESS 0891 87 DUP8 0892 60 PUSH1 0x40 0894 51 MLOAD 0895 60 PUSH1 0x20 0897 01 ADD 0898 61 PUSH2 0x08a2 089B 92 SWAP3 089C 91 SWAP2 089D 90 SWAP1 089E 61 PUSH2 0x29ca 08A1 56 *JUMP 08A2 5B JUMPDEST 08A3 60 PUSH1 0x40 08A5 51 MLOAD 08A6 60 PUSH1 0x20 08A8 81 DUP2 08A9 83 DUP4 08AA 03 SUB 08AB 03 SUB 08AC 81 DUP2 08AD 52 MSTORE 08AE 90 SWAP1 08AF 60 PUSH1 0x40 08B1 52 MSTORE 08B2 80 DUP1 08B3 51 MLOAD 08B4 90 SWAP1 08B5 60 PUSH1 0x20 08B7 01 ADD 08B8 20 SHA3 08B9 86 DUP7 08BA 86 DUP7 08BB 86 DUP7 08BC 60 PUSH1 0x40 08BE 51 MLOAD 08BF 60 PUSH1 0x00 08C1 81 DUP2 08C2 52 MSTORE 08C3 60 PUSH1 0x20 08C5 01 ADD 08C6 60 PUSH1 0x40 08C8 52 MSTORE 08C9 60 PUSH1 0x40 08CB 51 MLOAD 08CC 61 PUSH2 0x08d8 08CF 94 SWAP5 08D0 93 SWAP4 08D1 92 SWAP3 08D2 91 SWAP2 08D3 90 SWAP1 08D4 61 PUSH2 0x2a8d 08D7 56 *JUMP 08D8 5B JUMPDEST 08D9 60 PUSH1 0x20 08DB 60 PUSH1 0x40 08DD 51 MLOAD 08DE 60 PUSH1 0x20 08E0 81 DUP2 08E1 03 SUB 08E2 90 SWAP1 08E3 80 DUP1 08E4 84 DUP5 08E5 03 SUB 08E6 90 SWAP1 08E7 85 DUP6 08E8 5A GAS 08E9 FA STATICCALL 08EA 15 ISZERO 08EB 80 DUP1 08EC 15 ISZERO 08ED 61 PUSH2 0x08fa 08F0 57 *JUMPI 08F1 3D RETURNDATASIZE 08F2 60 PUSH1 0x00 08F4 80 DUP1 08F5 3E RETURNDATACOPY 08F6 3D RETURNDATASIZE 08F7 60 PUSH1 0x00 08F9 FD *REVERT 08FA 5B JUMPDEST 08FB 50 POP 08FC 50 POP 08FD 50 POP 08FE 60 PUSH1 0x20 0900 60 PUSH1 0x40 0902 51 MLOAD 0903 03 SUB 0904 51 MLOAD 0905 60 PUSH1 0x01 0907 60 PUSH1 0x01 0909 60 PUSH1 0xa0 090B 1B SHL 090C 03 SUB 090D 16 AND 090E 61 PUSH2 0x0915 0911 61 PUSH2 0x0a0f 0914 56 *JUMP 0915 5B JUMPDEST 0916 60 PUSH1 0x01 0918 60 PUSH1 0x01 091A 60 PUSH1 0xa0 091C 1B SHL 091D 03 SUB 091E 16 AND 091F 14 EQ 0920 61 PUSH2 0x093b 0923 57 *JUMPI 0924 60 PUSH1 0x40 0926 51 MLOAD 0927 62 PUSH3 0x461bcd 092B 60 PUSH1 0xe5 092D 1B SHL 092E 81 DUP2 092F 52 MSTORE 0930 60 PUSH1 0x04 0932 01 ADD 0933 61 PUSH2 0x04de 0936 90 SWAP1 0937 61 PUSH2 0x2b5c 093A 56 *JUMP 093B 5B JUMPDEST 093C 61 PUSH2 0x0946 093F 33 CALLER 0940 87 DUP8 0941 84 DUP5 0942 61 PUSH2 0x0f14 0945 56 *JUMP 0946 5B JUMPDEST 0947 61 PUSH2 0x0950 094A 86 DUP7 094B 82 DUP3 094C 61 PUSH2 0x1139 094F 56 *JUMP 0950 5B JUMPDEST 0951 50 POP 0952 50 POP 0953 50 POP 0954 50 POP 0955 50 POP 0956 50 POP 0957 56 *JUMP 0958 5B JUMPDEST 0959 60 PUSH1 0x00 095B 60 PUSH1 0x01 095D 60 PUSH1 0x01 095F 60 PUSH1 0xa0 0961 1B SHL 0962 03 SUB 0963 82 DUP3 0964 16 AND 0965 61 PUSH2 0x0980 0968 57 *JUMPI 0969 60 PUSH1 0x40 096B 51 MLOAD 096C 62 PUSH3 0x461bcd 0970 60 PUSH1 0xe5 0972 1B SHL 0973 81 DUP2 0974 52 MSTORE 0975 60 PUSH1 0x04 0977 01 ADD 0978 61 PUSH2 0x04de 097B 90 SWAP1 097C 61 PUSH2 0x2b7c 097F 56 *JUMP 0980 5B JUMPDEST 0981 60 PUSH1 0x01 0983 60 PUSH1 0x01 0985 60 PUSH1 0xa0 0987 1B SHL 0988 03 SUB 0989 82 DUP3 098A 16 AND 098B 60 PUSH1 0x00 098D 90 SWAP1 098E 81 DUP2 098F 52 MSTORE 0990 60 PUSH1 0x04 0992 60 PUSH1 0x20 0994 52 MSTORE 0995 60 PUSH1 0x40 0997 90 SWAP1 0998 20 SHA3 0999 61 PUSH2 0x077a 099C 90 SWAP1 099D 61 PUSH2 0x116c 09A0 56 *JUMP label_09A1: // Incoming call from 0x033C, returns to 0x0245 09A1 5B JUMPDEST 09A2 61 PUSH2 0x09a9 09A5 61 PUSH2 0x0a1e 09A8 56 *JUMP // Stack delta = +1 // Outputs[1] { @09A2 stack[0] = 0x09a9 } // Block ends with call to 0x0a1e, returns to 0x09A9 label_09A9: // Incoming return from call to 0x0A1E at 0x09A8 // Inputs[1] { @09AD stack[-1] } 09A9 5B JUMPDEST 09AA 61 PUSH2 0x09c5 09AD 57 *JUMPI // Stack delta = -1 // Block ends with conditional jump to 0x09c5, if stack[-1] label_09AE: // Incoming jump from 0x09AD, if not stack[-1] // Inputs[1] { @09B0 memory[0x40:0x60] } 09AE 60 PUSH1 0x40 09B0 51 MLOAD 09B1 62 PUSH3 0x461bcd 09B5 60 PUSH1 0xe5 09B7 1B SHL 09B8 81 DUP2 09B9 52 MSTORE 09BA 60 PUSH1 0x04 09BC 01 ADD 09BD 61 PUSH2 0x04de 09C0 90 SWAP1 09C1 61 PUSH2 0x2bcc 09C4 56 *JUMP // Stack delta = +2 // Outputs[3] // { // @09B9 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x461bcd << 0xe5 // @09C0 stack[0] = 0x04de // @09C0 stack[1] = 0x04 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x2bcc label_09C5: // Incoming jump from 0x09AD, if stack[-1] // Inputs[5] // { // @09C9 storage[0x00] // @09CC memory[0x40:0x60] // @09FD memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00] // @0A01 storage[0x00] // @0A0E stack[-1] // } 09C5 5B JUMPDEST 09C6 60 PUSH1 0x00 09C8 80 DUP1 09C9 54 SLOAD 09CA 60 PUSH1 0x40 09CC 51 MLOAD 09CD 60 PUSH1 0x01 09CF 60 PUSH1 0x01 09D1 60 PUSH1 0xa0 09D3 1B SHL 09D4 03 SUB 09D5 90 SWAP1 09D6 91 SWAP2 09D7 16 AND 09D8 90 SWAP1 09D9 7F PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 09FA 90 SWAP1 09FB 83 DUP4 09FC 90 SWAP1 09FD A3 LOG3 09FE 60 PUSH1 0x00 0A00 80 DUP1 0A01 54 SLOAD 0A02 60 PUSH1 0x01 0A04 60 PUSH1 0x01 0A06 60 PUSH1 0xa0 0A08 1B SHL 0A09 03 SUB 0A0A 19 NOT 0A0B 16 AND 0A0C 90 SWAP1 0A0D 55 SSTORE 0A0E 56 *JUMP // Stack delta = -1 // Outputs[2] // { // @09FD log(memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x00], [0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0, storage[0x00] & (0x01 << 0xa0) - 0x01, 0x00]); // @0A0D storage[0x00] = ~((0x01 << 0xa0) - 0x01) & storage[0x00] // } // Block ends with unconditional jump to stack[-1] label_0A0F: // Incoming call from 0x0344, returns to 0x0225 // Inputs[2] // { // @0A12 storage[0x00] // @0A1C stack[-1] // } 0A0F 5B JUMPDEST 0A10 60 PUSH1 0x00 0A12 54 SLOAD 0A13 60 PUSH1 0x01 0A15 60 PUSH1 0x01 0A17 60 PUSH1 0xa0 0A19 1B SHL 0A1A 03 SUB 0A1B 16 AND 0A1C 90 SWAP1 0A1D 56 *JUMP // Stack delta = +0 // Outputs[1] { @0A1C stack[-1] = (0x01 << 0xa0) - 0x01 & storage[0x00] } // Block ends with unconditional jump to stack[-1] label_0A1E: // Incoming call from 0x0AD1, returns to 0x0AD2 // Incoming call from 0x034C, returns to 0x01E7 // Incoming call from 0x09A8, returns to 0x09A9 // Incoming call from 0x0A49, returns to 0x0A4A // Inputs[1] { @0A22 storage[0x00] } 0A1E 5B JUMPDEST 0A1F 60 PUSH1 0x00 0A21 80 DUP1 0A22 54 SLOAD 0A23 60 PUSH1 0x01 0A25 60 PUSH1 0x01 0A27 60 PUSH1 0xa0 0A29 1B SHL 0A2A 03 SUB 0A2B 16 AND 0A2C 61 PUSH2 0x0a33 0A2F 61 PUSH2 0x0e5a 0A32 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @0A1F stack[0] = 0x00 // @0A2B stack[1] = (0x01 << 0xa0) - 0x01 & storage[0x00] // @0A2C stack[2] = 0x0a33 // } // Block ends with call to 0x0e5a, returns to 0x0A33 label_0A33: // Incoming return from call to 0x0E5A at 0x0A32 // Inputs[4] // { // @0A3C stack[-1] // @0A3D stack[-2] // @0A3E stack[-3] // @0A40 stack[-4] // } 0A33 5B JUMPDEST 0A34 60 PUSH1 0x01 0A36 60 PUSH1 0x01 0A38 60 PUSH1 0xa0 0A3A 1B SHL 0A3B 03 SUB 0A3C 16 AND 0A3D 14 EQ 0A3E 90 SWAP1 0A3F 50 POP 0A40 90 SWAP1 0A41 56 *JUMP // Stack delta = -3 // Outputs[1] { @0A40 stack[-4] = (0x01 << 0xa0) - 0x01 & stack[-1] == stack[-2] } // Block ends with unconditional jump to stack[-4] label_0A42: // Incoming jump from 0x035F 0A42 5B JUMPDEST 0A43 61 PUSH2 0x0a4a 0A46 61 PUSH2 0x0a1e 0A49 56 *JUMP // Stack delta = +1 // Outputs[1] { @0A43 stack[0] = 0x0a4a } // Block ends with call to 0x0a1e, returns to 0x0A4A label_0A4A: // Incoming return from call to 0x0A1E at 0x0A49 // Inputs[1] { @0A4E stack[-1] } 0A4A 5B JUMPDEST 0A4B 61 PUSH2 0x0a66 0A4E 57 *JUMPI // Stack delta = -1 // Block ends with conditional jump to 0x0a66, if stack[-1] label_0A4F: // Incoming jump from 0x0A4E, if not stack[-1] // Inputs[1] { @0A51 memory[0x40:0x60] } 0A4F 60 PUSH1 0x40 0A51 51 MLOAD 0A52 62 PUSH3 0x461bcd 0A56 60 PUSH1 0xe5 0A58 1B SHL 0A59 81 DUP2 0A5A 52 MSTORE 0A5B 60 PUSH1 0x04 0A5D 01 ADD 0A5E 61 PUSH2 0x04de 0A61 90 SWAP1 0A62 61 PUSH2 0x2bcc 0A65 56 *JUMP // Stack delta = +2 // Outputs[3] // { // @0A5A memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x461bcd << 0xe5 // @0A61 stack[0] = 0x04de // @0A61 stack[1] = 0x04 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x2bcc label_0A66: // Incoming jump from 0x0A4E, if stack[-1] // Inputs[1] { @0A6A stack[-1] } 0A66 5B JUMPDEST 0A67 61 PUSH2 0x07cb 0A6A 81 DUP2 0A6B 61 PUSH2 0x1170 0A6E 56 *JUMP // Stack delta = +2 // Outputs[2] // { // @0A67 stack[0] = 0x07cb // @0A6A stack[1] = stack[-1] // } // Block ends with unconditional jump to 0x1170 label_0A6F: // Incoming call from 0x0367, returns to 0x0205 // Inputs[2] // { // @0A73 storage[0x0e] // @0A77 memory[0x40:0x60] // } 0A6F 5B JUMPDEST 0A70 60 PUSH1 0x0e 0A72 80 DUP1 0A73 54 SLOAD 0A74 60 PUSH1 0x40 0A76 80 DUP1 0A77 51 MLOAD 0A78 60 PUSH1 0x20 0A7A 60 PUSH1 0x02 0A7C 60 PUSH1 0x01 0A7E 85 DUP6 0A7F 16 AND 0A80 15 ISZERO 0A81 61 PUSH2 0x0100 0A84 02 MUL 0A85 60 PUSH1 0x00 0A87 19 NOT 0A88 01 ADD 0A89 90 SWAP1 0A8A 94 SWAP5 0A8B 16 AND 0A8C 93 SWAP4 0A8D 90 SWAP1 0A8E 93 SWAP4 0A8F 04 DIV 0A90 60 PUSH1 0x1f 0A92 81 DUP2 0A93 01 ADD 0A94 84 DUP5 0A95 90 SWAP1 0A96 04 DIV 0A97 84 DUP5 0A98 02 MUL 0A99 82 DUP3 0A9A 01 ADD 0A9B 84 DUP5 0A9C 01 ADD 0A9D 90 SWAP1 0A9E 92 SWAP3 0A9F 52 MSTORE 0AA0 81 DUP2 0AA1 81 DUP2 0AA2 52 MSTORE 0AA3 92 SWAP3 0AA4 91 SWAP2 0AA5 83 DUP4 0AA6 01 ADD 0AA7 82 DUP3 0AA8 82 DUP3 0AA9 80 DUP1 0AAA 15 ISZERO 0AAB 61 PUSH2 0x04af 0AAE 57 *JUMPI // Stack delta = +6 // Outputs[8] // { // @0A9E stack[2] = (storage[0x0e] & ~0x00 + 0x0100 * !(storage[0x0e] & 0x01)) / 0x02 // @0A9F memory[0x40:0x60] = 0x20 + memory[0x40:0x60] + 0x20 * (((storage[0x0e] & ~0x00 + 0x0100 * !(storage[0x0e] & 0x01)) / 0x02 + 0x1f) / 0x20) // @0AA2 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = (storage[0x0e] & ~0x00 + 0x0100 * !(storage[0x0e] & 0x01)) / 0x02 // @0AA3 stack[0] = memory[0x40:0x60] // @0AA4 stack[1] = 0x0e // @0AA6 stack[3] = memory[0x40:0x60] + 0x20 // @0AA7 stack[4] = 0x0e // @0AA8 stack[5] = (storage[0x0e] & ~0x00 + 0x0100 * !(storage[0x0e] & 0x01)) / 0x02 // } // Block ends with conditional jump to 0x04af, if !((storage[0x0e] & ~0x00 + 0x0100 * !(storage[0x0e] & 0x01)) / 0x02) label_0AAF: // Incoming jump from 0x0AAE, if not !((storage[0x0e] & ~0x00 + 0x0100 * !(storage[0x0e] & 0x01)) / 0x02) // Inputs[1] { @0AAF stack[-1] } 0AAF 80 DUP1 0AB0 60 PUSH1 0x1f 0AB2 10 LT 0AB3 61 PUSH2 0x0484 0AB6 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0484, if 0x1f < stack[-1] label_0AB7: // Incoming jump from 0x0AB6, if not 0x1f < stack[-1] // Inputs[4] // { // @0ABB stack[-2] // @0ABC storage[stack[-2]] // @0ABF stack[-3] // @0AC1 stack[-1] // } 0AB7 61 PUSH2 0x0100 0ABA 80 DUP1 0ABB 83 DUP4 0ABC 54 SLOAD 0ABD 04 DIV 0ABE 02 MUL 0ABF 83 DUP4 0AC0 52 MSTORE 0AC1 91 SWAP2 0AC2 60 PUSH1 0x20 0AC4 01 ADD 0AC5 91 SWAP2 0AC6 61 PUSH2 0x04af 0AC9 56 *JUMP // Stack delta = +0 // Outputs[3] // { // @0AC0 memory[stack[-3]:stack[-3] + 0x20] = storage[stack[-2]] / 0x0100 * 0x0100 // @0AC5 stack[-1] = stack[-1] // @0AC5 stack[-3] = 0x20 + stack[-3] // } // Block ends with unconditional jump to 0x04af label_0ACA: // Incoming jump from 0x037A 0ACA 5B JUMPDEST 0ACB 61 PUSH2 0x0ad2 0ACE 61 PUSH2 0x0a1e 0AD1 56 *JUMP // Stack delta = +1 // Outputs[1] { @0ACB stack[0] = 0x0ad2 } // Block ends with call to 0x0a1e, returns to 0x0AD2 label_0AD2: // Incoming return from call to 0x0A1E at 0x0AD1 // Inputs[1] { @0AD6 stack[-1] } 0AD2 5B JUMPDEST 0AD3 61 PUSH2 0x0aee 0AD6 57 *JUMPI // Stack delta = -1 // Block ends with conditional jump to 0x0aee, if stack[-1] label_0AD7: // Incoming jump from 0x0AD6, if not stack[-1] // Inputs[1] { @0AD9 memory[0x40:0x60] } 0AD7 60 PUSH1 0x40 0AD9 51 MLOAD 0ADA 62 PUSH3 0x461bcd 0ADE 60 PUSH1 0xe5 0AE0 1B SHL 0AE1 81 DUP2 0AE2 52 MSTORE 0AE3 60 PUSH1 0x04 0AE5 01 ADD 0AE6 61 PUSH2 0x04de 0AE9 90 SWAP1 0AEA 61 PUSH2 0x2bcc 0AED 56 *JUMP // Stack delta = +2 // Outputs[3] // { // @0AE2 memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = 0x461bcd << 0xe5 // @0AE9 stack[0] = 0x04de // @0AE9 stack[1] = 0x04 + memory[0x40:0x60] // } // Block ends with unconditional jump to 0x2bcc label_0AEE: // Incoming jump from 0x0AD6, if stack[-1] // Inputs[1] { @0AF2 stack[-1] } 0AEE 5B JUMPDEST 0AEF 61 PUSH2 0x07cb 0AF2 81 DUP2 0AF3 61 PUSH2 0x1183 0AF6 56 *JUMP // Stack delta = +2 // Outputs[2] // { // @0AEF stack[0] = 0x07cb // @0AF2 stack[1] = stack[-1] // } // Block ends with unconditional jump to 0x1183 0AF7 5B JUMPDEST 0AF8 61 PUSH2 0x0aff 0AFB 61 PUSH2 0x0e5a 0AFE 56 *JUMP 0AFF 5B JUMPDEST 0B00 60 PUSH1 0x01 0B02 60 PUSH1 0x01 0B04 60 PUSH1 0xa0 0B06 1B SHL 0B07 03 SUB 0B08 16 AND 0B09 82 DUP3 0B0A 60 PUSH1 0x01 0B0C 60 PUSH1 0x01 0B0E 60 PUSH1 0xa0 0B10 1B SHL 0B11 03 SUB 0B12 16 AND 0B13 14 EQ 0B14 15 ISZERO 0B15 61 PUSH2 0x0b30 0B18 57 *JUMPI 0B19 60 PUSH1 0x40 0B1B 51 MLOAD 0B1C 62 PUSH3 0x461bcd 0B20 60 PUSH1 0xe5 0B22 1B SHL 0B23 81 DUP2 0B24 52 MSTORE 0B25 60 PUSH1 0x04 0B27 01 ADD 0B28 61 PUSH2 0x04de 0B2B 90 SWAP1 0B2C 61 PUSH2 0x2b3c 0B2F 56 *JUMP 0B30 5B JUMPDEST 0B31 80 DUP1 0B32 60 PUSH1 0x05 0B34 60 PUSH1 0x00 0B36 61 PUSH2 0x0b3d 0B39 61 PUSH2 0x0e5a 0B3C 56 *JUMP 0B3D 5B JUMPDEST 0B3E 60 PUSH1 0x01 0B40 60 PUSH1 0x01 0B42 60 PUSH1 0xa0 0B44 1B SHL 0B45 03 SUB 0B46 90 SWAP1 0B47 81 DUP2 0B48 16 AND 0B49 82 DUP3 0B4A 52 MSTORE 0B4B 60 PUSH1 0x20 0B4D 80 DUP1 0B4E 83 DUP4 0B4F 01 ADD 0B50 93 SWAP4 0B51 90 SWAP1 0B52 93 SWAP4 0B53 52 MSTORE 0B54 60 PUSH1 0x40 0B56 91 SWAP2 0B57 82 DUP3 0B58 01 ADD 0B59 60 PUSH1 0x00 0B5B 90 SWAP1 0B5C 81 DUP2 0B5D 20 SHA3 0B5E 91 SWAP2 0B5F 87 DUP8 0B60 16 AND 0B61 80 DUP1 0B62 82 DUP3 0B63 52 MSTORE 0B64 91 SWAP2 0B65 90 SWAP1 0B66 93 SWAP4 0B67 52 MSTORE 0B68 91 SWAP2 0B69 20 SHA3 0B6A 80 DUP1 0B6B 54 SLOAD 0B6C 60 PUSH1 0xff 0B6E 19 NOT 0B6F 16 AND 0B70 92 SWAP3 0B71 15 ISZERO 0B72 15 ISZERO 0B73 92 SWAP3 0B74 90 SWAP1 0B75 92 SWAP3 0B76 17 OR 0B77 90 SWAP1 0B78 91 SWAP2 0B79 55 SSTORE 0B7A 61 PUSH2 0x0b81 0B7D 61 PUSH2 0x0e5a 0B80 56 *JUMP 0B81 5B JUMPDEST 0B82 60 PUSH1 0x01 0B84 60 PUSH1 0x01 0B86 60 PUSH1 0xa0 0B88 1B SHL 0B89 03 SUB 0B8A 16 AND 0B8B 7F PUSH32 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31 0BAC 83 DUP4 0BAD 60 PUSH1 0x40 0BAF 51 MLOAD 0BB0 61 PUSH2 0x0bb9 0BB3 91 SWAP2 0BB4 90 SWAP1 0BB5 61 PUSH2 0x2a7f 0BB8 56 *JUMP 0BB9 5B JUMPDEST 0BBA 60 PUSH1 0x40 0BBC 51 MLOAD 0BBD 80 DUP1 0BBE 91 SWAP2 0BBF 03 SUB 0BC0 90 SWAP1 0BC1 A3 LOG3 0BC2 50 POP 0BC3 50 POP 0BC4 56 *JUMP 0BC5 5B JUMPDEST 0BC6 61 PUSH2 0x0bd6 0BC9 61 PUSH2 0x0bd0 0BCC 61 PUSH2 0x0e5a 0BCF 56 *JUMP 0BD0 5B JUMPDEST 0BD1 83 DUP4 0BD2 61 PUSH2 0x0e5e 0BD5 56 *JUMP 0BD6 5B JUMPDEST 0BD7 61 PUSH2 0x0bf2 0BDA 57 *JUMPI 0BDB 60 PUSH1 0x40 0BDD 51 MLOAD 0BDE 62 PUSH3 0x461bcd 0BE2 60 PUSH1 0xe5 0BE4 1B SHL 0BE5 81 DUP2 0BE6 52 MSTORE 0BE7 60 PUSH1 0x04 0BE9 01 ADD 0BEA 61 PUSH2 0x04de 0BED 90 SWAP1 0BEE 61 PUSH2 0x2c0c 0BF1 56 *JUMP 0BF2 5B JUMPDEST 0BF3 61 PUSH2 0x0bfe 0BF6 84 DUP5 0BF7 84 DUP5 0BF8 84 DUP5 0BF9 84 DUP5 0BFA 61 PUSH2 0x1196 0BFD 56 *JUMP label_0BFE: // Incoming jump from 0x2D8F, if !(stack[-1] > stack[-4]) // Inputs[1] { @0C03 stack[-5] } 0BFE 5B JUMPDEST 0BFF 50 POP 0C00 50 POP 0C01 50 POP 0C02 50 POP 0C03 56 *JUMP // Stack delta = -5 // Block ends with unconditional jump to stack[-5] 0C04 5B JUMPDEST 0C05 60 PUSH1 0x00 0C07 81 DUP2 0C08 81 DUP2 0C09 52 MSTORE 0C0A 60 PUSH1 0x0f 0C0C 60 PUSH1 0x20 0C0E 90 SWAP1 0C0F 81 DUP2 0C10 52 MSTORE 0C11 60 PUSH1 0x40 0C13 80 DUP1 0C14 83 DUP4 0C15 20 SHA3 0C16 80 DUP1 0C17 54 SLOAD 0C18 82 DUP3 0C19 51 MLOAD 0C1A 81 DUP2 0C1B 85 DUP6 0C1C 02 MUL 0C1D 81 DUP2 0C1E 01 ADD 0C1F 85 DUP6 0C20 01 ADD 0C21 90 SWAP1 0C22 93 SWAP4 0C23 52 MSTORE 0C24 80 DUP1 0C25 83 DUP4 0C26 52 MSTORE 0C27 60 PUSH1 0x60 0C29 94 SWAP5 0C2A 85 DUP6 0C2B 94 SWAP5 0C2C 84 DUP5 0C2D 01 ADD 0C2E 5B JUMPDEST 0C2F 82 DUP3 0C30 82 DUP3 0C31 10 LT 0C32 15 ISZERO 0C33 61 PUSH2 0x0c76 0C36 57 *JUMPI 0C37 60 PUSH1 0x00 0C39 84 DUP5 0C3A 81 DUP2 0C3B 52 MSTORE 0C3C 60 PUSH1 0x20 0C3E 90 SWAP1 0C3F 81 DUP2 0C40 90 SWAP1 0C41 20 SHA3 0C42 60 PUSH1 0x40 0C44 80 DUP1 0C45 51 MLOAD 0C46 80 DUP1 0C47 82 DUP3 0C48 01 ADD 0C49 90 SWAP1 0C4A 91 SWAP2 0C4B 52 MSTORE 0C4C 60 PUSH1 0x02 0C4E 85 DUP6 0C4F 02 MUL 0C50 90 SWAP1 0C51 91 SWAP2 0C52 01 ADD 0C53 80 DUP1 0C54 54 SLOAD 0C55 60 PUSH1 0x01 0C57 60 PUSH1 0x01 0C59 60 PUSH1 0xa0 0C5B 1B SHL 0C5C 03 SUB 0C5D 16 AND 0C5E 82 DUP3 0C5F 52 MSTORE 0C60 60 PUSH1 0x01 0C62 90 SWAP1 0C63 81 DUP2 0C64 01 ADD 0C65 54 SLOAD 0C66 82 DUP3 0C67 84 DUP5 0C68 01 ADD 0C69 52 MSTORE 0C6A 90 SWAP1 0C6B 83 DUP4 0C6C 52 MSTORE 0C6D 90 SWAP1 0C6E 92 SWAP3 0C6F 01 ADD 0C70 91 SWAP2 0C71 01 ADD 0C72 61 PUSH2 0x0c2e 0C75 56 *JUMP 0C76 5B JUMPDEST 0C77 50 POP 0C78 50 POP 0C79 50 POP 0C7A 50 POP 0C7B 90 SWAP1 0C7C 50 POP 0C7D 60 PUSH1 0x60 0C7F 81 DUP2 0C80 51 MLOAD 0C81 60 PUSH1 0x40 0C83 51 MLOAD 0C84 90 SWAP1 0C85 80 DUP1 0C86 82 DUP3 0C87 52 MSTORE 0C88 80 DUP1 0C89 60 PUSH1 0x20 0C8B 02 MUL 0C8C 60 PUSH1 0x20 0C8E 01 ADD 0C8F 82 DUP3 0C90 01 ADD 0C91 60 PUSH1 0x40 0C93 52 MSTORE 0C94 80 DUP1 0C95 15 ISZERO 0C96 61 PUSH2 0x0ca9 0C99 57 *JUMPI 0C9A 81 DUP2 0C9B 60 PUSH1 0x20 0C9D 01 ADD 0C9E 60 PUSH1 0x20 0CA0 82 DUP3 0CA1 02 MUL 0CA2 80 DUP1 0CA3 38 CODESIZE 0CA4 83 DUP4 0CA5 39 CODECOPY 0CA6 01 ADD 0CA7 90 SWAP1 0CA8 50 POP 0CA9 5B JUMPDEST 0CAA 50 POP 0CAB 90 SWAP1 0CAC 50 POP 0CAD 60 PUSH1 0x00 0CAF 5B JUMPDEST 0CB0 82 DUP3 0CB1 51 MLOAD 0CB2 81 DUP2 0CB3 10 LT 0CB4 15 ISZERO 0CB5 61 PUSH2 0x06d3 0CB8 57 *JUMPI 0CB9 82 DUP3 0CBA 81 DUP2 0CBB 81 DUP2 0CBC 51 MLOAD 0CBD 81 DUP2 0CBE 10 LT 0CBF 61 PUSH2 0x0cc4 0CC2 57 *JUMPI 0CC3 FE *ASSERT 0CC4 5B JUMPDEST 0CC5 60 PUSH1 0x20 0CC7 02 MUL 0CC8 60 PUSH1 0x20 0CCA 01 ADD 0CCB 01 ADD 0CCC 51 MLOAD 0CCD 60 PUSH1 0x00 0CCF 01 ADD 0CD0 51 MLOAD 0CD1 82 DUP3 0CD2 82 DUP3 0CD3 81 DUP2 0CD4 51 MLOAD 0CD5 81 DUP2 0CD6 10 LT 0CD7 61 PUSH2 0x0cdc 0CDA 57 *JUMPI 0CDB FE *ASSERT 0CDC 5B JUMPDEST 0CDD 60 PUSH1 0x01 0CDF 60 PUSH1 0x01 0CE1 60 PUSH1 0xa0 0CE3 1B SHL 0CE4 03 SUB 0CE5 90 SWAP1 0CE6 92 SWAP3 0CE7 16 AND 0CE8 60 PUSH1 0x20 0CEA 92 SWAP3 0CEB 83 DUP4 0CEC 02 MUL 0CED 91 SWAP2 0CEE 90 SWAP1 0CEF 91 SWAP2 0CF0 01 ADD 0CF1 90 SWAP1 0CF2 91 SWAP2 0CF3 01 ADD 0CF4 52 MSTORE 0CF5 60 PUSH1 0x01 0CF7 01 ADD 0CF8 61 PUSH2 0x0caf 0CFB 56 *JUMP label_0CFC: // Incoming call from 0x03C8, returns to 0x0205 // Inputs[2] // { // @0D00 storage[0x07] // @0D04 memory[0x40:0x60] // } 0CFC 5B JUMPDEST 0CFD 60 PUSH1 0x07 0CFF 80 DUP1 0D00 54 SLOAD 0D01 60 PUSH1 0x40 0D03 80 DUP1 0D04 51 MLOAD 0D05 60 PUSH1 0x20 0D07 60 PUSH1 0x02 0D09 60 PUSH1 0x01 0D0B 85 DUP6 0D0C 16 AND 0D0D 15 ISZERO 0D0E 61 PUSH2 0x0100 0D11 02 MUL 0D12 60 PUSH1 0x00 0D14 19 NOT 0D15 01 ADD 0D16 90 SWAP1 0D17 94 SWAP5 0D18 16 AND 0D19 93 SWAP4 0D1A 90 SWAP1 0D1B 93 SWAP4 0D1C 04 DIV 0D1D 60 PUSH1 0x1f 0D1F 81 DUP2 0D20 01 ADD 0D21 84 DUP5 0D22 90 SWAP1 0D23 04 DIV 0D24 84 DUP5 0D25 02 MUL 0D26 82 DUP3 0D27 01 ADD 0D28 84 DUP5 0D29 01 ADD 0D2A 90 SWAP1 0D2B 92 SWAP3 0D2C 52 MSTORE 0D2D 81 DUP2 0D2E 81 DUP2 0D2F 52 MSTORE 0D30 92 SWAP3 0D31 91 SWAP2 0D32 83 DUP4 0D33 01 ADD 0D34 82 DUP3 0D35 82 DUP3 0D36 80 DUP1 0D37 15 ISZERO 0D38 61 PUSH2 0x04af 0D3B 57 *JUMPI // Stack delta = +6 // Outputs[8] // { // @0D2B stack[2] = (storage[0x07] & ~0x00 + 0x0100 * !(storage[0x07] & 0x01)) / 0x02 // @0D2C memory[0x40:0x60] = 0x20 + memory[0x40:0x60] + 0x20 * (((storage[0x07] & ~0x00 + 0x0100 * !(storage[0x07] & 0x01)) / 0x02 + 0x1f) / 0x20) // @0D2F memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = (storage[0x07] & ~0x00 + 0x0100 * !(storage[0x07] & 0x01)) / 0x02 // @0D30 stack[0] = memory[0x40:0x60] // @0D31 stack[1] = 0x07 // @0D33 stack[3] = memory[0x40:0x60] + 0x20 // @0D34 stack[4] = 0x07 // @0D35 stack[5] = (storage[0x07] & ~0x00 + 0x0100 * !(storage[0x07] & 0x01)) / 0x02 // } // Block ends with conditional jump to 0x04af, if !((storage[0x07] & ~0x00 + 0x0100 * !(storage[0x07] & 0x01)) / 0x02) label_0D3C: // Incoming jump from 0x0D3B, if not !((storage[0x07] & ~0x00 + 0x0100 * !(storage[0x07] & 0x01)) / 0x02) // Inputs[1] { @0D3C stack[-1] } 0D3C 80 DUP1 0D3D 60 PUSH1 0x1f 0D3F 10 LT 0D40 61 PUSH2 0x0484 0D43 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0484, if 0x1f < stack[-1] label_0D44: // Incoming jump from 0x0D43, if not 0x1f < stack[-1] // Inputs[4] // { // @0D48 stack[-2] // @0D49 storage[stack[-2]] // @0D4C stack[-3] // @0D4E stack[-1] // } 0D44 61 PUSH2 0x0100 0D47 80 DUP1 0D48 83 DUP4 0D49 54 SLOAD 0D4A 04 DIV 0D4B 02 MUL 0D4C 83 DUP4 0D4D 52 MSTORE 0D4E 91 SWAP2 0D4F 60 PUSH1 0x20 0D51 01 ADD 0D52 91 SWAP2 0D53 61 PUSH2 0x04af 0D56 56 *JUMP // Stack delta = +0 // Outputs[3] // { // @0D4D memory[stack[-3]:stack[-3] + 0x20] = storage[stack[-2]] / 0x0100 * 0x0100 // @0D52 stack[-1] = stack[-1] // @0D52 stack[-3] = 0x20 + stack[-3] // } // Block ends with unconditional jump to 0x04af 0D57 5B JUMPDEST 0D58 60 PUSH1 0x60 0D5A 61 PUSH2 0x0d62 0D5D 82 DUP3 0D5E 61 PUSH2 0x0e3d 0D61 56 *JUMP 0D62 5B JUMPDEST 0D63 61 PUSH2 0x0d7e 0D66 57 *JUMPI 0D67 60 PUSH1 0x40 0D69 51 MLOAD 0D6A 62 PUSH3 0x461bcd 0D6E 60 PUSH1 0xe5 0D70 1B SHL 0D71 81 DUP2 0D72 52 MSTORE 0D73 60 PUSH1 0x04 0D75 01 ADD 0D76 61 PUSH2 0x04de 0D79 90 SWAP1 0D7A 61 PUSH2 0x2bec 0D7D 56 *JUMP 0D7E 5B JUMPDEST 0D7F 61 PUSH2 0x077a 0D82 82 DUP3 0D83 61 PUSH2 0x11c9 0D86 56 *JUMP label_0D87: // Incoming call from 0x03E3, returns to 0x0205 // Inputs[2] // { // @0D8B storage[0x06] // @0D8F memory[0x40:0x60] // } 0D87 5B JUMPDEST 0D88 60 PUSH1 0x06 0D8A 80 DUP1 0D8B 54 SLOAD 0D8C 60 PUSH1 0x40 0D8E 80 DUP1 0D8F 51 MLOAD 0D90 60 PUSH1 0x20 0D92 60 PUSH1 0x02 0D94 60 PUSH1 0x01 0D96 85 DUP6 0D97 16 AND 0D98 15 ISZERO 0D99 61 PUSH2 0x0100 0D9C 02 MUL 0D9D 60 PUSH1 0x00 0D9F 19 NOT 0DA0 01 ADD 0DA1 90 SWAP1 0DA2 94 SWAP5 0DA3 16 AND 0DA4 93 SWAP4 0DA5 90 SWAP1 0DA6 93 SWAP4 0DA7 04 DIV 0DA8 60 PUSH1 0x1f 0DAA 81 DUP2 0DAB 01 ADD 0DAC 84 DUP5 0DAD 90 SWAP1 0DAE 04 DIV 0DAF 84 DUP5 0DB0 02 MUL 0DB1 82 DUP3 0DB2 01 ADD 0DB3 84 DUP5 0DB4 01 ADD 0DB5 90 SWAP1 0DB6 92 SWAP3 0DB7 52 MSTORE 0DB8 81 DUP2 0DB9 81 DUP2 0DBA 52 MSTORE 0DBB 92 SWAP3 0DBC 91 SWAP2 0DBD 83 DUP4 0DBE 01 ADD 0DBF 82 DUP3 0DC0 82 DUP3 0DC1 80 DUP1 0DC2 15 ISZERO 0DC3 61 PUSH2 0x04af 0DC6 57 *JUMPI // Stack delta = +6 // Outputs[8] // { // @0DB6 stack[2] = (storage[0x06] & ~0x00 + 0x0100 * !(storage[0x06] & 0x01)) / 0x02 // @0DB7 memory[0x40:0x60] = 0x20 + memory[0x40:0x60] + 0x20 * (((storage[0x06] & ~0x00 + 0x0100 * !(storage[0x06] & 0x01)) / 0x02 + 0x1f) / 0x20) // @0DBA memory[memory[0x40:0x60]:memory[0x40:0x60] + 0x20] = (storage[0x06] & ~0x00 + 0x0100 * !(storage[0x06] & 0x01)) / 0x02 // @0DBB stack[0] = memory[0x40:0x60] // @0DBC stack[1] = 0x06 // @0DBE stack[3] = memory[0x40:0x60] + 0x20 // @0DBF stack[4] = 0x06 // @0DC0 stack[5] = (storage[0x06] & ~0x00 + 0x0100 * !(storage[0x06] & 0x01)) / 0x02 // } // Block ends with conditional jump to 0x04af, if !((storage[0x06] & ~0x00 + 0x0100 * !(storage[0x06] & 0x01)) / 0x02) label_0DC7: // Incoming jump from 0x0DC6, if not !((storage[0x06] & ~0x00 + 0x0100 * !(storage[0x06] & 0x01)) / 0x02) // Inputs[1] { @0DC7 stack[-1] } 0DC7 80 DUP1 0DC8 60 PUSH1 0x1f 0DCA 10 LT 0DCB 61 PUSH2 0x0484 0DCE 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0484, if 0x1f < stack[-1] label_0DCF: // Incoming jump from 0x0DCE, if not 0x1f < stack[-1] // Inputs[4] // { // @0DD3 stack[-2] // @0DD4 storage[stack[-2]] // @0DD7 stack[-3] // @0DD9 stack[-1] // } 0DCF 61 PUSH2 0x0100 0DD2 80 DUP1 0DD3 83 DUP4 0DD4 54 SLOAD 0DD5 04 DIV 0DD6 02 MUL 0DD7 83 DUP4 0DD8 52 MSTORE 0DD9 91 SWAP2 0DDA 60 PUSH1 0x20 0DDC 01 ADD 0DDD 91 SWAP2 0DDE 61 PUSH2 0x04af 0DE1 56 *JUMP // Stack delta = +0 // Outputs[3] // { // @0DD8 memory[stack[-3]:stack[-3] + 0x20] = storage[stack[-2]] / 0x0100 * 0x0100 // @0DDD stack[-1] = stack[-1] // @0DDD stack[-3] = 0x20 + stack[-3] // } // Block ends with unconditional jump to 0x04af 0DE2 5B JUMPDEST 0DE3 60 PUSH1 0x01 0DE5 60 PUSH1 0x01 0DE7 60 PUSH1 0xa0 0DE9 1B SHL 0DEA 03 SUB 0DEB 91 SWAP2 0DEC 82 DUP3 0DED 16 AND 0DEE 60 PUSH1 0x00 0DF0 90 SWAP1 0DF1 81 DUP2 0DF2 52 MSTORE 0DF3 60 PUSH1 0x05 0DF5 60 PUSH1 0x20 0DF7 90 SWAP1 0DF8 81 DUP2 0DF9 52 MSTORE 0DFA 60 PUSH1 0x40 0DFC 80 DUP1 0DFD 83 DUP4 0DFE 20 SHA3 0DFF 93 SWAP4 0E00 90 SWAP1 0E01 94 SWAP5 0E02 16 AND 0E03 82 DUP3 0E04 52 MSTORE 0E05 91 SWAP2 0E06 90 SWAP1 0E07 91 SWAP2 0E08 52 MSTORE 0E09 20 SHA3 0E0A 54 SLOAD 0E0B 60 PUSH1 0xff 0E0D 16 AND 0E0E 90 SWAP1 0E0F 56 *JUMP 0E10 5B JUMPDEST 0E11 61 PUSH2 0x0e18 0E14 61 PUSH2 0x0a1e 0E17 56 *JUMP 0E18 5B JUMPDEST 0E19 61 PUSH2 0x0e34 0E1C 57 *JUMPI 0E1D 60 PUSH1 0x40 0E1F 51 MLOAD 0E20 62 PUSH3 0x461bcd 0E24 60 PUSH1 0xe5 0E26 1B SHL 0E27 81 DUP2 0E28 52 MSTORE 0E29 60 PUSH1 0x04 0E2B 01 ADD 0E2C 61 PUSH2 0x04de 0E2F 90 SWAP1 0E30 61 PUSH2 0x2bcc 0E33 56 *JUMP 0E34 5B JUMPDEST 0E35 61 PUSH2 0x07cb 0E38 81 DUP2 0E39 61 PUSH2 0x1304 0E3C 56 *JUMP 0E3D 5B JUMPDEST 0E3E 60 PUSH1 0x00 0E40 90 SWAP1 0E41 81 DUP2 0E42 52 MSTORE 0E43 60 PUSH1 0x02 0E45 60 PUSH1 0x20 0E47 52 MSTORE 0E48 60 PUSH1 0x40 0E4A 90 SWAP1 0E4B 20 SHA3 0E4C 54 SLOAD 0E4D 60 PUSH1 0x01 0E4F 60 PUSH1 0x01 0E51 60 PUSH1 0xa0 0E53 1B SHL 0E54 03 SUB 0E55 16 AND 0E56 15 ISZERO 0E57 15 ISZERO 0E58 90 SWAP1 0E59 56 *JUMP label_0E5A: // Incoming call from 0x0A32, returns to 0x0A33 // Inputs[2] // { // @0E5B msg.sender // @0E5C stack[-1] // } 0E5A 5B JUMPDEST 0E5B 33 CALLER 0E5C 90 SWAP1 0E5D 56 *JUMP // Stack delta = +0 // Outputs[1] { @0E5C stack[-1] = msg.sender } // Block ends with unconditional jump to stack[-1] 0E5E 5B JUMPDEST 0E5F 60 PUSH1 0x00 0E61 61 PUSH2 0x0e69 0E64 82 DUP3 0E65 61 PUSH2 0x0e3d 0E68 56 *JUMP 0E69 5B JUMPDEST 0E6A 61 PUSH2 0x0e85 0E6D 57 *JUMPI 0E6E 60 PUSH1 0x40 0E70 51 MLOAD 0E71 62 PUSH3 0x461bcd 0E75 60 PUSH1 0xe5 0E77 1B SHL 0E78 81 DUP2 0E79 52 MSTORE 0E7A 60 PUSH1 0x04 0E7C 01 ADD 0E7D 61 PUSH2 0x04de 0E80 90 SWAP1 0E81 61 PUSH2 0x2b4c 0E84 56 *JUMP 0E85 5B JUMPDEST 0E86 60 PUSH1 0x00 0E88 61 PUSH2 0x0e90 0E8B 83 DUP4 0E8C 61 PUSH2 0x0858 0E8F 56 *JUMP 0E90 5B JUMPDEST 0E91 90 SWAP1 0E92 50 POP 0E93 80 DUP1 0E94 60 PUSH1 0x01 0E96 60 PUSH1 0x01 0E98 60 PUSH1 0xa0 0E9A 1B SHL 0E9B 03 SUB 0E9C 16 AND 0E9D 84 DUP5 0E9E 60 PUSH1 0x01 0EA0 60 PUSH1 0x01 0EA2 60 PUSH1 0xa0 0EA4 1B SHL 0EA5 03 SUB 0EA6 16 AND 0EA7 14 EQ 0EA8 80 DUP1 0EA9 61 PUSH2 0x0ecb 0EAC 57 *JUMPI 0EAD 50 POP 0EAE 83 DUP4 0EAF 60 PUSH1 0x01 0EB1 60 PUSH1 0x01 0EB3 60 PUSH1 0xa0 0EB5 1B SHL 0EB6 03 SUB 0EB7 16 AND 0EB8 61 PUSH2 0x0ec0 0EBB 84 DUP5 0EBC 61 PUSH2 0x04b7 0EBF 56 *JUMP 0EC0 5B JUMPDEST 0EC1 60 PUSH1 0x01 0EC3 60 PUSH1 0x01 0EC5 60 PUSH1 0xa0 0EC7 1B SHL 0EC8 03 SUB 0EC9 16 AND 0ECA 14 EQ 0ECB 5B JUMPDEST 0ECC 80 DUP1 0ECD 61 PUSH2 0x0edb 0ED0 57 *JUMPI 0ED1 50 POP 0ED2 61 PUSH2 0x0edb 0ED5 81 DUP2 0ED6 85 DUP6 0ED7 61 PUSH2 0x0de2 0EDA 56 *JUMP label_0EDB: // Incoming return from call to 0x1DBB at 0x204A // Inputs[3] // { // @0EDC stack[-1] // @0EDC stack[-6] // @0EDD stack[-5] // } 0EDB 5B JUMPDEST 0EDC 94 SWAP5 0EDD 93 SWAP4 0EDE 50 POP 0EDF 50 POP 0EE0 50 POP 0EE1 50 POP 0EE2 56 *JUMP // Stack delta = -5 // Outputs[1] { @0EDC stack[-6] = stack[-1] } // Block ends with unconditional jump to stack[-6] 0EE3 5B JUMPDEST 0EE4 61 PUSH2 0x0eee 0EE7 83 DUP4 0EE8 83 DUP4 0EE9 83 DUP4 0EEA 61 PUSH2 0x1385 0EED 56 *JUMP 0EEE 5B JUMPDEST 0EEF 61 PUSH2 0x0ef8 0EF2 83 DUP4 0EF3 82 DUP3 0EF4 61 PUSH2 0x148b 0EF7 56 *JUMP 0EF8 5B JUMPDEST 0EF9 61 PUSH2 0x071a 0EFC 82 DUP3 0EFD 82 DUP3 0EFE 61 PUSH2 0x1579 0F01 56 *JUMP 0F02 5B JUMPDEST 0F03 61 PUSH2 0x07cb 0F06 61 PUSH2 0x0f0e 0F09 82 DUP3 0F0A 61 PUSH2 0x0858 0F0D 56 *JUMP 0F0E 5B JUMPDEST 0F0F 82 DUP3 0F10 61 PUSH2 0x15b7 0F13 56 *JUMP 0F14 5B JUMPDEST 0F15 61 PUSH2 0x0f1e 0F18 83 DUP4 0F19 83 DUP4 0F1A 61 PUSH2 0x15ca 0F1D 56 *JUMP 0F1E 5B JUMPDEST 0F1F 60 PUSH1 0x60 0F21 81 DUP2 0F22 51 MLOAD 0F23 60 PUSH1 0x40 0F25 51 MLOAD 0F26 90 SWAP1 0F27 80 DUP1 0F28 82 DUP3 0F29 52 MSTORE 0F2A 80 DUP1 0F2B 60 PUSH1 0x20 0F2D 02 MUL 0F2E 60 PUSH1 0x20 0F30 01 ADD 0F31 82 DUP3 0F32 01 ADD 0F33 60 PUSH1 0x40 0F35 52 MSTORE 0F36 80 DUP1 0F37 15 ISZERO 0F38 61 PUSH2 0x0f4b 0F3B 57 *JUMPI 0F3C 81 DUP2 0F3D 60 PUSH1 0x20 0F3F 01 ADD 0F40 60 PUSH1 0x20 0F42 82 DUP3 0F43 02 MUL 0F44 80 DUP1 0F45 38 CODESIZE 0F46 83 DUP4 0F47 39 CODECOPY 0F48 01 ADD 0F49 90 SWAP1 0F4A 50 POP 0F4B 5B JUMPDEST 0F4C 50 POP 0F4D 90 SWAP1 0F4E 50 POP 0F4F 60 PUSH1 0x60 0F51 82 DUP3 0F52 51 MLOAD 0F53 60 PUSH1 0x40 0F55 51 MLOAD 0F56 90 SWAP1 0F57 80 DUP1 0F58 82 DUP3 0F59 52 MSTORE 0F5A 80 DUP1 0F5B 60 PUSH1 0x20 0F5D 02 MUL 0F5E 60 PUSH1 0x20 0F60 01 ADD 0F61 82 DUP3 0F62 01 ADD 0F63 60 PUSH1 0x40 0F65 52 MSTORE 0F66 80 DUP1 0F67 15 ISZERO 0F68 61 PUSH2 0x0f7b 0F6B 57 *JUMPI 0F6C 81 DUP2 0F6D 60 PUSH1 0x20 0F6F 01 ADD 0F70 60 PUSH1 0x20 0F72 82 DUP3 0F73 02 MUL 0F74 80 DUP1 0F75 38 CODESIZE 0F76 83 DUP4 0F77 39 CODECOPY 0F78 01 ADD 0F79 90 SWAP1 0F7A 50 POP 0F7B 5B JUMPDEST 0F7C 50 POP 0F7D 90 SWAP1 0F7E 50 POP 0F7F 60 PUSH1 0x00 0F81 5B JUMPDEST 0F82 83 DUP4 0F83 51 MLOAD 0F84 81 DUP2 0F85 10 LT 0F86 15 ISZERO 0F87 61 PUSH2 0x10ee 0F8A 57 *JUMPI 0F8B 60 PUSH1 0x00 0F8D 60 PUSH1 0x01 0F8F 60 PUSH1 0x01 0F91 60 PUSH1 0xa0 0F93 1B SHL 0F94 03 SUB 0F95 16 AND 0F96 84 DUP5 0F97 82 DUP3 0F98 81 DUP2 0F99 51 MLOAD 0F9A 81 DUP2 0F9B 10 LT 0F9C 61 PUSH2 0x0fa1 0F9F 57 *JUMPI 0FA0 FE *ASSERT 0FA1 5B JUMPDEST 0FA2 60 PUSH1 0x20 0FA4 02 MUL 0FA5 60 PUSH1 0x20 0FA7 01 ADD 0FA8 01 ADD 0FA9 51 MLOAD 0FAA 60 PUSH1 0x00 0FAC 01 ADD 0FAD 51 MLOAD 0FAE 60 PUSH1 0x01 0FB0 60 PUSH1 0x01 0FB2 60 PUSH1 0xa0 0FB4 1B SHL 0FB5 03 SUB 0FB6 16 AND 0FB7 14 EQ 0FB8 15 ISZERO 0FB9 61 PUSH2 0x0fd4 0FBC 57 *JUMPI 0FBD 60 PUSH1 0x40 0FBF 51 MLOAD 0FC0 62 PUSH3 0x461bcd 0FC4 60 PUSH1 0xe5 0FC6 1B SHL 0FC7 81 DUP2 0FC8 52 MSTORE 0FC9 60 PUSH1 0x04 0FCB 01 ADD 0FCC 61 PUSH2 0x04de 0FCF 90 SWAP1 0FD0 61 PUSH2 0x2c3c 0FD3 56 *JUMP 0FD4 5B JUMPDEST 0FD5 83 DUP4 0FD6 81 DUP2 0FD7 81 DUP2 0FD8 51 MLOAD 0FD9 81 DUP2 0FDA 10 LT 0FDB 61 PUSH2 0x0fe0 0FDE 57 *JUMPI 0FDF FE *ASSERT 0FE0 5B JUMPDEST 0FE1 60 PUSH1 0x20 0FE3 02 MUL 0FE4 60 PUSH1 0x20 0FE6 01 ADD 0FE7 01 ADD 0FE8 51 MLOAD 0FE9 60 PUSH1 0x20 0FEB 01 ADD 0FEC 51 MLOAD 0FED 60 PUSH1 0x00 0FEF 14 EQ 0FF0 15 ISZERO 0FF1 61 PUSH2 0x100c 0FF4 57 *JUMPI 0FF5 60 PUSH1 0x40 0FF7 51 MLOAD 0FF8 62 PUSH3 0x461bcd 0FFC 60 PUSH1 0xe5 0FFE 1B SHL 0FFF 81 DUP2 1000 52 MSTORE 1001 60 PUSH1 0x04 1003 01 ADD 1004 61 PUSH2 0x04de 1007 90 SWAP1 1008 61 PUSH2 0x2adc 100B 56 *JUMP 100C 5B JUMPDEST 100D 60 PUSH1 0x00 100F 85 DUP6 1010 81 DUP2 1011 52 MSTORE 1012 60 PUSH1 0x0f 1014 60 PUSH1 0x20 1016 52 MSTORE 1017 60 PUSH1 0x40 1019 90 SWAP1 101A 20 SHA3 101B 84 DUP5 101C 51 MLOAD 101D 85 DUP6 101E 90 SWAP1 101F 83 DUP4 1020 90 SWAP1 1021 81 DUP2 1022 10 LT 1023 61 PUSH2 0x1028 1026 57 *JUMPI 1027 FE *ASSERT 1028 5B JUMPDEST 1029 60 PUSH1 0x20 102B 90 SWAP1 102C 81 DUP2 102D 02 MUL 102E 91 SWAP2 102F 90 SWAP1 1030 91 SWAP2 1031 01 ADD 1032 81 DUP2 1033 01 ADD 1034 51 MLOAD 1035 82 DUP3 1036 54 SLOAD 1037 60 PUSH1 0x01 1039 80 DUP1 103A 82 DUP3 103B 01 ADD 103C 85 DUP6 103D 55 SSTORE 103E 60 PUSH1 0x00 1040 94 SWAP5 1041 85 DUP6 1042 52 MSTORE 1043 93 SWAP4 1044 83 DUP4 1045 90 SWAP1 1046 20 SHA3 1047 82 DUP3 1048 51 MLOAD 1049 60 PUSH1 0x02 104B 90 SWAP1 104C 92 SWAP3 104D 02 MUL 104E 01 ADD 104F 80 DUP1 1050 54 SLOAD 1051 60 PUSH1 0x01 1053 60 PUSH1 0x01 1055 60 PUSH1 0xa0 1057 1B SHL 1058 03 SUB 1059 19 NOT 105A 16 AND 105B 60 PUSH1 0x01 105D 60 PUSH1 0x01 105F 60 PUSH1 0xa0 1061 1B SHL 1062 03 SUB 1063 90 SWAP1 1064 92 SWAP3 1065 16 AND 1066 91 SWAP2 1067 90 SWAP1 1068 91 SWAP2 1069 17 OR 106A 81 DUP2 106B 55 SSTORE 106C 91 SWAP2 106D 01 ADD 106E 51 MLOAD 106F 91 SWAP2 1070 01 ADD 1071 55 SSTORE 1072 83 DUP4 1073 51 MLOAD 1074 84 DUP5 1075 90 SWAP1 1076 82 DUP3 1077 90 SWAP1 1078 81 DUP2 1079 10 LT 107A 61 PUSH2 0x107f 107D 57 *JUMPI 107E FE *ASSERT 107F 5B JUMPDEST 1080 60 PUSH1 0x20 1082 02 MUL 1083 60 PUSH1 0x20 1085 01 ADD 1086 01 ADD 1087 51 MLOAD 1088 60 PUSH1 0x00 108A 01 ADD 108B 51 MLOAD 108C 83 DUP4 108D 82 DUP3 108E 81 DUP2 108F 51 MLOAD 1090 81 DUP2 1091 10 LT 1092 61 PUSH2 0x1097 1095 57 *JUMPI 1096 FE *ASSERT 1097 5B JUMPDEST 1098 60 PUSH1 0x20 109A 02 MUL 109B 60 PUSH1 0x20 109D 01 ADD 109E 01 ADD 109F 90 SWAP1 10A0 60 PUSH1 0x01 10A2 60 PUSH1 0x01 10A4 60 PUSH1 0xa0 10A6 1B SHL 10A7 03 SUB 10A8 16 AND 10A9 90 SWAP1 10AA 81 DUP2 10AB 60 PUSH1 0x01 10AD 60 PUSH1 0x01 10AF 60 PUSH1 0xa0 10B1 1B SHL 10B2 03 SUB 10B3 16 AND 10B4 81 DUP2 10B5 52 MSTORE 10B6 50 POP 10B7 50 POP 10B8 83 DUP4 10B9 81 DUP2 10BA 81 DUP2 10BB 51 MLOAD 10BC 81 DUP2 10BD 10 LT 10BE 61 PUSH2 0x10c3 10C1 57 *JUMPI 10C2 FE *ASSERT 10C3 5B JUMPDEST 10C4 60 PUSH1 0x20 10C6 02 MUL 10C7 60 PUSH1 0x20 10C9 01 ADD 10CA 01 ADD 10CB 51 MLOAD 10CC 60 PUSH1 0x20 10CE 01 ADD 10CF 51 MLOAD 10D0 82 DUP3 10D1 82 DUP3 10D2 81 DUP2 10D3 51 MLOAD 10D4 81 DUP2 10D5 10 LT 10D6 61 PUSH2 0x10db 10D9 57 *JUMPI 10DA FE *ASSERT 10DB 5B JUMPDEST 10DC 60 PUSH1 0x20 10DE 90 SWAP1 10DF 81 DUP2 10E0 02 MUL 10E1 91 SWAP2 10E2 90 SWAP1 10E3 91 SWAP2 10E4 01 ADD 10E5 01 ADD 10E6 52 MSTORE 10E7 60 PUSH1 0x01 10E9 01 ADD 10EA 61 PUSH2 0x0f81 10ED 56 *JUMP 10EE 5B JUMPDEST 10EF 50 POP 10F0 82 DUP3 10F1 51 MLOAD 10F2 15 ISZERO 10F3 61 PUSH2 0x1132 10F6 57 *JUMPI 10F7 7F PUSH32 0x99aba1d63749cfd5ad1afda7c4663840924d54eb5f005bbbeadedc6ec13674b2 1118 84 DUP5 1119 83 DUP4 111A 83 DUP4 111B 60 PUSH1 0x40 111D 51 MLOAD 111E 61 PUSH2 0x1129 1121 93 SWAP4 1122 92 SWAP3 1123 91 SWAP2 1124 90 SWAP1 1125 61 PUSH2 0x2c6a 1128 56 *JUMP 1129 5B JUMPDEST 112A 60 PUSH1 0x40 112C 51 MLOAD 112D 80 DUP1 112E 91 SWAP2 112F 03 SUB 1130 90 SWAP1 1131 A1 LOG1 1132 5B JUMPDEST 1133 50 POP 1134 50 POP 1135 50 POP 1136 50 POP 1137 50 POP 1138 56 *JUMP 1139 5B JUMPDEST 113A 61 PUSH2 0x1142 113D 82 DUP3 113E 61 PUSH2 0x0e3d 1141 56 *JUMP 1142 5B JUMPDEST 1143 61 PUSH2 0x115e 1146 57 *JUMPI 1147 60 PUSH1 0x40 1149 51 MLOAD 114A 62 PUSH3 0x461bcd 114E 60 PUSH1 0xe5 1150 1B SHL 1151 81 DUP2 1152 52 MSTORE 1153 60 PUSH1 0x04 1155 01 ADD 1156 61 PUSH2 0x04de 1159 90 SWAP1 115A 61 PUSH2 0x2bbc 115D 56 *JUMP 115E 5B JUMPDEST 115F 61 PUSH2 0x1168 1162 82 DUP3 1163 82 DUP3 1164 61 PUSH2 0x15e7 1167 56 *JUMP 1168 5B JUMPDEST 1169 50 POP 116A 50 POP 116B 56 *JUMP 116C 5B JUMPDEST 116D 54 SLOAD 116E 90 SWAP1 116F 56 *JUMP label_1170: // Incoming jump from 0x0A6E // Inputs[2] // { // @1171 stack[-1] // @1172 memory[stack[-1]:stack[-1] + 0x20] // } 1170 5B JUMPDEST 1171 80 DUP1 1172 51 MLOAD 1173 61 PUSH2 0x1168 1176 90 SWAP1 1177 60 PUSH1 0x06 1179 90 SWAP1 117A 60 PUSH1 0x20 117C 84 DUP5 117D 01 ADD 117E 90 SWAP1 117F 61 PUSH2 0x1c07 1182 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @1176 stack[0] = 0x1168 // @1179 stack[1] = 0x06 // @117E stack[2] = stack[-1] + 0x20 // @117E stack[3] = memory[stack[-1]:stack[-1] + 0x20] // } // Block ends with unconditional jump to 0x1c07 label_1183: // Incoming jump from 0x0AF6 // Inputs[2] // { // @1184 stack[-1] // @1185 memory[stack[-1]:stack[-1] + 0x20] // } 1183 5B JUMPDEST 1184 80 DUP1 1185 51 MLOAD 1186 61 PUSH2 0x1168 1189 90 SWAP1 118A 60 PUSH1 0x07 118C 90 SWAP1 118D 60 PUSH1 0x20 118F 84 DUP5 1190 01 ADD 1191 90 SWAP1 1192 61 PUSH2 0x1c07 1195 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @1189 stack[0] = 0x1168 // @118C stack[1] = 0x07 // @1191 stack[2] = stack[-1] + 0x20 // @1191 stack[3] = memory[stack[-1]:stack[-1] + 0x20] // } // Block ends with unconditional jump to 0x1c07 1196 5B JUMPDEST 1197 61 PUSH2 0x11a1 119A 84 DUP5 119B 84 DUP5 119C 84 DUP5 119D 61 PUSH2 0x0ee3 11A0 56 *JUMP 11A1 5B JUMPDEST 11A2 61 PUSH2 0x11ad 11A5 84 DUP5 11A6 84 DUP5 11A7 84 DUP5 11A8 84 DUP5 11A9 61 PUSH2 0x1606 11AC 56 *JUMP 11AD 5B JUMPDEST 11AE 61 PUSH2 0x0bfe 11B1 57 *JUMPI 11B2 60 PUSH1 0x40 11B4 51 MLOAD 11B5 62 PUSH3 0x461bcd 11B9 60 PUSH1 0xe5 11BB 1B SHL 11BC 81 DUP2 11BD 52 MSTORE 11BE 60 PUSH1 0x04 11C0 01 ADD 11C1 61 PUSH2 0x04de 11C4 90 SWAP1 11C5 61 PUSH2 0x2afc 11C8 56 *JUMP 11C9 5B JUMPDEST 11CA 60 PUSH1 0x00 11CC 81 DUP2 11CD 81 DUP2 11CE 52 MSTORE 11CF 60 PUSH1 0x08 11D1 60 PUSH1 0x20 11D3 90 SWAP1 11D4 81 DUP2 11D5 52 MSTORE 11D6 60 PUSH1 0x40 11D8 91 SWAP2 11D9 82 DUP3 11DA 90 SWAP1 11DB 20 SHA3 11DC 80 DUP1 11DD 54 SLOAD 11DE 83 DUP4 11DF 51 MLOAD 11E0 60 PUSH1 0x02 11E2 60 PUSH1 0x01 11E4 83 DUP4 11E5 16 AND 11E6 15 ISZERO 11E7 61 PUSH2 0x0100 11EA 02 MUL 11EB 60 PUSH1 0x00 11ED 19 NOT 11EE 01 ADD 11EF 90 SWAP1 11F0 92 SWAP3 11F1 16 AND 11F2 91 SWAP2 11F3 90 SWAP1 11F4 91 SWAP2 11F5 04 DIV 11F6 60 PUSH1 0x1f 11F8 81 DUP2 11F9 01 ADD 11FA 84 DUP5 11FB 90 SWAP1 11FC 04 DIV 11FD 84 DUP5 11FE 02 MUL 11FF 82 DUP3 1200 01 ADD 1201 84 DUP5 1202 01 ADD 1203 90 SWAP1 1204 94 SWAP5 1205 52 MSTORE 1206 83 DUP4 1207 81 DUP2 1208 52 MSTORE 1209 60 PUSH1 0x60 120B 93 SWAP4 120C 61 PUSH2 0x077a 120F 93 SWAP4 1210 91 SWAP2 1211 92 SWAP3 1212 91 SWAP2 1213 83 DUP4 1214 01 ADD 1215 82 DUP3 1216 82 DUP3 1217 80 DUP1 1218 15 ISZERO 1219 61 PUSH2 0x1263 121C 57 *JUMPI 121D 80 DUP1 121E 60 PUSH1 0x1f 1220 10 LT 1221 61 PUSH2 0x1238 1224 57 *JUMPI 1225 61 PUSH2 0x0100 1228 80 DUP1 1229 83 DUP4 122A 54 SLOAD 122B 04 DIV 122C 02 MUL 122D 83 DUP4 122E 52 MSTORE 122F 91 SWAP2 1230 60 PUSH1 0x20 1232 01 ADD 1233 91 SWAP2 1234 61 PUSH2 0x1263 1237 56 *JUMP 1238 5B JUMPDEST 1239 82 DUP3 123A 01 ADD 123B 91 SWAP2 123C 90 SWAP1 123D 60 PUSH1 0x00 123F 52 MSTORE 1240 60 PUSH1 0x20 1242 60 PUSH1 0x00 1244 20 SHA3 1245 90 SWAP1 1246 5B JUMPDEST 1247 81 DUP2 1248 54 SLOAD 1249 81 DUP2 124A 52 MSTORE 124B 90 SWAP1 124C 60 PUSH1 0x01 124E 01 ADD 124F 90 SWAP1 1250 60 PUSH1 0x20 1252 01 ADD 1253 80 DUP1 1254 83 DUP4 1255 11 GT 1256 61 PUSH2 0x1246 1259 57 *JUMPI 125A 82 DUP3 125B 90 SWAP1 125C 03 SUB 125D 60 PUSH1 0x1f 125F 16 AND 1260 82 DUP3 1261 01 ADD 1262 91 SWAP2 1263 5B JUMPDEST 1264 50 POP 1265 50 POP 1266 60 PUSH1 0x07 1268 80 DUP1 1269 54 SLOAD 126A 60 PUSH1 0x40 126C 80 DUP1 126D 51 MLOAD 126E 60 PUSH1 0x20 1270 60 PUSH1 0x1f 1272 60 PUSH1 0x02 1274 60 PUSH1 0x00 1276 19 NOT 1277 61 PUSH2 0x0100 127A 60 PUSH1 0x01 127C 88 DUP9 127D 16 AND 127E 15 ISZERO 127F 02 MUL 1280 01 ADD 1281 90 SWAP1 1282 95 SWAP6 1283 16 AND 1284 94 SWAP5 1285 90 SWAP1 1286 94 SWAP5 1287 04 DIV 1288 93 SWAP4 1289 84 DUP5 128A 01 ADD 128B 81 DUP2 128C 90 SWAP1 128D 04 DIV 128E 81 DUP2 128F 02 MUL 1290 82 DUP3 1291 01 ADD 1292 81 DUP2 1293 01 ADD 1294 90 SWAP1 1295 92 SWAP3 1296 52 MSTORE 1297 82 DUP3 1298 81 DUP2 1299 52 MSTORE 129A 95 SWAP6 129B 50 POP 129C 91 SWAP2 129D 93 SWAP4 129E 50 POP 129F 91 SWAP2 12A0 50 POP 12A1 83 DUP4 12A2 01 ADD 12A3 82 DUP3 12A4 82 DUP3 12A5 80 DUP1 12A6 15 ISZERO 12A7 61 PUSH2 0x12f1 12AA 57 *JUMPI 12AB 80 DUP1 12AC 60 PUSH1 0x1f 12AE 10 LT 12AF 61 PUSH2 0x12c6 12B2 57 *JUMPI 12B3 61 PUSH2 0x0100 12B6 80 DUP1 12B7 83 DUP4 12B8 54 SLOAD 12B9 04 DIV 12BA 02 MUL 12BB 83 DUP4 12BC 52 MSTORE 12BD 91 SWAP2 12BE 60 PUSH1 0x20 12C0 01 ADD 12C1 91 SWAP2 12C2 61 PUSH2 0x12f1 12C5 56 *JUMP 12C6 5B JUMPDEST 12C7 82 DUP3 12C8 01 ADD 12C9 91 SWAP2 12CA 90 SWAP1 12CB 60 PUSH1 0x00 12CD 52 MSTORE 12CE 60 PUSH1 0x20 12D0 60 PUSH1 0x00 12D2 20 SHA3 12D3 90 SWAP1 12D4 5B JUMPDEST 12D5 81 DUP2 12D6 54 SLOAD 12D7 81 DUP2 12D8 52 MSTORE 12D9 90 SWAP1 12DA 60 PUSH1 0x01 12DC 01 ADD 12DD 90 SWAP1 12DE 60 PUSH1 0x20 12E0 01 ADD 12E1 80 DUP1 12E2 83 DUP4 12E3 11 GT 12E4 61 PUSH2 0x12d4 12E7 57 *JUMPI 12E8 82 DUP3 12E9 90 SWAP1 12EA 03 SUB 12EB 60 PUSH1 0x1f 12ED 16 AND 12EE 82 DUP3 12EF 01 ADD 12F0 91 SWAP2 12F1 5B JUMPDEST 12F2 50 POP 12F3 50 POP 12F4 50 POP 12F5 50 POP 12F6 50 POP 12F7 61 PUSH2 0x1740 12FA 90 SWAP1 12FB 91 SWAP2 12FC 90 SWAP1 12FD 63 PUSH4 0xffffffff 1302 16 AND 1303 56 *JUMP 1304 5B JUMPDEST 1305 60 PUSH1 0x01 1307 60 PUSH1 0x01 1309 60 PUSH1 0xa0 130B 1B SHL 130C 03 SUB 130D 81 DUP2 130E 16 AND 130F 61 PUSH2 0x132a 1312 57 *JUMPI 1313 60 PUSH1 0x40 1315 51 MLOAD 1316 62 PUSH3 0x461bcd 131A 60 PUSH1 0xe5 131C 1B SHL 131D 81 DUP2 131E 52 MSTORE 131F 60 PUSH1 0x04 1321 01 ADD 1322 61 PUSH2 0x04de 1325 90 SWAP1 1326 61 PUSH2 0x2b0c 1329 56 *JUMP 132A 5B JUMPDEST 132B 60 PUSH1 0x00 132D 80 DUP1 132E 54 SLOAD 132F 60 PUSH1 0x40 1331 51 MLOAD 1332 60 PUSH1 0x01 1334 60 PUSH1 0x01 1336 60 PUSH1 0xa0 1338 1B SHL 1339 03 SUB 133A 80 DUP1 133B 85 DUP6 133C 16 AND 133D 93 SWAP4 133E 92 SWAP3 133F 16 AND 1340 91 SWAP2 1341 7F PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 1362 91 SWAP2 1363 A3 LOG3 1364 60 PUSH1 0x00 1366 80 DUP1 1367 54 SLOAD 1368 60 PUSH1 0x01 136A 60 PUSH1 0x01 136C 60 PUSH1 0xa0 136E 1B SHL 136F 03 SUB 1370 19 NOT 1371 16 AND 1372 60 PUSH1 0x01 1374 60 PUSH1 0x01 1376 60 PUSH1 0xa0 1378 1B SHL 1379 03 SUB 137A 92 SWAP3 137B 90 SWAP1 137C 92 SWAP3 137D 16 AND 137E 91 SWAP2 137F 90 SWAP1 1380 91 SWAP2 1381 17 OR 1382 90 SWAP1 1383 55 SSTORE 1384 56 *JUMP 1385 5B JUMPDEST 1386 82 DUP3 1387 60 PUSH1 0x01 1389 60 PUSH1 0x01 138B 60 PUSH1 0xa0 138D 1B SHL 138E 03 SUB 138F 16 AND 1390 61 PUSH2 0x1398 1393 82 DUP3 1394 61 PUSH2 0x0858 1397 56 *JUMP 1398 5B JUMPDEST 1399 60 PUSH1 0x01 139B 60 PUSH1 0x01 139D 60 PUSH1 0xa0 139F 1B SHL 13A0 03 SUB 13A1 16 AND 13A2 14 EQ 13A3 61 PUSH2 0x13be 13A6 57 *JUMPI 13A7 60 PUSH1 0x40 13A9 51 MLOAD 13AA 62 PUSH3 0x461bcd 13AE 60 PUSH1 0xe5 13B0 1B SHL 13B1 81 DUP2 13B2 52 MSTORE 13B3 60 PUSH1 0x04 13B5 01 ADD 13B6 61 PUSH2 0x04de 13B9 90 SWAP1 13BA 61 PUSH2 0x2bdc 13BD 56 *JUMP 13BE 5B JUMPDEST 13BF 60 PUSH1 0x01 13C1 60 PUSH1 0x01 13C3 60 PUSH1 0xa0 13C5 1B SHL 13C6 03 SUB 13C7 82 DUP3 13C8 16 AND 13C9 61 PUSH2 0x13e4 13CC 57 *JUMPI 13CD 60 PUSH1 0x40 13CF 51 MLOAD 13D0 62 PUSH3 0x461bcd 13D4 60 PUSH1 0xe5 13D6 1B SHL 13D7 81 DUP2 13D8 52 MSTORE 13D9 60 PUSH1 0x04 13DB 01 ADD 13DC 61 PUSH2 0x04de 13DF 90 SWAP1 13E0 61 PUSH2 0x2b2c 13E3 56 *JUMP 13E4 5B JUMPDEST 13E5 61 PUSH2 0x13ed 13E8 81 DUP2 13E9 61 PUSH2 0x1835 13EC 56 *JUMP 13ED 5B JUMPDEST 13EE 60 PUSH1 0x01 13F0 60 PUSH1 0x01 13F2 60 PUSH1 0xa0 13F4 1B SHL 13F5 03 SUB 13F6 83 DUP4 13F7 16 AND 13F8 60 PUSH1 0x00 13FA 90 SWAP1 13FB 81 DUP2 13FC 52 MSTORE 13FD 60 PUSH1 0x04 13FF 60 PUSH1 0x20 1401 52 MSTORE 1402 60 PUSH1 0x40 1404 90 SWAP1 1405 20 SHA3 1406 61 PUSH2 0x140e 1409 90 SWAP1 140A 61 PUSH2 0x1870 140D 56 *JUMP 140E 5B JUMPDEST 140F 60 PUSH1 0x01 1411 60 PUSH1 0x01 1413 60 PUSH1 0xa0 1415 1B SHL 1416 03 SUB 1417 82 DUP3 1418 16 AND 1419 60 PUSH1 0x00 141B 90 SWAP1 141C 81 DUP2 141D 52 MSTORE 141E 60 PUSH1 0x04 1420 60 PUSH1 0x20 1422 52 MSTORE 1423 60 PUSH1 0x40 1425 90 SWAP1 1426 20 SHA3 1427 61 PUSH2 0x142f 142A 90 SWAP1 142B 61 PUSH2 0x1887 142E 56 *JUMP 142F 5B JUMPDEST 1430 60 PUSH1 0x00 1432 81 DUP2 1433 81 DUP2 1434 52 MSTORE 1435 60 PUSH1 0x02 1437 60 PUSH1 0x20 1439 52 MSTORE 143A 60 PUSH1 0x40 143C 80 DUP1 143D 82 DUP3 143E 20 SHA3 143F 80 DUP1 1440 54 SLOAD 1441 60 PUSH1 0x01 1443 60 PUSH1 0x01 1445 60 PUSH1 0xa0 1447 1B SHL 1448 03 SUB 1449 19 NOT 144A 16 AND 144B 60 PUSH1 0x01 144D 60 PUSH1 0x01 144F 60 PUSH1 0xa0 1451 1B SHL 1452 03 SUB 1453 86 DUP7 1454 81 DUP2 1455 16 AND 1456 91 SWAP2 1457 82 DUP3 1458 17 OR 1459 90 SWAP1 145A 92 SWAP3 145B 55 SSTORE 145C 91 SWAP2 145D 51 MLOAD 145E 84 DUP5 145F 93 SWAP4 1460 91 SWAP2 1461 87 DUP8 1462 16 AND 1463 91 SWAP2 1464 7F PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 1485 91 SWAP2 1486 A4 LOG4 1487 50 POP 1488 50 POP 1489 50 POP 148A 56 *JUMP 148B 5B JUMPDEST 148C 60 PUSH1 0x01 148E 60 PUSH1 0x01 1490 60 PUSH1 0xa0 1492 1B SHL 1493 03 SUB 1494 82 DUP3 1495 16 AND 1496 60 PUSH1 0x00 1498 90 SWAP1 1499 81 DUP2 149A 52 MSTORE 149B 60 PUSH1 0x09 149D 60 PUSH1 0x20 149F 52 MSTORE 14A0 60 PUSH1 0x40 14A2 81 DUP2 14A3 20 SHA3 14A4 54 SLOAD 14A5 61 PUSH2 0x14b5 14A8 90 SWAP1 14A9 60 PUSH1 0x01 14AB 63 PUSH4 0xffffffff 14B0 61 PUSH2 0x1890 14B3 16 AND 14B4 56 *JUMP 14B5 5B JUMPDEST 14B6 60 PUSH1 0x00 14B8 83 DUP4 14B9 81 DUP2 14BA 52 MSTORE 14BB 60 PUSH1 0x0a 14BD 60 PUSH1 0x20 14BF 52 MSTORE 14C0 60 PUSH1 0x40 14C2 90 SWAP1 14C3 20 SHA3 14C4 54 SLOAD 14C5 90 SWAP1 14C6 91 SWAP2 14C7 50 POP 14C8 80 DUP1 14C9 82 DUP3 14CA 14 EQ 14CB 61 PUSH2 0x1550 14CE 57 *JUMPI 14CF 60 PUSH1 0x01 14D1 60 PUSH1 0x01 14D3 60 PUSH1 0xa0 14D5 1B SHL 14D6 03 SUB 14D7 84 DUP5 14D8 16 AND 14D9 60 PUSH1 0x00 14DB 90 SWAP1 14DC 81 DUP2 14DD 52 MSTORE 14DE 60 PUSH1 0x09 14E0 60 PUSH1 0x20 14E2 52 MSTORE 14E3 60 PUSH1 0x40 14E5 81 DUP2 14E6 20 SHA3 14E7 80 DUP1 14E8 54 SLOAD 14E9 84 DUP5 14EA 90 SWAP1 14EB 81 DUP2 14EC 10 LT 14ED 61 PUSH2 0x14f2 14F0 57 *JUMPI 14F1 FE *ASSERT 14F2 5B JUMPDEST 14F3 90 SWAP1 14F4 60 PUSH1 0x00 14F6 52 MSTORE 14F7 60 PUSH1 0x20 14F9 60 PUSH1 0x00 14FB 20 SHA3 14FC 01 ADD 14FD 54 SLOAD 14FE 90 SWAP1 14FF 50 POP 1500 80 DUP1 1501 60 PUSH1 0x09 1503 60 PUSH1 0x00 1505 87 DUP8 1506 60 PUSH1 0x01 1508 60 PUSH1 0x01 150A 60 PUSH1 0xa0 150C 1B SHL 150D 03 SUB 150E 16 AND 150F 60 PUSH1 0x01 1511 60 PUSH1 0x01 1513 60 PUSH1 0xa0 1515 1B SHL 1516 03 SUB 1517 16 AND 1518 81 DUP2 1519 52 MSTORE 151A 60 PUSH1 0x20 151C 01 ADD 151D 90 SWAP1 151E 81 DUP2 151F 52 MSTORE 1520 60 PUSH1 0x20 1522 01 ADD 1523 60 PUSH1 0x00 1525 20 SHA3 1526 83 DUP4 1527 81 DUP2 1528 54 SLOAD 1529 81 DUP2 152A 10 LT 152B 61 PUSH2 0x1530 152E 57 *JUMPI 152F FE *ASSERT 1530 5B JUMPDEST 1531 60 PUSH1 0x00 1533 91 SWAP2 1534 82 DUP3 1535 52 MSTORE 1536 60 PUSH1 0x20 1538 80 DUP1 1539 83 DUP4 153A 20 SHA3 153B 90 SWAP1 153C 91 SWAP2 153D 01 ADD 153E 92 SWAP3 153F 90 SWAP1 1540 92 SWAP3 1541 55 SSTORE 1542 91 SWAP2 1543 82 DUP3 1544 52 MSTORE 1545 60 PUSH1 0x0a 1547 90 SWAP1 1548 52 MSTORE 1549 60 PUSH1 0x40 154B 90 SWAP1 154C 20 SHA3 154D 81 DUP2 154E 90 SWAP1 154F 55 SSTORE 1550 5B JUMPDEST 1551 60 PUSH1 0x01 1553 60 PUSH1 0x01 1555 60 PUSH1 0xa0 1557 1B SHL 1558 03 SUB 1559 84 DUP5 155A 16 AND 155B 60 PUSH1 0x00 155D 90 SWAP1 155E 81 DUP2 155F 52 MSTORE 1560 60 PUSH1 0x09 1562 60 PUSH1 0x20 1564 52 MSTORE 1565 60 PUSH1 0x40 1567 90 SWAP1 1568 20 SHA3 1569 80 DUP1 156A 54 SLOAD 156B 90 SWAP1 156C 61 PUSH2 0x1132 156F 90 SWAP1 1570 60 PUSH1 0x00 1572 19 NOT 1573 83 DUP4 1574 01 ADD 1575 61 PUSH2 0x1c85 1578 56 *JUMP 1579 5B JUMPDEST 157A 60 PUSH1 0x01 157C 60 PUSH1 0x01 157E 60 PUSH1 0xa0 1580 1B SHL 1581 03 SUB 1582 90 SWAP1 1583 91 SWAP2 1584 16 AND 1585 60 PUSH1 0x00 1587 90 SWAP1 1588 81 DUP2 1589 52 MSTORE 158A 60 PUSH1 0x09 158C 60 PUSH1 0x20 158E 81 DUP2 158F 81 DUP2 1590 52 MSTORE 1591 60 PUSH1 0x40 1593 80 DUP1 1594 84 DUP5 1595 20 SHA3 1596 80 DUP1 1597 54 SLOAD 1598 86 DUP7 1599 86 DUP7 159A 52 MSTORE 159B 60 PUSH1 0x0a 159D 84 DUP5 159E 52 MSTORE 159F 91 SWAP2 15A0 85 DUP6 15A1 20 SHA3 15A2 82 DUP3 15A3 90 SWAP1 15A4 55 SSTORE 15A5 92 SWAP3 15A6 82 DUP3 15A7 52 MSTORE 15A8 60 PUSH1 0x01 15AA 81 DUP2 15AB 01 ADD 15AC 83 DUP4 15AD 55 SSTORE 15AE 91 SWAP2 15AF 83 DUP4 15B0 52 MSTORE 15B1 90 SWAP1 15B2 91 SWAP2 15B3 20 SHA3 15B4 01 ADD 15B5 55 SSTORE 15B6 56 *JUMP 15B7 5B JUMPDEST 15B8 61 PUSH2 0x15c1 15BB 82 DUP3 15BC 82 DUP3 15BD 61 PUSH2 0x18d9 15C0 56 *JUMP 15C1 5B JUMPDEST 15C2 61 PUSH2 0x1168 15C5 81 DUP2 15C6 61 PUSH2 0x1905 15C9 56 *JUMP 15CA 5B JUMPDEST 15CB 61 PUSH2 0x15d4 15CE 82 DUP3 15CF 82 DUP3 15D0 61 PUSH2 0x1943 15D3 56 *JUMP 15D4 5B JUMPDEST 15D5 61 PUSH2 0x15de 15D8 82 DUP3 15D9 82 DUP3 15DA 61 PUSH2 0x1579 15DD 56 *JUMP 15DE 5B JUMPDEST 15DF 61 PUSH2 0x1168 15E2 81 DUP2 15E3 61 PUSH2 0x1a0a 15E6 56 *JUMP 15E7 5B JUMPDEST 15E8 60 PUSH1 0x00 15EA 82 DUP3 15EB 81 DUP2 15EC 52 MSTORE 15ED 60 PUSH1 0x08 15EF 60 PUSH1 0x20 15F1 90 SWAP1 15F2 81 DUP2 15F3 52 MSTORE 15F4 60 PUSH1 0x40 15F6 90 SWAP1 15F7 91 SWAP2 15F8 20 SHA3 15F9 82 DUP3 15FA 51 MLOAD 15FB 61 PUSH2 0x071a 15FE 92 SWAP3 15FF 84 DUP5 1600 01 ADD 1601 90 SWAP1 1602 61 PUSH2 0x1c07 1605 56 *JUMP 1606 5B JUMPDEST 1607 60 PUSH1 0x00 1609 61 PUSH2 0x161a 160C 84 DUP5 160D 60 PUSH1 0x01 160F 60 PUSH1 0x01 1611 60 PUSH1 0xa0 1613 1B SHL 1614 03 SUB 1615 16 AND 1616 61 PUSH2 0x1a4e 1619 56 *JUMP 161A 5B JUMPDEST 161B 61 PUSH2 0x1626 161E 57 *JUMPI 161F 50 POP 1620 60 PUSH1 0x01 1622 61 PUSH2 0x0edb 1625 56 *JUMP 1626 5B JUMPDEST 1627 60 PUSH1 0x00 1629 60 PUSH1 0x60 162B 60 PUSH1 0x01 162D 60 PUSH1 0x01 162F 60 PUSH1 0xa0 1631 1B SHL 1632 03 SUB 1633 86 DUP7 1634 16 AND 1635 63 PUSH4 0x0a85bd01 163A 60 PUSH1 0xe1 163C 1B SHL 163D 61 PUSH2 0x1644 1640 61 PUSH2 0x0e5a 1643 56 *JUMP 1644 5B JUMPDEST 1645 89 DUP10 1646 88 DUP9 1647 88 DUP9 1648 60 PUSH1 0x40 164A 51 MLOAD 164B 60 PUSH1 0x24 164D 01 ADD 164E 61 PUSH2 0x165a 1651 94 SWAP5 1652 93 SWAP4 1653 92 SWAP3 1654 91 SWAP2 1655 90 SWAP1 1656 61 PUSH2 0x29fe 1659 56 *JUMP 165A 5B JUMPDEST 165B 60 PUSH1 0x40 165D 80 DUP1 165E 51 MLOAD 165F 60 PUSH1 0x1f 1661 19 NOT 1662 81 DUP2 1663 84 DUP5 1664 03 SUB 1665 01 ADD 1666 81 DUP2 1667 52 MSTORE 1668 91 SWAP2 1669 81 DUP2 166A 52 MSTORE 166B 60 PUSH1 0x20 166D 82 DUP3 166E 01 ADD 166F 80 DUP1 1670 51 MLOAD 1671 60 PUSH1 0x01 1673 60 PUSH1 0x01 1675 60 PUSH1 0xe0 1677 1B SHL 1678 03 SUB 1679 16 AND 167A 60 PUSH1 0x01 167C 60 PUSH1 0x01 167E 60 PUSH1 0xe0 1680 1B SHL 1681 03 SUB 1682 19 NOT 1683 90 SWAP1 1684 94 SWAP5 1685 16 AND 1686 93 SWAP4 1687 90 SWAP1 1688 93 SWAP4 1689 17 OR 168A 90 SWAP1 168B 92 SWAP3 168C 52 MSTORE 168D 90 SWAP1 168E 51 MLOAD 168F 61 PUSH2 0x1698 1692 91 SWAP2 1693 90 SWAP1 1694 61 PUSH2 0x29be 1697 56 *JUMP 1698 5B JUMPDEST 1699 60 PUSH1 0x00 169B 60 PUSH1 0x40 169D 51 MLOAD 169E 80 DUP1 169F 83 DUP4 16A0 03 SUB 16A1 81 DUP2 16A2 60 PUSH1 0x00 16A4 86 DUP7 16A5 5A GAS 16A6 F1 CALL 16A7 91 SWAP2 16A8 50 POP 16A9 50 POP 16AA 3D RETURNDATASIZE 16AB 80 DUP1 16AC 60 PUSH1 0x00 16AE 81 DUP2 16AF 14 EQ 16B0 61 PUSH2 0x16d5 16B3 57 *JUMPI 16B4 60 PUSH1 0x40 16B6 51 MLOAD 16B7 91 SWAP2 16B8 50 POP 16B9 60 PUSH1 0x1f 16BB 19 NOT 16BC 60 PUSH1 0x3f 16BE 3D RETURNDATASIZE 16BF 01 ADD 16C0 16 AND 16C1 82 DUP3 16C2 01 ADD 16C3 60 PUSH1 0x40 16C5 52 MSTORE 16C6 3D RETURNDATASIZE 16C7 82 DUP3 16C8 52 MSTORE 16C9 3D RETURNDATASIZE 16CA 60 PUSH1 0x00 16CC 60 PUSH1 0x20 16CE 84 DUP5 16CF 01 ADD 16D0 3E RETURNDATACOPY 16D1 61 PUSH2 0x16da 16D4 56 *JUMP 16D5 5B JUMPDEST 16D6 60 PUSH1 0x60 16D8 91 SWAP2 16D9 50 POP 16DA 5B JUMPDEST 16DB 50 POP 16DC 91 SWAP2 16DD 50 POP 16DE 91 SWAP2 16DF 50 POP 16E0 81 DUP2 16E1 61 PUSH2 0x170c 16E4 57 *JUMPI 16E5 80 DUP1 16E6 51 MLOAD 16E7 15 ISZERO 16E8 61 PUSH2 0x16f4 16EB 57 *JUMPI 16EC 80 DUP1 16ED 51 MLOAD 16EE 80 DUP1 16EF 82 DUP3 16F0 60 PUSH1 0x20 16F2 01 ADD 16F3 FD *REVERT 16F4 5B JUMPDEST 16F5 60 PUSH1 0x40 16F7 51 MLOAD 16F8 62 PUSH3 0x461bcd 16FC 60 PUSH1 0xe5 16FE 1B SHL 16FF 81 DUP2 1700 52 MSTORE 1701 60 PUSH1 0x04 1703 01 ADD 1704 61 PUSH2 0x04de 1707 90 SWAP1 1708 61 PUSH2 0x2afc 170B 56 *JUMP 170C 5B JUMPDEST 170D 60 PUSH1 0x00 170F 81 DUP2 1710 80 DUP1 1711 60 PUSH1 0x20 1713 01 ADD 1714 90 SWAP1 1715 51 MLOAD 1716 61 PUSH2 0x1722 1719 91 SWAP2 171A 90 SWAP1 171B 81 DUP2 171C 01 ADD 171D 90 SWAP1 171E 61 PUSH2 0x1ff8 1721 56 *JUMP 1722 5B JUMPDEST 1723 60 PUSH1 0x01 1725 60 PUSH1 0x01 1727 60 PUSH1 0xe0 1729 1B SHL 172A 03 SUB 172B 19 NOT 172C 16 AND 172D 63 PUSH4 0x0a85bd01 1732 60 PUSH1 0xe1 1734 1B SHL 1735 14 EQ 1736 93 SWAP4 1737 50 POP 1738 61 PUSH2 0x0edb 173B 92 SWAP3 173C 50 POP 173D 50 POP 173E 50 POP 173F 56 *JUMP 1740 5B JUMPDEST 1741 60 PUSH1 0x60 1743 80 DUP1 1744 83 DUP4 1745 90 SWAP1 1746 50 POP 1747 60 PUSH1 0x60 1749 83 DUP4 174A 90 SWAP1 174B 50 POP 174C 60 PUSH1 0x60 174E 81 DUP2 174F 51 MLOAD 1750 83 DUP4 1751 51 MLOAD 1752 01 ADD 1753 60 PUSH1 0x40 1755 51 MLOAD 1756 90 SWAP1 1757 80 DUP1 1758 82 DUP3 1759 52 MSTORE 175A 80 DUP1 175B 60 PUSH1 0x1f 175D 01 ADD 175E 60 PUSH1 0x1f 1760 19 NOT 1761 16 AND 1762 60 PUSH1 0x20 1764 01 ADD 1765 82 DUP3 1766 01 ADD 1767 60 PUSH1 0x40 1769 52 MSTORE 176A 80 DUP1 176B 15 ISZERO 176C 61 PUSH2 0x177c 176F 57 *JUMPI 1770 60 PUSH1 0x20 1772 82 DUP3 1773 01 ADD 1774 81 DUP2 1775 80 DUP1 1776 38 CODESIZE 1777 83 DUP4 1778 39 CODECOPY 1779 01 ADD 177A 90 SWAP1 177B 50 POP 177C 5B JUMPDEST 177D 50 POP 177E 90 SWAP1 177F 50 POP 1780 60 PUSH1 0x00 1782 80 DUP1 1783 5B JUMPDEST 1784 84 DUP5 1785 51 MLOAD 1786 81 DUP2 1787 10 LT 1788 15 ISZERO 1789 61 PUSH2 0x17d4 178C 57 *JUMPI 178D 84 DUP5 178E 81 DUP2 178F 81 DUP2 1790 51 MLOAD 1791 81 DUP2 1792 10 LT 1793 61 PUSH2 0x1798 1796 57 *JUMPI 1797 FE *ASSERT 1798 5B JUMPDEST 1799 60 PUSH1 0x20 179B 01 ADD 179C 01 ADD 179D 51 MLOAD 179E 60 PUSH1 0xf8 17A0 1C SHR 17A1 60 PUSH1 0xf8 17A3 1B SHL 17A4 83 DUP4 17A5 83 DUP4 17A6 80 DUP1 17A7 60 PUSH1 0x01 17A9 01 ADD 17AA 94 SWAP5 17AB 50 POP 17AC 81 DUP2 17AD 51 MLOAD 17AE 81 DUP2 17AF 10 LT 17B0 61 PUSH2 0x17b5 17B3 57 *JUMPI 17B4 FE *ASSERT 17B5 5B JUMPDEST 17B6 60 PUSH1 0x20 17B8 01 ADD 17B9 01 ADD 17BA 90 SWAP1 17BB 60 PUSH1 0x01 17BD 60 PUSH1 0x01 17BF 60 PUSH1 0xf8 17C1 1B SHL 17C2 03 SUB 17C3 19 NOT 17C4 16 AND 17C5 90 SWAP1 17C6 81 DUP2 17C7 60 PUSH1 0x00 17C9 1A BYTE 17CA 90 SWAP1 17CB 53 MSTORE8 17CC 50 POP 17CD 60 PUSH1 0x01 17CF 01 ADD 17D0 61 PUSH2 0x1783 17D3 56 *JUMP 17D4 5B JUMPDEST 17D5 50 POP 17D6 60 PUSH1 0x00 17D8 5B JUMPDEST 17D9 83 DUP4 17DA 51 MLOAD 17DB 81 DUP2 17DC 10 LT 17DD 15 ISZERO 17DE 61 PUSH2 0x1829 17E1 57 *JUMPI 17E2 83 DUP4 17E3 81 DUP2 17E4 81 DUP2 17E5 51 MLOAD 17E6 81 DUP2 17E7 10 LT 17E8 61 PUSH2 0x17ed 17EB 57 *JUMPI 17EC FE *ASSERT 17ED 5B JUMPDEST 17EE 60 PUSH1 0x20 17F0 01 ADD 17F1 01 ADD 17F2 51 MLOAD 17F3 60 PUSH1 0xf8 17F5 1C SHR 17F6 60 PUSH1 0xf8 17F8 1B SHL 17F9 83 DUP4 17FA 83 DUP4 17FB 80 DUP1 17FC 60 PUSH1 0x01 17FE 01 ADD 17FF 94 SWAP5 1800 50 POP 1801 81 DUP2 1802 51 MLOAD 1803 81 DUP2 1804 10 LT 1805 61 PUSH2 0x180a 1808 57 *JUMPI 1809 FE *ASSERT 180A 5B JUMPDEST 180B 60 PUSH1 0x20 180D 01 ADD 180E 01 ADD 180F 90 SWAP1 1810 60 PUSH1 0x01 1812 60 PUSH1 0x01 1814 60 PUSH1 0xf8 1816 1B SHL 1817 03 SUB 1818 19 NOT 1819 16 AND 181A 90 SWAP1 181B 81 DUP2 181C 60 PUSH1 0x00 181E 1A BYTE 181F 90 SWAP1 1820 53 MSTORE8 1821 50 POP 1822 60 PUSH1 0x01 1824 01 ADD 1825 61 PUSH2 0x17d8 1828 56 *JUMP 1829 5B JUMPDEST 182A 50 POP 182B 90 SWAP1 182C 96 SWAP7 182D 95 SWAP6 182E 50 POP 182F 50 POP 1830 50 POP 1831 50 POP 1832 50 POP 1833 50 POP 1834 56 *JUMP 1835 5B JUMPDEST 1836 60 PUSH1 0x00 1838 81 DUP2 1839 81 DUP2 183A 52 MSTORE 183B 60 PUSH1 0x03 183D 60 PUSH1 0x20 183F 52 MSTORE 1840 60 PUSH1 0x40 1842 90 SWAP1 1843 20 SHA3 1844 54 SLOAD 1845 60 PUSH1 0x01 1847 60 PUSH1 0x01 1849 60 PUSH1 0xa0 184B 1B SHL 184C 03 SUB 184D 16 AND 184E 15 ISZERO 184F 61 PUSH2 0x07cb 1852 57 *JUMPI 1853 60 PUSH1 0x00 1855 90 SWAP1 1856 81 DUP2 1857 52 MSTORE 1858 60 PUSH1 0x03 185A 60 PUSH1 0x20 185C 52 MSTORE 185D 60 PUSH1 0x40 185F 90 SWAP1 1860 20 SHA3 1861 80 DUP1 1862 54 SLOAD 1863 60 PUSH1 0x01 1865 60 PUSH1 0x01 1867 60 PUSH1 0xa0 1869 1B SHL 186A 03 SUB 186B 19 NOT 186C 16 AND 186D 90 SWAP1 186E 55 SSTORE 186F 56 *JUMP 1870 5B JUMPDEST 1871 80 DUP1 1872 54 SLOAD 1873 61 PUSH2 0x1883 1876 90 SWAP1 1877 60 PUSH1 0x01 1879 63 PUSH4 0xffffffff 187E 61 PUSH2 0x1890 1881 16 AND 1882 56 *JUMP 1883 5B JUMPDEST 1884 90 SWAP1 1885 55 SSTORE 1886 56 *JUMP 1887 5B JUMPDEST 1888 80 DUP1 1889 54 SLOAD 188A 60 PUSH1 0x01 188C 01 ADD 188D 90 SWAP1 188E 55 SSTORE 188F 56 *JUMP 1890 5B JUMPDEST 1891 60 PUSH1 0x00 1893 61 PUSH2 0x18d2 1896 83 DUP4 1897 83 DUP4 1898 60 PUSH1 0x40 189A 51 MLOAD 189B 80 DUP1 189C 60 PUSH1 0x40 189E 01 ADD 189F 60 PUSH1 0x40 18A1 52 MSTORE 18A2 80 DUP1 18A3 60 PUSH1 0x1e 18A5 81 DUP2 18A6 52 MSTORE 18A7 60 PUSH1 0x20 18A9 01 ADD 18AA 7F PUSH32 0x536166654d6174683a207375627472616374696f6e206f766572666c6f770000 18CB 81 DUP2 18CC 52 MSTORE 18CD 50 POP 18CE 61 PUSH2 0x1a87 18D1 56 *JUMP label_18D2: // Incoming return from call to 0x2275 at 0x2ADB // Inputs[3] // { // @18D3 stack[-5] // @18D3 stack[-1] // @18D4 stack[-4] // } 18D2 5B JUMPDEST 18D3 93 SWAP4 18D4 92 SWAP3 18D5 50 POP 18D6 50 POP 18D7 50 POP 18D8 56 *JUMP // Stack delta = -4 // Outputs[1] { @18D3 stack[-5] = stack[-1] } // Block ends with unconditional jump to stack[-5] 18D9 5B JUMPDEST 18DA 61 PUSH2 0x18e3 18DD 82 DUP3 18DE 82 DUP3 18DF 61 PUSH2 0x1ab3 18E2 56 *JUMP 18E3 5B JUMPDEST 18E4 61 PUSH2 0x18ed 18E7 82 DUP3 18E8 82 DUP3 18E9 61 PUSH2 0x148b 18EC 56 *JUMP 18ED 5B JUMPDEST 18EE 60 PUSH1 0x00 18F0 81 DUP2 18F1 81 DUP2 18F2 52 MSTORE 18F3 60 PUSH1 0x0a 18F5 60 PUSH1 0x20 18F7 52 MSTORE 18F8 60 PUSH1 0x40 18FA 81 DUP2 18FB 20 SHA3 18FC 55 SSTORE 18FD 61 PUSH2 0x1168 1900 81 DUP2 1901 61 PUSH2 0x1b6b 1904 56 *JUMP 1905 5B JUMPDEST 1906 60 PUSH1 0x00 1908 81 DUP2 1909 81 DUP2 190A 52 MSTORE 190B 60 PUSH1 0x08 190D 60 PUSH1 0x20 190F 52 MSTORE 1910 60 PUSH1 0x40 1912 90 SWAP1 1913 20 SHA3 1914 54 SLOAD 1915 60 PUSH1 0x02 1917 60 PUSH1 0x00 1919 19 NOT 191A 61 PUSH2 0x0100 191D 60 PUSH1 0x01 191F 84 DUP5 1920 16 AND 1921 15 ISZERO 1922 02 MUL 1923 01 ADD 1924 90 SWAP1 1925 91 SWAP2 1926 16 AND 1927 04 DIV 1928 15 ISZERO 1929 61 PUSH2 0x07cb 192C 57 *JUMPI 192D 60 PUSH1 0x00 192F 81 DUP2 1930 81 DUP2 1931 52 MSTORE 1932 60 PUSH1 0x08 1934 60 PUSH1 0x20 1936 52 MSTORE 1937 60 PUSH1 0x40 1939 81 DUP2 193A 20 SHA3 193B 61 PUSH2 0x07cb 193E 91 SWAP2 193F 61 PUSH2 0x1ca9 1942 56 *JUMP 1943 5B JUMPDEST 1944 60 PUSH1 0x01 1946 60 PUSH1 0x01 1948 60 PUSH1 0xa0 194A 1B SHL 194B 03 SUB 194C 82 DUP3 194D 16 AND 194E 61 PUSH2 0x1969 1951 57 *JUMPI 1952 60 PUSH1 0x40 1954 51 MLOAD 1955 62 PUSH3 0x461bcd 1959 60 PUSH1 0xe5 195B 1B SHL 195C 81 DUP2 195D 52 MSTORE 195E 60 PUSH1 0x04 1960 01 ADD 1961 61 PUSH2 0x04de 1964 90 SWAP1 1965 61 PUSH2 0x2b9c 1968 56 *JUMP 1969 5B JUMPDEST 196A 61 PUSH2 0x1972 196D 81 DUP2 196E 61 PUSH2 0x0e3d 1971 56 *JUMP 1972 5B JUMPDEST 1973 15 ISZERO 1974 61 PUSH2 0x198f 1977 57 *JUMPI 1978 60 PUSH1 0x40 197A 51 MLOAD 197B 62 PUSH3 0x461bcd 197F 60 PUSH1 0xe5 1981 1B SHL 1982 81 DUP2 1983 52 MSTORE 1984 60 PUSH1 0x04 1986 01 ADD 1987 61 PUSH2 0x04de 198A 90 SWAP1 198B 61 PUSH2 0x2b1c 198E 56 *JUMP 198F 5B JUMPDEST 1990 60 PUSH1 0x00 1992 81 DUP2 1993 81 DUP2 1994 52 MSTORE 1995 60 PUSH1 0x02 1997 60 PUSH1 0x20 1999 90 SWAP1 199A 81 DUP2 199B 52 MSTORE 199C 60 PUSH1 0x40 199E 80 DUP1 199F 83 DUP4 19A0 20 SHA3 19A1 80 DUP1 19A2 54 SLOAD 19A3 60 PUSH1 0x01 19A5 60 PUSH1 0x01 19A7 60 PUSH1 0xa0 19A9 1B SHL 19AA 03 SUB 19AB 19 NOT 19AC 16 AND 19AD 60 PUSH1 0x01 19AF 60 PUSH1 0x01 19B1 60 PUSH1 0xa0 19B3 1B SHL 19B4 03 SUB 19B5 87 DUP8 19B6 16 AND 19B7 90 SWAP1 19B8 81 DUP2 19B9 17 OR 19BA 90 SWAP1 19BB 91 SWAP2 19BC 55 SSTORE 19BD 83 DUP4 19BE 52 MSTORE 19BF 60 PUSH1 0x04 19C1 90 SWAP1 19C2 91 SWAP2 19C3 52 MSTORE 19C4 90 SWAP1 19C5 20 SHA3 19C6 61 PUSH2 0x19ce 19C9 90 SWAP1 19CA 61 PUSH2 0x1887 19CD 56 *JUMP 19CE 5B JUMPDEST 19CF 60 PUSH1 0x40 19D1 51 MLOAD 19D2 81 DUP2 19D3 90 SWAP1 19D4 60 PUSH1 0x01 19D6 60 PUSH1 0x01 19D8 60 PUSH1 0xa0 19DA 1B SHL 19DB 03 SUB 19DC 84 DUP5 19DD 16 AND 19DE 90 SWAP1 19DF 60 PUSH1 0x00 19E1 90 SWAP1 19E2 7F PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 1A03 90 SWAP1 1A04 82 DUP3 1A05 90 SWAP1 1A06 A4 LOG4 1A07 50 POP 1A08 50 POP 1A09 56 *JUMP 1A0A 5B JUMPDEST 1A0B 60 PUSH1 0x0b 1A0D 80 DUP1 1A0E 54 SLOAD 1A0F 60 PUSH1 0x00 1A11 83 DUP4 1A12 81 DUP2 1A13 52 MSTORE 1A14 60 PUSH1 0x0c 1A16 60 PUSH1 0x20 1A18 52 MSTORE 1A19 60 PUSH1 0x40 1A1B 81 DUP2 1A1C 20 SHA3 1A1D 82 DUP3 1A1E 90 SWAP1 1A1F 55 SSTORE 1A20 60 PUSH1 0x01 1A22 82 DUP3 1A23 01 ADD 1A24 83 DUP4 1A25 55 SSTORE 1A26 91 SWAP2 1A27 90 SWAP1 1A28 91 SWAP2 1A29 52 MSTORE 1A2A 7F PUSH32 0x0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db9 1A4B 01 ADD 1A4C 55 SSTORE 1A4D 56 *JUMP 1A4E 5B JUMPDEST 1A4F 60 PUSH1 0x00 1A51 81 DUP2 1A52 3F EXTCODEHASH 1A53 7F PUSH32 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470 1A74 81 DUP2 1A75 81 DUP2 1A76 14 EQ 1A77 80 DUP1 1A78 15 ISZERO 1A79 90 SWAP1 1A7A 61 PUSH2 0x0edb 1A7D 57 *JUMPI 1A7E 50 POP 1A7F 50 POP 1A80 15 ISZERO 1A81 15 ISZERO 1A82 92 SWAP3 1A83 91 SWAP2 1A84 50 POP 1A85 50 POP 1A86 56 *JUMP 1A87 5B JUMPDEST 1A88 60 PUSH1 0x00 1A8A 81 DUP2 1A8B 84 DUP5 1A8C 84 DUP5 1A8D 11 GT 1A8E 15 ISZERO 1A8F 61 PUSH2 0x1aab 1A92 57 *JUMPI 1A93 60 PUSH1 0x40 1A95 51 MLOAD 1A96 62 PUSH3 0x461bcd 1A9A 60 PUSH1 0xe5 1A9C 1B SHL 1A9D 81 DUP2 1A9E 52 MSTORE 1A9F 60 PUSH1 0x04 1AA1 01 ADD 1AA2 61 PUSH2 0x04de 1AA5 91 SWAP2 1AA6 90 SWAP1 1AA7 61 PUSH2 0x2acb 1AAA 56 *JUMP 1AAB 5B JUMPDEST 1AAC 50 POP 1AAD 50 POP 1AAE 50 POP 1AAF 90 SWAP1 1AB0 03 SUB 1AB1 90 SWAP1 1AB2 56 *JUMP 1AB3 5B JUMPDEST 1AB4 81 DUP2 1AB5 60 PUSH1 0x01 1AB7 60 PUSH1 0x01 1AB9 60 PUSH1 0xa0 1ABB 1B SHL 1ABC 03 SUB 1ABD 16 AND 1ABE 61 PUSH2 0x1ac6 1AC1 82 DUP3 1AC2 61 PUSH2 0x0858 1AC5 56 *JUMP 1AC6 5B JUMPDEST 1AC7 60 PUSH1 0x01 1AC9 60 PUSH1 0x01 1ACB 60 PUSH1 0xa0 1ACD 1B SHL 1ACE 03 SUB 1ACF 16 AND 1AD0 14 EQ 1AD1 61 PUSH2 0x1aec 1AD4 57 *JUMPI 1AD5 60 PUSH1 0x40 1AD7 51 MLOAD 1AD8 62 PUSH3 0x461bcd 1ADC 60 PUSH1 0xe5 1ADE 1B SHL 1ADF 81 DUP2 1AE0 52 MSTORE 1AE1 60 PUSH1 0x04 1AE3 01 ADD 1AE4 61 PUSH2 0x04de 1AE7 90 SWAP1 1AE8 61 PUSH2 0x2c2c 1AEB 56 *JUMP 1AEC 5B JUMPDEST 1AED 61 PUSH2 0x1af5 1AF0 81 DUP2 1AF1 61 PUSH2 0x1835 1AF4 56 *JUMP 1AF5 5B JUMPDEST 1AF6 60 PUSH1 0x01 1AF8 60 PUSH1 0x01 1AFA 60 PUSH1 0xa0 1AFC 1B SHL 1AFD 03 SUB 1AFE 82 DUP3 1AFF 16 AND 1B00 60 PUSH1 0x00 1B02 90 SWAP1 1B03 81 DUP2 1B04 52 MSTORE 1B05 60 PUSH1 0x04 1B07 60 PUSH1 0x20 1B09 52 MSTORE 1B0A 60 PUSH1 0x40 1B0C 90 SWAP1 1B0D 20 SHA3 1B0E 61 PUSH2 0x1b16 1B11 90 SWAP1 1B12 61 PUSH2 0x1870 1B15 56 *JUMP 1B16 5B JUMPDEST 1B17 60 PUSH1 0x00 1B19 81 DUP2 1B1A 81 DUP2 1B1B 52 MSTORE 1B1C 60 PUSH1 0x02 1B1E 60 PUSH1 0x20 1B20 52 MSTORE 1B21 60 PUSH1 0x40 1B23 80 DUP1 1B24 82 DUP3 1B25 20 SHA3 1B26 80 DUP1 1B27 54 SLOAD 1B28 60 PUSH1 0x01 1B2A 60 PUSH1 0x01 1B2C 60 PUSH1 0xa0 1B2E 1B SHL 1B2F 03 SUB 1B30 19 NOT 1B31 16 AND 1B32 90 SWAP1 1B33 55 SSTORE 1B34 51 MLOAD 1B35 82 DUP3 1B36 91 SWAP2 1B37 90 SWAP1 1B38 60 PUSH1 0x01 1B3A 60 PUSH1 0x01 1B3C 60 PUSH1 0xa0 1B3E 1B SHL 1B3F 03 SUB 1B40 85 DUP6 1B41 16 AND 1B42 90 SWAP1 1B43 7F PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 1B64 90 SWAP1 1B65 83 DUP4 1B66 90 SWAP1 1B67 A4 LOG4 1B68 50 POP 1B69 50 POP 1B6A 56 *JUMP 1B6B 5B JUMPDEST 1B6C 60 PUSH1 0x0b 1B6E 54 SLOAD 1B6F 60 PUSH1 0x00 1B71 90 SWAP1 1B72 61 PUSH2 0x1b82 1B75 90 SWAP1 1B76 60 PUSH1 0x01 1B78 63 PUSH4 0xffffffff 1B7D 61 PUSH2 0x1890 1B80 16 AND 1B81 56 *JUMP 1B82 5B JUMPDEST 1B83 60 PUSH1 0x00 1B85 83 DUP4 1B86 81 DUP2 1B87 52 MSTORE 1B88 60 PUSH1 0x0c 1B8A 60 PUSH1 0x20 1B8C 52 MSTORE 1B8D 60 PUSH1 0x40 1B8F 81 DUP2 1B90 20 SHA3 1B91 54 SLOAD 1B92 60 PUSH1 0x0b 1B94 80 DUP1 1B95 54 SLOAD 1B96 93 SWAP4 1B97 94 SWAP5 1B98 50 POP 1B99 90 SWAP1 1B9A 92 SWAP3 1B9B 84 DUP5 1B9C 90 SWAP1 1B9D 81 DUP2 1B9E 10 LT 1B9F 61 PUSH2 0x1ba4 1BA2 57 *JUMPI 1BA3 FE *ASSERT 1BA4 5B JUMPDEST 1BA5 90 SWAP1 1BA6 60 PUSH1 0x00 1BA8 52 MSTORE 1BA9 60 PUSH1 0x20 1BAB 60 PUSH1 0x00 1BAD 20 SHA3 1BAE 01 ADD 1BAF 54 SLOAD 1BB0 90 SWAP1 1BB1 50 POP 1BB2 80 DUP1 1BB3 60 PUSH1 0x0b 1BB5 83 DUP4 1BB6 81 DUP2 1BB7 54 SLOAD 1BB8 81 DUP2 1BB9 10 LT 1BBA 61 PUSH2 0x1bbf 1BBD 57 *JUMPI 1BBE FE *ASSERT 1BBF 5B JUMPDEST 1BC0 60 PUSH1 0x00 1BC2 91 SWAP2 1BC3 82 DUP3 1BC4 52 MSTORE 1BC5 60 PUSH1 0x20 1BC7 80 DUP1 1BC8 83 DUP4 1BC9 20 SHA3 1BCA 90 SWAP1 1BCB 91 SWAP2 1BCC 01 ADD 1BCD 92 SWAP3 1BCE 90 SWAP1 1BCF 92 SWAP3 1BD0 55 SSTORE 1BD1 82 DUP3 1BD2 81 DUP2 1BD3 52 MSTORE 1BD4 60 PUSH1 0x0c 1BD6 90 SWAP1 1BD7 91 SWAP2 1BD8 52 MSTORE 1BD9 60 PUSH1 0x40 1BDB 90 SWAP1 1BDC 20 SHA3 1BDD 82 DUP3 1BDE 90 SWAP1 1BDF 55 SSTORE 1BE0 60 PUSH1 0x0b 1BE2 80 DUP1 1BE3 54 SLOAD 1BE4 90 SWAP1 1BE5 61 PUSH2 0x1bf2 1BE8 90 SWAP1 1BE9 60 PUSH1 0x00 1BEB 19 NOT 1BEC 83 DUP4 1BED 01 ADD 1BEE 61 PUSH2 0x1c85 1BF1 56 *JUMP 1BF2 5B JUMPDEST 1BF3 50 POP 1BF4 50 POP 1BF5 50 POP 1BF6 60 PUSH1 0x00 1BF8 91 SWAP2 1BF9 82 DUP3 1BFA 52 MSTORE 1BFB 50 POP 1BFC 60 PUSH1 0x0c 1BFE 60 PUSH1 0x20 1C00 52 MSTORE 1C01 60 PUSH1 0x40 1C03 81 DUP2 1C04 20 SHA3 1C05 55 SSTORE 1C06 56 *JUMP label_1C07: // Incoming jump from 0x1195 // Incoming jump from 0x1182 // Inputs[5] // { // @1C08 stack[-3] // @1C0A storage[stack[-3]] // @1C24 memory[0x00:0x20] // @1C2F stack[-2] // @1C30 stack[-1] // } 1C07 5B JUMPDEST 1C08 82 DUP3 1C09 80 DUP1 1C0A 54 SLOAD 1C0B 60 PUSH1 0x01 1C0D 81 DUP2 1C0E 60 PUSH1 0x01 1C10 16 AND 1C11 15 ISZERO 1C12 61 PUSH2 0x0100 1C15 02 MUL 1C16 03 SUB 1C17 16 AND 1C18 60 PUSH1 0x02 1C1A 90 SWAP1 1C1B 04 DIV 1C1C 90 SWAP1 1C1D 60 PUSH1 0x00 1C1F 52 MSTORE 1C20 60 PUSH1 0x20 1C22 60 PUSH1 0x00 1C24 20 SHA3 1C25 90 SWAP1 1C26 60 PUSH1 0x1f 1C28 01 ADD 1C29 60 PUSH1 0x20 1C2B 90 SWAP1 1C2C 04 DIV 1C2D 81 DUP2 1C2E 01 ADD 1C2F 92 SWAP3 1C30 82 DUP3 1C31 60 PUSH1 0x1f 1C33 10 LT 1C34 61 PUSH2 0x1c48 1C37 57 *JUMPI // Stack delta = +2 // Outputs[4] // { // @1C1F memory[0x00:0x20] = stack[-3] // @1C25 stack[0] = keccak256(memory[0x00:0x20]) // @1C2F stack[1] = stack[-2] // @1C2F stack[-2] = keccak256(memory[0x00:0x20]) + (0x1f + (0x0100 * !(0x01 & storage[stack[-3]]) - 0x01 & storage[stack[-3]]) / 0x02) / 0x20 // } // Block ends with conditional jump to 0x1c48, if 0x1f < stack[-1] label_1C38: // Incoming jump from 0x1C37, if not 0x1f < stack[-1] // Inputs[4] // { // @1C38 stack[-1] // @1C39 memory[stack[-1]:stack[-1] + 0x20] // @1C3E stack[-3] // @1C42 stack[-5] // } 1C38 80 DUP1 1C39 51 MLOAD 1C3A 60 PUSH1 0xff 1C3C 19 NOT 1C3D 16 AND 1C3E 83 DUP4 1C3F 80 DUP1 1C40 01 ADD 1C41 17 OR 1C42 85 DUP6 1C43 55 SSTORE 1C44 61 PUSH2 0x1c75 1C47 56 *JUMP // Stack delta = +0 // Outputs[1] { @1C43 storage[stack[-5]] = stack[-3] + stack[-3] | (~0xff & memory[stack[-1]:stack[-1] + 0x20]) } // Block ends with unconditional jump to 0x1c75 label_1C48: // Incoming jump from 0x1C37, if 0x1f < stack[-1] // Inputs[2] // { // @1C49 stack[-3] // @1C4F stack[-5] // } 1C48 5B JUMPDEST 1C49 82 DUP3 1C4A 80 DUP1 1C4B 01 ADD 1C4C 60 PUSH1 0x01 1C4E 01 ADD 1C4F 85 DUP6 1C50 55 SSTORE 1C51 82 DUP3 1C52 15 ISZERO 1C53 61 PUSH2 0x1c75 1C56 57 *JUMPI // Stack delta = +0 // Outputs[1] { @1C50 storage[stack[-5]] = 0x01 + stack[-3] + stack[-3] } // Block ends with conditional jump to 0x1c75, if !stack[-3] label_1C57: // Incoming jump from 0x1C56, if not !stack[-3] // Inputs[2] // { // @1C57 stack[-1] // @1C57 stack[-3] // } 1C57 91 SWAP2 1C58 82 DUP3 1C59 01 ADD 1C5A 5B JUMPDEST 1C5B 82 DUP3 1C5C 81 DUP2 1C5D 11 GT 1C5E 15 ISZERO 1C5F 61 PUSH2 0x1c75 1C62 57 *JUMPI // Stack delta = +0 // Outputs[2] // { // @1C57 stack[-3] = stack[-1] // @1C59 stack[-1] = stack[-1] + stack[-3] // } // Block ends with conditional jump to 0x1c75, if !(stack[-1] + stack[-3] > stack[-1]) label_1C63: // Incoming jump from 0x1C62, if not !(stack[-1] > stack[-3]) // Incoming jump from 0x1C62, if not !(stack[-1] + stack[-3] > stack[-1]) // Inputs[4] // { // @1C63 stack[-3] // @1C64 memory[stack[-3]:stack[-3] + 0x20] // @1C65 stack[-2] // @1C67 stack[-1] // } 1C63 82 DUP3 1C64 51 MLOAD 1C65 82 DUP3 1C66 55 SSTORE 1C67 91 SWAP2 1C68 60 PUSH1 0x20 1C6A 01 ADD 1C6B 91 SWAP2 1C6C 90 SWAP1 1C6D 60 PUSH1 0x01 1C6F 01 ADD 1C70 90 SWAP1 1C71 61 PUSH2 0x1c5a 1C74 56 *JUMP // Stack delta = +0 // Outputs[4] // { // @1C66 storage[stack[-2]] = memory[stack[-3]:stack[-3] + 0x20] // @1C6B stack[-3] = 0x20 + stack[-3] // @1C70 stack[-2] = 0x01 + stack[-2] // @1C70 stack[-1] = stack[-1] // } // Block ends with unconditional jump to 0x1c5a label_1C75: // Incoming jump from 0x1C56, if !stack[-3] // Incoming jump from 0x1C47 // Incoming jump from 0x1C62, if !(stack[-1] > stack[-3]) // Incoming jump from 0x1C62, if !(stack[-1] + stack[-3] > stack[-1]) // Inputs[2] // { // @1C7A stack[-4] // @1C7B stack[-3] // } 1C75 5B JUMPDEST 1C76 50 POP 1C77 61 PUSH2 0x1c81 1C7A 92 SWAP3 1C7B 91 SWAP2 1C7C 50 POP 1C7D 61 PUSH2 0x1ce9 1C80 56 *JUMP // Stack delta = -1 // Outputs[2] // { // @1C7A stack[-4] = 0x1c81 // @1C7B stack[-3] = stack[-4] // } // Block ends with unconditional jump to 0x1ce9 label_1C81: // Incoming call from 0x1CF7, returns to 0x06DF, if !(stack[-2] > stack[-1]) // Incoming jump from 0x1CF7, if !(stack[-2] > stack[-1]) // Inputs[2] // { // @1C83 stack[-3] // @1C83 stack[-2] // } 1C81 5B JUMPDEST 1C82 50 POP 1C83 90 SWAP1 1C84 56 *JUMP // Stack delta = -2 // Outputs[1] { @1C83 stack[-3] = stack[-2] } // Block ends with unconditional jump to stack[-3] 1C85 5B JUMPDEST 1C86 81 DUP2 1C87 54 SLOAD 1C88 81 DUP2 1C89 83 DUP4 1C8A 55 SSTORE 1C8B 81 DUP2 1C8C 81 DUP2 1C8D 11 GT 1C8E 15 ISZERO 1C8F 61 PUSH2 0x071a 1C92 57 *JUMPI 1C93 60 PUSH1 0x00 1C95 83 DUP4 1C96 81 DUP2 1C97 52 MSTORE 1C98 60 PUSH1 0x20 1C9A 90 SWAP1 1C9B 20 SHA3 1C9C 61 PUSH2 0x071a 1C9F 91 SWAP2 1CA0 81 DUP2 1CA1 01 ADD 1CA2 90 SWAP1 1CA3 83 DUP4 1CA4 01 ADD 1CA5 61 PUSH2 0x1ce9 1CA8 56 *JUMP 1CA9 5B JUMPDEST 1CAA 50 POP 1CAB 80 DUP1 1CAC 54 SLOAD 1CAD 60 PUSH1 0x01 1CAF 81 DUP2 1CB0 60 PUSH1 0x01 1CB2 16 AND 1CB3 15 ISZERO 1CB4 61 PUSH2 0x0100 1CB7 02 MUL 1CB8 03 SUB 1CB9 16 AND 1CBA 60 PUSH1 0x02 1CBC 90 SWAP1 1CBD 04 DIV 1CBE 60 PUSH1 0x00 1CC0 82 DUP3 1CC1 55 SSTORE 1CC2 80 DUP1 1CC3 60 PUSH1 0x1f 1CC5 10 LT 1CC6 61 PUSH2 0x1ccf 1CC9 57 *JUMPI 1CCA 50 POP 1CCB 61 PUSH2 0x07cb 1CCE 56 *JUMP 1CCF 5B JUMPDEST 1CD0 60 PUSH1 0x1f 1CD2 01 ADD 1CD3 60 PUSH1 0x20 1CD5 90 SWAP1 1CD6 04 DIV 1CD7 90 SWAP1 1CD8 60 PUSH1 0x00 1CDA 52 MSTORE 1CDB 60 PUSH1 0x20 1CDD 60 PUSH1 0x00 1CDF 20 SHA3 1CE0 90 SWAP1 1CE1 81 DUP2 1CE2 01 ADD 1CE3 90 SWAP1 1CE4 61 PUSH2 0x07cb 1CE7 91 SWAP2 1CE8 90 SWAP1 label_1CE9: // Incoming jump from 0x1C80 // Inputs[2] // { // @1CED stack[-2] // @1CEE stack[-1] // } 1CE9 5B JUMPDEST 1CEA 61 PUSH2 0x06df 1CED 91 SWAP2 1CEE 90 SWAP1 1CEF 5B JUMPDEST 1CF0 80 DUP1 1CF1 82 DUP3 1CF2 11 GT 1CF3 15 ISZERO 1CF4 61 PUSH2 0x1c81 1CF7 57 *JUMPI // Stack delta = +1 // Outputs[3] // { // @1CED stack[-2] = 0x06df // @1CEE stack[-1] = stack[-2] // @1CEE stack[0] = stack[-1] // } // Block ends with conditional call to 0x1c81, returns to 0x06DF, if !(stack[-2] > stack[-1]) label_1CF8: // Incoming jump from 0x1CF7, if not !(stack[-2] > stack[-1]) // Incoming jump from 0x1CF7, if not !(stack[-2] > stack[-1]) // Inputs[1] { @1CFA stack[-1] } 1CF8 60 PUSH1 0x00 1CFA 81 DUP2 1CFB 55 SSTORE 1CFC 60 PUSH1 0x01 1CFE 01 ADD 1CFF 61 PUSH2 0x1cef 1D02 56 *JUMP // Stack delta = +0 // Outputs[2] // { // @1CFB storage[stack[-1]] = 0x00 // @1CFE stack[-1] = 0x01 + stack[-1] // } // Block ends with unconditional jump to 0x1cef label_1D03: // Incoming jump from 0x1E79 // Incoming jump from 0x1F22 // Incoming jump from 0x1ED4 // Incoming jump from 0x1FC8 // Incoming jump from 0x1F98 // Incoming jump from 0x1E98 // Inputs[2] // { // @1D04 stack[-1] // @1D05 msg.data[stack[-1]:stack[-1] + 0x20] // } 1D03 5B JUMPDEST 1D04 80 DUP1 1D05 35 CALLDATALOAD 1D06 61 PUSH2 0x077a 1D09 81 DUP2 1D0A 61 PUSH2 0x2db9 1D0D 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @1D05 stack[0] = msg.data[stack[-1]:stack[-1] + 0x20] // @1D06 stack[1] = 0x077a // @1D09 stack[2] = msg.data[stack[-1]:stack[-1] + 0x20] // } // Block ends with unconditional jump to 0x2db9 1D0E 5B JUMPDEST 1D0F 60 PUSH1 0x00 1D11 82 DUP3 1D12 60 PUSH1 0x1f 1D14 83 DUP4 1D15 01 ADD 1D16 12 SLT 1D17 61 PUSH2 0x1d1f 1D1A 57 *JUMPI 1D1B 60 PUSH1 0x00 1D1D 80 DUP1 1D1E FD *REVERT 1D1F 5B JUMPDEST 1D20 81 DUP2 1D21 35 CALLDATALOAD 1D22 61 PUSH2 0x1d32 1D25 61 PUSH2 0x1d2d 1D28 82 DUP3 1D29 61 PUSH2 0x2cc5 1D2C 56 *JUMP label_1D2D: // Incoming return from call to 0x2CE6 at 0x1DD9 1D2D 5B JUMPDEST 1D2E 61 PUSH2 0x2c9e 1D31 56 *JUMP // Stack delta = +0 // Block ends with unconditional jump to 0x2c9e 1D32 5B JUMPDEST 1D33 91 SWAP2 1D34 50 POP 1D35 81 DUP2 1D36 81 DUP2 1D37 83 DUP4 1D38 52 MSTORE 1D39 60 PUSH1 0x20 1D3B 84 DUP5 1D3C 01 ADD 1D3D 93 SWAP4 1D3E 50 POP 1D3F 60 PUSH1 0x20 1D41 81 DUP2 1D42 01 ADD 1D43 90 SWAP1 1D44 50 POP 1D45 83 DUP4 1D46 85 DUP6 1D47 60 PUSH1 0x40 1D49 84 DUP5 1D4A 02 MUL 1D4B 82 DUP3 1D4C 01 ADD 1D4D 11 GT 1D4E 15 ISZERO 1D4F 61 PUSH2 0x1d57 1D52 57 *JUMPI 1D53 60 PUSH1 0x00 1D55 80 DUP1 1D56 FD *REVERT 1D57 5B JUMPDEST 1D58 60 PUSH1 0x00 1D5A 5B JUMPDEST 1D5B 83 DUP4 1D5C 81 DUP2 1D5D 10 LT 1D5E 15 ISZERO 1D5F 61 PUSH2 0x1d85 1D62 57 *JUMPI 1D63 81 DUP2 1D64 61 PUSH2 0x1d6d 1D67 88 DUP9 1D68 82 DUP3 1D69 61 PUSH2 0x1e0a 1D6C 56 *JUMP 1D6D 5B JUMPDEST 1D6E 84 DUP5 1D6F 52 MSTORE 1D70 50 POP 1D71 60 PUSH1 0x20 1D73 90 SWAP1 1D74 92 SWAP3 1D75 01 ADD 1D76 91 SWAP2 1D77 60 PUSH1 0x40 1D79 91 SWAP2 1D7A 90 SWAP1 1D7B 91 SWAP2 1D7C 01 ADD 1D7D 90 SWAP1 1D7E 60 PUSH1 0x01 1D80 01 ADD 1D81 61 PUSH2 0x1d5a 1D84 56 *JUMP 1D85 5B JUMPDEST 1D86 50 POP 1D87 50 POP 1D88 50 POP 1D89 50 POP 1D8A 92 SWAP3 1D8B 91 SWAP2 1D8C 50 POP 1D8D 50 POP 1D8E 56 *JUMP 1D8F 5B JUMPDEST 1D90 80 DUP1 1D91 35 CALLDATALOAD 1D92 61 PUSH2 0x077a 1D95 81 DUP2 1D96 61 PUSH2 0x2dcd 1D99 56 *JUMP label_1D9A: // Incoming jump from 0x2087 // Incoming jump from 0x20AC // Incoming jump from 0x2068 // Inputs[2] // { // @1D9B stack[-1] // @1D9C msg.data[stack[-1]:stack[-1] + 0x20] // } 1D9A 5B JUMPDEST 1D9B 80 DUP1 1D9C 35 CALLDATALOAD 1D9D 61 PUSH2 0x077a 1DA0 81 DUP2 1DA1 61 PUSH2 0x2dd6 1DA4 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @1D9C stack[0] = msg.data[stack[-1]:stack[-1] + 0x20] // @1D9D stack[1] = 0x077a // @1DA0 stack[2] = msg.data[stack[-1]:stack[-1] + 0x20] // } // Block ends with call to 0x2dd6, returns to 0x077A label_1DA5: // Incoming jump from 0x1FF7 // Inputs[2] // { // @1DA6 stack[-1] // @1DA7 msg.data[stack[-1]:stack[-1] + 0x20] // } 1DA5 5B JUMPDEST 1DA6 80 DUP1 1DA7 35 CALLDATALOAD 1DA8 61 PUSH2 0x077a 1DAB 81 DUP2 1DAC 61 PUSH2 0x2ddf 1DAF 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @1DA7 stack[0] = msg.data[stack[-1]:stack[-1] + 0x20] // @1DA8 stack[1] = 0x077a // @1DAB stack[2] = msg.data[stack[-1]:stack[-1] + 0x20] // } // Block ends with call to 0x2ddf, returns to 0x077A 1DB0 5B JUMPDEST 1DB1 80 DUP1 1DB2 51 MLOAD 1DB3 61 PUSH2 0x077a 1DB6 81 DUP2 1DB7 61 PUSH2 0x2ddf 1DBA 56 *JUMP label_1DBB: // Incoming call from 0x204A, returns to 0x0EDB // Inputs[2] // { // @1DBE stack[-2] // @1DC1 stack[-1] // } 1DBB 5B JUMPDEST 1DBC 60 PUSH1 0x00 1DBE 82 DUP3 1DBF 60 PUSH1 0x1f 1DC1 83 DUP4 1DC2 01 ADD 1DC3 12 SLT 1DC4 61 PUSH2 0x1dcc 1DC7 57 *JUMPI // Stack delta = +1 // Outputs[1] { @1DBC stack[0] = 0x00 } // Block ends with conditional jump to 0x1dcc, if stack[-1] + 0x1f i< stack[-2] label_1DC8: // Incoming jump from 0x1DC7, if not stack[-1] + 0x1f i< stack[-2] // Inputs[1] { @1DCB memory[0x00:0x00] } 1DC8 60 PUSH1 0x00 1DCA 80 DUP1 1DCB FD *REVERT // Stack delta = +0 // Outputs[1] { @1DCB revert(memory[0x00:0x00]); } // Block terminates label_1DCC: // Incoming jump from 0x1DC7, if stack[-1] + 0x1f i< stack[-2] // Inputs[2] // { // @1DCD stack[-2] // @1DCE msg.data[stack[-2]:stack[-2] + 0x20] // } 1DCC 5B JUMPDEST 1DCD 81 DUP2 1DCE 35 CALLDATALOAD 1DCF 61 PUSH2 0x1dda 1DD2 61 PUSH2 0x1d2d 1DD5 82 DUP3 1DD6 61 PUSH2 0x2ce6 1DD9 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @1DCE stack[0] = msg.data[stack[-2]:stack[-2] + 0x20] // @1DCF stack[1] = 0x1dda // @1DD2 stack[2] = 0x1d2d // @1DD5 stack[3] = msg.data[stack[-2]:stack[-2] + 0x20] // } // Block ends with call to 0x2ce6, returns to 0x1D2D label_1DDA: // Incoming return from call to 0x1D2D at 0x1DD9 // Inputs[5] // { // @1DDB stack[-3] // @1DDB stack[-1] // @1DDD stack[-2] // @1DE2 stack[-4] // @1DE8 stack[-5] // } 1DDA 5B JUMPDEST 1DDB 91 SWAP2 1DDC 50 POP 1DDD 80 DUP1 1DDE 82 DUP3 1DDF 52 MSTORE 1DE0 60 PUSH1 0x20 1DE2 83 DUP4 1DE3 01 ADD 1DE4 60 PUSH1 0x20 1DE6 83 DUP4 1DE7 01 ADD 1DE8 85 DUP6 1DE9 83 DUP4 1DEA 83 DUP4 1DEB 01 ADD 1DEC 11 GT 1DED 15 ISZERO 1DEE 61 PUSH2 0x1df6 1DF1 57 *JUMPI // Stack delta = +1 // Outputs[4] // { // @1DDB stack[-3] = stack[-1] // @1DDF memory[stack[-1]:stack[-1] + 0x20] = stack[-2] // @1DE3 stack[-1] = stack[-4] + 0x20 // @1DE7 stack[0] = stack[-1] + 0x20 // } // Block ends with conditional jump to 0x1df6, if !(stack[-4] + 0x20 + stack[-2] > stack[-5]) label_1DF2: // Incoming jump from 0x1DF1, if not !(stack[-4] + 0x20 + stack[-2] > stack[-5]) // Inputs[1] { @1DF5 memory[0x00:0x00] } 1DF2 60 PUSH1 0x00 1DF4 80 DUP1 1DF5 FD *REVERT // Stack delta = +0 // Outputs[1] { @1DF5 revert(memory[0x00:0x00]); } // Block terminates label_1DF6: // Incoming jump from 0x1DF1, if !(stack[-4] + 0x20 + stack[-2] > stack[-5]) // Inputs[3] // { // @1DFA stack[-3] // @1DFB stack[-1] // @1DFC stack[-2] // } 1DF6 5B JUMPDEST 1DF7 61 PUSH2 0x1e01 1DFA 83 DUP4 1DFB 82 DUP3 1DFC 84 DUP5 1DFD 61 PUSH2 0x2d60 1E00 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @1DF7 stack[0] = 0x1e01 // @1DFA stack[1] = stack[-3] // @1DFB stack[2] = stack[-1] // @1DFC stack[3] = stack[-2] // } // Block ends with call to 0x2d60, returns to 0x1E01 label_1E01: // Incoming return from call to 0x2D60 at 0x1E00 // Inputs[3] // { // @1E05 stack[-7] // @1E05 stack[-4] // @1E06 stack[-6] // } 1E01 5B JUMPDEST 1E02 50 POP 1E03 50 POP 1E04 50 POP 1E05 92 SWAP3 1E06 91 SWAP2 1E07 50 POP 1E08 50 POP 1E09 56 *JUMP // Stack delta = -6 // Outputs[1] { @1E05 stack[-7] = stack[-4] } // Block ends with unconditional jump to stack[-7] 1E0A 5B JUMPDEST 1E0B 60 PUSH1 0x00 1E0D 60 PUSH1 0x40 1E0F 82 DUP3 1E10 84 DUP5 1E11 03 SUB 1E12 12 SLT 1E13 15 ISZERO 1E14 61 PUSH2 0x1e1c 1E17 57 *JUMPI 1E18 60 PUSH1 0x00 1E1A 80 DUP1 1E1B FD *REVERT 1E1C 5B JUMPDEST 1E1D 61 PUSH2 0x1e26 1E20 60 PUSH1 0x40 1E22 61 PUSH2 0x2c9e 1E25 56 *JUMP 1E26 5B JUMPDEST 1E27 90 SWAP1 1E28 50 POP 1E29 60 PUSH1 0x00 1E2B 61 PUSH2 0x1e34 1E2E 84 DUP5 1E2F 84 DUP5 1E30 61 PUSH2 0x1d03 1E33 56 *JUMP 1E34 5B JUMPDEST 1E35 82 DUP3 1E36 52 MSTORE 1E37 50 POP 1E38 60 PUSH1 0x20 1E3A 61 PUSH2 0x1e45 1E3D 84 DUP5 1E3E 84 DUP5 1E3F 83 DUP4 1E40 01 ADD 1E41 61 PUSH2 0x1d9a 1E44 56 *JUMP 1E45 5B JUMPDEST 1E46 60 PUSH1 0x20 1E48 83 DUP4 1E49 01 ADD 1E4A 52 MSTORE 1E4B 50 POP 1E4C 92 SWAP3 1E4D 91 SWAP2 1E4E 50 POP 1E4F 50 POP 1E50 56 *JUMP 1E51 5B JUMPDEST 1E52 80 DUP1 1E53 35 CALLDATALOAD 1E54 61 PUSH2 0x077a 1E57 81 DUP2 1E58 61 PUSH2 0x2de8 1E5B 56 *JUMP label_1E5C: // Incoming jump from 0x032F // Incoming jump from 0x0404 // Inputs[2] // { // @1E61 stack[-1] // @1E62 stack[-2] // } 1E5C 5B JUMPDEST 1E5D 60 PUSH1 0x00 1E5F 60 PUSH1 0x20 1E61 82 DUP3 1E62 84 DUP5 1E63 03 SUB 1E64 12 SLT 1E65 15 ISZERO 1E66 61 PUSH2 0x1e6e 1E69 57 *JUMPI // Stack delta = +1 // Outputs[1] { @1E5D stack[0] = 0x00 } // Block ends with conditional jump to 0x1e6e, if !(stack[-2] - stack[-1] i< 0x20) label_1E6A: // Incoming jump from 0x1E69, if not !(stack[-2] - stack[-1] i< 0x20) // Inputs[1] { @1E6D memory[0x00:0x00] } 1E6A 60 PUSH1 0x00 1E6C 80 DUP1 1E6D FD *REVERT // Stack delta = +0 // Outputs[1] { @1E6D revert(memory[0x00:0x00]); } // Block terminates label_1E6E: // Incoming jump from 0x1E69, if !(stack[-2] - stack[-1] i< 0x20) // Inputs[2] // { // @1E74 stack[-3] // @1E75 stack[-2] // } 1E6E 5B JUMPDEST 1E6F 60 PUSH1 0x00 1E71 61 PUSH2 0x0edb 1E74 84 DUP5 1E75 84 DUP5 1E76 61 PUSH2 0x1d03 1E79 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @1E6F stack[0] = 0x00 // @1E71 stack[1] = 0x0edb // @1E74 stack[2] = stack[-3] // @1E75 stack[3] = stack[-2] // } // Block ends with unconditional jump to 0x1d03 label_1E7A: // Incoming jump from 0x03F1 // Inputs[2] // { // @1E80 stack[-1] // @1E81 stack[-2] // } 1E7A 5B JUMPDEST 1E7B 60 PUSH1 0x00 1E7D 80 DUP1 1E7E 60 PUSH1 0x40 1E80 83 DUP4 1E81 85 DUP6 1E82 03 SUB 1E83 12 SLT 1E84 15 ISZERO 1E85 61 PUSH2 0x1e8d 1E88 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @1E7B stack[0] = 0x00 // @1E7D stack[1] = 0x00 // } // Block ends with conditional jump to 0x1e8d, if !(stack[-2] - stack[-1] i< 0x40) label_1E89: // Incoming jump from 0x1E88, if not !(stack[-2] - stack[-1] i< 0x40) // Inputs[1] { @1E8C memory[0x00:0x00] } 1E89 60 PUSH1 0x00 1E8B 80 DUP1 1E8C FD *REVERT // Stack delta = +0 // Outputs[1] { @1E8C revert(memory[0x00:0x00]); } // Block terminates label_1E8D: // Incoming jump from 0x1E88, if !(stack[-2] - stack[-1] i< 0x40) // Inputs[2] // { // @1E93 stack[-4] // @1E94 stack[-3] // } 1E8D 5B JUMPDEST 1E8E 60 PUSH1 0x00 1E90 61 PUSH2 0x1e99 1E93 85 DUP6 1E94 85 DUP6 1E95 61 PUSH2 0x1d03 1E98 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @1E8E stack[0] = 0x00 // @1E90 stack[1] = 0x1e99 // @1E93 stack[2] = stack[-4] // @1E94 stack[3] = stack[-3] // } // Block ends with unconditional jump to 0x1d03 1E99 5B JUMPDEST 1E9A 92 SWAP3 1E9B 50 POP 1E9C 50 POP 1E9D 60 PUSH1 0x20 1E9F 61 PUSH2 0x1eaa 1EA2 85 DUP6 1EA3 82 DUP3 1EA4 86 DUP7 1EA5 01 ADD 1EA6 61 PUSH2 0x1d03 1EA9 56 *JUMP 1EAA 5B JUMPDEST 1EAB 91 SWAP2 1EAC 50 POP 1EAD 50 POP 1EAE 92 SWAP3 1EAF 50 POP 1EB0 92 SWAP3 1EB1 90 SWAP1 1EB2 50 POP 1EB3 56 *JUMP label_1EB4: // Incoming jump from 0x02AF // Incoming jump from 0x0289 // Inputs[2] // { // @1EBC stack[-1] // @1EBD stack[-2] // } 1EB4 5B JUMPDEST 1EB5 60 PUSH1 0x00 1EB7 80 DUP1 1EB8 60 PUSH1 0x00 1EBA 60 PUSH1 0x60 1EBC 84 DUP5 1EBD 86 DUP7 1EBE 03 SUB 1EBF 12 SLT 1EC0 15 ISZERO 1EC1 61 PUSH2 0x1ec9 1EC4 57 *JUMPI // Stack delta = +3 // Outputs[3] // { // @1EB5 stack[0] = 0x00 // @1EB7 stack[1] = 0x00 // @1EB8 stack[2] = 0x00 // } // Block ends with conditional jump to 0x1ec9, if !(stack[-2] - stack[-1] i< 0x60) label_1EC5: // Incoming jump from 0x1EC4, if not !(stack[-2] - stack[-1] i< 0x60) // Inputs[1] { @1EC8 memory[0x00:0x00] } 1EC5 60 PUSH1 0x00 1EC7 80 DUP1 1EC8 FD *REVERT // Stack delta = +0 // Outputs[1] { @1EC8 revert(memory[0x00:0x00]); } // Block terminates label_1EC9: // Incoming jump from 0x1EC4, if !(stack[-2] - stack[-1] i< 0x60) // Inputs[2] // { // @1ECF stack[-5] // @1ED0 stack[-4] // } 1EC9 5B JUMPDEST 1ECA 60 PUSH1 0x00 1ECC 61 PUSH2 0x1ed5 1ECF 86 DUP7 1ED0 86 DUP7 1ED1 61 PUSH2 0x1d03 1ED4 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @1ECA stack[0] = 0x00 // @1ECC stack[1] = 0x1ed5 // @1ECF stack[2] = stack[-5] // @1ED0 stack[3] = stack[-4] // } // Block ends with unconditional jump to 0x1d03 1ED5 5B JUMPDEST 1ED6 93 SWAP4 1ED7 50 POP 1ED8 50 POP 1ED9 60 PUSH1 0x20 1EDB 61 PUSH2 0x1ee6 1EDE 86 DUP7 1EDF 82 DUP3 1EE0 87 DUP8 1EE1 01 ADD 1EE2 61 PUSH2 0x1d03 1EE5 56 *JUMP 1EE6 5B JUMPDEST 1EE7 92 SWAP3 1EE8 50 POP 1EE9 50 POP 1EEA 60 PUSH1 0x40 1EEC 61 PUSH2 0x1ef7 1EEF 86 DUP7 1EF0 82 DUP3 1EF1 87 DUP8 1EF2 01 ADD 1EF3 61 PUSH2 0x1d9a 1EF6 56 *JUMP 1EF7 5B JUMPDEST 1EF8 91 SWAP2 1EF9 50 POP 1EFA 50 POP 1EFB 92 SWAP3 1EFC 50 POP 1EFD 92 SWAP3 1EFE 50 POP 1EFF 92 SWAP3 1F00 56 *JUMP label_1F01: // Incoming jump from 0x039B // Inputs[2] // { // @1F0A stack[-1] // @1F0B stack[-2] // } 1F01 5B JUMPDEST 1F02 60 PUSH1 0x00 1F04 80 DUP1 1F05 60 PUSH1 0x00 1F07 80 DUP1 1F08 60 PUSH1 0x80 1F0A 85 DUP6 1F0B 87 DUP8 1F0C 03 SUB 1F0D 12 SLT 1F0E 15 ISZERO 1F0F 61 PUSH2 0x1f17 1F12 57 *JUMPI // Stack delta = +4 // Outputs[4] // { // @1F02 stack[0] = 0x00 // @1F04 stack[1] = 0x00 // @1F05 stack[2] = 0x00 // @1F07 stack[3] = 0x00 // } // Block ends with conditional jump to 0x1f17, if !(stack[-2] - stack[-1] i< 0x80) label_1F13: // Incoming jump from 0x1F12, if not !(stack[-2] - stack[-1] i< 0x80) // Inputs[1] { @1F16 memory[0x00:0x00] } 1F13 60 PUSH1 0x00 1F15 80 DUP1 1F16 FD *REVERT // Stack delta = +0 // Outputs[1] { @1F16 revert(memory[0x00:0x00]); } // Block terminates label_1F17: // Incoming jump from 0x1F12, if !(stack[-2] - stack[-1] i< 0x80) // Inputs[2] // { // @1F1D stack[-6] // @1F1E stack[-5] // } 1F17 5B JUMPDEST 1F18 60 PUSH1 0x00 1F1A 61 PUSH2 0x1f23 1F1D 87 DUP8 1F1E 87 DUP8 1F1F 61 PUSH2 0x1d03 1F22 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @1F18 stack[0] = 0x00 // @1F1A stack[1] = 0x1f23 // @1F1D stack[2] = stack[-6] // @1F1E stack[3] = stack[-5] // } // Block ends with unconditional jump to 0x1d03 1F23 5B JUMPDEST 1F24 94 SWAP5 1F25 50 POP 1F26 50 POP 1F27 60 PUSH1 0x20 1F29 61 PUSH2 0x1f34 1F2C 87 DUP8 1F2D 82 DUP3 1F2E 88 DUP9 1F2F 01 ADD 1F30 61 PUSH2 0x1d03 1F33 56 *JUMP 1F34 5B JUMPDEST 1F35 93 SWAP4 1F36 50 POP 1F37 50 POP 1F38 60 PUSH1 0x40 1F3A 61 PUSH2 0x1f45 1F3D 87 DUP8 1F3E 82 DUP3 1F3F 88 DUP9 1F40 01 ADD 1F41 61 PUSH2 0x1d9a 1F44 56 *JUMP 1F45 5B JUMPDEST 1F46 92 SWAP3 1F47 50 POP 1F48 50 POP 1F49 60 PUSH1 0x60 1F4B 85 DUP6 1F4C 01 ADD 1F4D 35 CALLDATALOAD 1F4E 67 PUSH8 0xffffffffffffffff 1F57 81 DUP2 1F58 11 GT 1F59 15 ISZERO 1F5A 61 PUSH2 0x1f62 1F5D 57 *JUMPI 1F5E 60 PUSH1 0x00 1F60 80 DUP1 1F61 FD *REVERT 1F62 5B JUMPDEST 1F63 61 PUSH2 0x1f6e 1F66 87 DUP8 1F67 82 DUP3 1F68 88 DUP9 1F69 01 ADD 1F6A 61 PUSH2 0x1dbb 1F6D 56 *JUMP 1F6E 5B JUMPDEST 1F6F 91 SWAP2 1F70 50 POP 1F71 50 POP 1F72 92 SWAP3 1F73 95 SWAP6 1F74 91 SWAP2 1F75 94 SWAP5 1F76 50 POP 1F77 92 SWAP3 1F78 50 POP 1F79 56 *JUMP label_1F7A: // Incoming jump from 0x0388 // Inputs[2] // { // @1F80 stack[-1] // @1F81 stack[-2] // } 1F7A 5B JUMPDEST 1F7B 60 PUSH1 0x00 1F7D 80 DUP1 1F7E 60 PUSH1 0x40 1F80 83 DUP4 1F81 85 DUP6 1F82 03 SUB 1F83 12 SLT 1F84 15 ISZERO 1F85 61 PUSH2 0x1f8d 1F88 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @1F7B stack[0] = 0x00 // @1F7D stack[1] = 0x00 // } // Block ends with conditional jump to 0x1f8d, if !(stack[-2] - stack[-1] i< 0x40) label_1F89: // Incoming jump from 0x1F88, if not !(stack[-2] - stack[-1] i< 0x40) // Inputs[1] { @1F8C memory[0x00:0x00] } 1F89 60 PUSH1 0x00 1F8B 80 DUP1 1F8C FD *REVERT // Stack delta = +0 // Outputs[1] { @1F8C revert(memory[0x00:0x00]); } // Block terminates label_1F8D: // Incoming jump from 0x1F88, if !(stack[-2] - stack[-1] i< 0x40) // Inputs[2] // { // @1F93 stack[-4] // @1F94 stack[-3] // } 1F8D 5B JUMPDEST 1F8E 60 PUSH1 0x00 1F90 61 PUSH2 0x1f99 1F93 85 DUP6 1F94 85 DUP6 1F95 61 PUSH2 0x1d03 1F98 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @1F8E stack[0] = 0x00 // @1F90 stack[1] = 0x1f99 // @1F93 stack[2] = stack[-4] // @1F94 stack[3] = stack[-3] // } // Block ends with unconditional jump to 0x1d03 1F99 5B JUMPDEST 1F9A 92 SWAP3 1F9B 50 POP 1F9C 50 POP 1F9D 60 PUSH1 0x20 1F9F 61 PUSH2 0x1eaa 1FA2 85 DUP6 1FA3 82 DUP3 1FA4 86 DUP7 1FA5 01 ADD 1FA6 61 PUSH2 0x1d8f 1FA9 56 *JUMP label_1FAA: // Incoming jump from 0x023F // Incoming jump from 0x029C // Inputs[2] // { // @1FB0 stack[-1] // @1FB1 stack[-2] // } 1FAA 5B JUMPDEST 1FAB 60 PUSH1 0x00 1FAD 80 DUP1 1FAE 60 PUSH1 0x40 1FB0 83 DUP4 1FB1 85 DUP6 1FB2 03 SUB 1FB3 12 SLT 1FB4 15 ISZERO 1FB5 61 PUSH2 0x1fbd 1FB8 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @1FAB stack[0] = 0x00 // @1FAD stack[1] = 0x00 // } // Block ends with conditional jump to 0x1fbd, if !(stack[-2] - stack[-1] i< 0x40) label_1FB9: // Incoming jump from 0x1FB8, if not !(stack[-2] - stack[-1] i< 0x40) // Inputs[1] { @1FBC memory[0x00:0x00] } 1FB9 60 PUSH1 0x00 1FBB 80 DUP1 1FBC FD *REVERT // Stack delta = +0 // Outputs[1] { @1FBC revert(memory[0x00:0x00]); } // Block terminates label_1FBD: // Incoming jump from 0x1FB8, if !(stack[-2] - stack[-1] i< 0x40) // Inputs[2] // { // @1FC3 stack[-4] // @1FC4 stack[-3] // } 1FBD 5B JUMPDEST 1FBE 60 PUSH1 0x00 1FC0 61 PUSH2 0x1fc9 1FC3 85 DUP6 1FC4 85 DUP6 1FC5 61 PUSH2 0x1d03 1FC8 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @1FBE stack[0] = 0x00 // @1FC0 stack[1] = 0x1fc9 // @1FC3 stack[2] = stack[-4] // @1FC4 stack[3] = stack[-3] // } // Block ends with unconditional jump to 0x1d03 1FC9 5B JUMPDEST 1FCA 92 SWAP3 1FCB 50 POP 1FCC 50 POP 1FCD 60 PUSH1 0x20 1FCF 61 PUSH2 0x1eaa 1FD2 85 DUP6 1FD3 82 DUP3 1FD4 86 DUP7 1FD5 01 ADD 1FD6 61 PUSH2 0x1d9a 1FD9 56 *JUMP label_1FDA: // Incoming jump from 0x01E1 // Inputs[2] // { // @1FDF stack[-1] // @1FE0 stack[-2] // } 1FDA 5B JUMPDEST 1FDB 60 PUSH1 0x00 1FDD 60 PUSH1 0x20 1FDF 82 DUP3 1FE0 84 DUP5 1FE1 03 SUB 1FE2 12 SLT 1FE3 15 ISZERO 1FE4 61 PUSH2 0x1fec 1FE7 57 *JUMPI // Stack delta = +1 // Outputs[1] { @1FDB stack[0] = 0x00 } // Block ends with conditional jump to 0x1fec, if !(stack[-2] - stack[-1] i< 0x20) label_1FE8: // Incoming jump from 0x1FE7, if not !(stack[-2] - stack[-1] i< 0x20) // Inputs[1] { @1FEB memory[0x00:0x00] } 1FE8 60 PUSH1 0x00 1FEA 80 DUP1 1FEB FD *REVERT // Stack delta = +0 // Outputs[1] { @1FEB revert(memory[0x00:0x00]); } // Block terminates label_1FEC: // Incoming jump from 0x1FE7, if !(stack[-2] - stack[-1] i< 0x20) // Inputs[2] // { // @1FF2 stack[-3] // @1FF3 stack[-2] // } 1FEC 5B JUMPDEST 1FED 60 PUSH1 0x00 1FEF 61 PUSH2 0x0edb 1FF2 84 DUP5 1FF3 84 DUP5 1FF4 61 PUSH2 0x1da5 1FF7 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @1FED stack[0] = 0x00 // @1FEF stack[1] = 0x0edb // @1FF2 stack[2] = stack[-3] // @1FF3 stack[3] = stack[-2] // } // Block ends with unconditional jump to 0x1da5 1FF8 5B JUMPDEST 1FF9 60 PUSH1 0x00 1FFB 60 PUSH1 0x20 1FFD 82 DUP3 1FFE 84 DUP5 1FFF 03 SUB 2000 12 SLT 2001 15 ISZERO 2002 61 PUSH2 0x200a 2005 57 *JUMPI 2006 60 PUSH1 0x00 2008 80 DUP1 2009 FD *REVERT 200A 5B JUMPDEST 200B 60 PUSH1 0x00 200D 61 PUSH2 0x0edb 2010 84 DUP5 2011 84 DUP5 2012 61 PUSH2 0x1db0 2015 56 *JUMP label_2016: // Incoming call from 0x0375, returns to 0x0376 // Incoming call from 0x035A, returns to 0x035B // Inputs[2] // { // @201B stack[-1] // @201C stack[-2] // } 2016 5B JUMPDEST 2017 60 PUSH1 0x00 2019 60 PUSH1 0x20 201B 82 DUP3 201C 84 DUP5 201D 03 SUB 201E 12 SLT 201F 15 ISZERO 2020 61 PUSH2 0x2028 2023 57 *JUMPI // Stack delta = +1 // Outputs[1] { @2017 stack[0] = 0x00 } // Block ends with conditional jump to 0x2028, if !(stack[-2] - stack[-1] i< 0x20) label_2024: // Incoming jump from 0x2023, if not !(stack[-2] - stack[-1] i< 0x20) // Inputs[1] { @2027 memory[0x00:0x00] } 2024 60 PUSH1 0x00 2026 80 DUP1 2027 FD *REVERT // Stack delta = +0 // Outputs[1] { @2027 revert(memory[0x00:0x00]); } // Block terminates label_2028: // Incoming jump from 0x2023, if !(stack[-2] - stack[-1] i< 0x20) // Inputs[2] // { // @2029 stack[-2] // @202A msg.data[stack[-2]:stack[-2] + 0x20] // } 2028 5B JUMPDEST 2029 81 DUP2 202A 35 CALLDATALOAD 202B 67 PUSH8 0xffffffffffffffff 2034 81 DUP2 2035 11 GT 2036 15 ISZERO 2037 61 PUSH2 0x203f 203A 57 *JUMPI // Stack delta = +1 // Outputs[1] { @202A stack[0] = msg.data[stack[-2]:stack[-2] + 0x20] } // Block ends with conditional jump to 0x203f, if !(msg.data[stack[-2]:stack[-2] + 0x20] > 0xffffffffffffffff) label_203B: // Incoming jump from 0x203A, if not !(msg.data[stack[-2]:stack[-2] + 0x20] > 0xffffffffffffffff) // Inputs[1] { @203E memory[0x00:0x00] } 203B 60 PUSH1 0x00 203D 80 DUP1 203E FD *REVERT // Stack delta = +0 // Outputs[1] { @203E revert(memory[0x00:0x00]); } // Block terminates label_203F: // Incoming jump from 0x203A, if !(msg.data[stack[-2]:stack[-2] + 0x20] > 0xffffffffffffffff) // Inputs[3] // { // @2043 stack[-4] // @2044 stack[-1] // @2045 stack[-3] // } 203F 5B JUMPDEST 2040 61 PUSH2 0x0edb 2043 84 DUP5 2044 82 DUP3 2045 85 DUP6 2046 01 ADD 2047 61 PUSH2 0x1dbb 204A 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @2040 stack[0] = 0x0edb // @2043 stack[1] = stack[-4] // @2046 stack[2] = stack[-3] + stack[-1] // } // Block ends with call to 0x1dbb, returns to 0x0EDB label_204B: // Incoming jump from 0x0309 // Incoming jump from 0x02D5 // Incoming jump from 0x03D6 // Incoming jump from 0x03AE // Incoming jump from 0x021F // Incoming jump from 0x02C2 // Incoming jump from 0x0254 // Inputs[2] // { // @2050 stack[-1] // @2051 stack[-2] // } 204B 5B JUMPDEST 204C 60 PUSH1 0x00 204E 60 PUSH1 0x20 2050 82 DUP3 2051 84 DUP5 2052 03 SUB 2053 12 SLT 2054 15 ISZERO 2055 61 PUSH2 0x205d 2058 57 *JUMPI // Stack delta = +1 // Outputs[1] { @204C stack[0] = 0x00 } // Block ends with conditional jump to 0x205d, if !(stack[-2] - stack[-1] i< 0x20) label_2059: // Incoming jump from 0x2058, if not !(stack[-2] - stack[-1] i< 0x20) // Inputs[1] { @205C memory[0x00:0x00] } 2059 60 PUSH1 0x00 205B 80 DUP1 205C FD *REVERT // Stack delta = +0 // Outputs[1] { @205C revert(memory[0x00:0x00]); } // Block terminates label_205D: // Incoming jump from 0x2058, if !(stack[-2] - stack[-1] i< 0x20) // Inputs[2] // { // @2063 stack[-3] // @2064 stack[-2] // } 205D 5B JUMPDEST 205E 60 PUSH1 0x00 2060 61 PUSH2 0x0edb 2063 84 DUP5 2064 84 DUP5 2065 61 PUSH2 0x1d9a 2068 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @205E stack[0] = 0x00 // @2060 stack[1] = 0x0edb // @2063 stack[2] = stack[-3] // @2064 stack[3] = stack[-2] // } // Block ends with unconditional jump to 0x1d9a label_2069: // Incoming jump from 0x02E8 // Inputs[2] // { // @206F stack[-1] // @2070 stack[-2] // } 2069 5B JUMPDEST 206A 60 PUSH1 0x00 206C 80 DUP1 206D 60 PUSH1 0x40 206F 83 DUP4 2070 85 DUP6 2071 03 SUB 2072 12 SLT 2073 15 ISZERO 2074 61 PUSH2 0x207c 2077 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @206A stack[0] = 0x00 // @206C stack[1] = 0x00 // } // Block ends with conditional jump to 0x207c, if !(stack[-2] - stack[-1] i< 0x40) label_2078: // Incoming jump from 0x2077, if not !(stack[-2] - stack[-1] i< 0x40) // Inputs[1] { @207B memory[0x00:0x00] } 2078 60 PUSH1 0x00 207A 80 DUP1 207B FD *REVERT // Stack delta = +0 // Outputs[1] { @207B revert(memory[0x00:0x00]); } // Block terminates label_207C: // Incoming jump from 0x2077, if !(stack[-2] - stack[-1] i< 0x40) // Inputs[2] // { // @2082 stack[-4] // @2083 stack[-3] // } 207C 5B JUMPDEST 207D 60 PUSH1 0x00 207F 61 PUSH2 0x1fc9 2082 85 DUP6 2083 85 DUP6 2084 61 PUSH2 0x1d9a 2087 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @207D stack[0] = 0x00 // @207F stack[1] = 0x1fc9 // @2082 stack[2] = stack[-4] // @2083 stack[3] = stack[-3] // } // Block ends with unconditional jump to 0x1d9a label_2088: // Incoming jump from 0x031C // Inputs[2] // { // @2094 stack[-1] // @2095 stack[-2] // } 2088 5B JUMPDEST 2089 60 PUSH1 0x00 208B 80 DUP1 208C 60 PUSH1 0x00 208E 80 DUP1 208F 60 PUSH1 0x00 2091 80 DUP1 2092 60 PUSH1 0xc0 2094 87 DUP8 2095 89 DUP10 2096 03 SUB 2097 12 SLT 2098 15 ISZERO 2099 61 PUSH2 0x20a1 209C 57 *JUMPI // Stack delta = +6 // Outputs[6] // { // @2089 stack[0] = 0x00 // @208B stack[1] = 0x00 // @208C stack[2] = 0x00 // @208E stack[3] = 0x00 // @208F stack[4] = 0x00 // @2091 stack[5] = 0x00 // } // Block ends with conditional jump to 0x20a1, if !(stack[-2] - stack[-1] i< 0xc0) label_209D: // Incoming jump from 0x209C, if not !(stack[-2] - stack[-1] i< 0xc0) // Inputs[1] { @20A0 memory[0x00:0x00] } 209D 60 PUSH1 0x00 209F 80 DUP1 20A0 FD *REVERT // Stack delta = +0 // Outputs[1] { @20A0 revert(memory[0x00:0x00]); } // Block terminates label_20A1: // Incoming jump from 0x209C, if !(stack[-2] - stack[-1] i< 0xc0) // Inputs[2] // { // @20A7 stack[-8] // @20A8 stack[-7] // } 20A1 5B JUMPDEST 20A2 60 PUSH1 0x00 20A4 61 PUSH2 0x20ad 20A7 89 DUP10 20A8 89 DUP10 20A9 61 PUSH2 0x1d9a 20AC 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @20A2 stack[0] = 0x00 // @20A4 stack[1] = 0x20ad // @20A7 stack[2] = stack[-8] // @20A8 stack[3] = stack[-7] // } // Block ends with unconditional jump to 0x1d9a 20AD 5B JUMPDEST 20AE 96 SWAP7 20AF 50 POP 20B0 50 POP 20B1 60 PUSH1 0x20 20B3 61 PUSH2 0x20be 20B6 89 DUP10 20B7 82 DUP3 20B8 8A DUP11 20B9 01 ADD 20BA 61 PUSH2 0x1e51 20BD 56 *JUMP 20BE 5B JUMPDEST 20BF 95 SWAP6 20C0 50 POP 20C1 50 POP 20C2 60 PUSH1 0x40 20C4 61 PUSH2 0x20cf 20C7 89 DUP10 20C8 82 DUP3 20C9 8A DUP11 20CA 01 ADD 20CB 61 PUSH2 0x1d9a 20CE 56 *JUMP 20CF 5B JUMPDEST 20D0 94 SWAP5 20D1 50 POP 20D2 50 POP 20D3 60 PUSH1 0x60 20D5 61 PUSH2 0x20e0 20D8 89 DUP10 20D9 82 DUP3 20DA 8A DUP11 20DB 01 ADD 20DC 61 PUSH2 0x1d9a 20DF 56 *JUMP 20E0 5B JUMPDEST 20E1 93 SWAP4 20E2 50 POP 20E3 50 POP 20E4 60 PUSH1 0x80 20E6 87 DUP8 20E7 01 ADD 20E8 35 CALLDATALOAD 20E9 67 PUSH8 0xffffffffffffffff 20F2 81 DUP2 20F3 11 GT 20F4 15 ISZERO 20F5 61 PUSH2 0x20fd 20F8 57 *JUMPI 20F9 60 PUSH1 0x00 20FB 80 DUP1 20FC FD *REVERT 20FD 5B JUMPDEST 20FE 61 PUSH2 0x2109 2101 89 DUP10 2102 82 DUP3 2103 8A DUP11 2104 01 ADD 2105 61 PUSH2 0x1d0e 2108 56 *JUMP 2109 5B JUMPDEST 210A 92 SWAP3 210B 50 POP 210C 50 POP 210D 60 PUSH1 0xa0 210F 87 DUP8 2110 01 ADD 2111 35 CALLDATALOAD 2112 67 PUSH8 0xffffffffffffffff 211B 81 DUP2 211C 11 GT 211D 15 ISZERO 211E 61 PUSH2 0x2126 2121 57 *JUMPI 2122 60 PUSH1 0x00 2124 80 DUP1 2125 FD *REVERT 2126 5B JUMPDEST 2127 61 PUSH2 0x2132 212A 89 DUP10 212B 82 DUP3 212C 8A DUP11 212D 01 ADD 212E 61 PUSH2 0x1dbb 2131 56 *JUMP 2132 5B JUMPDEST 2133 91 SWAP2 2134 50 POP 2135 50 POP 2136 92 SWAP3 2137 95 SWAP6 2138 50 POP 2139 92 SWAP3 213A 95 SWAP6 213B 50 POP 213C 92 SWAP3 213D 95 SWAP6 213E 56 *JUMP 213F 5B JUMPDEST 2140 60 PUSH1 0x00 2142 61 PUSH2 0x214b 2145 83 DUP4 2146 83 DUP4 2147 61 PUSH2 0x215f 214A 56 *JUMP 214B 5B JUMPDEST 214C 50 POP 214D 50 POP 214E 60 PUSH1 0x20 2150 01 ADD 2151 90 SWAP1 2152 56 *JUMP 2153 5B JUMPDEST 2154 60 PUSH1 0x00 2156 61 PUSH2 0x214b 2159 83 DUP4 215A 83 DUP4 215B 61 PUSH2 0x226c 215E 56 *JUMP label_215F: // Incoming call from 0x29FD, returns to 0x077A // Inputs[1] { @2163 stack[-1] } 215F 5B JUMPDEST 2160 61 PUSH2 0x2168 2163 81 DUP2 2164 61 PUSH2 0x2d26 2167 56 *JUMP // Stack delta = +2 // Outputs[2] // { // @2160 stack[0] = 0x2168 // @2163 stack[1] = stack[-1] // } // Block ends with call to 0x2d26, returns to 0x2168 label_2168: // Incoming return from call to 0x2D26 at 0x2167 // Incoming return from call to 0x06DF at 0x2274 // Incoming return from call to 0x2D31 at 0x226B // Inputs[3] // { // @2169 stack[-3] // @216A stack[-1] // @216D stack[-4] // } 2168 5B JUMPDEST 2169 82 DUP3 216A 52 MSTORE 216B 50 POP 216C 50 POP 216D 56 *JUMP // Stack delta = -4 // Outputs[1] { @216A memory[stack[-3]:stack[-3] + 0x20] = stack[-1] } // Block ends with unconditional jump to stack[-4] 216E 5B JUMPDEST 216F 60 PUSH1 0x00 2171 61 PUSH2 0x2179 2174 82 DUP3 2175 61 PUSH2 0x2d14 2178 56 *JUMP 2179 5B JUMPDEST 217A 61 PUSH2 0x2183 217D 81 DUP2 217E 85 DUP6 217F 61 PUSH2 0x2d18 2182 56 *JUMP 2183 5B JUMPDEST 2184 93 SWAP4 2185 50 POP 2186 61 PUSH2 0x218e 2189 83 DUP4 218A 61 PUSH2 0x2d0e 218D 56 *JUMP 218E 5B JUMPDEST 218F 80 DUP1 2190 60 PUSH1 0x00 2192 5B JUMPDEST 2193 83 DUP4 2194 81 DUP2 2195 10 LT 2196 15 ISZERO 2197 61 PUSH2 0x21bc 219A 57 *JUMPI 219B 81 DUP2 219C 51 MLOAD 219D 61 PUSH2 0x21a6 21A0 88 DUP9 21A1 82 DUP3 21A2 61 PUSH2 0x213f 21A5 56 *JUMP 21A6 5B JUMPDEST 21A7 97 SWAP8 21A8 50 POP 21A9 61 PUSH2 0x21b1 21AC 83 DUP4 21AD 61 PUSH2 0x2d0e 21B0 56 *JUMP 21B1 5B JUMPDEST 21B2 92 SWAP3 21B3 50 POP 21B4 50 POP 21B5 60 PUSH1 0x01 21B7 01 ADD 21B8 61 PUSH2 0x2192 21BB 56 *JUMP 21BC 5B JUMPDEST 21BD 50 POP 21BE 94 SWAP5 21BF 95 SWAP6 21C0 94 SWAP5 21C1 50 POP 21C2 50 POP 21C3 50 POP 21C4 50 POP 21C5 50 POP 21C6 56 *JUMP 21C7 5B JUMPDEST 21C8 60 PUSH1 0x00 21CA 61 PUSH2 0x21d2 21CD 82 DUP3 21CE 61 PUSH2 0x2d14 21D1 56 *JUMP 21D2 5B JUMPDEST 21D3 61 PUSH2 0x21dc 21D6 81 DUP2 21D7 85 DUP6 21D8 61 PUSH2 0x2d18 21DB 56 *JUMP 21DC 5B JUMPDEST 21DD 93 SWAP4 21DE 50 POP 21DF 61 PUSH2 0x21e7 21E2 83 DUP4 21E3 61 PUSH2 0x2d0e 21E6 56 *JUMP 21E7 5B JUMPDEST 21E8 80 DUP1 21E9 60 PUSH1 0x00 21EB 5B JUMPDEST 21EC 83 DUP4 21ED 81 DUP2 21EE 10 LT 21EF 15 ISZERO 21F0 61 PUSH2 0x21bc 21F3 57 *JUMPI 21F4 81 DUP2 21F5 51 MLOAD 21F6 61 PUSH2 0x21ff 21F9 88 DUP9 21FA 82 DUP3 21FB 61 PUSH2 0x213f 21FE 56 *JUMP 21FF 5B JUMPDEST 2200 97 SWAP8 2201 50 POP 2202 61 PUSH2 0x220a 2205 83 DUP4 2206 61 PUSH2 0x2d0e 2209 56 *JUMP 220A 5B JUMPDEST 220B 92 SWAP3 220C 50 POP 220D 50 POP 220E 60 PUSH1 0x01 2210 01 ADD 2211 61 PUSH2 0x21eb 2214 56 *JUMP 2215 5B JUMPDEST 2216 60 PUSH1 0x00 2218 61 PUSH2 0x2220 221B 82 DUP3 221C 61 PUSH2 0x2d14 221F 56 *JUMP 2220 5B JUMPDEST 2221 61 PUSH2 0x222a 2224 81 DUP2 2225 85 DUP6 2226 61 PUSH2 0x2d18 2229 56 *JUMP 222A 5B JUMPDEST 222B 93 SWAP4 222C 50 POP 222D 61 PUSH2 0x2235 2230 83 DUP4 2231 61 PUSH2 0x2d0e 2234 56 *JUMP 2235 5B JUMPDEST 2236 80 DUP1 2237 60 PUSH1 0x00 2239 5B JUMPDEST 223A 83 DUP4 223B 81 DUP2 223C 10 LT 223D 15 ISZERO 223E 61 PUSH2 0x21bc 2241 57 *JUMPI 2242 81 DUP2 2243 51 MLOAD 2244 61 PUSH2 0x224d 2247 88 DUP9 2248 82 DUP3 2249 61 PUSH2 0x2153 224C 56 *JUMP 224D 5B JUMPDEST 224E 97 SWAP8 224F 50 POP 2250 61 PUSH2 0x2258 2253 83 DUP4 2254 61 PUSH2 0x2d0e 2257 56 *JUMP 2258 5B JUMPDEST 2259 92 SWAP3 225A 50 POP 225B 50 POP 225C 60 PUSH1 0x01 225E 01 ADD 225F 61 PUSH2 0x2239 2262 56 *JUMP label_2263: // Incoming jump from 0x2A8C // Inputs[1] { @2267 stack[-1] } 2263 5B JUMPDEST 2264 61 PUSH2 0x2168 2267 81 DUP2 2268 61 PUSH2 0x2d31 226B 56 *JUMP // Stack delta = +2 // Outputs[2] // { // @2264 stack[0] = 0x2168 // @2267 stack[1] = stack[-1] // } // Block ends with call to 0x2d31, returns to 0x2168 label_226C: // Incoming call from 0x2C69, returns to 0x077A // Inputs[1] { @2270 stack[-1] } 226C 5B JUMPDEST 226D 61 PUSH2 0x2168 2270 81 DUP2 2271 61 PUSH2 0x06df 2274 56 *JUMP // Stack delta = +2 // Outputs[2] // { // @226D stack[0] = 0x2168 // @2270 stack[1] = stack[-1] // } // Block ends with call to 0x06df, returns to 0x2168 label_2275: // Incoming call from 0x2ADB, returns to 0x18D2 // Inputs[1] { @227B stack[-1] } 2275 5B JUMPDEST 2276 60 PUSH1 0x00 2278 61 PUSH2 0x2280 227B 82 DUP3 227C 61 PUSH2 0x2d14 227F 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @2276 stack[0] = 0x00 // @2278 stack[1] = 0x2280 // @227B stack[2] = stack[-1] // } // Block ends with call to 0x2d14, returns to 0x2280 label_2280: // Incoming return from call to 0x2D14 at 0x227F // Inputs[2] // { // @2284 stack[-1] // @2285 stack[-4] // } 2280 5B JUMPDEST 2281 61 PUSH2 0x228a 2284 81 DUP2 2285 85 DUP6 2286 61 PUSH2 0x2d18 2289 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @2281 stack[0] = 0x228a // @2284 stack[1] = stack[-1] // @2285 stack[2] = stack[-4] // } // Block ends with call to 0x2d18, returns to 0x228A label_228A: // Incoming return from call to 0x2D18 at 0x2289 // Inputs[4] // { // @228B stack[-5] // @228B stack[-1] // @2290 stack[-2] // @2294 stack[-4] // } 228A 5B JUMPDEST 228B 93 SWAP4 228C 50 POP 228D 61 PUSH2 0x229a 2290 81 DUP2 2291 85 DUP6 2292 60 PUSH1 0x20 2294 86 DUP7 2295 01 ADD 2296 61 PUSH2 0x2d6c 2299 56 *JUMP // Stack delta = +3 // Outputs[5] // { // @228B stack[-5] = stack[-1] // @228D stack[-1] = 0x229a // @2290 stack[0] = stack[-2] // @2291 stack[1] = stack[-1] // @2295 stack[2] = stack[-4] + 0x20 // } // Block ends with call to 0x2d6c, returns to 0x229A label_229A: // Incoming return from call to 0x2D6C at 0x2299 // Inputs[1] { @229E stack[-1] } 229A 5B JUMPDEST 229B 61 PUSH2 0x22a3 229E 81 DUP2 229F 61 PUSH2 0x2da9 22A2 56 *JUMP // Stack delta = +2 // Outputs[2] // { // @229B stack[0] = 0x22a3 // @229E stack[1] = stack[-1] // } // Block ends with call to 0x2da9, returns to 0x22A3 label_22A3: // Incoming return from call to 0x2DA9 at 0x22A2 // Inputs[4] // { // @22A4 stack[-2] // @22A4 stack[-1] // @22A5 stack[-5] // @22A7 stack[-6] // } 22A3 5B JUMPDEST 22A4 90 SWAP1 22A5 93 SWAP4 22A6 01 ADD 22A7 93 SWAP4 22A8 92 SWAP3 22A9 50 POP 22AA 50 POP 22AB 50 POP 22AC 56 *JUMP // Stack delta = -5 // Outputs[1] { @22A7 stack[-6] = stack[-5] + stack[-1] } // Block ends with unconditional jump to stack[-6] 22AD 5B JUMPDEST 22AE 60 PUSH1 0x00 22B0 61 PUSH2 0x22b8 22B3 82 DUP3 22B4 61 PUSH2 0x2d14 22B7 56 *JUMP 22B8 5B JUMPDEST 22B9 61 PUSH2 0x22c2 22BC 81 DUP2 22BD 85 DUP6 22BE 61 PUSH2 0x2d21 22C1 56 *JUMP 22C2 5B JUMPDEST 22C3 93 SWAP4 22C4 50 POP 22C5 61 PUSH2 0x22d2 22C8 81 DUP2 22C9 85 DUP6 22CA 60 PUSH1 0x20 22CC 86 DUP7 22CD 01 ADD 22CE 61 PUSH2 0x2d6c 22D1 56 *JUMP 22D2 5B JUMPDEST 22D3 92 SWAP3 22D4 90 SWAP1 22D5 92 SWAP3 22D6 01 ADD 22D7 92 SWAP3 22D8 91 SWAP2 22D9 50 POP 22DA 50 POP 22DB 56 *JUMP 22DC 5B JUMPDEST 22DD 61 PUSH2 0x2168 22E0 61 PUSH2 0x22e8 22E3 82 DUP3 22E4 61 PUSH2 0x2d55 22E7 56 *JUMP 22E8 5B JUMPDEST 22E9 61 PUSH2 0x2d98 22EC 56 *JUMP 22ED 5B JUMPDEST 22EE 60 PUSH1 0x00 22F0 61 PUSH2 0x22fa 22F3 60 PUSH1 0x1c 22F5 83 DUP4 22F6 61 PUSH2 0x2d18 22F9 56 *JUMP 22FA 5B JUMPDEST 22FB 7F PUSH32 0x4665652076616c75652073686f756c6420626520706f73697469766500000000 231C 81 DUP2 231D 52 MSTORE 231E 60 PUSH1 0x20 2320 01 ADD 2321 92 SWAP3 2322 91 SWAP2 2323 50 POP 2324 50 POP 2325 56 *JUMP 2326 5B JUMPDEST 2327 60 PUSH1 0x00 2329 61 PUSH2 0x2333 232C 60 PUSH1 0x2b 232E 83 DUP4 232F 61 PUSH2 0x2d18 2332 56 *JUMP 2333 5B JUMPDEST 2334 7F PUSH32 0x455243373231456e756d657261626c653a206f776e657220696e646578206f75 2355 81 DUP2 2356 52 MSTORE 2357 6A PUSH11 0x74206f6620626f756e6473 2363 60 PUSH1 0xa8 2365 1B SHL 2366 60 PUSH1 0x20 2368 82 DUP3 2369 01 ADD 236A 52 MSTORE 236B 60 PUSH1 0x40 236D 01 ADD 236E 92 SWAP3 236F 91 SWAP2 2370 50 POP 2371 50 POP 2372 56 *JUMP 2373 5B JUMPDEST 2374 60 PUSH1 0x00 2376 61 PUSH2 0x2380 2379 60 PUSH1 0x32 237B 83 DUP4 237C 61 PUSH2 0x2d18 237F 56 *JUMP 2380 5B JUMPDEST 2381 7F PUSH32 0x4552433732313a207472616e7366657220746f206e6f6e204552433732315265 23A2 81 DUP2 23A3 52 MSTORE 23A4 71 PUSH18 0x31b2b4bb32b91034b6b83632b6b2b73a32b9 23B7 60 PUSH1 0x71 23B9 1B SHL 23BA 60 PUSH1 0x20 23BC 82 DUP3 23BD 01 ADD 23BE 52 MSTORE 23BF 60 PUSH1 0x40 23C1 01 ADD 23C2 92 SWAP3 23C3 91 SWAP2 23C4 50 POP 23C5 50 POP 23C6 56 *JUMP 23C7 5B JUMPDEST 23C8 60 PUSH1 0x00 23CA 61 PUSH2 0x23d4 23CD 60 PUSH1 0x26 23CF 83 DUP4 23D0 61 PUSH2 0x2d18 23D3 56 *JUMP 23D4 5B JUMPDEST 23D5 7F PUSH32 0x4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061 23F6 81 DUP2 23F7 52 MSTORE 23F8 65 PUSH6 0x646472657373 23FF 60 PUSH1 0xd0 2401 1B SHL 2402 60 PUSH1 0x20 2404 82 DUP3 2405 01 ADD 2406 52 MSTORE 2407 60 PUSH1 0x40 2409 01 ADD 240A 92 SWAP3 240B 91 SWAP2 240C 50 POP 240D 50 POP 240E 56 *JUMP 240F 5B JUMPDEST 2410 60 PUSH1 0x00 2412 61 PUSH2 0x241c 2415 60 PUSH1 0x1c 2417 83 DUP4 2418 61 PUSH2 0x2d18 241B 56 *JUMP 241C 5B JUMPDEST 241D 7F PUSH32 0x4552433732313a20746f6b656e20616c7265616479206d696e74656400000000 243E 81 DUP2 243F 52 MSTORE 2440 60 PUSH1 0x20 2442 01 ADD 2443 92 SWAP3 2444 91 SWAP2 2445 50 POP 2446 50 POP 2447 56 *JUMP 2448 5B JUMPDEST 2449 60 PUSH1 0x00 244B 61 PUSH2 0x2455 244E 60 PUSH1 0x24 2450 83 DUP4 2451 61 PUSH2 0x2d18 2454 56 *JUMP 2455 5B JUMPDEST 2456 7F PUSH32 0x4552433732313a207472616e7366657220746f20746865207a65726f20616464 2477 81 DUP2 2478 52 MSTORE 2479 63 PUSH4 0x72657373 247E 60 PUSH1 0xe0 2480 1B SHL 2481 60 PUSH1 0x20 2483 82 DUP3 2484 01 ADD 2485 52 MSTORE 2486 60 PUSH1 0x40 2488 01 ADD 2489 92 SWAP3 248A 91 SWAP2 248B 50 POP 248C 50 POP 248D 56 *JUMP 248E 5B JUMPDEST 248F 60 PUSH1 0x00 2491 61 PUSH2 0x249b 2494 60 PUSH1 0x19 2496 83 DUP4 2497 61 PUSH2 0x2d18 249A 56 *JUMP 249B 5B JUMPDEST 249C 7F PUSH32 0x4552433732313a20617070726f766520746f2063616c6c657200000000000000 24BD 81 DUP2 24BE 52 MSTORE 24BF 60 PUSH1 0x20 24C1 01 ADD 24C2 92 SWAP3 24C3 91 SWAP2 24C4 50 POP 24C5 50 POP 24C6 56 *JUMP 24C7 5B JUMPDEST 24C8 60 PUSH1 0x00 24CA 61 PUSH2 0x24d4 24CD 60 PUSH1 0x2c 24CF 83 DUP4 24D0 61 PUSH2 0x2d18 24D3 56 *JUMP 24D4 5B JUMPDEST 24D5 7F PUSH32 0x4552433732313a206f70657261746f7220717565727920666f72206e6f6e6578 24F6 81 DUP2 24F7 52 MSTORE 24F8 6B PUSH12 0x34b9ba32b73a103a37b5b2b7 2505 60 PUSH1 0xa1 2507 1B SHL 2508 60 PUSH1 0x20 250A 82 DUP3 250B 01 ADD 250C 52 MSTORE 250D 60 PUSH1 0x40 250F 01 ADD 2510 92 SWAP3 2511 91 SWAP2 2512 50 POP 2513 50 POP 2514 56 *JUMP 2515 5B JUMPDEST 2516 60 PUSH1 0x00 2518 61 PUSH2 0x2522 251B 60 PUSH1 0x19 251D 83 DUP4 251E 61 PUSH2 0x2d18 2521 56 *JUMP 2522 5B JUMPDEST 2523 7F PUSH32 0x6f776e65722073686f756c64207369676e20746f6b656e496400000000000000 2544 81 DUP2 2545 52 MSTORE 2546 60 PUSH1 0x20 2548 01 ADD 2549 92 SWAP3 254A 91 SWAP2 254B 50 POP 254C 50 POP 254D 56 *JUMP 254E 5B JUMPDEST 254F 60 PUSH1 0x00 2551 61 PUSH2 0x255b 2554 60 PUSH1 0x38 2556 83 DUP4 2557 61 PUSH2 0x2d18 255A 56 *JUMP 255B 5B JUMPDEST 255C 7F PUSH32 0x4552433732313a20617070726f76652063616c6c6572206973206e6f74206f77 257D 81 DUP2 257E 52 MSTORE 257F 7F PUSH32 0x6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000 25A0 60 PUSH1 0x20 25A2 82 DUP3 25A3 01 ADD 25A4 52 MSTORE 25A5 60 PUSH1 0x40 25A7 01 ADD 25A8 92 SWAP3 25A9 91 SWAP2 25AA 50 POP 25AB 50 POP 25AC 56 *JUMP 25AD 5B JUMPDEST 25AE 60 PUSH1 0x00 25B0 61 PUSH2 0x25ba 25B3 60 PUSH1 0x2a 25B5 83 DUP4 25B6 61 PUSH2 0x2d18 25B9 56 *JUMP 25BA 5B JUMPDEST 25BB 7F PUSH32 0x4552433732313a2062616c616e636520717565727920666f7220746865207a65 25DC 81 DUP2 25DD 52 MSTORE 25DE 69 PUSH10 0x726f2061646472657373 25E9 60 PUSH1 0xb0 25EB 1B SHL 25EC 60 PUSH1 0x20 25EE 82 DUP3 25EF 01 ADD 25F0 52 MSTORE 25F1 60 PUSH1 0x40 25F3 01 ADD 25F4 92 SWAP3 25F5 91 SWAP2 25F6 50 POP 25F7 50 POP 25F8 56 *JUMP 25F9 5B JUMPDEST 25FA 60 PUSH1 0x00 25FC 61 PUSH2 0x2606 25FF 60 PUSH1 0x29 2601 83 DUP4 2602 61 PUSH2 0x2d18 2605 56 *JUMP 2606 5B JUMPDEST 2607 7F PUSH32 0x4552433732313a206f776e657220717565727920666f72206e6f6e6578697374 2628 81 DUP2 2629 52 MSTORE 262A 68 PUSH9 0x32b73a103a37b5b2b7 2634 60 PUSH1 0xb9 2636 1B SHL 2637 60 PUSH1 0x20 2639 82 DUP3 263A 01 ADD 263B 52 MSTORE 263C 60 PUSH1 0x40 263E 01 ADD 263F 92 SWAP3 2640 91 SWAP2 2641 50 POP 2642 50 POP 2643 56 *JUMP 2644 5B JUMPDEST 2645 60 PUSH1 0x00 2647 61 PUSH2 0x2651 264A 60 PUSH1 0x20 264C 83 DUP4 264D 61 PUSH2 0x2d18 2650 56 *JUMP 2651 5B JUMPDEST 2652 7F PUSH32 0x4552433732313a206d696e7420746f20746865207a65726f2061646472657373 2673 81 DUP2 2674 52 MSTORE 2675 60 PUSH1 0x20 2677 01 ADD 2678 92 SWAP3 2679 91 SWAP2 267A 50 POP 267B 50 POP 267C 56 *JUMP 267D 5B JUMPDEST 267E 60 PUSH1 0x00 2680 61 PUSH2 0x268a 2683 60 PUSH1 0x2c 2685 83 DUP4 2686 61 PUSH2 0x2d18 2689 56 *JUMP 268A 5B JUMPDEST 268B 7F PUSH32 0x4552433732313a20617070726f76656420717565727920666f72206e6f6e6578 26AC 81 DUP2 26AD 52 MSTORE 26AE 6B PUSH12 0x34b9ba32b73a103a37b5b2b7 26BB 60 PUSH1 0xa1 26BD 1B SHL 26BE 60 PUSH1 0x20 26C0 82 DUP3 26C1 01 ADD 26C2 52 MSTORE 26C3 60 PUSH1 0x40 26C5 01 ADD 26C6 92 SWAP3 26C7 91 SWAP2 26C8 50 POP 26C9 50 POP 26CA 56 *JUMP 26CB 5B JUMPDEST 26CC 60 PUSH1 0x00 26CE 61 PUSH2 0x26d8 26D1 60 PUSH1 0x2c 26D3 83 DUP4 26D4 61 PUSH2 0x2d18 26D7 56 *JUMP 26D8 5B JUMPDEST 26D9 7F PUSH32 0x4552433732314d657461646174613a2055524920736574206f66206e6f6e6578 26FA 81 DUP2 26FB 52 MSTORE 26FC 6B PUSH12 0x34b9ba32b73a103a37b5b2b7 2709 60 PUSH1 0xa1 270B 1B SHL 270C 60 PUSH1 0x20 270E 82 DUP3 270F 01 ADD 2710 52 MSTORE 2711 60 PUSH1 0x40 2713 01 ADD 2714 92 SWAP3 2715 91 SWAP2 2716 50 POP 2717 50 POP 2718 56 *JUMP label_2719: // Incoming call from 0x2BDB, returns to 0x077A // Inputs[1] { @2721 stack[-1] } 2719 5B JUMPDEST 271A 60 PUSH1 0x00 271C 61 PUSH2 0x2726 271F 60 PUSH1 0x20 2721 83 DUP4 2722 61 PUSH2 0x2d18 2725 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @271A stack[0] = 0x00 // @271C stack[1] = 0x2726 // @271F stack[2] = 0x20 // @2721 stack[3] = stack[-1] // } // Block ends with call to 0x2d18, returns to 0x2726 label_2726: // Incoming return from call to 0x2D18 at 0x2725 // Inputs[3] // { // @2748 stack[-1] // @274D stack[-4] // @274E stack[-3] // } 2726 5B JUMPDEST 2727 7F PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572 2748 81 DUP2 2749 52 MSTORE 274A 60 PUSH1 0x20 274C 01 ADD 274D 92 SWAP3 274E 91 SWAP2 274F 50 POP 2750 50 POP 2751 56 *JUMP // Stack delta = -3 // Outputs[2] // { // @2749 memory[stack[-1]:stack[-1] + 0x20] = 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572 // @274D stack[-4] = 0x20 + stack[-1] // } // Block ends with unconditional jump to stack[-4] 2752 5B JUMPDEST 2753 60 PUSH1 0x00 2755 61 PUSH2 0x275f 2758 60 PUSH1 0x29 275A 83 DUP4 275B 61 PUSH2 0x2d18 275E 56 *JUMP 275F 5B JUMPDEST 2760 7F PUSH32 0x4552433732313a207472616e73666572206f6620746f6b656e20746861742069 2781 81 DUP2 2782 52 MSTORE 2783 68 PUSH9 0x39903737ba1037bbb7 278D 60 PUSH1 0xb9 278F 1B SHL 2790 60 PUSH1 0x20 2792 82 DUP3 2793 01 ADD 2794 52 MSTORE 2795 60 PUSH1 0x40 2797 01 ADD 2798 92 SWAP3 2799 91 SWAP2 279A 50 POP 279B 50 POP 279C 56 *JUMP 279D 5B JUMPDEST 279E 60 PUSH1 0x00 27A0 61 PUSH2 0x27aa 27A3 60 PUSH1 0x2f 27A5 83 DUP4 27A6 61 PUSH2 0x2d18 27A9 56 *JUMP 27AA 5B JUMPDEST 27AB 7F PUSH32 0x4552433732314d657461646174613a2055524920717565727920666f72206e6f 27CC 81 DUP2 27CD 52 MSTORE 27CE 6E PUSH15 0x3732bc34b9ba32b73a103a37b5b2b7 27DE 60 PUSH1 0x89 27E0 1B SHL 27E1 60 PUSH1 0x20 27E3 82 DUP3 27E4 01 ADD 27E5 52 MSTORE 27E6 60 PUSH1 0x40 27E8 01 ADD 27E9 92 SWAP3 27EA 91 SWAP2 27EB 50 POP 27EC 50 POP 27ED 56 *JUMP 27EE 5B JUMPDEST 27EF 60 PUSH1 0x00 27F1 61 PUSH2 0x27fb 27F4 60 PUSH1 0x21 27F6 83 DUP4 27F7 61 PUSH2 0x2d18 27FA 56 *JUMP 27FB 5B JUMPDEST 27FC 7F PUSH32 0x4552433732313a20617070726f76616c20746f2063757272656e74206f776e65 281D 81 DUP2 281E 52 MSTORE 281F 60 PUSH1 0x39 2821 60 PUSH1 0xf9 2823 1B SHL 2824 60 PUSH1 0x20 2826 82 DUP3 2827 01 ADD 2828 52 MSTORE 2829 60 PUSH1 0x40 282B 01 ADD 282C 92 SWAP3 282D 91 SWAP2 282E 50 POP 282F 50 POP 2830 56 *JUMP 2831 5B JUMPDEST 2832 60 PUSH1 0x00 2834 61 PUSH2 0x283e 2837 60 PUSH1 0x31 2839 83 DUP4 283A 61 PUSH2 0x2d18 283D 56 *JUMP 283E 5B JUMPDEST 283F 7F PUSH32 0x4552433732313a207472616e736665722063616c6c6572206973206e6f74206f 2860 81 DUP2 2861 52 MSTORE 2862 70 PUSH17 0x1ddb995c881b9bdc88185c1c1c9bdd9959 2874 60 PUSH1 0x7a 2876 1B SHL 2877 60 PUSH1 0x20 2879 82 DUP3 287A 01 ADD 287B 52 MSTORE 287C 60 PUSH1 0x40 287E 01 ADD 287F 92 SWAP3 2880 91 SWAP2 2881 50 POP 2882 50 POP 2883 56 *JUMP 2884 5B JUMPDEST 2885 60 PUSH1 0x00 2887 61 PUSH2 0x2891 288A 60 PUSH1 0x2c 288C 83 DUP4 288D 61 PUSH2 0x2d18 2890 56 *JUMP 2891 5B JUMPDEST 2892 7F PUSH32 0x455243373231456e756d657261626c653a20676c6f62616c20696e646578206f 28B3 81 DUP2 28B4 52 MSTORE 28B5 6B PUSH12 0x7574206f6620626f756e6473 28C2 60 PUSH1 0xa0 28C4 1B SHL 28C5 60 PUSH1 0x20 28C7 82 DUP3 28C8 01 ADD 28C9 52 MSTORE 28CA 60 PUSH1 0x40 28CC 01 ADD 28CD 92 SWAP3 28CE 91 SWAP2 28CF 50 POP 28D0 50 POP 28D1 56 *JUMP 28D2 5B JUMPDEST 28D3 60 PUSH1 0x00 28D5 61 PUSH2 0x28df 28D8 60 PUSH1 0x25 28DA 83 DUP4 28DB 61 PUSH2 0x2d18 28DE 56 *JUMP 28DF 5B JUMPDEST 28E0 7F PUSH32 0x4552433732313a206275726e206f6620746f6b656e2074686174206973206e6f 2901 81 DUP2 2902 52 MSTORE 2903 64 PUSH5 0x3a1037bbb7 2909 60 PUSH1 0xd9 290B 1B SHL 290C 60 PUSH1 0x20 290E 82 DUP3 290F 01 ADD 2910 52 MSTORE 2911 60 PUSH1 0x40 2913 01 ADD 2914 92 SWAP3 2915 91 SWAP2 2916 50 POP 2917 50 POP 2918 56 *JUMP 2919 5B JUMPDEST 291A 60 PUSH1 0x00 291C 61 PUSH2 0x2926 291F 60 PUSH1 0x1b 2921 83 DUP4 2922 61 PUSH2 0x2d18 2925 56 *JUMP 2926 5B JUMPDEST 2927 7F PUSH32 0x526563697069656e742073686f756c642062652070726573656e740000000000 2948 81 DUP2 2949 52 MSTORE 294A 60 PUSH1 0x20 294C 01 ADD 294D 92 SWAP3 294E 91 SWAP2 294F 50 POP 2950 50 POP 2951 56 *JUMP 2952 5B JUMPDEST 2953 60 PUSH1 0x00 2955 61 PUSH2 0x295f 2958 60 PUSH1 0x30 295A 83 DUP4 295B 61 PUSH2 0x2d18 295E 56 *JUMP 295F 5B JUMPDEST 2960 7F PUSH32 0x4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f77 2981 81 DUP2 2982 52 MSTORE 2983 6F PUSH16 0x1b995c881b9bdc88185c1c1c9bdd9959 2994 60 PUSH1 0x82 2996 1B SHL 2997 60 PUSH1 0x20 2999 82 DUP3 299A 01 ADD 299B 52 MSTORE 299C 60 PUSH1 0x40 299E 01 ADD 299F 92 SWAP3 29A0 91 SWAP2 29A1 50 POP 29A2 50 POP 29A3 56 *JUMP 29A4 5B JUMPDEST 29A5 61 PUSH2 0x2168 29A8 61 PUSH2 0x29b0 29AB 82 DUP3 29AC 61 PUSH2 0x06df 29AF 56 *JUMP 29B0 5B JUMPDEST 29B1 61 PUSH2 0x06df 29B4 56 *JUMP 29B5 5B JUMPDEST 29B6 61 PUSH2 0x2168 29B9 81 DUP2 29BA 61 PUSH2 0x2d4f 29BD 56 *JUMP 29BE 5B JUMPDEST 29BF 60 PUSH1 0x00 29C1 61 PUSH2 0x18d2 29C4 82 DUP3 29C5 84 DUP5 29C6 61 PUSH2 0x22ad 29C9 56 *JUMP 29CA 5B JUMPDEST 29CB 60 PUSH1 0x00 29CD 61 PUSH2 0x29d6 29D0 82 DUP3 29D1 85 DUP6 29D2 61 PUSH2 0x22dc 29D5 56 *JUMP 29D6 5B JUMPDEST 29D7 60 PUSH1 0x14 29D9 82 DUP3 29DA 01 ADD 29DB 91 SWAP2 29DC 50 POP 29DD 61 PUSH2 0x29e6 29E0 82 DUP3 29E1 84 DUP5 29E2 61 PUSH2 0x29a4 29E5 56 *JUMP 29E6 5B JUMPDEST 29E7 50 POP 29E8 60 PUSH1 0x20 29EA 01 ADD 29EB 92 SWAP3 29EC 91 SWAP2 29ED 50 POP 29EE 50 POP 29EF 56 *JUMP label_29F0: // Incoming jump from 0x0231 // Inputs[2] // { // @29F3 stack[-1] // @29F9 stack[-2] // } 29F0 5B JUMPDEST 29F1 60 PUSH1 0x20 29F3 81 DUP2 29F4 01 ADD 29F5 61 PUSH2 0x077a 29F8 82 DUP3 29F9 84 DUP5 29FA 61 PUSH2 0x215f 29FD 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @29F4 stack[0] = stack[-1] + 0x20 // @29F5 stack[1] = 0x077a // @29F8 stack[2] = stack[-1] // @29F9 stack[3] = stack[-2] // } // Block ends with call to 0x215f, returns to 0x077A 29FE 5B JUMPDEST 29FF 60 PUSH1 0x80 2A01 81 DUP2 2A02 01 ADD 2A03 61 PUSH2 0x2a0c 2A06 82 DUP3 2A07 87 DUP8 2A08 61 PUSH2 0x215f 2A0B 56 *JUMP 2A0C 5B JUMPDEST 2A0D 61 PUSH2 0x2a19 2A10 60 PUSH1 0x20 2A12 83 DUP4 2A13 01 ADD 2A14 86 DUP7 2A15 61 PUSH2 0x215f 2A18 56 *JUMP 2A19 5B JUMPDEST 2A1A 61 PUSH2 0x2a26 2A1D 60 PUSH1 0x40 2A1F 83 DUP4 2A20 01 ADD 2A21 85 DUP6 2A22 61 PUSH2 0x226c 2A25 56 *JUMP 2A26 5B JUMPDEST 2A27 81 DUP2 2A28 81 DUP2 2A29 03 SUB 2A2A 60 PUSH1 0x60 2A2C 83 DUP4 2A2D 01 ADD 2A2E 52 MSTORE 2A2F 61 PUSH2 0x2a38 2A32 81 DUP2 2A33 84 DUP5 2A34 61 PUSH2 0x2275 2A37 56 *JUMP 2A38 5B JUMPDEST 2A39 96 SWAP7 2A3A 95 SWAP6 2A3B 50 POP 2A3C 50 POP 2A3D 50 POP 2A3E 50 POP 2A3F 50 POP 2A40 50 POP 2A41 56 *JUMP 2A42 5B JUMPDEST 2A43 60 PUSH1 0x40 2A45 81 DUP2 2A46 01 ADD 2A47 61 PUSH2 0x2a50 2A4A 82 DUP3 2A4B 85 DUP6 2A4C 61 PUSH2 0x215f 2A4F 56 *JUMP 2A50 5B JUMPDEST 2A51 61 PUSH2 0x18d2 2A54 60 PUSH1 0x20 2A56 83 DUP4 2A57 01 ADD 2A58 84 DUP5 2A59 61 PUSH2 0x226c 2A5C 56 *JUMP 2A5D 5B JUMPDEST 2A5E 60 PUSH1 0x20 2A60 80 DUP1 2A61 82 DUP3 2A62 52 MSTORE 2A63 81 DUP2 2A64 01 ADD 2A65 61 PUSH2 0x18d2 2A68 81 DUP2 2A69 84 DUP5 2A6A 61 PUSH2 0x21c7 2A6D 56 *JUMP 2A6E 5B JUMPDEST 2A6F 60 PUSH1 0x20 2A71 80 DUP1 2A72 82 DUP3 2A73 52 MSTORE 2A74 81 DUP2 2A75 01 ADD 2A76 61 PUSH2 0x18d2 2A79 81 DUP2 2A7A 84 DUP5 2A7B 61 PUSH2 0x2215 2A7E 56 *JUMP label_2A7F: // Incoming jump from 0x01F3 // Inputs[2] // { // @2A82 stack[-1] // @2A88 stack[-2] // } 2A7F 5B JUMPDEST 2A80 60 PUSH1 0x20 2A82 81 DUP2 2A83 01 ADD 2A84 61 PUSH2 0x077a 2A87 82 DUP3 2A88 84 DUP5 2A89 61 PUSH2 0x2263 2A8C 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @2A83 stack[0] = stack[-1] + 0x20 // @2A84 stack[1] = 0x077a // @2A87 stack[2] = stack[-1] // @2A88 stack[3] = stack[-2] // } // Block ends with unconditional jump to 0x2263 2A8D 5B JUMPDEST 2A8E 60 PUSH1 0x80 2A90 81 DUP2 2A91 01 ADD 2A92 61 PUSH2 0x2a9b 2A95 82 DUP3 2A96 87 DUP8 2A97 61 PUSH2 0x226c 2A9A 56 *JUMP 2A9B 5B JUMPDEST 2A9C 61 PUSH2 0x2aa8 2A9F 60 PUSH1 0x20 2AA1 83 DUP4 2AA2 01 ADD 2AA3 86 DUP7 2AA4 61 PUSH2 0x29b5 2AA7 56 *JUMP 2AA8 5B JUMPDEST 2AA9 61 PUSH2 0x2ab5 2AAC 60 PUSH1 0x40 2AAE 83 DUP4 2AAF 01 ADD 2AB0 85 DUP6 2AB1 61 PUSH2 0x226c 2AB4 56 *JUMP 2AB5 5B JUMPDEST 2AB6 61 PUSH2 0x2ac2 2AB9 60 PUSH1 0x60 2ABB 83 DUP4 2ABC 01 ADD 2ABD 84 DUP5 2ABE 61 PUSH2 0x226c 2AC1 56 *JUMP 2AC2 5B JUMPDEST 2AC3 95 SWAP6 2AC4 94 SWAP5 2AC5 50 POP 2AC6 50 POP 2AC7 50 POP 2AC8 50 POP 2AC9 50 POP 2ACA 56 *JUMP label_2ACB: // Incoming call from 0x0211, returns to 0x01F4 // Inputs[2] // { // @2ACF stack[-1] // @2AD7 stack[-2] // } 2ACB 5B JUMPDEST 2ACC 60 PUSH1 0x20 2ACE 80 DUP1 2ACF 82 DUP3 2AD0 52 MSTORE 2AD1 81 DUP2 2AD2 01 ADD 2AD3 61 PUSH2 0x18d2 2AD6 81 DUP2 2AD7 84 DUP5 2AD8 61 PUSH2 0x2275 2ADB 56 *JUMP // Stack delta = +4 // Outputs[5] // { // @2AD0 memory[stack[-1]:stack[-1] + 0x20] = 0x20 // @2AD2 stack[0] = stack[-1] + 0x20 // @2AD3 stack[1] = 0x18d2 // @2AD6 stack[2] = stack[-1] + 0x20 // @2AD7 stack[3] = stack[-2] // } // Block ends with call to 0x2275, returns to 0x18D2 2ADC 5B JUMPDEST 2ADD 60 PUSH1 0x20 2ADF 80 DUP1 2AE0 82 DUP3 2AE1 52 MSTORE 2AE2 81 DUP2 2AE3 01 ADD 2AE4 61 PUSH2 0x077a 2AE7 81 DUP2 2AE8 61 PUSH2 0x22ed 2AEB 56 *JUMP 2AEC 5B JUMPDEST 2AED 60 PUSH1 0x20 2AEF 80 DUP1 2AF0 82 DUP3 2AF1 52 MSTORE 2AF2 81 DUP2 2AF3 01 ADD 2AF4 61 PUSH2 0x077a 2AF7 81 DUP2 2AF8 61 PUSH2 0x2326 2AFB 56 *JUMP 2AFC 5B JUMPDEST 2AFD 60 PUSH1 0x20 2AFF 80 DUP1 2B00 82 DUP3 2B01 52 MSTORE 2B02 81 DUP2 2B03 01 ADD 2B04 61 PUSH2 0x077a 2B07 81 DUP2 2B08 61 PUSH2 0x2373 2B0B 56 *JUMP 2B0C 5B JUMPDEST 2B0D 60 PUSH1 0x20 2B0F 80 DUP1 2B10 82 DUP3 2B11 52 MSTORE 2B12 81 DUP2 2B13 01 ADD 2B14 61 PUSH2 0x077a 2B17 81 DUP2 2B18 61 PUSH2 0x23c7 2B1B 56 *JUMP 2B1C 5B JUMPDEST 2B1D 60 PUSH1 0x20 2B1F 80 DUP1 2B20 82 DUP3 2B21 52 MSTORE 2B22 81 DUP2 2B23 01 ADD 2B24 61 PUSH2 0x077a 2B27 81 DUP2 2B28 61 PUSH2 0x240f 2B2B 56 *JUMP 2B2C 5B JUMPDEST 2B2D 60 PUSH1 0x20 2B2F 80 DUP1 2B30 82 DUP3 2B31 52 MSTORE 2B32 81 DUP2 2B33 01 ADD 2B34 61 PUSH2 0x077a 2B37 81 DUP2 2B38 61 PUSH2 0x2448 2B3B 56 *JUMP 2B3C 5B JUMPDEST 2B3D 60 PUSH1 0x20 2B3F 80 DUP1 2B40 82 DUP3 2B41 52 MSTORE 2B42 81 DUP2 2B43 01 ADD 2B44 61 PUSH2 0x077a 2B47 81 DUP2 2B48 61 PUSH2 0x248e 2B4B 56 *JUMP 2B4C 5B JUMPDEST 2B4D 60 PUSH1 0x20 2B4F 80 DUP1 2B50 82 DUP3 2B51 52 MSTORE 2B52 81 DUP2 2B53 01 ADD 2B54 61 PUSH2 0x077a 2B57 81 DUP2 2B58 61 PUSH2 0x24c7 2B5B 56 *JUMP 2B5C 5B JUMPDEST 2B5D 60 PUSH1 0x20 2B5F 80 DUP1 2B60 82 DUP3 2B61 52 MSTORE 2B62 81 DUP2 2B63 01 ADD 2B64 61 PUSH2 0x077a 2B67 81 DUP2 2B68 61 PUSH2 0x2515 2B6B 56 *JUMP 2B6C 5B JUMPDEST 2B6D 60 PUSH1 0x20 2B6F 80 DUP1 2B70 82 DUP3 2B71 52 MSTORE 2B72 81 DUP2 2B73 01 ADD 2B74 61 PUSH2 0x077a 2B77 81 DUP2 2B78 61 PUSH2 0x254e 2B7B 56 *JUMP 2B7C 5B JUMPDEST 2B7D 60 PUSH1 0x20 2B7F 80 DUP1 2B80 82 DUP3 2B81 52 MSTORE 2B82 81 DUP2 2B83 01 ADD 2B84 61 PUSH2 0x077a 2B87 81 DUP2 2B88 61 PUSH2 0x25ad 2B8B 56 *JUMP 2B8C 5B JUMPDEST 2B8D 60 PUSH1 0x20 2B8F 80 DUP1 2B90 82 DUP3 2B91 52 MSTORE 2B92 81 DUP2 2B93 01 ADD 2B94 61 PUSH2 0x077a 2B97 81 DUP2 2B98 61 PUSH2 0x25f9 2B9B 56 *JUMP 2B9C 5B JUMPDEST 2B9D 60 PUSH1 0x20 2B9F 80 DUP1 2BA0 82 DUP3 2BA1 52 MSTORE 2BA2 81 DUP2 2BA3 01 ADD 2BA4 61 PUSH2 0x077a 2BA7 81 DUP2 2BA8 61 PUSH2 0x2644 2BAB 56 *JUMP 2BAC 5B JUMPDEST 2BAD 60 PUSH1 0x20 2BAF 80 DUP1 2BB0 82 DUP3 2BB1 52 MSTORE 2BB2 81 DUP2 2BB3 01 ADD 2BB4 61 PUSH2 0x077a 2BB7 81 DUP2 2BB8 61 PUSH2 0x267d 2BBB 56 *JUMP 2BBC 5B JUMPDEST 2BBD 60 PUSH1 0x20 2BBF 80 DUP1 2BC0 82 DUP3 2BC1 52 MSTORE 2BC2 81 DUP2 2BC3 01 ADD 2BC4 61 PUSH2 0x077a 2BC7 81 DUP2 2BC8 61 PUSH2 0x26cb 2BCB 56 *JUMP label_2BCC: // Incoming jump from 0x09C4 // Incoming jump from 0x0AED // Incoming jump from 0x0A65 // Inputs[1] { @2BD0 stack[-1] } 2BCC 5B JUMPDEST 2BCD 60 PUSH1 0x20 2BCF 80 DUP1 2BD0 82 DUP3 2BD1 52 MSTORE 2BD2 81 DUP2 2BD3 01 ADD 2BD4 61 PUSH2 0x077a 2BD7 81 DUP2 2BD8 61 PUSH2 0x2719 2BDB 56 *JUMP // Stack delta = +3 // Outputs[4] // { // @2BD1 memory[stack[-1]:stack[-1] + 0x20] = 0x20 // @2BD3 stack[0] = stack[-1] + 0x20 // @2BD4 stack[1] = 0x077a // @2BD7 stack[2] = stack[-1] + 0x20 // } // Block ends with call to 0x2719, returns to 0x077A 2BDC 5B JUMPDEST 2BDD 60 PUSH1 0x20 2BDF 80 DUP1 2BE0 82 DUP3 2BE1 52 MSTORE 2BE2 81 DUP2 2BE3 01 ADD 2BE4 61 PUSH2 0x077a 2BE7 81 DUP2 2BE8 61 PUSH2 0x2752 2BEB 56 *JUMP 2BEC 5B JUMPDEST 2BED 60 PUSH1 0x20 2BEF 80 DUP1 2BF0 82 DUP3 2BF1 52 MSTORE 2BF2 81 DUP2 2BF3 01 ADD 2BF4 61 PUSH2 0x077a 2BF7 81 DUP2 2BF8 61 PUSH2 0x279d 2BFB 56 *JUMP 2BFC 5B JUMPDEST 2BFD 60 PUSH1 0x20 2BFF 80 DUP1 2C00 82 DUP3 2C01 52 MSTORE 2C02 81 DUP2 2C03 01 ADD 2C04 61 PUSH2 0x077a 2C07 81 DUP2 2C08 61 PUSH2 0x27ee 2C0B 56 *JUMP 2C0C 5B JUMPDEST 2C0D 60 PUSH1 0x20 2C0F 80 DUP1 2C10 82 DUP3 2C11 52 MSTORE 2C12 81 DUP2 2C13 01 ADD 2C14 61 PUSH2 0x077a 2C17 81 DUP2 2C18 61 PUSH2 0x2831 2C1B 56 *JUMP 2C1C 5B JUMPDEST 2C1D 60 PUSH1 0x20 2C1F 80 DUP1 2C20 82 DUP3 2C21 52 MSTORE 2C22 81 DUP2 2C23 01 ADD 2C24 61 PUSH2 0x077a 2C27 81 DUP2 2C28 61 PUSH2 0x2884 2C2B 56 *JUMP 2C2C 5B JUMPDEST 2C2D 60 PUSH1 0x20 2C2F 80 DUP1 2C30 82 DUP3 2C31 52 MSTORE 2C32 81 DUP2 2C33 01 ADD 2C34 61 PUSH2 0x077a 2C37 81 DUP2 2C38 61 PUSH2 0x28d2 2C3B 56 *JUMP 2C3C 5B JUMPDEST 2C3D 60 PUSH1 0x20 2C3F 80 DUP1 2C40 82 DUP3 2C41 52 MSTORE 2C42 81 DUP2 2C43 01 ADD 2C44 61 PUSH2 0x077a 2C47 81 DUP2 2C48 61 PUSH2 0x2919 2C4B 56 *JUMP 2C4C 5B JUMPDEST 2C4D 60 PUSH1 0x20 2C4F 80 DUP1 2C50 82 DUP3 2C51 52 MSTORE 2C52 81 DUP2 2C53 01 ADD 2C54 61 PUSH2 0x077a 2C57 81 DUP2 2C58 61 PUSH2 0x2952 2C5B 56 *JUMP label_2C5C: // Incoming jump from 0x027B // Inputs[2] // { // @2C5F stack[-1] // @2C65 stack[-2] // } 2C5C 5B JUMPDEST 2C5D 60 PUSH1 0x20 2C5F 81 DUP2 2C60 01 ADD 2C61 61 PUSH2 0x077a 2C64 82 DUP3 2C65 84 DUP5 2C66 61 PUSH2 0x226c 2C69 56 *JUMP // Stack delta = +4 // Outputs[4] // { // @2C60 stack[0] = stack[-1] + 0x20 // @2C61 stack[1] = 0x077a // @2C64 stack[2] = stack[-1] // @2C65 stack[3] = stack[-2] // } // Block ends with call to 0x226c, returns to 0x077A 2C6A 5B JUMPDEST 2C6B 60 PUSH1 0x60 2C6D 81 DUP2 2C6E 01 ADD 2C6F 61 PUSH2 0x2c78 2C72 82 DUP3 2C73 86 DUP7 2C74 61 PUSH2 0x226c 2C77 56 *JUMP 2C78 5B JUMPDEST 2C79 81 DUP2 2C7A 81 DUP2 2C7B 03 SUB 2C7C 60 PUSH1 0x20 2C7E 83 DUP4 2C7F 01 ADD 2C80 52 MSTORE 2C81 61 PUSH2 0x2c8a 2C84 81 DUP2 2C85 85 DUP6 2C86 61 PUSH2 0x216e 2C89 56 *JUMP 2C8A 5B JUMPDEST 2C8B 90 SWAP1 2C8C 50 POP 2C8D 81 DUP2 2C8E 81 DUP2 2C8F 03 SUB 2C90 60 PUSH1 0x40 2C92 83 DUP4 2C93 01 ADD 2C94 52 MSTORE 2C95 61 PUSH2 0x2ac2 2C98 81 DUP2 2C99 84 DUP5 2C9A 61 PUSH2 0x2215 2C9D 56 *JUMP label_2C9E: // Incoming jump from 0x1D31 // Inputs[2] // { // @2CA1 memory[0x40:0x60] // @2CA2 stack[-1] // } 2C9E 5B JUMPDEST 2C9F 60 PUSH1 0x40 2CA1 51 MLOAD 2CA2 81 DUP2 2CA3 81 DUP2 2CA4 01 ADD 2CA5 67 PUSH8 0xffffffffffffffff 2CAE 81 DUP2 2CAF 11 GT 2CB0 82 DUP3 2CB1 82 DUP3 2CB2 10 LT 2CB3 17 OR 2CB4 15 ISZERO 2CB5 61 PUSH2 0x2cbd 2CB8 57 *JUMPI // Stack delta = +2 // Outputs[2] // { // @2CA1 stack[0] = memory[0x40:0x60] // @2CA4 stack[1] = memory[0x40:0x60] + stack[-1] // } // Block ends with conditional jump to 0x2cbd, if !((memory[0x40:0x60] + stack[-1] < memory[0x40:0x60]) | (memory[0x40:0x60] + stack[-1] > 0xffffffffffffffff)) label_2CB9: // Incoming jump from 0x2CB8, if not !((memory[0x40:0x60] + stack[-1] < memory[0x40:0x60]) | (memory[0x40:0x60] + stack[-1] > 0xffffffffffffffff)) // Inputs[1] { @2CBC memory[0x00:0x00] } 2CB9 60 PUSH1 0x00 2CBB 80 DUP1 2CBC FD *REVERT // Stack delta = +0 // Outputs[1] { @2CBC revert(memory[0x00:0x00]); } // Block terminates label_2CBD: // Incoming jump from 0x2CB8, if !((memory[0x40:0x60] + stack[-1] < memory[0x40:0x60]) | (memory[0x40:0x60] + stack[-1] > 0xffffffffffffffff)) // Inputs[4] // { // @2CC0 stack[-1] // @2CC1 stack[-2] // @2CC1 stack[-4] // @2CC2 stack[-3] // } 2CBD 5B JUMPDEST 2CBE 60 PUSH1 0x40 2CC0 52 MSTORE 2CC1 91 SWAP2 2CC2 90 SWAP1 2CC3 50 POP 2CC4 56 *JUMP // Stack delta = -3 // Outputs[2] // { // @2CC0 memory[0x40:0x60] = stack[-1] // @2CC1 stack[-4] = stack[-2] // } // Block ends with unconditional jump to stack[-4] 2CC5 5B JUMPDEST 2CC6 60 PUSH1 0x00 2CC8 67 PUSH8 0xffffffffffffffff 2CD1 82 DUP3 2CD2 11 GT 2CD3 15 ISZERO 2CD4 61 PUSH2 0x2cdc 2CD7 57 *JUMPI 2CD8 60 PUSH1 0x00 2CDA 80 DUP1 2CDB FD *REVERT 2CDC 5B JUMPDEST 2CDD 50 POP 2CDE 60 PUSH1 0x20 2CE0 90 SWAP1 2CE1 81 DUP2 2CE2 02 MUL 2CE3 01 ADD 2CE4 90 SWAP1 2CE5 56 *JUMP label_2CE6: // Incoming call from 0x1DD9, returns to 0x1D2D // Inputs[1] { @2CF2 stack[-1] } 2CE6 5B JUMPDEST 2CE7 60 PUSH1 0x00 2CE9 67 PUSH8 0xffffffffffffffff 2CF2 82 DUP3 2CF3 11 GT 2CF4 15 ISZERO 2CF5 61 PUSH2 0x2cfd 2CF8 57 *JUMPI // Stack delta = +1 // Outputs[1] { @2CE7 stack[0] = 0x00 } // Block ends with conditional jump to 0x2cfd, if !(stack[-1] > 0xffffffffffffffff) label_2CF9: // Incoming jump from 0x2CF8, if not !(stack[-1] > 0xffffffffffffffff) // Inputs[1] { @2CFC memory[0x00:0x00] } 2CF9 60 PUSH1 0x00 2CFB 80 DUP1 2CFC FD *REVERT // Stack delta = +0 // Outputs[1] { @2CFC revert(memory[0x00:0x00]); } // Block terminates label_2CFD: // Incoming jump from 0x2CF8, if !(stack[-1] > 0xffffffffffffffff) // Inputs[2] // { // @2D03 stack[-2] // @2D0C stack[-3] // } 2CFD 5B JUMPDEST 2CFE 50 POP 2CFF 60 PUSH1 0x20 2D01 60 PUSH1 0x1f 2D03 91 SWAP2 2D04 90 SWAP1 2D05 91 SWAP2 2D06 01 ADD 2D07 60 PUSH1 0x1f 2D09 19 NOT 2D0A 16 AND 2D0B 01 ADD 2D0C 90 SWAP1 2D0D 56 *JUMP // Stack delta = -2 // Outputs[1] { @2D0C stack[-3] = (~0x1f & 0x1f + stack[-2]) + 0x20 } // Block ends with unconditional jump to stack[-3] 2D0E 5B JUMPDEST 2D0F 60 PUSH1 0x20 2D11 01 ADD 2D12 90 SWAP1 2D13 56 *JUMP label_2D14: // Incoming call from 0x227F, returns to 0x2280 // Inputs[3] // { // @2D15 stack[-1] // @2D15 memory[stack[-1]:stack[-1] + 0x20] // @2D16 stack[-2] // } 2D14 5B JUMPDEST 2D15 51 MLOAD 2D16 90 SWAP1 2D17 56 *JUMP // Stack delta = -1 // Outputs[1] { @2D16 stack[-2] = memory[stack[-1]:stack[-1] + 0x20] } // Block ends with unconditional jump to stack[-2] label_2D18: // Incoming call from 0x2289, returns to 0x228A // Incoming call from 0x2725, returns to 0x2726 // Inputs[3] // { // @2D19 stack[-2] // @2D19 stack[-1] // @2D1F stack[-3] // } 2D18 5B JUMPDEST 2D19 90 SWAP1 2D1A 81 DUP2 2D1B 52 MSTORE 2D1C 60 PUSH1 0x20 2D1E 01 ADD 2D1F 90 SWAP1 2D20 56 *JUMP // Stack delta = -2 // Outputs[2] // { // @2D1B memory[stack[-1]:stack[-1] + 0x20] = stack[-2] // @2D1F stack[-3] = 0x20 + stack[-1] // } // Block ends with unconditional jump to stack[-3] 2D21 5B JUMPDEST 2D22 91 SWAP2 2D23 90 SWAP1 2D24 50 POP 2D25 56 *JUMP label_2D26: // Incoming call from 0x2167, returns to 0x2168 // Incoming call from 0x2DC1, returns to 0x2DC2 // Inputs[1] { @2D2C stack[-1] } 2D26 5B JUMPDEST 2D27 60 PUSH1 0x00 2D29 61 PUSH2 0x077a 2D2C 82 DUP3 2D2D 61 PUSH2 0x2d43 2D30 56 *JUMP // Stack delta = +3 // Outputs[3] // { // @2D27 stack[0] = 0x00 // @2D29 stack[1] = 0x077a // @2D2C stack[2] = stack[-1] // } // Block ends with call to 0x2d43, returns to 0x077A label_2D31: // Incoming call from 0x226B, returns to 0x2168 // Inputs[2] // { // @2D32 stack[-1] // @2D34 stack[-2] // } 2D31 5B JUMPDEST 2D32 15 ISZERO 2D33 15 ISZERO 2D34 90 SWAP1 2D35 56 *JUMP // Stack delta = -1 // Outputs[1] { @2D34 stack[-2] = !!stack[-1] } // Block ends with unconditional jump to stack[-2] label_2D36: // Incoming call from 0x2DE7, returns to 0x2DC2 // Inputs[2] // { // @2D40 stack[-1] // @2D41 stack[-2] // } 2D36 5B JUMPDEST 2D37 60 PUSH1 0x01 2D39 60 PUSH1 0x01 2D3B 60 PUSH1 0xe0 2D3D 1B SHL 2D3E 03 SUB 2D3F 19 NOT 2D40 16 AND 2D41 90 SWAP1 2D42 56 *JUMP // Stack delta = -1 // Outputs[1] { @2D41 stack[-2] = ~((0x01 << 0xe0) - 0x01) & stack[-1] } // Block ends with unconditional jump to stack[-2] label_2D43: // Incoming call from 0x2D30, returns to 0x077A // Inputs[2] // { // @2D4C stack[-1] // @2D4D stack[-2] // } 2D43 5B JUMPDEST 2D44 60 PUSH1 0x01 2D46 60 PUSH1 0x01 2D48 60 PUSH1 0xa0 2D4A 1B SHL 2D4B 03 SUB 2D4C 16 AND 2D4D 90 SWAP1 2D4E 56 *JUMP // Stack delta = -1 // Outputs[1] { @2D4D stack[-2] = (0x01 << 0xa0) - 0x01 & stack[-1] } // Block ends with unconditional jump to stack[-2] 2D4F 5B JUMPDEST 2D50 60 PUSH1 0xff 2D52 16 AND 2D53 90 SWAP1 2D54 56 *JUMP 2D55 5B JUMPDEST 2D56 60 PUSH1 0x00 2D58 61 PUSH2 0x077a 2D5B 82 DUP3 2D5C 61 PUSH2 0x2d26 2D5F 56 *JUMP label_2D60: // Incoming call from 0x1E00, returns to 0x1E01 // Inputs[5] // { // @2D61 stack[-3] // @2D62 stack[-1] // @2D63 stack[-2] // @2D64 msg.data[stack[-1]:stack[-1] + stack[-3]] // @2D6B stack[-4] // } 2D60 5B JUMPDEST 2D61 82 DUP3 2D62 81 DUP2 2D63 83 DUP4 2D64 37 CALLDATACOPY 2D65 50 POP 2D66 60 PUSH1 0x00 2D68 91 SWAP2 2D69 01 ADD 2D6A 52 MSTORE 2D6B 56 *JUMP // Stack delta = -4 // Outputs[2] // { // @2D64 memory[stack[-2]:stack[-2] + stack[-3]] = msg.data[stack[-1]:stack[-1] + stack[-3]] // @2D6A memory[stack[-3] + stack[-2]:stack[-3] + stack[-2] + 0x20] = 0x00 // } // Block ends with unconditional jump to stack[-4] label_2D6C: // Incoming call from 0x2299, returns to 0x229A // Inputs[1] { @2D70 stack[-3] } 2D6C 5B JUMPDEST 2D6D 60 PUSH1 0x00 2D6F 5B JUMPDEST 2D70 83 DUP4 2D71 81 DUP2 2D72 10 LT 2D73 15 ISZERO 2D74 61 PUSH2 0x2d87 2D77 57 *JUMPI // Stack delta = +1 // Outputs[1] { @2D6D stack[0] = 0x00 } // Block ends with conditional jump to 0x2d87, if !(0x00 < stack[-3]) label_2D78: // Incoming jump from 0x2D77, if not !(0x00 < stack[-3]) // Incoming jump from 0x2D77, if not !(stack[-1] < stack[-4]) // Inputs[4] // { // @2D78 stack[-2] // @2D79 stack[-1] // @2D7B memory[stack[-1] + stack[-2]:stack[-1] + stack[-2] + 0x20] // @2D7C stack[-3] // } 2D78 81 DUP2 2D79 81 DUP2 2D7A 01 ADD 2D7B 51 MLOAD 2D7C 83 DUP4 2D7D 82 DUP3 2D7E 01 ADD 2D7F 52 MSTORE 2D80 60 PUSH1 0x20 2D82 01 ADD 2D83 61 PUSH2 0x2d6f 2D86 56 *JUMP // Stack delta = +0 // Outputs[2] // { // @2D7F memory[stack[-1] + stack[-3]:stack[-1] + stack[-3] + 0x20] = memory[stack[-1] + stack[-2]:stack[-1] + stack[-2] + 0x20] // @2D82 stack[-1] = 0x20 + stack[-1] // } // Block ends with unconditional jump to 0x2d6f label_2D87: // Incoming jump from 0x2D77, if !(0x00 < stack[-3]) // Incoming jump from 0x2D77, if !(stack[-1] < stack[-4]) // Inputs[2] // { // @2D88 stack[-4] // @2D89 stack[-1] // } 2D87 5B JUMPDEST 2D88 83 DUP4 2D89 81 DUP2 2D8A 11 GT 2D8B 15 ISZERO 2D8C 61 PUSH2 0x0bfe 2D8F 57 *JUMPI // Stack delta = +0 // Block ends with conditional jump to 0x0bfe, if !(stack[-1] > stack[-4]) label_2D90: // Incoming jump from 0x2D8F, if not !(stack[-1] > stack[-4]) // Inputs[3] // { // @2D94 stack[-4] // @2D95 stack[-3] // @2D97 stack[-5] // } 2D90 50 POP 2D91 50 POP 2D92 60 PUSH1 0x00 2D94 91 SWAP2 2D95 01 ADD 2D96 52 MSTORE 2D97 56 *JUMP // Stack delta = -5 // Outputs[1] { @2D96 memory[stack[-4] + stack[-3]:stack[-4] + stack[-3] + 0x20] = 0x00 } // Block ends with unconditional jump to stack[-5] 2D98 5B JUMPDEST 2D99 60 PUSH1 0x00 2D9B 61 PUSH2 0x077a 2D9E 82 DUP3 2D9F 60 PUSH1 0x00 2DA1 61 PUSH2 0x077a 2DA4 82 DUP3 2DA5 61 PUSH2 0x2db3 2DA8 56 *JUMP label_2DA9: // Incoming call from 0x22A2, returns to 0x22A3 // Inputs[2] // { // @2DAC stack[-1] // @2DB1 stack[-2] // } 2DA9 5B JUMPDEST 2DAA 60 PUSH1 0x1f 2DAC 01 ADD 2DAD 60 PUSH1 0x1f 2DAF 19 NOT 2DB0 16 AND 2DB1 90 SWAP1 2DB2 56 *JUMP // Stack delta = -1 // Outputs[1] { @2DB1 stack[-2] = ~0x1f & 0x1f + stack[-1] } // Block ends with unconditional jump to stack[-2] 2DB3 5B JUMPDEST 2DB4 60 PUSH1 0x60 2DB6 1B SHL 2DB7 90 SWAP1 2DB8 56 *JUMP label_2DB9: // Incoming jump from 0x1D0D // Inputs[1] { @2DBD stack[-1] } 2DB9 5B JUMPDEST 2DBA 61 PUSH2 0x2dc2 2DBD 81 DUP2 2DBE 61 PUSH2 0x2d26 2DC1 56 *JUMP // Stack delta = +2 // Outputs[2] // { // @2DBA stack[0] = 0x2dc2 // @2DBD stack[1] = stack[-1] // } // Block ends with call to 0x2d26, returns to 0x2DC2 label_2DC2: // Incoming return from call to 0x06DF at 0x2DDE // Incoming return from call to 0x2D26 at 0x2DC1 // Incoming return from call to 0x2D36 at 0x2DE7 // Inputs[2] // { // @2DC3 stack[-2] // @2DC4 stack[-1] // } 2DC2 5B JUMPDEST 2DC3 81 DUP2 2DC4 14 EQ 2DC5 61 PUSH2 0x07cb 2DC8 57 *JUMPI // Stack delta = -1 // Block ends with conditional jump to 0x07cb, if stack[-2] == stack[-1] label_2DC9: // Incoming jump from 0x2DC8, if not stack[-2] == stack[-1] // Inputs[1] { @2DCC memory[0x00:0x00] } 2DC9 60 PUSH1 0x00 2DCB 80 DUP1 2DCC FD *REVERT // Stack delta = +0 // Outputs[1] { @2DCC revert(memory[0x00:0x00]); } // Block terminates 2DCD 5B JUMPDEST 2DCE 61 PUSH2 0x2dc2 2DD1 81 DUP2 2DD2 61 PUSH2 0x2d31 2DD5 56 *JUMP label_2DD6: // Incoming call from 0x1DA4, returns to 0x077A // Inputs[1] { @2DDA stack[-1] } 2DD6 5B JUMPDEST 2DD7 61 PUSH2 0x2dc2 2DDA 81 DUP2 2DDB 61 PUSH2 0x06df 2DDE 56 *JUMP // Stack delta = +2 // Outputs[2] // { // @2DD7 stack[0] = 0x2dc2 // @2DDA stack[1] = stack[-1] // } // Block ends with call to 0x06df, returns to 0x2DC2 label_2DDF: // Incoming call from 0x1DAF, returns to 0x077A // Inputs[1] { @2DE3 stack[-1] } 2DDF 5B JUMPDEST 2DE0 61 PUSH2 0x2dc2 2DE3 81 DUP2 2DE4 61 PUSH2 0x2d36 2DE7 56 *JUMP // Stack delta = +2 // Outputs[2] // { // @2DE0 stack[0] = 0x2dc2 // @2DE3 stack[1] = stack[-1] // } // Block ends with call to 0x2d36, returns to 0x2DC2 2DE8 5B JUMPDEST 2DE9 61 PUSH2 0x2dc2 2DEC 81 DUP2 2DED 61 PUSH2 0x2d4f 2DF0 56 *JUMP 2DF1 FE *ASSERT 2DF2 A3 LOG3 2DF3 65 PUSH6 0x627a7a723158 2DFA 20 SHA3 2DFB 20 SHA3 2DFC 1C SHR 2DFD 77 PUSH24 0x075700435b8055570069128b2f78068fa97620d263c3a15d 2E16 9D SWAP14 2E17 6A PUSH11 0x5370796c6578706572696d 2E23 65 PUSH6 0x6e74616cf564 2E2A 73 PUSH20 0x6f6c63430005110040
Found this site useful?
Donations are greatly appreciated!
ETH: 0xB3F04f0c276fa1177c1779f6E1E156B2738ea392
Contact/hire: [email protected]