140146ca3:	81 fe 50 02 00 00    	cmp    $0x250,%esi
140146ca9:	0f 87 e5 01 00 00    	ja     0x140146e94
140146caf:	90                   	nop
140146cb0:	48 8b 4d af          	mov    -0x51(%rbp),%rcx
140146cb4:	41 0f b6 c3          	movzbl %r11b,%eax
140146cb8:	41 2a c7             	sub    %r15b,%al
140146cbb:	88 45 88             	mov    %al,-0x78(%rbp)
140146cbe:	41 8b c0             	mov    %r8d,%eax
140146cc1:	0f b7 0c 41          	movzwl (%rcx,%rax,2),%ecx
140146cc5:	8d 41 01             	lea    0x1(%rcx),%eax
140146cc8:	3b c2                	cmp    %edx,%eax
140146cca:	73 0a                	jae    0x140146cd6
140146ccc:	c6 45 87 00          	movb   $0x0,-0x79(%rbp)
140146cd0:	66 89 4d 89          	mov    %cx,-0x77(%rbp)
140146cd4:	eb 28                	jmp    0x140146cfe
140146cd6:	3b ca                	cmp    %edx,%ecx
140146cd8:	72 1a                	jb     0x140146cf4
140146cda:	48 8b 45 9f          	mov    -0x61(%rbp),%rax
140146cde:	2b ca                	sub    %edx,%ecx
140146ce0:	48 03 c9             	add    %rcx,%rcx
140146ce3:	0f b6 04 01          	movzbl (%rcx,%rax,1),%eax
140146ce7:	88 45 87             	mov    %al,-0x79(%rbp)
140146cea:	48 8b 45 a7          	mov    -0x59(%rbp),%rax
140146cee:	0f b7 04 01          	movzwl (%rcx,%rax,1),%eax
140146cf2:	eb 06                	jmp    0x140146cfa
140146cf4:	c6 45 87 60          	movb   $0x60,-0x79(%rbp)
140146cf8:	33 c0                	xor    %eax,%eax
140146cfa:	66 89 45 89          	mov    %ax,-0x77(%rbp)
140146cfe:	8b 45 87             	mov    -0x79(%rbp),%eax
140146d01:	41 8b cb             	mov    %r11d,%ecx
140146d04:	41 2b cf             	sub    %r15d,%ecx
140146d07:	41 ba 01 00 00 00    	mov    $0x1,%r10d
140146d0d:	41 d3 e2             	shl    %cl,%r10d
140146d10:	ba 01 00 00 00       	mov    $0x1,%edx
140146d15:	8b cb                	mov    %ebx,%ecx
140146d17:	44 8b c7             	mov    %edi,%r8d
140146d1a:	d3 e2                	shl    %cl,%edx
140146d1c:	41 8b cf             	mov    %r15d,%ecx
140146d1f:	41 d3 e8             	shr    %cl,%r8d
140146d22:	44 03 c2             	add    %edx,%r8d
140146d25:	44 8b ea             	mov    %edx,%r13d
140146d28:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140146d2f:	00
140146d30:	45 2b c2             	sub    %r10d,%r8d
140146d33:	43 89 04 86          	mov    %eax,(%r14,%r8,4)
140146d37:	41 2b d2             	sub    %r10d,%edx
140146d3a:	75 f4                	jne    0x140146d30
140146d3c:	41 8d 4b ff          	lea    -0x1(%r11),%ecx
140146d40:	ba 01 00 00 00       	mov    $0x1,%edx
140146d45:	d3 e2                	shl    %cl,%edx
140146d47:	85 d7                	test   %edx,%edi
140146d49:	74 0b                	je     0x140146d56
140146d4b:	0f 1f 04 00          	nopl   (%rax,%rax,1)
140146d4f:	90                   	nop
140146d50:	d1 ea                	shr    $1,%edx
140146d52:	85 d7                	test   %edx,%edi
140146d54:	75 fa                	jne    0x140146d50
140146d56:	85 d2                	test   %edx,%edx
140146d58:	74 0b                	je     0x140146d65
140146d5a:	8d 42 ff             	lea    -0x1(%rdx),%eax
140146d5d:	23 f8                	and    %eax,%edi
140146d5f:	03 fa                	add    %edx,%edi
140146d61:	33 c9                	xor    %ecx,%ecx
140146d63:	eb 04                	jmp    0x140146d69
140146d65:	33 c9                	xor    %ecx,%ecx
140146d67:	8b f9                	mov    %ecx,%edi
140146d69:	44 8b 45 8f          	mov    -0x71(%rbp),%r8d
140146d6d:	ba ff ff 00 00       	mov    $0xffff,%edx
140146d72:	41 ff c0             	inc    %r8d
140146d75:	41 8b c3             	mov    %r11d,%eax
140146d78:	44 89 45 8f          	mov    %r8d,-0x71(%rbp)
140146d7c:	66 01 54 45 cf       	add    %dx,-0x31(%rbp,%rax,2)
140146d81:	75 1b                	jne    0x140146d9e
140146d83:	45 3b d9             	cmp    %r9d,%r11d
140146d86:	0f 84 d8 00 00 00    	je     0x140146e64
140146d8c:	48 8b 4d af          	mov    -0x51(%rbp),%rcx
140146d90:	48 8b 45 bf          	mov    -0x41(%rbp),%rax
140146d94:	42 0f b7 0c 41       	movzwl (%rcx,%r8,2),%ecx
140146d99:	44 0f b7 1c 48       	movzwl (%rax,%rcx,2),%r11d
140146d9e:	8b 45 93             	mov    -0x6d(%rbp),%eax
140146da1:	8b 55 8b             	mov    -0x75(%rbp),%edx
140146da4:	44 3b d8             	cmp    %eax,%r11d
140146da7:	0f 86 03 ff ff ff    	jbe    0x140146cb0
140146dad:	44 8b 55 9b          	mov    -0x65(%rbp),%r10d
140146db1:	44 23 d7             	and    %edi,%r10d
140146db4:	45 3b d4             	cmp    %r12d,%r10d
140146db7:	0f 84 f3 fe ff ff    	je     0x140146cb0
140146dbd:	45 85 ff             	test   %r15d,%r15d
140146dc0:	4f 8d 34 ae          	lea    (%r14,%r13,4),%r14
140146dc4:	41 8b db             	mov    %r11d,%ebx
140146dc7:	44 0f 44 f8          	cmove  %eax,%r15d
140146dcb:	b8 01 00 00 00       	mov    $0x1,%eax
140146dd0:	41 2b df             	sub    %r15d,%ebx
140146dd3:	8b cb                	mov    %ebx,%ecx
140146dd5:	d3 e0                	shl    %cl,%eax
140146dd7:	45 3b d9             	cmp    %r9d,%r11d
140146dda:	73 22                	jae    0x140146dfe
140146ddc:	45 8b c3             	mov    %r11d,%r8d
140146ddf:	90                   	nop
140146de0:	41 8b c8             	mov    %r8d,%ecx
140146de3:	0f b7 54 4d cf       	movzwl -0x31(%rbp,%rcx,2),%edx
140146de8:	2b c2                	sub    %edx,%eax
140146dea:	85 c0                	test   %eax,%eax
140146dec:	7e 0c                	jle    0x140146dfa
140146dee:	ff c3                	inc    %ebx
140146df0:	41 ff c0             	inc    %r8d
140146df3:	03 c0                	add    %eax,%eax
140146df5:	45 3b c1             	cmp    %r9d,%r8d
140146df8:	72 e6                	jb     0x140146de0
140146dfa:	44 8b 45 8f          	mov    -0x71(%rbp),%r8d
140146dfe:	44 8b 6d 97          	mov    -0x69(%rbp),%r13d
140146e02:	8b cb                	mov    %ebx,%ecx
140146e04:	b8 01 00 00 00       	mov    $0x1,%eax
140146e09:	d3 e0                	shl    %cl,%eax
140146e0b:	03 f0                	add    %eax,%esi
140146e0d:	41 83 fd 01          	cmp    $0x1,%r13d
140146e11:	75 08                	jne    0x140146e1b
140146e13:	81 fe 34 05 00 00    	cmp    $0x534,%esi
140146e19:	eb 0c                	jmp    0x140146e27
140146e1b:	41 83 fd 02          	cmp    $0x2,%r13d
140146e1f:	75 08                	jne    0x140146e29
140146e21:	81 fe 50 02 00 00    	cmp    $0x250,%esi
140146e27:	77 6b                	ja     0x140146e94
140146e29:	48 8b 4d b7          	mov    -0x49(%rbp),%rcx
140146e2d:	4a 8d 14 95 00 00 00 	lea    0x0(,%r10,4),%rdx
140146e34:	00
140146e35:	45 8b e2             	mov    %r10d,%r12d
140146e38:	44 8b 55 93          	mov    -0x6d(%rbp),%r10d
140146e3c:	48 8b 01             	mov    (%rcx),%rax
140146e3f:	88 1c 02             	mov    %bl,(%rdx,%rax,1)
140146e42:	48 8b 01             	mov    (%rcx),%rax
140146e45:	44 88 54 02 01       	mov    %r10b,0x1(%rdx,%rax,1)
140146e4a:	49 8b c6             	mov    %r14,%rax
140146e4d:	48 8b 09             	mov    (%rcx),%rcx
140146e50:	48 2b c1             	sub    %rcx,%rax
140146e53:	48 c1 f8 02          	sar    $0x2,%rax
140146e57:	66 89 44 0a 02       	mov    %ax,0x2(%rdx,%rcx,1)
140146e5c:	8b 55 8b             	mov    -0x75(%rbp),%edx
140146e5f:	e9 4c fe ff ff       	jmp    0x140146cb0
140146e64:	85 ff                	test   %edi,%edi
140146e66:	74 11                	je     0x140146e79
140146e68:	66 89 4d 89          	mov    %cx,-0x77(%rbp)
140146e6c:	8b cf                	mov    %edi,%ecx
140146e6e:	c6 45 87 40          	movb   $0x40,-0x79(%rbp)
140146e72:	8b 45 87             	mov    -0x79(%rbp),%eax
140146e75:	41 89 04 8e          	mov    %eax,(%r14,%rcx,4)
140146e79:	48 8b 4d b7          	mov    -0x49(%rbp),%rcx
140146e7d:	8b c6                	mov    %esi,%eax
140146e7f:	48 c1 e0 02          	shl    $0x2,%rax
140146e83:	48 01 01             	add    %rax,(%rcx)
140146e86:	48 8b 4d c7          	mov    -0x39(%rbp),%rcx
140146e8a:	8b 45 93             	mov    -0x6d(%rbp),%eax
140146e8d:	89 01                	mov    %eax,(%rcx)
140146e8f:	e9 42 fc ff ff       	jmp    0x140146ad6
140146e94:	b8 01 00 00 00       	mov    $0x1,%eax
140146e99:	e9 3a fc ff ff       	jmp    0x140146ad8
140146e9e:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
140146ea3:	e9 30 fc ff ff       	jmp    0x140146ad8
140146ea8:	cc                   	int3
140146ea9:	e8 ba df 0b 00       	call   0x140204e68
140146eae:	cc                   	int3
140146eaf:	90                   	nop
140146eb0:	44 8b ca             	mov    %edx,%r9d
140146eb3:	45 85 c0             	test   %r8d,%r8d
140146eb6:	74 12                	je     0x140146eca
140146eb8:	33 d2                	xor    %edx,%edx
140146eba:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
140146ebf:	41 f7 f0             	div    %r8d
140146ec2:	44 3b c8             	cmp    %eax,%r9d
140146ec5:	72 03                	jb     0x140146eca
140146ec7:	33 c0                	xor    %eax,%eax
140146ec9:	c3                   	ret
140146eca:	45 0f af c8          	imul   %r8d,%r9d
140146ece:	41 8b c9             	mov    %r9d,%ecx
140146ed1:	48 ff 25 78 bc 0c 00 	rex.W jmp *0xcbc78(%rip)        # 0x140212b50
140146ed8:	90                   	nop
140146ed9:	90                   	nop
140146eda:	90                   	nop
140146edb:	90                   	nop
140146edc:	90                   	nop
140146edd:	90                   	nop
140146ede:	90                   	nop
140146edf:	90                   	nop
140146ee0:	48 83 ec 58          	sub    $0x58,%rsp
140146ee4:	48 89 5c 24 60       	mov    %rbx,0x60(%rsp)
140146ee9:	44 8b d9             	mov    %ecx,%r11d
140146eec:	49 8b d8             	mov    %r8,%rbx
140146eef:	41 c1 eb 10          	shr    $0x10,%r11d
140146ef3:	48 c1 eb 05          	shr    $0x5,%rbx
140146ef7:	4c 8b ca             	mov    %rdx,%r9
140146efa:	48 8b c3             	mov    %rbx,%rax
140146efd:	44 0f b7 d1          	movzwl %cx,%r10d
140146f01:	48 c1 e0 05          	shl    $0x5,%rax
140146f05:	4c 2b c0             	sub    %rax,%r8
140146f08:	48 85 db             	test   %rbx,%rbx
140146f0b:	0f 84 57 01 00 00    	je     0x140147068
140146f11:	48 89 7c 24 50       	mov    %rdi,0x50(%rsp)
140146f16:	33 ff                	xor    %edi,%edi
140146f18:	0f 29 74 24 40       	movaps %xmm6,0x40(%rsp)
140146f1d:	0f 29 7c 24 30       	movaps %xmm7,0x30(%rsp)
140146f22:	0f 57 ff             	xorps  %xmm7,%xmm7
140146f25:	44 0f 29 44 24 20    	movaps %xmm8,0x20(%rsp)
140146f2b:	66 44 0f 6f 05 0c 93 	movdqa 0x17930c(%rip),%xmm8        # 0x1402c0240
140146f32:	17 00
140146f34:	44 0f 29 4c 24 10    	movaps %xmm9,0x10(%rsp)
140146f3a:	66 44 0f 6f 0d 1d 93 	movdqa 0x17931d(%rip),%xmm9        # 0x1402c0260
140146f41:	17 00
140146f43:	44 0f 29 14 24       	movaps %xmm10,(%rsp)
140146f48:	66 44 0f 6f 15 ff 92 	movdqa 0x1792ff(%rip),%xmm10        # 0x1402c0250
140146f4f:	17 00
140146f51:	b9 ad 00 00 00       	mov    $0xad,%ecx
140146f56:	66 0f 6e c7          	movd   %edi,%xmm0
140146f5a:	48 3b d9             	cmp    %rcx,%rbx
140146f5d:	66 41 0f 6e e3       	movd   %r11d,%xmm4
140146f62:	0f 57 c9             	xorps  %xmm1,%xmm1
140146f65:	0f 57 f6             	xorps  %xmm6,%xmm6
140146f68:	0f 42 cb             	cmovb  %ebx,%ecx
140146f6b:	8b c1                	mov    %ecx,%eax
140146f6d:	48 2b d8             	sub    %rax,%rbx
140146f70:	8b c1                	mov    %ecx,%eax
140146f72:	41 0f af c2          	imul   %r10d,%eax
140146f76:	66 0f 6e e8          	movd   %eax,%xmm5
140146f7a:	66 0f 62 e8          	punpckldq %xmm0,%xmm5
140146f7e:	66 0f 6e c7          	movd   %edi,%xmm0
140146f82:	66 0f 62 e0          	punpckldq %xmm0,%xmm4
140146f86:	66 0f 62 e1          	punpckldq %xmm1,%xmm4
140146f8a:	66 0f 62 e9          	punpckldq %xmm1,%xmm5
140146f8e:	66 90                	xchg   %ax,%ax
140146f90:	f3 41 0f 6f 11       	movdqu (%r9),%xmm2
140146f95:	f3 41 0f 6f 59 10    	movdqu 0x10(%r9),%xmm3
140146f9b:	49 83 c1 20          	add    $0x20,%r9
140146f9f:	66 0f 6f ca          	movdqa %xmm2,%xmm1
140146fa3:	66 0f fe ee          	paddd  %xmm6,%xmm5
140146fa7:	66 41 0f 38 04 d1    	pmaddubsw %xmm9,%xmm2
140146fad:	66 0f 6f c3          	movdqa %xmm3,%xmm0
140146fb1:	66 41 0f 38 04 da    	pmaddubsw %xmm10,%xmm3
140146fb7:	66 0f f6 cf          	psadbw %xmm7,%xmm1
140146fbb:	66 0f f6 c7          	psadbw %xmm7,%xmm0
140146fbf:	66 41 0f f5 d0       	pmaddwd %xmm8,%xmm2
140146fc4:	66 41 0f f5 d8       	pmaddwd %xmm8,%xmm3
140146fc9:	66 0f fe f1          	paddd  %xmm1,%xmm6
140146fcd:	66 0f fe f0          	paddd  %xmm0,%xmm6
140146fd1:	66 0f fe e2          	paddd  %xmm2,%xmm4
140146fd5:	66 0f fe e3          	paddd  %xmm3,%xmm4
140146fd9:	83 c1 ff             	add    $0xffffffff,%ecx
140146fdc:	75 b2                	jne    0x140146f90
140146fde:	66 0f 70 ce b1       	pshufd $0xb1,%xmm6,%xmm1
140146fe3:	66 0f fe ce          	paddd  %xmm6,%xmm1
140146fe7:	66 0f 72 f5 05       	pslld  $0x5,%xmm5
140146fec:	66 0f 70 c1 4e       	pshufd $0x4e,%xmm1,%xmm0
140146ff1:	66 0f fe ec          	paddd  %xmm4,%xmm5
140146ff5:	66 0f fe c1          	paddd  %xmm1,%xmm0
140146ff9:	66 0f 70 cd b1       	pshufd $0xb1,%xmm5,%xmm1
140146ffe:	66 0f 7e c0          	movd   %xmm0,%eax
140147002:	66 0f fe cd          	paddd  %xmm5,%xmm1
140147006:	66 0f 70 c1 4e       	pshufd $0x4e,%xmm1,%xmm0
14014700b:	66 0f fe c1          	paddd  %xmm1,%xmm0
14014700f:	44 03 d0             	add    %eax,%r10d
140147012:	66 41 0f 7e c3       	movd   %xmm0,%r11d
140147017:	b8 71 80 07 80       	mov    $0x80078071,%eax
14014701c:	41 f7 e2             	mul    %r10d
14014701f:	c1 ea 0f             	shr    $0xf,%edx
140147022:	69 c2 0f 00 ff ff    	imul   $0xffff000f,%edx,%eax
140147028:	44 03 d0             	add    %eax,%r10d
14014702b:	b8 71 80 07 80       	mov    $0x80078071,%eax
140147030:	41 f7 e3             	mul    %r11d
140147033:	c1 ea 0f             	shr    $0xf,%edx
140147036:	69 c2 0f 00 ff ff    	imul   $0xffff000f,%edx,%eax
14014703c:	44 03 d8             	add    %eax,%r11d
14014703f:	48 85 db             	test   %rbx,%rbx
140147042:	0f 85 09 ff ff ff    	jne    0x140146f51
140147048:	44 0f 28 14 24       	movaps (%rsp),%xmm10
14014704d:	44 0f 28 4c 24 10    	movaps 0x10(%rsp),%xmm9
140147053:	44 0f 28 44 24 20    	movaps 0x20(%rsp),%xmm8
140147059:	0f 28 7c 24 30       	movaps 0x30(%rsp),%xmm7
14014705e:	0f 28 74 24 40       	movaps 0x40(%rsp),%xmm6
140147063:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
140147068:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
14014706d:	4d 85 c0             	test   %r8,%r8
140147070:	0f 84 07 01 00 00    	je     0x14014717d
140147076:	49 83 f8 10          	cmp    $0x10,%r8
14014707a:	0f 82 ba 00 00 00    	jb     0x14014713a
140147080:	0f ae e8             	lfence
140147083:	41 0f b6 01          	movzbl (%r9),%eax
140147087:	44 03 d0             	add    %eax,%r10d
14014708a:	41 0f b6 41 01       	movzbl 0x1(%r9),%eax
14014708f:	45 03 da             	add    %r10d,%r11d
140147092:	44 03 d0             	add    %eax,%r10d
140147095:	41 0f b6 41 02       	movzbl 0x2(%r9),%eax
14014709a:	45 03 da             	add    %r10d,%r11d
14014709d:	44 03 d0             	add    %eax,%r10d
1401470a0:	41 0f b6 41 03       	movzbl 0x3(%r9),%eax
1401470a5:	45 03 da             	add    %r10d,%r11d
1401470a8:	44 03 d0             	add    %eax,%r10d
1401470ab:	41 0f b6 41 04       	movzbl 0x4(%r9),%eax
1401470b0:	45 03 da             	add    %r10d,%r11d
1401470b3:	44 03 d0             	add    %eax,%r10d
1401470b6:	41 0f b6 41 05       	movzbl 0x5(%r9),%eax
1401470bb:	45 03 da             	add    %r10d,%r11d
1401470be:	44 03 d0             	add    %eax,%r10d
1401470c1:	41 0f b6 41 06       	movzbl 0x6(%r9),%eax
1401470c6:	45 03 da             	add    %r10d,%r11d
1401470c9:	44 03 d0             	add    %eax,%r10d
1401470cc:	41 0f b6 41 07       	movzbl 0x7(%r9),%eax
1401470d1:	45 03 da             	add    %r10d,%r11d
1401470d4:	44 03 d0             	add    %eax,%r10d
1401470d7:	41 0f b6 41 08       	movzbl 0x8(%r9),%eax
1401470dc:	45 03 da             	add    %r10d,%r11d
1401470df:	44 03 d0             	add    %eax,%r10d
1401470e2:	41 0f b6 41 09       	movzbl 0x9(%r9),%eax
1401470e7:	45 03 da             	add    %r10d,%r11d
1401470ea:	44 03 d0             	add    %eax,%r10d
1401470ed:	41 0f b6 41 0a       	movzbl 0xa(%r9),%eax
1401470f2:	45 03 da             	add    %r10d,%r11d
1401470f5:	44 03 d0             	add    %eax,%r10d
1401470f8:	41 0f b6 41 0b       	movzbl 0xb(%r9),%eax
1401470fd:	45 03 da             	add    %r10d,%r11d
140147100:	44 03 d0             	add    %eax,%r10d
140147103:	41 0f b6 41 0c       	movzbl 0xc(%r9),%eax
140147108:	45 03 da             	add    %r10d,%r11d
14014710b:	44 03 d0             	add    %eax,%r10d
14014710e:	41 0f b6 41 0d       	movzbl 0xd(%r9),%eax
140147113:	45 03 da             	add    %r10d,%r11d
140147116:	44 03 d0             	add    %eax,%r10d
140147119:	41 0f b6 41 0e       	movzbl 0xe(%r9),%eax
14014711e:	45 03 da             	add    %r10d,%r11d
140147121:	44 03 d0             	add    %eax,%r10d
140147124:	41 0f b6 41 0f       	movzbl 0xf(%r9),%eax
140147129:	45 03 da             	add    %r10d,%r11d
14014712c:	49 83 c1 10          	add    $0x10,%r9
140147130:	44 03 d0             	add    %eax,%r10d
140147133:	45 03 da             	add    %r10d,%r11d
140147136:	49 83 e8 10          	sub    $0x10,%r8
14014713a:	4d 85 c0             	test   %r8,%r8
14014713d:	74 15                	je     0x140147154
14014713f:	90                   	nop
140147140:	41 0f b6 09          	movzbl (%r9),%ecx
140147144:	4d 8d 49 01          	lea    0x1(%r9),%r9
140147148:	44 03 d1             	add    %ecx,%r10d
14014714b:	45 03 da             	add    %r10d,%r11d
14014714e:	49 83 e8 01          	sub    $0x1,%r8
140147152:	75 ec                	jne    0x140147140
140147154:	b8 71 80 07 80       	mov    $0x80078071,%eax
140147159:	41 f7 e3             	mul    %r11d
14014715c:	c1 ea 0f             	shr    $0xf,%edx
14014715f:	69 c2 0f 00 ff ff    	imul   $0xffff000f,%edx,%eax
140147165:	44 03 d8             	add    %eax,%r11d
140147168:	41 8d 82 0f 00 ff ff 	lea    -0xfff1(%r10),%eax
14014716f:	41 81 fa f1 ff 00 00 	cmp    $0xfff1,%r10d
140147176:	41 0f 42 c2          	cmovb  %r10d,%eax