140015f1f:	c3                   	ret
140015f20:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140015f25:	57                   	push   %rdi
140015f26:	48 83 ec 30          	sub    $0x30,%rsp
140015f2a:	48 8b f9             	mov    %rcx,%rdi
140015f2d:	48 8b 49 28          	mov    0x28(%rcx),%rcx
140015f31:	48 85 c9             	test   %rcx,%rcx
140015f34:	74 62                	je     0x140015f98
140015f36:	48 8b 01             	mov    (%rcx),%rax
140015f39:	48 8d 5f 08          	lea    0x8(%rdi),%rbx
140015f3d:	48 8b d3             	mov    %rbx,%rdx
140015f40:	48 83 7b 18 07       	cmpq   $0x7,0x18(%rbx)
140015f45:	76 03                	jbe    0x140015f4a
140015f47:	48 8b 13             	mov    (%rbx),%rdx
140015f4a:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
140015f4f:	48 8b 53 10          	mov    0x10(%rbx),%rdx
140015f53:	48 89 54 24 28       	mov    %rdx,0x28(%rsp)
140015f58:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140015f5d:	48 8b 40 10          	mov    0x10(%rax),%rax
140015f61:	ff 15 21 97 05 00    	call   *0x59721(%rip)        # 0x14006f688
140015f67:	84 c0                	test   %al,%al
140015f69:	74 0c                	je     0x140015f77
140015f6b:	33 d2                	xor    %edx,%edx
140015f6d:	48 8b cb             	mov    %rbx,%rcx
140015f70:	e8 03 cd ff ff       	call   0x140012c78
140015f75:	eb 16                	jmp    0x140015f8d
140015f77:	c7 44 24 40 06 00 00 	movl   $0x6,0x40(%rsp)
140015f7e:	00
140015f7f:	c6 44 24 44 01       	movb   $0x1,0x44(%rsp)
140015f84:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
140015f89:	48 89 47 58          	mov    %rax,0x58(%rdi)
140015f8d:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140015f92:	48 83 c4 30          	add    $0x30,%rsp
140015f96:	5f                   	pop    %rdi
140015f97:	c3                   	ret
140015f98:	33 d2                	xor    %edx,%edx
140015f9a:	b9 41 38 3c 1e       	mov    $0x1e3c3841,%ecx
140015f9f:	e8 0c ca ff ff       	call   0x1400129b0
140015fa4:	cc                   	int3
140015fa5:	90                   	nop
140015fa6:	90                   	nop
140015fa7:	90                   	nop
140015fa8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140015fad:	57                   	push   %rdi
140015fae:	48 83 ec 30          	sub    $0x30,%rsp
140015fb2:	f3 0f 10 0a          	movss  (%rdx),%xmm1
140015fb6:	48 8b f9             	mov    %rcx,%rdi
140015fb9:	f2 0f 10 05 97 e1 08 	movsd  0x8e197(%rip),%xmm0        # 0x1400a4158
140015fc0:	00
140015fc1:	b9 00 00 80 7f       	mov    $0x7f800000,%ecx
140015fc6:	66 0f 7e c8          	movd   %xmm1,%eax
140015fca:	f2 0f 11 44 24 48    	movsd  %xmm0,0x48(%rsp)
140015fd0:	0f 29 74 24 20       	movaps %xmm6,0x20(%rsp)
140015fd5:	23 c1                	and    %ecx,%eax
140015fd7:	3b c1                	cmp    %ecx,%eax
140015fd9:	0f 95 c0             	setne  %al
140015fdc:	3c 01                	cmp    $0x1,%al
140015fde:	75 75                	jne    0x140016055
140015fe0:	0f 5a f1             	cvtps2pd %xmm1,%xmm6
140015fe3:	66 0f 2e 35 3d e1 08 	ucomisd 0x8e13d(%rip),%xmm6        # 0x1400a4128
140015fea:	00
140015feb:	f2 0f 11 74 24 48    	movsd  %xmm6,0x48(%rsp)
140015ff1:	7a 02                	jp     0x140015ff5
140015ff3:	74 60                	je     0x140016055
140015ff5:	0f 28 c6             	movaps %xmm6,%xmm0
140015ff8:	0f 54 05 81 e1 08 00 	andps  0x8e181(%rip),%xmm0        # 0x1400a4180
140015fff:	e8 a3 46 05 00       	call   0x14006a6a7
140016004:	e8 98 46 05 00       	call   0x14006a6a1
140016009:	f2 0f 2c c0          	cvttsd2si %xmm0,%eax
14001600d:	bb 06 00 00 00       	mov    $0x6,%ebx
140016012:	f2 0f 10 05 26 e1 08 	movsd  0x8e126(%rip),%xmm0        # 0x1400a4140
140016019:	00
14001601a:	0f 57 c9             	xorps  %xmm1,%xmm1
14001601d:	2b d8                	sub    %eax,%ebx
14001601f:	f2 0f 2a cb          	cvtsi2sd %ebx,%xmm1
140016023:	e8 85 46 05 00       	call   0x14006a6ad
140016028:	f2 0f 59 c6          	mulsd  %xmm6,%xmm0
14001602c:	ff 15 e6 95 05 00    	call   *0x595e6(%rip)        # 0x14006f618
140016032:	f7 db                	neg    %ebx
140016034:	0f 57 c9             	xorps  %xmm1,%xmm1
140016037:	0f 28 f0             	movaps %xmm0,%xmm6
14001603a:	f2 0f 10 05 fe e0 08 	movsd  0x8e0fe(%rip),%xmm0        # 0x1400a4140
140016041:	00
140016042:	f2 0f 2a cb          	cvtsi2sd %ebx,%xmm1
140016046:	e8 62 46 05 00       	call   0x14006a6ad
14001604b:	f2 0f 59 f0          	mulsd  %xmm0,%xmm6
14001604f:	f2 0f 11 74 24 48    	movsd  %xmm6,0x48(%rsp)
140016055:	48 8d 54 24 48       	lea    0x48(%rsp),%rdx
14001605a:	48 8b cf             	mov    %rdi,%rcx
14001605d:	e8 12 00 00 00       	call   0x140016074
140016062:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140016067:	0f 28 74 24 20       	movaps 0x20(%rsp),%xmm6
14001606c:	48 83 c4 30          	add    $0x30,%rsp
140016070:	5f                   	pop    %rdi
140016071:	c3                   	ret
140016072:	90                   	nop
140016073:	90                   	nop
140016074:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140016079:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14001607e:	57                   	push   %rdi
14001607f:	48 81 ec 00 01 00 00 	sub    $0x100,%rsp
140016086:	48 8b 05 33 c6 0a 00 	mov    0xac633(%rip),%rax        # 0x1400c26c0
14001608d:	48 33 c4             	xor    %rsp,%rax
140016090:	48 89 84 24 f0 00 00 	mov    %rax,0xf0(%rsp)
140016097:	00
140016098:	48 8b da             	mov    %rdx,%rbx
14001609b:	48 8b f9             	mov    %rcx,%rdi
14001609e:	b8 6e 00 00 00       	mov    $0x6e,%eax
1400160a3:	66 89 44 24 20       	mov    %ax,0x20(%rsp)
1400160a8:	48 b8 75 00 6c 00 6c 	movabs $0x6c006c0075,%rax
1400160af:	00 00 00
1400160b2:	48 89 44 24 22       	mov    %rax,0x22(%rsp)
1400160b7:	33 d2                	xor    %edx,%edx
1400160b9:	41 b8 be 00 00 00    	mov    $0xbe,%r8d
1400160bf:	48 8d 4c 24 2a       	lea    0x2a(%rsp),%rcx
1400160c4:	e8 4d 42 05 00       	call   0x14006a316
1400160c9:	f2 0f 10 1b          	movsd  (%rbx),%xmm3
1400160cd:	66 48 0f 7e d8       	movq   %xmm3,%rax
1400160d2:	48 c1 e8 34          	shr    $0x34,%rax
1400160d6:	b9 ff 07 00 00       	mov    $0x7ff,%ecx
1400160db:	23 c1                	and    %ecx,%eax
1400160dd:	3b c1                	cmp    %ecx,%eax
1400160df:	0f 95 c0             	setne  %al
1400160e2:	33 f6                	xor    %esi,%esi
1400160e4:	3c 01                	cmp    $0x1,%al
1400160e6:	75 11                	jne    0x1400160f9
1400160e8:	8d 56 64             	lea    0x64(%rsi),%edx
1400160eb:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
1400160f0:	e8 c7 0d 00 00       	call   0x140016ebc
1400160f5:	85 c0                	test   %eax,%eax
1400160f7:	74 73                	je     0x14001616c
1400160f9:	48 8d 5c 24 20       	lea    0x20(%rsp),%rbx
1400160fe:	0f b7 4c 24 20       	movzwl 0x20(%rsp),%ecx
140016103:	eb 3d                	jmp    0x140016142
140016105:	48 8b 57 10          	mov    0x10(%rdi),%rdx
140016109:	48 3b 57 18          	cmp    0x18(%rdi),%rdx
14001610d:	73 20                	jae    0x14001612f
14001610f:	48 8d 42 01          	lea    0x1(%rdx),%rax
140016113:	48 89 47 10          	mov    %rax,0x10(%rdi)
140016117:	48 8b c7             	mov    %rdi,%rax
14001611a:	48 83 7f 18 07       	cmpq   $0x7,0x18(%rdi)
14001611f:	76 03                	jbe    0x140016124
140016121:	48 8b 07             	mov    (%rdi),%rax
140016124:	66 89 0c 50          	mov    %cx,(%rax,%rdx,2)
140016128:	66 89 74 50 02       	mov    %si,0x2(%rax,%rdx,2)
14001612d:	eb 0c                	jmp    0x14001613b
14001612f:	44 0f b7 c9          	movzwl %cx,%r9d
140016133:	48 8b cf             	mov    %rdi,%rcx
140016136:	e8 7d cd ff ff       	call   0x140012eb8
14001613b:	48 83 c3 02          	add    $0x2,%rbx
14001613f:	0f b7 0b             	movzwl (%rbx),%ecx
140016142:	66 85 c9             	test   %cx,%cx
140016145:	75 be                	jne    0x140016105
140016147:	48 8b 8c 24 f0 00 00 	mov    0xf0(%rsp),%rcx
14001614e:	00
14001614f:	48 33 cc             	xor    %rsp,%rcx
140016152:	e8 e9 38 05 00       	call   0x140069a40
140016157:	4c 8d 9c 24 00 01 00 	lea    0x100(%rsp),%r11
14001615e:	00
14001615f:	49 8b 5b 20          	mov    0x20(%r11),%rbx
140016163:	49 8b 73 28          	mov    0x28(%r11),%rsi
140016167:	49 8b e3             	mov    %r11,%rsp
14001616a:	5f                   	pop    %rdi
14001616b:	c3                   	ret
14001616c:	33 d2                	xor    %edx,%edx
14001616e:	b9 59 10 56 1e       	mov    $0x1e561059,%ecx
140016173:	e8 38 c8 ff ff       	call   0x1400129b0
140016178:	cc                   	int3
140016179:	90                   	nop
14001617a:	90                   	nop
14001617b:	90                   	nop
14001617c:	4c 8b dc             	mov    %rsp,%r11
14001617f:	49 89 5b 10          	mov    %rbx,0x10(%r11)
140016183:	49 89 6b 18          	mov    %rbp,0x18(%r11)
140016187:	49 89 73 20          	mov    %rsi,0x20(%r11)
14001618b:	57                   	push   %rdi
14001618c:	48 81 ec c0 00 00 00 	sub    $0xc0,%rsp
140016193:	48 8b 05 26 c5 0a 00 	mov    0xac526(%rip),%rax        # 0x1400c26c0
14001619a:	48 33 c4             	xor    %rsp,%rax
14001619d:	48 89 84 24 b0 00 00 	mov    %rax,0xb0(%rsp)
1400161a4:	00
1400161a5:	48 8b d9             	mov    %rcx,%rbx
1400161a8:	4c 8b 0a             	mov    (%rdx),%r9
1400161ab:	4d 8d 43 dc          	lea    -0x24(%r11),%r8
1400161af:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
1400161b4:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1400161b9:	e8 4a 02 00 00       	call   0x140016408
1400161be:	0f 10 08             	movups (%rax),%xmm1
1400161c1:	8b 40 08             	mov    0x8(%rax),%eax
1400161c4:	33 ed                	xor    %ebp,%ebp
1400161c6:	85 c0                	test   %eax,%eax
1400161c8:	75 7c                	jne    0x140016246
1400161ca:	48 8d 7c 24 40       	lea    0x40(%rsp),%rdi
1400161cf:	48 8d 44 24 40       	lea    0x40(%rsp),%rax
1400161d4:	66 48 0f 7e ce       	movq   %xmm1,%rsi
1400161d9:	48 3b c6             	cmp    %rsi,%rax
1400161dc:	73 3f                	jae    0x14001621d
1400161de:	44 0f b6 0f          	movzbl (%rdi),%r9d
1400161e2:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
1400161e6:	48 3b 4b 18          	cmp    0x18(%rbx),%rcx
1400161ea:	73 21                	jae    0x14001620d
1400161ec:	48 8d 41 01          	lea    0x1(%rcx),%rax
1400161f0:	48 89 43 10          	mov    %rax,0x10(%rbx)
1400161f4:	48 8b c3             	mov    %rbx,%rax
1400161f7:	48 83 7b 18 07       	cmpq   $0x7,0x18(%rbx)
1400161fc:	76 03                	jbe    0x140016201
1400161fe:	48 8b 03             	mov    (%rbx),%rax
140016201:	66 44 89 0c 48       	mov    %r9w,(%rax,%rcx,2)
140016206:	66 89 6c 48 02       	mov    %bp,0x2(%rax,%rcx,2)
14001620b:	eb 08                	jmp    0x140016215
14001620d:	48 8b cb             	mov    %rbx,%rcx
140016210:	e8 a3 cc ff ff       	call   0x140012eb8
140016215:	48 ff c7             	inc    %rdi
140016218:	48 3b fe             	cmp    %rsi,%rdi
14001621b:	72 c1                	jb     0x1400161de
14001621d:	48 8b 8c 24 b0 00 00 	mov    0xb0(%rsp),%rcx
140016224:	00
140016225:	48 33 cc             	xor    %rsp,%rcx
140016228:	e8 13 38 05 00       	call   0x140069a40
14001622d:	4c 8d 9c 24 c0 00 00 	lea    0xc0(%rsp),%r11
140016234:	00
140016235:	49 8b 5b 18          	mov    0x18(%r11),%rbx
140016239:	49 8b 6b 20          	mov    0x20(%r11),%rbp
14001623d:	49 8b 73 28          	mov    0x28(%r11),%rsi
140016241:	49 8b e3             	mov    %r11,%rsp
140016244:	5f                   	pop    %rdi
140016245:	c3                   	ret
140016246:	33 d2                	xor    %edx,%edx
140016248:	b9 8a 56 54 1e       	mov    $0x1e54568a,%ecx
14001624d:	e8 5e c7 ff ff       	call   0x1400129b0
140016252:	cc                   	int3
140016253:	90                   	nop
140016254:	4c 8b dc             	mov    %rsp,%r11
140016257:	49 89 5b 10          	mov    %rbx,0x10(%r11)
14001625b:	49 89 6b 18          	mov    %rbp,0x18(%r11)
14001625f:	49 89 73 20          	mov    %rsi,0x20(%r11)
140016263:	57                   	push   %rdi
140016264:	48 81 ec c0 00 00 00 	sub    $0xc0,%rsp
14001626b:	48 8b 05 4e c4 0a 00 	mov    0xac44e(%rip),%rax        # 0x1400c26c0
140016272:	48 33 c4             	xor    %rsp,%rax
140016275:	48 89 84 24 b0 00 00 	mov    %rax,0xb0(%rsp)
14001627c:	00
14001627d:	48 8b d9             	mov    %rcx,%rbx
140016280:	4c 8b 0a             	mov    (%rdx),%r9
140016283:	4d 8d 43 dc          	lea    -0x24(%r11),%r8
140016287:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
14001628c:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140016291:	e8 96 00 00 00       	call   0x14001632c
140016296:	0f 10 08             	movups (%rax),%xmm1
140016299:	8b 40 08             	mov    0x8(%rax),%eax
14001629c:	33 ed                	xor    %ebp,%ebp
14001629e:	85 c0                	test   %eax,%eax
1400162a0:	75 7c                	jne    0x14001631e
1400162a2:	48 8d 7c 24 40       	lea    0x40(%rsp),%rdi
1400162a7:	48 8d 44 24 40       	lea    0x40(%rsp),%rax
1400162ac:	66 48 0f 7e ce       	movq   %xmm1,%rsi
1400162b1:	48 3b c6             	cmp    %rsi,%rax
1400162b4:	73 3f                	jae    0x1400162f5
1400162b6:	44 0f b6 0f          	movzbl (%rdi),%r9d
1400162ba:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
1400162be:	48 3b 4b 18          	cmp    0x18(%rbx),%rcx
1400162c2:	73 21                	jae    0x1400162e5
1400162c4:	48 8d 41 01          	lea    0x1(%rcx),%rax
1400162c8:	48 89 43 10          	mov    %rax,0x10(%rbx)
1400162cc:	48 8b c3             	mov    %rbx,%rax
1400162cf:	48 83 7b 18 07       	cmpq   $0x7,0x18(%rbx)
1400162d4:	76 03                	jbe    0x1400162d9
1400162d6:	48 8b 03             	mov    (%rbx),%rax
1400162d9:	66 44 89 0c 48       	mov    %r9w,(%rax,%rcx,2)
1400162de:	66 89 6c 48 02       	mov    %bp,0x2(%rax,%rcx,2)
1400162e3:	eb 08                	jmp    0x1400162ed
1400162e5:	48 8b cb             	mov    %rbx,%rcx
1400162e8:	e8 cb cb ff ff       	call   0x140012eb8
1400162ed:	48 ff c7             	inc    %rdi
1400162f0:	48 3b fe             	cmp    %rsi,%rdi
1400162f3:	72 c1                	jb     0x1400162b6
1400162f5:	48 8b 8c 24 b0 00 00 	mov    0xb0(%rsp),%rcx
1400162fc:	00
1400162fd:	48 33 cc             	xor    %rsp,%rcx
140016300:	e8 3b 37 05 00       	call   0x140069a40
140016305:	4c 8d 9c 24 c0 00 00 	lea    0xc0(%rsp),%r11
14001630c:	00
14001630d:	49 8b 5b 18          	mov    0x18(%r11),%rbx
140016311:	49 8b 6b 20          	mov    0x20(%r11),%rbp
140016315:	49 8b 73 28          	mov    0x28(%r11),%rsi
140016319:	49 8b e3             	mov    %r11,%rsp
14001631c:	5f                   	pop    %rdi
14001631d:	c3                   	ret
14001631e:	33 d2                	xor    %edx,%edx
140016320:	b9 8a 56 54 1e       	mov    $0x1e54568a,%ecx
140016325:	e8 86 c6 ff ff       	call   0x1400129b0
14001632a:	cc                   	int3
14001632b:	90                   	nop
14001632c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140016331:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140016336:	57                   	push   %rdi
140016337:	48 83 ec 70          	sub    $0x70,%rsp
14001633b:	48 8b 05 7e c3 0a 00 	mov    0xac37e(%rip),%rax        # 0x1400c26c0
140016342:	48 33 c4             	xor    %rsp,%rax
140016345:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
14001634a:	48 8b fa             	mov    %rdx,%rdi
14001634d:	48 8b d9             	mov    %rcx,%rbx
140016350:	4d 85 c9             	test   %r9,%r9
140016353:	79 1b                	jns    0x140016370
140016355:	49 3b d0             	cmp    %r8,%rdx
140016358:	75 0d                	jne    0x140016367
14001635a:	4c 89 01             	mov    %r8,(%rcx)
14001635d:	48 c7 41 08 84 00 00 	movq   $0x84,0x8(%rcx)
140016364:	00
140016365:	eb 7c                	jmp    0x1400163e3
140016367:	48 ff c7             	inc    %rdi
14001636a:	c6 02 2d             	movb   $0x2d,(%rdx)
14001636d:	49 f7 d9             	neg    %r9
140016370:	4c 8d 54 24 60       	lea    0x60(%rsp),%r10
140016375:	49 ff ca             	dec    %r10
140016378:	48 b8 cd cc cc cc cc 	movabs $0xcccccccccccccccd,%rax
14001637f:	cc cc cc
140016382:	49 f7 e1             	mul    %r9
140016385:	48 c1 ea 03          	shr    $0x3,%rdx
140016389:	8a c2                	mov    %dl,%al
14001638b:	c0 e0 02             	shl    $0x2,%al
14001638e:	8d 0c 10             	lea    (%rax,%rdx,1),%ecx
140016391:	02 c9                	add    %cl,%cl
140016393:	44 2a c9             	sub    %cl,%r9b
140016396:	41 80 c1 30          	add    $0x30,%r9b
14001639a:	45 88 0a             	mov    %r9b,(%r10)
14001639d:	4c 8b ca             	mov    %rdx,%r9
1400163a0:	48 85 d2             	test   %rdx,%rdx
1400163a3:	75 d0                	jne    0x140016375
1400163a5:	48 8d 74 24 60       	lea    0x60(%rsp),%rsi
1400163aa:	49 8b c0             	mov    %r8,%rax
1400163ad:	49 2b f2             	sub    %r10,%rsi
1400163b0:	48 2b c7             	sub    %rdi,%rax
1400163b3:	48 3b c6             	cmp    %rsi,%rax
1400163b6:	7d 0d                	jge    0x1400163c5
1400163b8:	4c 89 03             	mov    %r8,(%rbx)
1400163bb:	48 c7 43 08 84 00 00 	movq   $0x84,0x8(%rbx)
1400163c2:	00
1400163c3:	eb 1e                	jmp    0x1400163e3
1400163c5:	4c 8b c6             	mov    %rsi,%r8
1400163c8:	49 8b d2             	mov    %r10,%rdx
1400163cb:	48 8b cf             	mov    %rdi,%rcx
1400163ce:	e8 3d 3f 05 00       	call   0x14006a310
1400163d3:	83 63 08 00          	andl   $0x0,0x8(%rbx)
1400163d7:	48 8d 04 37          	lea    (%rdi,%rsi,1),%rax
1400163db:	48 89 03             	mov    %rax,(%rbx)
1400163de:	33 c0                	xor    %eax,%eax
1400163e0:	89 43 0c             	mov    %eax,0xc(%rbx)
1400163e3:	48 8b c3             	mov    %rbx,%rax
1400163e6:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx