ETH Price: $2,255.64 (+5.96%)

Contract

0x732288F9F61a5Be207BA8E3750d28E684fF7393a
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep100306332020-05-09 7:14:491756 days ago1589008489IN
0x732288F9...84fF7393a
0 ETH0.0012602222.5
Sweep100302452020-05-09 5:51:321757 days ago1589003492IN
0x732288F9...84fF7393a
0 ETH0.0012498322.31453306
Sweep100302392020-05-09 5:49:241757 days ago1589003364IN
0x732288F9...84fF7393a
0 ETH0.001249322.31453306
Sweep99479842020-04-26 11:55:301769 days ago1587902130IN
0x732288F9...84fF7393a
0 ETH0.0013131122
Sweep99478082020-04-26 11:19:241769 days ago1587899964IN
0x732288F9...84fF7393a
0 ETH0.0013131122
Sweep99477462020-04-26 11:06:111769 days ago1587899171IN
0x732288F9...84fF7393a
0 ETH0.0013131122
Sweep99476712020-04-26 10:48:401769 days ago1587898120IN
0x732288F9...84fF7393a
0 ETH0.0013131122
Sweep99475372020-04-26 10:18:041769 days ago1587896284IN
0x732288F9...84fF7393a
0 ETH0.0013131122
Sweep99473872020-04-26 9:42:031769 days ago1587894123IN
0x732288F9...84fF7393a
0 ETH0.0013128522
Sweep99471792020-04-26 8:57:371769 days ago1587891457IN
0x732288F9...84fF7393a
0 ETH0.0013131122
Sweep99470412020-04-26 8:28:581769 days ago1587889738IN
0x732288F9...84fF7393a
0 ETH0.0013131122
Sweep99469102020-04-26 7:59:261769 days ago1587887966IN
0x732288F9...84fF7393a
0 ETH0.0013128522
Sweep99467672020-04-26 7:28:171769 days ago1587886097IN
0x732288F9...84fF7393a
0 ETH0.0013131122
Sweep99466372020-04-26 6:54:451769 days ago1587884085IN
0x732288F9...84fF7393a
0 ETH0.0013128522
Sweep99464032020-04-26 6:02:561769 days ago1587880976IN
0x732288F9...84fF7393a
0 ETH0.0013131122
Sweep90264072019-11-30 10:58:431917 days ago1575111523IN
0x732288F9...84fF7393a
0 ETH0.0015011222
Sweep86833822019-10-05 17:21:011973 days ago1570296061IN
0x732288F9...84fF7393a
0 ETH0.0014997122
Sweep86757372019-10-04 12:47:141974 days ago1570193234IN
0x732288F9...84fF7393a
0 ETH0.0014983122
Sweep81609912019-07-16 9:02:312054 days ago1563267751IN
0x732288F9...84fF7393a
0 ETH0.0014127330
Sweep81608522019-07-16 8:29:522054 days ago1563265792IN
0x732288F9...84fF7393a
0 ETH0.0014127330
Sweep81607262019-07-16 8:01:192054 days ago1563264079IN
0x732288F9...84fF7393a
0 ETH0.0014146530
Sweep73273062019-03-08 7:31:412184 days ago1552030301IN
0x732288F9...84fF7393a
0 ETH0.0023412550
Sweep70041152019-01-03 15:49:382248 days ago1546530578IN
0x732288F9...84fF7393a
0 ETH0.0024996550
Transfer70040982019-01-03 15:45:202248 days ago1546530320IN
0x732288F9...84fF7393a
0.3 ETH0.000189459
Sweep70026932019-01-03 9:54:022248 days ago1546509242IN
0x732288F9...84fF7393a
0 ETH0.0024996550
View all transactions

Latest 20 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
70041152019-01-03 15:49:382248 days ago1546530578
0x732288F9...84fF7393a
0.3 ETH
70026932019-01-03 9:54:022248 days ago1546509242
0x732288F9...84fF7393a
1.2 ETH
62712052018-09-04 16:17:012369 days ago1536077821
0x732288F9...84fF7393a
1.7 ETH
61146662018-08-09 5:28:042396 days ago1533792484
0x732288F9...84fF7393a
1.568 ETH
57293402018-06-04 6:23:442461 days ago1528093424
0x732288F9...84fF7393a
0.36 ETH
55611642018-05-05 15:24:172491 days ago1525533857
0x732288F9...84fF7393a
0.200048 ETH
55546732018-05-04 11:51:562492 days ago1525434716
0x732288F9...84fF7393a
0.11612535 ETH
55480212018-05-03 7:52:372493 days ago1525333957
0x732288F9...84fF7393a
0.15351481 ETH
55261922018-04-29 11:43:112497 days ago1525002191
0x732288F9...84fF7393a
0.1 ETH
55019602018-04-25 7:18:552501 days ago1524640735
0x732288F9...84fF7393a
0.1845 ETH
54134782018-04-10 5:21:372517 days ago1523337697
0x732288F9...84fF7393a
0.26 ETH
53464302018-03-30 2:21:522528 days ago1522376512
0x732288F9...84fF7393a
0.450733 ETH
52871202018-03-20 4:02:412538 days ago1521518561
0x732288F9...84fF7393a
0.2130319 ETH
52513282018-03-14 2:31:362544 days ago1520994696
0x732288F9...84fF7393a
0.12 ETH
52412802018-03-12 9:21:182545 days ago1520846478
0x732288F9...84fF7393a
0.15 ETH
52225192018-03-09 5:00:502549 days ago1520571650
0x732288F9...84fF7393a
0.5 ETH
52187272018-03-08 13:27:552549 days ago1520515675
0x732288F9...84fF7393a
0.25 ETH
52002852018-03-05 10:18:202552 days ago1520245100
0x732288F9...84fF7393a
0.138615 ETH
51692492018-02-28 4:08:352558 days ago1519790915
0x732288F9...84fF7393a
0.11242887 ETH
49564732018-01-23 5:50:242594 days ago1516686624  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

API
[{"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.