ETH Price: $3,647.27 (-0.34%)
 

Overview

ETH Balance

0.000000006542466683 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep87345272019-10-13 17:50:551911 days ago1570989055IN
0xb9AbC1Db...0DBAa42DB
0 ETH0.0011012522
Transfer87345122019-10-13 17:46:051911 days ago1570988765IN
0xb9AbC1Db...0DBAa42DB
0.20003447 ETH0.0003157615
Sweep86320162019-09-27 16:30:551927 days ago1569601855IN
0xb9AbC1Db...0DBAa42DB
0 ETH0.0011012522
Transfer86319982019-09-27 16:27:081927 days ago1569601628IN
0xb9AbC1Db...0DBAa42DB
0.20033266 ETH0.0003157615
Sweep85711012019-09-18 3:57:201936 days ago1568779040IN
0xb9AbC1Db...0DBAa42DB
0 ETH0.0015017130
Transfer85710872019-09-18 3:52:481936 days ago1568778768IN
0xb9AbC1Db...0DBAa42DB
0.20001486 ETH0.0004210220
Sweep85319612019-09-12 1:19:461942 days ago1568251186IN
0xb9AbC1Db...0DBAa42DB
0 ETH0.0011012522
Transfer85319422019-09-12 1:16:351942 days ago1568250995IN
0xb9AbC1Db...0DBAa42DB
0.20022316 ETH0.0002105110
Sweep84995672019-09-07 0:12:271947 days ago1567815147IN
0xb9AbC1Db...0DBAa42DB
0 ETH0.0011012522
Transfer84995522019-09-07 0:09:471947 days ago1567814987IN
0xb9AbC1Db...0DBAa42DB
0.20014297 ETH0.0002105110
Sweep84804372019-09-04 0:35:411950 days ago1567557341IN
0xb9AbC1Db...0DBAa42DB
0 ETH0.0011012522
Transfer84804172019-09-04 0:30:111950 days ago1567557011IN
0xb9AbC1Db...0DBAa42DB
0.20023689 ETH0.0002105110
Sweep84660352019-09-01 18:57:461953 days ago1567364266IN
0xb9AbC1Db...0DBAa42DB
0 ETH0.0011012522
Transfer84660222019-09-01 18:54:021953 days ago1567364042IN
0xb9AbC1Db...0DBAa42DB
0.20051794 ETH0.0002105110
Sweep84534942019-08-30 19:43:521955 days ago1567194232IN
0xb9AbC1Db...0DBAa42DB
0 ETH0.0011012522
Transfer84534742019-08-30 19:38:471955 days ago1567193927IN
0xb9AbC1Db...0DBAa42DB
0.20043791 ETH0.0002105110
Sweep84425522019-08-29 3:03:461956 days ago1567047826IN
0xb9AbC1Db...0DBAa42DB
0 ETH0.0011012522
Transfer84425322019-08-29 2:58:211956 days ago1567047501IN
0xb9AbC1Db...0DBAa42DB
0.20033687 ETH0.0002105110
Sweep84323092019-08-27 13:03:191958 days ago1566910999IN
0xb9AbC1Db...0DBAa42DB
0 ETH0.0011012522
Transfer84322852019-08-27 12:58:231958 days ago1566910703IN
0xb9AbC1Db...0DBAa42DB
0.20120864 ETH0.0002105110
Sweep84147492019-08-24 19:13:251961 days ago1566674005IN
0xb9AbC1Db...0DBAa42DB
0 ETH0.0011012522
Transfer84147292019-08-24 19:09:251961 days ago1566673765IN
0xb9AbC1Db...0DBAa42DB
0.20064585 ETH0.0002105110
Sweep83994142019-08-22 9:47:021963 days ago1566467222IN
0xb9AbC1Db...0DBAa42DB
0 ETH0.0011012522
Transfer83993952019-08-22 9:43:011963 days ago1566466981IN
0xb9AbC1Db...0DBAa42DB
0.20037942 ETH0.0002105110
Sweep83869362019-08-20 11:22:251965 days ago1566300145IN
0xb9AbC1Db...0DBAa42DB
0 ETH0.0011012522
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
87345272019-10-13 17:50:551911 days ago1570989055
0xb9AbC1Db...0DBAa42DB
0.20003447 ETH
86320162019-09-27 16:30:551927 days ago1569601855
0xb9AbC1Db...0DBAa42DB
0.20033267 ETH
85711012019-09-18 3:57:201936 days ago1568779040
0xb9AbC1Db...0DBAa42DB
0.20001486 ETH
85319612019-09-12 1:19:461942 days ago1568251186
0xb9AbC1Db...0DBAa42DB
0.20022317 ETH
84995672019-09-07 0:12:271947 days ago1567815147
0xb9AbC1Db...0DBAa42DB
0.20014297 ETH
84804372019-09-04 0:35:411950 days ago1567557341
0xb9AbC1Db...0DBAa42DB
0.2002369 ETH
84660352019-09-01 18:57:461953 days ago1567364266
0xb9AbC1Db...0DBAa42DB
0.20051794 ETH
84534942019-08-30 19:43:521955 days ago1567194232
0xb9AbC1Db...0DBAa42DB
0.20043792 ETH
84425522019-08-29 3:03:461956 days ago1567047826
0xb9AbC1Db...0DBAa42DB
0.20033688 ETH
84323092019-08-27 13:03:191958 days ago1566910999
0xb9AbC1Db...0DBAa42DB
0.20120864 ETH
84147492019-08-24 19:13:251961 days ago1566674005
0xb9AbC1Db...0DBAa42DB
0.20064586 ETH
83994142019-08-22 9:47:021963 days ago1566467222
0xb9AbC1Db...0DBAa42DB
0.20037943 ETH
83869362019-08-20 11:22:251965 days ago1566300145
0xb9AbC1Db...0DBAa42DB
0.20030616 ETH
83593022019-08-16 4:22:471969 days ago1565929367
0xb9AbC1Db...0DBAa42DB
0.20063053 ETH
83468512019-08-14 5:51:511971 days ago1565761911
0xb9AbC1Db...0DBAa42DB
0.20082539 ETH
83349292019-08-12 9:28:331973 days ago1565602113
0xb9AbC1Db...0DBAa42DB
0.20121978 ETH
83222842019-08-10 10:11:121975 days ago1565431872
0xb9AbC1Db...0DBAa42DB
0.20119532 ETH
83097142019-08-08 11:32:171977 days ago1565263937
0xb9AbC1Db...0DBAa42DB
0.20020172 ETH
82973862019-08-06 13:30:581979 days ago1565098258
0xb9AbC1Db...0DBAa42DB
0.20081802 ETH
82868802019-08-04 22:25:531981 days ago1564957553
0xb9AbC1Db...0DBAa42DB
0.20115488 ETH
82760012019-08-03 6:12:091982 days ago1564812729
0xb9AbC1Db...0DBAa42DB
0.20047771 ETH
82645522019-08-01 11:27:211984 days ago1564658841
0xb9AbC1Db...0DBAa42DB
0.2001034 ETH
82532482019-07-30 17:14:401986 days ago1564506880
0xb9AbC1Db...0DBAa42DB
0.20120562 ETH
82420972019-07-28 23:33:361987 days ago1564356816
0xb9AbC1Db...0DBAa42DB
0.20030587 ETH
82312352019-07-27 7:17:411989 days ago1564211861
0xb9AbC1Db...0DBAa42DB
0.20012905 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.