14015c658:	48 8b f0             	mov    %rax,%rsi
14015c65b:	48 85 c0             	test   %rax,%rax
14015c65e:	0f 84 32 02 00 00    	je     0x14015c896
14015c664:	49 8b d4             	mov    %r12,%rdx
14015c667:	48 8b c8             	mov    %rax,%rcx
14015c66a:	e8 b1 93 fd ff       	call   0x140135a20
14015c66f:	85 c0                	test   %eax,%eax
14015c671:	0f 84 1f 02 00 00    	je     0x14015c896
14015c677:	49 8b d7             	mov    %r15,%rdx
14015c67a:	49 8b ce             	mov    %r14,%rcx
14015c67d:	e8 9e 93 fd ff       	call   0x140135a20
14015c682:	85 c0                	test   %eax,%eax
14015c684:	0f 84 0c 02 00 00    	je     0x14015c896
14015c68a:	45 8b 7e 0c          	mov    0xc(%r14),%r15d
14015c68e:	44 8b dd             	mov    %ebp,%r11d
14015c691:	45 85 ff             	test   %r15d,%r15d
14015c694:	7e 70                	jle    0x14015c706
14015c696:	4c 63 66 0c          	movslq 0xc(%rsi),%r12
14015c69a:	4c 8b d5             	mov    %rbp,%r10
14015c69d:	0f 1f 00             	nopl   (%rax)
14015c6a0:	4d 3b d4             	cmp    %r12,%r10
14015c6a3:	7d 61                	jge    0x14015c706
14015c6a5:	48 8b 06             	mov    (%rsi),%rax
14015c6a8:	44 8b c5             	mov    %ebp,%r8d
14015c6ab:	49 8b 16             	mov    (%r14),%rdx
14015c6ae:	41 b9 10 00 00 00    	mov    $0x10,%r9d
14015c6b4:	4a 8b 0c d0          	mov    (%rax,%r10,8),%rcx
14015c6b8:	4a 8b 04 d2          	mov    (%rdx,%r10,8),%rax
14015c6bc:	8b d5                	mov    %ebp,%edx
14015c6be:	48 0b c1             	or     %rcx,%rax
14015c6c1:	8b cd                	mov    %ebp,%ecx
14015c6c3:	48 f7 d0             	not    %rax
14015c6c6:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
14015c6cd:	00 00 00
14015c6d0:	23 d8                	and    %eax,%ebx
14015c6d2:	48 d1 e8             	shr    $1,%rax
14015c6d5:	03 fb                	add    %ebx,%edi
14015c6d7:	23 d8                	and    %eax,%ebx
14015c6d9:	48 d1 e8             	shr    $1,%rax
14015c6dc:	44 03 c3             	add    %ebx,%r8d
14015c6df:	23 d8                	and    %eax,%ebx
14015c6e1:	48 d1 e8             	shr    $1,%rax
14015c6e4:	03 d3                	add    %ebx,%edx
14015c6e6:	23 d8                	and    %eax,%ebx
14015c6e8:	03 cb                	add    %ebx,%ecx
14015c6ea:	48 d1 e8             	shr    $1,%rax
14015c6ed:	49 83 e9 01          	sub    $0x1,%r9
14015c6f1:	75 dd                	jne    0x14015c6d0
14015c6f3:	8d 04 11             	lea    (%rcx,%rdx,1),%eax
14015c6f6:	41 ff c3             	inc    %r11d
14015c6f9:	41 03 c0             	add    %r8d,%eax
14015c6fc:	49 ff c2             	inc    %r10
14015c6ff:	03 f8                	add    %eax,%edi
14015c701:	45 3b df             	cmp    %r15d,%r11d
14015c704:	7c 9a                	jl     0x14015c6a0
14015c706:	44 8b c7             	mov    %edi,%r8d
14015c709:	49 8b d6             	mov    %r14,%rdx
14015c70c:	49 8b ce             	mov    %r14,%rcx
14015c70f:	e8 bc 93 fd ff       	call   0x140135ad0
14015c714:	85 c0                	test   %eax,%eax
14015c716:	0f 84 7a 01 00 00    	je     0x14015c896
14015c71c:	44 8b c7             	mov    %edi,%r8d
14015c71f:	48 8b d6             	mov    %rsi,%rdx
14015c722:	48 8b ce             	mov    %rsi,%rcx
14015c725:	e8 a6 93 fd ff       	call   0x140135ad0
14015c72a:	85 c0                	test   %eax,%eax
14015c72c:	0f 84 64 01 00 00    	je     0x14015c896
14015c732:	45 8b 66 08          	mov    0x8(%r14),%r12d
14015c736:	49 8b ce             	mov    %r14,%rcx
14015c739:	44 3b 66 08          	cmp    0x8(%rsi),%r12d
14015c73d:	44 0f 4c 66 08       	cmovl  0x8(%rsi),%r12d
14015c742:	41 ff c4             	inc    %r12d
14015c745:	41 8b d4             	mov    %r12d,%edx
14015c748:	e8 83 54 f9 ff       	call   0x1400f1bd0
14015c74d:	48 85 c0             	test   %rax,%rax
14015c750:	0f 84 40 01 00 00    	je     0x14015c896
14015c756:	41 8b d4             	mov    %r12d,%edx
14015c759:	48 8b ce             	mov    %rsi,%rcx
14015c75c:	e8 6f 54 f9 ff       	call   0x1400f1bd0
14015c761:	48 85 c0             	test   %rax,%rax
14015c764:	0f 84 2c 01 00 00    	je     0x14015c896
14015c76a:	41 8b d4             	mov    %r12d,%edx
14015c76d:	49 8b cd             	mov    %r13,%rcx
14015c770:	e8 5b 54 f9 ff       	call   0x1400f1bd0
14015c775:	48 85 c0             	test   %rax,%rax
14015c778:	0f 84 18 01 00 00    	je     0x14015c896
14015c77e:	49 8b 06             	mov    (%r14),%rax
14015c781:	45 8b cc             	mov    %r12d,%r9d
14015c784:	4c 8b c6             	mov    %rsi,%r8
14015c787:	49 8b d6             	mov    %r14,%rdx
14015c78a:	48 8b 08             	mov    (%rax),%rcx
14015c78d:	48 f7 d1             	not    %rcx
14015c790:	83 e1 01             	and    $0x1,%ecx
14015c793:	e8 c8 42 f9 ff       	call   0x1400f0a60
14015c798:	49 8b ce             	mov    %r14,%rcx
14015c79b:	e8 b0 49 f9 ff       	call   0x1400f1150
14015c7a0:	48 8b ce             	mov    %rsi,%rcx
14015c7a3:	8b d8                	mov    %eax,%ebx
14015c7a5:	e8 a6 49 f9 ff       	call   0x1400f1150
14015c7aa:	3b d8                	cmp    %eax,%ebx
14015c7ac:	44 8b fd             	mov    %ebp,%r15d
14015c7af:	0f 4d c3             	cmovge %ebx,%eax
14015c7b2:	44 8d 68 02          	lea    0x2(%rax),%r13d
14015c7b6:	46 8d 2c 68          	lea    (%rax,%r13,2),%r13d
14015c7ba:	45 85 ed             	test   %r13d,%r13d
14015c7bd:	0f 8e a8 00 00 00    	jle    0x14015c86b
14015c7c3:	0f 1f 40 00          	nopl   0x0(%rax)
14015c7c7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14015c7ce:	00 00
14015c7d0:	8b 4e 08             	mov    0x8(%rsi),%ecx
14015c7d3:	45 8b cc             	mov    %r12d,%r9d
14015c7d6:	8b 44 24 20          	mov    0x20(%rsp),%eax
14015c7da:	ff c9                	dec    %ecx
14015c7dc:	c1 e9 1f             	shr    $0x1f,%ecx
14015c7df:	f7 d8                	neg    %eax
14015c7e1:	f7 d1                	not    %ecx
14015c7e3:	c1 e8 1f             	shr    $0x1f,%eax
14015c7e6:	23 c8                	and    %eax,%ecx
14015c7e8:	4c 8b c6             	mov    %rsi,%r8
14015c7eb:	48 8b 06             	mov    (%rsi),%rax
14015c7ee:	49 8b d6             	mov    %r14,%rdx
14015c7f1:	23 08                	and    (%rax),%ecx
14015c7f3:	8b d9                	mov    %ecx,%ebx
14015c7f5:	41 31 5e 10          	xor    %ebx,0x10(%r14)
14015c7f9:	e8 62 42 f9 ff       	call   0x1400f0a60
14015c7fe:	8b 44 24 20          	mov    0x20(%rsp),%eax
14015c802:	8b cb                	mov    %ebx,%ecx
14015c804:	f7 d9                	neg    %ecx
14015c806:	f7 d8                	neg    %eax
14015c808:	23 c8                	and    %eax,%ecx
14015c80a:	4d 8b c6             	mov    %r14,%r8
14015c80d:	8d 43 ff             	lea    -0x1(%rbx),%eax
14015c810:	48 8b d6             	mov    %rsi,%rdx
14015c813:	23 44 24 20          	and    0x20(%rsp),%eax
14015c817:	48 8b 5c 24 28       	mov    0x28(%rsp),%rbx
14015c81c:	0b c8                	or     %eax,%ecx
14015c81e:	ff c1                	inc    %ecx
14015c820:	89 4c 24 20          	mov    %ecx,0x20(%rsp)
14015c824:	48 8b cb             	mov    %rbx,%rcx
14015c827:	e8 94 e9 ff ff       	call   0x14015b1c0
14015c82c:	85 c0                	test   %eax,%eax
14015c82e:	74 66                	je     0x14015c896
14015c830:	8b 4e 08             	mov    0x8(%rsi),%ecx
14015c833:	45 8b cc             	mov    %r12d,%r9d
14015c836:	48 8b 06             	mov    (%rsi),%rax
14015c839:	ff c9                	dec    %ecx
14015c83b:	c1 e9 1f             	shr    $0x1f,%ecx
14015c83e:	4c 8b c3             	mov    %rbx,%r8
14015c841:	f7 d1                	not    %ecx
14015c843:	48 8b d6             	mov    %rsi,%rdx
14015c846:	23 08                	and    (%rax),%ecx
14015c848:	83 e1 01             	and    $0x1,%ecx
14015c84b:	e8 10 42 f9 ff       	call   0x1400f0a60
14015c850:	48 8b d6             	mov    %rsi,%rdx
14015c853:	48 8b ce             	mov    %rsi,%rcx
14015c856:	e8 e5 93 fd ff       	call   0x140135c40
14015c85b:	85 c0                	test   %eax,%eax
14015c85d:	74 37                	je     0x14015c896
14015c85f:	41 ff c7             	inc    %r15d
14015c862:	45 3b fd             	cmp    %r13d,%r15d
14015c865:	0f 8c 65 ff ff ff    	jl     0x14015c7d0
14015c86b:	44 8b c7             	mov    %edi,%r8d
14015c86e:	41 89 6e 10          	mov    %ebp,0x10(%r14)
14015c872:	49 8b d6             	mov    %r14,%rdx
14015c875:	49 8b ce             	mov    %r14,%rcx
14015c878:	e8 03 90 fd ff       	call   0x140135880
14015c87d:	85 c0                	test   %eax,%eax
14015c87f:	74 15                	je     0x14015c896
14015c881:	49 8b d6             	mov    %r14,%rdx
14015c884:	49 8b ce             	mov    %r14,%rcx
14015c887:	e8 b4 93 fd ff       	call   0x140135c40
14015c88c:	85 c0                	test   %eax,%eax
14015c88e:	b8 01 00 00 00       	mov    $0x1,%eax
14015c893:	0f 45 e8             	cmovne %eax,%ebp
14015c896:	48 8b 4c 24 78       	mov    0x78(%rsp),%rcx
14015c89b:	e8 c0 e3 ff ff       	call   0x14015ac60
14015c8a0:	4c 8b 6c 24 60       	mov    0x60(%rsp),%r13
14015c8a5:	8b c5                	mov    %ebp,%eax
14015c8a7:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
14015c8ac:	48 8b 6c 24 70       	mov    0x70(%rsp),%rbp
14015c8b1:	48 83 c4 30          	add    $0x30,%rsp
14015c8b5:	41 5f                	pop    %r15
14015c8b7:	41 5e                	pop    %r14
14015c8b9:	41 5c                	pop    %r12
14015c8bb:	5f                   	pop    %rdi
14015c8bc:	5e                   	pop    %rsi
14015c8bd:	c3                   	ret
14015c8be:	cc                   	int3
14015c8bf:	cc                   	int3
14015c8c0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14015c8c5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14015c8ca:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14015c8cf:	57                   	push   %rdi
14015c8d0:	b8 30 00 00 00       	mov    $0x30,%eax
14015c8d5:	e8 56 42 15 00       	call   0x1402b0b30
14015c8da:	48 2b e0             	sub    %rax,%rsp
14015c8dd:	33 db                	xor    %ebx,%ebx
14015c8df:	49 8b f8             	mov    %r8,%rdi
14015c8e2:	89 5c 24 58          	mov    %ebx,0x58(%rsp)
14015c8e6:	48 8b f2             	mov    %rdx,%rsi
14015c8e9:	48 8b e9             	mov    %rcx,%rbp
14015c8ec:	4d 85 c9             	test   %r9,%r9
14015c8ef:	75 43                	jne    0x14015c934
14015c8f1:	33 c9                	xor    %ecx,%ecx
14015c8f3:	e8 88 e6 ff ff       	call   0x14015af80
14015c8f8:	48 8b d8             	mov    %rax,%rbx
14015c8fb:	4c 8b c8             	mov    %rax,%r9
14015c8fe:	48 85 c0             	test   %rax,%rax
14015c901:	75 31                	jne    0x14015c934
14015c903:	e8 68 a7 fc ff       	call   0x140127070
14015c908:	4c 8d 05 19 e2 1b 00 	lea    0x1be219(%rip),%r8        # 0x14031ab28
14015c90f:	ba 0d 02 00 00       	mov    $0x20d,%edx
14015c914:	48 8d 0d 1d e2 1b 00 	lea    0x1be21d(%rip),%rcx        # 0x14031ab38
14015c91b:	e8 70 a8 fc ff       	call   0x140127190
14015c920:	45 33 c0             	xor    %r8d,%r8d
14015c923:	8d 4b 03             	lea    0x3(%rbx),%ecx
14015c926:	ba 00 01 0c 00       	mov    $0xc0100,%edx
14015c92b:	e8 60 a9 fc ff       	call   0x140127290
14015c930:	33 c0                	xor    %eax,%eax
14015c932:	eb 59                	jmp    0x14015c98d
14015c934:	48 8d 44 24 58       	lea    0x58(%rsp),%rax
14015c939:	4c 8b c7             	mov    %rdi,%r8
14015c93c:	48 8b d6             	mov    %rsi,%rdx
14015c93f:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14015c944:	48 8b cd             	mov    %rbp,%rcx
14015c947:	e8 54 03 00 00       	call   0x14015cca0
14015c94c:	83 7c 24 58 00       	cmpl   $0x0,0x58(%rsp)
14015c951:	48 8b f8             	mov    %rax,%rdi
14015c954:	74 2c                	je     0x14015c982
14015c956:	e8 15 a7 fc ff       	call   0x140127070
14015c95b:	4c 8d 05 c6 e1 1b 00 	lea    0x1be1c6(%rip),%r8        # 0x14031ab28
14015c962:	ba 14 02 00 00       	mov    $0x214,%edx
14015c967:	48 8d 0d ca e1 1b 00 	lea    0x1be1ca(%rip),%rcx        # 0x14031ab38
14015c96e:	e8 1d a8 fc ff       	call   0x140127190
14015c973:	45 33 c0             	xor    %r8d,%r8d
14015c976:	41 8d 50 6c          	lea    0x6c(%r8),%edx
14015c97a:	8d 4a 97             	lea    -0x69(%rdx),%ecx
14015c97d:	e8 0e a9 fc ff       	call   0x140127290
14015c982:	48 8b cb             	mov    %rbx,%rcx
14015c985:	e8 56 e3 ff ff       	call   0x14015ace0
14015c98a:	48 8b c7             	mov    %rdi,%rax
14015c98d:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14015c992:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
14015c997:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
14015c99c:	48 83 c4 30          	add    $0x30,%rsp
14015c9a0:	5f                   	pop    %rdi
14015c9a1:	c3                   	ret
14015c9a2:	cc                   	int3
14015c9a3:	cc                   	int3
14015c9a4:	cc                   	int3
14015c9a5:	cc                   	int3
14015c9a6:	cc                   	int3
14015c9a7:	cc                   	int3
14015c9a8:	cc                   	int3
14015c9a9:	cc                   	int3
14015c9aa:	cc                   	int3
14015c9ab:	cc                   	int3
14015c9ac:	cc                   	int3
14015c9ad:	cc                   	int3
14015c9ae:	cc                   	int3
14015c9af:	cc                   	int3
14015c9b0:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
14015c9b5:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
14015c9ba:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
14015c9bf:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
14015c9c4:	55                   	push   %rbp
14015c9c5:	56                   	push   %rsi
14015c9c6:	57                   	push   %rdi
14015c9c7:	41 54                	push   %r12
14015c9c9:	41 55                	push   %r13
14015c9cb:	41 56                	push   %r14
14015c9cd:	41 57                	push   %r15
14015c9cf:	b8 60 00 00 00       	mov    $0x60,%eax
14015c9d4:	e8 57 41 15 00       	call   0x1402b0b30
14015c9d9:	48 2b e0             	sub    %rax,%rsp
14015c9dc:	33 db                	xor    %ebx,%ebx
14015c9de:	49 8b c9             	mov    %r9,%rcx
14015c9e1:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
14015c9e6:	4d 8b f9             	mov    %r9,%r15
14015c9e9:	49 8b e8             	mov    %r8,%rbp
14015c9ec:	e8 7f e6 ff ff       	call   0x14015b070
14015c9f1:	49 8b cf             	mov    %r15,%rcx
14015c9f4:	e8 a7 e3 ff ff       	call   0x14015ada0
14015c9f9:	49 8b cf             	mov    %r15,%rcx
14015c9fc:	4c 8b f0             	mov    %rax,%r14
14015c9ff:	e8 9c e3 ff ff       	call   0x14015ada0
14015ca04:	49 8b cf             	mov    %r15,%rcx
14015ca07:	48 8b f0             	mov    %rax,%rsi
14015ca0a:	e8 91 e3 ff ff       	call   0x14015ada0
14015ca0f:	49 8b cf             	mov    %r15,%rcx
14015ca12:	4c 8b e8             	mov    %rax,%r13
14015ca15:	e8 86 e3 ff ff       	call   0x14015ada0
14015ca1a:	49 8b cf             	mov    %r15,%rcx
14015ca1d:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14015ca22:	e8 79 e3 ff ff       	call   0x14015ada0
14015ca27:	49 8b cf             	mov    %r15,%rcx
14015ca2a:	4c 8b e0             	mov    %rax,%r12
14015ca2d:	e8 6e e3 ff ff       	call   0x14015ada0
14015ca32:	49 8b cf             	mov    %r15,%rcx
14015ca35:	48 8b f8             	mov    %rax,%rdi
14015ca38:	e8 63 e3 ff ff       	call   0x14015ada0
14015ca3d:	48 85 c0             	test   %rax,%rax
14015ca40:	0f 84 1e 02 00 00    	je     0x14015cc64
14015ca46:	48 8b 84 24 a0 00 00 	mov    0xa0(%rsp),%rax
14015ca4d:	00
14015ca4e:	48 85 c0             	test   %rax,%rax
14015ca51:	75 18                	jne    0x14015ca6b
14015ca53:	e8 88 46 f9 ff       	call   0x1400f10e0
14015ca58:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
14015ca5d:	48 8b d8             	mov    %rax,%rbx
14015ca60:	48 85 c0             	test   %rax,%rax
14015ca63:	0f 84 06 02 00 00    	je     0x14015cc6f
14015ca69:	eb 08                	jmp    0x14015ca73
14015ca6b:	48 8b d8             	mov    %rax,%rbx
14015ca6e:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
14015ca73:	ba 01 00 00 00       	mov    $0x1,%edx
14015ca78:	49 8b cd             	mov    %r13,%rcx
14015ca7b:	e8 10 4a f9 ff       	call   0x1400f1490
14015ca80:	85 c0                	test   %eax,%eax
14015ca82:	0f 84 dc 01 00 00    	je     0x14015cc64
14015ca88:	48 8b cf             	mov    %rdi,%rcx
14015ca8b:	e8 10 4c f9 ff       	call   0x1400f16a0
14015ca90:	48 8b 94 24 a8 00 00 	mov    0xa8(%rsp),%rdx
14015ca97:	00
14015ca98:	48 8b ce             	mov    %rsi,%rcx
14015ca9b:	e8 30 41 f9 ff       	call   0x1400f0bd0
14015caa0:	48 85 c0             	test   %rax,%rax
14015caa3:	0f 84 bb 01 00 00    	je     0x14015cc64
14015caa9:	48 8b d5             	mov    %rbp,%rdx
14015caac:	49 8b ce             	mov    %r14,%rcx
14015caaf:	e8 1c 41 f9 ff       	call   0x1400f0bd0
14015cab4:	48 85 c0             	test   %rax,%rax
14015cab7:	0f 84 a7 01 00 00    	je     0x14015cc64
14015cabd:	41 c7 46 10 00 00 00 	movl   $0x0,0x10(%r14)
14015cac4:	00
14015cac5:	83 7e 10 00          	cmpl   $0x0,0x10(%rsi)
14015cac9:	75 0f                	jne    0x14015cada
14015cacb:	49 8b d6             	mov    %r14,%rdx
14015cace:	48 8b ce             	mov    %rsi,%rcx
14015cad1:	e8 5a 4a f9 ff       	call   0x1400f1530
14015cad6:	85 c0                	test   %eax,%eax
14015cad8:	78 38                	js     0x14015cb12
14015cada:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
14015cadf:	e8 cc 50 f9 ff       	call   0x1400f1bb0
14015cae4:	41 b8 04 00 00 00    	mov    $0x4,%r8d
14015caea:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
14015caef:	48 8b d6             	mov    %rsi,%rdx
14015caf2:	e8 79 4b f9 ff       	call   0x1400f1670
14015caf7:	4d 8b cf             	mov    %r15,%r9
14015cafa:	48 8d 54 24 48       	lea    0x48(%rsp),%rdx