ETH Price: $2,554.71 (+4.87%)

Contract

0x99c64Ecde64c2DE8E3a134Cd7E95b6Ff85C54e62
 

Overview

ETH Balance

0.000000008152389603 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep114886962020-12-20 6:48:251370 days ago1608446905IN
0x99c64Ecd...f85C54e62
0 ETH0.0017095530
Transfer114886762020-12-20 6:44:101370 days ago1608446650IN
0x99c64Ecd...f85C54e62
0.05501695 ETH0.000021051
Transfer114488722020-12-14 4:15:151376 days ago1607919315IN
0x99c64Ecd...f85C54e62
0.04836787 ETH0.000021051
Sweep114034372020-12-07 4:18:471383 days ago1607314727IN
0x99c64Ecd...f85C54e62
0 ETH0.0017091930
Transfer114034092020-12-07 4:13:351383 days ago1607314415IN
0x99c64Ecd...f85C54e62
0.05000536 ETH0.000021051
Sweep113626282020-11-30 21:37:311389 days ago1606772251IN
0x99c64Ecd...f85C54e62
0 ETH0.002734748
Transfer113626122020-11-30 21:34:421389 days ago1606772082IN
0x99c64Ecd...f85C54e62
0.05004324 ETH0.000021051
Sweep113300472020-11-25 21:51:371394 days ago1606341097IN
0x99c64Ecd...f85C54e62
0 ETH0.0023244940.8
Transfer113300302020-11-25 21:46:561394 days ago1606340816IN
0x99c64Ecd...f85C54e62
0.05000765 ETH0.000021051
Sweep112968612020-11-20 19:30:291399 days ago1605900629IN
0x99c64Ecd...f85C54e62
0 ETH0.0034867461.2
Transfer112967492020-11-20 19:04:511399 days ago1605899091IN
0x99c64Ecd...f85C54e62
0.05002629 ETH0.000021051
Sweep112597912020-11-15 2:51:251405 days ago1605408685IN
0x99c64Ecd...f85C54e62
0 ETH0.0017095530
Transfer112597652020-11-15 2:47:021405 days ago1605408422IN
0x99c64Ecd...f85C54e62
0.05002169 ETH0.000021051
Transfer112252962020-11-09 19:47:381410 days ago1604951258IN
0x99c64Ecd...f85C54e62
0.01000817 ETH0.000021051
Transfer110002532020-10-06 5:15:341445 days ago1601961334IN
0x99c64Ecd...f85C54e62
0.03661571 ETH0.000021051
Sweep109554622020-09-29 5:14:471452 days ago1601356487IN
0x99c64Ecd...f85C54e62
0 ETH0.005469496
Transfer109554472020-09-29 5:10:511452 days ago1601356251IN
0x99c64Ecd...f85C54e62
0.05002812 ETH0.000021051
Sweep109320292020-09-25 13:15:291455 days ago1601039729IN
0x99c64Ecd...f85C54e62
0 ETH0.00649492114
Transfer109320052020-09-25 13:10:031455 days ago1601039403IN
0x99c64Ecd...f85C54e62
0.05003434 ETH0.000021051
Sweep109109702020-09-22 7:24:401459 days ago1600759480IN
0x99c64Ecd...f85C54e62
0 ETH0.00656328115.2
Transfer109109522020-09-22 7:20:101459 days ago1600759210IN
0x99c64Ecd...f85C54e62
0.05004939 ETH0.000021051
Sweep108855632020-09-18 10:18:491463 days ago1600424329IN
0x99c64Ecd...f85C54e62
0 ETH0.01319494231.60000161
Transfer108855342020-09-18 10:12:301463 days ago1600423950IN
0x99c64Ecd...f85C54e62
0.05009372 ETH0.000021051
Sweep108765902020-09-17 1:11:031464 days ago1600305063IN
0x99c64Ecd...f85C54e62
0 ETH0.0075888133.2
Transfer108765752020-09-17 1:07:541464 days ago1600304874IN
0x99c64Ecd...f85C54e62
0.05002482 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
114886962020-12-20 6:48:251370 days ago1608446905
0x99c64Ecd...f85C54e62
0.10338483 ETH
114034372020-12-07 4:18:471383 days ago1607314727
0x99c64Ecd...f85C54e62
0.05000537 ETH
113626282020-11-30 21:37:311389 days ago1606772251
0x99c64Ecd...f85C54e62
0.05004324 ETH
113300472020-11-25 21:51:371394 days ago1606341097
0x99c64Ecd...f85C54e62
0.05000765 ETH
112968612020-11-20 19:30:291399 days ago1605900629
0x99c64Ecd...f85C54e62
0.0500263 ETH
112597912020-11-15 2:51:251405 days ago1605408685
0x99c64Ecd...f85C54e62
0.09664559 ETH
109554622020-09-29 5:14:471452 days ago1601356487
0x99c64Ecd...f85C54e62
0.05002813 ETH
109320292020-09-25 13:15:291455 days ago1601039729
0x99c64Ecd...f85C54e62
0.05003434 ETH
109109702020-09-22 7:24:401459 days ago1600759480
0x99c64Ecd...f85C54e62
0.0500494 ETH
108855632020-09-18 10:18:491463 days ago1600424329
0x99c64Ecd...f85C54e62
0.05009372 ETH
108765902020-09-17 1:11:031464 days ago1600305063
0x99c64Ecd...f85C54e62
0.05002483 ETH
108592562020-09-14 9:12:531467 days ago1600074773
0x99c64Ecd...f85C54e62
0.05023102 ETH
108392292020-09-11 7:33:401470 days ago1599809620
0x99c64Ecd...f85C54e62
0.05010321 ETH
108202062020-09-08 9:37:051473 days ago1599557825
0x99c64Ecd...f85C54e62
0.05000195 ETH
108025282020-09-05 16:36:501475 days ago1599323810
0x99c64Ecd...f85C54e62
0.05019628 ETH
107884672020-09-03 12:59:531477 days ago1599137993
0x99c64Ecd...f85C54e62
0.05030055 ETH
107793222020-09-02 3:14:331479 days ago1599016473
0x99c64Ecd...f85C54e62
0.05006828 ETH
107689902020-08-31 13:33:461480 days ago1598880826
0x99c64Ecd...f85C54e62
0.05011748 ETH
107534972020-08-29 4:31:141483 days ago1598675474
0x99c64Ecd...f85C54e62
0.05001794 ETH
107328672020-08-26 0:37:291486 days ago1598402249
0x99c64Ecd...f85C54e62
0.05003801 ETH
107127042020-08-22 22:12:121489 days ago1598134332
0x99c64Ecd...f85C54e62
0.05000049 ETH
106947802020-08-20 4:03:231492 days ago1597896203
0x99c64Ecd...f85C54e62
0.15007132 ETH
106469722020-08-12 19:15:491499 days ago1597259749
0x99c64Ecd...f85C54e62
0.0500822 ETH
106313042020-08-10 9:11:031502 days ago1597050663
0x99c64Ecd...f85C54e62
0.05006219 ETH
106107482020-08-07 5:03:321505 days ago1596776612
0x99c64Ecd...f85C54e62
0.05003309 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.