ETH Price: $2,708.96 (+1.34%)

Contract

0xb7Ca636F81499aD2Dc088f8324b12A3c987BaCDa
 

Overview

ETH Balance

0.00000000378722608 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer66119902018-10-30 14:34:102304 days ago1540910050IN
0xb7Ca636F...c987BaCDa
0.7 ETH0.00031515
Sweep51102032018-02-18 2:49:222558 days ago1518922162IN
0xb7Ca636F...c987BaCDa
0 ETH0.0025028550
Transfer51101382018-02-18 2:33:092558 days ago1518921189IN
0xb7Ca636F...c987BaCDa
0.86024199 ETH0.0004210220
Sweep50721442018-02-11 17:26:222564 days ago1518369982IN
0xb7Ca636F...c987BaCDa
0 ETH0.0045051390
Transfer50721162018-02-11 17:19:262564 days ago1518369566IN
0xb7Ca636F...c987BaCDa
0.20024016 ETH0.000021051
Sweep49992162018-01-30 10:22:462577 days ago1517307766IN
0xb7Ca636F...c987BaCDa
0 ETH0.0045051390
Transfer49991892018-01-30 10:12:022577 days ago1517307122IN
0xb7Ca636F...c987BaCDa
0.20578566 ETH0.000021051
Sweep49276952018-01-18 6:27:152589 days ago1516256835IN
0xb7Ca636F...c987BaCDa
0 ETH0.0045051390
Transfer49276652018-01-18 6:19:322589 days ago1516256372IN
0xb7Ca636F...c987BaCDa
0.20051766 ETH0.000021051
Sweep48827072018-01-10 1:11:122597 days ago1515546672IN
0xb7Ca636F...c987BaCDa
0 ETH0.0045051390
Transfer48824892018-01-10 0:15:092597 days ago1515543309IN
0xb7Ca636F...c987BaCDa
0.20760658 ETH0.000021051
Sweep48364682018-01-01 15:17:342606 days ago1514819854IN
0xb7Ca636F...c987BaCDa
0 ETH0.002552951
Transfer48364312018-01-01 15:09:532606 days ago1514819393IN
0xb7Ca636F...c987BaCDa
0.20061325 ETH0.000021051
Sweep47922282017-12-25 3:30:452613 days ago1514172645IN
0xb7Ca636F...c987BaCDa
0 ETH0.002552951
Transfer47921972017-12-25 3:21:182613 days ago1514172078IN
0xb7Ca636F...c987BaCDa
0.20017907 ETH0.000021051
Sweep47523432017-12-18 4:30:432620 days ago1513571443IN
0xb7Ca636F...c987BaCDa
0 ETH0.002552951
Transfer47522852017-12-18 4:17:512620 days ago1513570671IN
0xb7Ca636F...c987BaCDa
0.20144828 ETH0.000021051
Sweep47257392017-12-13 13:18:552625 days ago1513171135IN
0xb7Ca636F...c987BaCDa
0 ETH0.0025496451
Transfer47257062017-12-13 13:10:592625 days ago1513170659IN
0xb7Ca636F...c987BaCDa
0.59268295 ETH0.0004210220
Sweep46889142017-12-07 4:23:562631 days ago1512620636IN
0xb7Ca636F...c987BaCDa
0 ETH0.0035039970
Transfer46888762017-12-07 4:15:492631 days ago1512620149IN
0xb7Ca636F...c987BaCDa
0.20013313 ETH0.000021051
Sweep46524562017-11-30 22:10:112637 days ago1512079811IN
0xb7Ca636F...c987BaCDa
0 ETH0.0010011420
Transfer46524432017-11-30 22:06:282637 days ago1512079588IN
0xb7Ca636F...c987BaCDa
0.20023179 ETH0.00008424
Sweep46067052017-11-23 11:36:302645 days ago1511436990IN
0xb7Ca636F...c987BaCDa
0 ETH0.0010011420
Transfer46066962017-11-23 11:33:382645 days ago1511436818IN
0xb7Ca636F...c987BaCDa
0.20134986 ETH0.00008424
View all transactions

Latest 23 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
51102032018-02-18 2:49:222558 days ago1518922162
0xb7Ca636F...c987BaCDa
0.86024199 ETH
50721442018-02-11 17:26:222564 days ago1518369982
0xb7Ca636F...c987BaCDa
0.20024017 ETH
49992162018-01-30 10:22:462577 days ago1517307766
0xb7Ca636F...c987BaCDa
0.20578566 ETH
49276952018-01-18 6:27:152589 days ago1516256835
0xb7Ca636F...c987BaCDa
0.20051767 ETH
48827072018-01-10 1:11:122597 days ago1515546672
0xb7Ca636F...c987BaCDa
0.20760659 ETH
48364682018-01-01 15:17:342606 days ago1514819854
0xb7Ca636F...c987BaCDa
0.20061325 ETH
47922282017-12-25 3:30:452613 days ago1514172645
0xb7Ca636F...c987BaCDa
0.20017907 ETH
47523432017-12-18 4:30:432620 days ago1513571443
0xb7Ca636F...c987BaCDa
0.20144829 ETH
47257392017-12-13 13:18:552625 days ago1513171135
0xb7Ca636F...c987BaCDa
0.59268295 ETH
46889142017-12-07 4:23:562631 days ago1512620636
0xb7Ca636F...c987BaCDa
0.20013314 ETH
46524562017-11-30 22:10:112637 days ago1512079811
0xb7Ca636F...c987BaCDa
0.20023179 ETH
46067052017-11-23 11:36:302645 days ago1511436990
0xb7Ca636F...c987BaCDa
0.20134987 ETH
45616902017-11-16 5:54:562652 days ago1510811696
0xb7Ca636F...c987BaCDa
0.20012217 ETH
45212752017-11-09 18:00:452658 days ago1510250445
0xb7Ca636F...c987BaCDa
0.53320471 ETH
45160842017-11-08 21:47:142659 days ago1510177634
0xb7Ca636F...c987BaCDa
0.20060914 ETH
44706432017-11-01 14:01:102667 days ago1509544870
0xb7Ca636F...c987BaCDa
0.20071641 ETH
44173852017-10-23 23:54:382675 days ago1508802878
0xb7Ca636F...c987BaCDa
0.20062153 ETH
43621752017-10-13 12:29:122686 days ago1507897752
0xb7Ca636F...c987BaCDa
0.39459669 ETH
42991722017-09-21 18:05:422707 days ago1506017142
0xb7Ca636F...c987BaCDa
0.14290684 ETH
42866562017-09-18 6:57:312711 days ago1505717851
0xb7Ca636F...c987BaCDa
0.20030596 ETH
42845472017-09-17 16:52:412711 days ago1505667161
0xb7Ca636F...c987BaCDa
0.24785104 ETH
42596522017-09-10 18:38:522718 days ago1505068732
0xb7Ca636F...c987BaCDa
0.50479217 ETH
41807092017-08-20 6:51:452740 days ago1503211905  Contract Creation0 ETH
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.