ETH Price: $2,834.59 (+2.25%)

Contract

0x698a9e506Ee834A0A3c905C1e93E154816159E7a
 

Overview

ETH Balance

0.000000002290648289 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep86519152019-09-30 19:28:161973 days ago1569871696IN
0x698a9e50...816159E7a
0 ETH0.0011012522
Transfer86518972019-09-30 19:25:141973 days ago1569871514IN
0x698a9e50...816159E7a
0.02781528 ETH0.000021051
Transfer86072672019-09-23 19:24:111980 days ago1569266651IN
0x698a9e50...816159E7a
0.04795875 ETH0.000021051
Sweep85623622019-09-16 19:25:301987 days ago1568661930IN
0x698a9e50...816159E7a
0 ETH0.0011012522
Transfer85623412019-09-16 19:22:181987 days ago1568661738IN
0x698a9e50...816159E7a
0.04924342 ETH0.000021051
Transfer85175312019-09-09 19:19:031994 days ago1568056743IN
0x698a9e50...816159E7a
0.0241384 ETH0.000021051
Sweep84726042019-09-02 19:21:542001 days ago1567452114IN
0x698a9e50...816159E7a
0 ETH0.0011012522
Transfer84725792019-09-02 19:16:562001 days ago1567451816IN
0x698a9e50...816159E7a
0.03381862 ETH0.000021051
Transfer84276852019-08-26 19:16:102008 days ago1566846970IN
0x698a9e50...816159E7a
0.04912184 ETH0.000021051
Sweep83826512019-08-19 19:17:012015 days ago1566242221IN
0x698a9e50...816159E7a
0 ETH0.0011012522
Transfer83826352019-08-19 19:10:592015 days ago1566241859IN
0x698a9e50...816159E7a
0.04557078 ETH0.000021051
Transfer83375072019-08-12 19:06:412022 days ago1565636801IN
0x698a9e50...816159E7a
0.02990454 ETH0.000021051
Sweep82924472019-08-05 19:11:302029 days ago1565032290IN
0x698a9e50...816159E7a
0 ETH0.0011012522
Transfer82924172019-08-05 19:05:472029 days ago1565031947IN
0x698a9e50...816159E7a
0.04803638 ETH0.000021051
Transfer82472672019-07-29 19:03:202036 days ago1564427000IN
0x698a9e50...816159E7a
0.04100737 ETH0.000021051
Sweep82022462019-07-22 19:03:522043 days ago1563822232IN
0x698a9e50...816159E7a
0 ETH0.0010998422
Transfer82022312019-07-22 19:01:112043 days ago1563822071IN
0x698a9e50...816159E7a
0.06654104 ETH0.000021051
Sweep81573112019-07-15 19:02:502050 days ago1563217370IN
0x698a9e50...816159E7a
0 ETH0.0010998422
Transfer81572962019-07-15 18:59:332050 days ago1563217173IN
0x698a9e50...816159E7a
0.06395829 ETH0.000021051
Sweep81123812019-07-08 19:04:272057 days ago1562612667IN
0x698a9e50...816159E7a
0 ETH0.0010998422
Transfer81123572019-07-08 18:59:072057 days ago1562612347IN
0x698a9e50...816159E7a
0.06668435 ETH0.000021051
Sweep80674112019-07-01 19:00:212064 days ago1562007621IN
0x698a9e50...816159E7a
0 ETH0.0011012522
Transfer80673972019-07-01 18:57:372064 days ago1562007457IN
0x698a9e50...816159E7a
0.05062552 ETH0.000021051
Transfer80224772019-06-24 18:57:272071 days ago1561402647IN
0x698a9e50...816159E7a
0.04687193 ETH0.000021051
Sweep79776962019-06-17 19:09:372078 days ago1560798577IN
0x698a9e50...816159E7a
0 ETH0.0025028550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
86519152019-09-30 19:28:161973 days ago1569871696
0x698a9e50...816159E7a
0.07577405 ETH
85623622019-09-16 19:25:301987 days ago1568661930
0x698a9e50...816159E7a
0.07338183 ETH
84726042019-09-02 19:21:542001 days ago1567452114
0x698a9e50...816159E7a
0.08294048 ETH
83826512019-08-19 19:17:012015 days ago1566242221
0x698a9e50...816159E7a
0.07547532 ETH
82924472019-08-05 19:11:302029 days ago1565032290
0x698a9e50...816159E7a
0.08904377 ETH
82022462019-07-22 19:03:522043 days ago1563822232
0x698a9e50...816159E7a
0.06654105 ETH
81573112019-07-15 19:02:502050 days ago1563217370
0x698a9e50...816159E7a
0.06395829 ETH
81123812019-07-08 19:04:272057 days ago1562612667
0x698a9e50...816159E7a
0.06668435 ETH
80674112019-07-01 19:00:212064 days ago1562007621
0x698a9e50...816159E7a
0.09749746 ETH
79776962019-06-17 19:09:372078 days ago1560798577
0x698a9e50...816159E7a
0.07312045 ETH
79328992019-06-10 18:54:562085 days ago1560192896
0x698a9e50...816159E7a
0.0973699 ETH
78880932019-06-03 18:51:162092 days ago1559587876
0x698a9e50...816159E7a
0.09803853 ETH
78433632019-05-27 18:49:212099 days ago1558982961
0x698a9e50...816159E7a
0.09031297 ETH
77985402019-05-20 18:47:022106 days ago1558378022
0x698a9e50...816159E7a
0.10295818 ETH
77536642019-05-13 18:42:322113 days ago1557772952
0x698a9e50...816159E7a
0.10476824 ETH
77089422019-05-06 18:38:152120 days ago1557167895
0x698a9e50...816159E7a
0.05413397 ETH
76639722019-04-29 18:31:452127 days ago1556562705
0x698a9e50...816159E7a
0.11828067 ETH
76190142019-04-22 18:24:152134 days ago1555957455
0x698a9e50...816159E7a
0.11660394 ETH
75741412019-04-15 18:26:442141 days ago1555352804
0x698a9e50...816159E7a
0.11890411 ETH
75290352019-04-08 18:16:232148 days ago1554747383
0x698a9e50...816159E7a
0.12113331 ETH
74841142019-04-01 18:11:172155 days ago1554142277
0x698a9e50...816159E7a
0.11935513 ETH
74393242019-03-25 18:07:472162 days ago1553537267
0x698a9e50...816159E7a
0.11970812 ETH
73944152019-03-18 18:06:262169 days ago1552932386
0x698a9e50...816159E7a
0.11802709 ETH
73493302019-03-11 18:00:162176 days ago1552327216
0x698a9e50...816159E7a
0.1052788 ETH
73044022019-03-04 18:02:212183 days ago1551722541
0x698a9e50...816159E7a
0.10479873 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.