ETH Price: $2,480.59 (+2.96%)
 

Overview

ETH Balance

0.00000000514054812 ETH

Eth Value

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

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep111751892020-11-02 3:23:481464 days ago1604287428IN
0x15037369...556ab4838
0 ETH0.0027352848
Transfer111751582020-11-02 3:13:561464 days ago1604286836IN
0x15037369...556ab4838
0.2004429 ETH0.000021051
Sweep111512692020-10-29 11:05:011468 days ago1603969501IN
0x15037369...556ab4838
0 ETH0.005675799.6
Transfer111512502020-10-29 11:00:541468 days ago1603969254IN
0x15037369...556ab4838
0.20028012 ETH0.000021051
Sweep111267922020-10-25 17:00:011472 days ago1603645201IN
0x15037369...556ab4838
0 ETH0.0017095530
Transfer111267692020-10-25 16:55:441472 days ago1603644944IN
0x15037369...556ab4838
0.20014619 ETH0.000021051
Sweep111017232020-10-21 20:43:051476 days ago1603312985IN
0x15037369...556ab4838
0 ETH0.0024617543.2
Transfer111017092020-10-21 20:39:121476 days ago1603312752IN
0x15037369...556ab4838
0.20029892 ETH0.000021051
Sweep110788342020-10-18 8:27:221479 days ago1603009642IN
0x15037369...556ab4838
0 ETH0.0017091930
Transfer110788082020-10-18 8:22:591479 days ago1603009379IN
0x15037369...556ab4838
0.2001312 ETH0.000021051
Sweep110543732020-10-14 14:38:451483 days ago1602686325IN
0x15037369...556ab4838
0 ETH0.0055389497.20000175
Transfer110543552020-10-14 14:34:291483 days ago1602686069IN
0x15037369...556ab4838
0.20028271 ETH0.000021051
Sweep110294602020-10-10 19:03:421487 days ago1602356622IN
0x15037369...556ab4838
0 ETH0.0028492550
Transfer110294452020-10-10 19:01:201487 days ago1602356480IN
0x15037369...556ab4838
0.20000473 ETH0.000021051
Sweep110070802020-10-07 6:46:381490 days ago1602053198IN
0x15037369...556ab4838
0 ETH0.0028925550.76
Transfer110070552020-10-07 6:41:511490 days ago1602052911IN
0x15037369...556ab4838
0.20012308 ETH0.000021051
Sweep109868312020-10-04 3:02:211493 days ago1601780541IN
0x15037369...556ab4838
0 ETH0.0041029272.00000175
Transfer109868112020-10-04 2:57:261493 days ago1601780246IN
0x15037369...556ab4838
0.20039143 ETH0.000021051
Sweep109665812020-09-30 22:57:421497 days ago1601506662IN
0x15037369...556ab4838
0 ETH0.00615438108
Transfer109665522020-09-30 22:50:281497 days ago1601506228IN
0x15037369...556ab4838
0.20047982 ETH0.000021051
Sweep109389112020-09-26 15:01:391501 days ago1601132499IN
0x15037369...556ab4838
0 ETH0.00574408100.8
Transfer109388892020-09-26 14:56:171501 days ago1601132177IN
0x15037369...556ab4838
0.20013674 ETH0.000021051
Sweep109066352020-09-21 15:38:001506 days ago1600702680IN
0x15037369...556ab4838
0 ETH0.01886945331.2
Transfer109066142020-09-21 15:32:041506 days ago1600702324IN
0x15037369...556ab4838
0.20077851 ETH0.000021051
Sweep108850932020-09-18 8:38:491509 days ago1600418329IN
0x15037369...556ab4838
0 ETH0.02872044504
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
111751892020-11-02 3:23:481464 days ago1604287428
0x15037369...556ab4838
0.20044291 ETH
111512692020-10-29 11:05:011468 days ago1603969501
0x15037369...556ab4838
0.20028012 ETH
111267922020-10-25 17:00:011472 days ago1603645201
0x15037369...556ab4838
0.2001462 ETH
111017232020-10-21 20:43:051476 days ago1603312985
0x15037369...556ab4838
0.20029892 ETH
110788342020-10-18 8:27:221479 days ago1603009642
0x15037369...556ab4838
0.2001312 ETH
110543732020-10-14 14:38:451483 days ago1602686325
0x15037369...556ab4838
0.20028272 ETH
110294602020-10-10 19:03:421487 days ago1602356622
0x15037369...556ab4838
0.20000474 ETH
110070802020-10-07 6:46:381490 days ago1602053198
0x15037369...556ab4838
0.20012309 ETH
109868312020-10-04 3:02:211493 days ago1601780541
0x15037369...556ab4838
0.20039144 ETH
109665812020-09-30 22:57:421497 days ago1601506662
0x15037369...556ab4838
0.20047982 ETH
109389112020-09-26 15:01:391501 days ago1601132499
0x15037369...556ab4838
0.20013675 ETH
109066352020-09-21 15:38:001506 days ago1600702680
0x15037369...556ab4838
0.20077852 ETH
108850932020-09-18 8:38:491509 days ago1600418329
0x15037369...556ab4838
0.20032939 ETH
108718302020-09-16 7:36:401511 days ago1600241800
0x15037369...556ab4838
0.20010095 ETH
108518202020-09-13 5:48:121514 days ago1599976092
0x15037369...556ab4838
0.20018448 ETH
108311662020-09-10 1:58:421517 days ago1599703122
0x15037369...556ab4838
0.2002687 ETH
108072062020-09-06 9:41:091521 days ago1599385269
0x15037369...556ab4838
0.20003246 ETH
107878152020-09-03 10:33:361524 days ago1599129216
0x15037369...556ab4838
0.21094883 ETH
87090592019-10-09 17:42:411854 days ago1570642961
0x15037369...556ab4838
0.12994934 ETH
86642532019-10-02 17:41:361861 days ago1570038096
0x15037369...556ab4838
0.20007897 ETH
86516382019-09-30 18:27:591863 days ago1569868079
0x15037369...556ab4838
0.20056855 ETH
86407902019-09-29 1:33:501864 days ago1569720830
0x15037369...556ab4838
0.20028071 ETH
86290472019-09-27 5:34:421866 days ago1569562482
0x15037369...556ab4838
0.20039527 ETH
86191082019-09-25 16:18:151868 days ago1569428295
0x15037369...556ab4838
0.20062976 ETH
86091372019-09-24 2:30:281869 days ago1569292228
0x15037369...556ab4838
0.20061066 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.