ETH Price: $3,176.93 (-3.47%)

Contract

0x984FD0C15a6Fb572B639E85dE6005bCD0a1dCD70
 

Overview

ETH Balance

0.000000006883356064 ETH

Eth Value

Less Than $0.01 (@ $3,176.93/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep121594772021-04-02 10:14:401322 days ago1617358480IN
0x984FD0C1...D0a1dCD70
0 ETH0.00877569154
Transfer121594492021-04-02 10:09:141322 days ago1617358154IN
0x984FD0C1...D0a1dCD70
0.20001195 ETH0.0006336330.1
Sweep120926252021-03-23 3:17:471332 days ago1616469467IN
0x984FD0C1...D0a1dCD70
0 ETH0.00865032151.8
Transfer120926002021-03-23 3:13:151332 days ago1616469195IN
0x984FD0C1...D0a1dCD70
0.2004938 ETH0.0006336330.1
Sweep120321572021-03-13 19:39:251341 days ago1615664365IN
0x984FD0C1...D0a1dCD70
0 ETH0.01303816228.8
Transfer120321392021-03-13 19:33:401341 days ago1615664020IN
0x984FD0C1...D0a1dCD70
0.20012561 ETH0.0006336330.1
Sweep119711582021-03-04 10:00:541351 days ago1614852054IN
0x984FD0C1...D0a1dCD70
0 ETH0.0053312393.555
Transfer119711442021-03-04 9:57:241351 days ago1614851844IN
0x984FD0C1...D0a1dCD70
0.20059117 ETH0.0006336330.1
Sweep119152392021-02-23 19:21:471359 days ago1614108107IN
0x984FD0C1...D0a1dCD70
0 ETH0.01148817201.6
Transfer119133832021-02-23 12:49:231360 days ago1614084563IN
0x984FD0C1...D0a1dCD70
0.20022256 ETH0.0006336330.1
Sweep118665132021-02-16 7:36:301367 days ago1613460990IN
0x984FD0C1...D0a1dCD70
0 ETH0.00577739101.38441919
Transfer118664912021-02-16 7:31:591367 days ago1613460719IN
0x984FD0C1...D0a1dCD70
0.20012458 ETH0.0006336330.1
Sweep117998672021-02-06 1:56:371377 days ago1612576597IN
0x984FD0C1...D0a1dCD70
0 ETH0.03049837535.2
Transfer117998442021-02-06 1:52:241377 days ago1612576344IN
0x984FD0C1...D0a1dCD70
0.20118677 ETH0.0006336330.1
Sweep116677472021-01-16 18:06:011397 days ago1610820361IN
0x984FD0C1...D0a1dCD70
0 ETH0.00752202132.00000187
Transfer116677262021-01-16 18:02:221397 days ago1610820142IN
0x984FD0C1...D0a1dCD70
0.20031043 ETH0.0006336330.1
Sweep113628932020-11-30 22:37:191444 days ago1606775839IN
0x984FD0C1...D0a1dCD70
0 ETH0.002256639.6
Transfer113628752020-11-30 22:33:511444 days ago1606775631IN
0x984FD0C1...D0a1dCD70
0.20025626 ETH0.0006336330.1
Sweep113081392020-11-22 12:59:371453 days ago1606049977IN
0x984FD0C1...D0a1dCD70
0 ETH0.003384959.4
Transfer113080062020-11-22 12:30:131453 days ago1606048213IN
0x984FD0C1...D0a1dCD70
0.20047912 ETH0.0006336330.1
Sweep112594162020-11-15 1:26:461460 days ago1605403606IN
0x984FD0C1...D0a1dCD70
0 ETH0.0017095530
Transfer112593982020-11-15 1:23:541460 days ago1605403434IN
0x984FD0C1...D0a1dCD70
0.2003554 ETH0.0006336330.1
Sweep112055632020-11-06 19:04:171468 days ago1604689457IN
0x984FD0C1...D0a1dCD70
0 ETH0.0017095530
Transfer112055442020-11-06 18:58:261468 days ago1604689106IN
0x984FD0C1...D0a1dCD70
0.20046517 ETH0.0006336330.1
Sweep111478202020-10-28 22:15:351477 days ago1603923335IN
0x984FD0C1...D0a1dCD70
0 ETH0.0017095530
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
121594772021-04-02 10:14:401322 days ago1617358480
0x984FD0C1...D0a1dCD70
0.20001195 ETH
120926252021-03-23 3:17:471332 days ago1616469467
0x984FD0C1...D0a1dCD70
0.20049381 ETH
120321572021-03-13 19:39:251341 days ago1615664365
0x984FD0C1...D0a1dCD70
0.20012561 ETH
119711582021-03-04 10:00:541351 days ago1614852054
0x984FD0C1...D0a1dCD70
0.20059117 ETH
119152392021-02-23 19:21:471359 days ago1614108107
0x984FD0C1...D0a1dCD70
0.20022257 ETH
118665132021-02-16 7:36:301367 days ago1613460990
0x984FD0C1...D0a1dCD70
0.20012458 ETH
117998672021-02-06 1:56:371377 days ago1612576597
0x984FD0C1...D0a1dCD70
0.20118678 ETH
116677472021-01-16 18:06:011397 days ago1610820361
0x984FD0C1...D0a1dCD70
0.20031043 ETH
113628932020-11-30 22:37:191444 days ago1606775839
0x984FD0C1...D0a1dCD70
0.20025627 ETH
113081392020-11-22 12:59:371453 days ago1606049977
0x984FD0C1...D0a1dCD70
0.20047912 ETH
112594162020-11-15 1:26:461460 days ago1605403606
0x984FD0C1...D0a1dCD70
0.20035541 ETH
112055632020-11-06 19:04:171468 days ago1604689457
0x984FD0C1...D0a1dCD70
0.20046517 ETH
111478202020-10-28 22:15:351477 days ago1603923335
0x984FD0C1...D0a1dCD70
0.20055819 ETH
110975102020-10-21 5:08:081485 days ago1603256888
0x984FD0C1...D0a1dCD70
0.20018532 ETH
110278342020-10-10 13:01:351496 days ago1602334895
0x984FD0C1...D0a1dCD70
0.20038934 ETH
109419262020-09-27 2:23:591509 days ago1601173439
0x984FD0C1...D0a1dCD70
0.20022408 ETH
108813412020-09-17 18:23:251518 days ago1600367005
0x984FD0C1...D0a1dCD70
0.20034894 ETH
108182152020-09-08 2:13:241528 days ago1599531204
0x984FD0C1...D0a1dCD70
0.20038685 ETH
107745962020-09-01 9:58:301535 days ago1598954310
0x984FD0C1...D0a1dCD70
0.20042394 ETH
107010012020-08-21 2:51:011546 days ago1597978261
0x984FD0C1...D0a1dCD70
0.20067295 ETH
101320212020-05-25 1:24:131634 days ago1590369853
0x984FD0C1...D0a1dCD70
0.20028036 ETH
100532862020-05-12 19:43:541646 days ago1589312634
0x984FD0C1...D0a1dCD70
0.20031809 ETH
99713612020-04-30 2:52:061659 days ago1588215126
0x984FD0C1...D0a1dCD70
0.20018528 ETH
98812992020-04-16 4:18:031673 days ago1587010683
0x984FD0C1...D0a1dCD70
0.20014027 ETH
97971132020-04-03 5:26:131686 days ago1585891573
0x984FD0C1...D0a1dCD70
0.20024507 ETH
View All Internal Transactions
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xd1DD82d1...18D918504
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.11+commit.68ef5810

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2017-08-15
*/

pragma solidity ^0.4.10;

// Copyright 2017 Bittrex

contract AbstractSweeper {
    function sweep(address token, uint amount) returns (bool);

    function () { throw; }

    Controller controller;

    function AbstractSweeper(address _controller) {
        controller = Controller(_controller);
    }

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

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

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

contract DefaultSweeper is AbstractSweeper {
    function DefaultSweeper(address controller)
             AbstractSweeper(controller) {}

    function sweep(address _token, uint _amount)
    canSweep
    returns (bool) {
        bool success = false;
        address destination = controller.destination();

        if (_token != address(0)) {
            Token token = Token(_token);
            uint amount = _amount;
            if (amount > token.balanceOf(this)) {
                return false;
            }

            success = token.transfer(destination, amount);
        }
        else {
            uint amountInWei = _amount;
            if (amountInWei > this.balance) {
                return false;
            }

            success = destination.send(amountInWei);
        }

        if (success) {
            controller.logSweep(this, destination, _token, _amount);
        }
        return success;
    }
}

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

    function () public payable { }

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

    function sweep(address _token, uint _amount)
    returns (bool) {
        (_amount);
        return sweeperList.sweeperOf(_token).delegatecall(msg.data);
    }
}

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

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

    address public destination;

    bool public halted;

    event LogNewWallet(address receiver);
    event LogSweep(address indexed from, address indexed to, address indexed token, uint amount);
    
    modifier onlyOwner() {
        if (msg.sender != owner) throw; 
        _;
    }

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

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

    function Controller() 
    {
        owner = msg.sender;
        destination = msg.sender;
        authorizedCaller = msg.sender;
    }

    function changeAuthorizedCaller(address _newCaller) onlyOwner {
        authorizedCaller = _newCaller;
    }

    function changeDestination(address _dest) onlyOwner {
        destination = _dest;
    }

    function changeOwner(address _owner) onlyOwner {
        owner = _owner;
    }

    function makeWallet() onlyAdmins returns (address wallet)  {
        wallet = address(new UserWallet(this));
        LogNewWallet(wallet);
    }

    function halt() onlyAdmins {
        halted = true;
    }

    function start() onlyOwner {
        halted = false;
    }

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

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

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

    function logSweep(address from, address to, address token, uint amount) {
        LogSweep(from, to, token, amount);
    }
}

Contract Security Audit

Contract ABI

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

Deployed Bytecode

0x606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029

Swarm Source

bzzr://4cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd1

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.