ETH Price: $2,671.71 (-2.82%)

Contract

0x0c86dAb619D7E109E8663d51c956417898A6Bb64
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep All197802242024-05-02 5:02:23287 days ago1714626143IN
0x0c86dAb6...898A6Bb64
0 ETH0.000208244
Transfer148815812022-05-31 23:37:15989 days ago1654040235IN
0x0c86dAb6...898A6Bb64
0.11460966 ETH0.0012190458.04960901
Transfer147725162022-05-14 8:20:121006 days ago1652516412IN
0x0c86dAb6...898A6Bb64
0.01701412 ETH0.0006106429.02288583
Transfer147483772022-05-10 11:46:331010 days ago1652183193IN
0x0c86dAb6...898A6Bb64
0.09560331 ETH0.0005968128.36569502
Transfer146438022022-04-23 22:41:121027 days ago1650753672IN
0x0c86dAb6...898A6Bb64
0.09562681 ETH0.0006612731.42922191
Sweep All145737152022-04-12 23:16:161038 days ago1649805376IN
0x0c86dAb6...898A6Bb64
0 ETH0.0012558724.12312312
Transfer145402612022-04-07 18:11:411043 days ago1649355101IN
0x0c86dAb6...898A6Bb64
0.09563125 ETH0.0014231867.64184149
Transfer144478952022-03-24 8:27:201057 days ago1648110440IN
0x0c86dAb6...898A6Bb64
0.04560871 ETH0.000432920.57535641
Transfer144033702022-03-17 10:04:071064 days ago1647511447IN
0x0c86dAb6...898A6Bb64
0.09952535 ETH0.0006042528.71923709
Transfer142874442022-02-27 9:35:521082 days ago1645954552IN
0x0c86dAb6...898A6Bb64
0.099623 ETH0.0003812618.12103926
Transfer139479172022-01-05 21:41:391135 days ago1641418899IN
0x0c86dAb6...898A6Bb64
0.09505225 ETH0.00551438262.09046307
Transfer138394392021-12-20 2:42:371151 days ago1639968157IN
0x0c86dAb6...898A6Bb64
0.09887769 ETH0.0011425354.30295896
Transfer137395442021-12-04 11:25:461167 days ago1638617146IN
0x0c86dAb6...898A6Bb64
0.09808237 ETH0.0018338687.16075955
Transfer136657342021-11-22 17:09:571179 days ago1637600997IN
0x0c86dAb6...898A6Bb64
0.09759549 ETH0.00317001150.66603181
Transfer135793802021-11-09 1:50:451192 days ago1636422645IN
0x0c86dAb6...898A6Bb64
0.09501769 ETH0.00479549227.92270137
Transfer135000442021-10-27 14:54:311205 days ago1635346471IN
0x0c86dAb6...898A6Bb64
0.09775497 ETH0.00363191172.61961559
Transfer134314892021-10-16 21:34:421216 days ago1634420082IN
0x0c86dAb6...898A6Bb64
0.09848925 ETH0.0015691674.58008702
Sweep All134246892021-10-15 20:11:011217 days ago1634328661IN
0x0c86dAb6...898A6Bb64
0 ETH0.00664558127.64995838
Transfer133585082021-10-05 10:19:201227 days ago1633429160IN
0x0c86dAb6...898A6Bb64
0.09832876 ETH0.001996694.89581612
Transfer132838672021-09-23 19:30:241239 days ago1632425424IN
0x0c86dAb6...898A6Bb64
0.0984539 ETH0.0016017676.1294615
Transfer132171442021-09-13 11:42:171249 days ago1631533337IN
0x0c86dAb6...898A6Bb64
0.0991968 ETH0.0008967542.62131358
Transfer131490822021-09-02 22:44:331260 days ago1630622673IN
0x0c86dAb6...898A6Bb64
0.09845617 ETH0.0021538102.3670856
Transfer130794102021-08-23 4:25:131270 days ago1629692713IN
0x0c86dAb6...898A6Bb64
0.09855335 ETH0.0015611274.19800528
Transfer130120662021-08-12 18:48:221281 days ago1628794102IN
0x0c86dAb6...898A6Bb64
0.09941728 ETH0.0006854732.57947344
Transfer129077482021-07-27 11:09:361297 days ago1627384176IN
0x0c86dAb6...898A6Bb64
0.06896232 ETH0.000021041
View all transactions

Latest 10 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
197802242024-05-02 5:02:23287 days ago1714626143
0x0c86dAb6...898A6Bb64
0.20824425 ETH
145737152022-04-12 23:16:161038 days ago1649805376
0x0c86dAb6...898A6Bb64
1.02125807 ETH
134246892021-10-15 20:11:011217 days ago1634328661
0x0c86dAb6...898A6Bb64
1.07547777 ETH
122130132021-04-10 15:40:221405 days ago1618069222
0x0c86dAb6...898A6Bb64
0.5807821 ETH
119657022021-03-03 13:57:241443 days ago1614779844
0x0c86dAb6...898A6Bb64
0.81463513 ETH
115915972021-01-05 1:34:471501 days ago1609810487
0x0c86dAb6...898A6Bb64
0.85116761 ETH
112443152020-11-12 18:06:161554 days ago1605204376
0x0c86dAb6...898A6Bb64
0.90124792 ETH
108761512020-09-16 23:40:311611 days ago1600299631
0x0c86dAb6...898A6Bb64
1.34810671 ETH
94835042020-02-14 21:08:381826 days ago1581714518
0x0c86dAb6...898A6Bb64
0.55005405 ETH
69402012018-12-23 20:05:512244 days ago1545595551  Contract Creation0 ETH
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xF2f313A4...Fd1BF0dA9
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
UserWallet

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2021-02-27
*/

