ETH Price: $2,594.19 (-4.73%)
Gas: 1.13 Gwei

Contract

0x8dB2Acc8226F6c877B43a233F4935325A494dB52
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer58000932018-06-16 16:53:392428 days ago1529168019IN
0x8dB2Acc8...5A494dB52
1.54903392 ETH0.0008440
Transfer58000592018-06-16 16:43:562428 days ago1529167436IN
0x8dB2Acc8...5A494dB52
1.53807544 ETH0.0000844
Transfer57998752018-06-16 15:59:022428 days ago1529164742IN
0x8dB2Acc8...5A494dB52
0.98422006 ETH0.0008440
Transfer57998552018-06-16 15:55:272428 days ago1529164527IN
0x8dB2Acc8...5A494dB52
1.55213236 ETH0.0000844
Transfer57998512018-06-16 15:53:552428 days ago1529164435IN
0x8dB2Acc8...5A494dB52
1.53807544 ETH0.0000844
Transfer57998442018-06-16 15:52:142428 days ago1529164334IN
0x8dB2Acc8...5A494dB52
1.5550282 ETH0.0000844
Transfer57998412018-06-16 15:51:442428 days ago1529164304IN
0x8dB2Acc8...5A494dB52
1.55340812 ETH0.0000844
Transfer57998402018-06-16 15:51:272428 days ago1529164287IN
0x8dB2Acc8...5A494dB52
1.55218426 ETH0.0000844
Transfer57998152018-06-16 15:45:262428 days ago1529163926IN
0x8dB2Acc8...5A494dB52
1.54843229 ETH0.0000844
Transfer57998052018-06-16 15:42:282429 days ago1529163748IN
0x8dB2Acc8...5A494dB52
1.54903392 ETH0.0000844
Sweep57358912018-06-05 10:07:052440 days ago1528193225IN
0x8dB2Acc8...5A494dB52
0 ETH0.0025028550
Transfer57358892018-06-05 10:05:042440 days ago1528193104IN
0x8dB2Acc8...5A494dB52
0.67170318 ETH0.0002573412.225
Sweep57358842018-06-05 10:03:192440 days ago1528192999IN
0x8dB2Acc8...5A494dB52
0 ETH0.0025028550
Transfer57358792018-06-05 10:02:422440 days ago1528192962IN
0x8dB2Acc8...5A494dB52
1.34340636 ETH0.0002736613
Transfer57358652018-06-05 10:00:062440 days ago1528192806IN
0x8dB2Acc8...5A494dB52
1.34340636 ETH0.0003157615
Transfer57358572018-06-05 9:58:502440 days ago1528192730IN
0x8dB2Acc8...5A494dB52
1.34517902 ETH0.0003157615
Sweep57254142018-06-03 13:39:172442 days ago1528033157IN
0x8dB2Acc8...5A494dB52
0 ETH0.0025028550
Transfer57254082018-06-03 13:38:012442 days ago1528033081IN
0x8dB2Acc8...5A494dB52
1.27544619 ETH0.0002902413.7875
Transfer57254032018-06-03 13:36:302442 days ago1528032990IN
0x8dB2Acc8...5A494dB52
1.27638272 ETH0.0002947114
Transfer57253932018-06-03 13:34:012442 days ago1528032841IN
0x8dB2Acc8...5A494dB52
1.27710007 ETH0.0003157615
Sweep51804352018-03-02 1:37:302535 days ago1519954650IN
0x8dB2Acc8...5A494dB52
0 ETH0.0023304550
Sweep50937182018-02-15 8:39:272550 days ago1518683967IN
0x8dB2Acc8...5A494dB52
0 ETH0.0025028550
Sweep50936612018-02-15 8:26:032550 days ago1518683163IN
0x8dB2Acc8...5A494dB52
0 ETH0.0025028550
Transfer50936552018-02-15 8:24:202550 days ago1518683060IN
0x8dB2Acc8...5A494dB52
0.90809832 ETH0.00008424
Transfer50935942018-02-15 8:11:332550 days ago1518682293IN
0x8dB2Acc8...5A494dB52
0.53455963 ETH0.00008424
View all transactions

Latest 22 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
57358912018-06-05 10:07:052440 days ago1528193225
0x8dB2Acc8...5A494dB52
0.67170318 ETH
57358842018-06-05 10:03:192440 days ago1528192999
0x8dB2Acc8...5A494dB52
4.03199174 ETH
57254142018-06-03 13:39:172442 days ago1528033157
0x8dB2Acc8...5A494dB52
3.82892898 ETH
50937182018-02-15 8:39:272550 days ago1518683967
0x8dB2Acc8...5A494dB52
0.90809832 ETH
50936612018-02-15 8:26:032550 days ago1518683163
0x8dB2Acc8...5A494dB52
0.53455963 ETH
50932582018-02-15 6:48:062550 days ago1518677286
0x8dB2Acc8...5A494dB52
2.01205536 ETH
50901092018-02-14 18:03:322550 days ago1518631412
0x8dB2Acc8...5A494dB52
0.57496474 ETH
50899292018-02-14 17:21:402550 days ago1518628900
0x8dB2Acc8...5A494dB52
0.89890937 ETH
50899092018-02-14 17:16:352550 days ago1518628595
0x8dB2Acc8...5A494dB52
0.89890937 ETH
50898582018-02-14 17:05:452550 days ago1518627945
0x8dB2Acc8...5A494dB52
0.89670889 ETH
50898222018-02-14 16:56:092550 days ago1518627369
0x8dB2Acc8...5A494dB52
1.79948134 ETH
50896322018-02-14 16:10:072550 days ago1518624607
0x8dB2Acc8...5A494dB52
1.66641152 ETH
50895162018-02-14 15:44:252551 days ago1518623065
0x8dB2Acc8...5A494dB52
0.95512971 ETH
50894982018-02-14 15:41:302551 days ago1518622890
0x8dB2Acc8...5A494dB52
2.86981184 ETH
50877792018-02-14 8:25:012551 days ago1518596701
0x8dB2Acc8...5A494dB52
0.91944141 ETH
50876742018-02-14 7:58:302551 days ago1518595110
0x8dB2Acc8...5A494dB52
3.92808499 ETH
50876252018-02-14 7:46:162551 days ago1518594376
0x8dB2Acc8...5A494dB52
1.96748099 ETH
50792142018-02-12 21:58:162552 days ago1518472696
0x8dB2Acc8...5A494dB52
0.72364817 ETH
50762622018-02-12 9:51:422553 days ago1518429102
0x8dB2Acc8...5A494dB52
1.78032955 ETH
50534992018-02-08 14:44:172557 days ago1518101057
0x8dB2Acc8...5A494dB52
15.8677128 ETH
45398752017-11-12 17:10:062644 days ago1510506606
0x8dB2Acc8...5A494dB52
14.89380957 ETH
44644002017-10-31 14:10:102657 days ago1509459010  Contract Creation0 ETH
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.