ETH Price: $3,143.38 (-1.36%)

Contract

0xb37a0bb98fC80F2828144163d7552a79998d3645
 

Overview

ETH Balance

0.000000001848459904 ETH

Eth Value

Less Than $0.01 (@ $3,143.38/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep62456672018-08-31 8:56:182263 days ago1535705778IN
0xb37a0bb9...9998d3645
0 ETH0.0025028550
Transfer62456402018-08-31 8:52:052263 days ago1535705525IN
0xb37a0bb9...9998d3645
0.23241414 ETH0.00004212
Sweep62392262018-08-30 6:45:262265 days ago1535611526IN
0xb37a0bb9...9998d3645
0 ETH0.0025028550
Transfer62392092018-08-30 6:39:332265 days ago1535611173IN
0xb37a0bb9...9998d3645
0.20041204 ETH0.000105255
Sweep62348732018-08-29 13:26:052265 days ago1535549165IN
0xb37a0bb9...9998d3645
0 ETH0.0025028550
Transfer62348482018-08-29 13:20:472265 days ago1535548847IN
0xb37a0bb9...9998d3645
0.23434703 ETH0.000021051
Sweep62278582018-08-28 8:36:562266 days ago1535445416IN
0xb37a0bb9...9998d3645
0 ETH0.0025028550
Transfer62278402018-08-28 8:32:192266 days ago1535445139IN
0xb37a0bb9...9998d3645
0.20134857 ETH0.000021051
Sweep62226452018-08-27 11:33:252267 days ago1535369605IN
0xb37a0bb9...9998d3645
0 ETH0.0025028550
Transfer62226252018-08-27 11:27:312267 days ago1535369251IN
0xb37a0bb9...9998d3645
0.20224177 ETH0.000021051
Sweep62172032018-08-26 13:33:262268 days ago1535290406IN
0xb37a0bb9...9998d3645
0 ETH0.0025028550
Transfer62171842018-08-26 13:29:162268 days ago1535290156IN
0xb37a0bb9...9998d3645
0.20113425 ETH0.000021051
Sweep62106912018-08-25 11:21:132269 days ago1535196073IN
0xb37a0bb9...9998d3645
0 ETH0.0025028550
Transfer62106462018-08-25 11:10:042269 days ago1535195404IN
0xb37a0bb9...9998d3645
0.20411056 ETH0.000021051
Sweep62050502018-08-24 12:24:292270 days ago1535113469IN
0xb37a0bb9...9998d3645
0 ETH0.0025028550
Transfer62050172018-08-24 12:17:322270 days ago1535113052IN
0xb37a0bb9...9998d3645
0.20833612 ETH0.000021051
Sweep61994142018-08-23 13:30:402271 days ago1535031040IN
0xb37a0bb9...9998d3645
0 ETH0.0025028550
Transfer61993772018-08-23 13:21:382271 days ago1535030498IN
0xb37a0bb9...9998d3645
0.20300869 ETH0.000021051
Sweep61941542018-08-22 15:56:292272 days ago1534953389IN
0xb37a0bb9...9998d3645
0 ETH0.0025028550
Transfer61941182018-08-22 15:48:342272 days ago1534952914IN
0xb37a0bb9...9998d3645
0.20142669 ETH0.000021051
Sweep61889322018-08-21 18:54:162273 days ago1534877656IN
0xb37a0bb9...9998d3645
0 ETH0.0025028550
Transfer61888892018-08-21 18:44:042273 days ago1534877044IN
0xb37a0bb9...9998d3645
0.20201788 ETH0.000021051
Sweep61848772018-08-21 2:36:342274 days ago1534818994IN
0xb37a0bb9...9998d3645
0 ETH0.0025028550
Transfer61848492018-08-21 2:28:302274 days ago1534818510IN
0xb37a0bb9...9998d3645
0.20048454 ETH0.000021051
Sweep61827272018-08-20 17:58:562274 days ago1534787936IN
0xb37a0bb9...9998d3645
0 ETH0.0050057100
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
62456672018-08-31 8:56:182263 days ago1535705778
0xb37a0bb9...9998d3645
0.23241415 ETH
62392262018-08-30 6:45:262265 days ago1535611526
0xb37a0bb9...9998d3645
0.20041204 ETH
62348732018-08-29 13:26:052265 days ago1535549165
0xb37a0bb9...9998d3645
0.23434704 ETH
62278582018-08-28 8:36:562266 days ago1535445416
0xb37a0bb9...9998d3645
0.20134858 ETH
62226452018-08-27 11:33:252267 days ago1535369605
0xb37a0bb9...9998d3645
0.20224177 ETH
62172032018-08-26 13:33:262268 days ago1535290406
0xb37a0bb9...9998d3645
0.20113425 ETH
62106912018-08-25 11:21:132269 days ago1535196073
0xb37a0bb9...9998d3645
0.20411057 ETH
62050502018-08-24 12:24:292270 days ago1535113469
0xb37a0bb9...9998d3645
0.20833612 ETH
61994142018-08-23 13:30:402271 days ago1535031040
0xb37a0bb9...9998d3645
0.20300869 ETH
61941542018-08-22 15:56:292272 days ago1534953389
0xb37a0bb9...9998d3645
0.20142669 ETH
61889322018-08-21 18:54:162273 days ago1534877656
0xb37a0bb9...9998d3645
0.20201789 ETH
61848772018-08-21 2:36:342274 days ago1534818994
0xb37a0bb9...9998d3645
0.20048455 ETH
61827272018-08-20 17:58:562274 days ago1534787936
0xb37a0bb9...9998d3645
0.20316974 ETH
61785242018-08-20 0:53:332275 days ago1534726413
0xb37a0bb9...9998d3645
0.2121043 ETH
61751252018-08-19 11:12:402275 days ago1534677160
0xb37a0bb9...9998d3645
0.20108418 ETH
61693902018-08-18 11:49:252276 days ago1534592965
0xb37a0bb9...9998d3645
0.20045208 ETH
61639122018-08-17 13:20:032277 days ago1534512003
0xb37a0bb9...9998d3645
0.20158623 ETH
61584732018-08-16 15:17:222278 days ago1534432642
0xb37a0bb9...9998d3645
0.20589741 ETH
61528412018-08-15 16:30:542279 days ago1534350654
0xb37a0bb9...9998d3645
0.20144432 ETH
61463472018-08-14 14:18:252280 days ago1534256305
0xb37a0bb9...9998d3645
0.21894663 ETH
61399932018-08-13 12:31:582281 days ago1534163518
0xb37a0bb9...9998d3645
0.20099949 ETH
61339052018-08-12 11:44:342282 days ago1534074274
0xb37a0bb9...9998d3645
0.20341926 ETH
61278732018-08-11 11:00:012283 days ago1533985201
0xb37a0bb9...9998d3645
0.20258923 ETH
61222492018-08-10 12:18:592284 days ago1533903539
0xb37a0bb9...9998d3645
0.20295722 ETH
61171422018-08-09 15:44:532285 days ago1533829493
0xb37a0bb9...9998d3645
0.20001072 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.