ETH Price: $1,987.05 (-4.29%)

Contract

0x45b0F7da3C0fD0Ec1E361A7833c4199952300f56
 

Overview

ETH Balance

0.000000000263049999 ETH

Eth Value

Less Than $0.01 (@ $1,987.05/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep68140482018-12-02 18:53:212306 days ago1543776801IN
0x45b0F7da...952300f56
0 ETH0.0025028550
Transfer68140282018-12-02 18:47:552306 days ago1543776475IN
0x45b0F7da...952300f56
0.8081215 ETH0.00008424
Sweep67796762018-11-27 2:21:182311 days ago1543285278IN
0x45b0F7da...952300f56
0 ETH0.0025028550
Transfer67796602018-11-27 2:18:122311 days ago1543285092IN
0x45b0F7da...952300f56
0.50945858 ETH0.00008424
Sweep67664552018-11-24 22:24:202313 days ago1543098260IN
0x45b0F7da...952300f56
0 ETH0.0025028550
Transfer67664122018-11-24 22:15:382313 days ago1543097738IN
0x45b0F7da...952300f56
0.40692658 ETH0.00012636
Sweep67550522018-11-23 1:46:152315 days ago1542937575IN
0x45b0F7da...952300f56
0 ETH0.0025028550
Transfer67550262018-11-23 1:41:362315 days ago1542937296IN
0x45b0F7da...952300f56
0.60642163 ETH0.00008424
Sweep67394762018-11-20 12:22:232318 days ago1542716543IN
0x45b0F7da...952300f56
0 ETH0.0025028550
Transfer67394472018-11-20 12:14:392318 days ago1542716079IN
0x45b0F7da...952300f56
0.70816362 ETH0.0002105110
Sweep67216352018-11-17 14:02:212321 days ago1542463341IN
0x45b0F7da...952300f56
0 ETH0.0025028550
Transfer67216042018-11-17 13:54:042321 days ago1542462844IN
0x45b0F7da...952300f56
1.3180918 ETH0.000147357
Sweep66864652018-11-11 19:51:262326 days ago1541965886IN
0x45b0F7da...952300f56
0 ETH0.0025028550
Transfer66864432018-11-11 19:47:042326 days ago1541965624IN
0x45b0F7da...952300f56
1.42124389 ETH0.000063153
Sweep66488242018-11-05 15:49:292333 days ago1541432969IN
0x45b0F7da...952300f56
0 ETH0.0025028550
Transfer66488082018-11-05 15:45:392333 days ago1541432739IN
0x45b0F7da...952300f56
0.40460509 ETH0.000189459
Sweep66396162018-11-04 3:26:172334 days ago1541301977IN
0x45b0F7da...952300f56
0 ETH0.0025028550
Transfer66395892018-11-04 3:20:582334 days ago1541301658IN
0x45b0F7da...952300f56
1.32064867 ETH0.000147357
Sweep66056912018-10-29 14:00:282340 days ago1540821628IN
0x45b0F7da...952300f56
0 ETH0.0025028550
Transfer66056182018-10-29 13:41:412340 days ago1540820501IN
0x45b0F7da...952300f56
1.31373098 ETH0.000147357
Sweep65631342018-10-22 15:08:062347 days ago1540220886IN
0x45b0F7da...952300f56
0 ETH0.0025028550
Transfer65631052018-10-22 14:59:132347 days ago1540220353IN
0x45b0F7da...952300f56
0.6083259 ETH0.000189459
Sweep65474402018-10-20 1:28:322349 days ago1539998912IN
0x45b0F7da...952300f56
0 ETH0.0025028550
Transfer65474132018-10-20 1:22:032349 days ago1539998523IN
0x45b0F7da...952300f56
0.50558914 ETH0.000063153
Sweep65337392018-10-17 19:45:202351 days ago1539805520IN
0x45b0F7da...952300f56
0 ETH0.0025028550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-68140482018-12-02 18:53:212306 days ago1543776801
0x45b0F7da...952300f56
0.8081215 ETH
Transfer67796762018-11-27 2:21:182311 days ago1543285278
0x45b0F7da...952300f56
0.50945859 ETH
Transfer67664552018-11-24 22:24:202313 days ago1543098260
0x45b0F7da...952300f56
0.40692659 ETH
Transfer67550522018-11-23 1:46:152315 days ago1542937575
0x45b0F7da...952300f56
0.60642163 ETH
Transfer67394762018-11-20 12:22:232318 days ago1542716543
0x45b0F7da...952300f56
0.70816362 ETH
Transfer67216352018-11-17 14:02:212321 days ago1542463341
0x45b0F7da...952300f56
1.31809181 ETH
Transfer66864652018-11-11 19:51:262326 days ago1541965886
0x45b0F7da...952300f56
1.4212439 ETH
Transfer66488242018-11-05 15:49:292333 days ago1541432969
0x45b0F7da...952300f56
0.40460509 ETH
Transfer66396162018-11-04 3:26:172334 days ago1541301977
0x45b0F7da...952300f56
1.32064868 ETH
Transfer66056912018-10-29 14:00:282340 days ago1540821628
0x45b0F7da...952300f56
1.31373098 ETH
Transfer65631342018-10-22 15:08:062347 days ago1540220886
0x45b0F7da...952300f56
0.60832591 ETH
Transfer65474402018-10-20 1:28:322349 days ago1539998912
0x45b0F7da...952300f56
0.50558915 ETH
Transfer65337392018-10-17 19:45:202351 days ago1539805520
0x45b0F7da...952300f56
0.91288609 ETH
Transfer65076662018-10-13 13:46:182356 days ago1539438378
0x45b0F7da...952300f56
0.1013747 ETH
Transfer65076612018-10-13 13:44:502356 days ago1539438290
0x45b0F7da...952300f56
0.50668356 ETH
Transfer64924062018-10-11 2:11:582358 days ago1539223918
0x45b0F7da...952300f56
0.5071428 ETH
Transfer64770372018-10-08 14:18:282361 days ago1539008308
0x45b0F7da...952300f56
1.21442914 ETH
Transfer64425982018-10-03 0:13:412366 days ago1538525621
0x45b0F7da...952300f56
0.10079466 ETH
Transfer64423442018-10-02 23:16:152366 days ago1538522175
0x45b0F7da...952300f56
0.35076263 ETH
Transfer64302312018-09-30 23:50:262368 days ago1538351426
0x45b0F7da...952300f56
0.55643899 ETH
Transfer64160252018-09-28 16:01:342371 days ago1538150494
0x45b0F7da...952300f56
0.52112325 ETH
Transfer64000632018-09-26 1:02:172373 days ago1537923737
0x45b0F7da...952300f56
0.50728594 ETH
Transfer63853072018-09-23 15:00:042376 days ago1537714804
0x45b0F7da...952300f56
0.20283592 ETH
Transfer63815132018-09-23 0:01:342376 days ago1537660894
0x45b0F7da...952300f56
0.3106851 ETH
Transfer63733092018-09-21 15:52:162378 days ago1537545136
0x45b0F7da...952300f56
0.20680384 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.