ETH Price: $1,978.62 (-4.72%)

Contract

0x1B9b0bDfe012AC3fCd25ad2aB8653cDB8bab600d
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep124239002021-05-13 4:36:461758 days ago1620880606IN
0x1B9b0bDf...B8bab600d
0 ETH0.00790466139.725
Transfer124238852021-05-13 4:32:481758 days ago1620880368IN
0x1B9b0bDf...B8bab600d
0.25 ETH0.00370497176
Sweep116385212021-01-12 6:27:011879 days ago1610432821IN
0x1B9b0bDf...B8bab600d
0 ETH0.0037664866.09600141
Transfer116385062021-01-12 6:25:011879 days ago1610432701IN
0x1B9b0bDf...B8bab600d
0.94691084 ETH0.00212615101
Sweep116319452021-01-11 6:27:461880 days ago1610346466IN
0x1B9b0bDf...B8bab600d
0 ETH0.03553072236.196
Sweep116319292021-01-11 6:24:501880 days ago1610346290IN
0x1B9b0bDf...B8bab600d
0 ETH0.01414724264.0198888
Sweep116319142021-01-11 6:21:561880 days ago1610346116IN
0x1B9b0bDf...B8bab600d
0 ETH0.03023414552
Sweep114488322020-12-14 4:07:311908 days ago1607918851IN
0x1B9b0bDf...B8bab600d
0 ETH0.0022557941.58000183
Sweep114487962020-12-14 4:00:111908 days ago1607918411IN
0x1B9b0bDf...B8bab600d
0 ETH0.0079470352.8
Sweep114487872020-12-14 3:57:361908 days ago1607918256IN
0x1B9b0bDf...B8bab600d
0 ETH0.0038266852.8
Sweep114486902020-12-14 3:36:071908 days ago1607916967IN
0x1B9b0bDf...B8bab600d
0 ETH0.0072205948
Sweep87691572019-10-19 4:27:542330 days ago1571459274IN
0x1B9b0bDf...B8bab600d
0 ETH0.0011012522
Transfer87691362019-10-19 4:22:172330 days ago1571458937IN
0x1B9b0bDf...B8bab600d
2.58866166 ETH0.0002105110
Sweep75702222019-04-15 4:00:032517 days ago1555300803IN
0x1B9b0bDf...B8bab600d
0 ETH0.0024996550
Transfer75702042019-04-15 3:53:462517 days ago1555300426IN
0x1B9b0bDf...B8bab600d
3.32585088 ETH0.000105255
Sweep62265302018-08-28 3:17:542747 days ago1535426274IN
0x1B9b0bDf...B8bab600d
0 ETH0.0025028550
Transfer62265062018-08-28 3:11:592747 days ago1535425919IN
0x1B9b0bDf...B8bab600d
1.468348 ETH0.00012636
Sweep55982882018-05-12 2:14:202855 days ago1526091260IN
0x1B9b0bDf...B8bab600d
0 ETH0.0025028550
Transfer55982532018-05-12 2:07:062855 days ago1526090826IN
0x1B9b0bDf...B8bab600d
0.42980432 ETH0.00012636
Sweep48033452017-12-26 23:55:292991 days ago1514332529IN
0x1B9b0bDf...B8bab600d
0 ETH0.002552951
Transfer48033152017-12-26 23:48:412991 days ago1514332121IN
0x1B9b0bDf...B8bab600d
0.49915885 ETH0.0004420721
Sweep47901132017-12-24 19:16:082993 days ago1514142968IN
0x1B9b0bDf...B8bab600d
0 ETH0.002552951
Transfer47900832017-12-24 19:09:012993 days ago1514142541IN
0x1B9b0bDf...B8bab600d
0.14385949 ETH0.0005894228
Sweep47804112017-12-23 4:01:472995 days ago1514001707IN
0x1B9b0bDf...B8bab600d
0 ETH0.0030034260
Transfer47803712017-12-23 3:50:212995 days ago1514001021IN
0x1B9b0bDf...B8bab600d
0.09979305 ETH0.0008420440
View all transactions

