Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Loading...
Loading
Contract Self Destruct called at Txn Hash 0xc6f701d37ee6bab3322ce52c9d7f8c2129ebede74cd62615c017a17d937e830f
Contract Name:
ThisExternalAssembly
Compiler Version
v0.3.5-2016-08-07-f7af7de
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2016-08-08 */ contract ThisExternalAssembly { uint public numcalls; uint public numcallsinternal; uint public numfails; uint public numsuccesses; address owner; event logCall(uint indexed _numcalls, uint indexed _numcallsinternal); modifier onlyOwner { if (msg.sender != owner) throw; _ } modifier onlyThis { if (msg.sender != address(this)) throw; _ } // constructor function ThisExternalAssembly() { owner = msg.sender; } function failSend() external onlyThis returns (bool) { // storage change + nested external call numcallsinternal++; owner.send(42); // placeholder for state checks if (true) throw; // never happens in this case return true; } function doCall(uint _gas) onlyOwner { numcalls++; address addr = address(this); bytes4 sig = bytes4(sha3("failSend()")); bool ret; // work around `solc` safeguards for throws in external calls // https://ethereum.stackexchange.com/questions/6354/ assembly { let x := mload(0x40) // read "empty memory" pointer mstore(x,sig) ret := call( _gas, // gas amount addr, // recipient account 0, // value (no need to pass) x, // input start location 0x4, // input size - just the sig x, // output start location 0x1) // output size (bool - 1 byte) //ret := mload(x) // no return value ever written :/ mstore(0x40,add(x,0x4)) // just in case, roll the tape } if (ret) { numsuccesses++; } else { numfails++; } // mostly helps with function identification if disassembled logCall(numcalls, numcallsinternal); } // will clean-up :) function selfDestruct() onlyOwner { selfdestruct(owner); } function() { throw; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":true,"inputs":[],"name":"numsuccesses","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"numfails","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"numcalls","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"numcallsinternal","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":false,"inputs":[],"name":"selfDestruct","outputs":[],"type":"function"},{"constant":false,"inputs":[],"name":"failSend","outputs":[{"name":"","type":"bool"}],"type":"function"},{"constant":false,"inputs":[{"name":"_gas","type":"uint256"}],"name":"doCall","outputs":[],"type":"function"},{"inputs":[],"type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_numcalls","type":"uint256"},{"indexed":true,"name":"_numcallsinternal","type":"uint256"}],"name":"logCall","type":"event"}]
Contract Creation Code
606060405260048054600160a060020a0319163317905561020e806100246000396000f3606060405236156100615760e060020a60003504634a943eb381146100695780635d2230d7146100725780636e8b7c231461007b5780638f259117146100845780639cb8a26a1461008d578063b764e273146100ac578063f1bca7a4146100d1575b6100f9610002565b6100fb60035481565b6100fb60025481565b6100fb60005481565b6100fb60015481565b6100f9600454600160a060020a03908116339091161461012157610002565b61010d600030600160a060020a031633600160a060020a031614151561012f57610002565b6100f96004356004546000908190819033600160a060020a0390811691161461016157610002565b005b60408051918252519081900360200190f35b604080519115158252519081900360200190f35b600454600160a060020a0316ff5b6001805481019055600454604051600160a060020a0390911690600090602a9082818181858883f15050505050610002565b6000805460019081018255604080517f6661696c53656e642829000000000000000000000000000000000000000000008152905190819003600a01812080825230965094509182906004908290888af19150600481016040525080156101cf576003805460010190556101d9565b6002805460010190555b6001546000805460405190917fe187a550592d0937aaaf3d9b82a1798666ec120c2af2d58f114ff1f6faaaa96e91a35050505056
Deployed Bytecode
0x606060405236156100615760e060020a60003504634a943eb381146100695780635d2230d7146100725780636e8b7c231461007b5780638f259117146100845780639cb8a26a1461008d578063b764e273146100ac578063f1bca7a4146100d1575b6100f9610002565b6100fb60035481565b6100fb60025481565b6100fb60005481565b6100fb60015481565b6100f9600454600160a060020a03908116339091161461012157610002565b61010d600030600160a060020a031633600160a060020a031614151561012f57610002565b6100f96004356004546000908190819033600160a060020a0390811691161461016157610002565b005b60408051918252519081900360200190f35b604080519115158252519081900360200190f35b600454600160a060020a0316ff5b6001805481019055600454604051600160a060020a0390911690600090602a9082818181858883f15050505050610002565b6000805460019081018255604080517f6661696c53656e642829000000000000000000000000000000000000000000008152905190819003600a01812080825230965094509182906004908290888af19150600481016040525080156101cf576003805460010190556101d9565b6002805460010190555b6001546000805460405190917fe187a550592d0937aaaf3d9b82a1798666ec120c2af2d58f114ff1f6faaaa96e91a35050505056
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 35 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.