ETH Price: $1,907.92 (-0.99%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep42929872017-09-20 0:59:322735 days ago1505869172IN
0x83244662...12A6c4E07
0 ETH0.0025561751
Transfer42929832017-09-20 0:57:252735 days ago1505869045IN
0x83244662...12A6c4E07
123.07685465 ETH0.0004420721
Sweep42256782017-09-01 4:19:062754 days ago1504239546IN
0x83244662...12A6c4E07
0 ETH0.0022525645
Transfer42256672017-09-01 4:15:412754 days ago1504239341IN
0x83244662...12A6c4E07
12.683043 ETH0.0006315330
Sweep42203132017-08-30 15:44:462755 days ago1504107886IN
0x83244662...12A6c4E07
0 ETH0.0017569835.05480008
Transfer42203042017-08-30 15:40:412755 days ago1504107641IN
0x83244662...12A6c4E07
26.30635416 ETH0.0004919523.36986672
Sweep42075622017-08-27 0:10:572759 days ago1503792657IN
0x83244662...12A6c4E07
0 ETH0.0015017130
Transfer42075552017-08-27 0:08:332759 days ago1503792513IN
0x83244662...12A6c4E07
23 ETH0.0004210220
Sweep42073512017-08-26 22:54:542759 days ago1503788094IN
0x83244662...12A6c4E07
0 ETH0.0015017130
Transfer42073422017-08-26 22:50:372759 days ago1503787837IN
0x83244662...12A6c4E07
11.865 ETH0.0004420721
Sweep42073272017-08-26 22:44:552759 days ago1503787495IN
0x83244662...12A6c4E07
0 ETH0.0010525421
Transfer42073202017-08-26 22:42:032759 days ago1503787323IN
0x83244662...12A6c4E07
30.995 ETH0.0004420721
Sweep42071302017-08-26 21:17:112759 days ago1503782231IN
0x83244662...12A6c4E07
0 ETH0.0015036330
Transfer42071192017-08-26 21:14:022759 days ago1503782042IN
0x83244662...12A6c4E07
44.995 ETH0.0004420721
Sweep42067132017-08-26 18:26:512759 days ago1503772011IN
0x83244662...12A6c4E07
0 ETH0.0015017130
Transfer42067022017-08-26 18:21:212759 days ago1503771681IN
0x83244662...12A6c4E07
39.5 ETH0.0004210220
Sweep42048262017-08-26 5:33:412759 days ago1503725621IN
0x83244662...12A6c4E07
0 ETH0.002031240.52596509
Transfer42048212017-08-26 5:29:132759 days ago1503725353IN
0x83244662...12A6c4E07
24.52093256 ETH0.0005687427.01731006
Sweep42013382017-08-25 5:51:152760 days ago1503640275IN
0x83244662...12A6c4E07
0 ETH0.0017332634.58153495
Transfer42013272017-08-25 5:47:012760 days ago1503640021IN
0x83244662...12A6c4E07
74.79064863 ETH0.0004947923.50461455
Sweep42012482017-08-25 5:16:362760 days ago1503638196IN
0x83244662...12A6c4E07
0 ETH0.0017648535.25692183
Transfer42012462017-08-25 5:14:552760 days ago1503638095IN
0x83244662...12A6c4E07
2.76329517 ETH0.0004713622.39171714
Sweep42012362017-08-25 5:10:372760 days ago1503637837IN
0x83244662...12A6c4E07
0 ETH0.0017625935.25692183
Transfer42012282017-08-25 5:06:382760 days ago1503637598IN
0x83244662...12A6c4E07
0.25 ETH0.0004453821.15742114

Latest 13 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer42929872017-09-20 0:59:322735 days ago1505869172
0x83244662...12A6c4E07
123.07685465 ETH
Transfer42256782017-09-01 4:19:062754 days ago1504239546
0x83244662...12A6c4E07
12.683043 ETH
Transfer42203132017-08-30 15:44:462755 days ago1504107886
0x83244662...12A6c4E07
26.30635416 ETH
Transfer42075622017-08-27 0:10:572759 days ago1503792657
0x83244662...12A6c4E07
23 ETH
Transfer42073512017-08-26 22:54:542759 days ago1503788094
0x83244662...12A6c4E07
11.865 ETH
Transfer42073272017-08-26 22:44:552759 days ago1503787495
0x83244662...12A6c4E07
30.995 ETH
Transfer42071302017-08-26 21:17:112759 days ago1503782231
0x83244662...12A6c4E07
44.995 ETH
Transfer42067132017-08-26 18:26:512759 days ago1503772011
0x83244662...12A6c4E07
39.5 ETH
Transfer42048262017-08-26 5:33:412759 days ago1503725621
0x83244662...12A6c4E07
24.52093256 ETH
Transfer42013382017-08-25 5:51:152760 days ago1503640275
0x83244662...12A6c4E07
74.79064863 ETH
Transfer42012482017-08-25 5:16:362760 days ago1503638196
0x83244662...12A6c4E07
2.76329517 ETH
Transfer42012362017-08-25 5:10:372760 days ago1503637837
0x83244662...12A6c4E07
0.25 ETH
Transfer41922842017-08-23 1:09:492763 days ago1503450589  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

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"}]

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.