ETH Price: $2,765.06 (+3.89%)

Contract

0xAbF2725D1a067CFB9B5dE703e24f8e0aE949608A
 

Overview

ETH Balance

0.011734760341400627 ETH

Eth Value

$32.45 (@ $2,765.06/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer65301592018-10-17 5:45:142320 days ago1539755114IN
0xAbF2725D...aE949608A
0.01173475 ETH0.000021051
Sweep64871432018-10-10 5:43:362327 days ago1539150216IN
0xAbF2725D...aE949608A
0 ETH0.0025028550
Transfer64871222018-10-10 5:40:082327 days ago1539150008IN
0xAbF2725D...aE949608A
0.10009455 ETH0.000021051
Sweep64599312018-10-05 20:19:282332 days ago1538770768IN
0xAbF2725D...aE949608A
0 ETH0.0025028550
Transfer64599002018-10-05 20:13:022332 days ago1538770382IN
0xAbF2725D...aE949608A
0.10005179 ETH0.000021051
Sweep64270862018-09-30 11:35:442337 days ago1538307344IN
0xAbF2725D...aE949608A
0 ETH0.0025028550
Transfer64270412018-09-30 11:25:192337 days ago1538306719IN
0xAbF2725D...aE949608A
0.10003993 ETH0.000021051
Sweep63975622018-09-25 15:18:222342 days ago1537888702IN
0xAbF2725D...aE949608A
0 ETH0.0025028550
Transfer63975292018-09-25 15:11:382342 days ago1537888298IN
0xAbF2725D...aE949608A
0.10008884 ETH0.000021051
Sweep63714102018-09-21 8:07:252346 days ago1537517245IN
0xAbF2725D...aE949608A
0 ETH0.0025028550
Transfer63713752018-09-21 7:59:462346 days ago1537516786IN
0xAbF2725D...aE949608A
0.10010993 ETH0.000021051
Sweep63372242018-09-15 16:26:442352 days ago1537028804IN
0xAbF2725D...aE949608A
0 ETH0.0025028550
Transfer63371812018-09-15 16:16:132352 days ago1537028173IN
0xAbF2725D...aE949608A
0.10014172 ETH0.000021051
Sweep63103192018-09-11 5:29:342356 days ago1536643774IN
0xAbF2725D...aE949608A
0 ETH0.0025028550
Transfer63103002018-09-11 5:24:212356 days ago1536643461IN
0xAbF2725D...aE949608A
0.10000274 ETH0.000021051
Sweep62826432018-09-06 14:04:542361 days ago1536242694IN
0xAbF2725D...aE949608A
0 ETH0.0025028550
Transfer62826242018-09-06 13:59:022361 days ago1536242342IN
0xAbF2725D...aE949608A
0.10003751 ETH0.000021051
Sweep62568002018-09-02 6:12:262365 days ago1535868746IN
0xAbF2725D...aE949608A
0 ETH0.0025028550
Transfer62567752018-09-02 6:07:052365 days ago1535868425IN
0xAbF2725D...aE949608A
0.10005719 ETH0.000021051
Sweep62290562018-08-28 13:36:262370 days ago1535463386IN
0xAbF2725D...aE949608A
0 ETH0.0025028550
Transfer62290372018-08-28 13:32:142370 days ago1535463134IN
0xAbF2725D...aE949608A
0.10011882 ETH0.000021051
Sweep62017322018-08-23 23:01:182375 days ago1535065278IN
0xAbF2725D...aE949608A
0 ETH0.0025028550
Transfer62017042018-08-23 22:55:562375 days ago1535064956IN
0xAbF2725D...aE949608A
0.10003178 ETH0.000021051
Sweep61762162018-08-19 15:30:572379 days ago1534692657IN
0xAbF2725D...aE949608A
0 ETH0.0050057100
Transfer61762002018-08-19 15:27:412379 days ago1534692461IN
0xAbF2725D...aE949608A
0.10004547 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
64871432018-10-10 5:43:362327 days ago1539150216
0xAbF2725D...aE949608A
0.10009455 ETH
64599312018-10-05 20:19:282332 days ago1538770768
0xAbF2725D...aE949608A
0.1000518 ETH
64270862018-09-30 11:35:442337 days ago1538307344
0xAbF2725D...aE949608A
0.10003993 ETH
63975622018-09-25 15:18:222342 days ago1537888702
0xAbF2725D...aE949608A
0.10008885 ETH
63714102018-09-21 8:07:252346 days ago1537517245
0xAbF2725D...aE949608A
0.10010994 ETH
63372242018-09-15 16:26:442352 days ago1537028804
0xAbF2725D...aE949608A
0.10014172 ETH
63103192018-09-11 5:29:342356 days ago1536643774
0xAbF2725D...aE949608A
0.10000274 ETH
62826432018-09-06 14:04:542361 days ago1536242694
0xAbF2725D...aE949608A
0.10003752 ETH
62568002018-09-02 6:12:262365 days ago1535868746
0xAbF2725D...aE949608A
0.1000572 ETH
62290562018-08-28 13:36:262370 days ago1535463386
0xAbF2725D...aE949608A
0.10011882 ETH
62017322018-08-23 23:01:182375 days ago1535065278
0xAbF2725D...aE949608A
0.10003179 ETH
61762162018-08-19 15:30:572379 days ago1534692657
0xAbF2725D...aE949608A
0.10004548 ETH
61508972018-08-15 8:35:352383 days ago1534322135
0xAbF2725D...aE949608A
0.10003798 ETH
61209692018-08-10 7:11:062388 days ago1533885066
0xAbF2725D...aE949608A
0.10002326 ETH
60942222018-08-05 18:43:062393 days ago1533494586
0xAbF2725D...aE949608A
0.10011499 ETH
60661612018-08-01 0:45:192397 days ago1533084319
0xAbF2725D...aE949608A
0.10002854 ETH
60408242018-07-27 19:03:472402 days ago1532718227
0xAbF2725D...aE949608A
0.10014931 ETH
60165202018-07-23 15:27:292406 days ago1532359649
0xAbF2725D...aE949608A
0.1000832 ETH
59924622018-07-19 13:39:012410 days ago1532007541
0xAbF2725D...aE949608A
0.10005359 ETH
59684752018-07-15 11:18:252414 days ago1531653505
0xAbF2725D...aE949608A
0.10010386 ETH
59410882018-07-10 21:23:192419 days ago1531257799
0xAbF2725D...aE949608A
0.10001461 ETH
59144552018-07-06 7:04:402423 days ago1530860680
0xAbF2725D...aE949608A
0.10000363 ETH
58905772018-07-02 4:56:412427 days ago1530507401
0xAbF2725D...aE949608A
0.10007233 ETH
58676202018-06-28 6:36:392431 days ago1530167799
0xAbF2725D...aE949608A
0.10002364 ETH
58418272018-06-23 19:36:452436 days ago1529782605
0xAbF2725D...aE949608A
0.10006905 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.