ETH Price: $2,283.71 (+2.29%)

Contract

0x7D48E42806fA9cbBeeeBD0A9811208B4Ba91C5AA
 

Overview

ETH Balance

0.000000000796406014 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep61093492018-08-08 8:04:552222 days ago1533715495IN
0x7D48E428...4Ba91C5AA
0 ETH0.0049993100
Transfer61093352018-08-08 8:01:322222 days ago1533715292IN
0x7D48E428...4Ba91C5AA
0.06856576 ETH0.000021051
Sweep60756982018-08-02 15:55:592228 days ago1533225359IN
0x7D48E428...4Ba91C5AA
0 ETH0.0050057100
Transfer60756792018-08-02 15:52:102228 days ago1533225130IN
0x7D48E428...4Ba91C5AA
0.08005508 ETH0.000021051
Transfer60477462018-07-28 22:46:322233 days ago1532817992IN
0x7D48E428...4Ba91C5AA
0.01006654 ETH0.000021051
Sweep60442192018-07-28 8:29:132233 days ago1532766553IN
0x7D48E428...4Ba91C5AA
0 ETH0.0049993100
Transfer60441992018-07-28 8:24:182233 days ago1532766258IN
0x7D48E428...4Ba91C5AA
0.05000462 ETH0.000021051
Sweep59965852018-07-20 6:44:212241 days ago1532069061IN
0x7D48E428...4Ba91C5AA
0 ETH0.0050057100
Transfer59965482018-07-20 6:36:342241 days ago1532068594IN
0x7D48E428...4Ba91C5AA
0.10013177 ETH0.000021051
Sweep59114022018-07-05 18:35:332256 days ago1530815733IN
0x7D48E428...4Ba91C5AA
0 ETH0.0050057100
Transfer59113822018-07-05 18:29:372256 days ago1530815377IN
0x7D48E428...4Ba91C5AA
0.4001631 ETH0.000021051
Sweep57677202018-06-11 1:46:282281 days ago1528681588IN
0x7D48E428...4Ba91C5AA
0 ETH0.0025028550
Transfer57676992018-06-11 1:40:572281 days ago1528681257IN
0x7D48E428...4Ba91C5AA
0.4001594 ETH0.000021051
Sweep56375972018-05-18 23:55:332304 days ago1526687733IN
0x7D48E428...4Ba91C5AA
0 ETH0.0025028550
Transfer56375742018-05-18 23:50:032304 days ago1526687403IN
0x7D48E428...4Ba91C5AA
0.40026694 ETH0.000021051
Sweep55054642018-04-25 21:44:312327 days ago1524692671IN
0x7D48E428...4Ba91C5AA
0 ETH0.0025028550
Transfer55054492018-04-25 21:40:232327 days ago1524692423IN
0x7D48E428...4Ba91C5AA
0.23008588 ETH0.000021051
Sweep54330782018-04-13 12:11:292339 days ago1523621489IN
0x7D48E428...4Ba91C5AA
0 ETH0.0025028550
Transfer54330552018-04-13 12:06:212339 days ago1523621181IN
0x7D48E428...4Ba91C5AA
0.20024022 ETH0.000021051
Sweep53551002018-03-31 13:32:142352 days ago1522503134IN
0x7D48E428...4Ba91C5AA
0 ETH0.0025028550
Transfer53550582018-03-31 13:22:022352 days ago1522502522IN
0x7D48E428...4Ba91C5AA
0.20001675 ETH0.000021051
Sweep52898122018-03-20 15:09:472363 days ago1521558587IN
0x7D48E428...4Ba91C5AA
0 ETH0.0025028550
Transfer52897792018-03-20 15:02:422363 days ago1521558162IN
0x7D48E428...4Ba91C5AA
0.20034679 ETH0.000021051
Sweep52235642018-03-09 9:23:032374 days ago1520587383IN
0x7D48E428...4Ba91C5AA
0 ETH0.0025028550
Transfer52235292018-03-09 9:14:132374 days ago1520586853IN
0x7D48E428...4Ba91C5AA
0.20010497 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
61093492018-08-08 8:04:552222 days ago1533715495
0x7D48E428...4Ba91C5AA
0.06856577 ETH
60756982018-08-02 15:55:592228 days ago1533225359
0x7D48E428...4Ba91C5AA
0.09012163 ETH
60442192018-07-28 8:29:132233 days ago1532766553
0x7D48E428...4Ba91C5AA
0.05000462 ETH
59965852018-07-20 6:44:212241 days ago1532069061
0x7D48E428...4Ba91C5AA
0.10013178 ETH
59114022018-07-05 18:35:332256 days ago1530815733
0x7D48E428...4Ba91C5AA
0.4001631 ETH
57677202018-06-11 1:46:282281 days ago1528681588
0x7D48E428...4Ba91C5AA
0.40015941 ETH
56375972018-05-18 23:55:332304 days ago1526687733
0x7D48E428...4Ba91C5AA
0.40026694 ETH
55054642018-04-25 21:44:312327 days ago1524692671
0x7D48E428...4Ba91C5AA
0.23008588 ETH
54330782018-04-13 12:11:292339 days ago1523621489
0x7D48E428...4Ba91C5AA
0.20024023 ETH
53551002018-03-31 13:32:142352 days ago1522503134
0x7D48E428...4Ba91C5AA
0.20001676 ETH
52898122018-03-20 15:09:472363 days ago1521558587
0x7D48E428...4Ba91C5AA
0.20034679 ETH
52235642018-03-09 9:23:032374 days ago1520587383
0x7D48E428...4Ba91C5AA
0.20010498 ETH
51612752018-02-26 19:43:492385 days ago1519674229
0x7D48E428...4Ba91C5AA
0.20063207 ETH
50999372018-02-16 9:35:552395 days ago1518773755
0x7D48E428...4Ba91C5AA
0.20006744 ETH
50995202018-02-16 7:56:012395 days ago1518767761
0x7D48E428...4Ba91C5AA
2.6449046 ETH
50410342018-02-06 12:17:572405 days ago1517919477
0x7D48E428...4Ba91C5AA
0.07019831 ETH
50209652018-02-03 3:35:042408 days ago1517628904
0x7D48E428...4Ba91C5AA
0.10014887 ETH
49951122018-01-29 17:41:422413 days ago1517247702
0x7D48E428...4Ba91C5AA
0.1005197 ETH
49693492018-01-25 9:55:182417 days ago1516874118
0x7D48E428...4Ba91C5AA
0.10037813 ETH
49438752018-01-21 2:12:062422 days ago1516500726
0x7D48E428...4Ba91C5AA
0.50333731 ETH
48746072018-01-08 13:05:062434 days ago1515416706
0x7D48E428...4Ba91C5AA
0.4475 ETH
48603202018-01-05 22:17:532437 days ago1515190673
0x7D48E428...4Ba91C5AA
0.359584 ETH
48488902018-01-03 19:31:172439 days ago1515007877
0x7D48E428...4Ba91C5AA
0.06028411 ETH
48361552018-01-01 13:58:432441 days ago1514815123
0x7D48E428...4Ba91C5AA
0.0605704 ETH
48235942017-12-30 10:55:322443 days ago1514631332
0x7D48E428...4Ba91C5AA
0.06145781 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.