1401a150f:	48 8b 51 28          	mov    0x28(%rcx),%rdx
1401a1513:	48 8b d9             	mov    %rcx,%rbx
1401a1516:	48 85 d2             	test   %rdx,%rdx
1401a1519:	74 45                	je     0x1401a1560
1401a151b:	48 83 3a 00          	cmpq   $0x0,(%rdx)
1401a151f:	75 3f                	jne    0x1401a1560
1401a1521:	44 8d 40 e1          	lea    -0x1f(%rax),%r8d
1401a1525:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
1401a152a:	e8 b1 0a 00 00       	call   0x1401a1fe0
1401a152f:	8b f8                	mov    %eax,%edi
1401a1531:	85 c0                	test   %eax,%eax
1401a1533:	74 1e                	je     0x1401a1553
1401a1535:	48 8b 4b 28          	mov    0x28(%rbx),%rcx
1401a1539:	48 8d 15 d8 3a 18 00 	lea    0x183ad8(%rip),%rdx        # 0x140325018
1401a1540:	41 b8 4e 01 00 00    	mov    $0x14e,%r8d
1401a1546:	e8 75 a8 f4 ff       	call   0x1400ebdc0
1401a154b:	48 c7 43 28 00 00 00 	movq   $0x0,0x28(%rbx)
1401a1552:	00
1401a1553:	8b c7                	mov    %edi,%eax
1401a1555:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
1401a155a:	48 83 c4 20          	add    $0x20,%rsp
1401a155e:	5b                   	pop    %rbx
1401a155f:	c3                   	ret
1401a1560:	33 c0                	xor    %eax,%eax
1401a1562:	48 83 c4 20          	add    $0x20,%rsp
1401a1566:	5b                   	pop    %rbx
1401a1567:	c3                   	ret
1401a1568:	cc                   	int3
1401a1569:	cc                   	int3
1401a156a:	cc                   	int3
1401a156b:	cc                   	int3
1401a156c:	cc                   	int3
1401a156d:	cc                   	int3
1401a156e:	cc                   	int3
1401a156f:	cc                   	int3
1401a1570:	48 8b 51 08          	mov    0x8(%rcx),%rdx
1401a1574:	48 85 d2             	test   %rdx,%rdx
1401a1577:	75 11                	jne    0x1401a158a
1401a1579:	48 8b 11             	mov    (%rcx),%rdx
1401a157c:	48 85 d2             	test   %rdx,%rdx
1401a157f:	74 23                	je     0x1401a15a4
1401a1581:	48 8b 52 08          	mov    0x8(%rdx),%rdx
1401a1585:	48 85 d2             	test   %rdx,%rdx
1401a1588:	74 1a                	je     0x1401a15a4
1401a158a:	f6 41 30 01          	testb  $0x1,0x30(%rcx)
1401a158e:	74 0c                	je     0x1401a159c
1401a1590:	48 8b 41 20          	mov    0x20(%rcx),%rax
1401a1594:	48 2b 41 10          	sub    0x10(%rcx),%rax
1401a1598:	48 03 c2             	add    %rdx,%rax
1401a159b:	c3                   	ret
1401a159c:	48 8b 41 10          	mov    0x10(%rcx),%rax
1401a15a0:	48 03 c2             	add    %rdx,%rax
1401a15a3:	c3                   	ret
1401a15a4:	33 c0                	xor    %eax,%eax
1401a15a6:	c3                   	ret
1401a15a7:	cc                   	int3
1401a15a8:	cc                   	int3
1401a15a9:	cc                   	int3
1401a15aa:	cc                   	int3
1401a15ab:	cc                   	int3
1401a15ac:	cc                   	int3
1401a15ad:	cc                   	int3
1401a15ae:	cc                   	int3
1401a15af:	cc                   	int3
1401a15b0:	4c 8b 41 28          	mov    0x28(%rcx),%r8
1401a15b4:	4d 85 c0             	test   %r8,%r8
1401a15b7:	74 16                	je     0x1401a15cf
1401a15b9:	48 85 d2             	test   %rdx,%rdx
1401a15bc:	74 11                	je     0x1401a15cf
1401a15be:	48 8b 41 18          	mov    0x18(%rcx),%rax
1401a15c2:	49 2b 40 18          	sub    0x18(%r8),%rax
1401a15c6:	48 89 02             	mov    %rax,(%rdx)
1401a15c9:	b8 01 00 00 00       	mov    $0x1,%eax
1401a15ce:	c3                   	ret
1401a15cf:	33 c0                	xor    %eax,%eax
1401a15d1:	c3                   	ret
1401a15d2:	cc                   	int3
1401a15d3:	cc                   	int3
1401a15d4:	cc                   	int3
1401a15d5:	cc                   	int3
1401a15d6:	cc                   	int3
1401a15d7:	cc                   	int3
1401a15d8:	cc                   	int3
1401a15d9:	cc                   	int3
1401a15da:	cc                   	int3
1401a15db:	cc                   	int3
1401a15dc:	cc                   	int3
1401a15dd:	cc                   	int3
1401a15de:	cc                   	int3
1401a15df:	cc                   	int3
1401a15e0:	48 85 d2             	test   %rdx,%rdx
1401a15e3:	75 03                	jne    0x1401a15e8
1401a15e5:	33 c0                	xor    %eax,%eax
1401a15e7:	c3                   	ret
1401a15e8:	48 8b 41 18          	mov    0x18(%rcx),%rax
1401a15ec:	48 89 02             	mov    %rax,(%rdx)
1401a15ef:	b8 01 00 00 00       	mov    $0x1,%eax
1401a15f4:	c3                   	ret
1401a15f5:	cc                   	int3
1401a15f6:	cc                   	int3
1401a15f7:	cc                   	int3
1401a15f8:	cc                   	int3
1401a15f9:	cc                   	int3
1401a15fa:	cc                   	int3
1401a15fb:	cc                   	int3
1401a15fc:	cc                   	int3
1401a15fd:	cc                   	int3
1401a15fe:	cc                   	int3
1401a15ff:	cc                   	int3
1401a1600:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1401a1605:	57                   	push   %rdi
1401a1606:	b8 20 00 00 00       	mov    $0x20,%eax
1401a160b:	e8 20 f5 10 00       	call   0x1402b0b30
1401a1610:	48 2b e0             	sub    %rax,%rsp
1401a1613:	33 db                	xor    %ebx,%ebx
1401a1615:	48 8b f9             	mov    %rcx,%rdi
1401a1618:	48 85 d2             	test   %rdx,%rdx
1401a161b:	74 74                	je     0x1401a1691
1401a161d:	83 61 30 fe          	andl   $0xfffffffe,0x30(%rcx)
1401a1621:	44 8d 40 4b          	lea    0x4b(%rax),%r8d
1401a1625:	48 89 11             	mov    %rdx,(%rcx)
1401a1628:	48 8d 15 e9 39 18 00 	lea    0x1839e9(%rip),%rdx        # 0x140325018
1401a162f:	48 89 59 08          	mov    %rbx,0x8(%rcx)
1401a1633:	48 c7 41 20 ff ff ff 	movq   $0xffffffffffffffff,0x20(%rcx)
1401a163a:	ff
1401a163b:	48 89 59 10          	mov    %rbx,0x10(%rcx)
1401a163f:	48 89 59 18          	mov    %rbx,0x18(%rcx)
1401a1643:	8d 48 08             	lea    0x8(%rax),%ecx
1401a1646:	e8 75 aa f4 ff       	call   0x1400ec0c0
1401a164b:	48 89 47 28          	mov    %rax,0x28(%rdi)
1401a164f:	48 85 c0             	test   %rax,%rax
1401a1652:	75 38                	jne    0x1401a168c
1401a1654:	e8 17 5a f8 ff       	call   0x140127070
1401a1659:	4c 8d 05 c8 39 18 00 	lea    0x1839c8(%rip),%r8        # 0x140325028
1401a1660:	8d 53 6c             	lea    0x6c(%rbx),%edx
1401a1663:	48 8d 0d ae 39 18 00 	lea    0x1839ae(%rip),%rcx        # 0x140325018
1401a166a:	e8 21 5b f8 ff       	call   0x140127190
1401a166f:	45 33 c0             	xor    %r8d,%r8d
1401a1672:	8d 4b 0f             	lea    0xf(%rbx),%ecx
1401a1675:	ba 00 01 0c 00       	mov    $0xc0100,%edx
1401a167a:	e8 11 5c f8 ff       	call   0x140127290
1401a167f:	8b c3                	mov    %ebx,%eax
1401a1681:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401a1686:	48 83 c4 20          	add    $0x20,%rsp
1401a168a:	5f                   	pop    %rdi
1401a168b:	c3                   	ret
1401a168c:	bb 01 00 00 00       	mov    $0x1,%ebx
1401a1691:	8b c3                	mov    %ebx,%eax
1401a1693:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401a1698:	48 83 c4 20          	add    $0x20,%rsp
1401a169c:	5f                   	pop    %rdi
1401a169d:	c3                   	ret
1401a169e:	cc                   	int3
1401a169f:	cc                   	int3
1401a16a0:	40 57                	rex push %rdi
1401a16a2:	b8 20 00 00 00       	mov    $0x20,%eax
1401a16a7:	e8 84 f4 10 00       	call   0x1402b0b30
1401a16ac:	48 2b e0             	sub    %rax,%rsp
1401a16af:	48 8b f9             	mov    %rcx,%rdi
1401a16b2:	48 85 d2             	test   %rdx,%rdx
1401a16b5:	0f 84 8d 00 00 00    	je     0x1401a1748
1401a16bb:	4d 85 c0             	test   %r8,%r8
1401a16be:	0f 84 84 00 00 00    	je     0x1401a1748
1401a16c4:	83 49 30 01          	orl    $0x1,0x30(%rcx)
1401a16c8:	48 89 51 08          	mov    %rdx,0x8(%rcx)
1401a16cc:	48 8d 15 45 39 18 00 	lea    0x183945(%rip),%rdx        # 0x140325018
1401a16d3:	4c 89 41 20          	mov    %r8,0x20(%rcx)
1401a16d7:	44 8d 40 4b          	lea    0x4b(%rax),%r8d
1401a16db:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
1401a16e0:	33 db                	xor    %ebx,%ebx
1401a16e2:	48 89 19             	mov    %rbx,(%rcx)
1401a16e5:	48 89 59 10          	mov    %rbx,0x10(%rcx)
1401a16e9:	48 89 59 18          	mov    %rbx,0x18(%rcx)
1401a16ed:	8d 48 08             	lea    0x8(%rax),%ecx
1401a16f0:	e8 cb a9 f4 ff       	call   0x1400ec0c0
1401a16f5:	48 89 47 28          	mov    %rax,0x28(%rdi)
1401a16f9:	48 85 c0             	test   %rax,%rax
1401a16fc:	75 38                	jne    0x1401a1736
1401a16fe:	e8 6d 59 f8 ff       	call   0x140127070
1401a1703:	4c 8d 05 1e 39 18 00 	lea    0x18391e(%rip),%r8        # 0x140325028
1401a170a:	8d 53 6c             	lea    0x6c(%rbx),%edx
1401a170d:	48 8d 0d 04 39 18 00 	lea    0x183904(%rip),%rcx        # 0x140325018
1401a1714:	e8 77 5a f8 ff       	call   0x140127190
1401a1719:	45 33 c0             	xor    %r8d,%r8d
1401a171c:	8d 4b 0f             	lea    0xf(%rbx),%ecx
1401a171f:	ba 00 01 0c 00       	mov    $0xc0100,%edx
1401a1724:	e8 67 5b f8 ff       	call   0x140127290
1401a1729:	8b c3                	mov    %ebx,%eax
1401a172b:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401a1730:	48 83 c4 20          	add    $0x20,%rsp
1401a1734:	5f                   	pop    %rdi
1401a1735:	c3                   	ret
1401a1736:	bb 01 00 00 00       	mov    $0x1,%ebx
1401a173b:	8b c3                	mov    %ebx,%eax
1401a173d:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401a1742:	48 83 c4 20          	add    $0x20,%rsp
1401a1746:	5f                   	pop    %rdi
1401a1747:	c3                   	ret
1401a1748:	33 c0                	xor    %eax,%eax
1401a174a:	48 83 c4 20          	add    $0x20,%rsp
1401a174e:	5f                   	pop    %rdi
1401a174f:	c3                   	ret
1401a1750:	b8 28 00 00 00       	mov    $0x28,%eax
1401a1755:	e8 d6 f3 10 00       	call   0x1402b0b30
1401a175a:	48 2b e0             	sub    %rax,%rsp
1401a175d:	4c 8b c9             	mov    %rcx,%r9
1401a1760:	48 85 d2             	test   %rdx,%rdx
1401a1763:	75 07                	jne    0x1401a176c
1401a1765:	33 c0                	xor    %eax,%eax
1401a1767:	48 83 c4 28          	add    $0x28,%rsp
1401a176b:	c3                   	ret
1401a176c:	49 8d 40 ff          	lea    -0x1(%r8),%rax
1401a1770:	48 c7 41 08 00 00 00 	movq   $0x0,0x8(%rcx)
1401a1777:	00
1401a1778:	48 89 11             	mov    %rdx,(%rcx)
1401a177b:	48 83 f8 06          	cmp    $0x6,%rax
1401a177f:	77 18                	ja     0x1401a1799
1401a1781:	41 0f b6 c8          	movzbl %r8b,%ecx
1401a1785:	49 8d 40 ff          	lea    -0x1(%r8),%rax
1401a1789:	c0 e1 03             	shl    $0x3,%cl
1401a178c:	ba 01 00 00 00       	mov    $0x1,%edx
1401a1791:	48 d3 e2             	shl    %cl,%rdx
1401a1794:	48 03 c2             	add    %rdx,%rax
1401a1797:	eb 07                	jmp    0x1401a17a0
1401a1799:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
1401a17a0:	41 83 61 30 fe       	andl   $0xfffffffe,0x30(%r9)
1401a17a5:	49 8b d0             	mov    %r8,%rdx
1401a17a8:	49 8b c9             	mov    %r9,%rcx
1401a17ab:	49 89 41 20          	mov    %rax,0x20(%r9)
1401a17af:	48 83 c4 28          	add    $0x28,%rsp
1401a17b3:	e9 b8 09 00 00       	jmp    0x1401a2170
1401a17b8:	cc                   	int3
1401a17b9:	cc                   	int3
1401a17ba:	cc                   	int3
1401a17bb:	cc                   	int3
1401a17bc:	cc                   	int3
1401a17bd:	cc                   	int3
1401a17be:	cc                   	int3
1401a17bf:	cc                   	int3
1401a17c0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1401a17c5:	57                   	push   %rdi
1401a17c6:	b8 20 00 00 00       	mov    $0x20,%eax
1401a17cb:	e8 60 f3 10 00       	call   0x1402b0b30
1401a17d0:	48 2b e0             	sub    %rax,%rsp
1401a17d3:	33 ff                	xor    %edi,%edi
1401a17d5:	48 8d 42 ff          	lea    -0x1(%rdx),%rax
1401a17d9:	48 89 79 08          	mov    %rdi,0x8(%rcx)
1401a17dd:	48 8b d9             	mov    %rcx,%rbx
1401a17e0:	48 89 39             	mov    %rdi,(%rcx)
1401a17e3:	48 83 f8 06          	cmp    $0x6,%rax
1401a17e7:	77 18                	ja     0x1401a1801
1401a17e9:	0f b6 ca             	movzbl %dl,%ecx
1401a17ec:	48 8d 42 ff          	lea    -0x1(%rdx),%rax
1401a17f0:	c0 e1 03             	shl    $0x3,%cl
1401a17f3:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1401a17f9:	49 d3 e0             	shl    %cl,%r8
1401a17fc:	49 03 c0             	add    %r8,%rax
1401a17ff:	eb 07                	jmp    0x1401a1808
1401a1801:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
1401a1808:	83 63 30 fe          	andl   $0xfffffffe,0x30(%rbx)
1401a180c:	48 8d 15 05 38 18 00 	lea    0x183805(%rip),%rdx        # 0x140325018
1401a1813:	41 b8 6b 00 00 00    	mov    $0x6b,%r8d
1401a1819:	48 89 43 20          	mov    %rax,0x20(%rbx)
1401a181d:	48 89 7b 10          	mov    %rdi,0x10(%rbx)
1401a1821:	48 89 7b 18          	mov    %rdi,0x18(%rbx)
1401a1825:	41 8d 48 bd          	lea    -0x43(%r8),%ecx
1401a1829:	e8 92 a8 f4 ff       	call   0x1400ec0c0
1401a182e:	48 89 43 28          	mov    %rax,0x28(%rbx)
1401a1832:	48 85 c0             	test   %rax,%rax
1401a1835:	75 3b                	jne    0x1401a1872
1401a1837:	e8 34 58 f8 ff       	call   0x140127070
1401a183c:	4c 8d 05 e5 37 18 00 	lea    0x1837e5(%rip),%r8        # 0x140325028
1401a1843:	ba 6c 00 00 00       	mov    $0x6c,%edx
1401a1848:	48 8d 0d c9 37 18 00 	lea    0x1837c9(%rip),%rcx        # 0x140325018
1401a184f:	e8 3c 59 f8 ff       	call   0x140127190
1401a1854:	45 33 c0             	xor    %r8d,%r8d
1401a1857:	ba 00 01 0c 00       	mov    $0xc0100,%edx
1401a185c:	41 8d 48 0f          	lea    0xf(%r8),%ecx
1401a1860:	e8 2b 5a f8 ff       	call   0x140127290
1401a1865:	8b c7                	mov    %edi,%eax
1401a1867:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401a186c:	48 83 c4 20          	add    $0x20,%rsp
1401a1870:	5f                   	pop    %rdi
1401a1871:	c3                   	ret
1401a1872:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401a1877:	b8 01 00 00 00       	mov    $0x1,%eax
1401a187c:	48 83 c4 20          	add    $0x20,%rsp
1401a1880:	5f                   	pop    %rdi
1401a1881:	c3                   	ret
1401a1882:	cc                   	int3
1401a1883:	cc                   	int3
1401a1884:	cc                   	int3
1401a1885:	cc                   	int3
1401a1886:	cc                   	int3
1401a1887:	cc                   	int3
1401a1888:	cc                   	int3
1401a1889:	cc                   	int3
1401a188a:	cc                   	int3
1401a188b:	cc                   	int3
1401a188c:	cc                   	int3
1401a188d:	cc                   	int3
1401a188e:	cc                   	int3
1401a188f:	cc                   	int3
1401a1890:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1401a1895:	57                   	push   %rdi
1401a1896:	b8 20 00 00 00       	mov    $0x20,%eax
1401a189b:	e8 90 f2 10 00       	call   0x1402b0b30
1401a18a0:	48 2b e0             	sub    %rax,%rsp
1401a18a3:	83 49 30 01          	orl    $0x1,0x30(%rcx)
1401a18a7:	44 8d 40 4b          	lea    0x4b(%rax),%r8d
1401a18ab:	33 ff                	xor    %edi,%edi
1401a18ad:	48 c7 41 20 ff ff ff 	movq   $0xffffffffffffffff,0x20(%rcx)
1401a18b4:	ff
1401a18b5:	48 89 79 08          	mov    %rdi,0x8(%rcx)
1401a18b9:	48 8d 15 58 37 18 00 	lea    0x183758(%rip),%rdx        # 0x140325018
1401a18c0:	48 89 39             	mov    %rdi,(%rcx)
1401a18c3:	48 8b d9             	mov    %rcx,%rbx
1401a18c6:	48 89 79 10          	mov    %rdi,0x10(%rcx)
1401a18ca:	48 89 79 18          	mov    %rdi,0x18(%rcx)
1401a18ce:	8d 48 08             	lea    0x8(%rax),%ecx
1401a18d1:	e8 ea a7 f4 ff       	call   0x1400ec0c0
1401a18d6:	48 89 43 28          	mov    %rax,0x28(%rbx)
1401a18da:	48 85 c0             	test   %rax,%rax
1401a18dd:	75 38                	jne    0x1401a1917
1401a18df:	e8 8c 57 f8 ff       	call   0x140127070
1401a18e4:	4c 8d 05 3d 37 18 00 	lea    0x18373d(%rip),%r8        # 0x140325028
1401a18eb:	8d 57 6c             	lea    0x6c(%rdi),%edx
1401a18ee:	48 8d 0d 23 37 18 00 	lea    0x183723(%rip),%rcx        # 0x140325018
1401a18f5:	e8 96 58 f8 ff       	call   0x140127190
1401a18fa:	45 33 c0             	xor    %r8d,%r8d
1401a18fd:	8d 4f 0f             	lea    0xf(%rdi),%ecx
1401a1900:	ba 00 01 0c 00       	mov    $0xc0100,%edx
1401a1905:	e8 86 59 f8 ff       	call   0x140127290
1401a190a:	8b c7                	mov    %edi,%eax
1401a190c:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401a1911:	48 83 c4 20          	add    $0x20,%rsp
1401a1915:	5f                   	pop    %rdi
1401a1916:	c3                   	ret
1401a1917:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401a191c:	b8 01 00 00 00       	mov    $0x1,%eax
1401a1921:	48 83 c4 20          	add    $0x20,%rsp
1401a1925:	5f                   	pop    %rdi
1401a1926:	c3                   	ret
1401a1927:	cc                   	int3
1401a1928:	cc                   	int3
1401a1929:	cc                   	int3
1401a192a:	cc                   	int3
1401a192b:	cc                   	int3
1401a192c:	cc                   	int3
1401a192d:	cc                   	int3