BNB Chain

0x896741d01907bedf44d4b099ac592e2bbf7991ce

Decompiled Solidity recovered from this contract's runtime bytecode. Best-effort reconstruction — confirm behaviour against on-chain state.

Decompilation outputBNB Chain · 0x896741d0…bf7991ce6.0 KB7.9 s
Share
302 lines · Click a variable or keyword to highlight its references · Click a line number to copy its link; Shift-click to copy a block link
//decompiled by exvvul decompiler tool contact@exvul.com https://x.com/exvulsec// SPDX-License-Identifier: MIT  >=0.8.0;  {      ; // STORAGE[0x0]      ; // STORAGE[0x1]    ( => )  ; // STORAGE[0x2]      ; // STORAGE[0x3]    []  ; // STORAGE[0x4]    []  ; // STORAGE[0x5]     ; // STORAGE[0x7]    ( => )  ; // STORAGE[0x8]    ( => )  ; // STORAGE[0x9]     ; // STORAGE[0xa]     ;     ;         ( ,  );     ( ,  );     ( ,  );     ( ,  );     ( ,  );     ( ,  );     ( );     ( ,  );     ( ,  );     ( ,  );     ( ,  );     ( ,  );     ( ,  );     ( ,  );     ( ,  );         () {        ((. ==  || . == ), "Manager: only owner or guardian");        ;    }    ()   {        // Synthetic compatibility routes preserve original selectors for unresolved names.         ((.. >= 4) && (. == 0x0a518d66)) {            // Route to Unknown_0a518d66(uint256) after replacing only msg.sig.            ((0x52a3fd38));            ;        }         ((.. >= 4) && (. == 0x2f13c40c)) {            // Route to Unknown_2f13c40c(address,uint256) after replacing only msg.sig.            ((0xf770eff2));            ;        }         ((.. >= 4) && (. == 0x45784512)) {            // Route to Unknown_45784512(uint256) after replacing only msg.sig.            ((0x3cd916fc));            ;        }         ((.. >= 4) && (. == 0x52050eef)) {            // Route to Unknown_52050eef(uint256) after replacing only msg.sig.            ((0xdaec3bb1));            ;        }         ((.. >= 4) && (. == 0x654d551b)) {            // Route to Unknown_654d551b(uint256) after replacing only msg.sig.            ((0x20e4fc6f));            ;        }         ((.. >= 4) && (. == 0x95fe4e6c)) {            // Route to Unknown_95fe4e6c(uint256) after replacing only msg.sig.            ((0x43d9eef9));            ;        }         ((.. >= 4) && (. == 0xbfa2bbd6)) {            // Route to Unknown_bfa2bbd6(uint256) after replacing only msg.sig.            ((0xcd94763c));            ;        }        ();    }             ( )    {         = ( * 0x010000) | ( & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff));         (!(!(( / 0x010000))), );    }         ( ,  )    {        [] = ;         (, []);    }         ( ,   ,  )   {        ( <= 0x100000000);        (!(((0x04 + ) + 0x20) > (0x04 + (.. - 0x04))));        (!((. > 0x0100000000) | ((0x20 + (0x04 + )) + (. * 0x01) > (0x04 + (.. - 0x04)))));        (. == , "Ownable: only owner");         = ( & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00)) | ;    }         ()    () {         !(!(( / 0x010000)));    }         ()    () {         !(!(( / 0x0100000000)));    }         ()    () {         !(!(( / 0x01000000)));    }         ( ,  )    {        [] =  | (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 & []);         (, );    }         ()    () {         !(!(()));    }         ()    () {         !(!(()));    }         ( )    {         = ( * 0x0100000000) | ( & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff));         (!(!(( / 0x0100000000))), );    }         ([]  )    () {        ( <= 0x100000000);        (!(((0x04 + ) + 0x20) > (0x04 + (.. - 0x04))));        (!((. > 0x0100000000) | ((0x20 + (0x04 + )) + (. * 0x20) > (0x04 + (.. - 0x04)))));          = 0;         () {             (!( < .)) {                ;            }             (!( < .)) {                ;            }             ([((0x20 * ) + (0x20 + ))]) {                 ;                ;            }             = 0x01 + ;        }         ;    }         ()    () {         !(!(( / 0x0100)));    }         ( )    {         = ( * 0x0100) | ( & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff));         (!(!(( / 0x0100))), );    }         (  ,  )   {        ( <= 0x100000000);        (!(((0x04 + ) + 0x20) > (0x04 + (.. - 0x04))));        (!((. > 0x0100000000) | ((0x20 + (0x04 + )) + (. * 0x01) > (0x04 + (.. - 0x04)))));        (. == , "Ownable: only owner");        [0] = ([0] & (0xffffffffffffffffffffffff0000000000000000000000000000000000000000)) | ;    }         ( )    {         = ( * 0x01000000) | ( & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff));         (!(!(( / 0x01000000))), );    }         ( ,  )    {        [] = ;         (, []);    }         (  ,  )   {        ( <= 0x100000000);        (!(((0x04 + ) + 0x20) > (0x04 + (.. - 0x04))));        (!((. > 0x0100000000) | ((0x20 + (0x04 + )) + (. * 0x01) > (0x04 + (.. - 0x04)))));        (. == , "Ownable: only owner");        [0] = ;    }         ( ,   )    () {        ( <= 0x100000000);        (!(((0x04 + ) + 0x20) > (0x04 + (.. - 0x04))));        (!((. > 0x0100000000) | ((0x20 + (0x04 + )) + (. * 0x01) > (0x04 + (.. - 0x04)))));         ;    }         ( )    {         =  | ( & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00));         (!(!(())), );    }         ()    () {         !(!(( / 0x01000000)));    }         ( )   {        (. == , "Ownable: only owner");         (, );         = ;    }         ( )    {         =  | ( & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00));         (!(!(())), );    }         ()    () {         !(!(( / 0x010000)));    }         ()    () {         !(!(( / 0x0100)));    }         ( )    {         = ( * 0x010000) | ( & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff));         (!(!(( / 0x010000))), );    }         ( )   {        (. == , "Ownable: only owner");        ( != (0), "Ownable: pending owner is 0");         = ;         ( | (0xffffffffffffffffffffffff0000000000000000000000000000000000000000 & ) & (0xffffffffffffffffffffffffffffffffffffffff));    }         ( )    {         = ( * 0x01000000) | ( & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff));         (!(!(( / 0x01000000))), );    }         ( )    {         = ( * 0x0100) | ( & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff));         (!(!(( / 0x0100))), );    }         ()   {        (. == , "Ownable: only pending owner");         = .;         = (0);         (, (. | ( & (0xffffffffffffffffffffffff0000000000000000000000000000000000000000))));    }         ( )  {         {              := (0x40)            (, 0, ())            (, (((), 0x00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff), (224, (, 0xffffffff))))              := ((), (), , (), 0, 0)              := ()            (, 0, )                          0 { (, ) }             { (, ) }        }    }        // Note: This selector table is synthetic and is not part of the original Solidity source.    // It records the recovered selector-to-signature mapping without executable behavior.        // 0x0a518d66 => Unknown_0a518d66(uint256)    // 0x153b0d1e => setBlacklist(address,bool)    // 0x19f225a5 => setUserPermit(address,string,bool)    // 0x1e9dbce6 => repayPaused()    // 0x2b0a538e => transferDmTokenPaused()    // 0x2d24280e => liquidatePaused()    // 0x2f13c40c => Unknown_2f13c40c(address,uint256)    // 0x36699dc5 => mintVAIPaused()    // 0x3819d002 => marketBorrowPaused(address)    // 0x425fad58 => protocolPaused()    // 0x452a9320 => guardian()    // 0x45784512 => Unknown_45784512(uint256)    // 0x459564d9 => inBlacklist(address[])    // 0x47642d35 => repayVAIPaused()    // 0x52050eef => Unknown_52050eef(uint256)    // 0x540e2617 => setMember(string,address)    // 0x5a9ade8b => values(string)    // 0x654d551b => Unknown_654d551b(uint256)    // 0x6957a0b2 => members(string)    // 0x7aab4f11 => setMarketBorrowPaused(address,bool)    // 0x7c2da7aa => setValue(string,uint256)    // 0x7dd13a95 => userPermits(address,string)    // 0x8275d471 => setProtocolPaused(bool)    // 0x828df316 => dmtPaused()    // 0x8a0dac4a => setGuardian(address)    // 0x8da5cb5b => owner()    // 0x91c484a7 => marketMintPaused(address)    // 0x95fe4e6c => Unknown_95fe4e6c(uint256)    // 0xa7b14397 => dusdPaused()    // 0xb235d468 => redeemPaused()    // 0xbfa2bbd6 => Unknown_bfa2bbd6(uint256)    // 0xc42069ec => setPendingOwner(address)    // 0xcb29302a => setLiquidatePaused(bool)    // 0xccb99c26 => setRedeemPaused(bool)    // 0xe30c3978 => pendingOwner()    // 0xebbc4965 => acceptOwner()    // 0xf9f92be4 => blacklist(address)}