Ethereum

0x16bb8b912da187870c23ec6756bb3fad061283d8

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

Decompilation outputEthereum · 0x16bb8b91…061283d86.9 KB8.4 s
Share
529 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;  {     ( )    ( );     ( ,  )   ( );}  {     ;     ;         ();     (, );     ();     ();     (, );     ( )   {         ("memory-safe") {            (0x00, (224, 0x4e487b71))            (0x04, )            (0x00, 0x24)        }    }    ()   {        // Synthetic compatibility routes preserve original selectors for unresolved names.         ((.. >= 4) && (. == 0x7d1eba36)) {            // Route to Unknown_7d1eba36(uint256) after replacing only msg.sig.            ((0xa251966c));            ;        }         ((.. >= 4) && (. == 0xa10acfd6)) {            // Route to Unknown_a10acfd6(uint256) after replacing only msg.sig.            ((0xf07caeab));            ;        }        ();    }             ( ,  ,  ,  ,   )    () {        (!(((0x04 + ) +  + 0x20) > ..));        (() == , ());         ;         =  + (0x20 + (((0x1f + .) / 0x20) * 0x20));         =  + 0x0180;        (((0x20 + ) + .) - (0x20 + ) >= 0x20);        (!( > 0xffffffffffffffff));        (!(((0x20 + ) + .) - ((0x20 + ) + ) < 0x0180));         ((( + 0x0180) < ) | (( + 0x0180) > 0xffffffffffffffff)) (65);         =  + 0x0180;        ( < 0x2);        ( < 0x3);        ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));        ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));        ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));        ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));        ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));        (!( > 0xffffffffffffffff));        (((0x20 + ) + ) +  + 0x1f < ((0x20 + ) + .));         ( > 0xffffffffffffffff) (65);         ((( + ((0x3f + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & ( + 0x1f))) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < ) | (( + ((0x3f + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & ( + 0x1f))) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff)) (65);         =  + ((0x3f + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & ( + 0x1f))) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));        (!(((0x20 + ) + .) < (0x20 + ( + (((0x20 + ) + ) + )))));        ( == ( & 0xff));        (. == (()), ());         (!( < 0x2)) (33);         (!( < 0x3)) (33);         = ((0x20 + ) + 0x01c0) + (( + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) + 0x20;        ((.((), 0x40, , , (()), (()), (()), (()), (), (()), 0x0180, (), (()), (), )) == , ());         = 0;         ( > 0x01) (33);         ( != 0x0) {            ().((), );            ( ,   ) = ().((), , 0x02, ); // call            ();             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));            (( + .) -  >= 0x20);             = 0x40 + ;            ( ,   ) = ().((), 0, 0x80, (0)); // call            ();             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));            (( + .) -  >= 0x20);            ( == ( != 0x0));            ( != 0x0, ());            ().(, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff);            ( ,   ) = ().(""); // call              = 0x60;             (. != 0) {                 =  + ((. + 0x3f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                 = ;            }            ();            ().(, 0);            ( == );              = ().(());            (!( < ), ());              = ().(());             ( < ( + )) {                 ();            }        }  {            ().(, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff);            ( ,   ) = ().(""); // call              = 0x60;             (. != 0) {                 =  + ((. + 0x3f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                 = ;            }            ();            ().(, 0);            ( == );              = ().(());            (!( < ), ());            ().((), );            (().. != 0x0);            ( ,   ) = ().((), , , 0); // call            ();        }        ().(.,  + );         ;    }         ( ,   )   {        (!(((0x04 + ) +  + 0x20) > ..));         ;         =  + (0x20 + (((0x1f + .) / 0x20) * 0x20));         =  + 0x0180;        (((0x20 + ) + ) - (0x20 + ) >= 0x20);        (!( > 0xffffffffffffffff));        (!(((0x20 + ) + ) - ((0x20 + ) + ) < 0x0180));         ((( + 0x0180) < ) | (( + 0x0180) > 0xffffffffffffffff)) (65);         =  + 0x0180;        ( < 0x2);        ( < 0x3);        ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));        ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));        ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));        ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));        ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));        (!( > 0xffffffffffffffff));        (((0x20 + ) + ) +  + 0x1f < ((0x20 + ) + ));         ( > 0xffffffffffffffff) (65);         ((( + ((0x3f + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & ( + 0x1f))) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < ) | (( + ((0x3f + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & ( + 0x1f))) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff)) (65);         =  + ((0x3f + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & ( + 0x1f))) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));        (!(((0x20 + ) + ) < (0x20 + ( + (((0x20 + ) + ) + )))));        ( == ( & 0xff));        (. == (()), ());         (!( < 0x2)) (33);         (!( < 0x3)) (33);         = (((0x20 + ) + 0x01c0) + (( + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) + 0x20;        ((.((), 0x40, , , (()), (()), (()), (()), (), (()), 0x0180, (), (()), (), )) == , ());         = 0;         ( > 0x01) (33);         ( != 0x0) {            ().((), );            ( ,   ) = ().((), , 0x02, ); // call            ();             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));            (( + .) -  >= 0x20);             = 0x40 + ;            ( ,   ) = ().((), , 0x80, ()); // call            ();            ( -  >= 0x20);            ( == ( != 0x0));            ( != 0x0, ());            ( ,   ) = .(.((0x095ea7b3), , 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)); // call approve            ();            ( -  >= 0x20);            .(, ());            ( ,   ) = ().(""); // call              = 0x60;             (. != 0) {                 =  + ((. + 0x3f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                 = ;            }            ();            ( ,   ) = .(.((0x095ea7b3), , 0)); // call approve            ();            ( -  >= 0x20);            ( == );            ( ,   ) = .(.((0x70a08231), ())); // staticcall balanceOf            ();             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));            ( -  >= 0x20);              = .(, ());            (!( < ), ());              = ().(());             ( < (0 + )) {                 ();            }        }  {            ( ,   ) = .(.((0x095ea7b3), , 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)); // call approve            ();            ( -  >= 0x20);            .(, ());            ( ,   ) = ().(""); // call              = 0x60;             (. != 0) {                 =  + ((. + 0x3f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                 = ;            }            ();            ( ,   ) = .(.((0x095ea7b3), , 0)); // call approve            ();            ( -  >= 0x20);            ( == );            ( ,   ) = .(.((0x70a08231), ())); // staticcall balanceOf            ();             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));            ( -  >= 0x20);              = .(, ());            (!( < ), ());            ().((), );            (().. != 0x0);            ( ,   ) = ().((), , , 0); // call            ();        }        ().(., );    }         ( )   {        ( <= 0xffffffffffffffff);        (!((.. - (0x04 + )) < 0x0180));        ( ,   ) = (.).(()); // staticcall        ();         ;         =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));        (( + .) -  >= 0x20);        ( == ( != 0x0));        ( != 0x0, ());         = .;        (.[0x04 + ] < 0x2);         (!(.[0x04 + ] < 0x2)) (33);        (.[(0x04 + ) + 0x20] < 0x3);         (!((.[(0x04 + ) + 0x20]) < 0x3)) (33);        (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0x0100] < ((.. - (0x04 + )) + 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1));        (!(.[(0x04 + ) + .[(0x04 + ) + 0x0100]] > 0xffffffffffffffff));        (!(((0x04 + ) + .[(0x04 + ) + 0x0100] + 0x20) > (.. - (.[(0x04 + ) + .[(0x04 + ) + 0x0100]]))));        (.[(0x04 + ) + 0x0140] == (.[(0x04 + ) + 0x0140] & 0xff));         = (((0x20 + ) + 0x40) + 0x0180) + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (.[(0x04 + ) + (.[(0x04 + ) + 0x0100])] + 0x1f)) + 0x20;         = (.(., 0x40, .[0x04 + ], (.[(0x04 + ) + 0x20]), ((.[(0x04 + ) + 0x40])), ((.[(0x04 + ) + 0x60])), ((.[(0x04 + ) + 0x80])), ((.[(0x04 + ) + 0xa0])), (.[0xc0 + (0x04 + )]), ((.[(0x04 + ) + 0xe0])), 0x0180, (.[0x0120 + (0x04 + )]), ((.[(0x04 + ) + 0x0140])), (.[0x0160 + (0x04 + )]), (.[(0x04 + ) + (.[(0x04 + ) + 0x0100])])));        (.[0x04 + ] < 0x2);         (!(.[0x04 + ] < 0x2)) (33);        (.[(0x04 + ) + 0x20] < 0x3);         (!((.[(0x04 + ) + 0x20]) < 0x3)) (33);        (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0x60] == (.[(0x04 + ) + 0x60] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0x80] == (.[(0x04 + ) + 0x80] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0xa0] == (.[(0x04 + ) + 0xa0] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0xe0] == (.[(0x04 + ) + 0xe0] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0x0100] < ((.. - (0x04 + )) + 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1));        (!(.[(0x04 + ) + .[(0x04 + ) + 0x0100]] > 0xffffffffffffffff));        (!(((0x04 + ) + .[(0x04 + ) + 0x0100] + 0x20) > (.. - (.[(0x04 + ) + .[(0x04 + ) + 0x0100]]))));        (.[(0x04 + ) + 0x0140] == (.[(0x04 + ) + 0x0140] & 0xff));         = (((0x20 + ) + 0x20) + 0x0180) + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (.[(0x04 + ) + (.[(0x04 + ) + 0x0100])] + 0x1f)) + 0x20;        (((0x04 + ) + 0x40) - ((0x04 + ) + 0x20) >= 0x20);        (.[(0x04 + ) + 0x20] < 0x3);         (.[(0x04 + ) + 0x20] > 0x02) (33);         (.[(0x04 + ) + 0x20] != 0) {            (((0x04 + ) + 0x40) - ((0x04 + ) + 0x20) >= 0x20);            (.[(0x04 + ) + 0x20] < 0x3);             (.[(0x04 + ) + 0x20] > 0x02) (33);             (.[(0x04 + ) + 0x20] != 0x01) {                (((0x04 + ) + 0x60) - ((0x04 + ) + 0x40) >= 0x20);                (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));                (((0x04 + ) + 0xc0) - ((0x04 + ) + 0xa0) >= 0x20);                (.[(0x04 + ) + 0xa0] == (.[(0x04 + ) + 0xa0] & 0xffffffffffffffffffffffffffffffffffffffff));                ((.[(0x04 + ) + 0x40]).. != 0x0);                ( ,   ) = (.[(0x04 + ) + 0x40]).((), (.[(0x04 + ) + 0xa0]), (.[0xc0 + (0x04 + )]), 0xa0, (0)); // call                ();            }  {                 = 0x40 + ;                (((0x04 + ) + 0xc0) - ((0x04 + ) + 0xa0) >= 0x20);                (.[(0x04 + ) + 0xa0] == (.[(0x04 + ) + 0xa0] & 0xffffffffffffffffffffffffffffffffffffffff));                 (!(0 < .)) (50);                 (!(0 < .)) (50);                (((0x04 + ) + 0x60) - ((0x04 + ) + 0x40) >= 0x20);                (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));            }        }  {            (((0x04 + ) + 0x60) - ((0x04 + ) + 0x40) >= 0x20);            (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));            (((0x04 + ) + 0xc0) - ((0x04 + ) + 0xa0) >= 0x20);            (.[(0x04 + ) + 0xa0] == (.[(0x04 + ) + 0xa0] & 0xffffffffffffffffffffffffffffffffffffffff));            ((.[(0x04 + ) + 0x40]).. != 0x0);            ( ,   ) = (.[(0x04 + ) + 0x40]).((.[(0x04 + ) + 0xa0]), (.[0xc0 + (0x04 + )]), 0x60); // call            ();        }        (((0x04 + ) + 0xc0) - ((0x04 + ) + 0xa0) >= 0x20);        (.[(0x04 + ) + 0xa0] == (.[(0x04 + ) + 0xa0] & 0xffffffffffffffffffffffffffffffffffffffff));        ( ,   ) = (.[(0x04 + ) + 0xa0]).(()); // staticcall        ();          = .(, ());         ( != 0x0) {            ( ,   ) = (.[(0x04 + ) + 0xa0]).(, ); // call            ();            .(, ());        }        (((0x04 + ) + 0xa0) - ((0x04 + ) + 0x80) >= 0x20);        (.[(0x04 + ) + 0x80] == (.[(0x04 + ) + 0x80] & 0xffffffffffffffffffffffffffffffffffffffff));        ( ,   ) = (.[(0x04 + ) + 0x80]).(()); // staticcall        ();         =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));        (( + .) -  >= 0x20);         (. != 0) {            ( ,   ) = (.[(0x04 + ) + 0x80]).(, .); // call            ();            .(, ());        }    }         ( )   {        ( <= 0xffffffffffffffff);        (!((.. - (0x04 + )) < 0x0180));        ( ,   ) = (.).(()); // staticcall        ();         ;         =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));        (( + .) -  >= 0x20);        ( == ( != 0x0));        ( != 0x0, ());         = .;        (.[0x04 + ] < 0x2);         (!(.[0x04 + ] < 0x2)) (33);        (.[(0x04 + ) + 0x20] < 0x3);         (!((.[(0x04 + ) + 0x20]) < 0x3)) (33);        (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0x0100] < ((.. - (0x04 + )) + 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1));        (!(.[(0x04 + ) + .[(0x04 + ) + 0x0100]] > 0xffffffffffffffff));        (!(((0x04 + ) + .[(0x04 + ) + 0x0100] + 0x20) > (.. - (.[(0x04 + ) + .[(0x04 + ) + 0x0100]]))));        (.[(0x04 + ) + 0x0140] == (.[(0x04 + ) + 0x0140] & 0xff));         = (((0x20 + ) + 0x40) + 0x0180) + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (.[(0x04 + ) + (.[(0x04 + ) + 0x0100])] + 0x1f)) + 0x20;         = (.(., 0x40, .[0x04 + ], (.[(0x04 + ) + 0x20]), ((.[(0x04 + ) + 0x40])), ((.[(0x04 + ) + 0x60])), ((.[(0x04 + ) + 0x80])), ((.[(0x04 + ) + 0xa0])), (.[0xc0 + (0x04 + )]), ((.[(0x04 + ) + 0xe0])), 0x0180, (.[0x0120 + (0x04 + )]), ((.[(0x04 + ) + 0x0140])), (.[0x0160 + (0x04 + )]), (.[(0x04 + ) + (.[(0x04 + ) + 0x0100])])));        (.[0x04 + ] < 0x2);         (!(.[0x04 + ] < 0x2)) (33);        (.[(0x04 + ) + 0x20] < 0x3);         (!((.[(0x04 + ) + 0x20]) < 0x3)) (33);        (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0x60] == (.[(0x04 + ) + 0x60] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0x80] == (.[(0x04 + ) + 0x80] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0xa0] == (.[(0x04 + ) + 0xa0] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0xe0] == (.[(0x04 + ) + 0xe0] & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x04 + ) + 0x0100] < ((.. - (0x04 + )) + 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1));        (!(.[(0x04 + ) + .[(0x04 + ) + 0x0100]] > 0xffffffffffffffff));        (!(((0x04 + ) + .[(0x04 + ) + 0x0100] + 0x20) > (.. - (.[(0x04 + ) + .[(0x04 + ) + 0x0100]]))));        (.[(0x04 + ) + 0x0140] == (.[(0x04 + ) + 0x0140] & 0xff));         = (((0x20 + ) + 0x20) + 0x0180) + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (.[(0x04 + ) + (.[(0x04 + ) + 0x0100])] + 0x1f)) + 0x20;        (((0x04 + ) + 0x40) - ((0x04 + ) + 0x20) >= 0x20);        (.[(0x04 + ) + 0x20] < 0x3);         (.[(0x04 + ) + 0x20] > 0x02) (33);         (.[(0x04 + ) + 0x20] != 0) {            (((0x04 + ) + 0x40) - ((0x04 + ) + 0x20) >= 0x20);            (.[(0x04 + ) + 0x20] < 0x3);             (.[(0x04 + ) + 0x20] > 0x02) (33);             (.[(0x04 + ) + 0x20] != 0x01) {                (((0x04 + ) + 0x60) - ((0x04 + ) + 0x40) >= 0x20);                (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));                (((0x04 + ) + 0xc0) - ((0x04 + ) + 0xa0) >= 0x20);                (.[(0x04 + ) + 0xa0] == (.[(0x04 + ) + 0xa0] & 0xffffffffffffffffffffffffffffffffffffffff));                ((.[(0x04 + ) + 0x40]).. != 0x0);                ( ,   ) = (.[(0x04 + ) + 0x40]).((), (.[(0x04 + ) + 0xa0]), (.[0xc0 + (0x04 + )]), 0xa0, (0)); // call                ();            }  {                 = 0x40 + ;                (((0x04 + ) + 0xc0) - ((0x04 + ) + 0xa0) >= 0x20);                (.[(0x04 + ) + 0xa0] == (.[(0x04 + ) + 0xa0] & 0xffffffffffffffffffffffffffffffffffffffff));                 (!(0 < .)) (50);                 (!(0 < .)) (50);                (((0x04 + ) + 0x60) - ((0x04 + ) + 0x40) >= 0x20);                (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));            }        }  {            (((0x04 + ) + 0x60) - ((0x04 + ) + 0x40) >= 0x20);            (.[(0x04 + ) + 0x40] == (.[(0x04 + ) + 0x40] & 0xffffffffffffffffffffffffffffffffffffffff));            (((0x04 + ) + 0xc0) - ((0x04 + ) + 0xa0) >= 0x20);            (.[(0x04 + ) + 0xa0] == (.[(0x04 + ) + 0xa0] & 0xffffffffffffffffffffffffffffffffffffffff));            ((.[(0x04 + ) + 0x40]).. != 0x0);            ( ,   ) = (.[(0x04 + ) + 0x40]).((.[(0x04 + ) + 0xa0]), (.[0xc0 + (0x04 + )]), 0x60); // call            ();        }        (((0x04 + ) + 0xc0) - ((0x04 + ) + 0xa0) >= 0x20);        (.[(0x04 + ) + 0xa0] == (.[(0x04 + ) + 0xa0] & 0xffffffffffffffffffffffffffffffffffffffff));        ( ,   ) = (.[(0x04 + ) + 0xa0]).(()); // staticcall        ();          = .(, ());         ( != 0x0) {            ( ,   ) = (.[(0x04 + ) + 0xa0]).(, ); // call            ();            .(, ());        }        (((0x04 + ) + 0xa0) - ((0x04 + ) + 0x80) >= 0x20);        (.[(0x04 + ) + 0x80] == (.[(0x04 + ) + 0x80] & 0xffffffffffffffffffffffffffffffffffffffff));        ( ,   ) = (.[(0x04 + ) + 0x80]).(()); // staticcall        ();         =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));        (( + .) -  >= 0x20);         (. != 0) {            ( ,   ) = (.[(0x04 + ) + 0x80]).(, .); // call            ();            .(, ());        }    }         ([]  , []  , []  ,   )   {        (!(((0x04 + ) + (. << 0x05) + 0x20) > ..));        (!(((0x04 + ) + (. << 0x05) + 0x20) > ..));        (!(((0x04 + ) + (. << 0x05) + 0x20) > ..));        (!(((0x04 + ) +  + 0x20) > ..));         ;         =  + (0x20 + (((0x1f + .) / 0x20) * 0x20));         =  + 0x0180;        (((0x20 + ) + .) - (0x20 + ) >= 0x20);        (!( > 0xffffffffffffffff));        (!(((0x20 + ) + .) - ((0x20 + ) + ) < 0x0180));         ((( + 0x0180) < ) | (( + 0x0180) > 0xffffffffffffffff)) (65);         =  + 0x0180;        ( < 0x2);        ( < 0x3);        ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));        ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));        ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));        ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));        ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));        (!( > 0xffffffffffffffff));        (((0x20 + ) + ) +  + 0x1f < ((0x20 + ) + .));         ( > 0xffffffffffffffff) (65);         ((( + ((0x3f + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & ( + 0x1f))) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < ) | (( + ((0x3f + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & ( + 0x1f))) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff)) (65);         =  + ((0x3f + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & ( + 0x1f))) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));        (!(((0x20 + ) + .) < (0x20 + ( + (((0x20 + ) + ) + )))));        ( == ( & 0xff));        (. == (()), ());         (!( < 0x2)) (33);         (!( < 0x3)) (33);         = ((0x20 + ) + 0x01c0) + (( + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) + 0x20;        ((.((), 0x40, , , (()), (()), (()), (()), (), (()), 0x0180, (), (()), (), )) == , ());         = 0;         (!(0x0 < .)) (50);         (!(0x0 < .)) (50);         ( > 0x01) (33);         ( != 0x0) {            ().((), [0]);            ( ,   ) = ().((), [0], 0x02, ); // call            ();             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));            (( + .) -  >= 0x20);             = 0x40 + ;            ( ,   ) = ().((), 0, 0x80, (0)); // call            ();             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));            (( + .) -  >= 0x20);            ( == ( != 0x0));            ( != 0x0, ());            ().(, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff);            ( ,   ) = ().(""); // call              = 0x60;             (. != 0) {                 =  + ((. + 0x3f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                 = ;            }            ();            ().(, 0);            ( == );              = ().(());            (!( < ), ());              = ().(());             ( < ([0] + [0])) {                 ();            }        }  {            ().(, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff);            ( ,   ) = ().(""); // call              = 0x60;             (. != 0) {                 =  + ((. + 0x3f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                 = ;            }            ();            ().(, 0);            ( == );              = ().(());            (!( < ), ());            ().((), );            (().. != 0x0);            ( ,   ) = ().((), , , 0); // call            ();        }         (!(0x0 < .)) (50);        ([0] == ([0] & 0xffffffffffffffffffffffffffffffffffffffff));         (!(0x0 < .)) (50);         (!(0x0 < .)) (50);        ( ,   ) = ([0]).(., [0] + [0]); // 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.        // 0x1b11d0ff => executeOperation(address,uint256,uint256,address,bytes)    // 0x31f57072 => onMorphoFlashLoan(uint256,bytes)    // 0x7d1eba36 => Unknown_7d1eba36(uint256)    // 0xa10acfd6 => Unknown_a10acfd6(uint256)    // 0xf04f2707 => receiveFlashLoan(address[],uint256[],uint256[],bytes)}