1 2method ExampleJavaJniFuzzer.<init>():void 3{ 4............................. begin block 1 ............................. 5 .src "ExampleJavaJniFuzzer.java" 6 .line 18 7 .line 18 8 0| invoke-direct {v1}, java.lang.Object.<init>():void 9 3| const/4 v0, #+0 (0x00000000 | 0.00000) 10 4| invoke-static {v0}, com.code_intelligence.jazzer.runtime.CoverageMap.recordCoverage(int):void 11 7| return-void 12.............................. end block 1 .............................. 13} 14 15method ExampleJavaJniFuzzer.fuzzerTestOneInput(com.code_intelligence.jazzer.api.FuzzedDataProvider):void 16{ 17............................. begin block 1 ............................. 18 .params "data" 19 .src "ExampleJavaJniFuzzer.java" 20 .line 21 21 .line 21 22 0| invoke-interface {v5}, com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeRemainingAsAsciiString():java.lang.String 23 3| move-result-object v0 24 4| const/4 v1, #+1 (0x00000001 | 1.40130e-45) 25.............................. end block 1 .............................. 26 .try_begin_1 27............................. begin block 2 ............................. 28 5| invoke-static {v1}, com.code_intelligence.jazzer.runtime.CoverageMap.recordCoverage(int):void 29.............................. end block 2 .............................. 30 .try_end_1 31 catch(java.lang.ClassNotFoundException) : Label_2 32 catch(java.lang.InstantiationException) : Label_2 33 catch(java.lang.IllegalAccessException) : Label_2 34 .try_begin_2 35............................. begin block 3 ............................. 36 .line 23 37 .local v0, "input", java.lang.String 38 8| const-class v1, ExampleJavaJniFuzzer 39 10| invoke-virtual {v1}, java.lang.Class.getClassLoader():java.lang.ClassLoader 40 13| move-result-object v1 41 14| filled-new-array {v0}, java.lang.Object[] 42 17| move-result-object v2 43 18| const-method-handle v3, loadClass 44 20| const v4, #+1696909080 (0x6524c718 | 4.86338e+22) 45 23| invoke-static {v3,v1,v2,v4}, com.code_intelligence.jazzer.sanitizers.ReflectiveCall.loadClassHook(java.lang.invoke.MethodHandle, java.lang.Object, java.lang.Object[], int):void 46 26| const/4 v3, #+0 (0x00000000 | 0.00000) 47 27| aget-object v2, v2, v3 48 29| check-cast v2, java.lang.String 49 31| invoke-virtual {v1,v2}, java.lang.ClassLoader.loadClass(java.lang.String):java.lang.Class 50 34| move-result-object v1 51 35| invoke-virtual {v1}, java.lang.Class.newInstance():java.lang.Object 52.............................. end block 3 .............................. 53 .try_end_2 54 catch(java.lang.ClassNotFoundException) : Label_1 55 catch(java.lang.InstantiationException) : Label_1 56 catch(java.lang.IllegalAccessException) : Label_1 57............................. begin block 4 ............................. 58 .line 25 59 38| const/4 v1, #+2 (0x00000002 | 2.80260e-45) 60 39| invoke-static {v1}, com.code_intelligence.jazzer.runtime.CoverageMap.recordCoverage(int):void 61 42| goto Label_4 62.............................. end block 4 .............................. 63............................. begin block 5 ............................. 64Label_1: 65 .line 24 66 43| move-exception v1 67 44| goto Label_3 68.............................. end block 5 .............................. 69............................. begin block 6 ............................. 70Label_2: 71 .end_local v0 72 45| move-exception v1 73.............................. end block 6 .............................. 74............................. begin block 7 ............................. 75Label_3: 76 .restart_local v0 77 46| const/4 v1, #+3 (0x00000003 | 4.20390e-45) 78 47| invoke-static {v1}, com.code_intelligence.jazzer.runtime.CoverageMap.recordCoverage(int):void 79.............................. end block 7 .............................. 80............................. begin block 8 ............................. 81Label_4: 82 .line 26 83 50| const/4 v1, #+4 (0x00000004 | 5.60519e-45) 84 51| invoke-static {v1}, com.code_intelligence.jazzer.runtime.CoverageMap.recordCoverage(int):void 85 54| return-void 86.............................. end block 8 .............................. 87} 88 89method com.code_intelligence.jazzer.api.AutofuzzConstructionException.<init>():void 90{ 91............................. begin block 1 ............................. 92 .src "AutofuzzConstructionException.java" 93 .line 24 94 .line 24 95 0| invoke-direct {v0}, java.lang.RuntimeException.<init>():void 96 .line 25 97 3| return-void 98.............................. end block 1 .............................. 99} 100 101method com.code_intelligence.jazzer.api.AutofuzzConstructionException.<init>(java.lang.String):void 102{ 103............................. begin block 1 ............................. 104 .params "message" 105 .src "AutofuzzConstructionException.java" 106 .line 27 107 .line 27 108 0| invoke-direct {v0,v1}, java.lang.RuntimeException.<init>(java.lang.String):void 109 .line 28 110 3| return-void 111.............................. end block 1 .............................. 112} 113 114method com.code_intelligence.jazzer.api.AutofuzzConstructionException.<init>(java.lang.Throwable):void 115{ 116............................. begin block 1 ............................. 117 .params "cause" 118 .src "AutofuzzConstructionException.java" 119 .line 30 120 .line 30 121 0| invoke-direct {v0,v1}, java.lang.RuntimeException.<init>(java.lang.Throwable):void 122 .line 31 123 3| return-void 124.............................. end block 1 .............................. 125} 126 127method com.code_intelligence.jazzer.api.AutofuzzInvocationException.<init>(java.lang.Throwable):void 128{ 129............................. begin block 1 ............................. 130 .params "cause" 131 .src "AutofuzzInvocationException.java" 132 .line 24 133 .line 24 134 0| invoke-direct {v0,v1}, java.lang.RuntimeException.<init>(java.lang.Throwable):void 135 .line 25 136 3| return-void 137.............................. end block 1 .............................. 138} 139 140method com.code_intelligence.jazzer.api.Consumer1.accept(java.lang.Object):void 141{ 142} 143 144method com.code_intelligence.jazzer.api.Consumer2.accept(java.lang.Object, java.lang.Object):void 145{ 146} 147 148method com.code_intelligence.jazzer.api.Consumer3.accept(java.lang.Object, java.lang.Object, java.lang.Object):void 149{ 150} 151 152method com.code_intelligence.jazzer.api.Consumer4.accept(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object):void 153{ 154} 155 156method com.code_intelligence.jazzer.api.Consumer5.accept(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object):void 157{ 158} 159 160method com.code_intelligence.jazzer.api.Function1.apply(java.lang.Object):java.lang.Object 161{ 162} 163 164method com.code_intelligence.jazzer.api.Function2.apply(java.lang.Object, java.lang.Object):java.lang.Object 165{ 166} 167 168method com.code_intelligence.jazzer.api.Function3.apply(java.lang.Object, java.lang.Object, java.lang.Object):java.lang.Object 169{ 170} 171 172method com.code_intelligence.jazzer.api.Function4.apply(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object):java.lang.Object 173{ 174} 175 176method com.code_intelligence.jazzer.api.Function5.apply(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object):java.lang.Object 177{ 178} 179 180method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeAsciiString(int):java.lang.String 181{ 182} 183 184method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeBoolean():boolean 185{ 186} 187 188method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeBooleans(int):boolean[] 189{ 190} 191 192method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeByte():byte 193{ 194} 195 196method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeByte(byte, byte):byte 197{ 198} 199 200method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeBytes(int):byte[] 201{ 202} 203 204method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeChar():char 205{ 206} 207 208method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeChar(char, char):char 209{ 210} 211 212method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeCharNoSurrogates():char 213{ 214} 215 216method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeDouble():double 217{ 218} 219 220method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeFloat():float 221{ 222} 223 224method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeInt():int 225{ 226} 227 228method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeInt(int, int):int 229{ 230} 231 232method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeInts(int):int[] 233{ 234} 235 236method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeLong():long 237{ 238} 239 240method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeLong(long, long):long 241{ 242} 243 244method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeLongs(int):long[] 245{ 246} 247 248method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeProbabilityDouble():double 249{ 250} 251 252method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeProbabilityFloat():float 253{ 254} 255 256method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeRegularDouble():double 257{ 258} 259 260method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeRegularDouble(double, double):double 261{ 262} 263 264method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeRegularFloat():float 265{ 266} 267 268method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeRegularFloat(float, float):float 269{ 270} 271 272method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeRemainingAsAsciiString():java.lang.String 273{ 274} 275 276method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeRemainingAsBytes():byte[] 277{ 278} 279 280method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeRemainingAsString():java.lang.String 281{ 282} 283 284method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeShort():short 285{ 286} 287 288method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeShort(short, short):short 289{ 290} 291 292method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeShorts(int):short[] 293{ 294} 295 296method com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeString(int):java.lang.String 297{ 298} 299 300method com.code_intelligence.jazzer.api.FuzzedDataProvider.pickValue(byte[]):byte 301{ 302............................. begin block 1 ............................. 303 .params "array" 304 .src "FuzzedDataProvider.java" 305 .line 333 306 .line 333 307 0| array-length v0, v3 308 1| add-int/lit8 v0, v0, #-1 (0xffffffff | NaN) 309 3| const/4 v1, #+0 (0x00000000 | 0.00000) 310 4| invoke-interface {v2,v1,v0}, com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeInt(int, int):int 311 7| move-result v0 312 8| aget-byte v0, v3, v0 313 10| return v0 314.............................. end block 1 .............................. 315} 316 317method com.code_intelligence.jazzer.api.FuzzedDataProvider.pickValue(char[]):char 318{ 319............................. begin block 1 ............................. 320 .params "array" 321 .src "FuzzedDataProvider.java" 322 .line 399 323 .line 399 324 0| array-length v0, v3 325 1| add-int/lit8 v0, v0, #-1 (0xffffffff | NaN) 326 3| const/4 v1, #+0 (0x00000000 | 0.00000) 327 4| invoke-interface {v2,v1,v0}, com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeInt(int, int):int 328 7| move-result v0 329 8| aget-char v0, v3, v0 330 10| return v0 331.............................. end block 1 .............................. 332} 333 334method com.code_intelligence.jazzer.api.FuzzedDataProvider.pickValue(double[]):double 335{ 336............................. begin block 1 ............................. 337 .params "array" 338 .src "FuzzedDataProvider.java" 339 .line 377 340 .line 377 341 0| array-length v0, v3 342 1| add-int/lit8 v0, v0, #-1 (0xffffffff | NaN) 343 3| const/4 v1, #+0 (0x00000000 | 0.00000) 344 4| invoke-interface {v2,v1,v0}, com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeInt(int, int):int 345 7| move-result v0 346 8| aget-wide v0:v1, v3, v0 347 10| return-wide v0:v1 348.............................. end block 1 .............................. 349} 350 351method com.code_intelligence.jazzer.api.FuzzedDataProvider.pickValue(float[]):float 352{ 353............................. begin block 1 ............................. 354 .params "array" 355 .src "FuzzedDataProvider.java" 356 .line 388 357 .line 388 358 0| array-length v0, v3 359 1| add-int/lit8 v0, v0, #-1 (0xffffffff | NaN) 360 3| const/4 v1, #+0 (0x00000000 | 0.00000) 361 4| invoke-interface {v2,v1,v0}, com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeInt(int, int):int 362 7| move-result v0 363 8| aget v0, v3, v0 364 10| return v0 365.............................. end block 1 .............................. 366} 367 368method com.code_intelligence.jazzer.api.FuzzedDataProvider.pickValue(int[]):int 369{ 370............................. begin block 1 ............................. 371 .params "array" 372 .src "FuzzedDataProvider.java" 373 .line 355 374 .line 355 375 0| array-length v0, v3 376 1| add-int/lit8 v0, v0, #-1 (0xffffffff | NaN) 377 3| const/4 v1, #+0 (0x00000000 | 0.00000) 378 4| invoke-interface {v2,v1,v0}, com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeInt(int, int):int 379 7| move-result v0 380 8| aget v0, v3, v0 381 10| return v0 382.............................. end block 1 .............................. 383} 384 385method com.code_intelligence.jazzer.api.FuzzedDataProvider.pickValue(long[]):long 386{ 387............................. begin block 1 ............................. 388 .params "array" 389 .src "FuzzedDataProvider.java" 390 .line 366 391 .line 366 392 0| array-length v0, v3 393 1| add-int/lit8 v0, v0, #-1 (0xffffffff | NaN) 394 3| const/4 v1, #+0 (0x00000000 | 0.00000) 395 4| invoke-interface {v2,v1,v0}, com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeInt(int, int):int 396 7| move-result v0 397 8| aget-wide v0:v1, v3, v0 398 10| return-wide v0:v1 399.............................. end block 1 .............................. 400} 401 402method com.code_intelligence.jazzer.api.FuzzedDataProvider.pickValue(java.util.Collection):java.lang.Object 403{ 404............................. begin block 1 ............................. 405 .params "?" 406 .src "FuzzedDataProvider.java" 407 .line 291 408 .line 291 409 .local_ex v5, "collection", java.util.Collection, "Ljava/util/Collection<TT;>;" 410 0| invoke-interface {v5}, java.util.Collection.size():int 411 3| move-result v0 412 .line 292 413 .local v0, "size", int 414 4| if-eqz v0, Label_2 415.............................. end block 1 .............................. 416............................. begin block 2 ............................. 417 .line 295 418 6| instance-of v1, v5, java.util.List 419 8| if-eqz v1, Label_1 420.............................. end block 2 .............................. 421............................. begin block 3 ............................. 422 .line 296 423 10| move-object v1, v5 424 11| check-cast v1, java.util.List 425 13| add-int/lit8 v2, v0, #-1 (0xffffffff | NaN) 426 15| const/4 v3, #+0 (0x00000000 | 0.00000) 427 16| invoke-interface {v4,v3,v2}, com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeInt(int, int):int 428 19| move-result v2 429 20| invoke-interface {v1,v2}, java.util.List.get(int):java.lang.Object 430 23| move-result-object v1 431 24| return-object v1 432.............................. end block 3 .............................. 433............................. begin block 4 ............................. 434Label_1: 435 .line 298 436 25| invoke-interface {v5}, java.util.Collection.toArray():java.lang.Object[] 437 28| move-result-object v1 438 29| invoke-interface {v4,v1}, com.code_intelligence.jazzer.api.FuzzedDataProvider.pickValue(java.lang.Object[]):java.lang.Object 439 32| move-result-object v1 440 33| return-object v1 441.............................. end block 4 .............................. 442............................. begin block 5 ............................. 443Label_2: 444 .line 293 445 34| new-instance v1, java.lang.IllegalArgumentException 446 36| const-string v2, "collection is empty" 447 38| invoke-direct {v1,v2}, java.lang.IllegalArgumentException.<init>(java.lang.String):void 448 41| throw v1 449.............................. end block 5 .............................. 450} 451 452method com.code_intelligence.jazzer.api.FuzzedDataProvider.pickValue(java.lang.Object[]):java.lang.Object 453{ 454............................. begin block 1 ............................. 455 .params "?" 456 .src "FuzzedDataProvider.java" 457 .line 311 458 .line 311 459 .local_ex v3, "array", java.lang.Object[], "[TT;" 460 0| array-length v0, v3 461 1| add-int/lit8 v0, v0, #-1 (0xffffffff | NaN) 462 3| const/4 v1, #+0 (0x00000000 | 0.00000) 463 4| invoke-interface {v2,v1,v0}, com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeInt(int, int):int 464 7| move-result v0 465 8| aget-object v0, v3, v0 466 10| return-object v0 467.............................. end block 1 .............................. 468} 469 470method com.code_intelligence.jazzer.api.FuzzedDataProvider.pickValue(short[]):short 471{ 472............................. begin block 1 ............................. 473 .params "array" 474 .src "FuzzedDataProvider.java" 475 .line 344 476 .line 344 477 0| array-length v0, v3 478 1| add-int/lit8 v0, v0, #-1 (0xffffffff | NaN) 479 3| const/4 v1, #+0 (0x00000000 | 0.00000) 480 4| invoke-interface {v2,v1,v0}, com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeInt(int, int):int 481 7| move-result v0 482 8| aget-short v0, v3, v0 483 10| return v0 484.............................. end block 1 .............................. 485} 486 487method com.code_intelligence.jazzer.api.FuzzedDataProvider.pickValue(boolean[]):boolean 488{ 489............................. begin block 1 ............................. 490 .params "array" 491 .src "FuzzedDataProvider.java" 492 .line 322 493 .line 322 494 0| array-length v0, v3 495 1| add-int/lit8 v0, v0, #-1 (0xffffffff | NaN) 496 3| const/4 v1, #+0 (0x00000000 | 0.00000) 497 4| invoke-interface {v2,v1,v0}, com.code_intelligence.jazzer.api.FuzzedDataProvider.consumeInt(int, int):int 498 7| move-result v0 499 8| aget-boolean v0, v3, v0 500 10| return v0 501.............................. end block 1 .............................. 502} 503 504method com.code_intelligence.jazzer.api.FuzzedDataProvider.pickValues(java.util.Collection, int):java.util.List 505{ 506............................. begin block 1 ............................. 507 .params "?", "numOfElements" 508 .src "FuzzedDataProvider.java" 509 .line 413 510 .line 413 511 .local_ex v6, "collection", java.util.Collection, "Ljava/util/Collection<TT;>;" 512 0| invoke-interface {v6}, java.util.Collection.size():int 513 3| move-result v0 514 .line 414 515 .local v0, "size", int 516 4| if-eqz v0, Label_4 517.............................. end block 1 .............................. 518............................. begin block 2 ............................. 519 .line 417 520 6| invoke-interface {v6}, java.util.Collection.size():int 521 9| move-result v1 522 10| if-gt v7, v1, Label_3 523.............................. end block 2 .............................. 524............................. begin block 3 ............................. 525 .line 421 526 12| new-instance v1, java.util.ArrayList 527 14| invoke-direct {v1,v6}, java.util.ArrayList.<init>(java.util.Collection):void 528 .line 422 529 .local_ex v1, "remainingElements", java.util.List, "Ljava/util/List<TT;>;" 530 17| new-instance v2, java.util.ArrayList 531 19| invoke-direct {v2}, java.util.ArrayList.<init>():void 532 .line 423 533 .local_ex v2, "pickedElements", java.util.List, "Ljava/util/List<TT;>;" 534 22| const/4 v3, #+0 (0x00000000 | 0.00000) 535.............................. end block 3 .............................. 536............................. begin block 4 ............................. 537Label_1: 538 .local v3, "i", int 539 23| if-ge v3, v7, Label_2 540.............................. end block 4 .............................. 541............................. begin block 5 ............................. 542 .line 424 543 25| invoke-interface {v5,v1}, com.code_intelligence.jazzer.api.FuzzedDataProvider.pickValue(java.util.Collection):java.lang.Object 544 28| move-result-object v4 545 .line 425 546 .local_ex v4, "element", java.lang.Object, "TT;" 547 29| invoke-interface {v2,v4}, java.util.List.add(java.lang.Object):boolean 548 .line 426 549 32| invoke-interface {v1,v4}, java.util.List.remove(java.lang.Object):boolean 550 .line 423 551 .end_local v4 552 35| add-int/lit8 v3, v3, #+1 (0x00000001 | 1.40130e-45) 553 37| goto Label_1 554.............................. end block 5 .............................. 555............................. begin block 6 ............................. 556Label_2: 557 .line 428 558 .end_local v3 559 38| return-object v2 560.............................. end block 6 .............................. 561............................. begin block 7 ............................. 562Label_3: 563 .line 418 564 .end_local v1 565 .end_local v2 566 39| new-instance v1, java.lang.IllegalArgumentException 567 41| const-string v2, "numOfElements exceeds collection.size()" 568 43| invoke-direct {v1,v2}, java.lang.IllegalArgumentException.<init>(java.lang.String):void 569 46| throw v1 570.............................. end block 7 .............................. 571............................. begin block 8 ............................. 572Label_4: 573 .line 415 574 47| new-instance v1, java.lang.IllegalArgumentException 575 49| const-string v2, "collection is empty" 576 51| invoke-direct {v1,v2}, java.lang.IllegalArgumentException.<init>(java.lang.String):void 577 54| throw v1 578.............................. end block 8 .............................. 579} 580 581method com.code_intelligence.jazzer.api.FuzzedDataProvider.pickValues(java.lang.Object[], int):java.util.List 582{ 583............................. begin block 1 ............................. 584 .params "?", "numOfElements" 585 .src "FuzzedDataProvider.java" 586 .line 442 587 .line 442 588 .local_ex v2, "array", java.lang.Object[], "[TT;" 589 0| invoke-static {v2}, java.util.Arrays.asList(java.lang.Object[]):java.util.List 590 3| move-result-object v0 591 4| invoke-interface {v1,v0,v3}, com.code_intelligence.jazzer.api.FuzzedDataProvider.pickValues(java.util.Collection, int):java.util.List 592 7| move-result-object v0 593 8| return-object v0 594.............................. end block 1 .............................. 595} 596 597method com.code_intelligence.jazzer.api.FuzzedDataProvider.remainingBytes():int 598{ 599} 600 601method com.code_intelligence.jazzer.api.FuzzerSecurityIssueCritical.<init>():void 602{ 603............................. begin block 1 ............................. 604 .src "FuzzerSecurityIssueCritical.java" 605 .line 26 606 .line 26 607 0| invoke-direct {v0}, java.lang.RuntimeException.<init>():void 608 3| return-void 609.............................. end block 1 .............................. 610} 611 612method com.code_intelligence.jazzer.api.FuzzerSecurityIssueCritical.<init>(java.lang.String):void 613{ 614............................. begin block 1 ............................. 615 .params "message" 616 .src "FuzzerSecurityIssueCritical.java" 617 .line 29 618 .line 29 619 0| invoke-direct {v0,v1}, java.lang.RuntimeException.<init>(java.lang.String):void 620 .line 30 621 3| return-void 622.............................. end block 1 .............................. 623} 624 625method com.code_intelligence.jazzer.api.FuzzerSecurityIssueCritical.<init>(java.lang.String, java.lang.Throwable):void 626{ 627............................. begin block 1 ............................. 628 .params "message", "cause" 629 .src "FuzzerSecurityIssueCritical.java" 630 .line 33 631 .line 33 632 0| invoke-direct {v0,v1,v2}, java.lang.RuntimeException.<init>(java.lang.String, java.lang.Throwable):void 633 .line 34 634 3| return-void 635.............................. end block 1 .............................. 636} 637 638method com.code_intelligence.jazzer.api.FuzzerSecurityIssueCritical.<init>(java.lang.Throwable):void 639{ 640............................. begin block 1 ............................. 641 .params "cause" 642 .src "FuzzerSecurityIssueCritical.java" 643 .line 37 644 .line 37 645 0| invoke-direct {v0,v1}, java.lang.RuntimeException.<init>(java.lang.Throwable):void 646 .line 38 647 3| return-void 648.............................. end block 1 .............................. 649} 650 651method com.code_intelligence.jazzer.api.FuzzerSecurityIssueHigh.<init>():void 652{ 653............................. begin block 1 ............................. 654 .src "FuzzerSecurityIssueHigh.java" 655 .line 26 656 .line 26 657 0| invoke-direct {v0}, java.lang.RuntimeException.<init>():void 658 3| return-void 659.............................. end block 1 .............................. 660} 661 662method com.code_intelligence.jazzer.api.FuzzerSecurityIssueHigh.<init>(java.lang.String):void 663{ 664............................. begin block 1 ............................. 665 .params "message" 666 .src "FuzzerSecurityIssueHigh.java" 667 .line 29 668 .line 29 669 0| invoke-direct {v0,v1}, java.lang.RuntimeException.<init>(java.lang.String):void 670 .line 30 671 3| return-void 672.............................. end block 1 .............................. 673} 674 675method com.code_intelligence.jazzer.api.FuzzerSecurityIssueHigh.<init>(java.lang.String, java.lang.Throwable):void 676{ 677............................. begin block 1 ............................. 678 .params "message", "cause" 679 .src "FuzzerSecurityIssueHigh.java" 680 .line 33 681 .line 33 682 0| invoke-direct {v0,v1,v2}, java.lang.RuntimeException.<init>(java.lang.String, java.lang.Throwable):void 683 .line 34 684 3| return-void 685.............................. end block 1 .............................. 686} 687 688method com.code_intelligence.jazzer.api.FuzzerSecurityIssueHigh.<init>(java.lang.Throwable):void 689{ 690............................. begin block 1 ............................. 691 .params "cause" 692 .src "FuzzerSecurityIssueHigh.java" 693 .line 37 694 .line 37 695 0| invoke-direct {v0,v1}, java.lang.RuntimeException.<init>(java.lang.Throwable):void 696 .line 38 697 3| return-void 698.............................. end block 1 .............................. 699} 700 701method com.code_intelligence.jazzer.api.FuzzerSecurityIssueLow.<init>():void 702{ 703............................. begin block 1 ............................. 704 .src "FuzzerSecurityIssueLow.java" 705 .line 26 706 .line 26 707 0| invoke-direct {v0}, java.lang.RuntimeException.<init>():void 708 3| return-void 709.............................. end block 1 .............................. 710} 711 712method com.code_intelligence.jazzer.api.FuzzerSecurityIssueLow.<init>(java.lang.String):void 713{ 714............................. begin block 1 ............................. 715 .params "message" 716 .src "FuzzerSecurityIssueLow.java" 717 .line 29 718 .line 29 719 0| invoke-direct {v0,v1}, java.lang.RuntimeException.<init>(java.lang.String):void 720 .line 30 721 3| return-void 722.............................. end block 1 .............................. 723} 724 725method com.code_intelligence.jazzer.api.FuzzerSecurityIssueLow.<init>(java.lang.String, java.lang.Throwable):void 726{ 727............................. begin block 1 ............................. 728 .params "message", "cause" 729 .src "FuzzerSecurityIssueLow.java" 730 .line 33 731 .line 33 732 0| invoke-direct {v0,v1,v2}, java.lang.RuntimeException.<init>(java.lang.String, java.lang.Throwable):void 733 .line 34 734 3| return-void 735.............................. end block 1 .............................. 736} 737 738method com.code_intelligence.jazzer.api.FuzzerSecurityIssueLow.<init>(java.lang.Throwable):void 739{ 740............................. begin block 1 ............................. 741 .params "cause" 742 .src "FuzzerSecurityIssueLow.java" 743 .line 37 744 .line 37 745 0| invoke-direct {v0,v1}, java.lang.RuntimeException.<init>(java.lang.Throwable):void 746 .line 38 747 3| return-void 748.............................. end block 1 .............................. 749} 750 751method com.code_intelligence.jazzer.api.FuzzerSecurityIssueMedium.<init>():void 752{ 753............................. begin block 1 ............................. 754 .src "FuzzerSecurityIssueMedium.java" 755 .line 26 756 .line 26 757 0| invoke-direct {v0}, java.lang.RuntimeException.<init>():void 758 3| return-void 759.............................. end block 1 .............................. 760} 761 762method com.code_intelligence.jazzer.api.FuzzerSecurityIssueMedium.<init>(java.lang.String):void 763{ 764............................. begin block 1 ............................. 765 .params "message" 766 .src "FuzzerSecurityIssueMedium.java" 767 .line 29 768 .line 29 769 0| invoke-direct {v0,v1}, java.lang.RuntimeException.<init>(java.lang.String):void 770 .line 30 771 3| return-void 772.............................. end block 1 .............................. 773} 774 775method com.code_intelligence.jazzer.api.FuzzerSecurityIssueMedium.<init>(java.lang.String, java.lang.Throwable):void 776{ 777............................. begin block 1 ............................. 778 .params "message", "cause" 779 .src "FuzzerSecurityIssueMedium.java" 780 .line 33 781 .line 33 782 0| invoke-direct {v0,v1,v2}, java.lang.RuntimeException.<init>(java.lang.String, java.lang.Throwable):void 783 .line 34 784 3| return-void 785.............................. end block 1 .............................. 786} 787 788method com.code_intelligence.jazzer.api.FuzzerSecurityIssueMedium.<init>(java.lang.Throwable):void 789{ 790............................. begin block 1 ............................. 791 .params "cause" 792 .src "FuzzerSecurityIssueMedium.java" 793 .line 37 794 .line 37 795 0| invoke-direct {v0,v1}, java.lang.RuntimeException.<init>(java.lang.Throwable):void 796 .line 38 797 3| return-void 798.............................. end block 1 .............................. 799} 800 801method com.code_intelligence.jazzer.api.HookType.$values():com.code_intelligence.jazzer.api.HookType[] 802{ 803............................. begin block 1 ............................. 804 .src "HookType.java" 805 .line 21 806 .line 21 807 0| sget-object v0, com.code_intelligence.jazzer.api.HookType.BEFORE 808 2| sget-object v1, com.code_intelligence.jazzer.api.HookType.REPLACE 809 4| sget-object v2, com.code_intelligence.jazzer.api.HookType.AFTER 810 6| filled-new-array {v0,v1,v2}, com.code_intelligence.jazzer.api.HookType[] 811 9| move-result-object v0 812 10| return-object v0 813.............................. end block 1 .............................. 814} 815 816method com.code_intelligence.jazzer.api.HookType.<clinit>():void 817{ 818............................. begin block 1 ............................. 819 .src "HookType.java" 820 .line 22 821 .line 22 822 0| new-instance v0, com.code_intelligence.jazzer.api.HookType 823 2| const-string v1, "BEFORE" 824 4| const/4 v2, #+0 (0x00000000 | 0.00000) 825 5| invoke-direct {v0,v1,v2}, com.code_intelligence.jazzer.api.HookType.<init>(java.lang.String, int):void 826 8| sput-object v0, com.code_intelligence.jazzer.api.HookType.BEFORE 827 .line 23 828 10| new-instance v0, com.code_intelligence.jazzer.api.HookType 829 12| const-string v1, "REPLACE" 830 14| const/4 v2, #+1 (0x00000001 | 1.40130e-45) 831 15| invoke-direct {v0,v1,v2}, com.code_intelligence.jazzer.api.HookType.<init>(java.lang.String, int):void 832 18| sput-object v0, com.code_intelligence.jazzer.api.HookType.REPLACE 833 .line 24 834 20| new-instance v0, com.code_intelligence.jazzer.api.HookType 835 22| const-string v1, "AFTER" 836 24| const/4 v2, #+2 (0x00000002 | 2.80260e-45) 837 25| invoke-direct {v0,v1,v2}, com.code_intelligence.jazzer.api.HookType.<init>(java.lang.String, int):void 838 28| sput-object v0, com.code_intelligence.jazzer.api.HookType.AFTER 839 .line 21 840 30| invoke-static {}, com.code_intelligence.jazzer.api.HookType.$values():com.code_intelligence.jazzer.api.HookType[] 841 33| move-result-object v0 842 34| sput-object v0, com.code_intelligence.jazzer.api.HookType.$VALUES 843 36| return-void 844.............................. end block 1 .............................. 845} 846 847method com.code_intelligence.jazzer.api.HookType.<init>(java.lang.String, int):void 848{ 849............................. begin block 1 ............................. 850 .params "?", "?" 851 .src "HookType.java" 852 .line 21 853 .line 21 854 0| invoke-direct {v0,v1,v2}, java.lang.Enum.<init>(java.lang.String, int):void 855 3| return-void 856.............................. end block 1 .............................. 857} 858 859method com.code_intelligence.jazzer.api.HookType.valueOf(java.lang.String):com.code_intelligence.jazzer.api.HookType 860{ 861............................. begin block 1 ............................. 862 .params "name" 863 .src "HookType.java" 864 .line 21 865 .line 21 866 0| const-class v0, com.code_intelligence.jazzer.api.HookType 867 2| invoke-static {v0,v1}, java.lang.Enum.valueOf(java.lang.Class, java.lang.String):java.lang.Enum 868 5| move-result-object v0 869 6| check-cast v0, com.code_intelligence.jazzer.api.HookType 870 8| return-object v0 871.............................. end block 1 .............................. 872} 873 874method com.code_intelligence.jazzer.api.HookType.values():com.code_intelligence.jazzer.api.HookType[] 875{ 876............................. begin block 1 ............................. 877 .src "HookType.java" 878 .line 21 879 .line 21 880 0| sget-object v0, com.code_intelligence.jazzer.api.HookType.$VALUES 881 2| invoke-virtual {v0}, com.code_intelligence.jazzer.api.HookType[].clone():java.lang.Object 882 5| move-result-object v0 883 6| check-cast v0, com.code_intelligence.jazzer.api.HookType[] 884 8| return-object v0 885.............................. end block 1 .............................. 886} 887 888method com.code_intelligence.jazzer.api.Jazzer.<clinit>():void 889{ 890............................. begin block 1 ............................. 891 .src "Jazzer.java" 892 .line 38 893 .line 38 894 0| const-class v0, byte[] 895 2| const-string v1, "autofuzz" 896 4| invoke-static {}, com.code_intelligence.jazzer.api.Jazzer.getLibFuzzerSeed():int 897 7| move-result v2 898 8| sput v2, com.code_intelligence.jazzer.api.Jazzer.SEED 899 .line 62 900 10| const/4 v2, #+0 (0x00000000 | 0.00000) 901 .line 63 902 .local_ex v2, "jazzerInternal", java.lang.Class, "Ljava/lang/Class<*>;" 903 11| const/4 v3, #+0 (0x00000000 | 0.00000) 904 .line 64 905 .local v3, "onFuzzTargetReady", java.lang.invoke.MethodHandle 906 12| const/4 v4, #+0 (0x00000000 | 0.00000) 907 .line 65 908 .local v4, "traceStrcmp", java.lang.invoke.MethodHandle 909 13| const/4 v5, #+0 (0x00000000 | 0.00000) 910 .line 66 911 .local v5, "traceStrstr", java.lang.invoke.MethodHandle 912 14| const/4 v6, #+0 (0x00000000 | 0.00000) 913 .line 67 914 .local v6, "traceMemcmp", java.lang.invoke.MethodHandle 915 15| const/4 v7, #+0 (0x00000000 | 0.00000) 916 .line 68 917 .local v7, "tracePcIndir", java.lang.invoke.MethodHandle 918 16| const/4 v8, #+0 (0x00000000 | 0.00000) 919 .line 69 920 .local v8, "consume", java.lang.invoke.MethodHandle 921 17| const/4 v9, #+0 (0x00000000 | 0.00000) 922 .line 70 923 .local v9, "autofuzzFunction1", java.lang.invoke.MethodHandle 924 18| const/4 v10, #+0 (0x00000000 | 0.00000) 925 .line 71 926 .local v10, "autofuzzFunction2", java.lang.invoke.MethodHandle 927 19| const/4 v11, #+0 (0x00000000 | 0.00000) 928 .line 72 929 .local v11, "autofuzzFunction3", java.lang.invoke.MethodHandle 930 20| const/4 v12, #+0 (0x00000000 | 0.00000) 931 .line 73 932 .local v12, "autofuzzFunction4", java.lang.invoke.MethodHandle 933 21| const/4 v13, #+0 (0x00000000 | 0.00000) 934 .line 74 935 .local v13, "autofuzzFunction5", java.lang.invoke.MethodHandle 936 22| const/4 v14, #+0 (0x00000000 | 0.00000) 937 .line 75 938 .local v14, "autofuzzConsumer1", java.lang.invoke.MethodHandle 939 23| const/4 v15, #+0 (0x00000000 | 0.00000) 940 .line 76 941 .local v15, "autofuzzConsumer2", java.lang.invoke.MethodHandle 942 24| const/16 v16, #+0 (0x00000000 | 0.00000) 943 .line 77 944 .local v16, "autofuzzConsumer3", java.lang.invoke.MethodHandle 945 26| const/16 v17, #+0 (0x00000000 | 0.00000) 946 .line 78 947 .local v17, "autofuzzConsumer4", java.lang.invoke.MethodHandle 948 28| const/16 v18, #+0 (0x00000000 | 0.00000) 949 .line 80 950 .local v18, "autofuzzConsumer5", java.lang.invoke.MethodHandle 951 30| move-object/from16 v19, v2 952.............................. end block 1 .............................. 953 .try_begin_1 954............................. begin block 2 ............................. 955 .end_local v2 956 .local_ex v19, "jazzerInternal", java.lang.Class, "Ljava/lang/Class<*>;" 957 32| const-string v20, "com.code_intelligence.jazzer.runtime.JazzerInternal" 958 34| invoke-static/range {v20..v20}, java.lang.Class.forName(java.lang.String):java.lang.Class 959 37| move-result-object v20 960.............................. end block 2 .............................. 961 .try_end_1 962 catch(java.lang.ClassNotFoundException) : Label_25 963 catch(java.lang.NoSuchMethodException) : Label_23 964 catch(java.lang.IllegalAccessException) : Label_23 965............................. begin block 3 ............................. 966 38| move-object/from16 v19, v20 967.............................. end block 3 .............................. 968 .try_begin_2 969............................. begin block 4 ............................. 970 .line 81 971 40| sget-object v2, java.lang.Void.TYPE 972.............................. end block 4 .............................. 973 .try_end_2 974 catch(java.lang.ClassNotFoundException) : Label_22 975 catch(java.lang.NoSuchMethodException) : Label_21 976 catch(java.lang.IllegalAccessException) : Label_21 977............................. begin block 5 ............................. 978 42| move-object/from16 v21, v3 979.............................. end block 5 .............................. 980 .try_begin_3 981............................. begin block 6 ............................. 982 .end_local v3 983 .local v21, "onFuzzTargetReady", java.lang.invoke.MethodHandle 984 44| const-class v3, java.lang.Runnable 985 46| invoke-static {v2,v3}, java.lang.invoke.MethodType.methodType(java.lang.Class, java.lang.Class):java.lang.invoke.MethodType 986 49| move-result-object v2 987 .line 82 988 .local v2, "onFuzzTargetReadyType", java.lang.invoke.MethodType 989 50| invoke-static {}, java.lang.invoke.MethodHandles.publicLookup():java.lang.invoke.MethodHandles$Lookup 990 53| move-result-object v3 991.............................. end block 6 .............................. 992 .try_end_3 993 catch(java.lang.ClassNotFoundException) : Label_20 994 catch(java.lang.NoSuchMethodException) : Label_19 995 catch(java.lang.IllegalAccessException) : Label_19 996............................. begin block 7 ............................. 997 54| move-object/from16 v22, v4 998.............................. end block 7 .............................. 999 .try_begin_4 1000............................. begin block 8 ............................. 1001 .end_local v4 1002 .local v22, "traceStrcmp", java.lang.invoke.MethodHandle 1003 56| const-string v4, "registerOnFuzzTargetReadyCallback" 1004.............................. end block 8 .............................. 1005 .try_end_4 1006 catch(java.lang.ClassNotFoundException) : Label_18 1007 catch(java.lang.NoSuchMethodException) : Label_17 1008 catch(java.lang.IllegalAccessException) : Label_17 1009............................. begin block 9 ............................. 1010 58| move-object/from16 v23, v5 1011 60| move-object/from16 v5, v19 1012.............................. end block 9 .............................. 1013 .try_begin_5 1014............................. begin block 10 ............................. 1015 .end_local v19 1016 .local_ex v5, "jazzerInternal", java.lang.Class, "Ljava/lang/Class<*>;" 1017 .local v23, "traceStrstr", java.lang.invoke.MethodHandle 1018 62| invoke-virtual {v3,v5,v4,v2}, java.lang.invoke.MethodHandles$Lookup.findStatic(java.lang.Class, java.lang.String, java.lang.invoke.MethodType):java.lang.invoke.MethodHandle 1019 65| move-result-object v3 1020.............................. end block 10 .............................. 1021 .try_end_5 1022 catch(java.lang.ClassNotFoundException) : Label_16 1023 catch(java.lang.NoSuchMethodException) : Label_15 1024 catch(java.lang.IllegalAccessException) : Label_15 1025 .try_begin_6 1026............................. begin block 11 ............................. 1027 .line 84 1028 .end_local v21 1029 .restart_local v3 1030 66| const-string v4, "com.code_intelligence.jazzer.runtime.TraceDataFlowNativeCallbacks" 1031 .line 85 1032 68| invoke-static {v4}, java.lang.Class.forName(java.lang.String):java.lang.Class 1033 71| move-result-object v4 1034 .line 88 1035 .local_ex v4, "traceDataFlowNativeCallbacks", java.lang.Class, "Ljava/lang/Class<*>;" 1036 72| move-object/from16 v19, v2 1037 .end_local v2 1038 .local v19, "onFuzzTargetReadyType", java.lang.invoke.MethodType 1039 74| sget-object v2, java.lang.Void.TYPE 1040.............................. end block 11 .............................. 1041 .try_end_6 1042 catch(java.lang.ClassNotFoundException) : Label_14 1043 catch(java.lang.NoSuchMethodException) : Label_13 1044 catch(java.lang.IllegalAccessException) : Label_13 1045............................. begin block 12 ............................. 1046 76| move-object/from16 v21, v3 1047.............................. end block 12 .............................. 1048 .try_begin_7 1049............................. begin block 13 ............................. 1050 .end_local v3 1051 .restart_local v21 1052 78| const-class v3, java.lang.String 1053.............................. end block 13 .............................. 1054 .try_end_7 1055 catch(java.lang.ClassNotFoundException) : Label_16 1056 catch(java.lang.NoSuchMethodException) : Label_15 1057 catch(java.lang.IllegalAccessException) : Label_15 1058............................. begin block 14 ............................. 1059 80| move-object/from16 v24, v5 1060 .end_local v5 1061 .local_ex v24, "jazzerInternal", java.lang.Class, "Ljava/lang/Class<*>;" 1062 82| const/4 v5, #+3 (0x00000003 | 4.20390e-45) 1063 83| move-object/from16 v25, v6 1064.............................. end block 14 .............................. 1065 .try_begin_8 1066............................. begin block 15 ............................. 1067 .end_local v6 1068 .local v25, "traceMemcmp", java.lang.invoke.MethodHandle 1069 85| new-array v6, v5, java.lang.Class[] 1070 87| const-class v26, java.lang.String 1071 89| const/16 v27, #+0 (0x00000000 | 0.00000) 1072 91| aput-object v26, v6, v27 1073 93| sget-object v26, java.lang.Integer.TYPE 1074 95| const/16 v20, #+1 (0x00000001 | 1.40130e-45) 1075 97| aput-object v26, v6, v20 1076 99| sget-object v26, java.lang.Integer.TYPE 1077 101| const/4 v5, #+2 (0x00000002 | 2.80260e-45) 1078 102| aput-object v26, v6, v5 1079 .line 89 1080 104| invoke-static {v2,v3,v6}, java.lang.invoke.MethodType.methodType(java.lang.Class, java.lang.Class, java.lang.Class[]):java.lang.invoke.MethodType 1081 107| move-result-object v2 1082 .line 90 1083 .local v2, "traceStrcmpType", java.lang.invoke.MethodType 1084 108| invoke-static {}, java.lang.invoke.MethodHandles.publicLookup():java.lang.invoke.MethodHandles$Lookup 1085 111| move-result-object v3 1086 112| const-string v6, "traceStrcmp" 1087 114| invoke-virtual {v3,v4,v6,v2}, java.lang.invoke.MethodHandles$Lookup.findStatic(java.lang.Class, java.lang.String, java.lang.invoke.MethodType):java.lang.invoke.MethodHandle 1088 117| move-result-object v3 1089.............................. end block 15 .............................. 1090 .try_end_8 1091 catch(java.lang.ClassNotFoundException) : Label_12 1092 catch(java.lang.NoSuchMethodException) : Label_11 1093 catch(java.lang.IllegalAccessException) : Label_11 1094 .try_begin_9 1095............................. begin block 16 ............................. 1096 .line 92 1097 .end_local v22 1098 .local v3, "traceStrcmp", java.lang.invoke.MethodHandle 1099 118| sget-object v6, java.lang.Void.TYPE 1100 120| const-class v5, java.lang.String 1101.............................. end block 16 .............................. 1102 .try_end_9 1103 catch(java.lang.ClassNotFoundException) : Label_10 1104 catch(java.lang.NoSuchMethodException) : Label_9 1105 catch(java.lang.IllegalAccessException) : Label_9 1106............................. begin block 17 ............................. 1107 122| move-object/from16 v29, v2 1108 124| move-object/from16 v22, v3 1109 126| const/4 v2, #+2 (0x00000002 | 2.80260e-45) 1110.............................. end block 17 .............................. 1111 .try_begin_10 1112............................. begin block 18 ............................. 1113 .end_local v2 1114 .end_local v3 1115 .restart_local v22 1116 .local v29, "traceStrcmpType", java.lang.invoke.MethodType 1117 127| new-array v3, v2, java.lang.Class[] 1118 129| const-class v2, java.lang.String 1119 131| aput-object v2, v3, v27 1120 133| sget-object v2, java.lang.Integer.TYPE 1121 135| const/16 v20, #+1 (0x00000001 | 1.40130e-45) 1122 137| aput-object v2, v3, v20 1123 .line 93 1124 139| invoke-static {v6,v5,v3}, java.lang.invoke.MethodType.methodType(java.lang.Class, java.lang.Class, java.lang.Class[]):java.lang.invoke.MethodType 1125 142| move-result-object v2 1126 .line 94 1127 .local v2, "traceStrstrType", java.lang.invoke.MethodType 1128 143| invoke-static {}, java.lang.invoke.MethodHandles.publicLookup():java.lang.invoke.MethodHandles$Lookup 1129 146| move-result-object v3 1130 147| const-string v5, "traceStrstr" 1131 149| invoke-virtual {v3,v4,v5,v2}, java.lang.invoke.MethodHandles$Lookup.findStatic(java.lang.Class, java.lang.String, java.lang.invoke.MethodType):java.lang.invoke.MethodHandle 1132 152| move-result-object v3 1133.............................. end block 18 .............................. 1134 .try_end_10 1135 catch(java.lang.ClassNotFoundException) : Label_12 1136 catch(java.lang.NoSuchMethodException) : Label_11 1137 catch(java.lang.IllegalAccessException) : Label_11 1138............................. begin block 19 ............................. 1139 153| move-object v5, v3 1140.............................. end block 19 .............................. 1141 .try_begin_11 1142............................. begin block 20 ............................. 1143 .line 96 1144 .end_local v23 1145 .local v5, "traceStrstr", java.lang.invoke.MethodHandle 1146 154| sget-object v3, java.lang.Void.TYPE 1147 156| const/4 v6, #+3 (0x00000003 | 4.20390e-45) 1148 157| new-array v6, v6, java.lang.Class[] 1149 159| aput-object v0, v6, v27 1150 161| sget-object v23, java.lang.Integer.TYPE 1151 163| const/16 v20, #+1 (0x00000001 | 1.40130e-45) 1152 165| aput-object v23, v6, v20 1153 167| sget-object v23, java.lang.Integer.TYPE 1154 169| const/16 v26, #+2 (0x00000002 | 2.80260e-45) 1155 171| aput-object v23, v6, v26 1156 .line 97 1157 173| invoke-static {v3,v0,v6}, java.lang.invoke.MethodType.methodType(java.lang.Class, java.lang.Class, java.lang.Class[]):java.lang.invoke.MethodType 1158 176| move-result-object v0 1159 .line 98 1160 .local v0, "traceMemcmpType", java.lang.invoke.MethodType 1161 177| invoke-static {}, java.lang.invoke.MethodHandles.publicLookup():java.lang.invoke.MethodHandles$Lookup 1162 180| move-result-object v3 1163 181| const-string v6, "traceMemcmp" 1164 183| invoke-virtual {v3,v4,v6,v0}, java.lang.invoke.MethodHandles$Lookup.findStatic(java.lang.Class, java.lang.String, java.lang.invoke.MethodType):java.lang.invoke.MethodHandle 1165 186| move-result-object v3 1166.............................. end block 20 .............................. 1167 .try_end_11 1168 catch(java.lang.ClassNotFoundException) : Label_8 1169 catch(java.lang.NoSuchMethodException) : Label_7 1170 catch(java.lang.IllegalAccessException) : Label_7 1171............................. begin block 21 ............................. 1172 187| move-object v6, v3 1173.............................. end block 21 .............................. 1174 .try_begin_12 1175............................. begin block 22 ............................. 1176 .line 100 1177 .end_local v25 1178 .restart_local v6 1179 188| sget-object v3, java.lang.Void.TYPE 1180 190| move-object/from16 v23, v0 1181 .end_local v0 1182 .local v23, "traceMemcmpType", java.lang.invoke.MethodType 1183 192| sget-object v0, java.lang.Integer.TYPE 1184.............................. end block 22 .............................. 1185 .try_end_12 1186 catch(java.lang.ClassNotFoundException) : Label_6 1187 catch(java.lang.NoSuchMethodException) : Label_5 1188 catch(java.lang.IllegalAccessException) : Label_5 1189............................. begin block 23 ............................. 1190 194| move-object/from16 v26, v2 1191 196| move-object/from16 v28, v5 1192 198| const/4 v2, #+1 (0x00000001 | 1.40130e-45) 1193.............................. end block 23 .............................. 1194 .try_begin_13 1195............................. begin block 24 ............................. 1196 .end_local v2 1197 .end_local v5 1198 .local v26, "traceStrstrType", java.lang.invoke.MethodType 1199 .local v28, "traceStrstr", java.lang.invoke.MethodHandle 1200 199| new-array v5, v2, java.lang.Class[] 1201 201| sget-object v2, java.lang.Integer.TYPE 1202 203| aput-object v2, v5, v27 1203 205| invoke-static {v3,v0,v5}, java.lang.invoke.MethodType.methodType(java.lang.Class, java.lang.Class, java.lang.Class[]):java.lang.invoke.MethodType 1204 208| move-result-object v0 1205 .line 101 1206 .local v0, "tracePcIndirType", java.lang.invoke.MethodType 1207 209| invoke-static {}, java.lang.invoke.MethodHandles.publicLookup():java.lang.invoke.MethodHandles$Lookup 1208 212| move-result-object v2 1209 213| const-string v3, "tracePcIndir" 1210 215| invoke-virtual {v2,v4,v3,v0}, java.lang.invoke.MethodHandles$Lookup.findStatic(java.lang.Class, java.lang.String, java.lang.invoke.MethodType):java.lang.invoke.MethodHandle 1211 218| move-result-object v2 1212 219| move-object v7, v2 1213 .line 104 1214 220| const-string v2, "com.code_intelligence.jazzer.autofuzz.Meta" 1215 222| invoke-static {v2}, java.lang.Class.forName(java.lang.String):java.lang.Class 1216 225| move-result-object v2 1217 .line 105 1218 .local_ex v2, "metaClass", java.lang.Class, "Ljava/lang/Class<*>;" 1219 226| const-class v3, java.lang.Object 1220 228| const-class v5, com.code_intelligence.jazzer.api.FuzzedDataProvider 1221 230| move-object/from16 v25, v0 1222 232| move-object/from16 v30, v4 1223 234| const/4 v4, #+1 (0x00000001 | 1.40130e-45) 1224 .end_local v0 1225 .end_local v4 1226 .local v25, "tracePcIndirType", java.lang.invoke.MethodType 1227 .local_ex v30, "traceDataFlowNativeCallbacks", java.lang.Class, "Ljava/lang/Class<*>;" 1228 235| new-array v0, v4, java.lang.Class[] 1229 237| const-class v4, java.lang.Class 1230 239| aput-object v4, v0, v27 1231 .line 106 1232 241| invoke-static {v3,v5,v0}, java.lang.invoke.MethodType.methodType(java.lang.Class, java.lang.Class, java.lang.Class[]):java.lang.invoke.MethodType 1233 244| move-result-object v0 1234 .line 107 1235 .local v0, "consumeType", java.lang.invoke.MethodType 1236 245| invoke-static {}, java.lang.invoke.MethodHandles.publicLookup():java.lang.invoke.MethodHandles$Lookup 1237 248| move-result-object v3 1238 249| const-string v4, "consume" 1239 251| invoke-virtual {v3,v2,v4,v0}, java.lang.invoke.MethodHandles$Lookup.findStatic(java.lang.Class, java.lang.String, java.lang.invoke.MethodType):java.lang.invoke.MethodHandle 1240 254| move-result-object v3 1241 255| move-object v8, v3 1242 .line 109 1243 256| invoke-static {}, java.lang.invoke.MethodHandles.publicLookup():java.lang.invoke.MethodHandles$Lookup 1244 259| move-result-object v3 1245 260| const-class v4, java.lang.Object 1246 262| const-class v5, com.code_intelligence.jazzer.api.FuzzedDataProvider 1247.............................. end block 24 .............................. 1248 .try_end_13 1249 catch(java.lang.ClassNotFoundException) : Label_4 1250 catch(java.lang.NoSuchMethodException) : Label_3 1251 catch(java.lang.IllegalAccessException) : Label_3 1252............................. begin block 25 ............................. 1253 264| move-object/from16 v32, v0 1254 266| move-object/from16 v31, v6 1255 268| const/4 v6, #+1 (0x00000001 | 1.40130e-45) 1256.............................. end block 25 .............................. 1257 .try_begin_14 1258............................. begin block 26 ............................. 1259 .end_local v0 1260 .end_local v6 1261 .local v31, "traceMemcmp", java.lang.invoke.MethodHandle 1262 .local v32, "consumeType", java.lang.invoke.MethodType 1263 269| new-array v0, v6, java.lang.Class[] 1264 271| const-class v6, com.code_intelligence.jazzer.api.Function1 1265 273| aput-object v6, v0, v27 1266 .line 110 1267 275| invoke-static {v4,v5,v0}, java.lang.invoke.MethodType.methodType(java.lang.Class, java.lang.Class, java.lang.Class[]):java.lang.invoke.MethodType 1268 278| move-result-object v0 1269 .line 109 1270 279| invoke-virtual {v3,v2,v1,v0}, java.lang.invoke.MethodHandles$Lookup.findStatic(java.lang.Class, java.lang.String, java.lang.invoke.MethodType):java.lang.invoke.MethodHandle 1271 282| move-result-object v0 1272 283| move-object v9, v0 1273 .line 111 1274 284| invoke-static {}, java.lang.invoke.MethodHandles.publicLookup():java.lang.invoke.MethodHandles$Lookup 1275 287| move-result-object v0 1276 288| const-class v3, java.lang.Object 1277 290| const-class v4, com.code_intelligence.jazzer.api.FuzzedDataProvider 1278 292| const/4 v5, #+1 (0x00000001 | 1.40130e-45) 1279 293| new-array v6, v5, java.lang.Class[] 1280 295| const-class v5, com.code_intelligence.jazzer.api.Function2 1281 297| aput-object v5, v6, v27 1282 .line 112 1283 299| invoke-static {v3,v4,v6}, java.lang.invoke.MethodType.methodType(java.lang.Class, java.lang.Class, java.lang.Class[]):java.lang.invoke.MethodType 1284 302| move-result-object v3 1285 .line 111 1286 303| invoke-virtual {v0,v2,v1,v3}, java.lang.invoke.MethodHandles$Lookup.findStatic(java.lang.Class, java.lang.String, java.lang.invoke.MethodType):java.lang.invoke.MethodHandle 1287 306| move-result-object v0 1288 307| move-object v10, v0 1289 .line 113 1290 308| invoke-static {}, java.lang.invoke.MethodHandles.publicLookup():java.lang.invoke.MethodHandles$Lookup 1291 311| move-result-object v0 1292 312| const-class v3, java.lang.Object 1293 314| const-class v4, com.code_intelligence.jazzer.api.FuzzedDataProvider 1294 316| const/4 v5, #+1 (0x00000001 | 1.40130e-45) 1295 317| new-array v6, v5, java.lang.Class[] 1296 319| const-class v5, com.code_intelligence.jazzer.api.Function3 1297 321| aput-object v5, v6, v27 1298 .line 114 1299 323| invoke-static {v3,v4,v6}, java.lang.invoke.MethodType.methodType(java.lang.Class, java.lang.Class, java.lang.Class[]):java.lang.invoke.MethodType 1300 326| move-result-object v3 1301 .line 113 1302 327| invoke-virtual {v0,v2,v1,v3}, java.lang.invoke.MethodHandles$Lookup.findStatic(java.lang.Class, java.lang.String, java.lang.invoke.MethodType):java.lang.invoke.MethodHandle 1303 330| move-result-object v0 1304 331| move-object v11, v0 1305 .line 115 1306 332| invoke-static {}, java.lang.invoke.MethodHandles.publicLookup():java.lang.invoke.MethodHandles$Lookup 1307 335| move-result-object v0 1308 336| const-class v3, java.lang.Object 1309 338| const-class v4, com.code_intelligence.jazzer.api.FuzzedDataProvider 1310 340| const/4 v5, #+1 (0x00000001 | 1.40130e-45) 1311 341| new-array v6, v5, java.lang.Class[] 1312 343| const-class v5, com.code_intelligence.jazzer.api.Function4 1313 345| aput-object v5, v6, v27 1314 .line 116 1315 347| invoke-static {v3,v4,v6}, java.lang.invoke.MethodType.methodType(java.lang.Class, java.lang.Class, java.lang.Class[]):java.lang.invoke.MethodType 1316 350| move-result-object v3 1317 .line 115 1318 351| invoke-virtual {v0,v2,v1,v3}, java.lang.invoke.MethodHandles$Lookup.findStatic(java.lang.Class, java.lang.String, java.lang.invoke.MethodType):java.lang.invoke.MethodHandle 1319 354| move-result-object v0 1320 355| move-object v12, v0 1321 .line 117 1322 356| invoke-static {}, java.lang.invoke.MethodHandles.publicLookup():java.lang.invoke.MethodHandles$Lookup 1323 359| move-result-object v0 1324 360| const-class v3, java.lang.Object 1325 362| const-class v4, com.code_intelligence.jazzer.api.FuzzedDataProvider 1326 364| const/4 v5, #+1 (0x00000001 | 1.40130e-45) 1327 365| new-array v6, v5, java.lang.Class[] 1328 367| const-class v5, com.code_intelligence.jazzer.api.Function5 1329 369| aput-object v5, v6, v27 1330 .line 118 1331 371| invoke-static {v3,v4,v6}, java.lang.invoke.MethodType.methodType(java.lang.Class, java.lang.Class, java.lang.Class[]):java.lang.invoke.MethodType 1332 374| move-result-object v3 1333 .line 117 1334 375| invoke-virtual {v0,v2,v1,v3}, java.lang.invoke.MethodHandles$Lookup.findStatic(java.lang.Class, java.lang.String, java.lang.invoke.MethodType):java.lang.invoke.MethodHandle 1335 378| move-result-object v0 1336 379| move-object v13, v0 1337 .line 119 1338 380| invoke-static {}, java.lang.invoke.MethodHandles.publicLookup():java.lang.invoke.MethodHandles$Lookup 1339 383| move-result-object v0 1340 384| sget-object v3, java.lang.Void.TYPE 1341 386| const-class v4, com.code_intelligence.jazzer.api.FuzzedDataProvider 1342 388| const/4 v5, #+1 (0x00000001 | 1.40130e-45) 1343 389| new-array v6, v5, java.lang.Class[] 1344 391| const-class v5, com.code_intelligence.jazzer.api.Consumer1 1345 393| aput-object v5, v6, v27 1346 .line 120 1347 395| invoke-static {v3,v4,v6}, java.lang.invoke.MethodType.methodType(java.lang.Class, java.lang.Class, java.lang.Class[]):java.lang.invoke.MethodType 1348 398| move-result-object v3 1349 .line 119 1350 399| invoke-virtual {v0,v2,v1,v3}, java.lang.invoke.MethodHandles$Lookup.findStatic(java.lang.Class, java.lang.String, java.lang.invoke.MethodType):java.lang.invoke.MethodHandle 1351 402| move-result-object v0 1352 403| move-object v14, v0 1353 .line 121 1354 404| invoke-static {}, java.lang.invoke.MethodHandles.publicLookup():java.lang.invoke.MethodHandles$Lookup 1355 407| move-result-object v0 1356 408| sget-object v3, java.lang.Void.TYPE 1357 410| const-class v4, com.code_intelligence.jazzer.api.FuzzedDataProvider 1358 412| const/4 v5, #+1 (0x00000001 | 1.40130e-45) 1359 413| new-array v6, v5, java.lang.Class[] 1360 415| const-class v5, com.code_intelligence.jazzer.api.Consumer2 1361 417| aput-object v5, v6, v27 1362 .line 122 1363 419| invoke-static {v3,v4,v6}, java.lang.invoke.MethodType.methodType(java.lang.Class, java.lang.Class, java.lang.Class[]):java.lang.invoke.MethodType 1364 422| move-result-object v3 1365 .line 121 1366 423| invoke-virtual {v0,v2,v1,v3}, java.lang.invoke.MethodHandles$Lookup.findStatic(java.lang.Class, java.lang.String, java.lang.invoke.MethodType):java.lang.invoke.MethodHandle 1367 426| move-result-object v0 1368 427| move-object v15, v0 1369 .line 123 1370 428| invoke-static {}, java.lang.invoke.MethodHandles.publicLookup():java.lang.invoke.MethodHandles$Lookup 1371 431| move-result-object v0 1372 432| sget-object v3, java.lang.Void.TYPE 1373 434| const-class v4, com.code_intelligence.jazzer.api.FuzzedDataProvider 1374 436| const/4 v5, #+1 (0x00000001 | 1.40130e-45) 1375 437| new-array v6, v5, java.lang.Class[] 1376 439| const-class v5, com.code_intelligence.jazzer.api.Consumer3 1377 441| aput-object v5, v6, v27 1378 .line 124 1379 443| invoke-static {v3,v4,v6}, java.lang.invoke.MethodType.methodType(java.lang.Class, java.lang.Class, java.lang.Class[]):java.lang.invoke.MethodType 1380 446| move-result-object v3 1381 .line 123 1382 447| invoke-virtual {v0,v2,v1,v3}, java.lang.invoke.MethodHandles$Lookup.findStatic(java.lang.Class, java.lang.String, java.lang.invoke.MethodType):java.lang.invoke.MethodHandle 1383 450| move-result-object v0 1384 451| move-object/from16 v16, v0 1385 .line 125 1386 453| invoke-static {}, java.lang.invoke.MethodHandles.publicLookup():java.lang.invoke.MethodHandles$Lookup 1387 456| move-result-object v0 1388 457| sget-object v3, java.lang.Void.TYPE 1389 459| const-class v4, com.code_intelligence.jazzer.api.FuzzedDataProvider 1390 461| const/4 v5, #+1 (0x00000001 | 1.40130e-45) 1391 462| new-array v6, v5, java.lang.Class[] 1392 464| const-class v5, com.code_intelligence.jazzer.api.Consumer4 1393 466| aput-object v5, v6, v27 1394 .line 126 1395 468| invoke-static {v3,v4,v6}, java.lang.invoke.MethodType.methodType(java.lang.Class, java.lang.Class, java.lang.Class[]):java.lang.invoke.MethodType 1396 471| move-result-object v3 1397 .line 125 1398 472| invoke-virtual {v0,v2,v1,v3}, java.lang.invoke.MethodHandles$Lookup.findStatic(java.lang.Class, java.lang.String, java.lang.invoke.MethodType):java.lang.invoke.MethodHandle 1399 475| move-result-object v0 1400 476| move-object/from16 v17, v0 1401 .line 127 1402 478| invoke-static {}, java.lang.invoke.MethodHandles.publicLookup():java.lang.invoke.MethodHandles$Lookup 1403 481| move-result-object v0 1404 482| sget-object v3, java.lang.Void.TYPE 1405 484| const-class v4, com.code_intelligence.jazzer.api.FuzzedDataProvider 1406 486| const/4 v5, #+1 (0x00000001 | 1.40130e-45) 1407 487| new-array v6, v5, java.lang.Class[] 1408 489| const-class v5, com.code_intelligence.jazzer.api.Consumer5 1409 491| aput-object v5, v6, v27 1410 .line 128 1411 493| invoke-static {v3,v4,v6}, java.lang.invoke.MethodType.methodType(java.lang.Class, java.lang.Class, java.lang.Class[]):java.lang.invoke.MethodType 1412 496| move-result-object v3 1413 .line 127 1414 497| invoke-virtual {v0,v2,v1,v3}, java.lang.invoke.MethodHandles$Lookup.findStatic(java.lang.Class, java.lang.String, java.lang.invoke.MethodType):java.lang.invoke.MethodHandle 1415 500| move-result-object v0 1416.............................. end block 26 .............................. 1417 .try_end_14 1418 catch(java.lang.ClassNotFoundException) : Label_2 1419 catch(java.lang.NoSuchMethodException) : Label_1 1420 catch(java.lang.IllegalAccessException) : Label_1 1421............................. begin block 27 ............................. 1422 501| move-object/from16 v18, v0 1423 .line 138 1424 .end_local v2 1425 .end_local v19 1426 .end_local v23 1427 .end_local v25 1428 .end_local v26 1429 .end_local v29 1430 .end_local v30 1431 .end_local v32 1432 503| move-object/from16 v3, v21 1433 505| move-object/from16 v4, v22 1434 507| move-object/from16 v19, v24 1435 509| move-object/from16 v5, v28 1436 511| move-object/from16 v6, v31 1437 513| goto/16 Label_27 1438.............................. end block 27 .............................. 1439............................. begin block 28 ............................. 1440Label_1: 1441 .line 132 1442 515| move-exception v0 1443 516| move-object/from16 v3, v21 1444 518| move-object/from16 v4, v22 1445 520| move-object/from16 v2, v24 1446 522| move-object/from16 v5, v28 1447 524| move-object/from16 v6, v31 1448 526| goto/16 Label_24 1449.............................. end block 28 .............................. 1450............................. begin block 29 ............................. 1451Label_2: 1452 .line 129 1453 528| move-exception v0 1454 529| move-object/from16 v3, v21 1455 531| move-object/from16 v4, v22 1456 533| move-object/from16 v2, v24 1457 535| move-object/from16 v5, v28 1458 537| move-object/from16 v6, v31 1459 539| goto/16 Label_26 1460.............................. end block 29 .............................. 1461............................. begin block 30 ............................. 1462Label_3: 1463 .line 132 1464 .end_local v31 1465 .restart_local v6 1466 541| move-exception v0 1467 542| move-object/from16 v31, v6 1468 544| move-object/from16 v3, v21 1469 546| move-object/from16 v4, v22 1470 548| move-object/from16 v2, v24 1471 550| move-object/from16 v5, v28 1472 .end_local v6 1473 .restart_local v31 1474 552| goto/16 Label_24 1475.............................. end block 30 .............................. 1476............................. begin block 31 ............................. 1477Label_4: 1478 .line 129 1479 .end_local v31 1480 .restart_local v6 1481 554| move-exception v0 1482 555| move-object/from16 v31, v6 1483 557| move-object/from16 v3, v21 1484 559| move-object/from16 v4, v22 1485 561| move-object/from16 v2, v24 1486 563| move-object/from16 v5, v28 1487 .end_local v6 1488 .restart_local v31 1489 565| goto/16 Label_26 1490.............................. end block 31 .............................. 1491............................. begin block 32 ............................. 1492Label_5: 1493 .line 132 1494 .end_local v28 1495 .end_local v31 1496 .restart_local v5 1497 .restart_local v6 1498 567| move-exception v0 1499 568| move-object/from16 v28, v5 1500 570| move-object/from16 v31, v6 1501 572| move-object/from16 v3, v21 1502 574| move-object/from16 v4, v22 1503 576| move-object/from16 v2, v24 1504 .end_local v5 1505 .end_local v6 1506 .restart_local v28 1507 .restart_local v31 1508 578| goto/16 Label_24 1509.............................. end block 32 .............................. 1510............................. begin block 33 ............................. 1511Label_6: 1512 .line 129 1513 .end_local v28 1514 .end_local v31 1515 .restart_local v5 1516 .restart_local v6 1517 580| move-exception v0 1518 581| move-object/from16 v28, v5 1519 583| move-object/from16 v31, v6 1520 585| move-object/from16 v3, v21 1521 587| move-object/from16 v4, v22 1522 589| move-object/from16 v2, v24 1523 .end_local v5 1524 .end_local v6 1525 .restart_local v28 1526 .restart_local v31 1527 591| goto/16 Label_26 1528.............................. end block 33 .............................. 1529............................. begin block 34 ............................. 1530Label_7: 1531 .line 132 1532 .end_local v28 1533 .end_local v31 1534 .restart_local v5 1535 .local v25, "traceMemcmp", java.lang.invoke.MethodHandle 1536 593| move-exception v0 1537 594| move-object/from16 v28, v5 1538 596| move-object/from16 v3, v21 1539 598| move-object/from16 v4, v22 1540 600| move-object/from16 v2, v24 1541 602| move-object/from16 v6, v25 1542 .end_local v5 1543 .restart_local v28 1544 604| goto/16 Label_24 1545.............................. end block 34 .............................. 1546............................. begin block 35 ............................. 1547Label_8: 1548 .line 129 1549 .end_local v28 1550 .restart_local v5 1551 606| move-exception v0 1552 607| move-object/from16 v28, v5 1553 609| move-object/from16 v3, v21 1554 611| move-object/from16 v4, v22 1555 613| move-object/from16 v2, v24 1556 615| move-object/from16 v6, v25 1557 .end_local v5 1558 .restart_local v28 1559 617| goto/16 Label_26 1560.............................. end block 35 .............................. 1561............................. begin block 36 ............................. 1562Label_9: 1563 .line 132 1564 .end_local v22 1565 .end_local v28 1566 .restart_local v3 1567 .local v23, "traceStrstr", java.lang.invoke.MethodHandle 1568 619| move-exception v0 1569 620| move-object/from16 v22, v3 1570 622| move-object/from16 v3, v21 1571 624| move-object/from16 v4, v22 1572 626| move-object/from16 v5, v23 1573 628| move-object/from16 v2, v24 1574 630| move-object/from16 v6, v25 1575 .end_local v3 1576 .restart_local v22 1577 632| goto/16 Label_24 1578.............................. end block 36 .............................. 1579............................. begin block 37 ............................. 1580Label_10: 1581 .line 129 1582 .end_local v22 1583 .restart_local v3 1584 634| move-exception v0 1585 635| move-object/from16 v22, v3 1586 637| move-object/from16 v3, v21 1587 639| move-object/from16 v4, v22 1588 641| move-object/from16 v5, v23 1589 643| move-object/from16 v2, v24 1590 645| move-object/from16 v6, v25 1591 .end_local v3 1592 .restart_local v22 1593 647| goto/16 Label_26 1594.............................. end block 37 .............................. 1595............................. begin block 38 ............................. 1596Label_11: 1597 .line 132 1598 649| move-exception v0 1599 650| move-object/from16 v3, v21 1600 652| move-object/from16 v4, v22 1601 654| move-object/from16 v5, v23 1602 656| move-object/from16 v2, v24 1603 658| move-object/from16 v6, v25 1604 660| goto/16 Label_24 1605.............................. end block 38 .............................. 1606............................. begin block 39 ............................. 1607Label_12: 1608 .line 129 1609 662| move-exception v0 1610 663| move-object/from16 v3, v21 1611 665| move-object/from16 v4, v22 1612 667| move-object/from16 v5, v23 1613 669| move-object/from16 v2, v24 1614 671| move-object/from16 v6, v25 1615 673| goto/16 Label_26 1616.............................. end block 39 .............................. 1617............................. begin block 40 ............................. 1618Label_13: 1619 .line 132 1620 .end_local v21 1621 .end_local v24 1622 .end_local v25 1623 .local v3, "onFuzzTargetReady", java.lang.invoke.MethodHandle 1624 .local_ex v5, "jazzerInternal", java.lang.Class, "Ljava/lang/Class<*>;" 1625 .restart_local v6 1626 675| move-exception v0 1627 676| move-object/from16 v21, v3 1628 678| move-object/from16 v24, v5 1629 680| move-object/from16 v25, v6 1630 682| move-object/from16 v4, v22 1631 684| move-object/from16 v5, v23 1632 686| move-object/from16 v2, v24 1633 .end_local v3 1634 .end_local v5 1635 .end_local v6 1636 .restart_local v21 1637 .restart_local v24 1638 .restart_local v25 1639 688| goto/16 Label_24 1640.............................. end block 40 .............................. 1641............................. begin block 41 ............................. 1642Label_14: 1643 .line 129 1644 .end_local v21 1645 .end_local v24 1646 .end_local v25 1647 .restart_local v3 1648 .restart_local v5 1649 .restart_local v6 1650 690| move-exception v0 1651 691| move-object/from16 v21, v3 1652 693| move-object/from16 v24, v5 1653 695| move-object/from16 v25, v6 1654 697| move-object/from16 v4, v22 1655 699| move-object/from16 v5, v23 1656 701| move-object/from16 v2, v24 1657 .end_local v3 1658 .end_local v5 1659 .end_local v6 1660 .restart_local v21 1661 .restart_local v24 1662 .restart_local v25 1663 703| goto/16 Label_26 1664.............................. end block 41 .............................. 1665............................. begin block 42 ............................. 1666Label_15: 1667 .line 132 1668 .end_local v24 1669 .end_local v25 1670 .restart_local v5 1671 .restart_local v6 1672 705| move-exception v0 1673 706| move-object/from16 v24, v5 1674 708| move-object/from16 v25, v6 1675 710| move-object/from16 v3, v21 1676 712| move-object/from16 v4, v22 1677 714| move-object/from16 v5, v23 1678 716| move-object/from16 v2, v24 1679 .end_local v5 1680 .end_local v6 1681 .restart_local v24 1682 .restart_local v25 1683 718| goto/16 Label_24 1684.............................. end block 42 .............................. 1685............................. begin block 43 ............................. 1686Label_16: 1687 .line 129 1688 .end_local v24 1689 .end_local v25 1690 .restart_local v5 1691 .restart_local v6 1692 720| move-exception v0 1693 721| move-object/from16 v24, v5 1694 723| move-object/from16 v25, v6 1695 725| move-object/from16 v3, v21 1696 727| move-object/from16 v4, v22 1697 729| move-object/from16 v5, v23 1698 731| move-object/from16 v2, v24 1699 .end_local v5 1700 .end_local v6 1701 .restart_local v24 1702 .restart_local v25 1703 733| goto/16 Label_26 1704.............................. end block 43 .............................. 1705............................. begin block 44 ............................. 1706Label_17: 1707 .line 132 1708 .end_local v23 1709 .end_local v24 1710 .end_local v25 1711 .local v5, "traceStrstr", java.lang.invoke.MethodHandle 1712 .restart_local v6 1713 .local_ex v19, "jazzerInternal", java.lang.Class, "Ljava/lang/Class<*>;" 1714 735| move-exception v0 1715 736| move-object/from16 v23, v5 1716 738| move-object/from16 v25, v6 1717 740| move-object/from16 v24, v19 1718 742| move-object/from16 v3, v21 1719 744| move-object/from16 v4, v22 1720 746| move-object/from16 v2, v24 1721 .end_local v5 1722 .end_local v6 1723 .end_local v19 1724 .restart_local v23 1725 .restart_local v24 1726 .restart_local v25 1727 748| goto/16 Label_24 1728.............................. end block 44 .............................. 1729............................. begin block 45 ............................. 1730Label_18: 1731 .line 129 1732 .end_local v23 1733 .end_local v24 1734 .end_local v25 1735 .restart_local v5 1736 .restart_local v6 1737 .restart_local v19 1738 750| move-exception v0 1739 751| move-object/from16 v23, v5 1740 753| move-object/from16 v25, v6 1741 755| move-object/from16 v24, v19 1742 757| move-object/from16 v3, v21 1743 759| move-object/from16 v4, v22 1744 761| move-object/from16 v2, v24 1745 .end_local v5 1746 .end_local v6 1747 .end_local v19 1748 .restart_local v23 1749 .restart_local v24 1750 .restart_local v25 1751 763| goto/16 Label_26 1752.............................. end block 45 .............................. 1753............................. begin block 46 ............................. 1754Label_19: 1755 .line 132 1756 .end_local v22 1757 .end_local v23 1758 .end_local v24 1759 .end_local v25 1760 .local v4, "traceStrcmp", java.lang.invoke.MethodHandle 1761 .restart_local v5 1762 .restart_local v6 1763 .restart_local v19 1764 765| move-exception v0 1765 766| move-object/from16 v22, v4 1766 768| move-object/from16 v23, v5 1767 770| move-object/from16 v25, v6 1768 772| move-object/from16 v24, v19 1769 774| move-object/from16 v3, v21 1770 776| move-object/from16 v2, v24 1771 .end_local v4 1772 .end_local v5 1773 .end_local v6 1774 .end_local v19 1775 .restart_local v22 1776 .restart_local v23 1777 .restart_local v24 1778 .restart_local v25 1779 778| goto Label_24 1780.............................. end block 46 .............................. 1781............................. begin block 47 ............................. 1782Label_20: 1783 .line 129 1784 .end_local v22 1785 .end_local v23 1786 .end_local v24 1787 .end_local v25 1788 .restart_local v4 1789 .restart_local v5 1790 .restart_local v6 1791 .restart_local v19 1792 779| move-exception v0 1793 780| move-object/from16 v22, v4 1794 782| move-object/from16 v23, v5 1795 784| move-object/from16 v25, v6 1796 786| move-object/from16 v24, v19 1797 788| move-object/from16 v3, v21 1798 790| move-object/from16 v2, v24 1799 .end_local v4 1800 .end_local v5 1801 .end_local v6 1802 .end_local v19 1803 .restart_local v22 1804 .restart_local v23 1805 .restart_local v24 1806 .restart_local v25 1807 792| goto Label_26 1808.............................. end block 47 .............................. 1809............................. begin block 48 ............................. 1810Label_21: 1811 .line 132 1812 .end_local v21 1813 .end_local v22 1814 .end_local v23 1815 .end_local v24 1816 .end_local v25 1817 .restart_local v3 1818 .restart_local v4 1819 .restart_local v5 1820 .restart_local v6 1821 .restart_local v19 1822 793| move-exception v0 1823 794| move-object/from16 v21, v3 1824 796| move-object/from16 v22, v4 1825 798| move-object/from16 v23, v5 1826 800| move-object/from16 v25, v6 1827 802| move-object/from16 v24, v19 1828 804| move-object/from16 v2, v24 1829 .end_local v3 1830 .end_local v4 1831 .end_local v5 1832 .end_local v6 1833 .end_local v19 1834 .restart_local v21 1835 .restart_local v22 1836 .restart_local v23 1837 .restart_local v24 1838 .restart_local v25 1839 806| goto Label_24 1840.............................. end block 48 .............................. 1841............................. begin block 49 ............................. 1842Label_22: 1843 .line 129 1844 .end_local v21 1845 .end_local v22 1846 .end_local v23 1847 .end_local v24 1848 .end_local v25 1849 .restart_local v3 1850 .restart_local v4 1851 .restart_local v5 1852 .restart_local v6 1853 .restart_local v19 1854 807| move-exception v0 1855 808| move-object/from16 v21, v3 1856 810| move-object/from16 v22, v4 1857 812| move-object/from16 v23, v5 1858 814| move-object/from16 v25, v6 1859 816| move-object/from16 v24, v19 1860 818| move-object/from16 v2, v24 1861 .end_local v3 1862 .end_local v4 1863 .end_local v5 1864 .end_local v6 1865 .end_local v19 1866 .restart_local v21 1867 .restart_local v22 1868 .restart_local v23 1869 .restart_local v24 1870 .restart_local v25 1871 820| goto Label_26 1872.............................. end block 49 .............................. 1873............................. begin block 50 ............................. 1874Label_23: 1875 .line 132 1876 .end_local v21 1877 .end_local v22 1878 .end_local v23 1879 .end_local v24 1880 .end_local v25 1881 .restart_local v3 1882 .restart_local v4 1883 .restart_local v5 1884 .restart_local v6 1885 .restart_local v19 1886 821| move-exception v0 1887 822| move-object/from16 v21, v3 1888 824| move-object/from16 v22, v4 1889 826| move-object/from16 v23, v5 1890 828| move-object/from16 v25, v6 1891 830| move-object/from16 v2, v19 1892.............................. end block 50 .............................. 1893............................. begin block 51 ............................. 1894Label_24: 1895 .line 135 1896 .end_local v19 1897 .local v0, "e", java.lang.ReflectiveOperationException 1898 .local_ex v2, "jazzerInternal", java.lang.Class, "Ljava/lang/Class<*>;" 1899 832| sget-object v1, java.lang.System.err 1900 834| move-object/from16 v19, v2 1901 .end_local v2 1902 .restart_local v19 1903 836| const-string v2, "ERROR: Incompatible version of the Jazzer API detected, please update." 1904 838| invoke-virtual {v1,v2}, java.io.PrintStream.println(java.lang.String):void 1905 .line 136 1906 841| invoke-virtual {v0}, java.lang.ReflectiveOperationException.printStackTrace():void 1907 .line 137 1908 844| const/4 v1, #+1 (0x00000001 | 1.40130e-45) 1909 845| invoke-static {v1}, java.lang.System.exit(int):void 1910 848| goto Label_27 1911.............................. end block 51 .............................. 1912............................. begin block 52 ............................. 1913Label_25: 1914 .line 129 1915 .end_local v0 1916 849| move-exception v0 1917 850| move-object/from16 v21, v3 1918 852| move-object/from16 v22, v4 1919 854| move-object/from16 v23, v5 1920 856| move-object/from16 v25, v6 1921 858| move-object/from16 v2, v19 1922.............................. end block 52 .............................. 1923............................. begin block 53 ............................. 1924Label_26: 1925 .line 138 1926 .end_local v19 1927 .restart_local v2 1928 860| move-object/from16 v19, v2 1929.............................. end block 53 .............................. 1930............................. begin block 54 ............................. 1931Label_27: 1932 .line 139 1933 .end_local v2 1934 .restart_local v19 1935 862| sput-object v19, com.code_intelligence.jazzer.api.Jazzer.JAZZER_INTERNAL 1936 .line 140 1937 864| sput-object v3, com.code_intelligence.jazzer.api.Jazzer.ON_FUZZ_TARGET_READY 1938 .line 141 1939 866| sput-object v4, com.code_intelligence.jazzer.api.Jazzer.TRACE_STRCMP 1940 .line 142 1941 868| sput-object v5, com.code_intelligence.jazzer.api.Jazzer.TRACE_STRSTR 1942 .line 143 1943 870| sput-object v6, com.code_intelligence.jazzer.api.Jazzer.TRACE_MEMCMP 1944 .line 144 1945 872| sput-object v7, com.code_intelligence.jazzer.api.Jazzer.TRACE_PC_INDIR 1946 .line 145 1947 874| sput-object v8, com.code_intelligence.jazzer.api.Jazzer.CONSUME 1948 .line 146 1949 876| sput-object v9, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_FUNCTION_1 1950 .line 147 1951 878| sput-object v10, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_FUNCTION_2 1952 .line 148 1953 880| sput-object v11, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_FUNCTION_3 1954 .line 149 1955 882| sput-object v12, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_FUNCTION_4 1956 .line 150 1957 884| sput-object v13, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_FUNCTION_5 1958 .line 151 1959 886| sput-object v14, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_CONSUMER_1 1960 .line 152 1961 888| sput-object v15, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_CONSUMER_2 1962 .line 153 1963 890| sput-object v16, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_CONSUMER_3 1964 .line 154 1965 892| sput-object v17, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_CONSUMER_4 1966 .line 155 1967 894| sput-object v18, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_CONSUMER_5 1968 .line 156 1969 .end_local v3 1970 .end_local v4 1971 .end_local v5 1972 .end_local v6 1973 .end_local v7 1974 .end_local v8 1975 .end_local v9 1976 .end_local v10 1977 .end_local v11 1978 .end_local v12 1979 .end_local v13 1980 .end_local v14 1981 .end_local v15 1982 .end_local v16 1983 .end_local v17 1984 .end_local v18 1985 .end_local v19 1986 896| return-void 1987.............................. end block 54 .............................. 1988} 1989 1990method com.code_intelligence.jazzer.api.Jazzer.<init>():void 1991{ 1992............................. begin block 1 ............................. 1993 .src "Jazzer.java" 1994 .line 158 1995 .line 158 1996 0| invoke-direct {v0}, java.lang.Object.<init>():void 1997 3| return-void 1998.............................. end block 1 .............................. 1999} 2000 2001method com.code_intelligence.jazzer.api.Jazzer.autofuzz(com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Function1):java.lang.Object 2002{ 2003 .try_begin_1 2004............................. begin block 1 ............................. 2005 .params "data", "?" 2006 .src "Jazzer.java" 2007 .line 180 2008 .line 180 2009 .local_ex v3, "func", com.code_intelligence.jazzer.api.Function1, "Lcom/code_intelligence/jazzer/api/Function1<TT1;TR;>;" 2010 0| sget-object v0, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_FUNCTION_1 2011 2| invoke-polymorphic {v0,v2,v3}, java.lang.invoke.MethodHandle.invoke(java.lang.Object[]):java.lang.Object, (com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Function1):java.lang.Object 2012 6| move-result-object v0 2013.............................. end block 1 .............................. 2014 .try_end_1 2015 catch(com.code_intelligence.jazzer.api.AutofuzzInvocationException) : Label_2 2016 catch(...) : Label_1 2017............................. begin block 2 ............................. 2018 7| return-object v0 2019.............................. end block 2 .............................. 2020............................. begin block 3 ............................. 2021Label_1: 2022 .line 183 2023 8| move-exception v0 2024 .line 184 2025 .local v0, "t", java.lang.Throwable 2026 9| invoke-static {v0}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2027 12| goto Label_3 2028.............................. end block 3 .............................. 2029............................. begin block 4 ............................. 2030Label_2: 2031 .line 181 2032 .end_local v0 2033 13| move-exception v0 2034 .line 182 2035 .local v0, "e", com.code_intelligence.jazzer.api.AutofuzzInvocationException 2036 14| invoke-virtual {v0}, com.code_intelligence.jazzer.api.AutofuzzInvocationException.getCause():java.lang.Throwable 2037 17| move-result-object v1 2038 18| invoke-static {v1}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2039 .line 185 2040 .end_local v0 2041 21| nop 2042.............................. end block 4 .............................. 2043............................. begin block 5 ............................. 2044Label_3: 2045 .line 187 2046 22| const/4 v0, #+0 (0x00000000 | 0.00000) 2047 23| return-object v0 2048.............................. end block 5 .............................. 2049} 2050 2051method com.code_intelligence.jazzer.api.Jazzer.autofuzz(com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Function2):java.lang.Object 2052{ 2053 .try_begin_1 2054............................. begin block 1 ............................. 2055 .params "data", "?" 2056 .src "Jazzer.java" 2057 .line 210 2058 .line 210 2059 .local_ex v3, "func", com.code_intelligence.jazzer.api.Function2, "Lcom/code_intelligence/jazzer/api/Function2<TT1;TT2;TR;>;" 2060 0| sget-object v0, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_FUNCTION_2 2061 2| invoke-polymorphic {v0,v2,v3}, java.lang.invoke.MethodHandle.invoke(java.lang.Object[]):java.lang.Object, (com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Function2):java.lang.Object 2062 6| move-result-object v0 2063.............................. end block 1 .............................. 2064 .try_end_1 2065 catch(com.code_intelligence.jazzer.api.AutofuzzInvocationException) : Label_2 2066 catch(...) : Label_1 2067............................. begin block 2 ............................. 2068 7| return-object v0 2069.............................. end block 2 .............................. 2070............................. begin block 3 ............................. 2071Label_1: 2072 .line 213 2073 8| move-exception v0 2074 .line 214 2075 .local v0, "t", java.lang.Throwable 2076 9| invoke-static {v0}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2077 12| goto Label_3 2078.............................. end block 3 .............................. 2079............................. begin block 4 ............................. 2080Label_2: 2081 .line 211 2082 .end_local v0 2083 13| move-exception v0 2084 .line 212 2085 .local v0, "e", com.code_intelligence.jazzer.api.AutofuzzInvocationException 2086 14| invoke-virtual {v0}, com.code_intelligence.jazzer.api.AutofuzzInvocationException.getCause():java.lang.Throwable 2087 17| move-result-object v1 2088 18| invoke-static {v1}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2089 .line 215 2090 .end_local v0 2091 21| nop 2092.............................. end block 4 .............................. 2093............................. begin block 5 ............................. 2094Label_3: 2095 .line 217 2096 22| const/4 v0, #+0 (0x00000000 | 0.00000) 2097 23| return-object v0 2098.............................. end block 5 .............................. 2099} 2100 2101method com.code_intelligence.jazzer.api.Jazzer.autofuzz(com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Function3):java.lang.Object 2102{ 2103 .try_begin_1 2104............................. begin block 1 ............................. 2105 .params "data", "?" 2106 .src "Jazzer.java" 2107 .line 240 2108 .line 240 2109 .local_ex v3, "func", com.code_intelligence.jazzer.api.Function3, "Lcom/code_intelligence/jazzer/api/Function3<TT1;TT2;TT3;TR;>;" 2110 0| sget-object v0, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_FUNCTION_3 2111 2| invoke-polymorphic {v0,v2,v3}, java.lang.invoke.MethodHandle.invoke(java.lang.Object[]):java.lang.Object, (com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Function3):java.lang.Object 2112 6| move-result-object v0 2113.............................. end block 1 .............................. 2114 .try_end_1 2115 catch(com.code_intelligence.jazzer.api.AutofuzzInvocationException) : Label_2 2116 catch(...) : Label_1 2117............................. begin block 2 ............................. 2118 7| return-object v0 2119.............................. end block 2 .............................. 2120............................. begin block 3 ............................. 2121Label_1: 2122 .line 243 2123 8| move-exception v0 2124 .line 244 2125 .local v0, "t", java.lang.Throwable 2126 9| invoke-static {v0}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2127 12| goto Label_3 2128.............................. end block 3 .............................. 2129............................. begin block 4 ............................. 2130Label_2: 2131 .line 241 2132 .end_local v0 2133 13| move-exception v0 2134 .line 242 2135 .local v0, "e", com.code_intelligence.jazzer.api.AutofuzzInvocationException 2136 14| invoke-virtual {v0}, com.code_intelligence.jazzer.api.AutofuzzInvocationException.getCause():java.lang.Throwable 2137 17| move-result-object v1 2138 18| invoke-static {v1}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2139 .line 245 2140 .end_local v0 2141 21| nop 2142.............................. end block 4 .............................. 2143............................. begin block 5 ............................. 2144Label_3: 2145 .line 247 2146 22| const/4 v0, #+0 (0x00000000 | 0.00000) 2147 23| return-object v0 2148.............................. end block 5 .............................. 2149} 2150 2151method com.code_intelligence.jazzer.api.Jazzer.autofuzz(com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Function4):java.lang.Object 2152{ 2153 .try_begin_1 2154............................. begin block 1 ............................. 2155 .params "data", "?" 2156 .src "Jazzer.java" 2157 .line 271 2158 .line 271 2159 .local_ex v3, "func", com.code_intelligence.jazzer.api.Function4, "Lcom/code_intelligence/jazzer/api/Function4<TT1;TT2;TT3;TT4;TR;>;" 2160 0| sget-object v0, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_FUNCTION_4 2161 2| invoke-polymorphic {v0,v2,v3}, java.lang.invoke.MethodHandle.invoke(java.lang.Object[]):java.lang.Object, (com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Function4):java.lang.Object 2162 6| move-result-object v0 2163.............................. end block 1 .............................. 2164 .try_end_1 2165 catch(com.code_intelligence.jazzer.api.AutofuzzInvocationException) : Label_2 2166 catch(...) : Label_1 2167............................. begin block 2 ............................. 2168 7| return-object v0 2169.............................. end block 2 .............................. 2170............................. begin block 3 ............................. 2171Label_1: 2172 .line 274 2173 8| move-exception v0 2174 .line 275 2175 .local v0, "t", java.lang.Throwable 2176 9| invoke-static {v0}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2177 12| goto Label_3 2178.............................. end block 3 .............................. 2179............................. begin block 4 ............................. 2180Label_2: 2181 .line 272 2182 .end_local v0 2183 13| move-exception v0 2184 .line 273 2185 .local v0, "e", com.code_intelligence.jazzer.api.AutofuzzInvocationException 2186 14| invoke-virtual {v0}, com.code_intelligence.jazzer.api.AutofuzzInvocationException.getCause():java.lang.Throwable 2187 17| move-result-object v1 2188 18| invoke-static {v1}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2189 .line 276 2190 .end_local v0 2191 21| nop 2192.............................. end block 4 .............................. 2193............................. begin block 5 ............................. 2194Label_3: 2195 .line 278 2196 22| const/4 v0, #+0 (0x00000000 | 0.00000) 2197 23| return-object v0 2198.............................. end block 5 .............................. 2199} 2200 2201method com.code_intelligence.jazzer.api.Jazzer.autofuzz(com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Function5):java.lang.Object 2202{ 2203 .try_begin_1 2204............................. begin block 1 ............................. 2205 .params "data", "?" 2206 .src "Jazzer.java" 2207 .line 302 2208 .line 302 2209 .local_ex v3, "func", com.code_intelligence.jazzer.api.Function5, "Lcom/code_intelligence/jazzer/api/Function5<TT1;TT2;TT3;TT4;TT5;TR;>;" 2210 0| sget-object v0, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_FUNCTION_5 2211 2| invoke-polymorphic {v0,v2,v3}, java.lang.invoke.MethodHandle.invoke(java.lang.Object[]):java.lang.Object, (com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Function5):java.lang.Object 2212 6| move-result-object v0 2213.............................. end block 1 .............................. 2214 .try_end_1 2215 catch(com.code_intelligence.jazzer.api.AutofuzzInvocationException) : Label_2 2216 catch(...) : Label_1 2217............................. begin block 2 ............................. 2218 7| return-object v0 2219.............................. end block 2 .............................. 2220............................. begin block 3 ............................. 2221Label_1: 2222 .line 305 2223 8| move-exception v0 2224 .line 306 2225 .local v0, "t", java.lang.Throwable 2226 9| invoke-static {v0}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2227 12| goto Label_3 2228.............................. end block 3 .............................. 2229............................. begin block 4 ............................. 2230Label_2: 2231 .line 303 2232 .end_local v0 2233 13| move-exception v0 2234 .line 304 2235 .local v0, "e", com.code_intelligence.jazzer.api.AutofuzzInvocationException 2236 14| invoke-virtual {v0}, com.code_intelligence.jazzer.api.AutofuzzInvocationException.getCause():java.lang.Throwable 2237 17| move-result-object v1 2238 18| invoke-static {v1}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2239 .line 307 2240 .end_local v0 2241 21| nop 2242.............................. end block 4 .............................. 2243............................. begin block 5 ............................. 2244Label_3: 2245 .line 309 2246 22| const/4 v0, #+0 (0x00000000 | 0.00000) 2247 23| return-object v0 2248.............................. end block 5 .............................. 2249} 2250 2251method com.code_intelligence.jazzer.api.Jazzer.autofuzz(com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Consumer1):void 2252{ 2253 .try_begin_1 2254............................. begin block 1 ............................. 2255 .params "data", "?" 2256 .src "Jazzer.java" 2257 .line 329 2258 .line 329 2259 .local_ex v3, "func", com.code_intelligence.jazzer.api.Consumer1, "Lcom/code_intelligence/jazzer/api/Consumer1<TT1;>;" 2260 0| sget-object v0, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_CONSUMER_1 2261 2| invoke-polymorphic {v0,v2,v3}, java.lang.invoke.MethodHandle.invoke(java.lang.Object[]):java.lang.Object, (com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Consumer1):void 2262.............................. end block 1 .............................. 2263 .try_end_1 2264 catch(com.code_intelligence.jazzer.api.AutofuzzInvocationException) : Label_2 2265 catch(...) : Label_1 2266............................. begin block 2 ............................. 2267 6| goto Label_3 2268.............................. end block 2 .............................. 2269............................. begin block 3 ............................. 2270Label_1: 2271 .line 332 2272 7| move-exception v0 2273 .line 333 2274 .local v0, "t", java.lang.Throwable 2275 8| invoke-static {v0}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2276 11| goto Label_4 2277.............................. end block 3 .............................. 2278............................. begin block 4 ............................. 2279Label_2: 2280 .line 330 2281 .end_local v0 2282 12| move-exception v0 2283 .line 331 2284 .local v0, "e", com.code_intelligence.jazzer.api.AutofuzzInvocationException 2285 13| invoke-virtual {v0}, com.code_intelligence.jazzer.api.AutofuzzInvocationException.getCause():java.lang.Throwable 2286 16| move-result-object v1 2287 17| invoke-static {v1}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2288.............................. end block 4 .............................. 2289............................. begin block 5 ............................. 2290Label_3: 2291 .line 334 2292 .end_local v0 2293 20| nop 2294.............................. end block 5 .............................. 2295............................. begin block 6 ............................. 2296Label_4: 2297 .line 335 2298 21| return-void 2299.............................. end block 6 .............................. 2300} 2301 2302method com.code_intelligence.jazzer.api.Jazzer.autofuzz(com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Consumer2):void 2303{ 2304 .try_begin_1 2305............................. begin block 1 ............................. 2306 .params "data", "?" 2307 .src "Jazzer.java" 2308 .line 354 2309 .line 354 2310 .local_ex v3, "func", com.code_intelligence.jazzer.api.Consumer2, "Lcom/code_intelligence/jazzer/api/Consumer2<TT1;TT2;>;" 2311 0| sget-object v0, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_CONSUMER_2 2312 2| invoke-polymorphic {v0,v2,v3}, java.lang.invoke.MethodHandle.invoke(java.lang.Object[]):java.lang.Object, (com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Consumer2):void 2313.............................. end block 1 .............................. 2314 .try_end_1 2315 catch(com.code_intelligence.jazzer.api.AutofuzzInvocationException) : Label_2 2316 catch(...) : Label_1 2317............................. begin block 2 ............................. 2318 6| goto Label_3 2319.............................. end block 2 .............................. 2320............................. begin block 3 ............................. 2321Label_1: 2322 .line 357 2323 7| move-exception v0 2324 .line 358 2325 .local v0, "t", java.lang.Throwable 2326 8| invoke-static {v0}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2327 11| goto Label_4 2328.............................. end block 3 .............................. 2329............................. begin block 4 ............................. 2330Label_2: 2331 .line 355 2332 .end_local v0 2333 12| move-exception v0 2334 .line 356 2335 .local v0, "e", com.code_intelligence.jazzer.api.AutofuzzInvocationException 2336 13| invoke-virtual {v0}, com.code_intelligence.jazzer.api.AutofuzzInvocationException.getCause():java.lang.Throwable 2337 16| move-result-object v1 2338 17| invoke-static {v1}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2339.............................. end block 4 .............................. 2340............................. begin block 5 ............................. 2341Label_3: 2342 .line 359 2343 .end_local v0 2344 20| nop 2345.............................. end block 5 .............................. 2346............................. begin block 6 ............................. 2347Label_4: 2348 .line 360 2349 21| return-void 2350.............................. end block 6 .............................. 2351} 2352 2353method com.code_intelligence.jazzer.api.Jazzer.autofuzz(com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Consumer3):void 2354{ 2355 .try_begin_1 2356............................. begin block 1 ............................. 2357 .params "data", "?" 2358 .src "Jazzer.java" 2359 .line 379 2360 .line 379 2361 .local_ex v3, "func", com.code_intelligence.jazzer.api.Consumer3, "Lcom/code_intelligence/jazzer/api/Consumer3<TT1;TT2;TT3;>;" 2362 0| sget-object v0, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_CONSUMER_3 2363 2| invoke-polymorphic {v0,v2,v3}, java.lang.invoke.MethodHandle.invoke(java.lang.Object[]):java.lang.Object, (com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Consumer3):void 2364.............................. end block 1 .............................. 2365 .try_end_1 2366 catch(com.code_intelligence.jazzer.api.AutofuzzInvocationException) : Label_2 2367 catch(...) : Label_1 2368............................. begin block 2 ............................. 2369 6| goto Label_3 2370.............................. end block 2 .............................. 2371............................. begin block 3 ............................. 2372Label_1: 2373 .line 382 2374 7| move-exception v0 2375 .line 383 2376 .local v0, "t", java.lang.Throwable 2377 8| invoke-static {v0}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2378 11| goto Label_4 2379.............................. end block 3 .............................. 2380............................. begin block 4 ............................. 2381Label_2: 2382 .line 380 2383 .end_local v0 2384 12| move-exception v0 2385 .line 381 2386 .local v0, "e", com.code_intelligence.jazzer.api.AutofuzzInvocationException 2387 13| invoke-virtual {v0}, com.code_intelligence.jazzer.api.AutofuzzInvocationException.getCause():java.lang.Throwable 2388 16| move-result-object v1 2389 17| invoke-static {v1}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2390.............................. end block 4 .............................. 2391............................. begin block 5 ............................. 2392Label_3: 2393 .line 384 2394 .end_local v0 2395 20| nop 2396.............................. end block 5 .............................. 2397............................. begin block 6 ............................. 2398Label_4: 2399 .line 385 2400 21| return-void 2401.............................. end block 6 .............................. 2402} 2403 2404method com.code_intelligence.jazzer.api.Jazzer.autofuzz(com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Consumer4):void 2405{ 2406 .try_begin_1 2407............................. begin block 1 ............................. 2408 .params "data", "?" 2409 .src "Jazzer.java" 2410 .line 405 2411 .line 405 2412 .local_ex v3, "func", com.code_intelligence.jazzer.api.Consumer4, "Lcom/code_intelligence/jazzer/api/Consumer4<TT1;TT2;TT3;TT4;>;" 2413 0| sget-object v0, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_CONSUMER_4 2414 2| invoke-polymorphic {v0,v2,v3}, java.lang.invoke.MethodHandle.invoke(java.lang.Object[]):java.lang.Object, (com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Consumer4):void 2415.............................. end block 1 .............................. 2416 .try_end_1 2417 catch(com.code_intelligence.jazzer.api.AutofuzzInvocationException) : Label_2 2418 catch(...) : Label_1 2419............................. begin block 2 ............................. 2420 6| goto Label_3 2421.............................. end block 2 .............................. 2422............................. begin block 3 ............................. 2423Label_1: 2424 .line 408 2425 7| move-exception v0 2426 .line 409 2427 .local v0, "t", java.lang.Throwable 2428 8| invoke-static {v0}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2429 11| goto Label_4 2430.............................. end block 3 .............................. 2431............................. begin block 4 ............................. 2432Label_2: 2433 .line 406 2434 .end_local v0 2435 12| move-exception v0 2436 .line 407 2437 .local v0, "e", com.code_intelligence.jazzer.api.AutofuzzInvocationException 2438 13| invoke-virtual {v0}, com.code_intelligence.jazzer.api.AutofuzzInvocationException.getCause():java.lang.Throwable 2439 16| move-result-object v1 2440 17| invoke-static {v1}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2441.............................. end block 4 .............................. 2442............................. begin block 5 ............................. 2443Label_3: 2444 .line 410 2445 .end_local v0 2446 20| nop 2447.............................. end block 5 .............................. 2448............................. begin block 6 ............................. 2449Label_4: 2450 .line 411 2451 21| return-void 2452.............................. end block 6 .............................. 2453} 2454 2455method com.code_intelligence.jazzer.api.Jazzer.autofuzz(com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Consumer5):void 2456{ 2457 .try_begin_1 2458............................. begin block 1 ............................. 2459 .params "data", "?" 2460 .src "Jazzer.java" 2461 .line 431 2462 .line 431 2463 .local_ex v3, "func", com.code_intelligence.jazzer.api.Consumer5, "Lcom/code_intelligence/jazzer/api/Consumer5<TT1;TT2;TT3;TT4;TT5;>;" 2464 0| sget-object v0, com.code_intelligence.jazzer.api.Jazzer.AUTOFUZZ_CONSUMER_5 2465 2| invoke-polymorphic {v0,v2,v3}, java.lang.invoke.MethodHandle.invoke(java.lang.Object[]):java.lang.Object, (com.code_intelligence.jazzer.api.FuzzedDataProvider, com.code_intelligence.jazzer.api.Consumer5):void 2466.............................. end block 1 .............................. 2467 .try_end_1 2468 catch(com.code_intelligence.jazzer.api.AutofuzzInvocationException) : Label_2 2469 catch(...) : Label_1 2470............................. begin block 2 ............................. 2471 6| goto Label_3 2472.............................. end block 2 .............................. 2473............................. begin block 3 ............................. 2474Label_1: 2475 .line 434 2476 7| move-exception v0 2477 .line 435 2478 .local v0, "t", java.lang.Throwable 2479 8| invoke-static {v0}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2480 11| goto Label_4 2481.............................. end block 3 .............................. 2482............................. begin block 4 ............................. 2483Label_2: 2484 .line 432 2485 .end_local v0 2486 12| move-exception v0 2487 .line 433 2488 .local v0, "e", com.code_intelligence.jazzer.api.AutofuzzInvocationException 2489 13| invoke-virtual {v0}, com.code_intelligence.jazzer.api.AutofuzzInvocationException.getCause():java.lang.Throwable 2490 16| move-result-object v1 2491 17| invoke-static {v1}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2492.............................. end block 4 .............................. 2493............................. begin block 5 ............................. 2494Label_3: 2495 .line 436 2496 .end_local v0 2497 20| nop 2498.............................. end block 5 .............................. 2499............................. begin block 6 ............................. 2500Label_4: 2501 .line 437 2502 21| return-void 2503.............................. end block 6 .............................. 2504} 2505 2506method com.code_intelligence.jazzer.api.Jazzer.consume(com.code_intelligence.jazzer.api.FuzzedDataProvider, java.lang.Class):java.lang.Object 2507{ 2508............................. begin block 1 ............................. 2509 .params "data", "?" 2510 .src "Jazzer.java" 2511 .line 454 2512 .line 454 2513 .local_ex v3, "type", java.lang.Class, "Ljava/lang/Class<TT;>;" 2514 0| const/4 v0, #+0 (0x00000000 | 0.00000) 2515.............................. end block 1 .............................. 2516 .try_begin_1 2517............................. begin block 2 ............................. 2518 1| sget-object v1, com.code_intelligence.jazzer.api.Jazzer.CONSUME 2519 3| invoke-polymorphic {v1,v2,v3}, java.lang.invoke.MethodHandle.invokeExact(java.lang.Object[]):java.lang.Object, (com.code_intelligence.jazzer.api.FuzzedDataProvider, java.lang.Class):java.lang.Object 2520 7| move-result-object v0 2521.............................. end block 2 .............................. 2522 .try_end_1 2523 catch(com.code_intelligence.jazzer.api.AutofuzzConstructionException) : Label_2 2524 catch(...) : Label_1 2525............................. begin block 3 ............................. 2526 8| return-object v0 2527.............................. end block 3 .............................. 2528............................. begin block 4 ............................. 2529Label_1: 2530 .line 457 2531 9| move-exception v1 2532 .line 458 2533 .local v1, "t", java.lang.Throwable 2534 10| invoke-static {v1}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2535 .line 460 2536 13| return-object v0 2537.............................. end block 4 .............................. 2538............................. begin block 5 ............................. 2539Label_2: 2540 .line 455 2541 .end_local v1 2542 14| move-exception v1 2543 .line 456 2544 .local v1, "ignored", com.code_intelligence.jazzer.api.AutofuzzConstructionException 2545 15| return-object v0 2546.............................. end block 5 .............................. 2547} 2548 2549method com.code_intelligence.jazzer.api.Jazzer.exploreState(byte, int):void 2550{ 2551............................. begin block 1 ............................. 2552 .params "state", "id" 2553 .src "Jazzer.java" 2554 .line 550 2555 .line 550 2556 0| sget-object v0, com.code_intelligence.jazzer.api.Jazzer.TRACE_PC_INDIR 2557 2| if-nez v0, Label_1 2558.............................. end block 1 .............................. 2559............................. begin block 2 ............................. 2560 .line 551 2561 4| return-void 2562.............................. end block 2 .............................. 2563............................. begin block 3 ............................. 2564Label_1: 2565 .line 576 2566 5| and-int/lit8 v1, v3, #+127 (0x0000007f | 1.77965e-43) 2567 7| shl-int/lit8 v2, v4, #+7 (0x00000007 | 9.80909e-45) 2568 9| or-int/2addr v1, v2 2569 .line 577 2570 .local v1, "lowerBits", int 2571 10| ushr-int/lit8 v2, v4, #+5 (0x00000005 | 7.00649e-45) 2572.............................. end block 3 .............................. 2573 .try_begin_1 2574............................. begin block 4 ............................. 2575 .line 579 2576 .local v2, "upperBits", int 2577 12| invoke-polymorphic {v0,v2,v1}, java.lang.invoke.MethodHandle.invokeExact(java.lang.Object[]):java.lang.Object, (int, int):void 2578.............................. end block 4 .............................. 2579 .try_end_1 2580 catch(...) : Label_2 2581............................. begin block 5 ............................. 2582 .line 582 2583 16| goto Label_3 2584.............................. end block 5 .............................. 2585............................. begin block 6 ............................. 2586Label_2: 2587 .line 580 2588 17| move-exception v0 2589 .line 581 2590 .local v0, "e", java.lang.Throwable 2591 18| invoke-virtual {v0}, java.lang.Throwable.printStackTrace():void 2592.............................. end block 6 .............................. 2593............................. begin block 7 ............................. 2594Label_3: 2595 .line 583 2596 .end_local v0 2597 21| return-void 2598.............................. end block 7 .............................. 2599} 2600 2601method com.code_intelligence.jazzer.api.Jazzer.getLibFuzzerSeed():int 2602{ 2603............................. begin block 1 ............................. 2604 .src "Jazzer.java" 2605 .line 630 2606 .line 630 2607 0| const-string v0, "jazzer.seed" 2608 2| invoke-static {v0}, java.lang.System.getProperty(java.lang.String):java.lang.String 2609 5| move-result-object v0 2610 .line 631 2611 .local v0, "rawSeed", java.lang.String 2612 6| if-nez v0, Label_1 2613.............................. end block 1 .............................. 2614............................. begin block 2 ............................. 2615 .line 632 2616 8| new-instance v1, java.security.SecureRandom 2617 10| invoke-direct {v1}, java.security.SecureRandom.<init>():void 2618 13| invoke-virtual {v1}, java.security.SecureRandom.nextInt():int 2619 16| move-result v1 2620 17| return v1 2621.............................. end block 2 .............................. 2622............................. begin block 3 ............................. 2623Label_1: 2624 .line 635 2625 18| invoke-static {v0}, java.lang.Integer.parseUnsignedInt(java.lang.String):int 2626 21| move-result v1 2627 22| return v1 2628.............................. end block 3 .............................. 2629} 2630 2631method com.code_intelligence.jazzer.api.Jazzer.guideTowardsContainment(java.lang.String, java.lang.String, int):void 2632{ 2633............................. begin block 1 ............................. 2634 .params "haystack", "needle", "id" 2635 .src "Jazzer.java" 2636 .line 524 2637 .line 524 2638 0| sget-object v0, com.code_intelligence.jazzer.api.Jazzer.TRACE_STRSTR 2639 2| if-nez v0, Label_1 2640.............................. end block 1 .............................. 2641............................. begin block 2 ............................. 2642 .line 525 2643 4| return-void 2644.............................. end block 2 .............................. 2645Label_1: 2646 .try_begin_1 2647............................. begin block 3 ............................. 2648 .line 528 2649 5| invoke-polymorphic {v0,v1,v2,v3}, java.lang.invoke.MethodHandle.invokeExact(java.lang.Object[]):java.lang.Object, (java.lang.String, java.lang.String, int):void 2650.............................. end block 3 .............................. 2651 .try_end_1 2652 catch(...) : Label_2 2653............................. begin block 4 ............................. 2654 .line 531 2655 9| goto Label_3 2656.............................. end block 4 .............................. 2657............................. begin block 5 ............................. 2658Label_2: 2659 .line 529 2660 10| move-exception v0 2661 .line 530 2662 .local v0, "e", java.lang.Throwable 2663 11| invoke-virtual {v0}, java.lang.Throwable.printStackTrace():void 2664.............................. end block 5 .............................. 2665............................. begin block 6 ............................. 2666Label_3: 2667 .line 532 2668 .end_local v0 2669 14| return-void 2670.............................. end block 6 .............................. 2671} 2672 2673method com.code_intelligence.jazzer.api.Jazzer.guideTowardsEquality(java.lang.String, java.lang.String, int):void 2674{ 2675............................. begin block 1 ............................. 2676 .params "current", "target", "id" 2677 .src "Jazzer.java" 2678 .line 477 2679 .line 477 2680 0| sget-object v0, com.code_intelligence.jazzer.api.Jazzer.TRACE_STRCMP 2681 2| if-nez v0, Label_1 2682.............................. end block 1 .............................. 2683............................. begin block 2 ............................. 2684 .line 478 2685 4| return-void 2686.............................. end block 2 .............................. 2687............................. begin block 3 ............................. 2688Label_1: 2689 .line 481 2690 5| const/4 v1, #+1 (0x00000001 | 1.40130e-45) 2691.............................. end block 3 .............................. 2692 .try_begin_1 2693............................. begin block 4 ............................. 2694 6| invoke-polymorphic {v0,v2,v3,v1,v4}, java.lang.invoke.MethodHandle.invokeExact(java.lang.Object[]):java.lang.Object, (java.lang.String, java.lang.String, int, int):void 2695.............................. end block 4 .............................. 2696 .try_end_1 2697 catch(...) : Label_2 2698............................. begin block 5 ............................. 2699 .line 484 2700 10| goto Label_3 2701.............................. end block 5 .............................. 2702............................. begin block 6 ............................. 2703Label_2: 2704 .line 482 2705 11| move-exception v0 2706 .line 483 2707 .local v0, "e", java.lang.Throwable 2708 12| invoke-virtual {v0}, java.lang.Throwable.printStackTrace():void 2709.............................. end block 6 .............................. 2710............................. begin block 7 ............................. 2711Label_3: 2712 .line 485 2713 .end_local v0 2714 15| return-void 2715.............................. end block 7 .............................. 2716} 2717 2718method com.code_intelligence.jazzer.api.Jazzer.guideTowardsEquality(byte[], byte[], int):void 2719{ 2720............................. begin block 1 ............................. 2721 .params "current", "target", "id" 2722 .src "Jazzer.java" 2723 .line 500 2724 .line 500 2725 0| sget-object v0, com.code_intelligence.jazzer.api.Jazzer.TRACE_MEMCMP 2726 2| if-nez v0, Label_1 2727.............................. end block 1 .............................. 2728............................. begin block 2 ............................. 2729 .line 501 2730 4| return-void 2731.............................. end block 2 .............................. 2732............................. begin block 3 ............................. 2733Label_1: 2734 .line 504 2735 5| const/4 v1, #+1 (0x00000001 | 1.40130e-45) 2736.............................. end block 3 .............................. 2737 .try_begin_1 2738............................. begin block 4 ............................. 2739 6| invoke-polymorphic {v0,v2,v3,v1,v4}, java.lang.invoke.MethodHandle.invokeExact(java.lang.Object[]):java.lang.Object, (byte[], byte[], int, int):void 2740.............................. end block 4 .............................. 2741 .try_end_1 2742 catch(...) : Label_2 2743............................. begin block 5 ............................. 2744 .line 507 2745 10| goto Label_3 2746.............................. end block 5 .............................. 2747............................. begin block 6 ............................. 2748Label_2: 2749 .line 505 2750 11| move-exception v0 2751 .line 506 2752 .local v0, "e", java.lang.Throwable 2753 12| invoke-virtual {v0}, java.lang.Throwable.printStackTrace():void 2754.............................. end block 6 .............................. 2755............................. begin block 7 ............................. 2756Label_3: 2757 .line 508 2758 .end_local v0 2759 15| return-void 2760.............................. end block 7 .............................. 2761} 2762 2763method com.code_intelligence.jazzer.api.Jazzer.onFuzzTargetReady(java.lang.Runnable):void 2764{ 2765 .try_begin_1 2766............................. begin block 1 ............................. 2767 .params "callback" 2768 .src "Jazzer.java" 2769 .line 620 2770 .line 620 2771 0| sget-object v0, com.code_intelligence.jazzer.api.Jazzer.ON_FUZZ_TARGET_READY 2772 2| invoke-polymorphic {v0,v1}, java.lang.invoke.MethodHandle.invokeExact(java.lang.Object[]):java.lang.Object, (java.lang.Runnable):void 2773.............................. end block 1 .............................. 2774 .try_end_1 2775 catch(...) : Label_1 2776............................. begin block 2 ............................. 2777 .line 623 2778 6| goto Label_2 2779.............................. end block 2 .............................. 2780............................. begin block 3 ............................. 2781Label_1: 2782 .line 621 2783 7| move-exception v0 2784 .line 622 2785 .local v0, "e", java.lang.Throwable 2786 8| invoke-virtual {v0}, java.lang.Throwable.printStackTrace():void 2787.............................. end block 3 .............................. 2788............................. begin block 4 ............................. 2789Label_2: 2790 .line 624 2791 .end_local v0 2792 11| return-void 2793.............................. end block 4 .............................. 2794} 2795 2796method com.code_intelligence.jazzer.api.Jazzer.reportFindingFromHook(java.lang.Throwable):void 2797{ 2798 .try_begin_1 2799............................. begin block 1 ............................. 2800 .params "finding" 2801 .src "Jazzer.java" 2802 .line 594 2803 .line 594 2804 0| sget-object v0, com.code_intelligence.jazzer.api.Jazzer.JAZZER_INTERNAL 2805 2| const-string v1, "reportFindingFromHook" 2806 4| const/4 v2, #+1 (0x00000001 | 1.40130e-45) 2807 5| new-array v2, v2, java.lang.Class[] 2808 7| const-class v3, java.lang.Throwable 2809 9| const/4 v4, #+0 (0x00000000 | 0.00000) 2810 10| aput-object v3, v2, v4 2811 12| invoke-virtual {v0,v1,v2}, java.lang.Class.getMethod(java.lang.String, java.lang.Class[]):java.lang.reflect.Method 2812 15| move-result-object v0 2813 16| filled-new-array {v5}, java.lang.Object[] 2814 19| move-result-object v1 2815 20| const/4 v2, #+0 (0x00000000 | 0.00000) 2816 21| invoke-virtual {v0,v2,v1}, java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]):java.lang.Object 2817.............................. end block 1 .............................. 2818 .try_end_1 2819 catch(java.lang.NullPointerException) : Label_3 2820 catch(java.lang.IllegalAccessException) : Label_3 2821 catch(java.lang.NoSuchMethodException) : Label_3 2822 catch(java.lang.reflect.InvocationTargetException) : Label_1 2823............................. begin block 2 ............................. 2824 24| goto Label_4 2825.............................. end block 2 .............................. 2826............................. begin block 3 ............................. 2827Label_1: 2828 .line 599 2829 25| move-exception v0 2830 .line 602 2831 .local v0, "e", java.lang.reflect.InvocationTargetException 2832 26| invoke-virtual {v0}, java.lang.reflect.InvocationTargetException.getCause():java.lang.Throwable 2833 29| move-result-object v1 2834 30| invoke-virtual {v1}, java.lang.Object.getClass():java.lang.Class 2835 33| move-result-object v1 2836 34| invoke-virtual {v1}, java.lang.Class.getName():java.lang.String 2837 37| move-result-object v1 2838 38| const-string v2, ".HardToCatchError" 2839 40| invoke-virtual {v1,v2}, java.lang.String.endsWith(java.lang.String):boolean 2840 43| move-result v1 2841 44| if-nez v1, Label_2 2842.............................. end block 3 .............................. 2843............................. begin block 4 ............................. 2844 .line 605 2845 46| invoke-virtual {v0}, java.lang.reflect.InvocationTargetException.printStackTrace():void 2846 49| goto Label_5 2847.............................. end block 4 .............................. 2848............................. begin block 5 ............................. 2849Label_2: 2850 .line 603 2851 50| invoke-virtual {v0}, java.lang.reflect.InvocationTargetException.getCause():java.lang.Throwable 2852 53| move-result-object v1 2853 54| check-cast v1, java.lang.Error 2854 56| throw v1 2855.............................. end block 5 .............................. 2856............................. begin block 6 ............................. 2857Label_3: 2858 .line 595 2859 .end_local v0 2860 57| move-exception v0 2861 .line 598 2862 .local v0, "e", java.lang.Exception 2863 58| invoke-static {v5}, com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2864.............................. end block 6 .............................. 2865............................. begin block 7 ............................. 2866Label_4: 2867 .line 607 2868 .end_local v0 2869 61| nop 2870.............................. end block 7 .............................. 2871............................. begin block 8 ............................. 2872Label_5: 2873 .line 608 2874 62| return-void 2875.............................. end block 8 .............................. 2876} 2877 2878method com.code_intelligence.jazzer.api.Jazzer.rethrowUnchecked(java.lang.Throwable):void 2879{ 2880............................. begin block 1 ............................. 2881 .params "t" 2882 .src "Jazzer.java" 2883 .line 641 2884 .line 641 2885 0| throw v0 2886.............................. end block 1 .............................. 2887} 2888 2889method com.code_intelligence.jazzer.api.MethodHook.additionalClassesToHook():java.lang.String[] 2890{ 2891} 2892 2893method com.code_intelligence.jazzer.api.MethodHook.targetClassName():java.lang.String 2894{ 2895} 2896 2897method com.code_intelligence.jazzer.api.MethodHook.targetMethod():java.lang.String 2898{ 2899} 2900 2901method com.code_intelligence.jazzer.api.MethodHook.targetMethodDescriptor():java.lang.String 2902{ 2903} 2904 2905method com.code_intelligence.jazzer.api.MethodHook.type():com.code_intelligence.jazzer.api.HookType 2906{ 2907} 2908 2909method com.code_intelligence.jazzer.api.MethodHooks.value():com.code_intelligence.jazzer.api.MethodHook[] 2910{ 2911} 2912 2913method com.example.ExampleJavaHelper.<init>():void 2914{ 2915............................. begin block 1 ............................. 2916 .src "ExampleJavaHelper.java" 2917 .line 7 2918 .line 7 2919 0| invoke-direct {v1}, java.lang.Object.<init>():void 2920 3| const/4 v0, #+5 (0x00000005 | 7.00649e-45) 2921 4| invoke-static {v0}, com.code_intelligence.jazzer.runtime.CoverageMap.recordCoverage(int):void 2922 7| return-void 2923.............................. end block 1 .............................. 2924} 2925 2926method com.example.ExampleJavaHelper.fuzzerTestOneInput(byte[]):void 2927{ 2928 .try_begin_1 2929............................. begin block 1 ............................. 2930 .params "data" 2931 .src "ExampleJavaHelper.java" 2932 .line 10 2933 .line 10 2934 0| new-instance v0, java.io.ObjectInputStream 2935 2| new-instance v1, java.io.ByteArrayInputStream 2936 4| invoke-direct {v1,v5}, java.io.ByteArrayInputStream.<init>(byte[]):void 2937 7| filled-new-array {v1}, java.lang.Object[] 2938 10| move-result-object v1 2939 11| const v2, #+590768839 (0x23366ac7 | 9.88885e-18) 2940 14| const/4 v3, #+0 (0x00000000 | 0.00000) 2941 15| invoke-static {v3,v3,v1,v2}, com.code_intelligence.jazzer.sanitizers.Deserialization.objectInputStreamInitBeforeHook(java.lang.invoke.MethodHandle, java.lang.Object, java.lang.Object[], int):void 2942 18| const/4 v2, #+0 (0x00000000 | 0.00000) 2943 19| aget-object v4, v1, v2 2944 21| check-cast v4, java.io.InputStream 2945 23| invoke-direct {v0,v4}, java.io.ObjectInputStream.<init>(java.io.InputStream):void 2946 26| const v4, #-1337761839 (0xb0435fd1 | -7.10768e-10) 2947 29| invoke-static {v3,v0,v1,v4,v3}, com.code_intelligence.jazzer.sanitizers.Deserialization.objectInputStreamInitAfterHook(java.lang.invoke.MethodHandle, java.io.ObjectInputStream, java.lang.Object[], int, java.lang.Object):void 2948 32| const/4 v1, #+6 (0x00000006 | 8.40779e-45) 2949 33| invoke-static {v1}, com.code_intelligence.jazzer.runtime.CoverageMap.recordCoverage(int):void 2950 .line 11 2951 .local v0, "ois", java.io.ObjectInputStream 2952 36| new-array v1, v2, java.lang.Object[] 2953 38| const-method-handle v2, readObject 2954 40| const v3, #+1356244862 (0x50d6a77e | 2.88104e+10) 2955 43| invoke-static {v2,v0,v1,v3}, com.code_intelligence.jazzer.sanitizers.Deserialization.readObjectBeforeHook(java.lang.invoke.MethodHandle, java.io.ObjectInputStream, java.lang.Object[], int):void 2956 46| invoke-virtual {v0}, java.io.ObjectInputStream.readObject():java.lang.Object 2957.............................. end block 1 .............................. 2958 .try_end_1 2959 catch(java.io.IOException) : Label_2 2960 catch(java.lang.ClassNotFoundException) : Label_2 2961 catch(java.lang.NullPointerException) : Label_1 2962 catch(java.lang.NegativeArraySizeException) : Label_1 2963............................. begin block 2 ............................. 2964 .line 16 2965 49| nop 2966 .end_local v0 2967 50| const/4 v0, #+7 (0x00000007 | 9.80909e-45) 2968 51| goto Label_3 2969.............................. end block 2 .............................. 2970............................. begin block 3 ............................. 2971Label_1: 2972 .line 14 2973 52| move-exception v0 2974 53| const/16 v0, #+9 (0x00000009 | 1.26117e-44) 2975 55| invoke-static {v0}, com.code_intelligence.jazzer.runtime.CoverageMap.recordCoverage(int):void 2976 58| goto Label_4 2977.............................. end block 3 .............................. 2978............................. begin block 4 ............................. 2979Label_2: 2980 .line 12 2981 59| move-exception v0 2982 .line 16 2983 60| const/16 v0, #+8 (0x00000008 | 1.12104e-44) 2984.............................. end block 4 .............................. 2985............................. begin block 5 ............................. 2986Label_3: 2987 62| invoke-static {v0}, com.code_intelligence.jazzer.runtime.CoverageMap.recordCoverage(int):void 2988.............................. end block 5 .............................. 2989............................. begin block 6 ............................. 2990Label_4: 2991 .line 17 2992 65| const/16 v0, #+10 (0x0000000a | 1.40130e-44) 2993 67| invoke-static {v0}, com.code_intelligence.jazzer.runtime.CoverageMap.recordCoverage(int):void 2994 70| return-void 2995.............................. end block 6 .............................. 2996} 2997 2998method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.<init>(java.lang.String):void 2999{ 3000............................. begin block 1 ............................. 3001 .params "can" 3002 .src "CannedFuzzedDataProvider.java" 3003 .line 30 3004 .line 30 3005 0| invoke-direct {v5}, java.lang.Object.<init>():void 3006 .line 31 3007 3| invoke-static {}, java.util.Base64.getDecoder():java.util.Base64$Decoder 3008 6| move-result-object v0 3009 7| invoke-virtual {v0,v6}, java.util.Base64$Decoder.decode(java.lang.String):byte[] 3010 10| move-result-object v0 3011.............................. end block 1 .............................. 3012 .try_begin_1 3013............................. begin block 2 ............................. 3014 .line 33 3015 .local v0, "rawIn", byte[] 3016 11| new-instance v1, java.io.ByteArrayInputStream 3017 13| invoke-direct {v1,v0}, java.io.ByteArrayInputStream.<init>(byte[]):void 3018.............................. end block 2 .............................. 3019 .try_end_1 3020 catch(java.io.IOException) : Label_7 3021 catch(java.lang.ClassNotFoundException) : Label_7 3022 .try_begin_2 3023............................. begin block 3 ............................. 3024 .line 34 3025 .local v1, "byteStream", java.io.ByteArrayInputStream 3026 16| new-instance v2, java.io.ObjectInputStream 3027 18| invoke-direct {v2,v1}, java.io.ObjectInputStream.<init>(java.io.InputStream):void 3028.............................. end block 3 .............................. 3029 .try_end_2 3030 catch(...) : Label_4 3031 .try_begin_3 3032............................. begin block 4 ............................. 3033 .line 35 3034 .local v2, "objectStream", java.io.ObjectInputStream 3035 21| invoke-virtual {v2}, java.io.ObjectInputStream.readObject():java.lang.Object 3036 24| move-result-object v3 3037 25| check-cast v3, java.util.ArrayList 3038.............................. end block 4 .............................. 3039 .try_end_3 3040 catch(...) : Label_1 3041 .try_begin_4 3042............................. begin block 5 ............................. 3043 .line 36 3044 .local_ex v3, "recordedReplies", java.util.ArrayList, "Ljava/util/ArrayList<Ljava/lang/Object;>;" 3045 27| invoke-virtual {v2}, java.io.ObjectInputStream.close():void 3046.............................. end block 5 .............................. 3047 .try_end_4 3048 catch(...) : Label_4 3049 .try_begin_5 3050............................. begin block 6 ............................. 3051 .line 37 3052 .end_local v2 3053 30| invoke-virtual {v1}, java.io.ByteArrayInputStream.close():void 3054.............................. end block 6 .............................. 3055 .try_end_5 3056 catch(java.io.IOException) : Label_7 3057 catch(java.lang.ClassNotFoundException) : Label_7 3058............................. begin block 7 ............................. 3059 .line 39 3060 .end_local v1 3061 33| nop 3062 .line 40 3063 34| invoke-virtual {v3}, java.util.ArrayList.iterator():java.util.Iterator 3064 37| move-result-object v1 3065 38| iput-object v1, v5, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3066 .line 41 3067 40| return-void 3068.............................. end block 7 .............................. 3069............................. begin block 8 ............................. 3070Label_1: 3071 .line 34 3072 .end_local v3 3073 .restart_local v1 3074 .restart_local v2 3075 41| move-exception v3 3076.............................. end block 8 .............................. 3077 .try_begin_6 3078............................. begin block 9 ............................. 3079 42| invoke-virtual {v2}, java.io.ObjectInputStream.close():void 3080.............................. end block 9 .............................. 3081 .try_end_6 3082 catch(...) : Label_2 3083............................. begin block 10 ............................. 3084 45| goto Label_3 3085.............................. end block 10 .............................. 3086............................. begin block 11 ............................. 3087Label_2: 3088 46| move-exception v4 3089.............................. end block 11 .............................. 3090 .try_begin_7 3091............................. begin block 12 ............................. 3092 47| invoke-virtual {v3,v4}, java.lang.Throwable.addSuppressed(java.lang.Throwable):void 3093.............................. end block 12 .............................. 3094............................. begin block 13 ............................. 3095Label_3: 3096 .end_local v0 3097 .end_local v1 3098 .end_local v5 3099 .end_local v6 3100 50| throw v3 3101.............................. end block 13 .............................. 3102 .try_end_7 3103 catch(...) : Label_4 3104............................. begin block 14 ............................. 3105Label_4: 3106 .line 33 3107 .end_local v2 3108 .restart_local v0 3109 .restart_local v1 3110 .restart_local v5 3111 .restart_local v6 3112 51| move-exception v2 3113.............................. end block 14 .............................. 3114 .try_begin_8 3115............................. begin block 15 ............................. 3116 52| invoke-virtual {v1}, java.io.ByteArrayInputStream.close():void 3117.............................. end block 15 .............................. 3118 .try_end_8 3119 catch(...) : Label_5 3120............................. begin block 16 ............................. 3121 55| goto Label_6 3122.............................. end block 16 .............................. 3123............................. begin block 17 ............................. 3124Label_5: 3125 56| move-exception v3 3126.............................. end block 17 .............................. 3127 .try_begin_9 3128............................. begin block 18 ............................. 3129 57| invoke-virtual {v2,v3}, java.lang.Throwable.addSuppressed(java.lang.Throwable):void 3130.............................. end block 18 .............................. 3131............................. begin block 19 ............................. 3132Label_6: 3133 .end_local v0 3134 .end_local v5 3135 .end_local v6 3136 60| throw v2 3137.............................. end block 19 .............................. 3138 .try_end_9 3139 catch(java.io.IOException) : Label_7 3140 catch(java.lang.ClassNotFoundException) : Label_7 3141............................. begin block 20 ............................. 3142Label_7: 3143 .line 37 3144 .end_local v1 3145 .restart_local v0 3146 .restart_local v5 3147 .restart_local v6 3148 61| move-exception v1 3149 .line 38 3150 .local v1, "e", java.lang.Exception 3151 62| new-instance v2, java.lang.RuntimeException 3152 64| invoke-direct {v2,v1}, java.lang.RuntimeException.<init>(java.lang.Throwable):void 3153 67| throw v2 3154.............................. end block 20 .............................. 3155} 3156 3157method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.create(java.util.List):com.code_intelligence.jazzer.api.CannedFuzzedDataProvider 3158{ 3159 .try_begin_1 3160............................. begin block 1 ............................. 3161 .params "?" 3162 .src "CannedFuzzedDataProvider.java" 3163 .line 45 3164 .line 45 3165 .local_ex v4, "objects", java.util.List, "Ljava/util/List<Ljava/lang/Object;>;" 3166 0| new-instance v0, java.io.ByteArrayOutputStream 3167 2| invoke-direct {v0}, java.io.ByteArrayOutputStream.<init>():void 3168.............................. end block 1 .............................. 3169 .try_end_1 3170 catch(java.io.IOException) : Label_7 3171 .try_begin_2 3172............................. begin block 2 ............................. 3173 .line 46 3174 .local v0, "bout", java.io.ByteArrayOutputStream 3175 5| new-instance v1, java.io.ObjectOutputStream 3176 7| invoke-direct {v1,v0}, java.io.ObjectOutputStream.<init>(java.io.OutputStream):void 3177.............................. end block 2 .............................. 3178 .try_end_2 3179 catch(...) : Label_4 3180 .try_begin_3 3181............................. begin block 3 ............................. 3182 .line 47 3183 .local v1, "out", java.io.ObjectOutputStream 3184 10| new-instance v2, java.util.ArrayList 3185 12| invoke-direct {v2,v4}, java.util.ArrayList.<init>(java.util.Collection):void 3186 15| invoke-virtual {v1,v2}, java.io.ObjectOutputStream.writeObject(java.lang.Object):void 3187 .line 48 3188 18| invoke-static {}, java.util.Base64.getEncoder():java.util.Base64$Encoder 3189 21| move-result-object v2 3190 22| invoke-virtual {v0}, java.io.ByteArrayOutputStream.toByteArray():byte[] 3191 25| move-result-object v3 3192 26| invoke-virtual {v2,v3}, java.util.Base64$Encoder.encodeToString(byte[]):java.lang.String 3193 29| move-result-object v2 3194 .line 49 3195 .local v2, "base64", java.lang.String 3196 30| new-instance v3, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider 3197 32| invoke-direct {v3,v2}, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.<init>(java.lang.String):void 3198.............................. end block 3 .............................. 3199 .try_end_3 3200 catch(...) : Label_1 3201 .try_begin_4 3202............................. begin block 4 ............................. 3203 .line 50 3204 35| invoke-virtual {v1}, java.io.ObjectOutputStream.close():void 3205.............................. end block 4 .............................. 3206 .try_end_4 3207 catch(...) : Label_4 3208 .try_begin_5 3209............................. begin block 5 ............................. 3210 .line 51 3211 38| invoke-virtual {v0}, java.io.ByteArrayOutputStream.close():void 3212.............................. end block 5 .............................. 3213 .try_end_5 3214 catch(java.io.IOException) : Label_7 3215............................. begin block 6 ............................. 3216 .line 49 3217 41| return-object v3 3218.............................. end block 6 .............................. 3219............................. begin block 7 ............................. 3220Label_1: 3221 .line 46 3222 .end_local v2 3223 42| move-exception v2 3224.............................. end block 7 .............................. 3225 .try_begin_6 3226............................. begin block 8 ............................. 3227 43| invoke-virtual {v1}, java.io.ObjectOutputStream.close():void 3228.............................. end block 8 .............................. 3229 .try_end_6 3230 catch(...) : Label_2 3231............................. begin block 9 ............................. 3232 46| goto Label_3 3233.............................. end block 9 .............................. 3234............................. begin block 10 ............................. 3235Label_2: 3236 47| move-exception v3 3237.............................. end block 10 .............................. 3238 .try_begin_7 3239............................. begin block 11 ............................. 3240 48| invoke-virtual {v2,v3}, java.lang.Throwable.addSuppressed(java.lang.Throwable):void 3241.............................. end block 11 .............................. 3242............................. begin block 12 ............................. 3243Label_3: 3244 .end_local v0 3245 .end_local v4 3246 51| throw v2 3247.............................. end block 12 .............................. 3248 .try_end_7 3249 catch(...) : Label_4 3250............................. begin block 13 ............................. 3251Label_4: 3252 .line 45 3253 .end_local v1 3254 .restart_local v0 3255 .restart_local v4 3256 52| move-exception v1 3257.............................. end block 13 .............................. 3258 .try_begin_8 3259............................. begin block 14 ............................. 3260 53| invoke-virtual {v0}, java.io.ByteArrayOutputStream.close():void 3261.............................. end block 14 .............................. 3262 .try_end_8 3263 catch(...) : Label_5 3264............................. begin block 15 ............................. 3265 56| goto Label_6 3266.............................. end block 15 .............................. 3267............................. begin block 16 ............................. 3268Label_5: 3269 57| move-exception v2 3270.............................. end block 16 .............................. 3271 .try_begin_9 3272............................. begin block 17 ............................. 3273 58| invoke-virtual {v1,v2}, java.lang.Throwable.addSuppressed(java.lang.Throwable):void 3274.............................. end block 17 .............................. 3275............................. begin block 18 ............................. 3276Label_6: 3277 .end_local v4 3278 61| throw v1 3279.............................. end block 18 .............................. 3280 .try_end_9 3281 catch(java.io.IOException) : Label_7 3282............................. begin block 19 ............................. 3283Label_7: 3284 .line 52 3285 .end_local v0 3286 .restart_local v4 3287 62| move-exception v0 3288 .line 53 3289 .local v0, "e", java.io.IOException 3290 63| new-instance v1, java.lang.IllegalStateException 3291 65| invoke-direct {v1,v0}, java.lang.IllegalStateException.<init>(java.lang.Throwable):void 3292 68| throw v1 3293.............................. end block 19 .............................. 3294} 3295 3296method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeAsciiString(int):java.lang.String 3297{ 3298............................. begin block 1 ............................. 3299 .params "maxLength" 3300 .src "CannedFuzzedDataProvider.java" 3301 .line 179 3302 .line 179 3303 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3304 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3305 5| move-result-object v0 3306 6| check-cast v0, java.lang.String 3307 8| return-object v0 3308.............................. end block 1 .............................. 3309} 3310 3311method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeBoolean():boolean 3312{ 3313............................. begin block 1 ............................. 3314 .src "CannedFuzzedDataProvider.java" 3315 .line 59 3316 .line 59 3317 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3318 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3319 5| move-result-object v0 3320 6| check-cast v0, java.lang.Boolean 3321 8| invoke-virtual {v0}, java.lang.Boolean.booleanValue():boolean 3322 11| move-result v0 3323 12| return v0 3324.............................. end block 1 .............................. 3325} 3326 3327method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeBooleans(int):boolean[] 3328{ 3329............................. begin block 1 ............................. 3330 .params "maxLength" 3331 .src "CannedFuzzedDataProvider.java" 3332 .line 64 3333 .line 64 3334 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3335 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3336 5| move-result-object v0 3337 6| check-cast v0, boolean[] 3338 8| return-object v0 3339.............................. end block 1 .............................. 3340} 3341 3342method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeByte():byte 3343{ 3344............................. begin block 1 ............................. 3345 .src "CannedFuzzedDataProvider.java" 3346 .line 69 3347 .line 69 3348 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3349 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3350 5| move-result-object v0 3351 6| check-cast v0, java.lang.Byte 3352 8| invoke-virtual {v0}, java.lang.Byte.byteValue():byte 3353 11| move-result v0 3354 12| return v0 3355.............................. end block 1 .............................. 3356} 3357 3358method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeByte(byte, byte):byte 3359{ 3360............................. begin block 1 ............................. 3361 .params "min", "max" 3362 .src "CannedFuzzedDataProvider.java" 3363 .line 74 3364 .line 74 3365 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3366 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3367 5| move-result-object v0 3368 6| check-cast v0, java.lang.Byte 3369 8| invoke-virtual {v0}, java.lang.Byte.byteValue():byte 3370 11| move-result v0 3371 12| return v0 3372.............................. end block 1 .............................. 3373} 3374 3375method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeBytes(int):byte[] 3376{ 3377............................. begin block 1 ............................. 3378 .params "maxLength" 3379 .src "CannedFuzzedDataProvider.java" 3380 .line 199 3381 .line 199 3382 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3383 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3384 5| move-result-object v0 3385 6| check-cast v0, byte[] 3386 8| return-object v0 3387.............................. end block 1 .............................. 3388} 3389 3390method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeChar():char 3391{ 3392............................. begin block 1 ............................. 3393 .src "CannedFuzzedDataProvider.java" 3394 .line 164 3395 .line 164 3396 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3397 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3398 5| move-result-object v0 3399 6| check-cast v0, java.lang.Character 3400 8| invoke-virtual {v0}, java.lang.Character.charValue():char 3401 11| move-result v0 3402 12| return v0 3403.............................. end block 1 .............................. 3404} 3405 3406method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeChar(char, char):char 3407{ 3408............................. begin block 1 ............................. 3409 .params "min", "max" 3410 .src "CannedFuzzedDataProvider.java" 3411 .line 169 3412 .line 169 3413 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3414 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3415 5| move-result-object v0 3416 6| check-cast v0, java.lang.Character 3417 8| invoke-virtual {v0}, java.lang.Character.charValue():char 3418 11| move-result v0 3419 12| return v0 3420.............................. end block 1 .............................. 3421} 3422 3423method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeCharNoSurrogates():char 3424{ 3425............................. begin block 1 ............................. 3426 .src "CannedFuzzedDataProvider.java" 3427 .line 174 3428 .line 174 3429 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3430 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3431 5| move-result-object v0 3432 6| check-cast v0, java.lang.Character 3433 8| invoke-virtual {v0}, java.lang.Character.charValue():char 3434 11| move-result v0 3435 12| return v0 3436.............................. end block 1 .............................. 3437} 3438 3439method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeDouble():double 3440{ 3441............................. begin block 1 ............................. 3442 .src "CannedFuzzedDataProvider.java" 3443 .line 144 3444 .line 144 3445 0| iget-object v0, v2, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3446 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3447 5| move-result-object v0 3448 6| check-cast v0, java.lang.Double 3449 8| invoke-virtual {v0}, java.lang.Double.doubleValue():double 3450 11| move-result-wide v0:v1 3451 12| return-wide v0:v1 3452.............................. end block 1 .............................. 3453} 3454 3455method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeFloat():float 3456{ 3457............................. begin block 1 ............................. 3458 .src "CannedFuzzedDataProvider.java" 3459 .line 124 3460 .line 124 3461 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3462 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3463 5| move-result-object v0 3464 6| check-cast v0, java.lang.Float 3465 8| invoke-virtual {v0}, java.lang.Float.floatValue():float 3466 11| move-result v0 3467 12| return v0 3468.............................. end block 1 .............................. 3469} 3470 3471method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeInt():int 3472{ 3473............................. begin block 1 ............................. 3474 .src "CannedFuzzedDataProvider.java" 3475 .line 94 3476 .line 94 3477 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3478 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3479 5| move-result-object v0 3480 6| check-cast v0, java.lang.Integer 3481 8| invoke-virtual {v0}, java.lang.Integer.intValue():int 3482 11| move-result v0 3483 12| return v0 3484.............................. end block 1 .............................. 3485} 3486 3487method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeInt(int, int):int 3488{ 3489............................. begin block 1 ............................. 3490 .params "min", "max" 3491 .src "CannedFuzzedDataProvider.java" 3492 .line 99 3493 .line 99 3494 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3495 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3496 5| move-result-object v0 3497 6| check-cast v0, java.lang.Integer 3498 8| invoke-virtual {v0}, java.lang.Integer.intValue():int 3499 11| move-result v0 3500 12| return v0 3501.............................. end block 1 .............................. 3502} 3503 3504method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeInts(int):int[] 3505{ 3506............................. begin block 1 ............................. 3507 .params "maxLength" 3508 .src "CannedFuzzedDataProvider.java" 3509 .line 104 3510 .line 104 3511 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3512 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3513 5| move-result-object v0 3514 6| check-cast v0, int[] 3515 8| return-object v0 3516.............................. end block 1 .............................. 3517} 3518 3519method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeLong():long 3520{ 3521............................. begin block 1 ............................. 3522 .src "CannedFuzzedDataProvider.java" 3523 .line 109 3524 .line 109 3525 0| iget-object v0, v2, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3526 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3527 5| move-result-object v0 3528 6| check-cast v0, java.lang.Long 3529 8| invoke-virtual {v0}, java.lang.Long.longValue():long 3530 11| move-result-wide v0:v1 3531 12| return-wide v0:v1 3532.............................. end block 1 .............................. 3533} 3534 3535method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeLong(long, long):long 3536{ 3537............................. begin block 1 ............................. 3538 .params "min", "max" 3539 .src "CannedFuzzedDataProvider.java" 3540 .line 114 3541 .line 114 3542 0| iget-object v0, v2, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3543 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3544 5| move-result-object v0 3545 6| check-cast v0, java.lang.Long 3546 8| invoke-virtual {v0}, java.lang.Long.longValue():long 3547 11| move-result-wide v0:v1 3548 12| return-wide v0:v1 3549.............................. end block 1 .............................. 3550} 3551 3552method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeLongs(int):long[] 3553{ 3554............................. begin block 1 ............................. 3555 .params "maxLength" 3556 .src "CannedFuzzedDataProvider.java" 3557 .line 119 3558 .line 119 3559 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3560 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3561 5| move-result-object v0 3562 6| check-cast v0, long[] 3563 8| return-object v0 3564.............................. end block 1 .............................. 3565} 3566 3567method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeProbabilityDouble():double 3568{ 3569............................. begin block 1 ............................. 3570 .src "CannedFuzzedDataProvider.java" 3571 .line 159 3572 .line 159 3573 0| iget-object v0, v2, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3574 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3575 5| move-result-object v0 3576 6| check-cast v0, java.lang.Double 3577 8| invoke-virtual {v0}, java.lang.Double.doubleValue():double 3578 11| move-result-wide v0:v1 3579 12| return-wide v0:v1 3580.............................. end block 1 .............................. 3581} 3582 3583method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeProbabilityFloat():float 3584{ 3585............................. begin block 1 ............................. 3586 .src "CannedFuzzedDataProvider.java" 3587 .line 139 3588 .line 139 3589 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3590 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3591 5| move-result-object v0 3592 6| check-cast v0, java.lang.Float 3593 8| invoke-virtual {v0}, java.lang.Float.floatValue():float 3594 11| move-result v0 3595 12| return v0 3596.............................. end block 1 .............................. 3597} 3598 3599method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeRegularDouble():double 3600{ 3601............................. begin block 1 ............................. 3602 .src "CannedFuzzedDataProvider.java" 3603 .line 154 3604 .line 154 3605 0| iget-object v0, v2, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3606 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3607 5| move-result-object v0 3608 6| check-cast v0, java.lang.Double 3609 8| invoke-virtual {v0}, java.lang.Double.doubleValue():double 3610 11| move-result-wide v0:v1 3611 12| return-wide v0:v1 3612.............................. end block 1 .............................. 3613} 3614 3615method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeRegularDouble(double, double):double 3616{ 3617............................. begin block 1 ............................. 3618 .params "min", "max" 3619 .src "CannedFuzzedDataProvider.java" 3620 .line 149 3621 .line 149 3622 0| iget-object v0, v2, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3623 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3624 5| move-result-object v0 3625 6| check-cast v0, java.lang.Double 3626 8| invoke-virtual {v0}, java.lang.Double.doubleValue():double 3627 11| move-result-wide v0:v1 3628 12| return-wide v0:v1 3629.............................. end block 1 .............................. 3630} 3631 3632method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeRegularFloat():float 3633{ 3634............................. begin block 1 ............................. 3635 .src "CannedFuzzedDataProvider.java" 3636 .line 129 3637 .line 129 3638 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3639 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3640 5| move-result-object v0 3641 6| check-cast v0, java.lang.Float 3642 8| invoke-virtual {v0}, java.lang.Float.floatValue():float 3643 11| move-result v0 3644 12| return v0 3645.............................. end block 1 .............................. 3646} 3647 3648method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeRegularFloat(float, float):float 3649{ 3650............................. begin block 1 ............................. 3651 .params "min", "max" 3652 .src "CannedFuzzedDataProvider.java" 3653 .line 134 3654 .line 134 3655 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3656 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3657 5| move-result-object v0 3658 6| check-cast v0, java.lang.Float 3659 8| invoke-virtual {v0}, java.lang.Float.floatValue():float 3660 11| move-result v0 3661 12| return v0 3662.............................. end block 1 .............................. 3663} 3664 3665method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeRemainingAsAsciiString():java.lang.String 3666{ 3667............................. begin block 1 ............................. 3668 .src "CannedFuzzedDataProvider.java" 3669 .line 189 3670 .line 189 3671 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3672 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3673 5| move-result-object v0 3674 6| check-cast v0, java.lang.String 3675 8| return-object v0 3676.............................. end block 1 .............................. 3677} 3678 3679method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeRemainingAsBytes():byte[] 3680{ 3681............................. begin block 1 ............................. 3682 .src "CannedFuzzedDataProvider.java" 3683 .line 204 3684 .line 204 3685 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3686 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3687 5| move-result-object v0 3688 6| check-cast v0, byte[] 3689 8| return-object v0 3690.............................. end block 1 .............................. 3691} 3692 3693method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeRemainingAsString():java.lang.String 3694{ 3695............................. begin block 1 ............................. 3696 .src "CannedFuzzedDataProvider.java" 3697 .line 194 3698 .line 194 3699 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3700 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3701 5| move-result-object v0 3702 6| check-cast v0, java.lang.String 3703 8| return-object v0 3704.............................. end block 1 .............................. 3705} 3706 3707method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeShort():short 3708{ 3709............................. begin block 1 ............................. 3710 .src "CannedFuzzedDataProvider.java" 3711 .line 79 3712 .line 79 3713 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3714 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3715 5| move-result-object v0 3716 6| check-cast v0, java.lang.Short 3717 8| invoke-virtual {v0}, java.lang.Short.shortValue():short 3718 11| move-result v0 3719 12| return v0 3720.............................. end block 1 .............................. 3721} 3722 3723method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeShort(short, short):short 3724{ 3725............................. begin block 1 ............................. 3726 .params "min", "max" 3727 .src "CannedFuzzedDataProvider.java" 3728 .line 84 3729 .line 84 3730 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3731 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3732 5| move-result-object v0 3733 6| check-cast v0, java.lang.Short 3734 8| invoke-virtual {v0}, java.lang.Short.shortValue():short 3735 11| move-result v0 3736 12| return v0 3737.............................. end block 1 .............................. 3738} 3739 3740method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeShorts(int):short[] 3741{ 3742............................. begin block 1 ............................. 3743 .params "maxLength" 3744 .src "CannedFuzzedDataProvider.java" 3745 .line 89 3746 .line 89 3747 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3748 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3749 5| move-result-object v0 3750 6| check-cast v0, short[] 3751 8| return-object v0 3752.............................. end block 1 .............................. 3753} 3754 3755method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.consumeString(int):java.lang.String 3756{ 3757............................. begin block 1 ............................. 3758 .params "maxLength" 3759 .src "CannedFuzzedDataProvider.java" 3760 .line 184 3761 .line 184 3762 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3763 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3764 5| move-result-object v0 3765 6| check-cast v0, java.lang.String 3766 8| return-object v0 3767.............................. end block 1 .............................. 3768} 3769 3770method com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.remainingBytes():int 3771{ 3772............................. begin block 1 ............................. 3773 .src "CannedFuzzedDataProvider.java" 3774 .line 209 3775 .line 209 3776 0| iget-object v0, v1, com.code_intelligence.jazzer.api.CannedFuzzedDataProvider.nextReply 3777 2| invoke-interface {v0}, java.util.Iterator.next():java.lang.Object 3778 5| move-result-object v0 3779 6| check-cast v0, java.lang.Integer 3780 8| invoke-virtual {v0}, java.lang.Integer.intValue():int 3781 11| move-result v0 3782 12| return v0 3783.............................. end block 1 .............................. 3784} 3785