ETH Price: $2,821.89 (+2.11%)
Gas: 0.66 Gwei

Contract

0x592E161fa8Ab6Cc1b8B55F1f034BB1d6706C0Ca1
 

Overview

ETH Balance

0.000000003759395125 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep60962412018-08-06 2:55:122393 days ago1533524112IN
0x592E161f...6706C0Ca1
0 ETH0.0049993100
Transfer60962162018-08-06 2:48:162393 days ago1533523696IN
0x592E161f...6706C0Ca1
0.01996885 ETH0.000021051
Transfer60548042018-07-30 2:50:292400 days ago1532919029IN
0x592E161f...6706C0Ca1
0.04108467 ETH0.000021051
Sweep60134542018-07-23 2:51:392407 days ago1532314299IN
0x592E161f...6706C0Ca1
0 ETH0.0049993100
Transfer60134282018-07-23 2:43:342407 days ago1532313814IN
0x592E161f...6706C0Ca1
0.06063724 ETH0.000021051
Sweep59724022018-07-16 2:53:442414 days ago1531709624IN
0x592E161f...6706C0Ca1
0 ETH0.0050057100
Transfer59723652018-07-16 2:45:222414 days ago1531709122IN
0x592E161f...6706C0Ca1
0.08790673 ETH0.000021051
Sweep59307512018-07-09 2:45:112421 days ago1531104311IN
0x592E161f...6706C0Ca1
0 ETH0.0050057100
Transfer59307292018-07-09 2:40:372421 days ago1531104037IN
0x592E161f...6706C0Ca1
0.08418103 ETH0.000021051
Sweep58900502018-07-02 2:58:292428 days ago1530500309IN
0x592E161f...6706C0Ca1
0 ETH0.0037542775
Transfer58899692018-07-02 2:38:182428 days ago1530499098IN
0x592E161f...6706C0Ca1
0.09405979 ETH0.000021051
Sweep58495002018-06-25 2:36:232435 days ago1529894183IN
0x592E161f...6706C0Ca1
0 ETH0.0025028550
Transfer58494812018-06-25 2:31:072435 days ago1529893867IN
0x592E161f...6706C0Ca1
0.08334385 ETH0.000021051
Sweep58084392018-06-18 2:34:312442 days ago1529289271IN
0x592E161f...6706C0Ca1
0 ETH0.0025028550
Transfer58084132018-06-18 2:28:202442 days ago1529288900IN
0x592E161f...6706C0Ca1
0.09168496 ETH0.000021051
Sweep57678832018-06-11 2:31:552449 days ago1528684315IN
0x592E161f...6706C0Ca1
0 ETH0.0025028550
Transfer57678582018-06-11 2:23:512449 days ago1528683831IN
0x592E161f...6706C0Ca1
0.09431365 ETH0.000021051
Sweep57283802018-06-04 2:24:142456 days ago1528079054IN
0x592E161f...6706C0Ca1
0 ETH0.0025028550
Transfer57283592018-06-04 2:19:312456 days ago1528078771IN
0x592E161f...6706C0Ca1
0.0968049 ETH0.000021051
Sweep56889442018-05-28 2:17:092463 days ago1527473829IN
0x592E161f...6706C0Ca1
0 ETH0.0025028550
Transfer56889222018-05-28 2:12:152463 days ago1527473535IN
0x592E161f...6706C0Ca1
0.09340329 ETH0.000021051
Sweep56493942018-05-21 2:15:532470 days ago1526868953IN
0x592E161f...6706C0Ca1
0 ETH0.0025028550
Transfer56493732018-05-21 2:10:342470 days ago1526868634IN
0x592E161f...6706C0Ca1
0.0998366 ETH0.000021051
Sweep56097932018-05-14 2:15:582477 days ago1526264158IN
0x592E161f...6706C0Ca1
0 ETH0.0025028550
Transfer56097622018-05-14 2:07:062477 days ago1526263626IN
0x592E161f...6706C0Ca1
0.09463046 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
60962412018-08-06 2:55:122393 days ago1533524112
0x592E161f...6706C0Ca1
0.06105354 ETH
60134542018-07-23 2:51:392407 days ago1532314299
0x592E161f...6706C0Ca1
0.06063724 ETH
59724022018-07-16 2:53:442414 days ago1531709624
0x592E161f...6706C0Ca1
0.08790673 ETH
59307512018-07-09 2:45:112421 days ago1531104311
0x592E161f...6706C0Ca1
0.08418104 ETH
58900502018-07-02 2:58:292428 days ago1530500309
0x592E161f...6706C0Ca1
0.09405979 ETH
58495002018-06-25 2:36:232435 days ago1529894183
0x592E161f...6706C0Ca1
0.08334386 ETH
58084392018-06-18 2:34:312442 days ago1529289271
0x592E161f...6706C0Ca1
0.09168497 ETH
57678832018-06-11 2:31:552449 days ago1528684315
0x592E161f...6706C0Ca1
0.09431366 ETH
57283802018-06-04 2:24:142456 days ago1528079054
0x592E161f...6706C0Ca1
0.0968049 ETH
56889442018-05-28 2:17:092463 days ago1527473829
0x592E161f...6706C0Ca1
0.0934033 ETH
56493942018-05-21 2:15:532470 days ago1526868953
0x592E161f...6706C0Ca1
0.09983661 ETH
56097932018-05-14 2:15:582477 days ago1526264158
0x592E161f...6706C0Ca1
0.09463046 ETH
55695842018-05-07 2:20:032484 days ago1525659603
0x592E161f...6706C0Ca1
0.0998617 ETH
55296472018-04-30 2:09:322491 days ago1525054172
0x592E161f...6706C0Ca1
0.09876835 ETH
54892032018-04-23 2:03:452498 days ago1524449025
0x592E161f...6706C0Ca1
0.10000183 ETH
54487832018-04-16 3:50:342505 days ago1523850634
0x592E161f...6706C0Ca1
0.100033 ETH
54087392018-04-09 10:39:422512 days ago1523270382
0x592E161f...6706C0Ca1
0.10008714 ETH
53672462018-04-02 13:27:242519 days ago1522675644
0x592E161f...6706C0Ca1
0.10005986 ETH
53258902018-03-26 15:09:352526 days ago1522076975
0x592E161f...6706C0Ca1
0.09386033 ETH
52841712018-03-19 16:13:142533 days ago1521475994
0x592E161f...6706C0Ca1
0.0928953 ETH
52429142018-03-12 16:02:372540 days ago1520870557
0x592E161f...6706C0Ca1
0.09638512 ETH
52016312018-03-05 15:59:052547 days ago1520265545
0x592E161f...6706C0Ca1
0.10004205 ETH
51621242018-02-26 23:01:002554 days ago1519686060
0x592E161f...6706C0Ca1
0.10000917 ETH
51253422018-02-20 16:16:402560 days ago1519143400
0x592E161f...6706C0Ca1
0.100026 ETH
50840992018-02-13 17:38:322567 days ago1518543512
0x592E161f...6706C0Ca1
0.10005691 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.