ETH Price: $2,696.55 (-1.56%)

Contract

0x6D104aeE84f37bC9Db41f277B0871b447015Ad52
 

Overview

ETH Balance

0.000000004793421846 ETH

Eth Value

Less Than $0.01 (@ $2,696.55/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep86478122019-09-30 3:47:291965 days ago1569815249IN
0x6D104aeE...47015Ad52
0 ETH0.0011012522
Transfer86477902019-09-30 3:43:211965 days ago1569815001IN
0x6D104aeE...47015Ad52
0.12591055 ETH0.000021051
Transfer86030312019-09-23 3:38:461972 days ago1569209926IN
0x6D104aeE...47015Ad52
0.01014568 ETH0.000021051
Sweep85081952019-09-08 8:26:471987 days ago1567931207IN
0x6D104aeE...47015Ad52
0 ETH0.0011012522
Transfer85081752019-09-08 8:22:531987 days ago1567930973IN
0x6D104aeE...47015Ad52
0.23240156 ETH0.000021051
Sweep84633052019-09-01 8:22:581994 days ago1567326178IN
0x6D104aeE...47015Ad52
0 ETH0.0011012522
Transfer84632912019-09-01 8:19:431994 days ago1567325983IN
0x6D104aeE...47015Ad52
0.2823497 ETH0.000021051
Sweep84182582019-08-25 8:22:562001 days ago1566721376IN
0x6D104aeE...47015Ad52
0 ETH0.0011012522
Transfer84182372019-08-25 8:19:072001 days ago1566721147IN
0x6D104aeE...47015Ad52
0.29609766 ETH0.000021051
Transfer83732072019-08-18 8:14:062008 days ago1566116046IN
0x6D104aeE...47015Ad52
0.01009456 ETH0.000021051
Sweep72867582019-03-01 23:36:062177 days ago1551483366IN
0x6D104aeE...47015Ad52
0 ETH0.0025028550
Transfer72867372019-03-01 23:30:562177 days ago1551483056IN
0x6D104aeE...47015Ad52
0.76396055 ETH0.000021051
Sweep72550202019-02-22 23:37:252184 days ago1550878645IN
0x6D104aeE...47015Ad52
0 ETH0.0025028550
Transfer72550022019-02-22 23:31:482184 days ago1550878308IN
0x6D104aeE...47015Ad52
1.00218669 ETH0.000021051
Sweep72442582019-02-20 10:49:072187 days ago1550659747IN
0x6D104aeE...47015Ad52
0 ETH0.0025028550
Transfer72442442019-02-20 10:44:162187 days ago1550659456IN
0x6D104aeE...47015Ad52
1.0016214 ETH0.000021051
Sweep72329362019-02-17 18:27:082190 days ago1550428028IN
0x6D104aeE...47015Ad52
0 ETH0.0025028550
Transfer72329202019-02-17 18:22:382190 days ago1550427758IN
0x6D104aeE...47015Ad52
1.00058929 ETH0.000021051
Sweep72166232019-02-13 20:42:312193 days ago1550090551IN
0x6D104aeE...47015Ad52
0 ETH0.0025028550
Transfer72166032019-02-13 20:36:412193 days ago1550090201IN
0x6D104aeE...47015Ad52
1.00059306 ETH0.000021051
Sweep71998632019-02-09 22:07:142197 days ago1549750034IN
0x6D104aeE...47015Ad52
0 ETH0.0025028550
Transfer71998492019-02-09 22:03:472197 days ago1549749827IN
0x6D104aeE...47015Ad52
1.00091957 ETH0.000021051
Sweep71831632019-02-06 12:20:462201 days ago1549455646IN
0x6D104aeE...47015Ad52
0 ETH0.0025028550
Transfer71831452019-02-06 12:14:402201 days ago1549455280IN
0x6D104aeE...47015Ad52
1.00084542 ETH0.000021051
Sweep71607862019-02-01 22:58:422205 days ago1549061922IN
0x6D104aeE...47015Ad52
0 ETH0.0025028550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
86478122019-09-30 3:47:291965 days ago1569815249
0x6D104aeE...47015Ad52
0.13605624 ETH
85081952019-09-08 8:26:471987 days ago1567931207
0x6D104aeE...47015Ad52
0.23240157 ETH
84633052019-09-01 8:22:581994 days ago1567326178
0x6D104aeE...47015Ad52
0.2823497 ETH
84182582019-08-25 8:22:562001 days ago1566721376
0x6D104aeE...47015Ad52
0.30619222 ETH
72867582019-03-01 23:36:062177 days ago1551483366
0x6D104aeE...47015Ad52
0.76396056 ETH
72550202019-02-22 23:37:252184 days ago1550878645
0x6D104aeE...47015Ad52
1.0021867 ETH
72442582019-02-20 10:49:072187 days ago1550659747
0x6D104aeE...47015Ad52
1.00162141 ETH
72329362019-02-17 18:27:082190 days ago1550428028
0x6D104aeE...47015Ad52
1.00058929 ETH
72166232019-02-13 20:42:312193 days ago1550090551
0x6D104aeE...47015Ad52
1.00059307 ETH
71998632019-02-09 22:07:142197 days ago1549750034
0x6D104aeE...47015Ad52
1.00091958 ETH
71831632019-02-06 12:20:462201 days ago1549455646
0x6D104aeE...47015Ad52
1.00084542 ETH
71607862019-02-01 22:58:422205 days ago1549061922
0x6D104aeE...47015Ad52
1.00049312 ETH
71369472019-01-28 2:08:502210 days ago1548641330
0x6D104aeE...47015Ad52
1.00024534 ETH
71144132019-01-23 15:28:332215 days ago1548257313
0x6D104aeE...47015Ad52
1.00015219 ETH
70943412019-01-19 19:02:072219 days ago1547924527
0x6D104aeE...47015Ad52
1.00015304 ETH
70760522019-01-16 13:08:542222 days ago1547644134
0x6D104aeE...47015Ad52
1.00075507 ETH
70620592019-01-14 0:52:572224 days ago1547427177
0x6D104aeE...47015Ad52
1.00001926 ETH
70515132019-01-12 3:37:172226 days ago1547264237
0x6D104aeE...47015Ad52
1.00173389 ETH
70412542019-01-10 7:35:512228 days ago1547105751
0x6D104aeE...47015Ad52
1.00120473 ETH
70309742019-01-08 11:20:422230 days ago1546946442
0x6D104aeE...47015Ad52
1.00093718 ETH
70209542019-01-06 16:24:412232 days ago1546791881
0x6D104aeE...47015Ad52
1.00091756 ETH
70110152019-01-04 21:45:582233 days ago1546638358
0x6D104aeE...47015Ad52
1.00239046 ETH
70014252019-01-03 4:20:062235 days ago1546489206
0x6D104aeE...47015Ad52
1.00147895 ETH
69920082019-01-01 14:08:322237 days ago1546351712
0x6D104aeE...47015Ad52
1.00476828 ETH
69827102018-12-31 0:03:242238 days ago1546214604
0x6D104aeE...47015Ad52
1.00145695 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.