Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 17 from a total of 17 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Transfer | 13689596 | 1077 days ago | IN | 1.05885358 ETH | 0.004372 | ||||
Transfer | 13630294 | 1087 days ago | IN | 1.505 ETH | 0.00333433 | ||||
Transfer | 13629949 | 1087 days ago | IN | 1.07209157 ETH | 0.00384416 | ||||
Transfer | 13628801 | 1087 days ago | IN | 1.06927213 ETH | 0.00371139 | ||||
Transfer | 13628754 | 1087 days ago | IN | 1.16132188 ETH | 0.00426172 | ||||
Transfer | 13628732 | 1087 days ago | IN | 0.69357664 ETH | 0.00470321 | ||||
Transfer | 13626806 | 1087 days ago | IN | 0.71886423 ETH | 0.00438833 | ||||
Transfer | 13626363 | 1087 days ago | IN | 2.22083258 ETH | 0.00401062 | ||||
Transfer | 13591419 | 1093 days ago | IN | 2.1567621 ETH | 0.00894796 | ||||
Transfer | 13591100 | 1093 days ago | IN | 0.17367669 ETH | 0.00915269 | ||||
Transfer | 13590757 | 1093 days ago | IN | 0.10831009 ETH | 0.00651597 | ||||
Transfer | 13481720 | 1110 days ago | IN | 0.0300518 ETH | 0.00324809 | ||||
Transfer | 13388083 | 1125 days ago | IN | 0.05364049 ETH | 0.00195005 | ||||
Transfer | 13347930 | 1131 days ago | IN | 0.03028655 ETH | 0.00350967 | ||||
Transfer | 13341366 | 1132 days ago | IN | 0.06331586 ETH | 0.00150729 | ||||
Transfer | 13310020 | 1137 days ago | IN | 0.0301402 ETH | 0.00311053 | ||||
0x60806040 | 12546346 | 1256 days ago | IN | 0 ETH | 0.00548935 |
Latest 16 internal transactions
Advanced mode:
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
13689596 | 1077 days ago | 1.05885358 ETH | ||||
13630294 | 1087 days ago | 1.505 ETH | ||||
13629949 | 1087 days ago | 1.07209157 ETH | ||||
13628801 | 1087 days ago | 1.06927213 ETH | ||||
13628754 | 1087 days ago | 1.16132188 ETH | ||||
13628732 | 1087 days ago | 0.69357664 ETH | ||||
13626806 | 1087 days ago | 0.71886423 ETH | ||||
13626363 | 1087 days ago | 2.22083258 ETH | ||||
13591419 | 1093 days ago | 2.1567621 ETH | ||||
13591100 | 1093 days ago | 0.17367669 ETH | ||||
13590757 | 1093 days ago | 0.10831009 ETH | ||||
13481720 | 1110 days ago | 0.0300518 ETH | ||||
13388083 | 1125 days ago | 0.05364049 ETH | ||||
13347930 | 1131 days ago | 0.03028655 ETH | ||||
13341366 | 1132 days ago | 0.06331586 ETH | ||||
13310020 | 1137 days ago | 0.0301402 ETH |
Loading...
Loading
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0x7896B48c...8d0553B33 The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
etherForwarder
Compiler Version
v0.5.11+commit.c082d0b4
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-05-26 */ pragma solidity 0.5.11; // 0.5.11+commit.c082d0b4 Enable optimization 200 contract ERC20Interface { function transfer(address _to, uint256 _value) public returns (bool success); function balanceOf(address _owner) public view returns (uint256 balance); } interface BadERC20 { function transfer(address to, uint value) external; } contract etherForwarder { address payable public ownerAddress; address payable public trezorAddress; constructor(address payable _trezorAddress) public { ownerAddress = msg.sender; trezorAddress = _trezorAddress; } modifier onlyOwner { if (msg.sender != ownerAddress) { revert(); } _; } modifier onlyTrezorOwner { if (msg.sender != trezorAddress) { revert(); } _; } function() external payable { if (!trezorAddress.send(msg.value)) { revert(); } } function changeOwner(address payable newOwnerAddress) external onlyTrezorOwner { trezorAddress = newOwnerAddress; } function transferTokens(address tokenContractAddress) external onlyOwner { ERC20Interface instance = ERC20Interface(tokenContractAddress); address forwarderAddress = address(this); uint256 forwarderBalance = instance.balanceOf(forwarderAddress); if (forwarderBalance == 0) { return; } if (!safeTransfer(tokenContractAddress,forwarderBalance)) { revert(); } //if (!instance.transfer(trezorAddress, forwarderBalance)) { // revert(); //} } function withdrawEther() public { uint256 balance = address(this).balance; if (!trezorAddress.send(balance)) { revert(); } } function safeTransfer(address token, uint value) public returns (bool result) { BadERC20(token).transfer(trezorAddress,value); assembly { switch returndatasize() case 0 { // This is our BadToken result := not(0) // result is true } case 32 { // This is our GoodToken returndatacopy(0, 0, 32) result := mload(0) // result == returndata of external call } default { // This is not an ERC20 token revert(0, 0) } } require(result); // revert() if result is false } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"internalType":"address","name":"tokenContractAddress","type":"address"}],"name":"transferTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"safeTransfer","outputs":[{"internalType":"bool","name":"result","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"withdrawEther","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"trezorAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ownerAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address payable","name":"newOwnerAddress","type":"address"}],"name":"changeOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_trezorAddress","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"}]
Deployed Bytecode
0x6080604052600436106100555760003560e01c80630c89a0df14610088578063423f6cef146100bb5780637362377b146101085780638926a9761461011d5780638f84aa091461014e578063a6f9dae114610163575b6001546040516001600160a01b03909116903480156108fc02916000818181858888f1935050505061008657600080fd5b005b34801561009457600080fd5b50610086600480360360208110156100ab57600080fd5b50356001600160a01b0316610196565b3480156100c757600080fd5b506100f4600480360360408110156100de57600080fd5b506001600160a01b038135169060200135610250565b604080519115158252519081900360200190f35b34801561011457600080fd5b506100866102fa565b34801561012957600080fd5b5061013261032d565b604080516001600160a01b039092168252519081900360200190f35b34801561015a57600080fd5b5061013261033c565b34801561016f57600080fd5b506100866004803603602081101561018657600080fd5b50356001600160a01b031661034b565b6000546001600160a01b031633146101ad57600080fd5b604080516370a0823160e01b8152306004820181905291518392916000916001600160a01b038516916370a08231916024808301926020929190829003018186803b1580156101fb57600080fd5b505afa15801561020f573d6000803e3d6000fd5b505050506040513d602081101561022557600080fd5b50519050806102365750505061024d565b6102408482610250565b61024957600080fd5b5050505b50565b6001546040805163a9059cbb60e01b81526001600160a01b03928316600482015260248101849052905160009285169163a9059cbb916044808301928692919082900301818387803b1580156102a557600080fd5b505af11580156102b9573d6000803e3d6000fd5b505050503d600081146102d357602081146102dd57600080fd5b60001991506102e9565b60206000803e60005191505b50806102f457600080fd5b92915050565b6001546040513031916001600160a01b03169082156108fc029083906000818181858888f1935050505061024d57600080fd5b6001546001600160a01b031681565b6000546001600160a01b031681565b6001546001600160a01b0316331461036257600080fd5b600180546001600160a01b0319166001600160a01b039290921691909117905556fea265627a7a72315820207c57aa07415a066d04a772dcc5745bd04557ea3e1a9f0613fb536f5537959b64736f6c634300050b0032
Deployed Bytecode Sourcemap
349:2026:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;844:13;;:29;;-1:-1:-1;;;;;844:13:0;;;;863:9;844:29;;;;;:13;:29;:13;:29;863:9;844:13;:29;;;;;;;839:61;;884:8;;;839:61;349:2026;1040:512;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1040:512:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1040:512:0;-1:-1:-1;;;;;1040:512:0;;:::i;1717:655::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1717:655:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;1717:655:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;1558:153;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1558:153:0;;;:::i;418:36::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;418:36:0;;;:::i;:::-;;;;-1:-1:-1;;;;;418:36:0;;;;;;;;;;;;;;378:35;;8:9:-1;5:2;;;30:1;27;20:12;5:2;378:35:0;;;:::i;911:123::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;911:123:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;911:123:0;-1:-1:-1;;;;;911:123:0;;:::i;1040:512::-;637:12;;-1:-1:-1;;;;;637:12:0;623:10;:26;619:57;;660:8;;;619:57;1263:36;;;-1:-1:-1;;;1263:36:0;;1224:4;1263:36;;;;;;;;1161:20;;1224:4;1120:23;;-1:-1:-1;;;;;1263:18:0;;;;;:36;;;;;;;;;;;;;;:18;:36;;;5:2:-1;;;;30:1;27;20:12;5:2;1263:36:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1263:36:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1263:36:0;;-1:-1:-1;1312:21:0;1308:50;;1344:7;;;;;1308:50;1371:51;1384:20;1405:16;1371:12;:51::i;:::-;1366:85;;1435:8;;;1366:85;682:1;;;;1040:512;:::o;1717:655::-;1828:13;;1803:45;;;-1:-1:-1;;;1803:45:0;;-1:-1:-1;;;;;1828:13:0;;;1803:45;;;;;;;;;;;;1783:11;;1803:24;;;;;:45;;;;;1783:11;;1803:45;;;;;;;1783:11;1803:24;:45;;;5:2:-1;;;;30:1;27;20:12;5:2;1803:45:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1803:45:0;;;;1882:16;1911:1;1906:113;;;;2032:2;2027:171;;;;2283:1;2280;2273:12;1906:113;-1:-1:-1;;1977:6:0;-1:-1:-1;1906:113:0;;2027:171;2110:2;2107:1;2104;2089:24;2139:1;2133:8;2123:18;;1875:419;;2315:6;2307:15;;;;;;1717:655;;;;:::o;1558:153::-;1650:13;;:27;;1623:4;1615:21;;-1:-1:-1;;;;;1650:13:0;;:27;;;;;1615:21;;1597:15;1650:27;1597:15;1650:27;1615:21;1650:13;:27;;;;;;;1645:61;;1690:8;;;418:36;;;-1:-1:-1;;;;;418:36:0;;:::o;378:35::-;;;-1:-1:-1;;;;;378:35:0;;:::o;911:123::-;745:13;;-1:-1:-1;;;;;745:13:0;731:10;:27;727:58;;769:8;;;727:58;997:13;:31;;-1:-1:-1;;;;;;997:31:0;-1:-1:-1;;;;;997:31:0;;;;;;;;;;911:123::o
Swarm Source
bzzr://207c57aa07415a066d04a772dcc5745bd04557ea3e1a9f0613fb536f5537959b
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.