ETH Price: $1,614.10 (+12.13%)
 

Overview

ETH Balance

0.029366966275428848 ETH

Eth Value

$47.40 (@ $1,614.10/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer88608782019-11-02 20:01:471985 days ago1572724907IN
0x3B4b78C1...7320D97ac
0.02936695 ETH0.000021051
Sweep88173422019-10-26 20:04:141992 days ago1572120254IN
0x3B4b78C1...7320D97ac
0 ETH0.0010998422
Transfer88173242019-10-26 20:00:321992 days ago1572120032IN
0x3B4b78C1...7320D97ac
0.01001207 ETH0.000021051
Transfer87284132019-10-12 18:49:092006 days ago1570906149IN
0x3B4b78C1...7320D97ac
0.03598933 ETH0.000021051
Transfer86837822019-10-05 18:47:502013 days ago1570301270IN
0x3B4b78C1...7320D97ac
0.01000756 ETH0.000021051
Sweep86144722019-09-24 22:41:032024 days ago1569364863IN
0x3B4b78C1...7320D97ac
0 ETH0.0011012522
Transfer86144472019-09-24 22:34:132024 days ago1569364453IN
0x3B4b78C1...7320D97ac
0.07599541 ETH0.000021051
Sweep85696542019-09-17 22:35:182031 days ago1568759718IN
0x3B4b78C1...7320D97ac
0 ETH0.0011012522
Transfer85696242019-09-17 22:30:332031 days ago1568759433IN
0x3B4b78C1...7320D97ac
0.08392372 ETH0.000021051
Sweep85247852019-09-10 22:31:482038 days ago1568154708IN
0x3B4b78C1...7320D97ac
0 ETH0.0010998422
Transfer85247722019-09-10 22:27:592038 days ago1568154479IN
0x3B4b78C1...7320D97ac
0.06860262 ETH0.000021051
Sweep84799042019-09-03 22:32:232045 days ago1567549943IN
0x3B4b78C1...7320D97ac
0 ETH0.0011012522
Transfer84798822019-09-03 22:27:312045 days ago1567549651IN
0x3B4b78C1...7320D97ac
0.08887383 ETH0.000021051
Sweep84348742019-08-27 22:24:102052 days ago1566944650IN
0x3B4b78C1...7320D97ac
0 ETH0.0011012522
Transfer84348542019-08-27 22:19:372052 days ago1566944377IN
0x3B4b78C1...7320D97ac
0.0817273 ETH0.000021051
Sweep83899062019-08-20 22:23:442059 days ago1566339824IN
0x3B4b78C1...7320D97ac
0 ETH0.0011012522
Transfer83898842019-08-20 22:18:442059 days ago1566339524IN
0x3B4b78C1...7320D97ac
0.0790967 ETH0.000021051
Transfer83448242019-08-13 22:15:112066 days ago1565734511IN
0x3B4b78C1...7320D97ac
0.036401 ETH0.000021051
Sweep82996862019-08-06 22:15:442073 days ago1565129744IN
0x3B4b78C1...7320D97ac
0 ETH0.0010998422
Transfer82996682019-08-06 22:10:372073 days ago1565129437IN
0x3B4b78C1...7320D97ac
0.06620185 ETH0.000021051
Sweep82545932019-07-30 22:09:382080 days ago1564524578IN
0x3B4b78C1...7320D97ac
0 ETH0.0011012522
Transfer82545772019-07-30 22:06:352080 days ago1564524395IN
0x3B4b78C1...7320D97ac
0.08937195 ETH0.000021051
Sweep82095142019-07-23 22:07:362087 days ago1563919656IN
0x3B4b78C1...7320D97ac
0 ETH0.0011012522
Transfer82094942019-07-23 22:04:252087 days ago1563919465IN
0x3B4b78C1...7320D97ac
0.07816383 ETH0.000021051
Sweep81644332019-07-16 22:07:082094 days ago1563314828IN
0x3B4b78C1...7320D97ac
0 ETH0.0011012522
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-88173422019-10-26 20:04:141992 days ago1572120254
0x3B4b78C1...7320D97ac
0.05600897 ETH
-86144722019-09-24 22:41:032024 days ago1569364863
0x3B4b78C1...7320D97ac
0.07599542 ETH
-85696542019-09-17 22:35:182031 days ago1568759718
0x3B4b78C1...7320D97ac
0.08392372 ETH
-85247852019-09-10 22:31:482038 days ago1568154708
0x3B4b78C1...7320D97ac
0.06860263 ETH
-84799042019-09-03 22:32:232045 days ago1567549943
0x3B4b78C1...7320D97ac
0.08887384 ETH
-84348742019-08-27 22:24:102052 days ago1566944650
0x3B4b78C1...7320D97ac
0.0817273 ETH
-83899062019-08-20 22:23:442059 days ago1566339824
0x3B4b78C1...7320D97ac
0.11549771 ETH
-82996862019-08-06 22:15:442073 days ago1565129744
0x3B4b78C1...7320D97ac
0.06620185 ETH
-82545932019-07-30 22:09:382080 days ago1564524578
0x3B4b78C1...7320D97ac
0.08937196 ETH
-82095142019-07-23 22:07:362087 days ago1563919656
0x3B4b78C1...7320D97ac
0.07816383 ETH
-81644332019-07-16 22:07:082094 days ago1563314828
0x3B4b78C1...7320D97ac
0.07805154 ETH
-81196052019-07-09 21:59:462101 days ago1562709586
0x3B4b78C1...7320D97ac
0.08577633 ETH
-80746402019-07-02 22:05:532108 days ago1562105153
0x3B4b78C1...7320D97ac
0.09176746 ETH
-80296892019-06-25 21:56:522115 days ago1561499812
0x3B4b78C1...7320D97ac
0.08964359 ETH
-79848232019-06-18 21:56:592122 days ago1560895019
0x3B4b78C1...7320D97ac
0.07494602 ETH
-79400882019-06-11 21:55:122129 days ago1560290112
0x3B4b78C1...7320D97ac
0.093715 ETH
-78953372019-06-04 21:54:042136 days ago1559685244
0x3B4b78C1...7320D97ac
0.08473801 ETH
-78505432019-05-28 21:54:092143 days ago1559080449
0x3B4b78C1...7320D97ac
0.05196548 ETH
-78057162019-05-21 21:52:132150 days ago1558475533
0x3B4b78C1...7320D97ac
0.12420932 ETH
-77161312019-05-07 21:41:492164 days ago1557265309
0x3B4b78C1...7320D97ac
0.06225138 ETH
-76712092019-04-30 21:39:482171 days ago1556660388
0x3B4b78C1...7320D97ac
0.08696944 ETH
-76262282019-04-23 21:35:492178 days ago1556055349
0x3B4b78C1...7320D97ac
0.09998127 ETH
-75813492019-04-16 21:36:122185 days ago1555450572
0x3B4b78C1...7320D97ac
0.08237289 ETH
-75363182019-04-09 21:34:022192 days ago1554845642
0x3B4b78C1...7320D97ac
0.09033787 ETH
-74913742019-04-02 21:27:172199 days ago1554240437
0x3B4b78C1...7320D97ac
0.06300734 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

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.