BNB Chain

0x0a614434e539fc2dccabca3b8b37f3cf4edd453e

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

Decompilation outputBNB Chain · 0x0a614434…4edd453e17.0 KB153.7 s
Share
768 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// Decompilation incomplete: symbolic execution reached a configured deadline for 3 of 27 entry points (170000 ms contract budget): 2e1a7d4d, 441a3e70, a9059cbb// SPDX-License-Identifier: MIT  >=0.8.0;  {        = "stBNB";        = "stBNB";        = 12;        = 0;         ; // STORAGE[0x0]    ( => )  ; // STORAGE[0x1]     ; // STORAGE[0x2] // DESOLEX_RAW_STORAGE: whole slot: uint112 [ArithmeticUse] vs uint256 [ArithmeticUse] (ambiguous)     ; // STORAGE[0x3]    ( => ( => ))  ; // STORAGE[0x4]    ( => ) ; // STORAGE[0x5]    ( => ) ;     ;     ;         ( , );     ( ,  , );     ();     ( ,  , );     ( , );    ()   {        ();    }        ()   {        // Synthetic compatibility routes preserve original selectors for unresolved names.         ((.. >= 4) && (. == 0x5d51abe8)) {            // Route to Unknown_5d51abe8() after replacing only msg.sig.            ((0x62b02553));            ;        }         ((.. >= 4) && (. == 0x92fc46f3)) {            // Route to Unknown_92fc46f3(address,bytes32) after replacing only msg.sig.            ((0x467869e2));            ;        }        ();    }             ()   {        ();    }         ( ,  )   () {        (. != (0), "ERC20: approve from the zero address");        ( != (0), "ERC20: approve to the zero address");        [.][] = ;         (., , [.][]);         ;    }         ()    () {          = 0;         (((0xffffffff & (0xc0, )) > 0x0) && (. > (0xffffffff & (0xc0, )))) {             = (0x7fffffffffffffff & ( >> 0x40) * (. - (0xffffffff & ( >> 0xc0)))) / 0x3eb30680;        }          = ;         (((0xe0, ) > 0x0) && (. > (0xe0, ))) {             = (0x7fffffffffffffff & ( >> 0x80) * (. - ( >> 0xe0)) / 0x5e0c89c0) + ;        }         ( & (0x7fffffffffffffff) + (0x7fffffffffffffff & ( >> 0x40)) + (0x7fffffffffffffff & ( >> 0x80))) + ;    }         ( )   {        ();    }         ( ,  ,  )   () {        (, ., );        (, , );         ;    }         ( )   {    }         ()    () {         !(!(()));    }         ( ,  )   () {        (. != (0), "ERC20: approve from the zero address");        ( != (0), "ERC20: approve to the zero address");        [.][] =  + [.][];         (., , [.][]);         ;    }         ()   {        (. > 0);         (., .);    }         ( ,  )   {    }         ()  {          = !(( / 0x0100));         (!(( / 0x0100))) {             = !(());        }         ;         (!) {             = !()..;             (().. == 0) {                 = ();            }        }        (!(! &&  == 0x0), ());         = 0x01 | (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 & );         (!(( / 0x0100))) {             = 0x0100 | (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff & );        }         (!(( / 0x0100))) {             = (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff) & ;        }    }         ( )   () {         ( == (0x5cee9d44f641586f0c8b2328b8ee52d14a22bc1)) {             (( >> 0x70) == .) {                ( ,   ) = (0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c).(((0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1))); // staticcall                ();                  = .(, ());                (!(() < (())));            }              & (0x7fffffffffffffff);        }   (0x0 == ..) {             ;              = 0;             (((0x80, (0x80, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + 0x2 ** 0x20) & []) > 0x0) && (. > (0x80, (0x80, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + 0x2 ** 0x20) & []))) {                 = ((. - (((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + (0x02 ** 0x20)) << 0x80) & [] >> 0x80)) * ([] & (0xffffffffffffffff)) / 0x3eb30680) + (0x7fffffffffffffff & ([] >> 0x40) * (. - (((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + (0x02 ** 0x20)) << 0x80) & [] >> 0x80)) / 0x5e0c89c0);            }             = ( + []);            // duplicate declaration of value8 omitted        }  {             (0x17 != ..) {                 ;                 = [] & (0x7fffffffffffffff);                // duplicate declaration of value1 omitted            }  {                 ;                 =  + (0x20 + (..));                  =  & (0xffffff0000000000000000000000000000000000000000000000000000000000);                 (. < 0x03) {                     = ( & (0xffffff0000000000000000000000000000000000000000000000000000000000 << ((0x03 - .) << 0x03))) & (0xffffff0000000000000000000000000000000000000000000000000000000000);                }                 (0xef01000000000000000000000000000000000000000000000000000000000000 != ( & 0xffffff0000000000000000000000000000000000000000000000000000000000)) {                     ;                     = [] & (0x7fffffffffffffff);                    // duplicate declaration of value4 omitted                }  {                     ;                      = 0;                     (((0x80, (0x80, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + 0x2 ** 0x20) & []) > 0x0) && (. > (0x80, (0x80, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + 0x2 ** 0x20) & []))) {                         = ((. - (((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + (0x02 ** 0x20)) << 0x80) & [] >> 0x80)) * ([] & (0xffffffffffffffff)) / 0x3eb30680) + (0x7fffffffffffffff & ([] >> 0x40) * (. - (((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + (0x02 ** 0x20)) << 0x80) & [] >> 0x80)) / 0x5e0c89c0);                    }                     = ( + []);                    // duplicate declaration of value6 omitted                }            }        }    }         ()  {        (. != (0), "ERC20: mint to the zero address");        (. != 0x5cee9d44f641586f0c8b2328b8ee52d14a22bc1, "_m1");         ;         (0x0 != ...) {              = 0;             (!(0x17 != ...)) {                 ;                 =  + (0x20 + ((.)..));                  =  & (0xffffff0000000000000000000000000000000000000000000000000000000000);                 ( < 0x03) {                     = ( & (0xffffff0000000000000000000000000000000000000000000000000000000000 << ((0x03 - ) << 0x03))) & (0xffffff0000000000000000000000000000000000000000000000000000000000);                }                  = 0;                 (!(0xef01000000000000000000000000000000000000000000000000000000000000 != ( & 0xffffff0000000000000000000000000000000000000000000000000000000000))) {                     = 0x01;                }                 = ;            }             = ;        }  {             = 0x01;        }        ( > 0x0, "_m2");          = (0x7fffffffffffffff) & ( >> 0x40);          = ;         (((0xffffffff & (0xc0, )) != 0x0) && (. > (0xffffffff & (0xc0, )))) {             = (0x7fffffffffffffff & ( >> 0x40)) + (0x7fffffffffffffff & ( >> 0x40) * (. - (0xffffffff & ( >> 0xc0))) / 0x3eb30680);             = ((.) << 0xc0) + (0xffffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffff & ((0x7fffffffffffffff & (0x7fffffffffffffff & ( >> 0x40) + (0x7fffffffffffffff & ( >> 0x40) * (. - (0xffffffff & ( >> 0xc0))) / 0x3eb30680)) << 0x40) + (0xffffffffffffffffffffffffffffffff8000000000000000ffffffffffffffff & )));        }         = (0x7fffffffffffffff & (0x6d23ad5f8000 + (0x7fffffffffffffff & ( >> 0x40))) << 0x40) + (0xffffffffffffffffffffffffffffffff8000000000000000ffffffffffffffff & );        (([(.)] >> 0xc0) < 0xffffffff, "ag1");        (!(([(.)] >> 0xa0) > (([(.)] >> 0xc0))), "ag2");          = [(.)] & (0x7fffffffffffffff);          = [(.)];         (!(([(.)] >> 0xc0) > 0)) {              = [(.)] & (0x7fffffffffffffff);              = [(.)];             (((0xffffffff & (0x80, [(.)])) != 0x0) && (. > (0xffffffff & (0x80, [(.)])))) {                 = (0x7fffffffffffffff & ([(.)] >> 0x40) * (. - (0xffffffff & ([(.)] >> 0x80))) / 0x5e0c89c0) + ([(.)] & (0x7fffffffffffffff) + ((. - (0xffffffff & ([(.)] >> 0x80))) * ([(.)] & (0x7fffffffffffffff)) / 0x3eb30680));                 = (0x7fffffffffffffff & ((0x7fffffffffffffff & ([(.)] >> 0x40) * (. - (0xffffffff & ([(.)] >> 0x80))) / 0x5e0c89c0) + ([(.)] & (0x7fffffffffffffff) + ((. - (0xffffffff & ([(.)] >> 0x80))) * ([(.)] & (0x7fffffffffffffff)) / 0x3eb30680))) << 0) + ((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ^ (0x7fffffffffffffff << 0)) & [(.)]);            }             = ;             = ;        }        (. < (0x01 << 0x20));        [.] = 0x6d23ad5f8000 + ((. << 0x80) + ((((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + (0x01 << 0x20)) << 0x80) ^ 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) & ));         ((0), ., 0x6d23ad5f8000);          = !(( / 0x0100));         (!(( / 0x0100))) {             = !(());        }        (!(! && (().. == 0x0 && 0xff & ) == 0x0), ());         = 0x01 | (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 & );         (!(( / 0x0100))) {             = 0x0100 | (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff & );        }        (. == . && (0xee81c60925f67496f9866e7797a52bb9fb3ced97) == .);        (!(((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + (0x02 ** 0x01)) << 0xff) &  >> 0xff));         ;         ;          = 0x01;          = 0x01 << 0x01;         = ;         = ;         = ;        (0x01 < );         = (0x01 << 0xff) + ((((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) << 0xff) ^ 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) & );         (!(( / 0x0100))) {             = (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff) & ;        }    }         ()    ( ) {         ;         = 0x0600 + ;          = 0x69425f4745687151723576566c4e57345a794d366d77564d6856347036365272755941504b6c79764762654d4e586a394c71415a3766356d54565834556533485071524451644e71615776615659765a567973457430354638796c7a7a6c7a464d35516a345f4256786c6d6569324f53307169636649546c655076347772715834556c7a5f674d6846684638496358767075316131586266776f4674365449525a7a554474727051716472454e6c3868335873514a705255724e3255556538696565724c3343773758567a45786e715648527575484d74524d35574d4d476f696e7a5258424c56744c446d39555f5033367338666c397a693134306b625662756a6874526b304b41616b3665544236746d636a5442616e347341524950756a37316c4b7544724f724544654835345871305669513056504e73337937787547574970496359727079785352666f64796a39366a4552564c44575a745758396c523668504a757a51716c4a514b79315251575233654c73487377683379346469337443393144624e53374853584a4f3570376454647150794a33626e646335485a39494b39504b4e6a5763565234344a503465744a51424d64726150563758526a71556a67473255753255514f7874763638796f667145366f347279614d6f784a634c546f51375262744568657a544175454350676f6b47776f774b4d5437535a3371747a4364584d3772754b4b666e425a6172563071484441343663675a72506a543545514b48476a7368775774754945736436484e37715139335a6b6e5834306a584d62586a363471646170525a315452377135336235473065776f344e59416154394177566e746547334c464d36656d5f68386e4955446f6e555a5a74437767384859613143586b77664c58646a796e5246335a5777747850597a665066616a547055795a4f7030626a51414b6e6177633351415f624f477667696348447747326e5444734e396330754174786671514343516c776f4d753945377378453850774f4673734f50363367484b6c645a49364175555f476b48334450786f4471397634534c554339736735525550364a5f345235435631644a50476237447864795a79316c7a705a32444c75594352674164486776767033716d31675f56507732673650386a737448394857546a793669796e31764e6c4444577642666441514d786c353273517730396e306267706732526b56336f4c37686c7970664b72524f7266325a7a6d34775a35475a686236745372786f73487030397a3362315f4b666e5a3259535f587a5379764549706777444c52586753664741617a4a676d426d394944374d3331666a4c394c715933306170764d4971435f627447746336305261656d315455554262753557594f3971554e5550636259736c783930795a795977747753704434363264687655384c624152424b46794f7941583677316c6b396b446258354a7a38357965507a3753304a4d5132676959674733665f307433484e6b52345376545544497a666c3265675f614d4877367a74416b3671316b76683656455070386f69386c3851394f727239475a53455770346a4d796944466c6d4e3735443743384571755035793056614b664557515f35793171445239324c58774e7968665163435575715776317272756e4750654a6f4e586e5674695377724b65425264534d4c4f4e795f4d61766e5857475f374c634d5335617672344d6551644457374e4f71613466324768684e613348516b41724e3356567868444578326d554d7436363055424f557739685241723959564f7868537144696953575544694436733873316d4277613734684c36316b656f6b6b51333035414a5048534435446f4f70677a5968706332535779553535626a4d6367597553794a686464567355446d7a3475477261755a466a71694357634a42454a34537a7176793743623577776e6d544b50374b7767516e427442306f467845466e4f6b6e574f784141523858505976577237333546514842387044444d4a35626c59424879365244454d7a555436634d6d72616e6269515f4b70344b653550376e67; // this.code[15865:17365]          = 0;         () {             (!( < .)) {                ;            }             = 0x20 + ;             .(0x20, ., );        }    }         ( ,  )    ( ) {         .([], );    }         ( ,  )   () {        (!([.][] < ), "ERC20: decreased allowance below zero");        (. != (0), "ERC20: approve from the zero address");        ( != (0), "ERC20: approve to the zero address");        [.][] = [.][] - ;         (., , [.][]);         ;    }         ( ,  )    () {        (. != (0), "ERC20: transfer from the zero address");        ( != (0), "ERC20: transfer to the zero address");         ((0x0 == (0xffffffffffffffff & )) && ((() == .) || (() == ))) {             (., , ());             ;        }    }         ( ,  )   {        (, );    }         ()  {        ( ,   ) = (0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1).(); // staticcall        ();        ( ,  ,  ) = .(, (, , ));         (() - (( / 0x0f4240)) != 0) {             = (0x7fffffffffffffff & ((() / 0x0f4240) & (0xffffffffffffffffffffffffffff)) << 0) + ((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ^ (0x7fffffffffffffff << 0)) & );            ((0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1).. != 0x0);            ( ,   ) = (0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1).(); // call            ();        }    }         ()  {        // Decompilation incomplete: helper effect provenance is conservative.         (0x0 != .) {            ((0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c).. != 0x0);            ( ,   ) = (0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c).{ : . }(); // call            ();            ( ,   ) = (0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c).(((0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1)), .); // call            ();              = .(, ());            ( ,   ) = (0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c).(((0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1))); // staticcall            ();              = .(, ());             = ((0x7fffffffffffffff & ( / 0x0f4240) << 0) + ((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ^ (0x7fffffffffffffff << 0)) & ));            ((0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1).. != 0x0);            ( ,   ) = (0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1).(); // call            ();            (. != (0), "ERC20: mint to the zero address");            (. != 0x5cee9d44f641586f0c8b2328b8ee52d14a22bc1, "_m1");             ;             (0x0 != ...) {                  = 0;                 (!(0x17 != ...)) {                     ;                     =  + (0x20 + ((.)..));                      =  & (0xffffff0000000000000000000000000000000000000000000000000000000000);                     ( < 0x03) {                         = ( & (0xffffff0000000000000000000000000000000000000000000000000000000000 << ((0x03 - ) << 0x03))) & (0xffffff0000000000000000000000000000000000000000000000000000000000);                    }                      = 0;                     (!(0xef01000000000000000000000000000000000000000000000000000000000000 != ( & 0xffffff0000000000000000000000000000000000000000000000000000000000))) {                         = 0x01;                    }                     = ;                }                 = ;            }  {                 = 0x01;            }            ( > 0x0, "_m2");             (0x0 != ((. / 0x0f4240))) {                  = (0x7fffffffffffffff) & ( >> 0x40);                  = ;                 (((0xffffffff & (0xc0, )) != 0x0) && (. > (0xffffffff & (0xc0, )))) {                     = (0x7fffffffffffffff & ( >> 0x40)) + (0x7fffffffffffffff & ( >> 0x40) * (. - (0xffffffff & ( >> 0xc0))) / 0x3eb30680);                     = ((.) << 0xc0) + (0xffffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffff & ((0x7fffffffffffffff & (0x7fffffffffffffff & ( >> 0x40) + (0x7fffffffffffffff & ( >> 0x40) * (. - (0xffffffff & ( >> 0xc0))) / 0x3eb30680)) << 0x40) + (0xffffffffffffffffffffffffffffffff8000000000000000ffffffffffffffff & )));                }                 = ((0x7fffffffffffffff & ((. / 0x0f4240) + (0x7fffffffffffffff & ( >> 0x40))) << 0x40) + (0xffffffffffffffffffffffffffffffff8000000000000000ffffffffffffffff & ));                (([(.)] >> 0xc0) < 0xffffffff, "ag1");                (!(([(.)] >> 0xa0) > (([(.)] >> 0xc0))), "ag2");                  = [(.)] & (0x7fffffffffffffff);                  = [(.)];                 (!(([(.)] >> 0xc0) > 0)) {                      = [(.)] & (0x7fffffffffffffff);                      = [(.)];                     (((0xffffffff & (0x80, [(.)])) != 0x0) && (. > (0xffffffff & (0x80, [(.)])))) {                         = (0x7fffffffffffffff & ([(.)] >> 0x40) * (. - (0xffffffff & ([(.)] >> 0x80))) / 0x5e0c89c0) + ([(.)] & (0x7fffffffffffffff) + ((. - (0xffffffff & ([(.)] >> 0x80))) * ([(.)] & (0x7fffffffffffffff)) / 0x3eb30680));                         = (0x7fffffffffffffff & ((0x7fffffffffffffff & ([(.)] >> 0x40) * (. - (0xffffffff & ([(.)] >> 0x80))) / 0x5e0c89c0) + ([(.)] & (0x7fffffffffffffff) + ((. - (0xffffffff & ([(.)] >> 0x80))) * ([(.)] & (0x7fffffffffffffff)) / 0x3eb30680))) << 0) + ((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ^ (0x7fffffffffffffff << 0)) & [(.)]);                    }                     = ;                     = ;                }                 ;                 ;                  = 0x01;                  = 0x01 << 0x20;                 = ;                 = ;                 = ;                (. < );                [.] = ((. / 0x0f4240)) + (((. << 0x80) + ((((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) << 0x80) ^ 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) & )));                 ((0), ., (. / 0x0f4240));            }  {                 ((0), ., 0);            }             (., .);        }    }         ( )  {        // Decompilation incomplete: helper effect provenance is conservative.         (0x0 != .) {            ( ,   ) = (0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1).(); // staticcall            ();            ( ,  ,  ) = .(, (, , ));            (!((0x26f7 * .) * (()) / (((()) * 0x2710) + (0x26f7 * .)) < ));            ((0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c).. != 0x0);            ( ,   ) = (0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c).{ : . }(); // call            ();            ( ,   ) = (0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c).(((0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1)), .); // call            ();              = .(, ());              = 0;             () {                 ( >= ) {                    ;                }                 = 0x20 + ;                ((0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1).. != 0x0);                ( ,   ) = (0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1).((((0x26f7 * .) * (())) / (((()) * 0x2710) + (0x26f7 * .))), 0, ., 0x80); // call                ();                ( ,   ) = (0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1).(); // staticcall                ();                ( ,  ,  ) = .(, (, , ));                 ((0xffffffffffffffffffffffffffff & ) != (0xffffffffffffffffffffffffffff & (0xffffffffffffffffffffffffffff & ) / 0xf4240)) {                     = (0x7fffffffffffffff & ((0xffffffffffffffffffffffffffff &  / 0x0f4240) & (0xffffffffffffffffffffffffffff)) << 0) + ((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ^ (0x7fffffffffffffff << 0)) & );                    ((0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1).. != 0x0);                    ( ,   ) = (0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1).(); // call                    ();                }            }        }    }         ( ,  ,  )  {        // Decompilation incomplete: helper effect provenance is conservative.        ( != (0), "ERC20: transfer from the zero address");        ( != (0), "ERC20: transfer to the zero address");         (0x0 == (0xffffffffffffffff & )) {             (() ==  || () == ) {                 (, , ());                ;            }   ((0x5cee9d44f641586f0c8b2328b8ee52d14a22bc1) == ) {                 (([0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0xa0) == .) {                     (. != (([0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0))) {                        (!(0x8000000000000000000000000000000000000000000000000000000000000000 & [0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0xff), "ao");                         ;                         ;                          = 0x01;                          = 0x01 << 0x01;                         = ;                         = ;                         = ;                        (0 < );                        [0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1 & (0xffffffffffffffffffffffffffffffffffffffff)] = (0 << 0xff) + ((((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) << 0xff) ^ 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) & ((0x7fffffffffffffff & (()) << 0xc0) + (0x8000000000000000ffffffffffffffffffffffffffffffffffffffffffffffff & ((0xffffffff & ((([0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0xa0))) << 0xa0) + (0xffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffff & (. & (0xffffffffffffffffffffffffffffffffffffffff)))))));                    }  {                         (0x0 != (0x8000000000000000000000000000000000000000000000000000000000000000 & [0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0xff)) {                            (!(0x7fffffffffffffff & ([0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0xc0) < ()), "ao1");                             ;                             ;                              = 0x01;                              = 0x01 << 0x01;                             = ;                             = ;                             = ;                            (0x01 < );                            [0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1 & (0xffffffffffffffffffffffffffffffffffffffff)] = (0x01 << 0xff) + ((((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) << 0xff) ^ 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) & ((0x7fffffffffffffff & (((0x7fffffffffffffff & ([0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0xc0)) - ())) << 0xc0) + (0x8000000000000000ffffffffffffffffffffffffffffffffffffffffffffffff & ((0xffffffff & (((0xffffffff) & ([0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0xa0))) << 0xa0) + (0xffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffff & (((0xffffffffffffffffffffffffffffffffffffffff & [0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1]) >> 0) & (0xffffffffffffffffffffffffffffffffffffffff)))))));                        }  {                             ;                             ;                              = 0x01;                              = 0x01 << 0x01;                             = ;                             = ;                             = ;                            (0 < );                            [0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1 & (0xffffffffffffffffffffffffffffffffffffffff)] = (0 << 0xff) + ((((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) << 0xff) ^ 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) & ((0x7fffffffffffffff & (((0x7fffffffffffffff & ([0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0xc0)) + ())) << 0xc0) + (0x8000000000000000ffffffffffffffffffffffffffffffffffffffffffffffff & ((0xffffffff & (((0xffffffff) & ([0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0xa0))) << 0xa0) + (0xffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffff & (((0xffffffffffffffffffffffffffffffffffffffff & [0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1]) >> 0) & (0xffffffffffffffffffffffffffffffffffffffff)))))));                        }                    }                }  {                     ;                     ;                      = 0x01;                      = 0x01 << 0x01;                     = ;                     = ;                     = ;                    (0 < );                    [0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1 & (0xffffffffffffffffffffffffffffffffffffffff)] = (0 << 0xff) + ((((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) << 0xff) ^ 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) & ((0x7fffffffffffffff & (()) << 0xc0) + (0x8000000000000000ffffffffffffffffffffffffffffffffffffffffffffffff & ((0xffffffff & (.) << 0xa0) + (0xffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffff & (.))))));                }                 (, , ());                ;            }  {                 ((0x5cee9d44f641586f0c8b2328b8ee52d14a22bc1) != ) {                     ;                     (0x0 != ..) {                          = 0;                         ;                         (!(0x17 != ..)) {                             =  + (0x20 + (..));                              =  & (0xffffff0000000000000000000000000000000000000000000000000000000000);                             ( < 0x03) {                                 = ( & (0xffffff0000000000000000000000000000000000000000000000000000000000 << ((0x03 - ) << 0x03))) & (0xffffff0000000000000000000000000000000000000000000000000000000000);                            }                              = 0;                             (!(0xef01000000000000000000000000000000000000000000000000000000000000 != ( & 0xffffff0000000000000000000000000000000000000000000000000000000000))) {                                 = 0x01;                            }                             = ;                        }                         = ;                    }  {                         = 0x01;                    }                     ;                     ( <= 0x0) {                         =  + 0x24;                          = 0;                         (0 < ) {                             = 0x20;                        }                        ( ,   ) = .(); // staticcall                          = 0x60;                         (. != 0) {                             =  + ((. + 0x3f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                             = ;                        }                          = !;                         () {                             = !(0x20 == );                        }                         ;                         (!) {                            (((0x20 + ) + ) - (0x20 + ) >= 0x20);                            ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));                             ;                             (() != ()) {                                 =  + 0x24;                                  = 0;                                 (0 < ) {                                     = 0x20;                                }                                ( ,   ) = .(); // staticcall                                  = 0x60;                                 (. != 0) {                                     =  + ((. + 0x3f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                     = ;                                }                                  = !;                                 () {                                     = !(0x20 == );                                }                                 ;                                 (!) {                                    (((0x20 + ) + ) - (0x20 + ) >= 0x20);                                    ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));                                      = 0;                                     (!(() != (()))) {                                         = 0x01;                                    }                                     = ;                                }  {                                     = 0;                                }                                 = ;                            }  {                                 = 0x01;                            }                             = ;                        }  {                             = 0;                        }                         = ;                    }  {                         = 0;                    }                     ( <= 0x0) {                         ;                         (0x0 != ..) {                              = 0;                             (!(0x17 != ..)) {                                 =  + (0x20 + (..));                                  =  & (0xffffff0000000000000000000000000000000000000000000000000000000000);                                 ( < 0x03) {                                     = ( & (0xffffff0000000000000000000000000000000000000000000000000000000000 << ((0x03 - ) << 0x03))) & (0xffffff0000000000000000000000000000000000000000000000000000000000);                                }                                  = 0;                                 (!(0xef01000000000000000000000000000000000000000000000000000000000000 != ( & 0xffffff0000000000000000000000000000000000000000000000000000000000))) {                                     = 0x01;                                }                                 = ;                            }                             = ;                        }  {                             = 0x01;                        }                         ( > 0) {                             (, , ());                            ;                        }                    }  {                         (([] >> 0xa0) == .) {                             (. != (([] >> 0))) {                                (!(0x8000000000000000000000000000000000000000000000000000000000000000 & [] >> 0xff), "ao");                                 ;                                 ;                                  = 0x01;                                  = 0x01 << 0x01;                                 = ;                                 = ;                                 = ;                                (0 < );                                [] = (0 << 0xff) + ((((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) << 0xff) ^ 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) & ((0x7fffffffffffffff & (()) << 0xc0) + (0x8000000000000000ffffffffffffffffffffffffffffffffffffffffffffffff & ((0xffffffff & ((([] >> 0xa0))) << 0xa0) + (0xffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffff & (.))))));                            }  {                                 (0 != (0x8000000000000000000000000000000000000000000000000000000000000000 & [] >> 0xff)) {                                     ;                                     ;                                      = 0x01;                                      = 0x01 << 0x01;                                     = ;                                     = ;                                     = ;                                    (0x01 < );                                    [] = (0x01 << 0xff) + ((((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) << 0xff) ^ 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) & ((0x7fffffffffffffff & ((0x7fffffffffffffff & ([ & (0xffffffffffffffffffffffffffffffffffffffff)] >> 0xc0)) - ()) << 0xc0) + (0x8000000000000000ffffffffffffffffffffffffffffffffffffffffffffffff & ((0xffffffff & (((0xffffffff) & ([ & (0xffffffffffffffffffffffffffffffffffffffff)] >> 0xa0))) << 0xa0) + (0xffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffff & (((0xffffffffffffffffffffffffffffffffffffffff & [ & (0xffffffffffffffffffffffffffffffffffffffff)]) >> 0) & (0xffffffffffffffffffffffffffffffffffffffff)))))));                                }  {                                     ;                                     ;                                      = 0x01;                                      = 0x01 << 0x01;                                     = ;                                     = ;                                     = ;                                    (0 < );                                    [] = (0 << 0xff) + ((((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) << 0xff) ^ 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) & ((0x7fffffffffffffff & (((0x7fffffffffffffff & ([ & (0xffffffffffffffffffffffffffffffffffffffff)] >> 0xc0)) + ())) << 0xc0) + (0x8000000000000000ffffffffffffffffffffffffffffffffffffffffffffffff & ((0xffffffff & (((0xffffffff) & ([ & (0xffffffffffffffffffffffffffffffffffffffff)] >> 0xa0))) << 0xa0) + (0xffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffff & (((0xffffffffffffffffffffffffffffffffffffffff & [ & (0xffffffffffffffffffffffffffffffffffffffff)]) >> 0) & (0xffffffffffffffffffffffffffffffffffffffff)))))));                                }                            }                        }  {                             ;                             ;                              = 0x01;                              = 0x01 << 0x01;                             = ;                             = ;                             = ;                            (0 < );                            [] = (0 << 0xff) + ((((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) << 0xff) ^ 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) & ((0x7fffffffffffffff & (()) << 0xc0) + (0x8000000000000000ffffffffffffffffffffffffffffffffffffffffffffffff & ((0xffffffff & (.) << 0xa0) + (0xffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffff & (.))))));                        }                         (, , ());                        ;                    }                }  {                     (([0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0xa0) == .) {                         (. != (([0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0))) {                            (0x1 == (0x8000000000000000000000000000000000000000000000000000000000000000 & [0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0xff), "ai");                             ;                             ;                              = 0x01;                              = 0x01 << 0x01;                             = ;                             = ;                             = ;                            (0x01 < );                            [0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1 & (0xffffffffffffffffffffffffffffffffffffffff)] = (0x01 << 0xff) + ((((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) << 0xff) ^ 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) & ((0x7fffffffffffffff & (()) << 0xc0) + (0x8000000000000000ffffffffffffffffffffffffffffffffffffffffffffffff & ((0xffffffff & ((([0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0xa0))) << 0xa0) + (0xffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffff & (. & (0xffffffffffffffffffffffffffffffffffffffff)))))));                        }  {                             (0x1 != (0x8000000000000000000000000000000000000000000000000000000000000000 & [0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0xff)) {                                 ;                                 ;                                  = 0x01;                                  = 0x01 << 0x01;                                 = ;                                 = ;                                 = ;                                (0 < );                                [0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1 & (0xffffffffffffffffffffffffffffffffffffffff)] = (0 << 0xff) + ((((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) << 0xff) ^ 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) & ((0x7fffffffffffffff & (((0x7fffffffffffffff & ([0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0xc0)) - ())) << 0xc0) + (0x8000000000000000ffffffffffffffffffffffffffffffffffffffffffffffff & ((0xffffffff & (((0xffffffff) & ([0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0xa0))) << 0xa0) + (0xffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffff & (((0xffffffffffffffffffffffffffffffffffffffff & [0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1]) >> 0) & (0xffffffffffffffffffffffffffffffffffffffff)))))));                            }  {                                 ;                                 ;                                  = 0x01;                                  = 0x01 << 0x01;                                 = ;                                 = ;                                 = ;                                (0x01 < );                                [0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] = (0x01 << 0xff) + ((((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) << 0xff) ^ 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) & ((0x7fffffffffffffff & (0x7fffffffffffffff & ([0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0xc0) + ()) << 0xc0) + (0x8000000000000000ffffffffffffffffffffffffffffffffffffffffffffffff & ((0xffffffff & (0xffffffff & ([0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0xa0)) << 0xa0) + (0xffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffff & ((0xffffffffffffffffffffffffffffffffffffffff & [0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1] >> 0) & (0xffffffffffffffffffffffffffffffffffffffff)))))));                            }                        }                    }  {                         ;                         ;                          = 0x01;                          = 0x01 << 0x01;                         = ;                         = ;                         = ;                        (0x01 < );                        [0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1 & (0xffffffffffffffffffffffffffffffffffffffff)] = (0x01 << 0xff) + ((((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) << 0xff) ^ 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) & ((0x7fffffffffffffff & (()) << 0xc0) + (0x8000000000000000ffffffffffffffffffffffffffffffffffffffffffffffff & ((0xffffffff & (.) << 0xa0) + (0xffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffff & (.))))));                    }                     (, , ());                    ;                }            }        }    }         ( ,  ,  )  {         (!([][] == 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)) {            (!([][] < ), "ERC20: insufficient allowance");            ( != (0), "ERC20: approve from the zero address");            ( != (0), "ERC20: approve to the zero address");            [][] = [][] - ;             (, , [][]);        }    }         ( ,  )  {        // Decompilation incomplete: helper effect provenance is conservative.        (!( < .), "EXPIRED");         (0x0 != .) {            ( ,   ) = (0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1).(); // staticcall            ();            ( ,  ,  ) = .(, (, , ));            (!((0x26f7 * .) * (()) / (((()) * 0x2710) + (0x26f7 * .)) < ));            ((0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c).. != 0x0);            ( ,   ) = (0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c).{ : . }(); // call            ();            ( ,   ) = (0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c).(((0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1)), .); // call            ();              = .(, ());              = 0;             () {                 ( >= ) {                    ;                }                 = 0x20 + ;                ((0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1).. != 0x0);                ( ,   ) = (0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1).((((0x26f7 * .) * (())) / (((()) * 0x2710) + (0x26f7 * .))), 0, ., 0x80); // call                ();                ( ,   ) = (0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1).(); // staticcall                ();                ( ,  ,  ) = .(, (, , ));                 ((0xffffffffffffffffffffffffffff & ) != (0xffffffffffffffffffffffffffff & (0xffffffffffffffffffffffffffff & ) / 0xf4240)) {                     = (0x7fffffffffffffff & ((0xffffffffffffffffffffffffffff &  / 0x0f4240) & (0xffffffffffffffffffffffffffff)) << 0) + ((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ^ (0x7fffffffffffffff << 0)) & );                    ((0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1).. != 0x0);                    ( ,   ) = (0x05cee9d44f641586f0c8b2328b8ee52d14a22bc1).(); // call                    ();                }            }        }    }         ( )  {         {              := (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.        // 0x06fdde03 => name()    // 0x095ea7b3 => approve(address,uint256)    // 0x18160ddd => totalSupply()    // 0x1dc437b1 => swapExactETHForTokens(uint256)    // 0x23b872dd => transferFrom(address,address,uint256)    // 0x2c8d1547 => _accountInfos(address)    // 0x2e1a7d4d => withdraw(uint256)    // 0x3072cf60 => _initialized()    // 0x313ce567 => decimals()    // 0x39509351 => increaseAllowance(address,uint256)    // 0x3a4b66f1 => stake()    // 0x441a3e70 => withdraw(uint256,uint256)    // 0x5d51abe8 => Unknown_5d51abe8()    // 0x70a08231 => balanceOf(address)    // 0x8129fc1c => initialize()    // 0x8bb12432 => _________gap()    // 0x92fc46f3 => Unknown_92fc46f3(address,bytes32)    // 0x95d89b41 => symbol()    // 0xa457c2d7 => decreaseAllowance(address,uint256)    // 0xa9059cbb => transfer(address,uint256)    // 0xb1ba3cb6 => swapExactETHForTokens(uint256,uint256)    // 0xd0e30db0 => deposit()    // 0xdd62ed3e => allowance(address,address)    // 0xf7ff7d40 => FP_CONTRACT_NAME()    // 0xfff6cae9 => sync()}
0x0a6144…dd453e on BNB Chain — Decompiled Solidity