mirror of https://github.com/ConsenSys/mythril
blockchainethereumsmart-contractssoliditysecurityprogram-analysissecurity-analysissymbolic-execution
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
30 KiB
62 lines
30 KiB
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<title>Call Graph</title>
|
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/vis/4.21.0/vis.min.css" integrity="sha256-iq5ygGJ7021Pi7H5S+QAUXCPUfaBzfqeplbg/KlEssg=" crossorigin="anonymous" />
|
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/vis/4.21.0/vis.min.js" integrity="sha256-JuQeAGbk9rG/EoRMixuy5X8syzICcvB0dj3KindZkY0=" crossorigin="anonymous"></script>
|
|
|
|
|
|
<style type="text/css">
|
|
#mynetwork {
|
|
height: 100%;
|
|
background-color: #232625;
|
|
}
|
|
body {
|
|
background-color: #232625;
|
|
color: #ffffff;
|
|
font-size: 10px;
|
|
}
|
|
html, body {
|
|
height: 95%;
|
|
}
|
|
</style>
|
|
|
|
|
|
<script>
|
|
var options = {"autoResize": true, "edges": {"font": {"align": "horizontal", "background": "none", "color": "#FFFFFF", "face": "arial", "multi": false, "strokeColor": "#ffffff", "strokeWidth": 0, "vadjust": 0}}, "height": "100%", "layout": {"hierarchical": {"blockShifting": true, "direction": "LR", "edgeMinimization": true, "enabled": true, "levelSeparation": 450, "nodeSpacing": 200, "parentCentralization": false, "sortMethod": "directed", "treeSpacing": 100}, "improvedLayout": true}, "manipulation": false, "nodes": {"borderWidth": 1, "borderWidthSelected": 2, "chosen": true, "color": "#000000", "font": {"align": "left", "color": "#FFFFFF"}, "shape": "box"}, "physics": {"enabled": false}, "width": "100%"};
|
|
var nodes = [{"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "0 PUSH1 0x60\n2 PUSH1 0x40\n4 MSTORE\n5 PUSH1 0x04\n7 CALLDATASIZE\n8 LT\n9 PUSH2 0x0083\n12 JUMPI", "id": "184", "isExpanded": false, "label": "0 PUSH1 0x60\n2 PUSH1 0x40\n4 MSTORE\n5 PUSH1 0x04\n7 CALLDATASIZE\n8 LT\n(click to expand +)", "size": 150, "truncLabel": "0 PUSH1 0x60\n2 PUSH1 0x40\n4 MSTORE\n5 PUSH1 0x04\n7 CALLDATASIZE\n8 LT\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "13 PUSH1 0x00\n15 CALLDATALOAD\n16 PUSH29 0x01000000(...)\n46 SWAP1\n47 DIV\n48 PUSH4 0xffffffff\n53 AND\n54 DUP1\n55 PUSH4 0x2776b163\n60 EQ\n61 PUSH2 0x0088\n64 JUMPI", "id": "185", "isExpanded": false, "label": "13 PUSH1 0x00\n15 CALLDATALOAD\n16 PUSH29 0x01000000(...)\n46 SWAP1\n47 DIV\n48 PUSH4 0xffffffff\n(click to expand +)", "size": 150, "truncLabel": "13 PUSH1 0x00\n15 CALLDATALOAD\n16 PUSH29 0x01000000(...)\n46 SWAP1\n47 DIV\n48 PUSH4 0xffffffff\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "131 JUMPDEST\n132 PUSH1 0x00\n134 DUP1\n135 REVERT", "id": "186", "isExpanded": false, "label": "131 JUMPDEST\n132 PUSH1 0x00\n134 DUP1\n135 REVERT", "size": 150, "truncLabel": "131 JUMPDEST\n132 PUSH1 0x00\n134 DUP1\n135 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "65 DUP1\n66 PUSH4 0x379bf63c\n71 EQ\n72 PUSH2 0x00c1\n75 JUMPI", "id": "187", "isExpanded": false, "label": "65 DUP1\n66 PUSH4 0x379bf63c\n71 EQ\n72 PUSH2 0x00c1\n75 JUMPI", "size": 150, "truncLabel": "65 DUP1\n66 PUSH4 0x379bf63c\n71 EQ\n72 PUSH2 0x00c1\n75 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "136 JUMPDEST\n137 CALLVALUE\n138 ISZERO\n139 PUSH2 0x0093\n142 JUMPI", "id": "188", "isExpanded": false, "label": "136 JUMPDEST\n137 CALLVALUE\n138 ISZERO\n139 PUSH2 0x0093\n142 JUMPI", "size": 150, "truncLabel": "136 JUMPDEST\n137 CALLVALUE\n138 ISZERO\n139 PUSH2 0x0093\n142 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "143 PUSH1 0x00\n145 DUP1\n146 REVERT", "id": "189", "isExpanded": false, "label": "143 PUSH1 0x00\n145 DUP1\n146 REVERT", "size": 150, "truncLabel": "143 PUSH1 0x00\n145 DUP1\n146 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "147 JUMPDEST\n148 PUSH2 0x00bf\n151 PUSH1 0x04\n153 DUP1\n154 DUP1\n155 CALLDATALOAD\n156 PUSH20 0xffffffff(...)\n177 AND\n178 SWAP1\n179 PUSH1 0x20\n181 ADD\n182 SWAP1\n183 SWAP2\n184 SWAP1\n185 POP\n186 POP\n187 PUSH2 0x01e3\n190 JUMP", "id": "190", "isExpanded": false, "label": "147 JUMPDEST\n148 PUSH2 0x00bf\n151 PUSH1 0x04\n153 DUP1\n154 DUP1\n155 CALLDATALOAD\n(click to expand +)", "size": 150, "truncLabel": "147 JUMPDEST\n148 PUSH2 0x00bf\n151 PUSH1 0x04\n153 DUP1\n154 DUP1\n155 CALLDATALOAD\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "483 JUMPDEST\n484 DUP1\n485 PUSH1 0x01\n487 PUSH1 0x00\n489 PUSH2 0x0100\n492 EXP\n493 DUP2\n494 SLOAD\n495 DUP2\n496 PUSH20 0xffffffff(...)\n517 MUL\n518 NOT\n519 AND\n520 SWAP1\n521 DUP4\n522 PUSH20 0xffffffff(...)\n543 AND\n544 MUL\n545 OR\n546 SWAP1\n547 SSTORE\n548 POP\n549 POP\n550 JUMP", "id": "191", "isExpanded": false, "label": "483 JUMPDEST\n484 DUP1\n485 PUSH1 0x01\n487 PUSH1 0x00\n489 PUSH2 0x0100\n492 EXP\n(click to expand +)", "size": 150, "truncLabel": "483 JUMPDEST\n484 DUP1\n485 PUSH1 0x01\n487 PUSH1 0x00\n489 PUSH2 0x0100\n492 EXP\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "191 JUMPDEST\n192 STOP", "id": "192", "isExpanded": false, "label": "191 JUMPDEST\n192 STOP", "size": 150, "truncLabel": "191 JUMPDEST\n192 STOP"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "76 DUP1\n77 PUSH4 0x5a6814ec\n82 EQ\n83 PUSH2 0x0116\n86 JUMPI", "id": "193", "isExpanded": false, "label": "76 DUP1\n77 PUSH4 0x5a6814ec\n82 EQ\n83 PUSH2 0x0116\n86 JUMPI", "size": 150, "truncLabel": "76 DUP1\n77 PUSH4 0x5a6814ec\n82 EQ\n83 PUSH2 0x0116\n86 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "193 JUMPDEST\n194 CALLVALUE\n195 ISZERO\n196 PUSH2 0x00cc\n199 JUMPI", "id": "194", "isExpanded": false, "label": "193 JUMPDEST\n194 CALLVALUE\n195 ISZERO\n196 PUSH2 0x00cc\n199 JUMPI", "size": 150, "truncLabel": "193 JUMPDEST\n194 CALLVALUE\n195 ISZERO\n196 PUSH2 0x00cc\n199 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "200 PUSH1 0x00\n202 DUP1\n203 REVERT", "id": "195", "isExpanded": false, "label": "200 PUSH1 0x00\n202 DUP1\n203 REVERT", "size": 150, "truncLabel": "200 PUSH1 0x00\n202 DUP1\n203 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "204 JUMPDEST\n205 PUSH2 0x00d4\n208 PUSH2 0x0227\n211 JUMP", "id": "196", "isExpanded": false, "label": "204 JUMPDEST\n205 PUSH2 0x00d4\n208 PUSH2 0x0227\n211 JUMP", "size": 150, "truncLabel": "204 JUMPDEST\n205 PUSH2 0x00d4\n208 PUSH2 0x0227\n211 JUMP"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "551 JUMPDEST\n552 PUSH1 0x00\n554 DUP1\n555 SWAP1\n556 SLOAD\n557 SWAP1\n558 PUSH2 0x0100\n561 EXP\n562 SWAP1\n563 DIV\n564 PUSH20 0xffffffff(...)\n585 AND\n586 DUP2\n587 JUMP", "id": "197", "isExpanded": false, "label": "551 JUMPDEST\n552 PUSH1 0x00\n554 DUP1\n555 SWAP1\n556 SLOAD\n557 SWAP1\n(click to expand +)", "size": 150, "truncLabel": "551 JUMPDEST\n552 PUSH1 0x00\n554 DUP1\n555 SWAP1\n556 SLOAD\n557 SWAP1\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "212 JUMPDEST\n213 PUSH1 0x40\n215 MLOAD\n216 DUP1\n217 DUP3\n218 PUSH20 0xffffffff(...)\n239 AND\n240 PUSH20 0xffffffff(...)\n261 AND\n262 DUP2\n263 MSTORE\n264 PUSH1 0x20\n266 ADD\n267 SWAP2\n268 POP\n269 POP\n270 PUSH1 0x40\n272 MLOAD\n273 DUP1\n274 SWAP2\n275 SUB\n276 SWAP1\n277 RETURN", "id": "198", "isExpanded": false, "label": "212 JUMPDEST\n213 PUSH1 0x40\n215 MLOAD\n216 DUP1\n217 DUP3\n218 PUSH20 0xffffffff(...)\n(click to expand +)", "size": 150, "truncLabel": "212 JUMPDEST\n213 PUSH1 0x40\n215 MLOAD\n216 DUP1\n217 DUP3\n218 PUSH20 0xffffffff(...)\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "87 DUP1\n88 PUSH4 0xb5d02c8a\n93 EQ\n94 PUSH2 0x012b\n97 JUMPI", "id": "199", "isExpanded": false, "label": "87 DUP1\n88 PUSH4 0xb5d02c8a\n93 EQ\n94 PUSH2 0x012b\n97 JUMPI", "size": 150, "truncLabel": "87 DUP1\n88 PUSH4 0xb5d02c8a\n93 EQ\n94 PUSH2 0x012b\n97 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "278 JUMPDEST\n279 CALLVALUE\n280 ISZERO\n281 PUSH2 0x0121\n284 JUMPI", "id": "200", "isExpanded": false, "label": "278 JUMPDEST\n279 CALLVALUE\n280 ISZERO\n281 PUSH2 0x0121\n284 JUMPI", "size": 150, "truncLabel": "278 JUMPDEST\n279 CALLVALUE\n280 ISZERO\n281 PUSH2 0x0121\n284 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "285 PUSH1 0x00\n287 DUP1\n288 REVERT", "id": "201", "isExpanded": false, "label": "285 PUSH1 0x00\n287 DUP1\n288 REVERT", "size": 150, "truncLabel": "285 PUSH1 0x00\n287 DUP1\n288 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "289 JUMPDEST\n290 PUSH2 0x0129\n293 PUSH2 0x024c\n296 JUMP", "id": "202", "isExpanded": false, "label": "289 JUMPDEST\n290 PUSH2 0x0129\n293 PUSH2 0x024c\n296 JUMP", "size": 150, "truncLabel": "289 JUMPDEST\n290 PUSH2 0x0129\n293 PUSH2 0x024c\n296 JUMP"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "588 JUMPDEST\n589 PUSH1 0x00\n591 DUP1\n592 SWAP1\n593 SLOAD\n594 SWAP1\n595 PUSH2 0x0100\n598 EXP\n599 SWAP1\n600 DIV\n601 PUSH20 0xffffffff(...)\n622 AND\n623 PUSH20 0xffffffff(...)\n644 AND\n645 PUSH1 0x40\n647 MLOAD\n648 PUSH1 0x00\n650 PUSH1 0x40\n652 MLOAD\n653 DUP1\n654 DUP4\n655 SUB\n656 DUP2\n657 PUSH1 0x00\n659 DUP7\n660 GAS\n661 CALL\n662 SWAP2\n663 POP\n664 POP\n665 POP\n666 JUMP", "id": "203", "isExpanded": false, "label": "588 JUMPDEST\n589 PUSH1 0x00\n591 DUP1\n592 SWAP1\n593 SLOAD\n594 SWAP1\n(click to expand +)", "size": 150, "truncLabel": "588 JUMPDEST\n589 PUSH1 0x00\n591 DUP1\n592 SWAP1\n593 SLOAD\n594 SWAP1\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "297 JUMPDEST\n298 STOP", "id": "204", "isExpanded": false, "label": "297 JUMPDEST\n298 STOP", "size": 150, "truncLabel": "297 JUMPDEST\n298 STOP"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "98 DUP1\n99 PUSH4 0xd24b08cc\n104 EQ\n105 PUSH2 0x0180\n108 JUMPI", "id": "205", "isExpanded": false, "label": "98 DUP1\n99 PUSH4 0xd24b08cc\n104 EQ\n105 PUSH2 0x0180\n108 JUMPI", "size": 150, "truncLabel": "98 DUP1\n99 PUSH4 0xd24b08cc\n104 EQ\n105 PUSH2 0x0180\n108 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "299 JUMPDEST\n300 CALLVALUE\n301 ISZERO\n302 PUSH2 0x0136\n305 JUMPI", "id": "206", "isExpanded": false, "label": "299 JUMPDEST\n300 CALLVALUE\n301 ISZERO\n302 PUSH2 0x0136\n305 JUMPI", "size": 150, "truncLabel": "299 JUMPDEST\n300 CALLVALUE\n301 ISZERO\n302 PUSH2 0x0136\n305 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "306 PUSH1 0x00\n308 DUP1\n309 REVERT", "id": "207", "isExpanded": false, "label": "306 PUSH1 0x00\n308 DUP1\n309 REVERT", "size": 150, "truncLabel": "306 PUSH1 0x00\n308 DUP1\n309 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "310 JUMPDEST\n311 PUSH2 0x013e\n314 PUSH2 0x029b\n317 JUMP", "id": "208", "isExpanded": false, "label": "310 JUMPDEST\n311 PUSH2 0x013e\n314 PUSH2 0x029b\n317 JUMP", "size": 150, "truncLabel": "310 JUMPDEST\n311 PUSH2 0x013e\n314 PUSH2 0x029b\n317 JUMP"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "667 JUMPDEST\n668 PUSH1 0x01\n670 PUSH1 0x00\n672 SWAP1\n673 SLOAD\n674 SWAP1\n675 PUSH2 0x0100\n678 EXP\n679 SWAP1\n680 DIV\n681 PUSH20 0xffffffff(...)\n702 AND\n703 DUP2\n704 JUMP", "id": "209", "isExpanded": false, "label": "667 JUMPDEST\n668 PUSH1 0x01\n670 PUSH1 0x00\n672 SWAP1\n673 SLOAD\n674 SWAP1\n(click to expand +)", "size": 150, "truncLabel": "667 JUMPDEST\n668 PUSH1 0x01\n670 PUSH1 0x00\n672 SWAP1\n673 SLOAD\n674 SWAP1\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "318 JUMPDEST\n319 PUSH1 0x40\n321 MLOAD\n322 DUP1\n323 DUP3\n324 PUSH20 0xffffffff(...)\n345 AND\n346 PUSH20 0xffffffff(...)\n367 AND\n368 DUP2\n369 MSTORE\n370 PUSH1 0x20\n372 ADD\n373 SWAP2\n374 POP\n375 POP\n376 PUSH1 0x40\n378 MLOAD\n379 DUP1\n380 SWAP2\n381 SUB\n382 SWAP1\n383 RETURN", "id": "210", "isExpanded": false, "label": "318 JUMPDEST\n319 PUSH1 0x40\n321 MLOAD\n322 DUP1\n323 DUP3\n324 PUSH20 0xffffffff(...)\n(click to expand +)", "size": 150, "truncLabel": "318 JUMPDEST\n319 PUSH1 0x40\n321 MLOAD\n322 DUP1\n323 DUP3\n324 PUSH20 0xffffffff(...)\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "109 DUP1\n110 PUSH4 0xe11f493e\n115 EQ\n116 PUSH2 0x0195\n119 JUMPI", "id": "211", "isExpanded": false, "label": "109 DUP1\n110 PUSH4 0xe11f493e\n115 EQ\n116 PUSH2 0x0195\n119 JUMPI", "size": 150, "truncLabel": "109 DUP1\n110 PUSH4 0xe11f493e\n115 EQ\n116 PUSH2 0x0195\n119 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "384 JUMPDEST\n385 CALLVALUE\n386 ISZERO\n387 PUSH2 0x018b\n390 JUMPI", "id": "212", "isExpanded": false, "label": "384 JUMPDEST\n385 CALLVALUE\n386 ISZERO\n387 PUSH2 0x018b\n390 JUMPI", "size": 150, "truncLabel": "384 JUMPDEST\n385 CALLVALUE\n386 ISZERO\n387 PUSH2 0x018b\n390 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "391 PUSH1 0x00\n393 DUP1\n394 REVERT", "id": "213", "isExpanded": false, "label": "391 PUSH1 0x00\n393 DUP1\n394 REVERT", "size": 150, "truncLabel": "391 PUSH1 0x00\n393 DUP1\n394 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "395 JUMPDEST\n396 PUSH2 0x0193\n399 PUSH2 0x02c1\n402 JUMP", "id": "214", "isExpanded": false, "label": "395 JUMPDEST\n396 PUSH2 0x0193\n399 PUSH2 0x02c1\n402 JUMP", "size": 150, "truncLabel": "395 JUMPDEST\n396 PUSH2 0x0193\n399 PUSH2 0x02c1\n402 JUMP"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "705 JUMPDEST\n706 PUSH1 0x01\n708 PUSH1 0x00\n710 SWAP1\n711 SLOAD\n712 SWAP1\n713 PUSH2 0x0100\n716 EXP\n717 SWAP1\n718 DIV\n719 PUSH20 0xffffffff(...)\n740 AND\n741 PUSH20 0xffffffff(...)\n762 AND\n763 PUSH1 0x40\n765 MLOAD\n766 PUSH1 0x00\n768 PUSH1 0x40\n770 MLOAD\n771 DUP1\n772 DUP4\n773 SUB\n774 DUP2\n775 PUSH1 0x00\n777 DUP7\n778 GAS\n779 CALL\n780 SWAP2\n781 POP\n782 POP\n783 POP\n784 JUMP", "id": "215", "isExpanded": false, "label": "705 JUMPDEST\n706 PUSH1 0x01\n708 PUSH1 0x00\n710 SWAP1\n711 SLOAD\n712 SWAP1\n(click to expand +)", "size": 150, "truncLabel": "705 JUMPDEST\n706 PUSH1 0x01\n708 PUSH1 0x00\n710 SWAP1\n711 SLOAD\n712 SWAP1\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "403 JUMPDEST\n404 STOP", "id": "216", "isExpanded": false, "label": "403 JUMPDEST\n404 STOP", "size": 150, "truncLabel": "403 JUMPDEST\n404 STOP"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "120 DUP1\n121 PUSH4 0xe1d10f79\n126 EQ\n127 PUSH2 0x01aa\n130 JUMPI", "id": "217", "isExpanded": false, "label": "120 DUP1\n121 PUSH4 0xe1d10f79\n126 EQ\n127 PUSH2 0x01aa\n130 JUMPI", "size": 150, "truncLabel": "120 DUP1\n121 PUSH4 0xe1d10f79\n126 EQ\n127 PUSH2 0x01aa\n130 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "405 JUMPDEST\n406 CALLVALUE\n407 ISZERO\n408 PUSH2 0x01a0\n411 JUMPI", "id": "218", "isExpanded": false, "label": "405 JUMPDEST\n406 CALLVALUE\n407 ISZERO\n408 PUSH2 0x01a0\n411 JUMPI", "size": 150, "truncLabel": "405 JUMPDEST\n406 CALLVALUE\n407 ISZERO\n408 PUSH2 0x01a0\n411 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "412 PUSH1 0x00\n414 DUP1\n415 REVERT", "id": "219", "isExpanded": false, "label": "412 PUSH1 0x00\n414 DUP1\n415 REVERT", "size": 150, "truncLabel": "412 PUSH1 0x00\n414 DUP1\n415 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "416 JUMPDEST\n417 PUSH2 0x01a8\n420 PUSH2 0x0311\n423 JUMP", "id": "220", "isExpanded": false, "label": "416 JUMPDEST\n417 PUSH2 0x01a8\n420 PUSH2 0x0311\n423 JUMP", "size": 150, "truncLabel": "416 JUMPDEST\n417 PUSH2 0x01a8\n420 PUSH2 0x0311\n423 JUMP"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "785 JUMPDEST\n786 PUSH1 0x00\n788 DUP1\n789 SWAP1\n790 SLOAD\n791 SWAP1\n792 PUSH2 0x0100\n795 EXP\n796 SWAP1\n797 DIV\n798 PUSH20 0xffffffff(...)\n819 AND\n820 PUSH20 0xffffffff(...)\n841 AND\n842 PUSH1 0x40\n844 MLOAD\n845 PUSH1 0x00\n847 PUSH1 0x40\n849 MLOAD\n850 DUP1\n851 DUP4\n852 SUB\n853 DUP2\n854 PUSH1 0x00\n856 DUP7\n857 GAS\n858 CALL\n859 SWAP2\n860 POP\n861 POP\n862 POP\n863 PUSH1 0x00\n865 PUSH1 0x02\n867 DUP2\n868 SWAP1\n869 SSTORE\n870 POP\n871 JUMP", "id": "221", "isExpanded": false, "label": "785 JUMPDEST\n786 PUSH1 0x00\n788 DUP1\n789 SWAP1\n790 SLOAD\n791 SWAP1\n(click to expand +)", "size": 150, "truncLabel": "785 JUMPDEST\n786 PUSH1 0x00\n788 DUP1\n789 SWAP1\n790 SLOAD\n791 SWAP1\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "424 JUMPDEST\n425 STOP", "id": "222", "isExpanded": false, "label": "424 JUMPDEST\n425 STOP", "size": 150, "truncLabel": "424 JUMPDEST\n425 STOP"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "131 JUMPDEST\n132 PUSH1 0x00\n134 DUP1\n135 REVERT", "id": "223", "isExpanded": false, "label": "131 JUMPDEST\n132 PUSH1 0x00\n134 DUP1\n135 REVERT", "size": 150, "truncLabel": "131 JUMPDEST\n132 PUSH1 0x00\n134 DUP1\n135 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "426 JUMPDEST\n427 CALLVALUE\n428 ISZERO\n429 PUSH2 0x01b5\n432 JUMPI", "id": "224", "isExpanded": false, "label": "426 JUMPDEST\n427 CALLVALUE\n428 ISZERO\n429 PUSH2 0x01b5\n432 JUMPI", "size": 150, "truncLabel": "426 JUMPDEST\n427 CALLVALUE\n428 ISZERO\n429 PUSH2 0x01b5\n432 JUMPI"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "433 PUSH1 0x00\n435 DUP1\n436 REVERT", "id": "225", "isExpanded": false, "label": "433 PUSH1 0x00\n435 DUP1\n436 REVERT", "size": 150, "truncLabel": "433 PUSH1 0x00\n435 DUP1\n436 REVERT"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "437 JUMPDEST\n438 PUSH2 0x01e1\n441 PUSH1 0x04\n443 DUP1\n444 DUP1\n445 CALLDATALOAD\n446 PUSH20 0xffffffff(...)\n467 AND\n468 SWAP1\n469 PUSH1 0x20\n471 ADD\n472 SWAP1\n473 SWAP2\n474 SWAP1\n475 POP\n476 POP\n477 PUSH2 0x0368\n480 JUMP", "id": "226", "isExpanded": false, "label": "437 JUMPDEST\n438 PUSH2 0x01e1\n441 PUSH1 0x04\n443 DUP1\n444 DUP1\n445 CALLDATALOAD\n(click to expand +)", "size": 150, "truncLabel": "437 JUMPDEST\n438 PUSH2 0x01e1\n441 PUSH1 0x04\n443 DUP1\n444 DUP1\n445 CALLDATALOAD\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "872 JUMPDEST\n873 DUP1\n874 PUSH20 0xffffffff(...)\n895 AND\n896 PUSH1 0x40\n898 MLOAD\n899 PUSH1 0x00\n901 PUSH1 0x40\n903 MLOAD\n904 DUP1\n905 DUP4\n906 SUB\n907 DUP2\n908 PUSH1 0x00\n910 DUP7\n911 GAS\n912 CALL\n913 SWAP2\n914 POP\n915 POP\n916 POP\n917 POP\n918 JUMP", "id": "227", "isExpanded": false, "label": "872 JUMPDEST\n873 DUP1\n874 PUSH20 0xffffffff(...)\n895 AND\n896 PUSH1 0x40\n898 MLOAD\n(click to expand +)", "size": 150, "truncLabel": "872 JUMPDEST\n873 DUP1\n874 PUSH20 0xffffffff(...)\n895 AND\n896 PUSH1 0x40\n898 MLOAD\n(click to expand +)"}, {"color": {"background": "#2f7e5b", "border": "#26996f", "highlight": {"background": "#28a16f", "border": "#26996f"}}, "fullLabel": "481 JUMPDEST\n482 STOP", "id": "228", "isExpanded": false, "label": "481 JUMPDEST\n482 STOP", "size": 150, "truncLabel": "481 JUMPDEST\n482 STOP"}];
|
|
var edges = [{"arrows": "to", "from": "184", "label": "ULE(4, 9_calldatasize)", "smooth": {"type": "cubicBezier"}, "to": "185"}, {"arrows": "to", "from": "184", "label": "Not(ULE(4, 9_calldatasize))", "smooth": {"type": "cubicBezier"}, "to": "186"}, {"arrows": "to", "from": "185", "label": "Not(And(If(9_calldatasize \u003c= 3, 0, 9_calldata[3]) == 99, If(9_calldatasize \u003c= 2, 0, 9_calldata[2]) == 0xb1, If(9_calldatasize \u003c= 1, 0, 9_calldata[1]) == 0x76, If(9_calldatasize \u003c= 0, 0, 9_calldata[0]) == 39))", "smooth": {"type": "cubicBezier"}, "to": "187"}, {"arrows": "to", "from": "185", "label": "And(If(9_calldatasize \u003c= 3, 0, 9_calldata[3]) == 99, If(9_calldatasize \u003c= 2, 0, 9_calldata[2]) == 0xb1, If(9_calldatasize \u003c= 1, 0, 9_calldata[1]) == 0x76, If(9_calldatasize \u003c= 0, 0, 9_calldata[0]) == 39)", "smooth": {"type": "cubicBezier"}, "to": "188"}, {"arrows": "to", "from": "188", "label": "If(call_value9 == 0, 1, 0) == 0", "smooth": {"type": "cubicBezier"}, "to": "189"}, {"arrows": "to", "from": "188", "label": "Not(If(call_value9 == 0, 1, 0) == 0)", "smooth": {"type": "cubicBezier"}, "to": "190"}, {"arrows": "to", "from": "190", "label": "", "smooth": {"type": "cubicBezier"}, "to": "191"}, {"arrows": "to", "from": "191", "label": "", "smooth": {"type": "cubicBezier"}, "to": "192"}, {"arrows": "to", "from": "187", "label": "Not(And(If(9_calldatasize \u003c= 3, 0, 9_calldata[3]) == 60, If(9_calldatasize \u003c= 2, 0, 9_calldata[2]) == 0xf6, If(9_calldatasize \u003c= 1, 0, 9_calldata[1]) == 0x9b, If(9_calldatasize \u003c= 0, 0, 9_calldata[0]) == 55))", "smooth": {"type": "cubicBezier"}, "to": "193"}, {"arrows": "to", "from": "187", "label": "And(If(9_calldatasize \u003c= 3, 0, 9_calldata[3]) == 60, If(9_calldatasize \u003c= 2, 0, 9_calldata[2]) == 0xf6, If(9_calldatasize \u003c= 1, 0, 9_calldata[1]) == 0x9b, If(9_calldatasize \u003c= 0, 0, 9_calldata[0]) == 55)", "smooth": {"type": "cubicBezier"}, "to": "194"}, {"arrows": "to", "from": "194", "label": "If(call_value9 == 0, 1, 0) == 0", "smooth": {"type": "cubicBezier"}, "to": "195"}, {"arrows": "to", "from": "194", "label": "Not(If(call_value9 == 0, 1, 0) == 0)", "smooth": {"type": "cubicBezier"}, "to": "196"}, {"arrows": "to", "from": "196", "label": "", "smooth": {"type": "cubicBezier"}, "to": "197"}, {"arrows": "to", "from": "197", "label": "", "smooth": {"type": "cubicBezier"}, "to": "198"}, {"arrows": "to", "from": "193", "label": "Not(And(If(9_calldatasize \u003c= 3, 0, 9_calldata[3]) == 0xec, If(9_calldatasize \u003c= 2, 0, 9_calldata[2]) == 20, If(9_calldatasize \u003c= 1, 0, 9_calldata[1]) == 0x68, If(9_calldatasize \u003c= 0, 0, 9_calldata[0]) == 90))", "smooth": {"type": "cubicBezier"}, "to": "199"}, {"arrows": "to", "from": "193", "label": "And(If(9_calldatasize \u003c= 3, 0, 9_calldata[3]) == 0xec, If(9_calldatasize \u003c= 2, 0, 9_calldata[2]) == 20, If(9_calldatasize \u003c= 1, 0, 9_calldata[1]) == 0x68, If(9_calldatasize \u003c= 0, 0, 9_calldata[0]) == 90)", "smooth": {"type": "cubicBezier"}, "to": "200"}, {"arrows": "to", "from": "200", "label": "If(call_value9 == 0, 1, 0) == 0", "smooth": {"type": "cubicBezier"}, "to": "201"}, {"arrows": "to", "from": "200", "label": "Not(If(call_value9 == 0, 1, 0) == 0)", "smooth": {"type": "cubicBezier"}, "to": "202"}, {"arrows": "to", "from": "202", "label": "", "smooth": {"type": "cubicBezier"}, "to": "203"}, {"arrows": "to", "from": "203", "label": "", "smooth": {"type": "cubicBezier"}, "to": "204"}, {"arrows": "to", "from": "199", "label": "Not(And(If(9_calldatasize \u003c= 3, 0, 9_calldata[3]) == 0x8a, If(9_calldatasize \u003c= 2, 0, 9_calldata[2]) == 44, If(9_calldatasize \u003c= 1, 0, 9_calldata[1]) == 0xd0, If(9_calldatasize \u003c= 0, 0, 9_calldata[0]) == 0xb5))", "smooth": {"type": "cubicBezier"}, "to": "205"}, {"arrows": "to", "from": "199", "label": "And(If(9_calldatasize \u003c= 3, 0, 9_calldata[3]) == 0x8a, If(9_calldatasize \u003c= 2, 0, 9_calldata[2]) == 44, If(9_calldatasize \u003c= 1, 0, 9_calldata[1]) == 0xd0, If(9_calldatasize \u003c= 0, 0, 9_calldata[0]) == 0xb5)", "smooth": {"type": "cubicBezier"}, "to": "206"}, {"arrows": "to", "from": "206", "label": "If(call_value9 == 0, 1, 0) == 0", "smooth": {"type": "cubicBezier"}, "to": "207"}, {"arrows": "to", "from": "206", "label": "Not(If(call_value9 == 0, 1, 0) == 0)", "smooth": {"type": "cubicBezier"}, "to": "208"}, {"arrows": "to", "from": "208", "label": "", "smooth": {"type": "cubicBezier"}, "to": "209"}, {"arrows": "to", "from": "209", "label": "", "smooth": {"type": "cubicBezier"}, "to": "210"}, {"arrows": "to", "from": "205", "label": "Not(And(If(9_calldatasize \u003c= 3, 0, 9_calldata[3]) == 0xcc, If(9_calldatasize \u003c= 2, 0, 9_calldata[2]) == 8, If(9_calldatasize \u003c= 1, 0, 9_calldata[1]) == 75, If(9_calldatasize \u003c= 0, 0, 9_calldata[0]) == 0xd2))", "smooth": {"type": "cubicBezier"}, "to": "211"}, {"arrows": "to", "from": "205", "label": "And(If(9_calldatasize \u003c= 3, 0, 9_calldata[3]) == 0xcc, If(9_calldatasize \u003c= 2, 0, 9_calldata[2]) == 8, If(9_calldatasize \u003c= 1, 0, 9_calldata[1]) == 75, If(9_calldatasize \u003c= 0, 0, 9_calldata[0]) == 0xd2)", "smooth": {"type": "cubicBezier"}, "to": "212"}, {"arrows": "to", "from": "212", "label": "If(call_value9 == 0, 1, 0) == 0", "smooth": {"type": "cubicBezier"}, "to": "213"}, {"arrows": "to", "from": "212", "label": "Not(If(call_value9 == 0, 1, 0) == 0)", "smooth": {"type": "cubicBezier"}, "to": "214"}, {"arrows": "to", "from": "214", "label": "", "smooth": {"type": "cubicBezier"}, "to": "215"}, {"arrows": "to", "from": "215", "label": "", "smooth": {"type": "cubicBezier"}, "to": "216"}, {"arrows": "to", "from": "211", "label": "Not(And(If(9_calldatasize \u003c= 3, 0, 9_calldata[3]) == 62, If(9_calldatasize \u003c= 2, 0, 9_calldata[2]) == 73, If(9_calldatasize \u003c= 1, 0, 9_calldata[1]) == 31, If(9_calldatasize \u003c= 0, 0, 9_calldata[0]) == 0xe1))", "smooth": {"type": "cubicBezier"}, "to": "217"}, {"arrows": "to", "from": "211", "label": "And(If(9_calldatasize \u003c= 3, 0, 9_calldata[3]) == 62, If(9_calldatasize \u003c= 2, 0, 9_calldata[2]) == 73, If(9_calldatasize \u003c= 1, 0, 9_calldata[1]) == 31, If(9_calldatasize \u003c= 0, 0, 9_calldata[0]) == 0xe1)", "smooth": {"type": "cubicBezier"}, "to": "218"}, {"arrows": "to", "from": "218", "label": "If(call_value9 == 0, 1, 0) == 0", "smooth": {"type": "cubicBezier"}, "to": "219"}, {"arrows": "to", "from": "218", "label": "Not(If(call_value9 == 0, 1, 0) == 0)", "smooth": {"type": "cubicBezier"}, "to": "220"}, {"arrows": "to", "from": "220", "label": "", "smooth": {"type": "cubicBezier"}, "to": "221"}, {"arrows": "to", "from": "221", "label": "", "smooth": {"type": "cubicBezier"}, "to": "222"}, {"arrows": "to", "from": "217", "label": "Not(And(If(9_calldatasize \u003c= 3, 0, 9_calldata[3]) == 0x79, If(9_calldatasize \u003c= 2, 0, 9_calldata[2]) == 15, If(9_calldatasize \u003c= 1, 0, 9_calldata[1]) == 0xd1, If(9_calldatasize \u003c= 0, 0, 9_calldata[0]) == 0xe1))", "smooth": {"type": "cubicBezier"}, "to": "223"}, {"arrows": "to", "from": "217", "label": "And(If(9_calldatasize \u003c= 3, 0, 9_calldata[3]) == 0x79, If(9_calldatasize \u003c= 2, 0, 9_calldata[2]) == 15, If(9_calldatasize \u003c= 1, 0, 9_calldata[1]) == 0xd1, If(9_calldatasize \u003c= 0, 0, 9_calldata[0]) == 0xe1)", "smooth": {"type": "cubicBezier"}, "to": "224"}, {"arrows": "to", "from": "224", "label": "If(call_value9 == 0, 1, 0) == 0", "smooth": {"type": "cubicBezier"}, "to": "225"}, {"arrows": "to", "from": "224", "label": "Not(If(call_value9 == 0, 1, 0) == 0)", "smooth": {"type": "cubicBezier"}, "to": "226"}, {"arrows": "to", "from": "226", "label": "", "smooth": {"type": "cubicBezier"}, "to": "227"}, {"arrows": "to", "from": "227", "label": "", "smooth": {"type": "cubicBezier"}, "to": "228"}];
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<p>Mythril / Ethereum LASER Symbolic VM</p>
|
|
<div id="mynetwork"></div>
|
|
<script type="text/javascript">
|
|
var container = document.getElementById('mynetwork');
|
|
|
|
var nodesSet = new vis.DataSet(nodes);
|
|
var edgesSet = new vis.DataSet(edges);
|
|
var data = {'nodes': nodesSet, 'edges': edgesSet}
|
|
|
|
var gph = new vis.Network(container, data, options);
|
|
gph.on("click", function (params) {
|
|
// parse node id
|
|
var nodeID = params['nodes']['0'];
|
|
if (nodeID) {
|
|
var clickedNode = nodesSet.get(nodeID);
|
|
|
|
if(clickedNode.isExpanded) {
|
|
clickedNode.label = clickedNode.truncLabel;
|
|
}
|
|
else {
|
|
clickedNode.label = clickedNode.fullLabel;
|
|
}
|
|
|
|
clickedNode.isExpanded = !clickedNode.isExpanded;
|
|
|
|
nodesSet.update(clickedNode);
|
|
}
|
|
});
|
|
</script>
|
|
</body>
|
|
</html> |