1400187f6:	44 8b f8             	mov    %eax,%r15d
1400187f9:	48 8b 43 10          	mov    0x10(%rbx),%rax
1400187fd:	48 ff c8             	dec    %rax
140018800:	48 89 43 10          	mov    %rax,0x10(%rbx)
140018804:	4c 39 63 08          	cmp    %r12,0x8(%rbx)
140018808:	74 06                	je     0x140018810
14001880a:	48 3b 43 08          	cmp    0x8(%rbx),%rax
14001880e:	77 2c                	ja     0x14001883c
140018810:	8d 42 01             	lea    0x1(%rdx),%eax
140018813:	3c 01                	cmp    $0x1,%al
140018815:	76 25                	jbe    0x14001883c
140018817:	48 8b 03             	mov    (%rbx),%rax
14001881a:	0f be ca             	movsbl %dl,%ecx
14001881d:	83 f9 ff             	cmp    $0xffffffff,%ecx
140018820:	74 1a                	je     0x14001883c
140018822:	48 ff 48 08          	decq   0x8(%rax)
140018826:	48 8b 10             	mov    (%rax),%rdx
140018829:	e8 ca d5 00 00       	call   0x140025df8
14001882e:	eb 0c                	jmp    0x14001883c
140018830:	85 f6                	test   %esi,%esi
140018832:	b8 0a 00 00 00       	mov    $0xa,%eax
140018837:	0f 45 c6             	cmovne %esi,%eax
14001883a:	8b f0                	mov    %eax,%esi
14001883c:	4c 63 fe             	movslq %esi,%r15
14001883f:	33 d2                	xor    %edx,%edx
140018841:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
140018845:	49 f7 f7             	div    %r15
140018848:	4c 8b f0             	mov    %rax,%r14
14001884b:	8d 4f d0             	lea    -0x30(%rdi),%ecx
14001884e:	44 0f be c7          	movsbl %dil,%r8d
140018852:	80 f9 09             	cmp    $0x9,%cl
140018855:	77 06                	ja     0x14001885d
140018857:	41 8d 48 d0          	lea    -0x30(%r8),%ecx
14001885b:	eb 1d                	jmp    0x14001887a
14001885d:	8d 47 9f             	lea    -0x61(%rdi),%eax
140018860:	3c 19                	cmp    $0x19,%al
140018862:	77 06                	ja     0x14001886a
140018864:	41 8d 48 a9          	lea    -0x57(%r8),%ecx
140018868:	eb 10                	jmp    0x14001887a
14001886a:	8d 47 bf             	lea    -0x41(%rdi),%eax
14001886d:	3c 19                	cmp    $0x19,%al
14001886f:	77 06                	ja     0x140018877
140018871:	41 8d 48 c9          	lea    -0x37(%r8),%ecx
140018875:	eb 03                	jmp    0x14001887a
140018877:	83 c9 ff             	or     $0xffffffff,%ecx
14001887a:	3b ce                	cmp    %esi,%ecx
14001887c:	73 65                	jae    0x1400188e3
14001887e:	8b d1                	mov    %ecx,%edx
140018880:	49 8b c7             	mov    %r15,%rax
140018883:	49 0f af c4          	imul   %r12,%rax
140018887:	33 c9                	xor    %ecx,%ecx
140018889:	48 03 d0             	add    %rax,%rdx
14001888c:	48 3b d0             	cmp    %rax,%rdx
14001888f:	0f 92 c1             	setb   %cl
140018892:	33 c0                	xor    %eax,%eax
140018894:	4d 3b e6             	cmp    %r14,%r12
140018897:	4c 8b e2             	mov    %rdx,%r12
14001889a:	0f 97 c0             	seta   %al
14001889d:	0b c8                	or     %eax,%ecx
14001889f:	48 8b 43 10          	mov    0x10(%rbx),%rax
1400188a3:	c1 e1 02             	shl    $0x2,%ecx
1400188a6:	83 c9 08             	or     $0x8,%ecx
1400188a9:	0b e9                	or     %ecx,%ebp
1400188ab:	48 ff c0             	inc    %rax
1400188ae:	48 83 7b 08 00       	cmpq   $0x0,0x8(%rbx)
1400188b3:	48 89 43 10          	mov    %rax,0x10(%rbx)
1400188b7:	74 06                	je     0x1400188bf
1400188b9:	48 3b 43 08          	cmp    0x8(%rbx),%rax
1400188bd:	77 1c                	ja     0x1400188db
1400188bf:	48 8b 3b             	mov    (%rbx),%rdi
1400188c2:	48 8b 0f             	mov    (%rdi),%rcx
1400188c5:	e8 fe cf 00 00       	call   0x1400258c8
1400188ca:	83 f8 ff             	cmp    $0xffffffff,%eax
1400188cd:	74 0c                	je     0x1400188db
1400188cf:	48 ff 47 08          	incq   0x8(%rdi)
1400188d3:	40 8a f8             	mov    %al,%dil
1400188d6:	e9 70 ff ff ff       	jmp    0x14001884b
1400188db:	40 32 ff             	xor    %dil,%dil
1400188de:	e9 68 ff ff ff       	jmp    0x14001884b
1400188e3:	48 8b 43 10          	mov    0x10(%rbx),%rax
1400188e7:	4c 8d 73 18          	lea    0x18(%rbx),%r14
1400188eb:	48 ff c8             	dec    %rax
1400188ee:	33 f6                	xor    %esi,%esi
1400188f0:	48 89 43 10          	mov    %rax,0x10(%rbx)
1400188f4:	48 39 73 08          	cmp    %rsi,0x8(%rbx)
1400188f8:	74 06                	je     0x140018900
1400188fa:	48 3b 43 08          	cmp    0x8(%rbx),%rax
1400188fe:	77 21                	ja     0x140018921
140018900:	40 fe c7             	inc    %dil
140018903:	40 80 ff 01          	cmp    $0x1,%dil
140018907:	76 18                	jbe    0x140018921
140018909:	48 8b 13             	mov    (%rbx),%rdx
14001890c:	41 83 f8 ff          	cmp    $0xffffffff,%r8d
140018910:	74 0f                	je     0x140018921
140018912:	48 ff 4a 08          	decq   0x8(%rdx)
140018916:	41 8b c8             	mov    %r8d,%ecx
140018919:	48 8b 12             	mov    (%rdx),%rdx
14001891c:	e8 d7 d4 00 00       	call   0x140025df8
140018921:	40 f6 c5 08          	test   $0x8,%bpl
140018925:	75 29                	jne    0x140018950
140018927:	48 8b 44 24 78       	mov    0x78(%rsp),%rax
14001892c:	48 3b 43 10          	cmp    0x10(%rbx),%rax
140018930:	74 06                	je     0x140018938
140018932:	49 8b 06             	mov    (%r14),%rax
140018935:	40 88 30             	mov    %sil,(%rax)
140018938:	49 8b 06             	mov    (%r14),%rax
14001893b:	48 85 c0             	test   %rax,%rax
14001893e:	74 09                	je     0x140018949
140018940:	48 39 73 10          	cmp    %rsi,0x10(%rbx)
140018944:	75 03                	jne    0x140018949
140018946:	40 88 30             	mov    %sil,(%rax)
140018949:	33 c0                	xor    %eax,%eax
14001894b:	e9 81 00 00 00       	jmp    0x1400189d1
140018950:	49 8b d4             	mov    %r12,%rdx
140018953:	8b cd                	mov    %ebp,%ecx
140018955:	e8 fe c8 ff ff       	call   0x140015258
14001895a:	84 c0                	test   %al,%al
14001895c:	74 56                	je     0x1400189b4
14001895e:	41 c6 45 30 01       	movb   $0x1,0x30(%r13)
140018963:	41 c7 45 2c 22 00 00 	movl   $0x22,0x2c(%r13)
14001896a:	00
14001896b:	40 f6 c5 01          	test   $0x1,%bpl
14001896f:	75 06                	jne    0x140018977
140018971:	49 83 cc ff          	or     $0xffffffffffffffff,%r12
140018975:	eb 46                	jmp    0x1400189bd
140018977:	49 8b 06             	mov    (%r14),%rax
14001897a:	40 f6 c5 02          	test   $0x2,%bpl
14001897e:	74 1a                	je     0x14001899a
140018980:	48 85 c0             	test   %rax,%rax
140018983:	74 09                	je     0x14001898e
140018985:	48 39 73 10          	cmp    %rsi,0x10(%rbx)
140018989:	75 03                	jne    0x14001898e
14001898b:	40 88 30             	mov    %sil,(%rax)
14001898e:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140018995:	00 00 80
140018998:	eb 37                	jmp    0x1400189d1
14001899a:	48 85 c0             	test   %rax,%rax
14001899d:	74 09                	je     0x1400189a8
14001899f:	48 39 73 10          	cmp    %rsi,0x10(%rbx)
1400189a3:	75 03                	jne    0x1400189a8
1400189a5:	40 88 30             	mov    %sil,(%rax)
1400189a8:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
1400189af:	ff ff 7f
1400189b2:	eb 1d                	jmp    0x1400189d1
1400189b4:	40 f6 c5 02          	test   $0x2,%bpl
1400189b8:	74 03                	je     0x1400189bd
1400189ba:	49 f7 dc             	neg    %r12
1400189bd:	49 8b 0e             	mov    (%r14),%rcx
1400189c0:	48 85 c9             	test   %rcx,%rcx
1400189c3:	74 09                	je     0x1400189ce
1400189c5:	48 39 73 10          	cmp    %rsi,0x10(%rbx)
1400189c9:	75 03                	jne    0x1400189ce
1400189cb:	40 88 31             	mov    %sil,(%rcx)
1400189ce:	49 8b c4             	mov    %r12,%rax
1400189d1:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
1400189d6:	48 83 c4 30          	add    $0x30,%rsp
1400189da:	41 5f                	pop    %r15
1400189dc:	41 5e                	pop    %r14
1400189de:	41 5d                	pop    %r13
1400189e0:	41 5c                	pop    %r12
1400189e2:	5f                   	pop    %rdi
1400189e3:	5e                   	pop    %rsi
1400189e4:	5d                   	pop    %rbp
1400189e5:	c3                   	ret
1400189e6:	cc                   	int3
1400189e7:	cc                   	int3
1400189e8:	48 8b c4             	mov    %rsp,%rax
1400189eb:	48 89 58 08          	mov    %rbx,0x8(%rax)
1400189ef:	48 89 70 10          	mov    %rsi,0x10(%rax)
1400189f3:	48 89 78 18          	mov    %rdi,0x18(%rax)
1400189f7:	4c 89 70 20          	mov    %r14,0x20(%rax)
1400189fb:	55                   	push   %rbp
1400189fc:	48 8b ec             	mov    %rsp,%rbp
1400189ff:	48 81 ec 80 00 00 00 	sub    $0x80,%rsp
140018a06:	45 33 f6             	xor    %r14d,%r14d
140018a09:	48 8b fa             	mov    %rdx,%rdi
140018a0c:	4c 89 75 c0          	mov    %r14,-0x40(%rbp)
140018a10:	44 88 75 d0          	mov    %r14b,-0x30(%rbp)
140018a14:	44 88 75 e8          	mov    %r14b,-0x18(%rbp)
140018a18:	44 88 75 f0          	mov    %r14b,-0x10(%rbp)
140018a1c:	44 88 75 f8          	mov    %r14b,-0x8(%rbp)
140018a20:	48 85 c9             	test   %rcx,%rcx
140018a23:	74 05                	je     0x140018a2a
140018a25:	0f 10 01             	movups (%rcx),%xmm0
140018a28:	eb 10                	jmp    0x140018a3a
140018a2a:	44 39 35 4b 96 03 00 	cmp    %r14d,0x3964b(%rip)        # 0x14005207c
140018a31:	75 10                	jne    0x140018a43
140018a33:	0f 10 05 8e 59 03 00 	movups 0x3598e(%rip),%xmm0        # 0x14004e3c8
140018a3a:	c6 45 e8 01          	movb   $0x1,-0x18(%rbp)
140018a3e:	f3 0f 7f 45 d8       	movdqu %xmm0,-0x28(%rbp)
140018a43:	48 8b 02             	mov    (%rdx),%rax
140018a46:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
140018a4a:	48 89 45 a0          	mov    %rax,-0x60(%rbp)
140018a4e:	48 8b 42 08          	mov    0x8(%rdx),%rax
140018a52:	48 89 45 a8          	mov    %rax,-0x58(%rbp)
140018a56:	48 8b 42 10          	mov    0x10(%rdx),%rax
140018a5a:	48 89 45 b0          	mov    %rax,-0x50(%rbp)
140018a5e:	48 8b 42 18          	mov    0x18(%rdx),%rax
140018a62:	4c 89 72 18          	mov    %r14,0x18(%rdx)
140018a66:	4c 89 32             	mov    %r14,(%rdx)
140018a69:	48 8d 55 a0          	lea    -0x60(%rbp),%rdx
140018a6d:	48 89 45 b8          	mov    %rax,-0x48(%rbp)
140018a71:	e8 42 fb ff ff       	call   0x1400185b8
140018a76:	80 7d e8 02          	cmpb   $0x2,-0x18(%rbp)
140018a7a:	48 8b f0             	mov    %rax,%rsi
140018a7d:	75 0b                	jne    0x140018a8a
140018a7f:	48 8b 4d c0          	mov    -0x40(%rbp),%rcx
140018a83:	83 a1 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rcx)
140018a8a:	44 38 75 f0          	cmp    %r14b,-0x10(%rbp)
140018a8e:	74 0f                	je     0x140018a9f
140018a90:	8b 5d ec             	mov    -0x14(%rbp),%ebx
140018a93:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
140018a97:	e8 cc 60 ff ff       	call   0x14000eb68
140018a9c:	89 58 20             	mov    %ebx,0x20(%rax)
140018a9f:	44 38 75 f8          	cmp    %r14b,-0x8(%rbp)
140018aa3:	74 0f                	je     0x140018ab4
140018aa5:	8b 5d f4             	mov    -0xc(%rbp),%ebx
140018aa8:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
140018aac:	e8 b7 60 ff ff       	call   0x14000eb68
140018ab1:	89 58 24             	mov    %ebx,0x24(%rax)
140018ab4:	48 8b 47 18          	mov    0x18(%rdi),%rax
140018ab8:	48 85 c0             	test   %rax,%rax
140018abb:	74 09                	je     0x140018ac6
140018abd:	4c 39 77 10          	cmp    %r14,0x10(%rdi)
140018ac1:	75 03                	jne    0x140018ac6
140018ac3:	44 88 30             	mov    %r14b,(%rax)
140018ac6:	4c 8d 9c 24 80 00 00 	lea    0x80(%rsp),%r11
140018acd:	00
140018ace:	48 8b c6             	mov    %rsi,%rax
140018ad1:	49 8b 5b 10          	mov    0x10(%r11),%rbx
140018ad5:	49 8b 73 18          	mov    0x18(%r11),%rsi
140018ad9:	49 8b 7b 20          	mov    0x20(%r11),%rdi
140018add:	4d 8b 73 28          	mov    0x28(%r11),%r14
140018ae1:	49 8b e3             	mov    %r11,%rsp
140018ae4:	5d                   	pop    %rbp
140018ae5:	c3                   	ret
140018ae6:	cc                   	int3
140018ae7:	cc                   	int3
140018ae8:	4c 8b dc             	mov    %rsp,%r11
140018aeb:	49 89 5b 18          	mov    %rbx,0x18(%r11)
140018aef:	57                   	push   %rdi
140018af0:	48 83 ec 40          	sub    $0x40,%rsp
140018af4:	48 8d 41 08          	lea    0x8(%rcx),%rax
140018af8:	c6 44 24 50 01       	movb   $0x1,0x50(%rsp)
140018afd:	49 89 43 d8          	mov    %rax,-0x28(%r11)
140018b01:	4d 8d 43 10          	lea    0x10(%r11),%r8
140018b05:	48 8b 41 38          	mov    0x38(%rcx),%rax
140018b09:	49 8d 53 d8          	lea    -0x28(%r11),%rdx
140018b0d:	49 89 43 e0          	mov    %rax,-0x20(%r11)
140018b11:	48 8b f9             	mov    %rcx,%rdi
140018b14:	48 8b 49 70          	mov    0x70(%rcx),%rcx
140018b18:	49 8d 43 08          	lea    0x8(%r11),%rax
140018b1c:	0f 57 c0             	xorps  %xmm0,%xmm0
140018b1f:	49 89 43 f0          	mov    %rax,-0x10(%r11)
140018b23:	33 db                	xor    %ebx,%ebx
140018b25:	f3 0f 11 44 24 58    	movss  %xmm0,0x58(%rsp)
140018b2b:	49 89 5b e8          	mov    %rbx,-0x18(%r11)
140018b2f:	e8 8c e8 ff ff       	call   0x1400173c0
140018b34:	38 5c 24 50          	cmp    %bl,0x50(%rsp)
140018b38:	74 40                	je     0x140018b7a
140018b3a:	83 f8 01             	cmp    $0x1,%eax
140018b3d:	74 3b                	je     0x140018b7a
140018b3f:	38 5f 32             	cmp    %bl,0x32(%rdi)
140018b42:	74 04                	je     0x140018b48
140018b44:	b0 01                	mov    $0x1,%al
140018b46:	eb 34                	jmp    0x140018b7c
140018b48:	48 8b 4f 78          	mov    0x78(%rdi),%rcx
140018b4c:	48 8d 41 08          	lea    0x8(%rcx),%rax
140018b50:	48 89 47 78          	mov    %rax,0x78(%rdi)
140018b54:	48 8b 11             	mov    (%rcx),%rdx
140018b57:	48 85 d2             	test   %rdx,%rdx
140018b5a:	75 12                	jne    0x140018b6e
140018b5c:	e8 7b 85 00 00       	call   0x1400210dc
140018b61:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140018b67:	e8 e8 63 ff ff       	call   0x14000ef54
140018b6c:	eb 08                	jmp    0x140018b76
140018b6e:	8b 44 24 58          	mov    0x58(%rsp),%eax
140018b72:	b3 01                	mov    $0x1,%bl
140018b74:	89 02                	mov    %eax,(%rdx)
140018b76:	8a c3                	mov    %bl,%al
140018b78:	eb 02                	jmp    0x140018b7c
140018b7a:	32 c0                	xor    %al,%al
140018b7c:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140018b81:	48 83 c4 40          	add    $0x40,%rsp
140018b85:	5f                   	pop    %rdi
140018b86:	c3                   	ret
140018b87:	cc                   	int3
140018b88:	4c 8b dc             	mov    %rsp,%r11
140018b8b:	49 89 5b 18          	mov    %rbx,0x18(%r11)
140018b8f:	57                   	push   %rdi
140018b90:	48 83 ec 40          	sub    $0x40,%rsp
140018b94:	48 8d 41 08          	lea    0x8(%rcx),%rax
140018b98:	c6 44 24 50 01       	movb   $0x1,0x50(%rsp)
140018b9d:	49 89 43 d8          	mov    %rax,-0x28(%r11)
140018ba1:	4d 8d 43 10          	lea    0x10(%r11),%r8
140018ba5:	48 8b 41 38          	mov    0x38(%rcx),%rax
140018ba9:	49 8d 53 d8          	lea    -0x28(%r11),%rdx
140018bad:	49 89 43 e0          	mov    %rax,-0x20(%r11)
140018bb1:	48 8b f9             	mov    %rcx,%rdi
140018bb4:	48 8b 49 70          	mov    0x70(%rcx),%rcx
140018bb8:	49 8d 43 08          	lea    0x8(%r11),%rax
140018bbc:	0f 57 c0             	xorps  %xmm0,%xmm0
140018bbf:	49 89 43 f0          	mov    %rax,-0x10(%r11)
140018bc3:	33 db                	xor    %ebx,%ebx
140018bc5:	f2 0f 11 44 24 58    	movsd  %xmm0,0x58(%rsp)
140018bcb:	49 89 5b e8          	mov    %rbx,-0x18(%r11)
140018bcf:	e8 94 e8 ff ff       	call   0x140017468
140018bd4:	38 5c 24 50          	cmp    %bl,0x50(%rsp)
140018bd8:	74 42                	je     0x140018c1c
140018bda:	83 f8 01             	cmp    $0x1,%eax
140018bdd:	74 3d                	je     0x140018c1c
140018bdf:	38 5f 32             	cmp    %bl,0x32(%rdi)
140018be2:	74 04                	je     0x140018be8
140018be4:	b0 01                	mov    $0x1,%al
140018be6:	eb 36                	jmp    0x140018c1e
140018be8:	48 8b 4f 78          	mov    0x78(%rdi),%rcx
140018bec:	48 8d 41 08          	lea    0x8(%rcx),%rax
140018bf0:	48 89 47 78          	mov    %rax,0x78(%rdi)
140018bf4:	48 8b 11             	mov    (%rcx),%rdx
140018bf7:	48 85 d2             	test   %rdx,%rdx
140018bfa:	75 12                	jne    0x140018c0e
140018bfc:	e8 db 84 00 00       	call   0x1400210dc
140018c01:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140018c07:	e8 48 63 ff ff       	call   0x14000ef54
140018c0c:	eb 0a                	jmp    0x140018c18
140018c0e:	48 8b 44 24 58       	mov    0x58(%rsp),%rax
140018c13:	b3 01                	mov    $0x1,%bl
140018c15:	48 89 02             	mov    %rax,(%rdx)
140018c18:	8a c3                	mov    %bl,%al
140018c1a:	eb 02                	jmp    0x140018c1e
140018c1c:	32 c0                	xor    %al,%al
140018c1e:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140018c23:	48 83 c4 40          	add    $0x40,%rsp
140018c27:	5f                   	pop    %rdi
140018c28:	c3                   	ret
140018c29:	cc                   	int3
140018c2a:	cc                   	int3
140018c2b:	cc                   	int3
140018c2c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140018c31:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140018c36:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140018c3b:	57                   	push   %rdi
140018c3c:	41 54                	push   %r12
140018c3e:	41 55                	push   %r13
140018c40:	41 56                	push   %r14
140018c42:	41 57                	push   %r15
140018c44:	48 83 ec 20          	sub    $0x20,%rsp
140018c48:	33 f6                	xor    %esi,%esi
140018c4a:	44 8b fa             	mov    %edx,%r15d
140018c4d:	48 8b d9             	mov    %rcx,%rbx