140045f8e:	c3                   	ret
140045f8f:	e8 ac bf fe ff       	call   0x140031f40
140045f94:	90                   	nop
140045f95:	cc                   	int3
140045f96:	cc                   	int3
140045f97:	cc                   	int3
140045f98:	cc                   	int3
140045f99:	cc                   	int3
140045f9a:	cc                   	int3
140045f9b:	cc                   	int3
140045f9c:	cc                   	int3
140045f9d:	cc                   	int3
140045f9e:	cc                   	int3
140045f9f:	cc                   	int3
140045fa0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140045fa5:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
140045faa:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140045faf:	57                   	push   %rdi
140045fb0:	48 83 ec 60          	sub    $0x60,%rsp
140045fb4:	8b da                	mov    %edx,%ebx
140045fb6:	48 8d 71 50          	lea    0x50(%rcx),%rsi
140045fba:	48 8b 3e             	mov    (%rsi),%rdi
140045fbd:	48 8b 47 08          	mov    0x8(%rdi),%rax
140045fc1:	48 8b d7             	mov    %rdi,%rdx
140045fc4:	44 0f b6 40 19       	movzbl 0x19(%rax),%r8d
140045fc9:	45 84 c0             	test   %r8b,%r8b
140045fcc:	75 1a                	jne    0x140045fe8
140045fce:	48 8b c8             	mov    %rax,%rcx
140045fd1:	39 59 20             	cmp    %ebx,0x20(%rcx)
140045fd4:	73 06                	jae    0x140045fdc
140045fd6:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140045fda:	eb 06                	jmp    0x140045fe2
140045fdc:	48 8b d1             	mov    %rcx,%rdx
140045fdf:	48 8b 09             	mov    (%rcx),%rcx
140045fe2:	80 79 19 00          	cmpb   $0x0,0x19(%rcx)
140045fe6:	74 e9                	je     0x140045fd1
140045fe8:	80 7a 19 00          	cmpb   $0x0,0x19(%rdx)
140045fec:	0f 85 d7 00 00 00    	jne    0x1400460c9
140045ff2:	3b 5a 20             	cmp    0x20(%rdx),%ebx
140045ff5:	0f 82 ce 00 00 00    	jb     0x1400460c9
140045ffb:	48 3b d7             	cmp    %rdi,%rdx
140045ffe:	0f 84 c5 00 00 00    	je     0x1400460c9
140046004:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
140046009:	33 ed                	xor    %ebp,%ebp
14004600b:	89 6c 24 48          	mov    %ebp,0x48(%rsp)
14004600f:	48 8b cf             	mov    %rdi,%rcx
140046012:	45 84 c0             	test   %r8b,%r8b
140046015:	75 31                	jne    0x140046048
140046017:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14004601e:	00 00
140046020:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
140046025:	39 58 20             	cmp    %ebx,0x20(%rax)
140046028:	73 0a                	jae    0x140046034
14004602a:	89 6c 24 48          	mov    %ebp,0x48(%rsp)
14004602e:	48 8b 40 10          	mov    0x10(%rax),%rax
140046032:	eb 0e                	jmp    0x140046042
140046034:	c7 44 24 48 01 00 00 	movl   $0x1,0x48(%rsp)
14004603b:	00
14004603c:	48 8b c8             	mov    %rax,%rcx
14004603f:	48 8b 00             	mov    (%rax),%rax
140046042:	40 38 68 19          	cmp    %bpl,0x19(%rax)
140046046:	74 d8                	je     0x140046020
140046048:	40 38 69 19          	cmp    %bpl,0x19(%rcx)
14004604c:	75 05                	jne    0x140046053
14004604e:	3b 59 20             	cmp    0x20(%rcx),%ebx
140046051:	73 72                	jae    0x1400460c5
140046053:	48 b8 33 33 33 33 33 	movabs $0x333333333333333,%rax
14004605a:	33 33 03
14004605d:	48 39 46 08          	cmp    %rax,0x8(%rsi)
140046061:	0f 84 85 00 00 00    	je     0x1400460ec
140046067:	48 89 74 24 30       	mov    %rsi,0x30(%rsp)
14004606c:	48 89 6c 24 38       	mov    %rbp,0x38(%rsp)
140046071:	b9 50 00 00 00       	mov    $0x50,%ecx
140046076:	e8 c5 38 01 00       	call   0x140059940
14004607b:	90                   	nop
14004607c:	89 58 20             	mov    %ebx,0x20(%rax)
14004607f:	48 89 68 48          	mov    %rbp,0x48(%rax)
140046083:	48 89 68 28          	mov    %rbp,0x28(%rax)
140046087:	33 c9                	xor    %ecx,%ecx
140046089:	48 89 48 30          	mov    %rcx,0x30(%rax)
14004608d:	48 89 48 38          	mov    %rcx,0x38(%rax)
140046091:	48 89 48 40          	mov    %rcx,0x40(%rax)
140046095:	66 89 48 48          	mov    %cx,0x48(%rax)
140046099:	48 89 38             	mov    %rdi,(%rax)
14004609c:	48 89 78 08          	mov    %rdi,0x8(%rax)
1400460a0:	48 89 78 10          	mov    %rdi,0x10(%rax)
1400460a4:	66 89 48 18          	mov    %cx,0x18(%rax)
1400460a8:	0f 10 44 24 40       	movups 0x40(%rsp),%xmm0
1400460ad:	0f 29 44 24 30       	movaps %xmm0,0x30(%rsp)
1400460b2:	4c 8b c0             	mov    %rax,%r8
1400460b5:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1400460ba:	48 8b ce             	mov    %rsi,%rcx
1400460bd:	e8 8e c0 ff ff       	call   0x140042150
1400460c2:	48 8b c8             	mov    %rax,%rcx
1400460c5:	c6 41 48 01          	movb   $0x1,0x48(%rcx)
1400460c9:	0f b6 54 24 20       	movzbl 0x20(%rsp),%edx
1400460ce:	48 8b ce             	mov    %rsi,%rcx
1400460d1:	e8 ea 35 00 00       	call   0x1400496c0
1400460d6:	4c 8d 5c 24 60       	lea    0x60(%rsp),%r11
1400460db:	49 8b 5b 18          	mov    0x18(%r11),%rbx
1400460df:	49 8b 6b 20          	mov    0x20(%r11),%rbp
1400460e3:	49 8b 73 28          	mov    0x28(%r11),%rsi
1400460e7:	49 8b e3             	mov    %r11,%rsp
1400460ea:	5f                   	pop    %rdi
1400460eb:	c3                   	ret
1400460ec:	e8 4f be fe ff       	call   0x140031f40
1400460f1:	cc                   	int3
1400460f2:	cc                   	int3
1400460f3:	cc                   	int3
1400460f4:	cc                   	int3
1400460f5:	cc                   	int3
1400460f6:	cc                   	int3
1400460f7:	cc                   	int3
1400460f8:	cc                   	int3
1400460f9:	cc                   	int3
1400460fa:	cc                   	int3
1400460fb:	cc                   	int3
1400460fc:	cc                   	int3
1400460fd:	cc                   	int3
1400460fe:	cc                   	int3
1400460ff:	cc                   	int3
140046100:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140046105:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14004610a:	55                   	push   %rbp
14004610b:	57                   	push   %rdi
14004610c:	41 54                	push   %r12
14004610e:	41 56                	push   %r14
140046110:	41 57                	push   %r15
140046112:	48 8d 6c 24 c9       	lea    -0x37(%rsp),%rbp
140046117:	48 81 ec f0 00 00 00 	sub    $0xf0,%rsp
14004611e:	48 8b 05 1b 1f 03 00 	mov    0x31f1b(%rip),%rax        # 0x140078040
140046125:	48 33 c4             	xor    %rsp,%rax
140046128:	48 89 45 27          	mov    %rax,0x27(%rbp)
14004612c:	4d 8b f8             	mov    %r8,%r15
14004612f:	4c 8b f2             	mov    %rdx,%r14
140046132:	0f 57 c0             	xorps  %xmm0,%xmm0
140046135:	0f 11 45 9f          	movups %xmm0,-0x61(%rbp)
140046139:	0f 57 c9             	xorps  %xmm1,%xmm1
14004613c:	f3 0f 7f 4d af       	movdqu %xmm1,-0x51(%rbp)
140046141:	41 b8 09 00 00 00    	mov    $0x9,%r8d
140046147:	48 8d 15 8a eb 01 00 	lea    0x1eb8a(%rip),%rdx        # 0x140064cd8
14004614e:	48 8d 4d 9f          	lea    -0x61(%rbp),%rcx
140046152:	e8 e9 de fd ff       	call   0x140024040
140046157:	90                   	nop
140046158:	0f 57 c0             	xorps  %xmm0,%xmm0
14004615b:	f3 0f 7f 45 87       	movdqu %xmm0,-0x79(%rbp)
140046160:	45 33 e4             	xor    %r12d,%r12d
140046163:	4c 89 65 97          	mov    %r12,-0x69(%rbp)
140046167:	41 8d 4c 24 20       	lea    0x20(%r12),%ecx
14004616c:	e8 cf 37 01 00       	call   0x140059940
140046171:	48 89 45 87          	mov    %rax,-0x79(%rbp)
140046175:	48 89 45 8f          	mov    %rax,-0x71(%rbp)
140046179:	48 8d 58 20          	lea    0x20(%rax),%rbx
14004617d:	48 89 5d 97          	mov    %rbx,-0x69(%rbp)
140046181:	48 8d 4d 87          	lea    -0x79(%rbp),%rcx
140046185:	48 89 4d ef          	mov    %rcx,-0x11(%rbp)
140046189:	0f 57 c0             	xorps  %xmm0,%xmm0
14004618c:	0f 11 45 07          	movups %xmm0,0x7(%rbp)
140046190:	48 89 45 07          	mov    %rax,0x7(%rbp)
140046194:	48 89 45 0f          	mov    %rax,0xf(%rbp)
140046198:	48 8d 4d 87          	lea    -0x79(%rbp),%rcx
14004619c:	48 89 4d 17          	mov    %rcx,0x17(%rbp)
1400461a0:	48 8d 55 9f          	lea    -0x61(%rbp),%rdx
1400461a4:	48 8b c8             	mov    %rax,%rcx
1400461a7:	e8 04 ca fd ff       	call   0x140022bb0
1400461ac:	90                   	nop
1400461ad:	48 8b d3             	mov    %rbx,%rdx
1400461b0:	48 8b cb             	mov    %rbx,%rcx
1400461b3:	e8 c8 32 00 00       	call   0x140049480
1400461b8:	48 89 5d 8f          	mov    %rbx,-0x71(%rbp)
1400461bc:	0f 57 c0             	xorps  %xmm0,%xmm0
1400461bf:	0f 11 44 24 20       	movups %xmm0,0x20(%rsp)
1400461c4:	0f 57 c9             	xorps  %xmm1,%xmm1
1400461c7:	f3 0f 7f 4c 24 30    	movdqu %xmm1,0x30(%rsp)
1400461cd:	45 8d 44 24 04       	lea    0x4(%r12),%r8d
1400461d2:	48 8d 15 ef ea 01 00 	lea    0x1eaef(%rip),%rdx        # 0x140064cc8
1400461d9:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
1400461de:	e8 5d de fd ff       	call   0x140024040
1400461e3:	90                   	nop
1400461e4:	0f 57 c0             	xorps  %xmm0,%xmm0
1400461e7:	0f 11 45 bf          	movups %xmm0,-0x41(%rbp)
1400461eb:	0f 57 c9             	xorps  %xmm1,%xmm1
1400461ee:	f3 0f 7f 4d cf       	movdqu %xmm1,-0x31(%rbp)
1400461f3:	45 8d 44 24 07       	lea    0x7(%r12),%r8d
1400461f8:	48 8d 15 09 eb 01 00 	lea    0x1eb09(%rip),%rdx        # 0x140064d08
1400461ff:	48 8d 4d bf          	lea    -0x41(%rbp),%rcx
140046203:	e8 38 de fd ff       	call   0x140024040
140046208:	90                   	nop
140046209:	4c 8d 4d 87          	lea    -0x79(%rbp),%r9
14004620d:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
140046212:	48 8d 55 bf          	lea    -0x41(%rbp),%rdx
140046216:	49 8b ce             	mov    %r14,%rcx
140046219:	e8 42 f9 fd ff       	call   0x140025b60
14004621e:	90                   	nop
14004621f:	48 8b 55 d7          	mov    -0x29(%rbp),%rdx
140046223:	48 83 fa 07          	cmp    $0x7,%rdx
140046227:	76 39                	jbe    0x140046262
140046229:	48 8d 14 55 02 00 00 	lea    0x2(,%rdx,2),%rdx
140046230:	00
140046231:	48 8b 4d bf          	mov    -0x41(%rbp),%rcx
140046235:	48 8b c1             	mov    %rcx,%rax
140046238:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14004623f:	72 1c                	jb     0x14004625d
140046241:	48 83 c2 27          	add    $0x27,%rdx
140046245:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
140046249:	48 2b c1             	sub    %rcx,%rax
14004624c:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
140046250:	48 83 f8 1f          	cmp    $0x1f,%rax
140046254:	76 07                	jbe    0x14004625d
140046256:	ff 15 44 93 01 00    	call   *0x19344(%rip)        # 0x14005f5a0
14004625c:	cc                   	int3
14004625d:	e8 32 3a 01 00       	call   0x140059c94
140046262:	66 0f 6f 05 96 f5 01 	movdqa 0x1f596(%rip),%xmm0        # 0x140065800
140046269:	00
14004626a:	f3 0f 7f 45 cf       	movdqu %xmm0,-0x31(%rbp)
14004626f:	66 44 89 65 bf       	mov    %r12w,-0x41(%rbp)
140046274:	48 8b 54 24 38       	mov    0x38(%rsp),%rdx
140046279:	48 83 fa 07          	cmp    $0x7,%rdx
14004627d:	76 3a                	jbe    0x1400462b9
14004627f:	48 8d 14 55 02 00 00 	lea    0x2(,%rdx,2),%rdx
140046286:	00
140046287:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
14004628c:	48 8b c1             	mov    %rcx,%rax
14004628f:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140046296:	72 1c                	jb     0x1400462b4
140046298:	48 83 c2 27          	add    $0x27,%rdx
14004629c:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
1400462a0:	48 2b c1             	sub    %rcx,%rax
1400462a3:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
1400462a7:	48 83 f8 1f          	cmp    $0x1f,%rax
1400462ab:	76 07                	jbe    0x1400462b4
1400462ad:	ff 15 ed 92 01 00    	call   *0x192ed(%rip)        # 0x14005f5a0
1400462b3:	cc                   	int3
1400462b4:	e8 db 39 01 00       	call   0x140059c94
1400462b9:	66 0f 6f 05 3f f5 01 	movdqa 0x1f53f(%rip),%xmm0        # 0x140065800
1400462c0:	00
1400462c1:	f3 0f 7f 44 24 30    	movdqu %xmm0,0x30(%rsp)
1400462c7:	66 44 89 64 24 20    	mov    %r12w,0x20(%rsp)
1400462cd:	48 8d 4d 87          	lea    -0x79(%rbp),%rcx
1400462d1:	e8 ea 30 00 00       	call   0x1400493c0
1400462d6:	90                   	nop
1400462d7:	4c 8d 0d e2 b4 fd ff 	lea    -0x24b1e(%rip),%r9        # 0x1400217c0
1400462de:	ba 20 00 00 00       	mov    $0x20,%edx
1400462e3:	44 8d 42 e1          	lea    -0x1f(%rdx),%r8d
1400462e7:	48 8d 4d 9f          	lea    -0x61(%rbp),%rcx
1400462eb:	e8 8c 36 01 00       	call   0x14005997c
1400462f0:	4c 89 65 ff          	mov    %r12,-0x1(%rbp)
1400462f4:	49 8b 06             	mov    (%r14),%rax
1400462f7:	48 8b 98 80 00 00 00 	mov    0x80(%rax),%rbx
1400462fe:	0f 57 c0             	xorps  %xmm0,%xmm0
140046301:	0f 11 45 07          	movups %xmm0,0x7(%rbp)
140046305:	0f 57 c9             	xorps  %xmm1,%xmm1
140046308:	f3 0f 7f 4d 17       	movdqu %xmm1,0x17(%rbp)
14004630d:	41 b8 04 00 00 00    	mov    $0x4,%r8d
140046313:	48 8d 15 ae e9 01 00 	lea    0x1e9ae(%rip),%rdx        # 0x140064cc8
14004631a:	48 8d 4d 07          	lea    0x7(%rbp),%rcx
14004631e:	e8 1d dd fd ff       	call   0x140024040
140046323:	90                   	nop
140046324:	48 8b 05 95 8a 03 00 	mov    0x38a95(%rip),%rax        # 0x14007edc0
14004632b:	48 8d 4d 07          	lea    0x7(%rbp),%rcx
14004632f:	48 83 7d 1f 07       	cmpq   $0x7,0x1f(%rbp)
140046334:	48 0f 47 4d 07       	cmova  0x7(%rbp),%rcx
140046339:	4c 8d 4d 9f          	lea    -0x61(%rbp),%r9
14004633d:	4c 8d 45 a7          	lea    -0x59(%rbp),%r8
140046341:	8b 55 17             	mov    0x17(%rbp),%edx
140046344:	ff d0                	call   *%rax
140046346:	85 c0                	test   %eax,%eax
140046348:	79 16                	jns    0x140046360
14004634a:	45 33 c9             	xor    %r9d,%r9d
14004634d:	45 33 c0             	xor    %r8d,%r8d
140046350:	41 8d 51 01          	lea    0x1(%r9),%edx
140046354:	b9 0d 00 00 c0       	mov    $0xc000000d,%ecx
140046359:	ff 15 79 8d 01 00    	call   *0x18d79(%rip)        # 0x14005f0d8
14004635f:	90                   	nop
140046360:	4c 8d 45 ff          	lea    -0x1(%rbp),%r8
140046364:	48 8b 55 9f          	mov    -0x61(%rbp),%rdx
140046368:	49 8b ce             	mov    %r14,%rcx
14004636b:	ff d3                	call   *%rbx
14004636d:	8b d8                	mov    %eax,%ebx
14004636f:	48 8b 4d 9f          	mov    -0x61(%rbp),%rcx
140046373:	ff 15 7f 8a 03 00    	call   *0x38a7f(%rip)        # 0x14007edf8
140046379:	90                   	nop
14004637a:	48 8b 55 1f          	mov    0x1f(%rbp),%rdx
14004637e:	48 83 fa 07          	cmp    $0x7,%rdx
140046382:	76 39                	jbe    0x1400463bd
140046384:	48 8d 14 55 02 00 00 	lea    0x2(,%rdx,2),%rdx
14004638b:	00
14004638c:	48 8b 4d 07          	mov    0x7(%rbp),%rcx
140046390:	48 8b c1             	mov    %rcx,%rax
140046393:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14004639a:	72 1c                	jb     0x1400463b8
14004639c:	48 83 c2 27          	add    $0x27,%rdx
1400463a0:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
1400463a4:	48 2b c1             	sub    %rcx,%rax
1400463a7:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
1400463ab:	48 83 f8 1f          	cmp    $0x1f,%rax
1400463af:	76 07                	jbe    0x1400463b8
1400463b1:	ff 15 e9 91 01 00    	call   *0x191e9(%rip)        # 0x14005f5a0
1400463b7:	cc                   	int3
1400463b8:	e8 d7 38 01 00       	call   0x140059c94
1400463bd:	85 db                	test   %ebx,%ebx
1400463bf:	0f 88 ec 02 00 00    	js     0x1400466b1
1400463c5:	48 8b 4d ff          	mov    -0x1(%rbp),%rcx
1400463c9:	48 8b 01             	mov    (%rcx),%rax
1400463cc:	48 8d 55 f7          	lea    -0x9(%rbp),%rdx
1400463d0:	ff 50 30             	call   *0x30(%rax)
1400463d3:	8b d8                	mov    %eax,%ebx
1400463d5:	85 c0                	test   %eax,%eax
1400463d7:	0f 88 d4 02 00 00    	js     0x1400466b1
1400463dd:	41 8b f4             	mov    %r12d,%esi
1400463e0:	44 39 65 f7          	cmp    %r12d,-0x9(%rbp)
1400463e4:	0f 86 c7 02 00 00    	jbe    0x1400466b1
1400463ea:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
1400463f0:	4c 89 65 df          	mov    %r12,-0x21(%rbp)
1400463f4:	48 8b 4d ff          	mov    -0x1(%rbp),%rcx
1400463f8:	48 8b 01             	mov    (%rcx),%rax
1400463fb:	4c 8d 45 df          	lea    -0x21(%rbp),%r8
1400463ff:	8b d6                	mov    %esi,%edx
140046401:	ff 50 38             	call   *0x38(%rax)
140046404:	8b d8                	mov    %eax,%ebx
140046406:	85 c0                	test   %eax,%eax
140046408:	79 19                	jns    0x140046423
14004640a:	48 8b 4d df          	mov    -0x21(%rbp),%rcx
14004640e:	48 85 c9             	test   %rcx,%rcx
140046411:	74 0b                	je     0x14004641e
140046413:	4c 89 65 df          	mov    %r12,-0x21(%rbp)
140046417:	48 8b 01             	mov    (%rcx),%rax
14004641a:	ff 50 10             	call   *0x10(%rax)
14004641d:	90                   	nop
14004641e:	e9 27 02 00 00       	jmp    0x14004664a
140046423:	4c 89 65 e7          	mov    %r12,-0x19(%rbp)
140046427:	48 8b 4d df          	mov    -0x21(%rbp),%rcx
14004642b:	48 8b 01             	mov    (%rcx),%rax
14004642e:	48 8d 55 e7          	lea    -0x19(%rbp),%rdx
140046432:	ff 90 80 00 00 00    	call   *0x80(%rax)
140046438:	8b d8                	mov    %eax,%ebx
14004643a:	85 c0                	test   %eax,%eax
14004643c:	79 2d                	jns    0x14004646b
14004643e:	48 8b 4d e7          	mov    -0x19(%rbp),%rcx
140046442:	48 85 c9             	test   %rcx,%rcx
140046445:	74 0b                	je     0x140046452
140046447:	4c 89 65 e7          	mov    %r12,-0x19(%rbp)
14004644b:	48 8b 01             	mov    (%rcx),%rax
14004644e:	ff 50 10             	call   *0x10(%rax)
140046451:	90                   	nop
140046452:	48 8b 4d df          	mov    -0x21(%rbp),%rcx
140046456:	48 85 c9             	test   %rcx,%rcx
140046459:	74 0b                	je     0x140046466
14004645b:	4c 89 65 df          	mov    %r12,-0x21(%rbp)
14004645f:	48 8b 01             	mov    (%rcx),%rax