ETH Price: $2,028.22 (-1.64%)

Contract

0xae2dB41929E497350E3a104931bbB018C30B080C
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep56315912018-05-17 22:19:472854 days ago1526595587IN
0xae2dB419...8C30B080C
0 ETH0.0024996550
Transfer56315682018-05-17 22:14:522854 days ago1526595292IN
0xae2dB419...8C30B080C
7.28 ETH0.0002105110
Sweep55972192018-05-11 21:48:012860 days ago1526075281IN
0xae2dB419...8C30B080C
0 ETH0.0024996550
Transfer55972122018-05-11 21:46:442860 days ago1526075204IN
0xae2dB419...8C30B080C
7.27587648 ETH0.0004631222
Sweep55971732018-05-11 21:36:222860 days ago1526074582IN
0xae2dB419...8C30B080C
0 ETH0.0024964550
Transfer55971502018-05-11 21:29:522860 days ago1526074192IN
0xae2dB419...8C30B080C
0.06 ETH0.0004631222
Sweep49528362018-01-22 14:55:582969 days ago1516632958IN
0xae2dB419...8C30B080C
0 ETH0.0045051390
Transfer49528072018-01-22 14:50:292969 days ago1516632629IN
0xae2dB419...8C30B080C
2.07807964 ETH0.0005262725
Sweep49240992018-01-17 14:47:222974 days ago1516200442IN
0xae2dB419...8C30B080C
0 ETH0.0045051390
Transfer49240682018-01-17 14:37:492974 days ago1516199869IN
0xae2dB419...8C30B080C
0.88852536 ETH0.001073651
Sweep49210772018-01-17 1:52:152975 days ago1516153935IN
0xae2dB419...8C30B080C
0 ETH0.0045051390
Transfer49210472018-01-17 1:43:302975 days ago1516153410IN
0xae2dB419...8C30B080C
4.21756514 ETH0.0010946552
Sweep49145202018-01-15 21:20:222976 days ago1516051222IN
0xae2dB419...8C30B080C
0 ETH0.0045051390
Transfer49144842018-01-15 21:10:182976 days ago1516050618IN
0xae2dB419...8C30B080C
2.18372017 ETH0.0010946552
Sweep48622652018-01-06 7:09:232986 days ago1515222563IN
0xae2dB419...8C30B080C
0 ETH0.00967407193.2612
Transfer48622312018-01-06 6:59:442986 days ago1515221984IN
0xae2dB419...8C30B080C
1.45753632 ETH0.00271195128.82791592
Sweep48419182018-01-02 13:39:282989 days ago1514900368IN
0xae2dB419...8C30B080C
0 ETH0.002552951
Transfer48418822018-01-02 13:29:552989 days ago1514899795IN
0xae2dB419...8C30B080C
3.36685819 ETH0.0004210220
Sweep48191862017-12-29 16:21:022993 days ago1514564462IN
0xae2dB419...8C30B080C
0 ETH0.002552951
Transfer48191542017-12-29 16:13:572993 days ago1514564037IN
0xae2dB419...8C30B080C
0.905735 ETH0.0004631222
Sweep48190722017-12-29 15:53:562993 days ago1514562836IN
0xae2dB419...8C30B080C
0 ETH0.0025561751
Transfer48190282017-12-29 15:44:442993 days ago1514562284IN
0xae2dB419...8C30B080C
23.81627489 ETH0.0004210220
Sweep48148502017-12-28 22:32:112994 days ago1514500331IN
0xae2dB419...8C30B080C
0 ETH0.0025496451
Transfer48148232017-12-28 22:25:302994 days ago1514499930IN
0xae2dB419...8C30B080C
1.09 ETH0.0004631222
Sweep47792632017-12-22 23:16:333000 days ago1513984593IN
0xae2dB419...8C30B080C
0 ETH0.0030034260
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer56315912018-05-17 22:19:472854 days ago1526595587
0xae2dB419...8C30B080C
7.28 ETH
Transfer55972192018-05-11 21:48:012860 days ago1526075281
0xae2dB419...8C30B080C
7.27587648 ETH
Transfer55971732018-05-11 21:36:222860 days ago1526074582
0xae2dB419...8C30B080C
0.06 ETH
Transfer49528362018-01-22 14:55:582969 days ago1516632958
0xae2dB419...8C30B080C
2.07807964 ETH
Transfer49240992018-01-17 14:47:222974 days ago1516200442
0xae2dB419...8C30B080C
0.88852536 ETH
Transfer49210772018-01-17 1:52:152975 days ago1516153935
0xae2dB419...8C30B080C
4.21756514 ETH
Transfer49145202018-01-15 21:20:222976 days ago1516051222
0xae2dB419...8C30B080C
2.18372017 ETH
Transfer48622652018-01-06 7:09:232986 days ago1515222563
0xae2dB419...8C30B080C
1.45753632 ETH
Transfer48419182018-01-02 13:39:282989 days ago1514900368
0xae2dB419...8C30B080C
3.36685819 ETH
Transfer48191862017-12-29 16:21:022993 days ago1514564462
0xae2dB419...8C30B080C
0.905735 ETH
Transfer48190722017-12-29 15:53:562993 days ago1514562836
0xae2dB419...8C30B080C
23.81627489 ETH
Transfer48148502017-12-28 22:32:112994 days ago1514500331
0xae2dB419...8C30B080C
1.09 ETH
Transfer47792632017-12-22 23:16:333000 days ago1513984593
0xae2dB419...8C30B080C
20.1 ETH
Transfer47791782017-12-22 22:53:493000 days ago1513983229
0xae2dB419...8C30B080C
28.789 ETH
Transfer47724772017-12-21 18:23:393001 days ago1513880619
0xae2dB419...8C30B080C
14.5822319 ETH
Transfer47495312017-12-17 16:59:343005 days ago1513529974
0xae2dB419...8C30B080C
1.65612844 ETH
Transfer47374152017-12-15 14:33:193007 days ago1513348399
0xae2dB419...8C30B080C
0.824445 ETH
Transfer47327542017-12-14 19:20:543008 days ago1513279254
0xae2dB419...8C30B080C
18.76952673 ETH
Transfer47203962017-12-12 14:59:393010 days ago1513090779
0xae2dB419...8C30B080C
3.17186762 ETH
Transfer46991642017-12-08 22:47:133014 days ago1512773233
0xae2dB419...8C30B080C
6.00490897 ETH
Transfer46980662017-12-08 18:15:573014 days ago1512756957
0xae2dB419...8C30B080C
0.72761914 ETH
Transfer46937222017-12-08 0:15:223015 days ago1512692122
0xae2dB419...8C30B080C
12.13939556 ETH
Transfer46888502017-12-07 4:09:413016 days ago1512619781
0xae2dB419...8C30B080C
9.298 ETH
Transfer46815372017-12-05 20:28:553017 days ago1512505735
0xae2dB419...8C30B080C
6.53025129 ETH
Transfer46634012017-12-02 16:59:573020 days ago1512233997
0xae2dB419...8C30B080C
2.61359295 ETH
View All Internal Transactions
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.