1406b13f4:	48 83 ec 30          	sub    $0x30,%rsp
1406b13f8:	4d 63 f1             	movslq %r9d,%r14
1406b13fb:	4d 8b f8             	mov    %r8,%r15
1406b13fe:	33 ed                	xor    %ebp,%ebp
1406b1400:	4c 8b 52 18          	mov    0x18(%rdx),%r10
1406b1404:	48 8b 44 24 70       	mov    0x70(%rsp),%rax
1406b1409:	48 8b 08             	mov    (%rax),%rcx
1406b140c:	48 63 51 04          	movslq 0x4(%rcx),%rdx
1406b1410:	49 8b 02             	mov    (%r10),%rax
1406b1413:	48 8b 1c d0          	mov    (%rax,%rdx,8),%rbx
1406b1417:	b9 50 00 00 00       	mov    $0x50,%ecx
1406b141c:	e8 e7 9c 76 00       	call   0x140e1b108
1406b1421:	48 89 44 24 70       	mov    %rax,0x70(%rsp)
1406b1426:	48 85 c0             	test   %rax,%rax
1406b1429:	74 17                	je     0x1406b1442
1406b142b:	4c 8d 05 b2 90 90 00 	lea    0x9090b2(%rip),%r8        # 0x140fba4e4
1406b1432:	48 8b d3             	mov    %rbx,%rdx
1406b1435:	48 8b c8             	mov    %rax,%rcx
1406b1438:	e8 73 a7 13 00       	call   0x1407ebbb0
1406b143d:	48 8b f0             	mov    %rax,%rsi
1406b1440:	eb 03                	jmp    0x1406b1445
1406b1442:	48 8b f5             	mov    %rbp,%rsi
1406b1445:	48 8b de             	mov    %rsi,%rbx
1406b1448:	48 89 5c 24 58       	mov    %rbx,0x58(%rsp)
1406b144d:	b9 28 00 00 00       	mov    $0x28,%ecx
1406b1452:	e8 b1 9c 76 00       	call   0x140e1b108
1406b1457:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1406b145c:	48 85 c0             	test   %rax,%rax
1406b145f:	74 22                	je     0x1406b1483
1406b1461:	48 8b dd             	mov    %rbp,%rbx
1406b1464:	48 89 5c 24 58       	mov    %rbx,0x58(%rsp)
1406b1469:	48 89 74 24 70       	mov    %rsi,0x70(%rsp)
1406b146e:	48 8d 54 24 70       	lea    0x70(%rsp),%rdx
1406b1473:	48 8b c8             	mov    %rax,%rcx
1406b1476:	e8 35 01 08 00       	call   0x1407315b0
1406b147b:	48 8b f8             	mov    %rax,%rdi
1406b147e:	48 8b f5             	mov    %rbp,%rsi
1406b1481:	eb 06                	jmp    0x1406b1489
1406b1483:	48 8b fd             	mov    %rbp,%rdi
1406b1486:	48 8b ee             	mov    %rsi,%rbp
1406b1489:	48 85 ed             	test   %rbp,%rbp
1406b148c:	74 27                	je     0x1406b14b5
1406b148e:	8b 46 10             	mov    0x10(%rsi),%eax
1406b1491:	ff c8                	dec    %eax
1406b1493:	89 46 10             	mov    %eax,0x10(%rsi)
1406b1496:	85 c0                	test   %eax,%eax
1406b1498:	7f 1b                	jg     0x1406b14b5
1406b149a:	0f 88 b4 00 00 00    	js     0x1406b1554
1406b14a0:	48 8b 03             	mov    (%rbx),%rax
1406b14a3:	ba 01 00 00 00       	mov    $0x1,%edx
1406b14a8:	48 8b cb             	mov    %rbx,%rcx
1406b14ab:	48 8b 00             	mov    (%rax),%rax
1406b14ae:	ff 15 6c 25 8d 00    	call   *0x8d256c(%rip)        # 0x140f83a20
1406b14b4:	90                   	nop
1406b14b5:	49 8b 07             	mov    (%r15),%rax
1406b14b8:	4a 8d 14 f0          	lea    (%rax,%r14,8),%rdx
1406b14bc:	48 85 ff             	test   %rdi,%rdi
1406b14bf:	74 1c                	je     0x1406b14dd
1406b14c1:	8b 47 10             	mov    0x10(%rdi),%eax
1406b14c4:	ff c0                	inc    %eax
1406b14c6:	89 47 10             	mov    %eax,0x10(%rdi)
1406b14c9:	83 f8 01             	cmp    $0x1,%eax
1406b14cc:	0f 8e 8d 00 00 00    	jle    0x1406b155f
1406b14d2:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1406b14d7:	0f 84 8a 00 00 00    	je     0x1406b1567
1406b14dd:	48 8b 0a             	mov    (%rdx),%rcx
1406b14e0:	48 89 3a             	mov    %rdi,(%rdx)
1406b14e3:	48 85 c9             	test   %rcx,%rcx
1406b14e6:	74 20                	je     0x1406b1508
1406b14e8:	8b 41 10             	mov    0x10(%rcx),%eax
1406b14eb:	ff c8                	dec    %eax
1406b14ed:	89 41 10             	mov    %eax,0x10(%rcx)
1406b14f0:	85 c0                	test   %eax,%eax
1406b14f2:	7f 14                	jg     0x1406b1508
1406b14f4:	78 7c                	js     0x1406b1572
1406b14f6:	48 8b 01             	mov    (%rcx),%rax
1406b14f9:	ba 01 00 00 00       	mov    $0x1,%edx
1406b14fe:	48 8b 00             	mov    (%rax),%rax
1406b1501:	ff 15 19 25 8d 00    	call   *0x8d2519(%rip)        # 0x140f83a20
1406b1507:	90                   	nop
1406b1508:	48 85 ff             	test   %rdi,%rdi
1406b150b:	74 23                	je     0x1406b1530
1406b150d:	8b 47 10             	mov    0x10(%rdi),%eax
1406b1510:	ff c8                	dec    %eax
1406b1512:	89 47 10             	mov    %eax,0x10(%rdi)
1406b1515:	85 c0                	test   %eax,%eax
1406b1517:	7f 17                	jg     0x1406b1530
1406b1519:	78 2e                	js     0x1406b1549
1406b151b:	48 8b 07             	mov    (%rdi),%rax
1406b151e:	ba 01 00 00 00       	mov    $0x1,%edx
1406b1523:	48 8b cf             	mov    %rdi,%rcx
1406b1526:	48 8b 00             	mov    (%rax),%rax
1406b1529:	ff 15 f1 24 8d 00    	call   *0x8d24f1(%rip)        # 0x140f83a20
1406b152f:	90                   	nop
1406b1530:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1406b1535:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
1406b153a:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
1406b153f:	48 83 c4 30          	add    $0x30,%rsp
1406b1543:	41 5f                	pop    %r15
1406b1545:	41 5e                	pop    %r14
1406b1547:	5f                   	pop    %rdi
1406b1548:	c3                   	ret
1406b1549:	b9 02 00 00 00       	mov    $0x2,%ecx
1406b154e:	e8 ad 91 0d 00       	call   0x14078a700
1406b1553:	90                   	nop
1406b1554:	b9 02 00 00 00       	mov    $0x2,%ecx
1406b1559:	e8 a2 91 0d 00       	call   0x14078a700
1406b155e:	90                   	nop
1406b155f:	33 c9                	xor    %ecx,%ecx
1406b1561:	e8 9a 91 0d 00       	call   0x14078a700
1406b1566:	cc                   	int3
1406b1567:	b9 01 00 00 00       	mov    $0x1,%ecx
1406b156c:	e8 8f 91 0d 00       	call   0x14078a700
1406b1571:	90                   	nop
1406b1572:	b9 02 00 00 00       	mov    $0x2,%ecx
1406b1577:	e8 84 91 0d 00       	call   0x14078a700
1406b157c:	cc                   	int3
1406b157d:	cc                   	int3
1406b157e:	cc                   	int3
1406b157f:	cc                   	int3
1406b1580:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1406b1585:	55                   	push   %rbp
1406b1586:	56                   	push   %rsi
1406b1587:	57                   	push   %rdi
1406b1588:	41 54                	push   %r12
1406b158a:	41 55                	push   %r13
1406b158c:	41 56                	push   %r14
1406b158e:	41 57                	push   %r15
1406b1590:	48 81 ec 80 00 00 00 	sub    $0x80,%rsp
1406b1597:	4d 63 f9             	movslq %r9d,%r15
1406b159a:	4d 8b e0             	mov    %r8,%r12
1406b159d:	48 8b ea             	mov    %rdx,%rbp
1406b15a0:	48 8b bc 24 e0 00 00 	mov    0xe0(%rsp),%rdi
1406b15a7:	00
1406b15a8:	48 8b 1f             	mov    (%rdi),%rbx
1406b15ab:	48 8b 7f 08          	mov    0x8(%rdi),%rdi
1406b15af:	4c 63 33             	movslq (%rbx),%r14
1406b15b2:	48 8b 4a 18          	mov    0x18(%rdx),%rcx
1406b15b6:	4c 63 53 04          	movslq 0x4(%rbx),%r10
1406b15ba:	48 8b 01             	mov    (%rcx),%rax
1406b15bd:	4a 8b 34 d0          	mov    (%rax,%r10,8),%rsi
1406b15c1:	44 8b 6b 08          	mov    0x8(%rbx),%r13d
1406b15c5:	48 83 c3 0c          	add    $0xc,%rbx
1406b15c9:	0f 57 c0             	xorps  %xmm0,%xmm0
1406b15cc:	f3 0f 7f 44 24 30    	movdqu %xmm0,0x30(%rsp)
1406b15d2:	45 33 c0             	xor    %r8d,%r8d
1406b15d5:	4c 89 44 24 40       	mov    %r8,0x40(%rsp)
1406b15da:	48 3b df             	cmp    %rdi,%rbx
1406b15dd:	74 62                	je     0x1406b1641
1406b15df:	4c 8b 4c 24 38       	mov    0x38(%rsp),%r9
1406b15e4:	0f 1f 40 00          	nopl   0x0(%rax)
1406b15e8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
1406b15ef:	00
1406b15f0:	48 63 13             	movslq (%rbx),%rdx
1406b15f3:	48 83 c3 04          	add    $0x4,%rbx
1406b15f7:	48 8b 4d 20          	mov    0x20(%rbp),%rcx
1406b15fb:	48 8b 01             	mov    (%rcx),%rax
1406b15fe:	48 8b 0c d0          	mov    (%rax,%rdx,8),%rcx
1406b1602:	48 89 8c 24 e0 00 00 	mov    %rcx,0xe0(%rsp)
1406b1609:	00
1406b160a:	4d 3b c8             	cmp    %r8,%r9
1406b160d:	74 0e                	je     0x1406b161d
1406b160f:	49 89 09             	mov    %rcx,(%r9)
1406b1612:	49 83 c1 08          	add    $0x8,%r9
1406b1616:	4c 89 4c 24 38       	mov    %r9,0x38(%rsp)
1406b161b:	eb 1f                	jmp    0x1406b163c
1406b161d:	4c 8d 84 24 e0 00 00 	lea    0xe0(%rsp),%r8
1406b1624:	00
1406b1625:	49 8b d1             	mov    %r9,%rdx
1406b1628:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1406b162d:	e8 8e 99 cc ff       	call   0x14037afc0
1406b1632:	4c 8b 44 24 40       	mov    0x40(%rsp),%r8
1406b1637:	4c 8b 4c 24 38       	mov    0x38(%rsp),%r9
1406b163c:	48 3b df             	cmp    %rdi,%rbx
1406b163f:	75 af                	jne    0x1406b15f0
1406b1641:	48 8b 45 28          	mov    0x28(%rbp),%rax
1406b1645:	48 8b 00             	mov    (%rax),%rax
1406b1648:	4a 8d 1c f0          	lea    (%rax,%r14,8),%rbx
1406b164c:	48 8d 44 24 48       	lea    0x48(%rsp),%rax
1406b1651:	48 89 84 24 c8 00 00 	mov    %rax,0xc8(%rsp)
1406b1658:	00
1406b1659:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1406b165e:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
1406b1663:	e8 c8 34 ef ff       	call   0x1405a4b30
1406b1668:	48 8b f8             	mov    %rax,%rdi
1406b166b:	0f 57 c0             	xorps  %xmm0,%xmm0
1406b166e:	0f 11 44 24 60       	movups %xmm0,0x60(%rsp)
1406b1673:	33 c0                	xor    %eax,%eax
1406b1675:	48 89 44 24 70       	mov    %rax,0x70(%rsp)
1406b167a:	48 89 44 24 78       	mov    %rax,0x78(%rsp)
1406b167f:	49 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%r8
1406b1686:	49 ff c0             	inc    %r8
1406b1689:	42 38 04 06          	cmp    %al,(%rsi,%r8,1)
1406b168d:	75 f7                	jne    0x1406b1686
1406b168f:	48 8b d6             	mov    %rsi,%rdx
1406b1692:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
1406b1697:	e8 64 57 ae ff       	call   0x140196e00
1406b169c:	90                   	nop
1406b169d:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1406b16a2:	4c 8b cf             	mov    %rdi,%r9
1406b16a5:	45 8b c5             	mov    %r13d,%r8d
1406b16a8:	48 8d 54 24 60       	lea    0x60(%rsp),%rdx
1406b16ad:	48 8d 8c 24 e0 00 00 	lea    0xe0(%rsp),%rcx
1406b16b4:	00
1406b16b5:	e8 e6 ce ff ff       	call   0x1406ae5a0
1406b16ba:	49 8b 0c 24          	mov    (%r12),%rcx
1406b16be:	4e 8d 04 f9          	lea    (%rcx,%r15,8),%r8
1406b16c2:	49 8b 10             	mov    (%r8),%rdx
1406b16c5:	48 8b 08             	mov    (%rax),%rcx
1406b16c8:	49 89 08             	mov    %rcx,(%r8)
1406b16cb:	48 89 10             	mov    %rdx,(%rax)
1406b16ce:	48 8b 8c 24 e0 00 00 	mov    0xe0(%rsp),%rcx
1406b16d5:	00
1406b16d6:	48 85 c9             	test   %rcx,%rcx
1406b16d9:	74 20                	je     0x1406b16fb
1406b16db:	8b 41 10             	mov    0x10(%rcx),%eax
1406b16de:	ff c8                	dec    %eax
1406b16e0:	89 41 10             	mov    %eax,0x10(%rcx)
1406b16e3:	85 c0                	test   %eax,%eax
1406b16e5:	7f 14                	jg     0x1406b16fb
1406b16e7:	78 6f                	js     0x1406b1758
1406b16e9:	48 8b 01             	mov    (%rcx),%rax
1406b16ec:	ba 01 00 00 00       	mov    $0x1,%edx
1406b16f1:	48 8b 00             	mov    (%rax),%rax
1406b16f4:	ff 15 26 23 8d 00    	call   *0x8d2326(%rip)        # 0x140f83a20
1406b16fa:	90                   	nop
1406b16fb:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
1406b1700:	48 85 c9             	test   %rcx,%rcx
1406b1703:	74 32                	je     0x1406b1737
1406b1705:	48 8b 54 24 40       	mov    0x40(%rsp),%rdx
1406b170a:	48 2b d1             	sub    %rcx,%rdx
1406b170d:	48 83 e2 f8          	and    $0xfffffffffffffff8,%rdx
1406b1711:	48 8b c1             	mov    %rcx,%rax
1406b1714:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1406b171b:	72 15                	jb     0x1406b1732
1406b171d:	48 83 c2 27          	add    $0x27,%rdx
1406b1721:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
1406b1725:	48 2b c1             	sub    %rcx,%rax
1406b1728:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
1406b172c:	48 83 f8 1f          	cmp    $0x1f,%rax
1406b1730:	77 20                	ja     0x1406b1752
1406b1732:	e8 0d 9a 76 00       	call   0x140e1b144
1406b1737:	48 8b 9c 24 c0 00 00 	mov    0xc0(%rsp),%rbx
1406b173e:	00
1406b173f:	48 81 c4 80 00 00 00 	add    $0x80,%rsp
1406b1746:	41 5f                	pop    %r15
1406b1748:	41 5e                	pop    %r14
1406b174a:	41 5d                	pop    %r13
1406b174c:	41 5c                	pop    %r12
1406b174e:	5f                   	pop    %rdi
1406b174f:	5e                   	pop    %rsi
1406b1750:	5d                   	pop    %rbp
1406b1751:	c3                   	ret
1406b1752:	e8 4d 8a 77 00       	call   0x140e2a1a4
1406b1757:	90                   	nop
1406b1758:	b9 02 00 00 00       	mov    $0x2,%ecx
1406b175d:	e8 9e 8f 0d 00       	call   0x14078a700
1406b1762:	cc                   	int3
1406b1763:	cc                   	int3
1406b1764:	cc                   	int3
1406b1765:	cc                   	int3
1406b1766:	cc                   	int3
1406b1767:	cc                   	int3
1406b1768:	cc                   	int3
1406b1769:	cc                   	int3
1406b176a:	cc                   	int3
1406b176b:	cc                   	int3
1406b176c:	cc                   	int3
1406b176d:	cc                   	int3
1406b176e:	cc                   	int3
1406b176f:	cc                   	int3
1406b1770:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1406b1775:	44 89 4c 24 20       	mov    %r9d,0x20(%rsp)
1406b177a:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
1406b177f:	55                   	push   %rbp
1406b1780:	56                   	push   %rsi
1406b1781:	57                   	push   %rdi
1406b1782:	41 54                	push   %r12
1406b1784:	41 55                	push   %r13
1406b1786:	41 56                	push   %r14
1406b1788:	41 57                	push   %r15
1406b178a:	48 83 ec 60          	sub    $0x60,%rsp
1406b178e:	4c 8b fa             	mov    %rdx,%r15
1406b1791:	b9 40 00 00 00       	mov    $0x40,%ecx
1406b1796:	e8 6d 99 76 00       	call   0x140e1b108
1406b179b:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1406b17a0:	48 85 c0             	test   %rax,%rax
1406b17a3:	74 14                	je     0x1406b17b9
1406b17a5:	ba 0d 00 00 00       	mov    $0xd,%edx
1406b17aa:	48 8b c8             	mov    %rax,%rcx
1406b17ad:	e8 4e ff 07 00       	call   0x140731700
1406b17b2:	48 8b f8             	mov    %rax,%rdi
1406b17b5:	33 d2                	xor    %edx,%edx
1406b17b7:	eb 04                	jmp    0x1406b17bd
1406b17b9:	33 d2                	xor    %edx,%edx
1406b17bb:	8b fa                	mov    %edx,%edi
1406b17bd:	48 89 7c 24 28       	mov    %rdi,0x28(%rsp)
1406b17c2:	48 8b 84 24 c0 00 00 	mov    0xc0(%rsp),%rax
1406b17c9:	00
1406b17ca:	4c 8b 30             	mov    (%rax),%r14
1406b17cd:	4c 8b 68 08          	mov    0x8(%rax),%r13
1406b17d1:	4d 3b f5             	cmp    %r13,%r14
1406b17d4:	0f 84 18 01 00 00    	je     0x1406b18f2
1406b17da:	49 b8 92 24 49 92 24 	movabs $0x492492492492492,%r8
1406b17e1:	49 92 04
1406b17e4:	0f 1f 40 00          	nopl   0x0(%rax)
1406b17e8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
1406b17ef:	00
1406b17f0:	49 8b 07             	mov    (%r15),%rax
1406b17f3:	49 63 0e             	movslq (%r14),%rcx
1406b17f6:	48 8b 00             	mov    (%rax),%rax
1406b17f9:	44 8b 64 c8 04       	mov    0x4(%rax,%rcx,8),%r12d
1406b17fe:	8b 1c c8             	mov    (%rax,%rcx,8),%ebx
1406b1801:	49 8b 77 08          	mov    0x8(%r15),%rsi
1406b1805:	48 8b 2e             	mov    (%rsi),%rbp
1406b1808:	48 8b 45 08          	mov    0x8(%rbp),%rax
1406b180c:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
1406b1811:	89 54 24 48          	mov    %edx,0x48(%rsp)
1406b1815:	48 8b cd             	mov    %rbp,%rcx
1406b1818:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
1406b181c:	75 2a                	jne    0x1406b1848
1406b181e:	66 90                	xchg   %ax,%ax
1406b1820:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
1406b1825:	39 58 20             	cmp    %ebx,0x20(%rax)
1406b1828:	7d 0a                	jge    0x1406b1834
1406b182a:	89 54 24 48          	mov    %edx,0x48(%rsp)
1406b182e:	48 8b 40 10          	mov    0x10(%rax),%rax
1406b1832:	eb 0e                	jmp    0x1406b1842
1406b1834:	c7 44 24 48 01 00 00 	movl   $0x1,0x48(%rsp)
1406b183b:	00
1406b183c:	48 8b c8             	mov    %rax,%rcx
1406b183f:	48 8b 00             	mov    (%rax),%rax
1406b1842:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
1406b1846:	74 d8                	je     0x1406b1820
1406b1848:	80 79 19 00          	cmpb   $0x0,0x19(%rcx)
1406b184c:	75 05                	jne    0x1406b1853
1406b184e:	3b 59 20             	cmp    0x20(%rcx),%ebx
1406b1851:	7d 5d                	jge    0x1406b18b0
1406b1853:	4c 39 46 08          	cmp    %r8,0x8(%rsi)
1406b1857:	0f 84 4b 01 00 00    	je     0x1406b19a8
1406b185d:	48 89 74 24 30       	mov    %rsi,0x30(%rsp)
1406b1862:	48 89 54 24 38       	mov    %rdx,0x38(%rsp)
1406b1867:	b9 38 00 00 00       	mov    $0x38,%ecx
1406b186c:	e8 97 98 76 00       	call   0x140e1b108
1406b1871:	90                   	nop
1406b1872:	89 58 20             	mov    %ebx,0x20(%rax)
1406b1875:	33 c9                	xor    %ecx,%ecx
1406b1877:	48 89 48 28          	mov    %rcx,0x28(%rax)
1406b187b:	48 89 48 30          	mov    %rcx,0x30(%rax)
1406b187f:	48 89 28             	mov    %rbp,(%rax)