1800242ff:	80 79 01 ff          	cmpb   $0xff,0x1(%rcx)
180024303:	75 0b                	jne    0x180024310
180024305:	48 ff c1             	inc    %rcx
180024308:	41 03 d2             	add    %r10d,%edx
18002430b:	83 fa 02             	cmp    $0x2,%edx
18002430e:	73 ea                	jae    0x1800242fa
180024310:	83 fa 08             	cmp    $0x8,%edx
180024313:	77 2b                	ja     0x180024340
180024315:	85 d2                	test   %edx,%edx
180024317:	74 12                	je     0x18002432b
180024319:	0f b6 01             	movzbl (%rcx),%eax
18002431c:	48 ff c1             	inc    %rcx
18002431f:	49 c1 e0 08          	shl    $0x8,%r8
180024323:	4c 0b c0             	or     %rax,%r8
180024326:	41 03 d2             	add    %r10d,%edx
180024329:	75 ee                	jne    0x180024319
18002432b:	2b 4d f0             	sub    -0x10(%rbp),%ecx
18002432e:	85 c9                	test   %ecx,%ecx
180024330:	7e 0e                	jle    0x180024340
180024332:	45 84 c9             	test   %r9b,%r9b
180024335:	75 09                	jne    0x180024340
180024337:	41 8d 4e ff          	lea    -0x1(%r14),%ecx
18002433b:	49 3b c8             	cmp    %r8,%rcx
18002433e:	76 14                	jbe    0x180024354
180024340:	0f ba 2f 1b          	btsl   $0x1b,(%rdi)
180024344:	eb 09                	jmp    0x18002434f
180024346:	40 84 f6             	test   %sil,%sil
180024349:	75 09                	jne    0x180024354
18002434b:	0f ba 2f 1d          	btsl   $0x1d,(%rdi)
18002434f:	bb 28 04 00 c0       	mov    $0xc0000428,%ebx
180024354:	8b c3                	mov    %ebx,%eax
180024356:	48 8b 4d f8          	mov    -0x8(%rbp),%rcx
18002435a:	48 33 cc             	xor    %rsp,%rcx
18002435d:	e8 ca 17 ff ff       	call   0x180015b2c
180024362:	4c 8d 9c 24 80 00 00 	lea    0x80(%rsp),%r11
180024369:	00
18002436a:	49 8b 5b 28          	mov    0x28(%r11),%rbx
18002436e:	49 8b 73 30          	mov    0x30(%r11),%rsi
180024372:	49 8b e3             	mov    %r11,%rsp
180024375:	41 5e                	pop    %r14
180024377:	5f                   	pop    %rdi
180024378:	5d                   	pop    %rbp
180024379:	c3                   	ret
18002437a:	cc                   	int3
18002437b:	cc                   	int3
18002437c:	48 8b c4             	mov    %rsp,%rax
18002437f:	48 89 58 08          	mov    %rbx,0x8(%rax)
180024383:	57                   	push   %rdi
180024384:	48 83 ec 40          	sub    $0x40,%rsp
180024388:	83 60 e8 00          	andl   $0x0,-0x18(%rax)
18002438c:	48 8b da             	mov    %rdx,%rbx
18002438f:	83 60 e0 00          	andl   $0x0,-0x20(%rax)
180024393:	33 d2                	xor    %edx,%edx
180024395:	83 60 d8 00          	andl   $0x0,-0x28(%rax)
180024399:	45 33 c9             	xor    %r9d,%r9d
18002439c:	45 33 c0             	xor    %r8d,%r8d
18002439f:	48 8b f9             	mov    %rcx,%rdi
1800243a2:	e8 b9 13 00 00       	call   0x180025760
1800243a7:	45 33 c9             	xor    %r9d,%r9d
1800243aa:	c7 44 24 30 01 00 00 	movl   $0x1,0x30(%rsp)
1800243b1:	00
1800243b2:	83 64 24 28 00       	andl   $0x0,0x28(%rsp)
1800243b7:	45 33 c0             	xor    %r8d,%r8d
1800243ba:	48 8b cf             	mov    %rdi,%rcx
1800243bd:	c7 44 24 20 1b 00 00 	movl   $0x1b,0x20(%rsp)
1800243c4:	00
1800243c5:	41 8d 51 10          	lea    0x10(%r9),%edx
1800243c9:	e8 92 13 00 00       	call   0x180025760
1800243ce:	45 33 c9             	xor    %r9d,%r9d
1800243d1:	c7 44 24 30 02 00 00 	movl   $0x2,0x30(%rsp)
1800243d8:	00
1800243d9:	83 64 24 28 00       	andl   $0x0,0x28(%rsp)
1800243de:	45 33 c0             	xor    %r8d,%r8d
1800243e1:	48 8b cf             	mov    %rdi,%rcx
1800243e4:	c7 44 24 20 13 00 00 	movl   $0x13,0x20(%rsp)
1800243eb:	00
1800243ec:	41 8d 51 18          	lea    0x18(%r9),%edx
1800243f0:	e8 6b 13 00 00       	call   0x180025760
1800243f5:	83 64 24 30 00       	andl   $0x0,0x30(%rsp)
1800243fa:	41 b9 67 00 00 00    	mov    $0x67,%r9d
180024400:	83 64 24 28 00       	andl   $0x0,0x28(%rsp)
180024405:	4c 8b c3             	mov    %rbx,%r8
180024408:	48 8b cf             	mov    %rdi,%rcx
18002440b:	c7 44 24 20 09 00 00 	movl   $0x9,0x20(%rsp)
180024412:	00
180024413:	41 8d 51 d9          	lea    -0x27(%r9),%edx
180024417:	e8 44 13 00 00       	call   0x180025760
18002441c:	45 33 c9             	xor    %r9d,%r9d
18002441f:	c7 44 24 30 01 00 00 	movl   $0x1,0x30(%rsp)
180024426:	00
180024427:	c7 44 24 28 03 00 00 	movl   $0x3,0x28(%rsp)
18002442e:	00
18002442f:	45 33 c0             	xor    %r8d,%r8d
180024432:	48 8b cf             	mov    %rdi,%rcx
180024435:	c7 44 24 20 1b 00 00 	movl   $0x1b,0x20(%rsp)
18002443c:	00
18002443d:	41 8d 51 30          	lea    0x30(%r9),%edx
180024441:	e8 1a 13 00 00       	call   0x180025760
180024446:	45 33 c0             	xor    %r8d,%r8d
180024449:	c7 44 24 30 02 00 00 	movl   $0x2,0x30(%rsp)
180024450:	00
180024451:	bb ff ff ff ff       	mov    $0xffffffff,%ebx
180024456:	c7 44 24 28 03 00 00 	movl   $0x3,0x28(%rsp)
18002445d:	00
18002445e:	44 8b cb             	mov    %ebx,%r9d
180024461:	c7 44 24 20 1b 00 00 	movl   $0x1b,0x20(%rsp)
180024468:	00
180024469:	48 8b cf             	mov    %rdi,%rcx
18002446c:	41 8d 50 20          	lea    0x20(%r8),%edx
180024470:	e8 eb 12 00 00       	call   0x180025760
180024475:	45 33 c0             	xor    %r8d,%r8d
180024478:	c7 44 24 30 02 00 00 	movl   $0x2,0x30(%rsp)
18002447f:	00
180024480:	c7 44 24 28 03 00 00 	movl   $0x3,0x28(%rsp)
180024487:	00
180024488:	44 8b cb             	mov    %ebx,%r9d
18002448b:	48 8b cf             	mov    %rdi,%rcx
18002448e:	c7 44 24 20 13 00 00 	movl   $0x13,0x20(%rsp)
180024495:	00
180024496:	41 8d 50 28          	lea    0x28(%r8),%edx
18002449a:	e8 c1 12 00 00       	call   0x180025760
18002449f:	45 33 c0             	xor    %r8d,%r8d
1800244a2:	c7 44 24 30 02 00 00 	movl   $0x2,0x30(%rsp)
1800244a9:	00
1800244aa:	c7 44 24 28 03 00 00 	movl   $0x3,0x28(%rsp)
1800244b1:	00
1800244b2:	41 b9 ff 0f 00 00    	mov    $0xfff,%r9d
1800244b8:	48 8b cf             	mov    %rdi,%rcx
1800244bb:	c7 44 24 20 13 00 00 	movl   $0x13,0x20(%rsp)
1800244c2:	00
1800244c3:	41 8d 50 50          	lea    0x50(%r8),%edx
1800244c7:	e8 94 12 00 00       	call   0x180025760
1800244cc:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1800244d1:	48 83 c4 40          	add    $0x40,%rsp
1800244d5:	5f                   	pop    %rdi
1800244d6:	c3                   	ret
1800244d7:	cc                   	int3
1800244d8:	48 8b c4             	mov    %rsp,%rax
1800244db:	48 89 58 18          	mov    %rbx,0x18(%rax)
1800244df:	48 89 68 20          	mov    %rbp,0x20(%rax)
1800244e3:	56                   	push   %rsi
1800244e4:	57                   	push   %rdi
1800244e5:	41 54                	push   %r12
1800244e7:	41 55                	push   %r13
1800244e9:	41 56                	push   %r14
1800244eb:	48 83 ec 20          	sub    $0x20,%rsp
1800244ef:	4c 8b e1             	mov    %rcx,%r12
1800244f2:	48 8d 50 08          	lea    0x8(%rax),%rdx
1800244f6:	33 ff                	xor    %edi,%edi
1800244f8:	33 db                	xor    %ebx,%ebx
1800244fa:	40 88 39             	mov    %dil,(%rcx)
1800244fd:	48 8d 48 10          	lea    0x10(%rax),%rcx
180024501:	e8 66 01 00 00       	call   0x18002466c
180024506:	83 7c 24 50 ff       	cmpl   $0xffffffff,0x50(%rsp)
18002450b:	0f 84 3e 01 00 00    	je     0x18002464f
180024511:	ba 41 50 49 43       	mov    $0x43495041,%edx
180024516:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
18002451b:	e8 f8 ea 06 00       	call   0x180093018
180024520:	8b f8                	mov    %eax,%edi
180024522:	85 c0                	test   %eax,%eax
180024524:	0f 88 25 01 00 00    	js     0x18002464f
18002452a:	48 8b 4c 24 58       	mov    0x58(%rsp),%rcx
18002452f:	44 8d 53 01          	lea    0x1(%rbx),%r10d
180024533:	33 f6                	xor    %esi,%esi
180024535:	45 33 ed             	xor    %r13d,%r13d
180024538:	44 8b 71 04          	mov    0x4(%rcx),%r14d
18002453c:	48 8d 41 2c          	lea    0x2c(%rcx),%rax
180024540:	4c 03 f1             	add    %rcx,%r14
180024543:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
180024548:	33 ed                	xor    %ebp,%ebp
18002454a:	48 8b c8             	mov    %rax,%rcx
18002454d:	48 83 c0 02          	add    $0x2,%rax
180024551:	eb 68                	jmp    0x1800245bb
180024553:	0f b6 51 01          	movzbl 0x1(%rcx),%edx
180024557:	80 fa 02             	cmp    $0x2,%dl
18002455a:	72 64                	jb     0x1800245c0
18002455c:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
180024560:	49 3b c6             	cmp    %r14,%rax
180024563:	77 5b                	ja     0x1800245c0
180024565:	8a 01                	mov    (%rcx),%al
180024567:	45 32 c0             	xor    %r8b,%r8b
18002456a:	45 33 c9             	xor    %r9d,%r9d
18002456d:	84 c0                	test   %al,%al
18002456f:	75 12                	jne    0x180024583
180024571:	80 fa 08             	cmp    $0x8,%dl
180024574:	75 23                	jne    0x180024599
180024576:	44 84 51 04          	test   %r10b,0x4(%rcx)
18002457a:	74 1d                	je     0x180024599
18002457c:	44 0f b6 49 03       	movzbl 0x3(%rcx),%r9d
180024581:	eb 13                	jmp    0x180024596
180024583:	3c 09                	cmp    $0x9,%al
180024585:	75 12                	jne    0x180024599
180024587:	80 fa 10             	cmp    $0x10,%dl
18002458a:	75 0d                	jne    0x180024599
18002458c:	44 84 51 08          	test   %r10b,0x8(%rcx)
180024590:	74 07                	je     0x180024599
180024592:	44 8b 49 04          	mov    0x4(%rcx),%r9d
180024596:	45 8a c2             	mov    %r10b,%r8b
180024599:	45 84 c0             	test   %r8b,%r8b
18002459c:	74 13                	je     0x1800245b1
18002459e:	85 ed                	test   %ebp,%ebp
1800245a0:	75 05                	jne    0x1800245a7
1800245a2:	41 03 f2             	add    %r10d,%esi
1800245a5:	eb 0a                	jmp    0x1800245b1
1800245a7:	46 89 0c ab          	mov    %r9d,(%rbx,%r13,4)
1800245ab:	45 03 ea             	add    %r10d,%r13d
1800245ae:	8a 51 01             	mov    0x1(%rcx),%dl
1800245b1:	0f b6 c2             	movzbl %dl,%eax
1800245b4:	48 03 c8             	add    %rax,%rcx
1800245b7:	48 8d 41 02          	lea    0x2(%rcx),%rax
1800245bb:	49 3b c6             	cmp    %r14,%rax
1800245be:	76 93                	jbe    0x180024553
1800245c0:	85 ed                	test   %ebp,%ebp
1800245c2:	75 1f                	jne    0x1800245e3
1800245c4:	41 3b f2             	cmp    %r10d,%esi
1800245c7:	76 79                	jbe    0x180024642
1800245c9:	8b ce                	mov    %esi,%ecx
1800245cb:	48 c1 e1 02          	shl    $0x2,%rcx
1800245cf:	e8 7c 58 07 00       	call   0x180099e50
1800245d4:	48 8b d8             	mov    %rax,%rbx
1800245d7:	48 85 c0             	test   %rax,%rax
1800245da:	75 1e                	jne    0x1800245fa
1800245dc:	bf 17 00 00 c0       	mov    $0xc0000017,%edi
1800245e1:	eb 6c                	jmp    0x18002464f
1800245e3:	8b d6                	mov    %esi,%edx
1800245e5:	4c 8d 0d a8 02 00 00 	lea    0x2a8(%rip),%r9        # 0x180024894
1800245ec:	41 b8 04 00 00 00    	mov    $0x4,%r8d
1800245f2:	48 8b cb             	mov    %rbx,%rcx
1800245f5:	e8 56 6c 10 00       	call   0x18012b250
1800245fa:	41 ba 01 00 00 00    	mov    $0x1,%r10d
180024600:	41 03 ea             	add    %r10d,%ebp
180024603:	83 fd 02             	cmp    $0x2,%ebp
180024606:	73 0a                	jae    0x180024612
180024608:	48 8b 44 24 58       	mov    0x58(%rsp),%rax
18002460d:	e9 38 ff ff ff       	jmp    0x18002454a
180024612:	8b 03                	mov    (%rbx),%eax
180024614:	45 8b c2             	mov    %r10d,%r8d
180024617:	23 44 24 50          	and    0x50(%rsp),%eax
18002461b:	41 3b f2             	cmp    %r10d,%esi
18002461e:	76 22                	jbe    0x180024642
180024620:	48 8d 53 04          	lea    0x4(%rbx),%rdx
180024624:	8b 4c 24 50          	mov    0x50(%rsp),%ecx
180024628:	23 0a                	and    (%rdx),%ecx
18002462a:	3b c8                	cmp    %eax,%ecx
18002462c:	74 10                	je     0x18002463e
18002462e:	45 03 c2             	add    %r10d,%r8d
180024631:	48 83 c2 04          	add    $0x4,%rdx
180024635:	8b c1                	mov    %ecx,%eax
180024637:	44 3b c6             	cmp    %esi,%r8d
18002463a:	72 e8                	jb     0x180024624
18002463c:	eb 04                	jmp    0x180024642
18002463e:	45 88 14 24          	mov    %r10b,(%r12)
180024642:	48 85 db             	test   %rbx,%rbx
180024645:	74 08                	je     0x18002464f
180024647:	48 8b cb             	mov    %rbx,%rcx
18002464a:	e8 ad 59 07 00       	call   0x180099ffc
18002464f:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
180024654:	8b c7                	mov    %edi,%eax
180024656:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
18002465b:	48 83 c4 20          	add    $0x20,%rsp
18002465f:	41 5e                	pop    %r14
180024661:	41 5d                	pop    %r13
180024663:	41 5c                	pop    %r12
180024665:	5f                   	pop    %rdi
180024666:	5e                   	pop    %rsi
180024667:	c3                   	ret
180024668:	cc                   	int3
180024669:	cc                   	int3
18002466a:	cc                   	int3
18002466b:	cc                   	int3
18002466c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180024671:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
180024676:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
18002467b:	55                   	push   %rbp
18002467c:	41 54                	push   %r12
18002467e:	41 55                	push   %r13
180024680:	41 56                	push   %r14
180024682:	41 57                	push   %r15
180024684:	48 8b ec             	mov    %rsp,%rbp
180024687:	48 83 ec 50          	sub    $0x50,%rsp
18002468b:	4c 8b e2             	mov    %rdx,%r12
18002468e:	4c 8d 45 d0          	lea    -0x30(%rbp),%r8
180024692:	4c 8b e9             	mov    %rcx,%r13
180024695:	41 bf 01 00 00 00    	mov    $0x1,%r15d
18002469b:	33 d2                	xor    %edx,%edx
18002469d:	33 c9                	xor    %ecx,%ecx
18002469f:	41 8b df             	mov    %r15d,%ebx
1800246a2:	41 8b ff             	mov    %r15d,%edi
1800246a5:	e8 f6 f4 10 00       	call   0x180133ba0
1800246aa:	44 8b 75 d0          	mov    -0x30(%rbp),%r14d
1800246ae:	4c 8d 45 e0          	lea    -0x20(%rbp),%r8
1800246b2:	33 d2                	xor    %edx,%edx
1800246b4:	41 8b cf             	mov    %r15d,%ecx
1800246b7:	e8 e4 f4 10 00       	call   0x180133ba0
1800246bc:	4c 8d 45 d0          	lea    -0x30(%rbp),%r8
1800246c0:	33 d2                	xor    %edx,%edx
1800246c2:	b9 00 00 00 80       	mov    $0x80000000,%ecx
1800246c7:	e8 d4 f4 10 00       	call   0x180133ba0
1800246cc:	8b 75 d0             	mov    -0x30(%rbp),%esi
1800246cf:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
1800246d3:	33 d2                	xor    %edx,%edx
1800246d5:	b9 01 00 00 80       	mov    $0x80000001,%ecx
1800246da:	e8 c1 f4 10 00       	call   0x180133ba0
1800246df:	e8 c8 01 00 00       	call   0x1800248ac
1800246e4:	8b c8                	mov    %eax,%ecx
1800246e6:	83 c0 fe             	add    $0xfffffffe,%eax
1800246e9:	41 3b c7             	cmp    %r15d,%eax
1800246ec:	76 7d                	jbe    0x18002476b
1800246ee:	41 3b cf             	cmp    %r15d,%ecx
1800246f1:	0f 85 70 01 00 00    	jne    0x180024867
1800246f7:	b9 08 00 00 80       	mov    $0x80000008,%ecx
1800246fc:	3b f1                	cmp    %ecx,%esi
1800246fe:	0f 82 63 01 00 00    	jb     0x180024867
180024704:	4c 8d 45 d0          	lea    -0x30(%rbp),%r8
180024708:	33 d2                	xor    %edx,%edx
18002470a:	e8 91 f4 10 00       	call   0x180133ba0
18002470f:	8b 4d d8             	mov    -0x28(%rbp),%ecx
180024712:	c1 e9 0c             	shr    $0xc,%ecx
180024715:	83 e1 0f             	and    $0xf,%ecx
180024718:	75 19                	jne    0x180024733
18002471a:	0f b6 45 d8          	movzbl -0x28(%rbp),%eax
18002471e:	8d 04 45 01 00 00 00 	lea    0x1(,%rax,2),%eax
180024725:	0f bd c8             	bsr    %eax,%ecx
180024728:	0f 95 c0             	setne  %al
18002472b:	84 c0                	test   %al,%al
18002472d:	75 04                	jne    0x180024733
18002472f:	33 db                	xor    %ebx,%ebx
180024731:	eb 02                	jmp    0x180024735
180024733:	d3 e3                	shl    %cl,%ebx
180024735:	b9 1e 00 00 80       	mov    $0x8000001e,%ecx
18002473a:	3b f1                	cmp    %ecx,%esi
18002473c:	0f 82 25 01 00 00    	jb     0x180024867
180024742:	f7 45 f8 00 00 40 00 	testl  $0x400000,-0x8(%rbp)
180024749:	0f 84 18 01 00 00    	je     0x180024867
18002474f:	4c 8d 45 d0          	lea    -0x30(%rbp),%r8
180024753:	33 d2                	xor    %edx,%edx
180024755:	e8 46 f4 10 00       	call   0x180133ba0
18002475a:	8b 45 d4             	mov    -0x2c(%rbp),%eax
18002475d:	c1 e8 08             	shr    $0x8,%eax
180024760:	0f b6 f8             	movzbl %al,%edi
180024763:	41 03 ff             	add    %r15d,%edi
180024766:	e9 fc 00 00 00       	jmp    0x180024867
18002476b:	45 33 ff             	xor    %r15d,%r15d
18002476e:	41 8d 77 1f          	lea    0x1f(%r15),%esi
180024772:	44 3b f6             	cmp    %esi,%r14d
180024775:	72 13                	jb     0x18002478a
180024777:	4c 8d 45 d0          	lea    -0x30(%rbp),%r8
18002477b:	33 d2                	xor    %edx,%edx
18002477d:	8b ce                	mov    %esi,%ecx
18002477f:	e8 1c f4 10 00       	call   0x180133ba0