pragma solidity ^0.4.24;

contract AbstractSweeper {
    function sweepAll(address token) public returns (bool);

    function() public { revert(); }

    Controller controller;

    constructor(address _controller) public {
        controller = Controller(_controller);
    }

    modifier canSweep() {
        if(msg.sender != controller.authorizedCaller() && msg.sender != controller.owner()){ revert(); }
        if(controller.halted()){ revert(); }
        _;
    }
}

contract Token {
    function balanceOf(address a) public pure returns (uint) {
        (a);
        return 0;
    }

    function transfer(address a, uint val) public pure returns (bool) {
        (a);
        (val);
        return false;
    }
}

contract DefaultSweeper is AbstractSweeper {
    constructor(address controller) AbstractSweeper(controller) public { }

    function sweepAll(address _token) public canSweep returns (bool) {
        bool success = false;
        address destination = controller.destination();

        if(_token != address(0)){
            Token token = Token(_token);
            success = token.transfer(destination, token.balanceOf(this));
        }else{
            success = destination.send(address(this).balance);
        }
        return success;
    }
}

contract UserWallet {
    AbstractSweeperList sweeperList;
    constructor(address _sweeperlist) public {
        sweeperList = AbstractSweeperList(_sweeperlist);
    }

    function() public payable { }

    function tokenFallback(address _from, uint _value, bytes _data) public pure {
        (_from);
        (_value);
        (_data);
    }

    function sweepAll(address _token) public returns (bool) {
        return sweeperList.sweeperOf(_token).delegatecall(msg.data);
    }
}

contract AbstractSweeperList {
    function sweeperOf(address _token) public returns (address);
}

contract Controller is AbstractSweeperList {
    address public owner;
    address public authorizedCaller;

    address public destination;

    bool public halted;

    event NewWalletCreated(address receiver);

    modifier onlyOwner() {
        if(msg.sender != owner){ revert(); }
        _;
    }

    modifier onlyAuthorizedCaller() {
        if(msg.sender != authorizedCaller){ revert(); }
        _;
    }

    modifier onlyAdmins() {
        if(msg.sender != authorizedCaller && msg.sender != owner){ revert(); } 
        _;
    }

    constructor() public {
        owner = msg.sender;
        destination = msg.sender;
        authorizedCaller = msg.sender;
    }

    function setAuthorizedCaller(address _newCaller) public onlyOwner {
        authorizedCaller = _newCaller;
    }

    function setDestination(address _dest) public onlyOwner {
        destination = _dest;
    }

    function setOwner(address _owner) public onlyOwner {
        owner = _owner;
    }

    function newWallet() public onlyAdmins returns (address wallet)  {
        wallet = address(new UserWallet(this));
        emit NewWalletCreated(wallet);
    }

    function halt() public onlyAdmins {
        halted = true;
    }

    function start() public onlyOwner {
        halted = false;
    }

    address public defaultSweeper = address(new DefaultSweeper(this));
    mapping (address => address) sweepers;

    function addSweeper(address _token, address _sweeper) public onlyOwner {
        sweepers[_token] = _sweeper;
    }

    function sweeperOf(address _token) public returns (address) {
        address sweeper = sweepers[_token];
        if(sweeper == 0){ sweeper = defaultSweeper; }
        return sweeper;
    }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[{"name":"_from","type":"address"},{"name":"_value","type":"uint256"},{"name":"_data","type":"bytes"}],"name":"tokenFallback","outputs":[],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"sweepAll","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_sweeperlist","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"}]

Deployed Bytecode

0x60806040526004361061004b5763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663c0ee0b8a811461004d578063c18cfe86146100c3575b005b34801561005957600080fd5b50604080516020600460443581810135601f810184900484028501840190955284845261004b94823573ffffffffffffffffffffffffffffffffffffffff169460248035953695946064949201919081908401838280828437509497506101059650505050505050565b3480156100cf57600080fd5b506100f173ffffffffffffffffffffffffffffffffffffffff6004351661010a565b604080519115158252519081900360200190f35b505050565b60008054604080517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff858116600483015291519190921691633c18d31891602480830192602092919082900301818787803b15801561017f57600080fd5b505af1158015610193573d6000803e3d6000fd5b505050506040513d60208110156101a957600080fd5b505160405173ffffffffffffffffffffffffffffffffffffffff90911690600090369080838380828437820191505092505050600060405180830381855af49493505050505600a165627a7a72305820ec90d4e55fb69f839fa555767145d6ac7a8f1aa98ed098b09c220c4a34f02ba10029

Deployed Bytecode Sourcemap

1322:501:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;1539:139;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1539:139:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1539:139:0;;-1:-1:-1;1539:139:0;;-1:-1:-1;;;;;;;1539:139:0;1686:134;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1686:134:0;;;;;;;;;;;;;;;;;;;;;;;;;1539:139;;;;:::o;1686:134::-;1736:4;1760:11;;:29;;;;;;:11;:29;;;;;;;;;:11;;;;;:21;;:29;;;;;;;;;;;;;;1736:4;1760:11;:29;;;5:2:-1;;;;30:1;27;20:12;5:2;1760:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1760:29:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1760:29:0;:52;;:42;;;;;1803:8;;;;1760:52;1803:8;;;;1760:52;;;;;;;;;;;;;;;;;;;;;;1686:134;-1:-1:-1;;;;1686:134:0:o

Swarm Source

bzzr://ec90d4e55fb69f839fa555767145d6ac7a8f1aa98ed098b09c220c4a34f02ba1

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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.