Latest 24 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
-124239002021-05-13 4:36:461758 days ago1620880606
0x1B9b0bDf...B8bab600d
0.25 ETH
-116385212021-01-12 6:27:011879 days ago1610432821
0x1B9b0bDf...B8bab600d
0.94691084 ETH
-87691572019-10-19 4:27:542330 days ago1571459274
0x1B9b0bDf...B8bab600d
2.58866166 ETH
-75702222019-04-15 4:00:032517 days ago1555300803
0x1B9b0bDf...B8bab600d
3.32585088 ETH
Transfer62265302018-08-28 3:17:542747 days ago1535426274
0x1B9b0bDf...B8bab600d
1.468348 ETH
Transfer55982882018-05-12 2:14:202855 days ago1526091260
0x1B9b0bDf...B8bab600d
0.42980432 ETH
Transfer48033452017-12-26 23:55:292991 days ago1514332529
0x1B9b0bDf...B8bab600d
0.49915885 ETH
Transfer47901132017-12-24 19:16:082993 days ago1514142968
0x1B9b0bDf...B8bab600d
0.14385949 ETH
Transfer47804112017-12-23 4:01:472995 days ago1514001707
0x1B9b0bDf...B8bab600d
0.09979305 ETH
Transfer47751372017-12-22 5:54:482996 days ago1513922088
0x1B9b0bDf...B8bab600d
0.49570151 ETH
Transfer47637152017-12-20 4:57:332998 days ago1513745853
0x1B9b0bDf...B8bab600d
0.50490118 ETH
Transfer47636802017-12-20 4:46:342998 days ago1513745194
0x1B9b0bDf...B8bab600d
0.5405994 ETH
Transfer47065592017-12-10 5:21:073008 days ago1512883267
0x1B9b0bDf...B8bab600d
0.58594 ETH
Transfer47041962017-12-09 19:34:403008 days ago1512848080
0x1B9b0bDf...B8bab600d
0.59995638 ETH
Transfer47040162017-12-09 18:50:173008 days ago1512845417
0x1B9b0bDf...B8bab600d
1.07173515 ETH
Transfer46658342017-12-03 2:53:153015 days ago1512269595
0x1B9b0bDf...B8bab600d
0.78834344 ETH
Transfer46408492017-11-29 0:47:183019 days ago1511916438
0x1B9b0bDf...B8bab600d
1.26686089 ETH
Transfer45914642017-11-21 0:47:143027 days ago1511225234
0x1B9b0bDf...B8bab600d
1.15012955 ETH
Transfer45914532017-11-21 0:45:033027 days ago1511225103
0x1B9b0bDf...B8bab600d
1.1519 ETH
Transfer45366372017-11-12 4:41:433036 days ago1510461703
0x1B9b0bDf...B8bab600d
1.10250763 ETH
Transfer45023402017-11-06 16:49:493042 days ago1509986989
0x1B9b0bDf...B8bab600d
1.98484865 ETH
Transfer45022922017-11-06 16:39:113042 days ago1509986351
0x1B9b0bDf...B8bab600d
0.98898014 ETH
Transfer45022722017-11-06 16:36:503042 days ago1509986210
0x1B9b0bDf...B8bab600d
0.99699 ETH
Transfer44386082017-10-27 9:54:193052 days ago1509098059  Contract Creation0 ETH
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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

Contract Source Code (Solidity)

/**
 *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

API
[{"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"}]

0x6060604052341561000c57fe5b60405160208061026c83398101604052515b60008054600160a060020a031916600160a060020a0383161790555b505b6102218061004b6000396000f300606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029000000000000000000000000a3c1e324ca1ce40db73ed6026c4a177f099b5770

Deployed Bytecode

0x606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029

Swarm Source

bzzr://4cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd1

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
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.