140015f90:	48 89 31             	mov    %rsi,(%rcx)
140015f93:	48 89 71 08          	mov    %rsi,0x8(%rcx)
140015f97:	48 89 71 10          	mov    %rsi,0x10(%rcx)
140015f9b:	48 8b 43 30          	mov    0x30(%rbx),%rax
140015f9f:	48 89 47 30          	mov    %rax,0x30(%rdi)
140015fa3:	48 8b 43 38          	mov    0x38(%rbx),%rax
140015fa7:	48 89 47 38          	mov    %rax,0x38(%rdi)
140015fab:	48 8b 53 20          	mov    0x20(%rbx),%rdx
140015faf:	48 2b 53 18          	sub    0x18(%rbx),%rdx
140015fb3:	48 c1 fa 03          	sar    $0x3,%rdx
140015fb7:	4c 8b 47 08          	mov    0x8(%rdi),%r8
140015fbb:	e8 44 d4 ff ff       	call   0x140013404
140015fc0:	48 8b 73 08          	mov    0x8(%rbx),%rsi
140015fc4:	48 8b 1e             	mov    (%rsi),%rbx
140015fc7:	eb 14                	jmp    0x140015fdd
140015fc9:	4c 8d 43 10          	lea    0x10(%rbx),%r8
140015fcd:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140015fd2:	48 8b cf             	mov    %rdi,%rcx
140015fd5:	e8 02 db ff ff       	call   0x140013adc
140015fda:	48 8b 1b             	mov    (%rbx),%rbx
140015fdd:	48 3b de             	cmp    %rsi,%rbx
140015fe0:	75 e7                	jne    0x140015fc9
140015fe2:	48 8b c7             	mov    %rdi,%rax
140015fe5:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140015fea:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140015fef:	48 83 c4 30          	add    $0x30,%rsp
140015ff3:	5f                   	pop    %rdi
140015ff4:	c3                   	ret
140015ff5:	90                   	nop
140015ff6:	90                   	nop
140015ff7:	90                   	nop
140015ff8:	90                   	nop
140015ff9:	90                   	nop
140015ffa:	90                   	nop
140015ffb:	90                   	nop
140015ffc:	90                   	nop
140015ffd:	90                   	nop
140015ffe:	90                   	nop
140015fff:	90                   	nop
140016000:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140016005:	57                   	push   %rdi
140016006:	48 83 ec 20          	sub    $0x20,%rsp
14001600a:	48 8b d9             	mov    %rcx,%rbx
14001600d:	8b fa                	mov    %edx,%edi
14001600f:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140016013:	48 85 c9             	test   %rcx,%rcx
140016016:	74 12                	je     0x14001602a
140016018:	48 83 63 10 00       	andq   $0x0,0x10(%rbx)
14001601d:	48 8b 01             	mov    (%rcx),%rax
140016020:	48 8b 40 08          	mov    0x8(%rax),%rax
140016024:	ff 15 6e e5 01 00    	call   *0x1e56e(%rip)        # 0x140034598
14001602a:	40 f6 c7 01          	test   $0x1,%dil
14001602e:	74 0e                	je     0x14001603e
140016030:	48 85 db             	test   %rbx,%rbx
140016033:	74 09                	je     0x14001603e
140016035:	48 8b cb             	mov    %rbx,%rcx
140016038:	ff 15 b2 35 03 00    	call   *0x335b2(%rip)        # 0x1400495f0
14001603e:	48 8b c3             	mov    %rbx,%rax
140016041:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140016046:	48 83 c4 20          	add    $0x20,%rsp
14001604a:	5f                   	pop    %rdi
14001604b:	c3                   	ret
14001604c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140016051:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140016056:	57                   	push   %rdi
140016057:	48 83 ec 20          	sub    $0x20,%rsp
14001605b:	33 f6                	xor    %esi,%esi
14001605d:	48 39 71 08          	cmp    %rsi,0x8(%rcx)
140016061:	74 71                	je     0x1400160d4
140016063:	48 8b 41 18          	mov    0x18(%rcx),%rax
140016067:	48 89 70 08          	mov    %rsi,0x8(%rax)
14001606b:	48 8b 41 10          	mov    0x10(%rcx),%rax
14001606f:	48 89 30             	mov    %rsi,(%rax)
140016072:	48 8b 79 18          	mov    0x18(%rcx),%rdi
140016076:	eb 57                	jmp    0x1400160cf
140016078:	48 8b df             	mov    %rdi,%rbx
14001607b:	48 8b 3f             	mov    (%rdi),%rdi
14001607e:	48 8b 43 30          	mov    0x30(%rbx),%rax
140016082:	48 83 f8 07          	cmp    $0x7,%rax
140016086:	76 2e                	jbe    0x1400160b6
140016088:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
14001608c:	48 8d 04 45 02 00 00 	lea    0x2(,%rax,2),%rax
140016093:	00
140016094:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
14001609a:	72 14                	jb     0x1400160b0
14001609c:	48 8b 51 f8          	mov    -0x8(%rcx),%rdx
1400160a0:	48 2b ca             	sub    %rdx,%rcx
1400160a3:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
1400160a7:	48 83 f8 1f          	cmp    $0x1f,%rax
1400160ab:	77 37                	ja     0x1400160e4
1400160ad:	48 8b ca             	mov    %rdx,%rcx
1400160b0:	ff 15 52 e4 01 00    	call   *0x1e452(%rip)        # 0x140034508
1400160b6:	48 8b cb             	mov    %rbx,%rcx
1400160b9:	48 89 73 28          	mov    %rsi,0x28(%rbx)
1400160bd:	48 c7 43 30 07 00 00 	movq   $0x7,0x30(%rbx)
1400160c4:	00
1400160c5:	66 89 73 18          	mov    %si,0x18(%rbx)
1400160c9:	ff 15 39 e4 01 00    	call   *0x1e439(%rip)        # 0x140034508
1400160cf:	48 85 ff             	test   %rdi,%rdi
1400160d2:	75 a4                	jne    0x140016078
1400160d4:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400160d9:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1400160de:	48 83 c4 20          	add    $0x20,%rsp
1400160e2:	5f                   	pop    %rdi
1400160e3:	c3                   	ret
1400160e4:	ff 15 b6 e3 01 00    	call   *0x1e3b6(%rip)        # 0x1400344a0
1400160ea:	cc                   	int3
1400160eb:	90                   	nop
1400160ec:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400160f1:	57                   	push   %rdi
1400160f2:	48 83 ec 20          	sub    $0x20,%rsp
1400160f6:	8a 41 20             	mov    0x20(%rcx),%al
1400160f9:	33 ff                	xor    %edi,%edi
1400160fb:	48 8b d9             	mov    %rcx,%rbx
1400160fe:	40 38 7a 20          	cmp    %dil,0x20(%rdx)
140016102:	74 32                	je     0x140016136
140016104:	84 c0                	test   %al,%al
140016106:	74 07                	je     0x14001610f
140016108:	e8 53 85 ff ff       	call   0x14000e660
14001610d:	eb 75                	jmp    0x140016184
14001610f:	0f 57 c0             	xorps  %xmm0,%xmm0
140016112:	0f 11 01             	movups %xmm0,(%rcx)
140016115:	48 89 79 10          	mov    %rdi,0x10(%rcx)
140016119:	48 89 79 18          	mov    %rdi,0x18(%rcx)
14001611d:	48 83 7a 18 07       	cmpq   $0x7,0x18(%rdx)
140016122:	4c 8b 42 10          	mov    0x10(%rdx),%r8
140016126:	76 03                	jbe    0x14001612b
140016128:	48 8b 12             	mov    (%rdx),%rdx
14001612b:	e8 60 8b ff ff       	call   0x14000ec90
140016130:	c6 43 20 01          	movb   $0x1,0x20(%rbx)
140016134:	eb 4e                	jmp    0x140016184
140016136:	84 c0                	test   %al,%al
140016138:	74 4a                	je     0x140016184
14001613a:	48 8b 41 18          	mov    0x18(%rcx),%rax
14001613e:	48 83 f8 07          	cmp    $0x7,%rax
140016142:	76 2d                	jbe    0x140016171
140016144:	48 8b 09             	mov    (%rcx),%rcx
140016147:	48 8d 04 45 02 00 00 	lea    0x2(,%rax,2),%rax
14001614e:	00
14001614f:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
140016155:	72 14                	jb     0x14001616b
140016157:	48 8b 51 f8          	mov    -0x8(%rcx),%rdx
14001615b:	48 2b ca             	sub    %rdx,%rcx
14001615e:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140016162:	48 83 f8 1f          	cmp    $0x1f,%rax
140016166:	77 27                	ja     0x14001618f
140016168:	48 8b ca             	mov    %rdx,%rcx
14001616b:	ff 15 97 e3 01 00    	call   *0x1e397(%rip)        # 0x140034508
140016171:	48 89 7b 10          	mov    %rdi,0x10(%rbx)
140016175:	48 c7 43 18 07 00 00 	movq   $0x7,0x18(%rbx)
14001617c:	00
14001617d:	66 89 3b             	mov    %di,(%rbx)
140016180:	40 88 7b 20          	mov    %dil,0x20(%rbx)
140016184:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140016189:	48 83 c4 20          	add    $0x20,%rsp
14001618d:	5f                   	pop    %rdi
14001618e:	c3                   	ret
14001618f:	ff 15 0b e3 01 00    	call   *0x1e30b(%rip)        # 0x1400344a0
140016195:	cc                   	int3
140016196:	90                   	nop
140016197:	90                   	nop
140016198:	4c 8b dc             	mov    %rsp,%r11
14001619b:	49 89 5b 18          	mov    %rbx,0x18(%r11)
14001619f:	49 89 73 20          	mov    %rsi,0x20(%r11)
1400161a3:	49 89 4b 08          	mov    %rcx,0x8(%r11)
1400161a7:	57                   	push   %rdi
1400161a8:	48 83 ec 20          	sub    $0x20,%rsp
1400161ac:	48 8b f2             	mov    %rdx,%rsi
1400161af:	48 8b f9             	mov    %rcx,%rdi
1400161b2:	8b 02                	mov    (%rdx),%eax
1400161b4:	89 01                	mov    %eax,(%rcx)
1400161b6:	48 8d 59 08          	lea    0x8(%rcx),%rbx
1400161ba:	49 89 5b 10          	mov    %rbx,0x10(%r11)
1400161be:	48 83 c2 08          	add    $0x8,%rdx
1400161c2:	c6 43 20 00          	movb   $0x0,0x20(%rbx)
1400161c6:	80 7a 20 00          	cmpb   $0x0,0x20(%rdx)
1400161ca:	74 2a                	je     0x1400161f6
1400161cc:	0f 57 c0             	xorps  %xmm0,%xmm0
1400161cf:	0f 11 03             	movups %xmm0,(%rbx)
1400161d2:	48 83 63 10 00       	andq   $0x0,0x10(%rbx)
1400161d7:	48 83 63 18 00       	andq   $0x0,0x18(%rbx)
1400161dc:	4c 8b 42 10          	mov    0x10(%rdx),%r8
1400161e0:	48 83 7a 18 07       	cmpq   $0x7,0x18(%rdx)
1400161e5:	76 03                	jbe    0x1400161ea
1400161e7:	48 8b 12             	mov    (%rdx),%rdx
1400161ea:	48 8b cb             	mov    %rbx,%rcx
1400161ed:	e8 9e 8a ff ff       	call   0x14000ec90
1400161f2:	c6 43 20 01          	movb   $0x1,0x20(%rbx)
1400161f6:	48 8d 5f 30          	lea    0x30(%rdi),%rbx
1400161fa:	48 89 5c 24 38       	mov    %rbx,0x38(%rsp)
1400161ff:	48 8d 56 30          	lea    0x30(%rsi),%rdx
140016203:	c6 43 40 00          	movb   $0x0,0x40(%rbx)
140016207:	80 7a 40 00          	cmpb   $0x0,0x40(%rdx)
14001620b:	74 0c                	je     0x140016219
14001620d:	48 8b cb             	mov    %rbx,%rcx
140016210:	e8 2b fd ff ff       	call   0x140015f40
140016215:	c6 43 40 01          	movb   $0x1,0x40(%rbx)
140016219:	48 8b c7             	mov    %rdi,%rax
14001621c:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140016221:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140016226:	48 83 c4 20          	add    $0x20,%rsp
14001622a:	5f                   	pop    %rdi
14001622b:	c3                   	ret
14001622c:	90                   	nop
14001622d:	90                   	nop
14001622e:	90                   	nop
14001622f:	90                   	nop
140016230:	48 8b c4             	mov    %rsp,%rax
140016233:	48 89 58 08          	mov    %rbx,0x8(%rax)
140016237:	48 89 70 18          	mov    %rsi,0x18(%rax)
14001623b:	48 89 78 20          	mov    %rdi,0x20(%rax)
14001623f:	55                   	push   %rbp
140016240:	41 54                	push   %r12
140016242:	41 55                	push   %r13
140016244:	41 56                	push   %r14
140016246:	41 57                	push   %r15
140016248:	48 8d 68 a1          	lea    -0x5f(%rax),%rbp
14001624c:	48 81 ec d0 00 00 00 	sub    $0xd0,%rsp
140016253:	48 8b 05 e6 ce 02 00 	mov    0x2cee6(%rip),%rax        # 0x140043140
14001625a:	48 33 c4             	xor    %rsp,%rax
14001625d:	48 89 45 2f          	mov    %rax,0x2f(%rbp)
140016261:	4c 8b fa             	mov    %rdx,%r15
140016264:	48 89 55 9f          	mov    %rdx,-0x61(%rbp)
140016268:	83 f9 03             	cmp    $0x3,%ecx
14001626b:	0f 85 06 03 00 00    	jne    0x140016577
140016271:	b9 01 00 00 00       	mov    $0x1,%ecx
140016276:	01 0d f4 f7 02 00    	add    %ecx,0x2f7f4(%rip)        # 0x140045a70
14001627c:	8b f1                	mov    %ecx,%esi
14001627e:	4c 8d 62 18          	lea    0x18(%rdx),%r12
140016282:	45 33 ed             	xor    %r13d,%r13d
140016285:	48 8b 05 d4 f7 02 00 	mov    0x2f7d4(%rip),%rax        # 0x140045a60
14001628c:	48 85 c0             	test   %rax,%rax
14001628f:	74 14                	je     0x1400162a5
140016291:	45 33 c0             	xor    %r8d,%r8d
140016294:	41 8d 50 32          	lea    0x32(%r8),%edx
140016298:	8b ce                	mov    %esi,%ecx
14001629a:	ff 15 f8 e2 01 00    	call   *0x1e2f8(%rip)        # 0x140034598
1400162a0:	b9 01 00 00 00       	mov    $0x1,%ecx
1400162a5:	48 8b 05 a4 cf 02 00 	mov    0x2cfa4(%rip),%rax        # 0x140043250
1400162ac:	48 85 c0             	test   %rax,%rax
1400162af:	74 18                	je     0x1400162c9
1400162b1:	49 8b d7             	mov    %r15,%rdx
1400162b4:	ff 15 de e2 01 00    	call   *0x1e2de(%rip)        # 0x140034598
1400162ba:	48 8b f8             	mov    %rax,%rdi
1400162bd:	4d 8b f4             	mov    %r12,%r14
1400162c0:	48 85 c0             	test   %rax,%rax
1400162c3:	0f 85 dd 02 00 00    	jne    0x1400165a6
1400162c9:	4d 8d 77 18          	lea    0x18(%r15),%r14
1400162cd:	49 8b 1e             	mov    (%r14),%rbx
1400162d0:	44 38 2b             	cmp    %r13b,(%rbx)
1400162d3:	75 07                	jne    0x1400162dc
1400162d5:	b9 05 00 00 00       	mov    $0x5,%ecx
1400162da:	cd 29                	int    $0x29
1400162dc:	33 d2                	xor    %edx,%edx
1400162de:	41 b8 00 10 00 00    	mov    $0x1000,%r8d
1400162e4:	48 8b cb             	mov    %rbx,%rcx
1400162e7:	ff 15 e3 dd 01 00    	call   *0x1dde3(%rip)        # 0x1400340d0
1400162ed:	48 8b f8             	mov    %rax,%rdi
1400162f0:	48 85 c0             	test   %rax,%rax
1400162f3:	75 3e                	jne    0x140016333
1400162f5:	ff 15 1d dd 01 00    	call   *0x1dd1d(%rip)        # 0x140034018
1400162fb:	83 f8 57             	cmp    $0x57,%eax
1400162fe:	75 33                	jne    0x140016333
140016300:	48 8d 0d f1 1c 02 00 	lea    0x21cf1(%rip),%rcx        # 0x140037ff8
140016307:	ff 15 2b de 01 00    	call   *0x1de2b(%rip)        # 0x140034138
14001630d:	48 8b c8             	mov    %rax,%rcx
140016310:	48 8d 15 d1 1c 02 00 	lea    0x21cd1(%rip),%rdx        # 0x140037fe8
140016317:	ff 15 33 dd 01 00    	call   *0x1dd33(%rip)        # 0x140034050
14001631d:	48 85 c0             	test   %rax,%rax
140016320:	75 11                	jne    0x140016333
140016322:	45 33 c0             	xor    %r8d,%r8d
140016325:	33 d2                	xor    %edx,%edx
140016327:	48 8b cb             	mov    %rbx,%rcx
14001632a:	ff 15 a0 dd 01 00    	call   *0x1dda0(%rip)        # 0x1400340d0
140016330:	48 8b f8             	mov    %rax,%rdi
140016333:	48 85 ff             	test   %rdi,%rdi
140016336:	0f 85 6a 02 00 00    	jne    0x1400165a6
14001633c:	8b fe                	mov    %esi,%edi
14001633e:	48 8d 4d 97          	lea    -0x69(%rbp),%rcx
140016342:	e8 95 f3 fe ff       	call   0x1400056dc
140016347:	48 8b 5d 97          	mov    -0x69(%rbp),%rbx
14001634b:	85 f6                	test   %esi,%esi
14001634d:	74 3a                	je     0x140016389
14001634f:	48 69 d7 80 96 98 00 	imul   $0x989680,%rdi,%rdx
140016356:	48 bf ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rdi
14001635d:	ff ff 7f
140016360:	48 8b cf             	mov    %rdi,%rcx
140016363:	48 2b ca             	sub    %rdx,%rcx
140016366:	48 3b d9             	cmp    %rcx,%rbx
140016369:	75 05                	jne    0x140016370
14001636b:	41 8a c5             	mov    %r13b,%al
14001636e:	eb 0d                	jmp    0x14001637d
140016370:	b8 ff 00 00 00       	mov    $0xff,%eax
140016375:	b9 01 00 00 00       	mov    $0x1,%ecx
14001637a:	0f 4d c1             	cmovge %ecx,%eax
14001637d:	84 c0                	test   %al,%al
14001637f:	79 05                	jns    0x140016386
140016381:	48 03 da             	add    %rdx,%rbx
140016384:	eb 03                	jmp    0x140016389
140016386:	48 8b df             	mov    %rdi,%rbx
140016389:	48 bf 00 00 4f 91 94 	movabs $0x4e94914f0000,%rdi
140016390:	4e 00 00
140016393:	41 bc 01 00 00 00    	mov    $0x1,%r12d
140016399:	41 bf ff 00 00 00    	mov    $0xff,%r15d
14001639f:	48 8d 4d e7          	lea    -0x19(%rbp),%rcx
1400163a3:	e8 34 f3 fe ff       	call   0x1400056dc
1400163a8:	48 8b 45 e7          	mov    -0x19(%rbp),%rax
1400163ac:	48 3b d8             	cmp    %rax,%rbx
1400163af:	75 05                	jne    0x1400163b6
1400163b1:	41 8a cd             	mov    %r13b,%cl
1400163b4:	eb 07                	jmp    0x1400163bd
1400163b6:	41 8b cc             	mov    %r12d,%ecx
1400163b9:	41 0f 4c cf          	cmovl  %r15d,%ecx
1400163bd:	84 c9                	test   %cl,%cl
1400163bf:	7e 69                	jle    0x14001642a
1400163c1:	48 8b cb             	mov    %rbx,%rcx
1400163c4:	48 2b c8             	sub    %rax,%rcx
1400163c7:	48 3b cf             	cmp    %rdi,%rcx
1400163ca:	75 05                	jne    0x1400163d1
1400163cc:	41 8a c5             	mov    %r13b,%al
1400163cf:	eb 07                	jmp    0x1400163d8
1400163d1:	41 8b c7             	mov    %r15d,%eax
1400163d4:	41 0f 4d c4          	cmovge %r12d,%eax
1400163d8:	84 c0                	test   %al,%al
1400163da:	78 07                	js     0x1400163e3
1400163dc:	b9 00 5c 26 05       	mov    $0x5265c00,%ecx
1400163e1:	eb 3d                	jmp    0x140016420
1400163e3:	48 b8 db 34 b6 d7 82 	movabs $0x431bde82d7b634db,%rax
1400163ea:	de 1b 43
1400163ed:	48 f7 e9             	imul   %rcx
1400163f0:	48 c1 fa 12          	sar    $0x12,%rdx
1400163f4:	48 8b c2             	mov    %rdx,%rax
1400163f7:	48 c1 e8 3f          	shr    $0x3f,%rax
1400163fb:	48 03 d0             	add    %rax,%rdx
1400163fe:	48 69 c2 40 42 0f 00 	imul   $0xf4240,%rdx,%rax
140016405:	48 3b c1             	cmp    %rcx,%rax
140016408:	75 05                	jne    0x14001640f
14001640a:	45 8a c5             	mov    %r13b,%r8b
14001640d:	eb 07                	jmp    0x140016416
14001640f:	45 8b c7             	mov    %r15d,%r8d
140016412:	45 0f 4d c4          	cmovge %r12d,%r8d
140016416:	45 84 c0             	test   %r8b,%r8b
140016419:	79 03                	jns    0x14001641e
14001641b:	48 ff c2             	inc    %rdx
14001641e:	8b ca                	mov    %edx,%ecx
140016420:	e8 9b b7 01 00       	call   0x140031bc0
140016425:	e9 75 ff ff ff       	jmp    0x14001639f
14001642a:	41 03 f4             	add    %r12d,%esi
14001642d:	83 fe 32             	cmp    $0x32,%esi
140016430:	4c 8b 7d 9f          	mov    -0x61(%rbp),%r15