18006c5c8:	4c 8b 6f 60          	mov    0x60(%rdi),%r13
18006c5cc:	49 8b 45 10          	mov    0x10(%r13),%rax
18006c5d0:	48 85 c0             	test   %rax,%rax
18006c5d3:	74 0f                	je     0x18006c5e4
18006c5d5:	48 8b d0             	mov    %rax,%rdx
18006c5d8:	48 8b cf             	mov    %rdi,%rcx
18006c5db:	e8 8c 0c 00 00       	call   0x18006d26c
18006c5e0:	49 89 45 10          	mov    %rax,0x10(%r13)
18006c5e4:	49 8b d6             	mov    %r14,%rdx
18006c5e7:	49 89 46 10          	mov    %rax,0x10(%r14)
18006c5eb:	48 8b cf             	mov    %rdi,%rcx
18006c5ee:	e8 bd 14 00 00       	call   0x18006dab0
18006c5f3:	45 33 ed             	xor    %r13d,%r13d
18006c5f6:	41 83 4e 08 10       	orl    $0x10,0x8(%r14)
18006c5fb:	4d 89 37             	mov    %r14,(%r15)
18006c5fe:	4d 89 6f 20          	mov    %r13,0x20(%r15)
18006c602:	49 89 34 24          	mov    %rsi,(%r12)
18006c606:	e9 cd fe ff ff       	jmp    0x18006c4d8
18006c60b:	cc                   	int3
18006c60c:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
18006c611:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
18006c616:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
18006c61b:	55                   	push   %rbp
18006c61c:	56                   	push   %rsi
18006c61d:	57                   	push   %rdi
18006c61e:	41 54                	push   %r12
18006c620:	41 55                	push   %r13
18006c622:	41 56                	push   %r14
18006c624:	41 57                	push   %r15
18006c626:	48 81 ec c0 00 00 00 	sub    $0xc0,%rsp
18006c62d:	48 8b 41 78          	mov    0x78(%rcx),%rax
18006c631:	33 db                	xor    %ebx,%ebx
18006c633:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
18006c638:	41 83 e0 20          	and    $0x20,%r8d
18006c63c:	4c 8b fa             	mov    %rdx,%r15
18006c63f:	48 89 5c 24 48       	mov    %rbx,0x48(%rsp)
18006c644:	48 8b f9             	mov    %rcx,%rdi
18006c647:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
18006c64c:	44 8b 50 40          	mov    0x40(%rax),%r10d
18006c650:	8b eb                	mov    %ebx,%ebp
18006c652:	48 8b 05 f7 84 13 00 	mov    0x1384f7(%rip),%rax        # 0x1801a4b50
18006c659:	44 89 84 24 10 01 00 	mov    %r8d,0x110(%rsp)
18006c660:	00
18006c661:	4e 8b 2c d0          	mov    (%rax,%r10,8),%r13
18006c665:	75 33                	jne    0x18006c69a
18006c667:	41 38 5d 04          	cmp    %bl,0x4(%r13)
18006c66b:	74 0a                	je     0x18006c677
18006c66d:	b8 bb 00 00 c0       	mov    $0xc00000bb,%eax
18006c672:	e9 b6 02 00 00       	jmp    0x18006c92d
18006c677:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
18006c67c:	e8 c7 0d 00 00       	call   0x18006d448
18006c681:	8b f8                	mov    %eax,%edi
18006c683:	85 c0                	test   %eax,%eax
18006c685:	0f 88 a0 02 00 00    	js     0x18006c92b
18006c68b:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
18006c690:	48 8b bc 24 00 01 00 	mov    0x100(%rsp),%rdi
18006c697:	00
18006c698:	eb 3f                	jmp    0x18006c6d9
18006c69a:	8b 42 10             	mov    0x10(%rdx),%eax
18006c69d:	4c 8d 05 54 2c 0e 00 	lea    0xe2c54(%rip),%r8        # 0x18014f2f8
18006c6a4:	44 8b 0a             	mov    (%rdx),%r9d
18006c6a7:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
18006c6ac:	89 44 24 38          	mov    %eax,0x38(%rsp)
18006c6b0:	8b 42 0c             	mov    0xc(%rdx),%eax
18006c6b3:	89 44 24 30          	mov    %eax,0x30(%rsp)
18006c6b7:	8b 42 08             	mov    0x8(%rdx),%eax
18006c6ba:	89 44 24 28          	mov    %eax,0x28(%rsp)
18006c6be:	8b 42 04             	mov    0x4(%rdx),%eax
18006c6c1:	48 89 54 24 48       	mov    %rdx,0x48(%rsp)
18006c6c6:	ba 2f 00 00 00       	mov    $0x2f,%edx
18006c6cb:	89 44 24 20          	mov    %eax,0x20(%rsp)
18006c6cf:	e8 68 14 0c 00       	call   0x18012db3c
18006c6d4:	4c 8d 7c 24 60       	lea    0x60(%rsp),%r15
18006c6d9:	be 80 00 00 00       	mov    $0x80,%esi
18006c6de:	8b ce                	mov    %esi,%ecx
18006c6e0:	e8 6b d7 02 00       	call   0x180099e50
18006c6e5:	4c 8b f0             	mov    %rax,%r14
18006c6e8:	48 85 c0             	test   %rax,%rax
18006c6eb:	75 0a                	jne    0x18006c6f7
18006c6ed:	bf 17 00 00 c0       	mov    $0xc0000017,%edi
18006c6f2:	e9 34 02 00 00       	jmp    0x18006c92b
18006c6f7:	4c 8b c6             	mov    %rsi,%r8
18006c6fa:	33 d2                	xor    %edx,%edx
18006c6fc:	49 8b ce             	mov    %r14,%rcx
18006c6ff:	e8 7c 95 0c 00       	call   0x180135c80
18006c704:	48 8b 17             	mov    (%rdi),%rdx
18006c707:	48 83 c9 ff          	or     $0xffffffffffffffff,%rcx
18006c70b:	48 8b c1             	mov    %rcx,%rax
18006c70e:	48 ff c0             	inc    %rax
18006c711:	66 39 1c 42          	cmp    %bx,(%rdx,%rax,2)
18006c715:	75 f7                	jne    0x18006c70e
18006c717:	48 ff c1             	inc    %rcx
18006c71a:	66 41 39 1c 4f       	cmp    %bx,(%r15,%rcx,2)
18006c71f:	75 f6                	jne    0x18006c717
18006c721:	48 8d 14 01          	lea    (%rcx,%rax,1),%rdx
18006c725:	48 3b d0             	cmp    %rax,%rdx
18006c728:	0f 82 d5 01 00 00    	jb     0x18006c903
18006c72e:	4c 8d 62 02          	lea    0x2(%rdx),%r12
18006c732:	4c 3b e2             	cmp    %rdx,%r12
18006c735:	0f 82 c8 01 00 00    	jb     0x18006c903
18006c73b:	b8 02 00 00 00       	mov    $0x2,%eax
18006c740:	49 f7 e4             	mul    %r12
18006c743:	48 85 d2             	test   %rdx,%rdx
18006c746:	0f 85 b7 01 00 00    	jne    0x18006c903
18006c74c:	48 8b c8             	mov    %rax,%rcx
18006c74f:	8b fb                	mov    %ebx,%edi
18006c751:	e8 fa d6 02 00       	call   0x180099e50
18006c756:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
18006c75b:	48 85 c0             	test   %rax,%rax
18006c75e:	75 0a                	jne    0x18006c76a
18006c760:	bf 17 00 00 c0       	mov    $0xc0000017,%edi
18006c765:	e9 9e 01 00 00       	jmp    0x18006c908
18006c76a:	b9 48 00 00 00       	mov    $0x48,%ecx
18006c76f:	e8 dc d6 02 00       	call   0x180099e50
18006c774:	48 8b f0             	mov    %rax,%rsi
18006c777:	48 85 c0             	test   %rax,%rax
18006c77a:	74 e4                	je     0x18006c760
18006c77c:	33 d2                	xor    %edx,%edx
18006c77e:	48 8b c8             	mov    %rax,%rcx
18006c781:	44 8d 42 48          	lea    0x48(%rdx),%r8d
18006c785:	e8 f6 94 0c 00       	call   0x180135c80
18006c78a:	4c 8b 8c 24 00 01 00 	mov    0x100(%rsp),%r9
18006c791:	00
18006c792:	4c 8d 05 4f 2b 0e 00 	lea    0xe2b4f(%rip),%r8        # 0x18014f2e8
18006c799:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
18006c79e:	49 8b d4             	mov    %r12,%rdx
18006c7a1:	4c 8b 7c 24 40       	mov    0x40(%rsp),%r15
18006c7a6:	49 8b cf             	mov    %r15,%rcx
18006c7a9:	41 8b 41 08          	mov    0x8(%r9),%eax
18006c7ad:	41 89 46 08          	mov    %eax,0x8(%r14)
18006c7b1:	48 8d 05 20 2b 0e 00 	lea    0xe2b20(%rip),%rax        # 0x18014f2d8
18006c7b8:	4d 8b 09             	mov    (%r9),%r9
18006c7bb:	66 41 39 59 02       	cmp    %bx,0x2(%r9)
18006c7c0:	4c 0f 44 c0          	cmove  %rax,%r8
18006c7c4:	e8 73 13 0c 00       	call   0x18012db3c
18006c7c9:	4d 89 3e             	mov    %r15,(%r14)
18006c7cc:	0f 28 05 8d 75 0d 00 	movaps 0xd758d(%rip),%xmm0        # 0x180143d60
18006c7d3:	44 8b bc 24 10 01 00 	mov    0x110(%rsp),%r15d
18006c7da:	00
18006c7db:	41 0f 11 46 30       	movups %xmm0,0x30(%r14)
18006c7e0:	0f 28 0d 89 75 0d 00 	movaps 0xd7589(%rip),%xmm1        # 0x180143d70
18006c7e7:	41 0f 11 4e 40       	movups %xmm1,0x40(%r14)
18006c7ec:	0f 28 05 8d 75 0d 00 	movaps 0xd758d(%rip),%xmm0        # 0x180143d80
18006c7f3:	41 0f 11 46 50       	movups %xmm0,0x50(%r14)
18006c7f8:	0f 28 0d 91 75 0d 00 	movaps 0xd7591(%rip),%xmm1        # 0x180143d90
18006c7ff:	41 0f 11 4e 60       	movups %xmm1,0x60(%r14)
18006c804:	f2 0f 10 05 94 75 0d 	movsd  0xd7594(%rip),%xmm0        # 0x180143da0
18006c80b:	00
18006c80c:	f2 41 0f 11 46 70    	movsd  %xmm0,0x70(%r14)
18006c812:	48 89 2e             	mov    %rbp,(%rsi)
18006c815:	45 85 ff             	test   %r15d,%r15d
18006c818:	74 20                	je     0x18006c83a
18006c81a:	48 8b 54 24 48       	mov    0x48(%rsp),%rdx
18006c81f:	49 8b cd             	mov    %r13,%rcx
18006c822:	e8 b5 09 00 00       	call   0x18006d1dc
18006c827:	48 89 46 08          	mov    %rax,0x8(%rsi)
18006c82b:	48 85 c0             	test   %rax,%rax
18006c82e:	75 77                	jne    0x18006c8a7
18006c830:	bf 0f 00 00 c0       	mov    $0xc000000f,%edi
18006c835:	e9 ce 00 00 00       	jmp    0x18006c908
18006c83a:	8b 45 08             	mov    0x8(%rbp),%eax
18006c83d:	c1 e8 04             	shr    $0x4,%eax
18006c840:	a8 01                	test   $0x1,%al
18006c842:	74 09                	je     0x18006c84d
18006c844:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
18006c848:	48 8b c3             	mov    %rbx,%rax
18006c84b:	eb 5a                	jmp    0x18006c8a7
18006c84d:	66 39 5d 60          	cmp    %bx,0x60(%rbp)
18006c851:	74 37                	je     0x18006c88a
18006c853:	48 8b 45 20          	mov    0x20(%rbp),%rax
18006c857:	48 85 c0             	test   %rax,%rax
18006c85a:	75 0a                	jne    0x18006c866
18006c85c:	bf 02 01 00 c0       	mov    $0xc0000102,%edi
18006c861:	e9 a2 00 00 00       	jmp    0x18006c908
18006c866:	48 39 58 08          	cmp    %rbx,0x8(%rax)
18006c86a:	75 18                	jne    0x18006c884
18006c86c:	48 8d 50 10          	lea    0x10(%rax),%rdx
18006c870:	49 8b cd             	mov    %r13,%rcx
18006c873:	e8 64 09 00 00       	call   0x18006d1dc
18006c878:	48 8b 4d 20          	mov    0x20(%rbp),%rcx
18006c87c:	48 89 41 08          	mov    %rax,0x8(%rcx)
18006c880:	48 8b 45 20          	mov    0x20(%rbp),%rax
18006c884:	48 8b 40 08          	mov    0x8(%rax),%rax
18006c888:	eb 19                	jmp    0x18006c8a3
18006c88a:	48 8b 45 10          	mov    0x10(%rbp),%rax
18006c88e:	48 85 c0             	test   %rax,%rax
18006c891:	75 10                	jne    0x18006c8a3
18006c893:	48 8d 55 40          	lea    0x40(%rbp),%rdx
18006c897:	49 8b cd             	mov    %r13,%rcx
18006c89a:	e8 3d 09 00 00       	call   0x18006d1dc
18006c89f:	48 89 45 10          	mov    %rax,0x10(%rbp)
18006c8a3:	48 89 46 08          	mov    %rax,0x8(%rsi)
18006c8a7:	f6 45 08 10          	testb  $0x10,0x8(%rbp)
18006c8ab:	75 0e                	jne    0x18006c8bb
18006c8ad:	48 85 c0             	test   %rax,%rax
18006c8b0:	74 09                	je     0x18006c8bb
18006c8b2:	39 58 14             	cmp    %ebx,0x14(%rax)
18006c8b5:	0f 8f 75 ff ff ff    	jg     0x18006c830
18006c8bb:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
18006c8c0:	8b 40 40             	mov    0x40(%rax),%eax
18006c8c3:	89 46 40             	mov    %eax,0x40(%rsi)
18006c8c6:	49 89 76 78          	mov    %rsi,0x78(%r14)
18006c8ca:	45 85 ff             	test   %r15d,%r15d
18006c8cd:	75 16                	jne    0x18006c8e5
18006c8cf:	8b 45 08             	mov    0x8(%rbp),%eax
18006c8d2:	c1 e8 04             	shr    $0x4,%eax
18006c8d5:	a8 01                	test   $0x1,%al
18006c8d7:	74 0c                	je     0x18006c8e5
18006c8d9:	83 4e 38 01          	orl    $0x1,0x38(%rsi)
18006c8dd:	41 0f ba 6e 10 10    	btsl   $0x10,0x10(%r14)
18006c8e3:	eb 0d                	jmp    0x18006c8f2
18006c8e5:	48 8b 46 08          	mov    0x8(%rsi),%rax
18006c8e9:	48 85 c0             	test   %rax,%rax
18006c8ec:	74 04                	je     0x18006c8f2
18006c8ee:	48 8b 58 10          	mov    0x10(%rax),%rbx
18006c8f2:	48 89 5e 20          	mov    %rbx,0x20(%rsi)
18006c8f6:	48 8b 84 24 18 01 00 	mov    0x118(%rsp),%rax
18006c8fd:	00
18006c8fe:	4c 89 30             	mov    %r14,(%rax)
18006c901:	eb 28                	jmp    0x18006c92b
18006c903:	bf 95 00 00 c0       	mov    $0xc0000095,%edi
18006c908:	49 39 1e             	cmp    %rbx,(%r14)
18006c90b:	74 08                	je     0x18006c915
18006c90d:	49 8b 0e             	mov    (%r14),%rcx
18006c910:	e8 e7 d6 02 00       	call   0x180099ffc
18006c915:	49 8b 4e 78          	mov    0x78(%r14),%rcx
18006c919:	48 85 c9             	test   %rcx,%rcx
18006c91c:	74 05                	je     0x18006c923
18006c91e:	e8 d9 d6 02 00       	call   0x180099ffc
18006c923:	49 8b ce             	mov    %r14,%rcx
18006c926:	e8 d1 d6 02 00       	call   0x180099ffc
18006c92b:	8b c7                	mov    %edi,%eax
18006c92d:	48 8b 9c 24 08 01 00 	mov    0x108(%rsp),%rbx
18006c934:	00
18006c935:	48 81 c4 c0 00 00 00 	add    $0xc0,%rsp
18006c93c:	41 5f                	pop    %r15
18006c93e:	41 5e                	pop    %r14
18006c940:	41 5d                	pop    %r13
18006c942:	41 5c                	pop    %r12
18006c944:	5f                   	pop    %rdi
18006c945:	5e                   	pop    %rsi
18006c946:	5d                   	pop    %rbp
18006c947:	c3                   	ret
18006c948:	cc                   	int3
18006c949:	cc                   	int3
18006c94a:	cc                   	int3
18006c94b:	cc                   	int3
18006c94c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18006c951:	57                   	push   %rdi
18006c952:	48 83 ec 20          	sub    $0x20,%rsp
18006c956:	48 8b 79 78          	mov    0x78(%rcx),%rdi
18006c95a:	48 8b d9             	mov    %rcx,%rbx
18006c95d:	48 8b cf             	mov    %rdi,%rcx
18006c960:	e8 97 d6 02 00       	call   0x180099ffc
18006c965:	48 8b 0b             	mov    (%rbx),%rcx
18006c968:	e8 8f d6 02 00       	call   0x180099ffc
18006c96d:	48 8b 4f 18          	mov    0x18(%rdi),%rcx
18006c971:	48 85 c9             	test   %rcx,%rcx
18006c974:	74 05                	je     0x18006c97b
18006c976:	e8 81 d6 02 00       	call   0x180099ffc
18006c97b:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18006c980:	33 c0                	xor    %eax,%eax
18006c982:	48 83 c4 20          	add    $0x20,%rsp
18006c986:	5f                   	pop    %rdi
18006c987:	c3                   	ret
18006c988:	cc                   	int3
18006c989:	cc                   	int3
18006c98a:	cc                   	int3
18006c98b:	cc                   	int3
18006c98c:	40 53                	rex push %rbx
18006c98e:	48 83 ec 20          	sub    $0x20,%rsp
18006c992:	49 8b d9             	mov    %r9,%rbx
18006c995:	4c 8d 4c 24 48       	lea    0x48(%rsp),%r9
18006c99a:	e8 ed 0b 00 00       	call   0x18006d58c
18006c99f:	48 85 db             	test   %rbx,%rbx
18006c9a2:	74 06                	je     0x18006c9aa
18006c9a4:	8b 4c 24 48          	mov    0x48(%rsp),%ecx
18006c9a8:	89 0b                	mov    %ecx,(%rbx)
18006c9aa:	48 83 c4 20          	add    $0x20,%rsp
18006c9ae:	5b                   	pop    %rbx
18006c9af:	c3                   	ret
18006c9b0:	cc                   	int3
18006c9b1:	cc                   	int3
18006c9b2:	cc                   	int3
18006c9b3:	cc                   	int3
18006c9b4:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
18006c9b9:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
18006c9be:	56                   	push   %rsi
18006c9bf:	57                   	push   %rdi
18006c9c0:	41 54                	push   %r12
18006c9c2:	41 56                	push   %r14
18006c9c4:	41 57                	push   %r15
18006c9c6:	48 83 ec 20          	sub    $0x20,%rsp
18006c9ca:	4c 8b 71 78          	mov    0x78(%rcx),%r14
18006c9ce:	45 33 e4             	xor    %r12d,%r12d
18006c9d1:	48 8b 05 78 81 13 00 	mov    0x138178(%rip),%rax        # 0x1801a4b50
18006c9d8:	4d 8b f8             	mov    %r8,%r15
18006c9db:	48 8b f2             	mov    %rdx,%rsi
18006c9de:	48 8b d9             	mov    %rcx,%rbx
18006c9e1:	45 8b 4e 40          	mov    0x40(%r14),%r9d
18006c9e5:	4a 8b 2c c8          	mov    (%rax,%r9,8),%rbp
18006c9e9:	48 85 d2             	test   %rdx,%rdx
18006c9ec:	74 7a                	je     0x18006ca68
18006c9ee:	66 44 39 22          	cmp    %r12w,(%rdx)
18006c9f2:	74 74                	je     0x18006ca68
18006c9f4:	49 8b 7e 10          	mov    0x10(%r14),%rdi
18006c9f8:	48 83 ca ff          	or     $0xffffffffffffffff,%rdx
18006c9fc:	48 ff c2             	inc    %rdx
18006c9ff:	66 44 39 24 56       	cmp    %r12w,(%rsi,%rdx,2)
18006ca04:	75 f6                	jne    0x18006c9fc
18006ca06:	48 85 ff             	test   %rdi,%rdi
18006ca09:	74 22                	je     0x18006ca2d
18006ca0b:	0f b7 4f 64          	movzwl 0x64(%rdi),%ecx
18006ca0f:	8b c2                	mov    %edx,%eax
18006ca11:	48 03 c0             	add    %rax,%rax
18006ca14:	48 3b c8             	cmp    %rax,%rcx
18006ca17:	75 14                	jne    0x18006ca2d
18006ca19:	44 0f b7 c2          	movzwl %dx,%r8d
18006ca1d:	48 8d 4f 66          	lea    0x66(%rdi),%rcx
18006ca21:	48 8b d6             	mov    %rsi,%rdx
18006ca24:	e8 fb 0a 00 00       	call   0x18006d524
18006ca29:	84 c0                	test   %al,%al
18006ca2b:	75 23                	jne    0x18006ca50
18006ca2d:	4c 8d 44 24 50       	lea    0x50(%rsp),%r8
18006ca32:	48 8b d6             	mov    %rsi,%rdx
18006ca35:	48 8b cb             	mov    %rbx,%rcx
18006ca38:	e8 0b 0a 00 00       	call   0x18006d448
18006ca3d:	85 c0                	test   %eax,%eax
18006ca3f:	79 0a                	jns    0x18006ca4b
18006ca41:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18006ca46:	e9 8f 00 00 00       	jmp    0x18006cada
18006ca4b:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
18006ca50:	48 8b 1f             	mov    (%rdi),%rbx
18006ca53:	48 85 db             	test   %rbx,%rbx
18006ca56:	74 31                	je     0x18006ca89
18006ca58:	48 8b d3             	mov    %rbx,%rdx
18006ca5b:	48 8b cd             	mov    %rbp,%rcx
18006ca5e:	e8 09 08 00 00       	call   0x18006d26c
18006ca63:	48 89 07             	mov    %rax,(%rdi)
18006ca66:	eb 1b                	jmp    0x18006ca83
18006ca68:	49 8b 3e             	mov    (%r14),%rdi
18006ca6b:	48 8b 5f 10          	mov    0x10(%rdi),%rbx
18006ca6f:	48 85 db             	test   %rbx,%rbx
18006ca72:	74 15                	je     0x18006ca89
18006ca74:	48 8b d3             	mov    %rbx,%rdx
18006ca77:	48 8b cd             	mov    %rbp,%rcx
18006ca7a:	e8 ed 07 00 00       	call   0x18006d26c
18006ca7f:	48 89 47 10          	mov    %rax,0x10(%rdi)
18006ca83:	48 8b d8             	mov    %rax,%rbx
18006ca86:	48 85 c0             	test   %rax,%rax