ETH Price: $2,615.27 (+1.65%)

Contract

0xa92236B390Af10b6dab3f515B6407587A54CA257
 

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep117487772021-01-29 4:54:481356 days ago1611896088IN
0xa92236B3...7A54CA257
0 ETH0.00720793103.68
Sweep117485782021-01-29 4:11:341356 days ago1611893494IN
0xa92236B3...7A54CA257
0 ETH0.01276405183.6
Sweep115549552020-12-30 10:57:491386 days ago1609325869IN
0xa92236B3...7A54CA257
0 ETH0.0055885280.40000175
Sweep115434342020-12-28 16:05:531387 days ago1609171553IN
0xa92236B3...7A54CA257
0 ETH0.0069319399.7272
Sweep113214212020-11-24 14:00:481422 days ago1606226448IN
0xa92236B3...7A54CA257
0 ETH0.00909289159.6
Transfer113213982020-11-24 13:55:181422 days ago1606226118IN
0xa92236B3...7A54CA257
5 ETH0.00402074191
Sweep108997532020-09-20 14:26:211487 days ago1600611981IN
0xa92236B3...7A54CA257
0 ETH0.01509996217.19999999
Sweep108672092020-09-15 14:31:251492 days ago1600180285IN
0xa92236B3...7A54CA257
0 ETH0.0170919300
Transfer*108671802020-09-15 14:25:351492 days ago1600179935IN
0xa92236B3...7A54CA257
10 ETH0.0062301295
Sweep108671362020-09-15 14:13:491492 days ago1600179229IN
0xa92236B3...7A54CA257
0 ETH0.01675711294
Transfer*108671232020-09-15 14:11:361492 days ago1600179096IN
0xa92236B3...7A54CA257
5 ETH0.0062301295
Transfer108671192020-09-15 14:10:011492 days ago1600179001IN
0xa92236B3...7A54CA257
14.51757151 ETH0.00637845303
Sweep108265982020-09-09 8:57:151498 days ago1599641835IN
0xa92236B3...7A54CA257
0 ETH0.00703179101.14632
Sweep108260972020-09-09 7:04:331498 days ago1599635073IN
0xa92236B3...7A54CA257
0 ETH0.00753073108.32310035
Sweep108245432020-09-09 1:28:201498 days ago1599614900IN
0xa92236B3...7A54CA257
0 ETH0.0043071575.60000134
Transfer*108245342020-09-09 1:26:101498 days ago1599614770IN
0xa92236B3...7A54CA257
5 ETH0.0020907899
Sweep108245122020-09-09 1:20:571498 days ago1599614457IN
0xa92236B3...7A54CA257
0 ETH0.0043071575.60000134
Transfer*108244922020-09-09 1:16:491498 days ago1599614209IN
0xa92236B3...7A54CA257
5 ETH0.0020907899
Sweep107563372020-08-29 14:57:351509 days ago1598713055IN
0xa92236B3...7A54CA257
0 ETH0.0049509586.9000016
Transfer*107563162020-08-29 14:52:541509 days ago1598712774IN
0xa92236B3...7A54CA257
9 ETH0.0018795989
Transfer*107563132020-08-29 14:51:431509 days ago1598712703IN
0xa92236B3...7A54CA257
5 ETH0.0018795989
Sweep107537732020-08-29 5:29:081509 days ago1598678948IN
0xa92236B3...7A54CA257
0 ETH0.0047773583.853
Transfer107537522020-08-29 5:22:541509 days ago1598678574IN
0xa92236B3...7A54CA257
10 ETH0.0017135581.4
Sweep107536862020-08-29 5:09:411509 days ago1598677781IN
0xa92236B3...7A54CA257
0 ETH0.0038376767.3596
Transfer107536662020-08-29 5:05:331509 days ago1598677533IN
0xa92236B3...7A54CA257
5 ETH0.0017135581.4
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
113214212020-11-24 14:00:481422 days ago1606226448
0xa92236B3...7A54CA257
5 ETH
108672092020-09-15 14:31:251492 days ago1600180285
0xa92236B3...7A54CA257
10 ETH
108671362020-09-15 14:13:491492 days ago1600179229
0xa92236B3...7A54CA257
19.51757151 ETH
108245432020-09-09 1:28:201498 days ago1599614900
0xa92236B3...7A54CA257
5 ETH
108245122020-09-09 1:20:571498 days ago1599614457
0xa92236B3...7A54CA257
5 ETH
107563372020-08-29 14:57:351509 days ago1598713055
0xa92236B3...7A54CA257
14 ETH
107537732020-08-29 5:29:081509 days ago1598678948
0xa92236B3...7A54CA257
10 ETH
107536862020-08-29 5:09:411509 days ago1598677781
0xa92236B3...7A54CA257
5 ETH
107536622020-08-29 5:05:141509 days ago1598677514
0xa92236B3...7A54CA257
4 ETH
107527972020-08-29 1:50:401509 days ago1598665840
0xa92236B3...7A54CA257
4.52 ETH
106891892020-08-19 7:25:551519 days ago1597821955
0xa92236B3...7A54CA257
20 ETH
106886662020-08-19 5:24:361519 days ago1597814676
0xa92236B3...7A54CA257
10 ETH
106885962020-08-19 5:09:101519 days ago1597813750
0xa92236B3...7A54CA257
10 ETH
106776312020-08-17 12:43:021521 days ago1597668182
0xa92236B3...7A54CA257
10 ETH
106639452020-08-15 9:48:221523 days ago1597484902
0xa92236B3...7A54CA257
26 ETH
106625572020-08-15 4:43:491523 days ago1597466629
0xa92236B3...7A54CA257
5.685 ETH
106623012020-08-15 3:44:261523 days ago1597463066
0xa92236B3...7A54CA257
35.8 ETH
105973152020-08-05 3:22:241533 days ago1596597744
0xa92236B3...7A54CA257
7 ETH
105968792020-08-05 1:49:191533 days ago1596592159
0xa92236B3...7A54CA257
15 ETH
105930102020-08-04 11:33:311534 days ago1596540811
0xa92236B3...7A54CA257
18 ETH
105878592020-08-03 16:19:171534 days ago1596471557
0xa92236B3...7A54CA257
10 ETH
105669402020-07-31 10:56:591538 days ago1596193019
0xa92236B3...7A54CA257
18.315 ETH
105589152020-07-30 4:40:301539 days ago1596084030
0xa92236B3...7A54CA257
9.995 ETH
103874902020-07-03 16:18:551565 days ago1593793135
0xa92236B3...7A54CA257
10 ETH
103873442020-07-03 15:44:431565 days ago1593791083
0xa92236B3...7A54CA257
10 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.