ETH Price: $2,680.84 (+2.35%)

Contract

0xa1dc717A9544dD98b399eE52e62F1Db0019C8b47
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep All152474052022-07-31 1:50:24928 days ago1659232224IN
0xa1dc717A...0019C8b47
0 ETH0.000168383.23434234
Transfer141195082022-02-01 10:06:471107 days ago1643710007IN
0xa1dc717A...0019C8b47
0.04302436 ETH0.0014359668.24924851
Transfer140479802022-01-21 8:54:201119 days ago1642755260IN
0xa1dc717A...0019C8b47
0.09979708 ETH0.0014423368.55195133
Transfer138501412021-12-21 18:28:581149 days ago1640111338IN
0xa1dc717A...0019C8b47
0.0985562 ETH0.0014489768.86760611
Transfer136982302021-11-27 20:39:111173 days ago1638045551IN
0xa1dc717A...0019C8b47
0.09880622 ETH0.0019335291.89776527
Transfer135606882021-11-06 3:43:451195 days ago1636170225IN
0xa1dc717A...0019C8b47
0.10532021 ETH0.0014669769.72318523
Transfer134268862021-10-16 4:23:501216 days ago1634358230IN
0xa1dc717A...0019C8b47
0.11080499 ETH0.0013477264.05515033
Transfer132938312021-09-25 8:21:191237 days ago1632558079IN
0xa1dc717A...0019C8b47
0.09898059 ETH0.0007593536.09095297
Sweep All132005482021-09-10 21:52:391251 days ago1631310759IN
0xa1dc717A...0019C8b47
0 ETH0.0047439691.12312312
Transfer131818342021-09-08 0:25:551254 days ago1631060755IN
0xa1dc717A...0019C8b47
0.04806249 ETH0.001841187.50478873
Transfer131313552021-08-31 5:02:301262 days ago1630386150IN
0xa1dc717A...0019C8b47
0.11308147 ETH0.0014841870.54120202
Transfer130173612021-08-13 14:26:441279 days ago1628864804IN
0xa1dc717A...0019C8b47
0.09920559 ETH0.0010112448.06288974
Transfer129290162021-07-30 20:08:531293 days ago1627675733IN
0xa1dc717A...0019C8b47
0.1000312 ETH0.000021041
Transfer128498922021-07-18 9:47:371306 days ago1626601657IN
0xa1dc717A...0019C8b47
0.10001854 ETH0.000021041
Transfer127725622021-07-06 7:25:571318 days ago1625556357IN
0xa1dc717A...0019C8b47
0.10006977 ETH0.000021041
Transfer126941812021-06-24 2:24:231330 days ago1624501463IN
0xa1dc717A...0019C8b47
0.10002275 ETH0.000021041
Transfer126086472021-06-10 19:21:271343 days ago1623352887IN
0xa1dc717A...0019C8b47
0.10000423 ETH0.000021041
Transfer125173762021-05-27 16:15:291357 days ago1622132129IN
0xa1dc717A...0019C8b47
0.06342612 ETH0.000021041
Transfer124722642021-05-20 16:09:271364 days ago1621526967IN
0xa1dc717A...0019C8b47
0.07783218 ETH0.000021041
Transfer124269962021-05-13 16:08:041371 days ago1620922084IN
0xa1dc717A...0019C8b47
0.08984335 ETH0.000021041
Transfer123816892021-05-06 15:59:561378 days ago1620316796IN
0xa1dc717A...0019C8b47
0.06187519 ETH0.000021041
Transfer123362902021-04-29 15:54:391385 days ago1619711679IN
0xa1dc717A...0019C8b47
0.07008671 ETH0.000021041
Transfer122909582021-04-22 15:49:551392 days ago1619106595IN
0xa1dc717A...0019C8b47
0.09971031 ETH0.000021041
Transfer122455352021-04-15 15:44:001399 days ago1618501440IN
0xa1dc717A...0019C8b47
0.08007968 ETH0.000021041
Sweep All122130132021-04-10 15:40:221404 days ago1618069222IN
0xa1dc717A...0019C8b47
0 ETH0.0041876888.23423423
View all transactions

Latest 11 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
152474052022-07-31 1:50:24928 days ago1659232224
0xa1dc717A...0019C8b47
0.65528969 ETH
132005482021-09-10 21:52:391251 days ago1631310759
0xa1dc717A...0019C8b47
1.30334966 ETH
122130132021-04-10 15:40:221404 days ago1618069222
0xa1dc717A...0019C8b47
0.58984174 ETH
119370032021-02-27 3:42:591447 days ago1614397379
0xa1dc717A...0019C8b47
0.85092182 ETH
116309142021-01-11 2:30:111494 days ago1610332211
0xa1dc717A...0019C8b47
0.65092575 ETH
113964272020-12-06 2:30:021530 days ago1607221802
0xa1dc717A...0019C8b47
0.7507136 ETH
111228522020-10-25 2:21:241572 days ago1603592484
0xa1dc717A...0019C8b47
0.8664057 ETH
108761502020-09-16 23:40:201610 days ago1600299620
0xa1dc717A...0019C8b47
1.46915052 ETH
102873922020-06-18 3:48:571701 days ago1592452137
0xa1dc717A...0019C8b47
1.47306928 ETH
98591162020-04-12 18:18:541767 days ago1586715534
0xa1dc717A...0019C8b47
1.09095192 ETH
94050072020-02-02 19:29:501837 days ago1580671790  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.