ETH Price: $2,798.46 (+1.00%)

Contract

0x87BACcbc086d96A04FB7b62d934CD624868b32E6
 

Overview

ETH Balance

0.022043988326953039 ETH

Eth Value

$61.69 (@ $2,798.46/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer119685492021-03-04 0:34:071452 days ago1614818047IN
0x87BACcbc...4868b32E6
0.02204398 ETH0.000021051
Sweep118769902021-02-17 22:10:091466 days ago1613599809IN
0x87BACcbc...4868b32E6
0 ETH0.01870106328.2444
Transfer118769672021-02-17 22:07:371466 days ago1613599657IN
0x87BACcbc...4868b32E6
0.05002484 ETH0.000021051
Sweep118288762021-02-10 12:53:221474 days ago1612961602IN
0x87BACcbc...4868b32E6
0 ETH0.02354392413.16000206
Transfer118288302021-02-10 12:43:561474 days ago1612961036IN
0x87BACcbc...4868b32E6
0.07370325 ETH0.000021051
Sweep117833072021-02-03 12:29:591481 days ago1612355399IN
0x87BACcbc...4868b32E6
0 ETH0.00888966156
Transfer117832822021-02-03 12:24:521481 days ago1612355092IN
0x87BACcbc...4868b32E6
0.07394057 ETH0.000021051
Sweep117378152021-01-27 12:24:501488 days ago1611750290IN
0x87BACcbc...4868b32E6
0 ETH0.004929386.52
Transfer117377922021-01-27 12:19:061488 days ago1611749946IN
0x87BACcbc...4868b32E6
0.06560369 ETH0.000021051
Sweep116922142021-01-20 12:12:041495 days ago1611144724IN
0x87BACcbc...4868b32E6
0 ETH0.01039187182.4
Transfer116921952021-01-20 12:07:151495 days ago1611144435IN
0x87BACcbc...4868b32E6
0.06978618 ETH0.000021051
Sweep116465102021-01-13 12:08:511502 days ago1610539731IN
0x87BACcbc...4868b32E6
0 ETH0.003008852.8
Transfer116464952021-01-13 12:05:221502 days ago1610539522IN
0x87BACcbc...4868b32E6
0.09121883 ETH0.000021051
Sweep116008862021-01-06 12:00:301509 days ago1609934430IN
0x87BACcbc...4868b32E6
0 ETH0.0049850487.48
Transfer116008672021-01-06 11:58:111509 days ago1609934291IN
0x87BACcbc...4868b32E6
0.09660677 ETH0.000021051
Sweep115552312020-12-30 11:55:441516 days ago1609329344IN
0x87BACcbc...4868b32E6
0 ETH0.0047867484
Transfer115552142020-12-30 11:52:311516 days ago1609329151IN
0x87BACcbc...4868b32E6
0.1344461 ETH0.000021051
Sweep115096452020-12-23 11:49:441523 days ago1608724184IN
0x87BACcbc...4868b32E6
0 ETH0.0052385591.92866464
Transfer115096282020-12-23 11:46:041523 days ago1608723964IN
0x87BACcbc...4868b32E6
0.1168625 ETH0.000021051
Sweep114639212020-12-16 11:45:001530 days ago1608119100IN
0x87BACcbc...4868b32E6
0 ETH0.0052654192.4
Transfer114639012020-12-16 11:41:401530 days ago1608118900IN
0x87BACcbc...4868b32E6
0.11233557 ETH0.000021051
Sweep114184152020-12-09 11:38:121537 days ago1607513892IN
0x87BACcbc...4868b32E6
0 ETH0.0043764476.8
Transfer114183952020-12-09 11:32:141537 days ago1607513534IN
0x87BACcbc...4868b32E6
0.12531698 ETH0.000021051
Sweep113727942020-12-02 11:30:501544 days ago1606908650IN
0x87BACcbc...4868b32E6
0 ETH0.0017775531.2
Transfer113727742020-12-02 11:24:091544 days ago1606908249IN
0x87BACcbc...4868b32E6
0.13587374 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
118769902021-02-17 22:10:091466 days ago1613599809
0x87BACcbc...4868b32E6
0.05002484 ETH
118288762021-02-10 12:53:221474 days ago1612961602
0x87BACcbc...4868b32E6
0.07370326 ETH
117833072021-02-03 12:29:591481 days ago1612355399
0x87BACcbc...4868b32E6
0.07394057 ETH
117378152021-01-27 12:24:501488 days ago1611750290
0x87BACcbc...4868b32E6
0.0656037 ETH
116922142021-01-20 12:12:041495 days ago1611144724
0x87BACcbc...4868b32E6
0.06978618 ETH
116465102021-01-13 12:08:511502 days ago1610539731
0x87BACcbc...4868b32E6
0.09121883 ETH
116008862021-01-06 12:00:301509 days ago1609934430
0x87BACcbc...4868b32E6
0.09660678 ETH
115552312020-12-30 11:55:441516 days ago1609329344
0x87BACcbc...4868b32E6
0.13444611 ETH
115096452020-12-23 11:49:441523 days ago1608724184
0x87BACcbc...4868b32E6
0.11686251 ETH
114639212020-12-16 11:45:001530 days ago1608119100
0x87BACcbc...4868b32E6
0.11233557 ETH
114184152020-12-09 11:38:121537 days ago1607513892
0x87BACcbc...4868b32E6
0.12531699 ETH
113727942020-12-02 11:30:501544 days ago1606908650
0x87BACcbc...4868b32E6
0.13587374 ETH
113272332020-11-25 11:21:291551 days ago1606303289
0x87BACcbc...4868b32E6
0.142671 ETH
112816122020-11-18 11:15:581558 days ago1605698158
0x87BACcbc...4868b32E6
0.13650532 ETH
112384902020-11-11 20:33:051565 days ago1605126785
0x87BACcbc...4868b32E6
0.13013478 ETH
111903002020-11-04 11:05:591572 days ago1604487959
0x87BACcbc...4868b32E6
0.13125542 ETH
111447262020-10-28 10:59:471579 days ago1603882787
0x87BACcbc...4868b32E6
0.12859349 ETH
110990672020-10-21 10:54:181586 days ago1603277658
0x87BACcbc...4868b32E6
0.15590031 ETH
110533412020-10-14 10:51:031593 days ago1602672663
0x87BACcbc...4868b32E6
0.18320689 ETH
65644512018-10-22 20:17:192316 days ago1540239439
0x87BACcbc...4868b32E6
0.15829122 ETH
65216622018-10-15 20:24:292323 days ago1539635069
0x87BACcbc...4868b32E6
0.16356086 ETH
64785152018-10-08 20:07:542330 days ago1539029274
0x87BACcbc...4868b32E6
0.15332379 ETH
64353762018-10-01 20:09:392337 days ago1538424579
0x87BACcbc...4868b32E6
0.17897832 ETH
63926922018-09-24 20:09:242344 days ago1537819764
0x87BACcbc...4868b32E6
0.1860968 ETH
63502922018-09-17 20:09:432351 days ago1537214983
0x87BACcbc...4868b32E6
0.18929158 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.