14040a4cd:	49 2b c8             	sub    %r8,%rcx
14040a4d0:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
14040a4d4:	48 83 f8 1f          	cmp    $0x1f,%rax
14040a4d8:	77 4c                	ja     0x14040a526
14040a4da:	49 8b c8             	mov    %r8,%rcx
14040a4dd:	e8 62 0c a1 00       	call   0x140e1b144
14040a4e2:	4c 89 33             	mov    %r14,(%rbx)
14040a4e5:	4c 89 73 08          	mov    %r14,0x8(%rbx)
14040a4e9:	4c 89 73 10          	mov    %r14,0x10(%rbx)
14040a4ed:	ba 18 00 00 00       	mov    $0x18,%edx
14040a4f2:	48 8b cb             	mov    %rbx,%rcx
14040a4f5:	e8 4a 0c a1 00       	call   0x140e1b144
14040a4fa:	40 f6 c5 01          	test   $0x1,%bpl
14040a4fe:	74 0d                	je     0x14040a50d
14040a500:	ba 28 00 00 00       	mov    $0x28,%edx
14040a505:	48 8b cf             	mov    %rdi,%rcx
14040a508:	e8 37 0c a1 00       	call   0x140e1b144
14040a50d:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
14040a512:	48 8b c7             	mov    %rdi,%rax
14040a515:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
14040a51a:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
14040a51f:	48 83 c4 20          	add    $0x20,%rsp
14040a523:	41 5e                	pop    %r14
14040a525:	c3                   	ret
14040a526:	e8 79 fc a1 00       	call   0x140e2a1a4
14040a52b:	cc                   	int3
14040a52c:	cc                   	int3
14040a52d:	cc                   	int3
14040a52e:	cc                   	int3
14040a52f:	cc                   	int3
14040a530:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14040a535:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14040a53a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14040a53f:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14040a544:	41 56                	push   %r14
14040a546:	48 83 ec 20          	sub    $0x20,%rsp
14040a54a:	48 8b d9             	mov    %rcx,%rbx
14040a54d:	44 8b f2             	mov    %edx,%r14d
14040a550:	8b 09                	mov    (%rcx),%ecx
14040a552:	85 c9                	test   %ecx,%ecx
14040a554:	0f 84 83 00 00 00    	je     0x14040a5dd
14040a55a:	83 f9 01             	cmp    $0x1,%ecx
14040a55d:	0f 85 93 00 00 00    	jne    0x14040a5f6
14040a563:	48 8b 6b 08          	mov    0x8(%rbx),%rbp
14040a567:	33 ff                	xor    %edi,%edi
14040a569:	48 85 ed             	test   %rbp,%rbp
14040a56c:	74 69                	je     0x14040a5d7
14040a56e:	48 8b 75 08          	mov    0x8(%rbp),%rsi
14040a572:	48 85 f6             	test   %rsi,%rsi
14040a575:	74 53                	je     0x14040a5ca
14040a577:	48 8b 0e             	mov    (%rsi),%rcx
14040a57a:	48 85 c9             	test   %rcx,%rcx
14040a57d:	74 3e                	je     0x14040a5bd
14040a57f:	48 8b 56 10          	mov    0x10(%rsi),%rdx
14040a583:	48 2b d1             	sub    %rcx,%rdx
14040a586:	48 d1 fa             	sar    $1,%rdx
14040a589:	48 03 d2             	add    %rdx,%rdx
14040a58c:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14040a593:	72 18                	jb     0x14040a5ad
14040a595:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
14040a599:	48 83 c2 27          	add    $0x27,%rdx
14040a59d:	49 2b c8             	sub    %r8,%rcx
14040a5a0:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
14040a5a4:	48 83 f8 1f          	cmp    $0x1f,%rax
14040a5a8:	77 7d                	ja     0x14040a627
14040a5aa:	49 8b c8             	mov    %r8,%rcx
14040a5ad:	e8 92 0b a1 00       	call   0x140e1b144
14040a5b2:	48 89 3e             	mov    %rdi,(%rsi)
14040a5b5:	48 89 7e 08          	mov    %rdi,0x8(%rsi)
14040a5b9:	48 89 7e 10          	mov    %rdi,0x10(%rsi)
14040a5bd:	ba 18 00 00 00       	mov    $0x18,%edx
14040a5c2:	48 8b ce             	mov    %rsi,%rcx
14040a5c5:	e8 7a 0b a1 00       	call   0x140e1b144
14040a5ca:	ba 28 00 00 00       	mov    $0x28,%edx
14040a5cf:	48 8b cd             	mov    %rbp,%rcx
14040a5d2:	e8 6d 0b a1 00       	call   0x140e1b144
14040a5d7:	48 89 7b 08          	mov    %rdi,0x8(%rbx)
14040a5db:	eb 19                	jmp    0x14040a5f6
14040a5dd:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
14040a5e1:	48 85 c9             	test   %rcx,%rcx
14040a5e4:	74 0a                	je     0x14040a5f0
14040a5e6:	ba 18 00 00 00       	mov    $0x18,%edx
14040a5eb:	e8 54 0b a1 00       	call   0x140e1b144
14040a5f0:	33 ff                	xor    %edi,%edi
14040a5f2:	48 89 7b 10          	mov    %rdi,0x10(%rbx)
14040a5f6:	41 f6 c6 01          	test   $0x1,%r14b
14040a5fa:	74 0d                	je     0x14040a609
14040a5fc:	ba 28 00 00 00       	mov    $0x28,%edx
14040a601:	48 8b cb             	mov    %rbx,%rcx
14040a604:	e8 3b 0b a1 00       	call   0x140e1b144
14040a609:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
14040a60e:	48 8b c3             	mov    %rbx,%rax
14040a611:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14040a616:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14040a61b:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
14040a620:	48 83 c4 20          	add    $0x20,%rsp
14040a624:	41 5e                	pop    %r14
14040a626:	c3                   	ret
14040a627:	e8 78 fb a1 00       	call   0x140e2a1a4
14040a62c:	cc                   	int3
14040a62d:	cc                   	int3
14040a62e:	cc                   	int3
14040a62f:	cc                   	int3
14040a630:	40 53                	rex push %rbx
14040a632:	48 83 ec 20          	sub    $0x20,%rsp
14040a636:	84 d2                	test   %dl,%dl
14040a638:	74 06                	je     0x14040a640
14040a63a:	48 8b 59 38          	mov    0x38(%rcx),%rbx
14040a63e:	eb 04                	jmp    0x14040a644
14040a640:	48 8b 59 40          	mov    0x40(%rcx),%rbx
14040a644:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
14040a648:	e8 63 45 5b 00       	call   0x1409bebb0
14040a64d:	45 33 c0             	xor    %r8d,%r8d
14040a650:	33 d2                	xor    %edx,%edx
14040a652:	48 8b cb             	mov    %rbx,%rcx
14040a655:	48 83 c4 20          	add    $0x20,%rsp
14040a659:	5b                   	pop    %rbx
14040a65a:	e9 31 00 00 00       	jmp    0x14040a690
14040a65f:	cc                   	int3
14040a660:	49 8b c0             	mov    %r8,%rax
14040a663:	84 d2                	test   %dl,%dl
14040a665:	74 0f                	je     0x14040a676
14040a667:	48 8b 49 38          	mov    0x38(%rcx),%rcx
14040a66b:	4d 8b c1             	mov    %r9,%r8
14040a66e:	48 8b d0             	mov    %rax,%rdx
14040a671:	e9 1a 00 00 00       	jmp    0x14040a690
14040a676:	48 8b 49 40          	mov    0x40(%rcx),%rcx
14040a67a:	4d 8b c1             	mov    %r9,%r8
14040a67d:	48 8b d0             	mov    %rax,%rdx
14040a680:	e9 0b 00 00 00       	jmp    0x14040a690
14040a685:	cc                   	int3
14040a686:	cc                   	int3
14040a687:	cc                   	int3
14040a688:	cc                   	int3
14040a689:	cc                   	int3
14040a68a:	cc                   	int3
14040a68b:	cc                   	int3
14040a68c:	cc                   	int3
14040a68d:	cc                   	int3
14040a68e:	cc                   	int3
14040a68f:	cc                   	int3
14040a690:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
14040a695:	56                   	push   %rsi
14040a696:	57                   	push   %rdi
14040a697:	41 54                	push   %r12
14040a699:	41 56                	push   %r14
14040a69b:	41 57                	push   %r15
14040a69d:	48 83 ec 60          	sub    $0x60,%rsp
14040a6a1:	48 8b 05 58 e8 fa 00 	mov    0xfae858(%rip),%rax        # 0x1413b8f00
14040a6a8:	48 33 c4             	xor    %rsp,%rax
14040a6ab:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
14040a6b0:	48 8b f9             	mov    %rcx,%rdi
14040a6b3:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
14040a6b8:	48 8b 49 18          	mov    0x18(%rcx),%rcx
14040a6bc:	e8 5f 41 5b 00       	call   0x1409be820
14040a6c1:	48 8b 4f 18          	mov    0x18(%rdi),%rcx
14040a6c5:	83 79 08 00          	cmpl   $0x0,0x8(%rcx)
14040a6c9:	7f 0e                	jg     0x14040a6d9
14040a6cb:	48 8b 41 28          	mov    0x28(%rcx),%rax
14040a6cf:	48 39 41 30          	cmp    %rax,0x30(%rcx)
14040a6d3:	0f 86 1c 01 00 00    	jbe    0x14040a7f5
14040a6d9:	80 79 51 00          	cmpb   $0x0,0x51(%rcx)
14040a6dd:	74 10                	je     0x14040a6ef
14040a6df:	80 79 18 00          	cmpb   $0x0,0x18(%rcx)
14040a6e3:	75 0a                	jne    0x14040a6ef
14040a6e5:	83 79 44 00          	cmpl   $0x0,0x44(%rcx)
14040a6e9:	0f 85 06 01 00 00    	jne    0x14040a7f5
14040a6ef:	48 83 7f 08 00       	cmpq   $0x0,0x8(%rdi)
14040a6f4:	75 67                	jne    0x14040a75d
14040a6f6:	b9 28 00 00 00       	mov    $0x28,%ecx
14040a6fb:	e8 08 0a a1 00       	call   0x140e1b108
14040a700:	33 f6                	xor    %esi,%esi
14040a702:	48 85 c0             	test   %rax,%rax
14040a705:	74 1e                	je     0x14040a725
14040a707:	0f b6 4f 28          	movzbl 0x28(%rdi),%ecx
14040a70b:	48 89 30             	mov    %rsi,(%rax)
14040a70e:	48 89 70 08          	mov    %rsi,0x8(%rax)
14040a712:	89 70 10             	mov    %esi,0x10(%rax)
14040a715:	c7 40 14 ff ff ff ff 	movl   $0xffffffff,0x14(%rax)
14040a71c:	88 48 18             	mov    %cl,0x18(%rax)
14040a71f:	48 89 70 1c          	mov    %rsi,0x1c(%rax)
14040a723:	eb 03                	jmp    0x14040a728
14040a725:	48 8b c6             	mov    %rsi,%rax
14040a728:	48 89 47 08          	mov    %rax,0x8(%rdi)
14040a72c:	b9 18 00 00 00       	mov    $0x18,%ecx
14040a731:	e8 d2 09 a1 00       	call   0x140e1b108
14040a736:	48 85 c0             	test   %rax,%rax
14040a739:	74 19                	je     0x14040a754
14040a73b:	48 8b 57 18          	mov    0x18(%rdi),%rdx
14040a73f:	48 8b 4f 20          	mov    0x20(%rdi),%rcx
14040a743:	48 89 08             	mov    %rcx,(%rax)
14040a746:	48 89 78 08          	mov    %rdi,0x8(%rax)
14040a74a:	48 89 50 10          	mov    %rdx,0x10(%rax)
14040a74e:	48 89 47 10          	mov    %rax,0x10(%rdi)
14040a752:	eb 0b                	jmp    0x14040a75f
14040a754:	48 8b c6             	mov    %rsi,%rax
14040a757:	48 89 47 10          	mov    %rax,0x10(%rdi)
14040a75b:	eb 02                	jmp    0x14040a75f
14040a75d:	33 f6                	xor    %esi,%esi
14040a75f:	48 8b 5f 08          	mov    0x8(%rdi),%rbx
14040a763:	4c 8b 67 10          	mov    0x10(%rdi),%r12
14040a767:	48 8b 7f 18          	mov    0x18(%rdi),%rdi
14040a76b:	8b 4b 20             	mov    0x20(%rbx),%ecx
14040a76e:	85 c9                	test   %ecx,%ecx
14040a770:	74 07                	je     0x14040a779
14040a772:	83 f9 01             	cmp    $0x1,%ecx
14040a775:	74 09                	je     0x14040a780
14040a777:	eb 7c                	jmp    0x14040a7f5
14040a779:	c7 43 20 01 00 00 00 	movl   $0x1,0x20(%rbx)
14040a780:	83 7b 14 00          	cmpl   $0x0,0x14(%rbx)
14040a784:	7d 2a                	jge    0x14040a7b0
14040a786:	89 73 14             	mov    %esi,0x14(%rbx)
14040a789:	b9 18 00 00 00       	mov    $0x18,%ecx
14040a78e:	e8 75 09 a1 00       	call   0x140e1b108
14040a793:	48 85 c0             	test   %rax,%rax
14040a796:	74 0d                	je     0x14040a7a5
14040a798:	48 89 30             	mov    %rsi,(%rax)
14040a79b:	48 89 70 08          	mov    %rsi,0x8(%rax)
14040a79f:	48 89 70 10          	mov    %rsi,0x10(%rax)
14040a7a3:	eb 03                	jmp    0x14040a7a8
14040a7a5:	48 8b c6             	mov    %rsi,%rax
14040a7a8:	48 89 03             	mov    %rax,(%rbx)
14040a7ab:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14040a7b0:	48 83 7b 08 00       	cmpq   $0x0,0x8(%rbx)
14040a7b5:	75 2d                	jne    0x14040a7e4
14040a7b7:	b9 20 00 00 00       	mov    $0x20,%ecx
14040a7bc:	e8 47 09 a1 00       	call   0x140e1b108
14040a7c1:	48 85 c0             	test   %rax,%rax
14040a7c4:	74 17                	je     0x14040a7dd
14040a7c6:	0f b6 4b 18          	movzbl 0x18(%rbx),%ecx
14040a7ca:	c6 00 00             	movb   $0x0,(%rax)
14040a7cd:	48 89 70 08          	mov    %rsi,0x8(%rax)
14040a7d1:	48 89 70 10          	mov    %rsi,0x10(%rax)
14040a7d5:	88 48 18             	mov    %cl,0x18(%rax)
14040a7d8:	89 70 1c             	mov    %esi,0x1c(%rax)
14040a7db:	eb 03                	jmp    0x14040a7e0
14040a7dd:	48 8b c6             	mov    %rsi,%rax
14040a7e0:	48 89 43 08          	mov    %rax,0x8(%rbx)
14040a7e4:	32 c0                	xor    %al,%al
14040a7e6:	84 c0                	test   %al,%al
14040a7e8:	75 42                	jne    0x14040a82c
14040a7ea:	38 47 18             	cmp    %al,0x18(%rdi)
14040a7ed:	75 28                	jne    0x14040a817
14040a7ef:	83 7f 44 00          	cmpl   $0x0,0x44(%rdi)
14040a7f3:	74 22                	je     0x14040a817
14040a7f5:	48 8b 4c 24 58       	mov    0x58(%rsp),%rcx
14040a7fa:	48 33 cc             	xor    %rsp,%rcx
14040a7fd:	e8 fe 0c a1 00       	call   0x140e1b500
14040a802:	48 8b 9c 24 a8 00 00 	mov    0xa8(%rsp),%rbx
14040a809:	00
14040a80a:	48 83 c4 60          	add    $0x60,%rsp
14040a80e:	41 5f                	pop    %r15
14040a810:	41 5e                	pop    %r14
14040a812:	41 5c                	pop    %r12
14040a814:	5f                   	pop    %rdi
14040a815:	5e                   	pop    %rsi
14040a816:	c3                   	ret
14040a817:	44 8b 4b 1c          	mov    0x1c(%rbx),%r9d
14040a81b:	4d 8b c4             	mov    %r12,%r8
14040a81e:	48 8b d7             	mov    %rdi,%rdx
14040a821:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
14040a825:	e8 26 6d 00 00       	call   0x140411550
14040a82a:	eb ba                	jmp    0x14040a7e6
14040a82c:	4c 8b 73 08          	mov    0x8(%rbx),%r14
14040a830:	4d 85 f6             	test   %r14,%r14
14040a833:	74 46                	je     0x14040a87b
14040a835:	49 8b 4e 08          	mov    0x8(%r14),%rcx
14040a839:	48 85 c9             	test   %rcx,%rcx
14040a83c:	74 0a                	je     0x14040a848
14040a83e:	ba 03 00 00 00       	mov    $0x3,%edx
14040a843:	e8 fc 08 a1 00       	call   0x140e1b144
14040a848:	49 89 76 08          	mov    %rsi,0x8(%r14)
14040a84c:	4d 8b 7e 10          	mov    0x10(%r14),%r15
14040a850:	4d 85 ff             	test   %r15,%r15
14040a853:	74 15                	je     0x14040a86a
14040a855:	49 8b cf             	mov    %r15,%rcx
14040a858:	e8 13 d9 ff ff       	call   0x140408170
14040a85d:	ba 98 00 00 00       	mov    $0x98,%edx
14040a862:	49 8b cf             	mov    %r15,%rcx
14040a865:	e8 da 08 a1 00       	call   0x140e1b144
14040a86a:	49 89 76 10          	mov    %rsi,0x10(%r14)
14040a86e:	ba 20 00 00 00       	mov    $0x20,%edx
14040a873:	49 8b ce             	mov    %r14,%rcx
14040a876:	e8 c9 08 a1 00       	call   0x140e1b144
14040a87b:	48 89 73 08          	mov    %rsi,0x8(%rbx)
14040a87f:	ff 43 14             	incl   0x14(%rbx)
14040a882:	e9 29 ff ff ff       	jmp    0x14040a7b0
14040a887:	cc                   	int3
14040a888:	cc                   	int3
14040a889:	cc                   	int3
14040a88a:	cc                   	int3
14040a88b:	cc                   	int3
14040a88c:	cc                   	int3
14040a88d:	cc                   	int3
14040a88e:	cc                   	int3
14040a88f:	cc                   	int3
14040a890:	40 53                	rex push %rbx
14040a892:	41 54                	push   %r12
14040a894:	41 56                	push   %r14
14040a896:	48 81 ec 80 00 00 00 	sub    $0x80,%rsp
14040a89d:	48 8b 05 5c e6 fa 00 	mov    0xfae65c(%rip),%rax        # 0x1413b8f00
14040a8a4:	48 33 c4             	xor    %rsp,%rax
14040a8a7:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
14040a8ac:	48 8d 5a 02          	lea    0x2(%rdx),%rbx
14040a8b0:	4d 8b e1             	mov    %r9,%r12
14040a8b3:	4c 8b f1             	mov    %rcx,%r14
14040a8b6:	49 3b d8             	cmp    %r8,%rbx
14040a8b9:	0f 87 af 01 00 00    	ja     0x14040aa6e
14040a8bf:	48 3b da             	cmp    %rdx,%rbx
14040a8c2:	0f 82 a6 01 00 00    	jb     0x14040aa6e
14040a8c8:	83 bc 24 c0 00 00 00 	cmpl   $0x1,0xc0(%rsp)
14040a8cf:	01
14040a8d0:	0f b7 02             	movzwl (%rdx),%eax
14040a8d3:	48 89 7c 24 68       	mov    %rdi,0x68(%rsp)
14040a8d8:	4c 89 7c 24 58       	mov    %r15,0x58(%rsp)
14040a8dd:	74 04                	je     0x14040a8e3
14040a8df:	66 c1 c8 08          	ror    $0x8,%ax
14040a8e3:	44 0f b7 f8          	movzwl %ax,%r15d
14040a8e7:	41 83 c7 02          	add    $0x2,%r15d
14040a8eb:	66 89 01             	mov    %ax,(%rcx)
14040a8ee:	41 8b ff             	mov    %r15d,%edi
14040a8f1:	48 03 fa             	add    %rdx,%rdi
14040a8f4:	49 3b f8             	cmp    %r8,%rdi
14040a8f7:	0f 87 45 01 00 00    	ja     0x14040aa42
14040a8fd:	48 3b fa             	cmp    %rdx,%rdi
14040a900:	0f 82 3c 01 00 00    	jb     0x14040aa42
14040a906:	48 89 74 24 70       	mov    %rsi,0x70(%rsp)
14040a90b:	4c 89 6c 24 60       	mov    %r13,0x60(%rsp)
14040a910:	45 33 ed             	xor    %r13d,%r13d
14040a913:	4c 89 69 10          	mov    %r13,0x10(%rcx)
14040a917:	b9 18 00 00 00       	mov    $0x18,%ecx
14040a91c:	e8 e7 07 a1 00       	call   0x140e1b108
14040a921:	48 85 c0             	test   %rax,%rax
14040a924:	74 0d                	je     0x14040a933
14040a926:	4c 89 28             	mov    %r13,(%rax)
14040a929:	4c 89 68 08          	mov    %r13,0x8(%rax)
14040a92d:	4c 89 68 10          	mov    %r13,0x10(%rax)
14040a931:	eb 03                	jmp    0x14040a936
14040a933:	49 8b c5             	mov    %r13,%rax
14040a936:	48 89 6c 24 78       	mov    %rbp,0x78(%rsp)
14040a93b:	49 89 46 08          	mov    %rax,0x8(%r14)
14040a93f:	48 3b df             	cmp    %rdi,%rbx
14040a942:	0f 83 ab 00 00 00    	jae    0x14040a9f3
14040a948:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14040a94f:	00
14040a950:	b9 18 00 00 00       	mov    $0x18,%ecx
14040a955:	e8 ae 07 a1 00       	call   0x140e1b108
14040a95a:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14040a95f:	48 85 c0             	test   %rax,%rax
14040a962:	74 0d                	je     0x14040a971