1801147ce:	41 57                	push   %r15
1801147d0:	48 83 ec 40          	sub    $0x40,%rsp
1801147d4:	4c 8b 19             	mov    (%rcx),%r11
1801147d7:	4c 8b e2             	mov    %rdx,%r12
1801147da:	48 8b 59 08          	mov    0x8(%rcx),%rbx
1801147de:	45 33 ed             	xor    %r13d,%r13d
1801147e1:	48 8b 71 10          	mov    0x10(%rcx),%rsi
1801147e5:	33 d2                	xor    %edx,%edx
1801147e7:	48 8b 49 18          	mov    0x18(%rcx),%rcx
1801147eb:	41 be 01 00 00 00    	mov    $0x1,%r14d
1801147f1:	4c 8b bc 24 a0 00 00 	mov    0xa0(%rsp),%r15
1801147f8:	00
1801147f9:	48 8b c1             	mov    %rcx,%rax
1801147fc:	4c 8b 94 24 a8 00 00 	mov    0xa8(%rsp),%r10
180114803:	00
180114804:	48 0b c6             	or     %rsi,%rax
180114807:	48 0b c3             	or     %rbx,%rax
18011480a:	4c 89 4c 24 10       	mov    %r9,0x10(%rsp)
18011480f:	49 0b c3             	or     %r11,%rax
180114812:	4c 89 44 24 08       	mov    %r8,0x8(%rsp)
180114817:	4c 89 7c 24 38       	mov    %r15,0x38(%rsp)
18011481c:	4c 89 5c 24 18       	mov    %r11,0x18(%rsp)
180114821:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
180114826:	48 89 74 24 28       	mov    %rsi,0x28(%rsp)
18011482b:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
180114830:	7d 19                	jge    0x18011484b
180114832:	45 33 f6             	xor    %r14d,%r14d
180114835:	4d 85 d2             	test   %r10,%r10
180114838:	0f 84 de 00 00 00    	je     0x18011491c
18011483e:	41 c7 42 10 06 00 00 	movl   $0x6,0x10(%r10)
180114845:	00
180114846:	e9 d1 00 00 00       	jmp    0x18011491c
18011484b:	4d 85 c9             	test   %r9,%r9
18011484e:	0f 84 c8 00 00 00    	je     0x18011491c
180114854:	4d 2b e0             	sub    %r8,%r12
180114857:	4c 8b fa             	mov    %rdx,%r15
18011485a:	4b 8b 04 04          	mov    (%r12,%r8,1),%rax
18011485e:	49 f7 e3             	mul    %r11
180114861:	4c 8b c8             	mov    %rax,%r9
180114864:	4c 8b d2             	mov    %rdx,%r10
180114867:	49 8b 00             	mov    (%r8),%rax
18011486a:	48 f7 e3             	mul    %rbx
18011486d:	4f 8d 1c 29          	lea    (%r9,%r13,1),%r11
180114871:	48 8b f8             	mov    %rax,%rdi
180114874:	48 8b da             	mov    %rdx,%rbx
180114877:	4b 8b 04 04          	mov    (%r12,%r8,1),%rax
18011487b:	48 f7 e6             	mul    %rsi
18011487e:	48 8b e8             	mov    %rax,%rbp
180114881:	48 8b f2             	mov    %rdx,%rsi
180114884:	49 8b 00             	mov    (%r8),%rax
180114887:	48 f7 e1             	mul    %rcx
18011488a:	33 c9                	xor    %ecx,%ecx
18011488c:	4d 3b d9             	cmp    %r9,%r11
18011488f:	4c 8b c0             	mov    %rax,%r8
180114892:	49 8b c5             	mov    %r13,%rax
180114895:	0f 92 c1             	setb   %cl
180114898:	48 c1 e8 3f          	shr    $0x3f,%rax
18011489c:	4c 8b e9             	mov    %rcx,%r13
18011489f:	33 c9                	xor    %ecx,%ecx
1801148a1:	4f 8d 0c 38          	lea    (%r8,%r15,1),%r9
1801148a5:	4c 2b e8             	sub    %rax,%r13
1801148a8:	4d 03 ea             	add    %r10,%r13
1801148ab:	49 8b c7             	mov    %r15,%rax
1801148ae:	4d 3b c8             	cmp    %r8,%r9
1801148b1:	4c 8b 44 24 08       	mov    0x8(%rsp),%r8
1801148b6:	0f 92 c1             	setb   %cl
1801148b9:	48 c1 e8 3f          	shr    $0x3f,%rax
1801148bd:	4c 8b f9             	mov    %rcx,%r15
1801148c0:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
1801148c5:	4c 2b f8             	sub    %rax,%r15
1801148c8:	4c 03 fa             	add    %rdx,%r15
1801148cb:	4c 3b df             	cmp    %rdi,%r11
1801148ce:	48 83 d3 00          	adc    $0x0,%rbx
1801148d2:	4c 2b df             	sub    %rdi,%r11
1801148d5:	4c 2b eb             	sub    %rbx,%r13
1801148d8:	4f 89 1c 04          	mov    %r11,(%r12,%r8,1)
1801148dc:	4c 8b 5c 24 18       	mov    0x18(%rsp),%r11
1801148e1:	4c 3b cd             	cmp    %rbp,%r9
1801148e4:	48 8b 5c 24 20       	mov    0x20(%rsp),%rbx
1801148e9:	48 83 d6 00          	adc    $0x0,%rsi
1801148ed:	4c 2b cd             	sub    %rbp,%r9
1801148f0:	4c 2b fe             	sub    %rsi,%r15
1801148f3:	4d 89 08             	mov    %r9,(%r8)
1801148f6:	48 8b 74 24 28       	mov    0x28(%rsp),%rsi
1801148fb:	49 83 c0 08          	add    $0x8,%r8
1801148ff:	4c 29 74 24 10       	sub    %r14,0x10(%rsp)
180114904:	4c 89 44 24 08       	mov    %r8,0x8(%rsp)
180114909:	0f 85 4b ff ff ff    	jne    0x18011485a
18011490f:	4c 89 3c 24          	mov    %r15,(%rsp)
180114913:	48 8b 14 24          	mov    (%rsp),%rdx
180114917:	4c 8b 7c 24 38       	mov    0x38(%rsp),%r15
18011491c:	48 8b 9c 24 98 00 00 	mov    0x98(%rsp),%rbx
180114923:	00
180114924:	41 8b c6             	mov    %r14d,%eax
180114927:	4d 89 2f             	mov    %r13,(%r15)
18011492a:	49 89 57 08          	mov    %rdx,0x8(%r15)
18011492e:	48 83 c4 40          	add    $0x40,%rsp
180114932:	41 5f                	pop    %r15
180114934:	41 5e                	pop    %r14
180114936:	41 5d                	pop    %r13
180114938:	41 5c                	pop    %r12
18011493a:	5f                   	pop    %rdi
18011493b:	5e                   	pop    %rsi
18011493c:	5d                   	pop    %rbp
18011493d:	c3                   	ret
18011493e:	cc                   	int3
18011493f:	cc                   	int3
180114940:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
180114945:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18011494a:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
18011494f:	41 56                	push   %r14
180114951:	48 83 ec 30          	sub    $0x30,%rsp
180114955:	4c 8b 52 08          	mov    0x8(%rdx),%r10
180114959:	be 01 00 00 00       	mov    $0x1,%esi
18011495e:	48 8b 59 08          	mov    0x8(%rcx),%rbx
180114962:	41 8b c2             	mov    %r10d,%eax
180114965:	48 8b 39             	mov    (%rcx),%rdi
180114968:	0b c3                	or     %ebx,%eax
18011496a:	4c 8b 1a             	mov    (%rdx),%r11
18011496d:	f7 d0                	not    %eax
18011496f:	4d 8b f0             	mov    %r8,%r14
180114972:	40 84 c6             	test   %al,%sil
180114975:	74 0f                	je     0x180114986
180114977:	33 f6                	xor    %esi,%esi
180114979:	4d 85 c9             	test   %r9,%r9
18011497c:	74 08                	je     0x180114986
18011497e:	41 c7 41 10 06 00 00 	movl   $0x6,0x10(%r9)
180114985:	00
180114986:	41 b0 03             	mov    $0x3,%r8b
180114989:	85 f6                	test   %esi,%esi
18011498b:	0f 84 a0 01 00 00    	je     0x180114b31
180114991:	48 85 ff             	test   %rdi,%rdi
180114994:	74 05                	je     0x18011499b
180114996:	4d 85 db             	test   %r11,%r11
180114999:	75 47                	jne    0x1801149e2
18011499b:	85 f6                	test   %esi,%esi
18011499d:	0f 84 8e 01 00 00    	je     0x180114b31
1801149a3:	4d 85 db             	test   %r11,%r11
1801149a6:	48 8b d3             	mov    %rbx,%rdx
1801149a9:	49 0f 44 d2          	cmove  %r10,%rdx
1801149ad:	4c 0f 44 df          	cmove  %rdi,%r11
1801149b1:	4c 0f 44 d3          	cmove  %rbx,%r10
1801149b5:	48 85 d2             	test   %rdx,%rdx
1801149b8:	0f 85 d9 00 00 00    	jne    0x180114a97
1801149be:	4d 89 1e             	mov    %r11,(%r14)
1801149c1:	4d 89 56 08          	mov    %r10,0x8(%r14)
1801149c5:	e9 67 01 00 00       	jmp    0x180114b31
1801149ca:	48 8b c3             	mov    %rbx,%rax
1801149cd:	48 8b cf             	mov    %rdi,%rcx
1801149d0:	48 c1 e1 3e          	shl    $0x3e,%rcx
1801149d4:	48 c1 e8 02          	shr    $0x2,%rax
1801149d8:	48 8b d9             	mov    %rcx,%rbx
1801149db:	48 0b d8             	or     %rax,%rbx
1801149de:	48 c1 ef 02          	shr    $0x2,%rdi
1801149e2:	41 84 d8             	test   %bl,%r8b
1801149e5:	74 e3                	je     0x1801149ca
1801149e7:	8b c3                	mov    %ebx,%eax
1801149e9:	f7 d0                	not    %eax
1801149eb:	a8 01                	test   $0x1,%al
1801149ed:	74 30                	je     0x180114a1f
1801149ef:	48 8b c3             	mov    %rbx,%rax
1801149f2:	48 8b cf             	mov    %rdi,%rcx
1801149f5:	48 c1 e1 3f          	shl    $0x3f,%rcx
1801149f9:	48 d1 e8             	shr    $1,%rax
1801149fc:	48 8b d9             	mov    %rcx,%rbx
1801149ff:	48 0b d8             	or     %rax,%rbx
180114a02:	48 d1 ef             	shr    $1,%rdi
180114a05:	eb 18                	jmp    0x180114a1f
180114a07:	49 8b c2             	mov    %r10,%rax
180114a0a:	49 8b cb             	mov    %r11,%rcx
180114a0d:	48 c1 e1 3e          	shl    $0x3e,%rcx
180114a11:	48 c1 e8 02          	shr    $0x2,%rax
180114a15:	4c 8b d1             	mov    %rcx,%r10
180114a18:	4c 0b d0             	or     %rax,%r10
180114a1b:	49 c1 eb 02          	shr    $0x2,%r11
180114a1f:	45 84 d0             	test   %r10b,%r8b
180114a22:	74 e3                	je     0x180114a07
180114a24:	41 8b c2             	mov    %r10d,%eax
180114a27:	f7 d0                	not    %eax
180114a29:	a8 01                	test   $0x1,%al
180114a2b:	74 16                	je     0x180114a43
180114a2d:	49 8b c2             	mov    %r10,%rax
180114a30:	49 8b cb             	mov    %r11,%rcx
180114a33:	48 c1 e1 3f          	shl    $0x3f,%rcx
180114a37:	48 d1 e8             	shr    $1,%rax
180114a3a:	4c 8b d1             	mov    %rcx,%r10
180114a3d:	4c 0b d0             	or     %rax,%r10
180114a40:	49 d1 eb             	shr    $1,%r11
180114a43:	49 3b fb             	cmp    %r11,%rdi
180114a46:	76 15                	jbe    0x180114a5d
180114a48:	49 3b da             	cmp    %r10,%rbx
180114a4b:	49 8b c3             	mov    %r11,%rax
180114a4e:	48 83 d0 00          	adc    $0x0,%rax
180114a52:	48 2b f8             	sub    %rax,%rdi
180114a55:	49 2b da             	sub    %r10,%rbx
180114a58:	e9 34 ff ff ff       	jmp    0x180114991
180114a5d:	49 8b d2             	mov    %r10,%rdx
180114a60:	48 2b d3             	sub    %rbx,%rdx
180114a63:	49 3b fb             	cmp    %r11,%rdi
180114a66:	73 15                	jae    0x180114a7d
180114a68:	4c 3b d3             	cmp    %rbx,%r10
180114a6b:	48 8b c7             	mov    %rdi,%rax
180114a6e:	4c 8b d2             	mov    %rdx,%r10
180114a71:	48 83 d0 00          	adc    $0x0,%rax
180114a75:	4c 2b d8             	sub    %rax,%r11
180114a78:	e9 14 ff ff ff       	jmp    0x180114991
180114a7d:	48 8b c3             	mov    %rbx,%rax
180114a80:	48 8b cb             	mov    %rbx,%rcx
180114a83:	49 2b c2             	sub    %r10,%rax
180114a86:	33 ff                	xor    %edi,%edi
180114a88:	49 3b ca             	cmp    %r10,%rcx
180114a8b:	48 8b da             	mov    %rdx,%rbx
180114a8e:	48 0f 47 d8          	cmova  %rax,%rbx
180114a92:	e9 fa fe ff ff       	jmp    0x180114991
180114a97:	48 83 64 24 40 00    	andq   $0x0,0x40(%rsp)
180114a9d:	eb 03                	jmp    0x180114aa2
180114a9f:	48 d1 ea             	shr    $1,%rdx
180114aa2:	8b c2                	mov    %edx,%eax
180114aa4:	f7 d0                	not    %eax
180114aa6:	a8 01                	test   $0x1,%al
180114aa8:	75 f5                	jne    0x180114a9f
180114aaa:	eb 4c                	jmp    0x180114af8
180114aac:	33 c0                	xor    %eax,%eax
180114aae:	49 3b d2             	cmp    %r10,%rdx
180114ab1:	0f 97 c0             	seta   %al
180114ab4:	4c 2b d8             	sub    %rax,%r11
180114ab7:	4c 2b d2             	sub    %rdx,%r10
180114aba:	eb 18                	jmp    0x180114ad4
180114abc:	49 8b c2             	mov    %r10,%rax
180114abf:	49 8b cb             	mov    %r11,%rcx
180114ac2:	48 c1 e1 3e          	shl    $0x3e,%rcx
180114ac6:	48 c1 e8 02          	shr    $0x2,%rax
180114aca:	4c 8b d1             	mov    %rcx,%r10
180114acd:	4c 0b d0             	or     %rax,%r10
180114ad0:	49 c1 eb 02          	shr    $0x2,%r11
180114ad4:	45 84 d0             	test   %r10b,%r8b
180114ad7:	74 e3                	je     0x180114abc
180114ad9:	41 8b c2             	mov    %r10d,%eax
180114adc:	f7 d0                	not    %eax
180114ade:	a8 01                	test   $0x1,%al
180114ae0:	74 16                	je     0x180114af8
180114ae2:	49 8b c2             	mov    %r10,%rax
180114ae5:	49 8b cb             	mov    %r11,%rcx
180114ae8:	48 c1 e1 3f          	shl    $0x3f,%rcx
180114aec:	48 d1 e8             	shr    $1,%rax
180114aef:	4c 8b d1             	mov    %rcx,%r10
180114af2:	4c 0b d0             	or     %rax,%r10
180114af5:	49 d1 eb             	shr    $1,%r11
180114af8:	4d 85 db             	test   %r11,%r11
180114afb:	75 af                	jne    0x180114aac
180114afd:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
180114b02:	49 8b ca             	mov    %r10,%rcx
180114b05:	e8 d6 fa ff ff       	call   0x1801145e0
180114b0a:	85 c0                	test   %eax,%eax
180114b0c:	74 21                	je     0x180114b2f
180114b0e:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
180114b13:	be 01 00 00 00       	mov    $0x1,%esi
180114b18:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
180114b1e:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
180114b23:	0f 10 44 24 20       	movups 0x20(%rsp),%xmm0
180114b28:	f3 41 0f 7f 06       	movdqu %xmm0,(%r14)
180114b2d:	eb 02                	jmp    0x180114b31
180114b2f:	33 f6                	xor    %esi,%esi
180114b31:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
180114b36:	8b c6                	mov    %esi,%eax
180114b38:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
180114b3d:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
180114b42:	48 83 c4 30          	add    $0x30,%rsp
180114b46:	41 5e                	pop    %r14
180114b48:	c3                   	ret
180114b49:	cc                   	int3
180114b4a:	cc                   	int3
180114b4b:	cc                   	int3
180114b4c:	40 55                	rex push %rbp
180114b4e:	53                   	push   %rbx
180114b4f:	56                   	push   %rsi
180114b50:	57                   	push   %rdi
180114b51:	41 54                	push   %r12
180114b53:	41 55                	push   %r13
180114b55:	41 56                	push   %r14
180114b57:	41 57                	push   %r15
180114b59:	48 8d 6c 24 f8       	lea    -0x8(%rsp),%rbp
180114b5e:	48 81 ec 08 01 00 00 	sub    $0x108,%rsp
180114b65:	48 8b 05 04 7e 05 00 	mov    0x57e04(%rip),%rax        # 0x18016c970
180114b6c:	48 33 c4             	xor    %rsp,%rax
180114b6f:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
180114b73:	48 8b 5d 70          	mov    0x70(%rbp),%rbx
180114b77:	4c 8b e1             	mov    %rcx,%r12
180114b7a:	4c 8b 75 78          	mov    0x78(%rbp),%r14
180114b7e:	0f 57 c0             	xorps  %xmm0,%xmm0
180114b81:	48 89 55 a0          	mov    %rdx,-0x60(%rbp)
180114b85:	4d 8b d0             	mov    %r8,%r10
180114b88:	48 89 4d c0          	mov    %rcx,-0x40(%rbp)
180114b8c:	4c 89 4d c8          	mov    %r9,-0x38(%rbp)
180114b90:	4c 8b ca             	mov    %rdx,%r9
180114b93:	49 8b c9             	mov    %r9,%rcx
180114b96:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
180114b9b:	49 8b d0             	mov    %r8,%rdx
180114b9e:	4c 89 75 b8          	mov    %r14,-0x48(%rbp)
180114ba2:	0f 11 45 d0          	movups %xmm0,-0x30(%rbp)
180114ba6:	e8 95 c7 ff ff       	call   0x180111340
180114bab:	49 8b d2             	mov    %r10,%rdx
180114bae:	48 89 44 24 78       	mov    %rax,0x78(%rsp)
180114bb3:	49 8b c9             	mov    %r9,%rcx
180114bb6:	4c 8b f8             	mov    %rax,%r15
180114bb9:	e8 22 c5 ff ff       	call   0x1801110e0
180114bbe:	ba 01 00 00 00       	mov    $0x1,%edx
180114bc3:	48 89 44 24 70       	mov    %rax,0x70(%rsp)
180114bc8:	44 8b c2             	mov    %edx,%r8d
180114bcb:	33 ff                	xor    %edi,%edi
180114bcd:	48 8d 05 7c 87 04 00 	lea    0x4877c(%rip),%rax        # 0x18015d350
180114bd4:	42 0f b7 0c 40       	movzwl (%rax,%r8,2),%ecx
180114bd9:	4c 3b f9             	cmp    %rcx,%r15
180114bdc:	76 09                	jbe    0x180114be7
180114bde:	4c 03 c2             	add    %rdx,%r8
180114be1:	49 83 f8 06          	cmp    $0x6,%r8
180114be5:	72 e6                	jb     0x180114bcd
180114be7:	4c 8b ca             	mov    %rdx,%r9
180114bea:	4c 89 44 24 68       	mov    %r8,0x68(%rsp)
180114bef:	33 d2                	xor    %edx,%edx
180114bf1:	4d 8d 6f ff          	lea    -0x1(%r15),%r13
180114bf5:	49 8b c5             	mov    %r13,%rax
180114bf8:	49 8b c8             	mov    %r8,%rcx
180114bfb:	49 f7 f0             	div    %r8
180114bfe:	49 d3 e1             	shl    %cl,%r9
180114c01:	4c 89 4c 24 48       	mov    %r9,0x48(%rsp)
180114c06:	48 8d 70 02          	lea    0x2(%rax),%rsi
180114c0a:	49 8d 49 04          	lea    0x4(%r9),%rcx
180114c0e:	48 89 74 24 58       	mov    %rsi,0x58(%rsp)
180114c13:	48 c1 e1 04          	shl    $0x4,%rcx
180114c17:	48 03 ce             	add    %rsi,%rcx
180114c1a:	48 c1 e1 03          	shl    $0x3,%rcx
180114c1e:	e8 2d 52 f8 ff       	call   0x180099e50
180114c23:	4c 8b 03             	mov    (%rbx),%r8
180114c26:	49 8b cc             	mov    %r12,%rcx
180114c29:	48 8b 53 38          	mov    0x38(%rbx),%rdx
180114c2d:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
180114c32:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
180114c37:	e8 7c bb ff ff       	call   0x1801107b8
180114c3c:	85 c0                	test   %eax,%eax
180114c3e:	0f 84 cc 05 00 00    	je     0x180115210
180114c44:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
180114c49:	48 85 c0             	test   %rax,%rax
180114c4c:	75 07                	jne    0x180114c55
180114c4e:	33 db                	xor    %ebx,%ebx
180114c50:	e9 1e 06 00 00       	jmp    0x180115273
180114c55:	4c 8b 4b 38          	mov    0x38(%rbx),%r9
180114c59:	48 8d 90 00 01 00 00 	lea    0x100(%rax),%rdx
180114c60:	48 8b 44 24 48       	mov    0x48(%rsp),%rax
180114c65:	48 8d ba 80 00 00 00 	lea    0x80(%rdx),%rdi