ETH Price: $2,752.08 (+0.47%)

Contract

0x62f5C71BD5859021cf1d6AC4Dd0f1105807C6aa2
 

Overview

ETH Balance

0.010501098072759813 ETH

Eth Value

$28.90 (@ $2,752.08/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer63206452018-09-12 22:43:262353 days ago1536792206IN
0x62f5C71B...5807C6aa2
0.01050108 ETH0.000021051
Sweep62788412018-09-05 22:42:082360 days ago1536187328IN
0x62f5C71B...5807C6aa2
0 ETH0.0024996550
Transfer62788222018-09-05 22:38:442360 days ago1536187124IN
0x62f5C71B...5807C6aa2
0.05305434 ETH0.000021051
Sweep62727072018-09-04 22:05:432361 days ago1536098743IN
0x62f5C71B...5807C6aa2
0 ETH0.0024996550
Transfer62726832018-09-04 21:59:482361 days ago1536098388IN
0x62f5C71B...5807C6aa2
0.0500713 ETH0.000021051
Sweep62669742018-09-03 23:04:112362 days ago1536015851IN
0x62f5C71B...5807C6aa2
0 ETH0.0024996550
Transfer62669572018-09-03 22:58:562362 days ago1536015536IN
0x62f5C71B...5807C6aa2
0.05012961 ETH0.000021051
Sweep62613042018-09-02 23:59:472363 days ago1535932787IN
0x62f5C71B...5807C6aa2
0 ETH0.0024996550
Transfer62612872018-09-02 23:54:102363 days ago1535932450IN
0x62f5C71B...5807C6aa2
0.05014863 ETH0.000021051
Sweep62556162018-09-02 1:27:002364 days ago1535851620IN
0x62f5C71B...5807C6aa2
0 ETH0.0024996550
Transfer62556012018-09-02 1:23:232364 days ago1535851403IN
0x62f5C71B...5807C6aa2
0.05008591 ETH0.000021051
Sweep62499712018-09-01 2:09:582365 days ago1535767798IN
0x62f5C71B...5807C6aa2
0 ETH0.0024996550
Transfer62499522018-09-01 2:05:382365 days ago1535767538IN
0x62f5C71B...5807C6aa2
0.05000592 ETH0.000021051
Sweep62442792018-08-31 3:11:352366 days ago1535685095IN
0x62f5C71B...5807C6aa2
0 ETH0.0024996550
Transfer62442602018-08-31 3:07:212366 days ago1535684841IN
0x62f5C71B...5807C6aa2
0.05003143 ETH0.000021051
Sweep62387232018-08-30 4:40:092367 days ago1535604009IN
0x62f5C71B...5807C6aa2
0 ETH0.0024996550
Transfer62386972018-08-30 4:35:272367 days ago1535603727IN
0x62f5C71B...5807C6aa2
0.05014779 ETH0.000021051
Sweep62330122018-08-29 5:37:452367 days ago1535521065IN
0x62f5C71B...5807C6aa2
0 ETH0.0024996550
Transfer62329942018-08-29 5:32:382367 days ago1535520758IN
0x62f5C71B...5807C6aa2
0.05030859 ETH0.000021051
Sweep62272542018-08-28 6:09:462368 days ago1535436586IN
0x62f5C71B...5807C6aa2
0 ETH0.0024996550
Transfer62272292018-08-28 6:03:522368 days ago1535436232IN
0x62f5C71B...5807C6aa2
0.05002113 ETH0.000021051
Sweep62213552018-08-27 6:24:542369 days ago1535351094IN
0x62f5C71B...5807C6aa2
0 ETH0.0024996550
Transfer62213282018-08-27 6:17:572369 days ago1535350677IN
0x62f5C71B...5807C6aa2
0.06016857 ETH0.000021051
Sweep62156432018-08-26 7:12:342370 days ago1535267554IN
0x62f5C71B...5807C6aa2
0 ETH0.0024996550
Transfer62156012018-08-26 7:02:402370 days ago1535266960IN
0x62f5C71B...5807C6aa2
0.0601811 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
62788412018-09-05 22:42:082360 days ago1536187328
0x62f5C71B...5807C6aa2
0.05305434 ETH
62727072018-09-04 22:05:432361 days ago1536098743
0x62f5C71B...5807C6aa2
0.0500713 ETH
62669742018-09-03 23:04:112362 days ago1536015851
0x62f5C71B...5807C6aa2
0.05012961 ETH
62613042018-09-02 23:59:472363 days ago1535932787
0x62f5C71B...5807C6aa2
0.05014864 ETH
62556162018-09-02 1:27:002364 days ago1535851620
0x62f5C71B...5807C6aa2
0.05008591 ETH
62499712018-09-01 2:09:582365 days ago1535767798
0x62f5C71B...5807C6aa2
0.05000593 ETH
62442792018-08-31 3:11:352366 days ago1535685095
0x62f5C71B...5807C6aa2
0.05003143 ETH
62387232018-08-30 4:40:092367 days ago1535604009
0x62f5C71B...5807C6aa2
0.0501478 ETH
62330122018-08-29 5:37:452367 days ago1535521065
0x62f5C71B...5807C6aa2
0.05030859 ETH
62272542018-08-28 6:09:462368 days ago1535436586
0x62f5C71B...5807C6aa2
0.05002114 ETH
62213552018-08-27 6:24:542369 days ago1535351094
0x62f5C71B...5807C6aa2
0.06016857 ETH
62156432018-08-26 7:12:342370 days ago1535267554
0x62f5C71B...5807C6aa2
0.06018111 ETH
62100442018-08-25 8:33:432371 days ago1535186023
0x62f5C71B...5807C6aa2
0.06008275 ETH
62050502018-08-24 12:24:292372 days ago1535113469
0x62f5C71B...5807C6aa2
0.06515409 ETH
62020172018-08-24 0:08:162373 days ago1535069296
0x62f5C71B...5807C6aa2
0.06523652 ETH
61990502018-08-23 11:58:072373 days ago1535025487
0x62f5C71B...5807C6aa2
0.06539394 ETH
61959932018-08-22 23:24:152374 days ago1534980255
0x62f5C71B...5807C6aa2
0.06532189 ETH
61930382018-08-22 11:21:572374 days ago1534936917
0x62f5C71B...5807C6aa2
0.0656816 ETH
61899982018-08-21 23:08:372375 days ago1534892917
0x62f5C71B...5807C6aa2
0.06520741 ETH
61869662018-08-21 10:59:272375 days ago1534849167
0x62f5C71B...5807C6aa2
0.0653866 ETH
61840882018-08-20 23:18:132376 days ago1534807093
0x62f5C71B...5807C6aa2
0.065241 ETH
61826892018-08-20 17:49:382376 days ago1534787378
0x62f5C71B...5807C6aa2
0.06553373 ETH
61779092018-08-19 22:15:202377 days ago1534716920
0x62f5C71B...5807C6aa2
0.06512367 ETH
61749512018-08-19 10:26:492377 days ago1534674409
0x62f5C71B...5807C6aa2
0.06510763 ETH
61719142018-08-18 22:04:272378 days ago1534629867
0x62f5C71B...5807C6aa2
0.06518381 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.