ETH Price: $2,585.36 (-2.96%)

Contract

0xD99415623C3f854601057B297A1130533Dbd9326
 

Overview

ETH Balance

0.00000000716006528 ETH

Eth Value

Less Than $0.01 (@ $2,585.36/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep64456922018-10-03 12:28:562324 days ago1538569736IN
0xD9941562...33Dbd9326
0 ETH0.0024996550
Transfer64456532018-10-03 12:20:442324 days ago1538569244IN
0xD9941562...33Dbd9326
0.05009417 ETH0.000063153
Sweep64220222018-09-29 15:30:562327 days ago1538235056IN
0xD9941562...33Dbd9326
0 ETH0.0024996550
Transfer64219962018-09-29 15:25:082327 days ago1538234708IN
0xD9941562...33Dbd9326
0.05041013 ETH0.000063153
Sweep63972242018-09-25 14:00:162332 days ago1537884016IN
0xD9941562...33Dbd9326
0 ETH0.0024996550
Transfer63971912018-09-25 13:52:032332 days ago1537883523IN
0xD9941562...33Dbd9326
0.05020439 ETH0.000063153
Sweep63645752018-09-20 4:44:552337 days ago1537418695IN
0xD9941562...33Dbd9326
0 ETH0.0024996550
Transfer63645542018-09-20 4:39:072337 days ago1537418347IN
0xD9941562...33Dbd9326
0.05005701 ETH0.000063153
Sweep63175032018-09-12 10:10:202345 days ago1536747020IN
0xD9941562...33Dbd9326
0 ETH0.0024996550
Transfer63174852018-09-12 10:06:212345 days ago1536746781IN
0xD9941562...33Dbd9326
0.05004986 ETH0.000063153
Sweep62711072018-09-04 15:50:512352 days ago1536076251IN
0xD9941562...33Dbd9326
0 ETH0.0024996550
Transfer62710882018-09-04 15:44:512352 days ago1536075891IN
0xD9941562...33Dbd9326
0.05036972 ETH0.000063153
Sweep62209292018-08-27 4:32:442361 days ago1535344364IN
0xD9941562...33Dbd9326
0 ETH0.0024996550
Transfer62208902018-08-27 4:25:592361 days ago1535343959IN
0xD9941562...33Dbd9326
0.05006288 ETH0.000021051
Sweep61667852018-08-18 1:13:502370 days ago1534554830IN
0xD9941562...33Dbd9326
0 ETH0.0049993100
Transfer61667612018-08-18 1:07:432370 days ago1534554463IN
0xD9941562...33Dbd9326
0.05034777 ETH0.000021051
Sweep61199572018-08-10 2:56:552378 days ago1533869815IN
0xD9941562...33Dbd9326
0 ETH0.0049993100
Transfer61199342018-08-10 2:50:432378 days ago1533869443IN
0xD9941562...33Dbd9326
0.0500424 ETH0.000021051
Sweep60938022018-08-05 17:06:022382 days ago1533488762IN
0xD9941562...33Dbd9326
0 ETH0.0049993100
Transfer60937772018-08-05 17:00:212382 days ago1533488421IN
0xD9941562...33Dbd9326
0.05008152 ETH0.000021051
Sweep60656332018-07-31 22:35:122387 days ago1533076512IN
0xD9941562...33Dbd9326
0 ETH0.0049993100
Transfer60656182018-07-31 22:32:042387 days ago1533076324IN
0xD9941562...33Dbd9326
0.05013127 ETH0.000021051
Sweep60391452018-07-27 12:08:512392 days ago1532693331IN
0xD9941562...33Dbd9326
0 ETH0.0049993100
Transfer60391252018-07-27 12:04:592392 days ago1532693099IN
0xD9941562...33Dbd9326
0.05010962 ETH0.000021051
Sweep60120582018-07-22 21:15:282396 days ago1532294128IN
0xD9941562...33Dbd9326
0 ETH0.0049993100
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
64456922018-10-03 12:28:562324 days ago1538569736
0xD9941562...33Dbd9326
0.05009417 ETH
64220222018-09-29 15:30:562327 days ago1538235056
0xD9941562...33Dbd9326
0.05041014 ETH
63972242018-09-25 14:00:162332 days ago1537884016
0xD9941562...33Dbd9326
0.05020439 ETH
63645752018-09-20 4:44:552337 days ago1537418695
0xD9941562...33Dbd9326
0.05005702 ETH
63175032018-09-12 10:10:202345 days ago1536747020
0xD9941562...33Dbd9326
0.05004986 ETH
62711072018-09-04 15:50:512352 days ago1536076251
0xD9941562...33Dbd9326
0.05036972 ETH
62209292018-08-27 4:32:442361 days ago1535344364
0xD9941562...33Dbd9326
0.05006289 ETH
61667852018-08-18 1:13:502370 days ago1534554830
0xD9941562...33Dbd9326
0.05034777 ETH
61199572018-08-10 2:56:552378 days ago1533869815
0xD9941562...33Dbd9326
0.0500424 ETH
60938022018-08-05 17:06:022382 days ago1533488762
0xD9941562...33Dbd9326
0.05008152 ETH
60656332018-07-31 22:35:122387 days ago1533076512
0xD9941562...33Dbd9326
0.05013127 ETH
60391452018-07-27 12:08:512392 days ago1532693331
0xD9941562...33Dbd9326
0.05010963 ETH
60120582018-07-22 21:15:282396 days ago1532294128
0xD9941562...33Dbd9326
0.05014508 ETH
59866092018-07-18 13:34:482401 days ago1531920888
0xD9941562...33Dbd9326
0.05013712 ETH
59620632018-07-14 9:46:052405 days ago1531561565
0xD9941562...33Dbd9326
0.05012214 ETH
59374112018-07-10 6:07:382409 days ago1531202858
0xD9941562...33Dbd9326
0.05004512 ETH
59141052018-07-06 5:38:402413 days ago1530855520
0xD9941562...33Dbd9326
0.05004338 ETH
58912942018-07-02 7:43:182417 days ago1530517398
0xD9941562...33Dbd9326
0.05028261 ETH
58664552018-06-28 1:39:232421 days ago1530149963
0xD9941562...33Dbd9326
0.05013501 ETH
58412852018-06-23 17:26:082425 days ago1529774768
0xD9941562...33Dbd9326
0.05009663 ETH
58154122018-06-19 7:00:482430 days ago1529391648
0xD9941562...33Dbd9326
0.05009786 ETH
57905432018-06-15 1:29:032434 days ago1529026143
0xD9941562...33Dbd9326
0.05000395 ETH
57621712018-06-10 2:08:122439 days ago1528596492
0xD9941562...33Dbd9326
0.05011112 ETH
57355112018-06-05 8:32:392444 days ago1528187559
0xD9941562...33Dbd9326
0.05010986 ETH
57122132018-06-01 5:27:592448 days ago1527830879
0xD9941562...33Dbd9326
0.05016135 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.