ETH Price: $2,670.40 (-4.34%)

Contract

0xA0E454FB90BF092da8c362b876468B7a19eAE905
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep89877042019-11-23 17:36:351919 days ago1574530595IN
0xA0E454FB...a19eAE905
0 ETH0.0011012522
Transfer89876822019-11-23 17:32:011919 days ago1574530321IN
0xA0E454FB...a19eAE905
1.24347883 ETH0.0002105110
Sweep88546312019-11-01 19:56:291941 days ago1572638189IN
0xA0E454FB...a19eAE905
0 ETH0.0010998422
Transfer88546072019-11-01 19:52:431941 days ago1572637963IN
0xA0E454FB...a19eAE905
0.9275776 ETH0.0002105110
Sweep87989222019-10-23 20:56:461950 days ago1571864206IN
0xA0E454FB...a19eAE905
0 ETH0.0011012522
Transfer87988942019-10-23 20:50:231950 days ago1571863823IN
0xA0E454FB...a19eAE905
2.31474747 ETH0.0002105110
Sweep79511382019-06-13 15:32:362082 days ago1560439956IN
0xA0E454FB...a19eAE905
0 ETH0.0025028550
Transfer79511202019-06-13 15:29:162082 days ago1560439756IN
0xA0E454FB...a19eAE905
1.54739928 ETH0.000189459
Sweep78950272019-06-04 20:42:452091 days ago1559680965IN
0xA0E454FB...a19eAE905
0 ETH0.0025028550
Transfer78950112019-06-04 20:37:582091 days ago1559680678IN
0xA0E454FB...a19eAE905
5.11506482 ETH0.00012636
Sweep77608112019-05-14 21:08:392112 days ago1557868119IN
0xA0E454FB...a19eAE905
0 ETH0.0025028550
Transfer77607972019-05-14 21:04:592112 days ago1557867899IN
0xA0E454FB...a19eAE905
0.60521708 ETH0.00008424
Sweep76449212019-04-26 19:37:302130 days ago1556307450IN
0xA0E454FB...a19eAE905
0 ETH0.0025028550
Transfer76448972019-04-26 19:33:072130 days ago1556307187IN
0xA0E454FB...a19eAE905
1.69770262 ETH0.000063153
Sweep74911212019-04-02 20:38:152154 days ago1554237495IN
0xA0E454FB...a19eAE905
0 ETH0.0025028550
Transfer74911072019-04-02 20:35:012154 days ago1554237301IN
0xA0E454FB...a19eAE905
2.4248846 ETH0.000063153
Sweep67419392018-11-20 22:05:162287 days ago1542751516IN
0xA0E454FB...a19eAE905
0 ETH0.0025028550
Transfer67419152018-11-20 22:00:162287 days ago1542751216IN
0xA0E454FB...a19eAE905
2.56594454 ETH0.0002105110
Sweep63745232018-09-21 20:30:082347 days ago1537561808IN
0xA0E454FB...a19eAE905
0 ETH0.0025028550
Transfer63744892018-09-21 20:23:562347 days ago1537561436IN
0xA0E454FB...a19eAE905
3.07333078 ETH0.0002315611
Sweep62186392018-08-26 19:09:152373 days ago1535310555IN
0xA0E454FB...a19eAE905
0 ETH0.0025028550
Transfer62186172018-08-26 19:03:442373 days ago1535310224IN
0xA0E454FB...a19eAE905
1.34639078 ETH0.000063153
Sweep62121312018-08-25 17:14:052374 days ago1535217245IN
0xA0E454FB...a19eAE905
0 ETH0.0025028550
Transfer62121022018-08-25 17:08:102374 days ago1535216890IN
0xA0E454FB...a19eAE905
2.20377217 ETH0.000063153
Sweep62069752018-08-24 20:10:132375 days ago1535141413IN
0xA0E454FB...a19eAE905
0 ETH0.0025028550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
89877042019-11-23 17:36:351919 days ago1574530595
0xA0E454FB...a19eAE905
1.24347883 ETH
88546312019-11-01 19:56:291941 days ago1572638189
0xA0E454FB...a19eAE905
0.9275776 ETH
87989222019-10-23 20:56:461950 days ago1571864206
0xA0E454FB...a19eAE905
2.31474747 ETH
79511382019-06-13 15:32:362082 days ago1560439956
0xA0E454FB...a19eAE905
1.54739928 ETH
78950272019-06-04 20:42:452091 days ago1559680965
0xA0E454FB...a19eAE905
5.11506482 ETH
77608112019-05-14 21:08:392112 days ago1557868119
0xA0E454FB...a19eAE905
0.60521708 ETH
76449212019-04-26 19:37:302130 days ago1556307450
0xA0E454FB...a19eAE905
1.69770262 ETH
74911212019-04-02 20:38:152154 days ago1554237495
0xA0E454FB...a19eAE905
2.4248846 ETH
67419392018-11-20 22:05:162287 days ago1542751516
0xA0E454FB...a19eAE905
2.56594454 ETH
63745232018-09-21 20:30:082347 days ago1537561808
0xA0E454FB...a19eAE905
3.07333078 ETH
62186392018-08-26 19:09:152373 days ago1535310555
0xA0E454FB...a19eAE905
1.34639078 ETH
62121312018-08-25 17:14:052374 days ago1535217245
0xA0E454FB...a19eAE905
2.20377217 ETH
62069752018-08-24 20:10:132375 days ago1535141413
0xA0E454FB...a19eAE905
1.39596342 ETH
61710682018-08-18 18:47:152381 days ago1534618035
0xA0E454FB...a19eAE905
0.999937 ETH
61443592018-08-14 6:17:292386 days ago1534227449
0xA0E454FB...a19eAE905
1.14044389 ETH
61234402018-08-10 17:04:482389 days ago1533920688
0xA0E454FB...a19eAE905
1.65323162 ETH
60885182018-08-04 19:39:392395 days ago1533411579
0xA0E454FB...a19eAE905
0.4999664 ETH
60797692018-08-03 8:28:152397 days ago1533284895
0xA0E454FB...a19eAE905
1.09993322 ETH
60711572018-08-01 21:19:592398 days ago1533158399
0xA0E454FB...a19eAE905
0.48799447 ETH
60614892018-07-31 5:53:292400 days ago1533016409
0xA0E454FB...a19eAE905
0.13893867 ETH
60471082018-07-28 20:15:332402 days ago1532808933
0xA0E454FB...a19eAE905
2.69175877 ETH
60179292018-07-23 21:06:462407 days ago1532380006
0xA0E454FB...a19eAE905
1.96035862 ETH
60058642018-07-21 20:19:522409 days ago1532204392
0xA0E454FB...a19eAE905
0.34934102 ETH
59870742018-07-18 15:26:232412 days ago1531927583
0xA0E454FB...a19eAE905
11.42047127 ETH
57776792018-06-12 19:51:152448 days ago1528833075
0xA0E454FB...a19eAE905
0.12985146 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.