140a55e50:	0f 11 45 c7          	movups %xmm0,-0x39(%rbp)
140a55e54:	48 89 45 d7          	mov    %rax,-0x29(%rbp)
140a55e58:	48 89 45 b7          	mov    %rax,-0x49(%rbp)
140a55e5c:	0f 28 45 37          	movaps 0x37(%rbp),%xmm0
140a55e60:	66 0f 7f 45 a7       	movdqa %xmm0,-0x59(%rbp)
140a55e65:	48 c7 45 f7 ff ff ff 	movq   $0xffffffffffffffff,-0x9(%rbp)
140a55e6c:	ff
140a55e6d:	48 8d 45 f7          	lea    -0x9(%rbp),%rax
140a55e71:	48 89 45 77          	mov    %rax,0x77(%rbp)
140a55e75:	48 8d 55 77          	lea    0x77(%rbp),%rdx
140a55e79:	48 8d 4d b7          	lea    -0x49(%rbp),%rcx
140a55e7d:	e8 5e c7 f7 ff       	call   0x1409d25e0
140a55e82:	90                   	nop
140a55e83:	4c 8d 4d f7          	lea    -0x9(%rbp),%r9
140a55e87:	4c 8d 45 a7          	lea    -0x59(%rbp),%r8
140a55e8b:	48 8d 55 e7          	lea    -0x19(%rbp),%rdx
140a55e8f:	48 8b ce             	mov    %rsi,%rcx
140a55e92:	e8 89 ed f7 ff       	call   0x1409d4c20
140a55e97:	90                   	nop
140a55e98:	48 8d 4d f7          	lea    -0x9(%rbp),%rcx
140a55e9c:	e8 df 10 ff ff       	call   0x140a46f80
140a55ea1:	48 8b 5d e7          	mov    -0x19(%rbp),%rbx
140a55ea5:	48 8d 4d b7          	lea    -0x49(%rbp),%rcx
140a55ea9:	e8 d2 10 ff ff       	call   0x140a46f80
140a55eae:	48 8d 4b 40          	lea    0x40(%rbx),%rcx
140a55eb2:	e8 29 cc ff ff       	call   0x140a52ae0
140a55eb7:	0f 29 75 a7          	movaps %xmm6,-0x59(%rbp)
140a55ebb:	48 8d 55 a7          	lea    -0x59(%rbp),%rdx
140a55ebf:	48 8b c8             	mov    %rax,%rcx
140a55ec2:	e8 a9 fe ff ff       	call   0x140a55d70
140a55ec7:	4c 8d 9c 24 d0 00 00 	lea    0xd0(%rsp),%r11
140a55ece:	00
140a55ecf:	49 8b 5b 10          	mov    0x10(%r11),%rbx
140a55ed3:	49 8b 73 18          	mov    0x18(%r11),%rsi
140a55ed7:	49 8b 7b 28          	mov    0x28(%r11),%rdi
140a55edb:	41 0f 28 73 f0       	movaps -0x10(%r11),%xmm6
140a55ee0:	49 8b e3             	mov    %r11,%rsp
140a55ee3:	5d                   	pop    %rbp
140a55ee4:	c3                   	ret
140a55ee5:	cc                   	int3
140a55ee6:	cc                   	int3
140a55ee7:	cc                   	int3
140a55ee8:	cc                   	int3
140a55ee9:	cc                   	int3
140a55eea:	cc                   	int3
140a55eeb:	cc                   	int3
140a55eec:	cc                   	int3
140a55eed:	cc                   	int3
140a55eee:	cc                   	int3
140a55eef:	cc                   	int3
140a55ef0:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140a55ef5:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140a55efa:	53                   	push   %rbx
140a55efb:	56                   	push   %rsi
140a55efc:	57                   	push   %rdi
140a55efd:	41 54                	push   %r12
140a55eff:	41 55                	push   %r13
140a55f01:	41 56                	push   %r14
140a55f03:	41 57                	push   %r15
140a55f05:	48 81 ec d0 00 00 00 	sub    $0xd0,%rsp
140a55f0c:	48 8b d9             	mov    %rcx,%rbx
140a55f0f:	45 33 e4             	xor    %r12d,%r12d
140a55f12:	44 89 a4 24 20 01 00 	mov    %r12d,0x120(%rsp)
140a55f19:	00
140a55f1a:	48 89 4c 24 70       	mov    %rcx,0x70(%rsp)
140a55f1f:	48 8b 01             	mov    (%rcx),%rax
140a55f22:	4c 63 40 04          	movslq 0x4(%rax),%r8
140a55f26:	49 8b 4c 08 48       	mov    0x48(%r8,%rcx,1),%rcx
140a55f2b:	48 85 c9             	test   %rcx,%rcx
140a55f2e:	74 0e                	je     0x140a55f3e
140a55f30:	48 8b 01             	mov    (%rcx),%rax
140a55f33:	48 8b 40 08          	mov    0x8(%rax),%rax
140a55f37:	ff 15 e3 da 52 00    	call   *0x52dae3(%rip)        # 0x140f83a20
140a55f3d:	90                   	nop
140a55f3e:	33 d2                	xor    %edx,%edx
140a55f40:	48 8b cb             	mov    %rbx,%rcx
140a55f43:	e8 d8 8a 92 ff       	call   0x14037ea20
140a55f48:	88 44 24 78          	mov    %al,0x78(%rsp)
140a55f4c:	84 c0                	test   %al,%al
140a55f4e:	0f 84 e9 01 00 00    	je     0x140a5613d
140a55f54:	48 8b 03             	mov    (%rbx),%rax
140a55f57:	48 63 40 04          	movslq 0x4(%rax),%rax
140a55f5b:	48 8b 44 18 40       	mov    0x40(%rax,%rbx,1),%rax
140a55f60:	48 8b 70 08          	mov    0x8(%rax),%rsi
140a55f64:	48 89 b4 24 88 00 00 	mov    %rsi,0x88(%rsp)
140a55f6b:	00
140a55f6c:	48 8b 06             	mov    (%rsi),%rax
140a55f6f:	48 8b ce             	mov    %rsi,%rcx
140a55f72:	48 8b 40 08          	mov    0x8(%rax),%rax
140a55f76:	ff 15 a4 da 52 00    	call   *0x52daa4(%rip)        # 0x140f83a20
140a55f7c:	90                   	nop
140a55f7d:	33 d2                	xor    %edx,%edx
140a55f7f:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
140a55f84:	e8 f7 54 3a 00       	call   0x140dfb480
140a55f89:	90                   	nop
140a55f8a:	4c 8b 2d 4f a4 9d 00 	mov    0x9da44f(%rip),%r13        # 0x1414303e0
140a55f91:	4c 89 6c 24 40       	mov    %r13,0x40(%rsp)
140a55f96:	4c 8b 35 13 09 9c 00 	mov    0x9c0913(%rip),%r14        # 0x1414168b0
140a55f9d:	4d 85 f6             	test   %r14,%r14
140a55fa0:	75 43                	jne    0x140a55fe5
140a55fa2:	33 d2                	xor    %edx,%edx
140a55fa4:	48 8d 8c 24 28 01 00 	lea    0x128(%rsp),%rcx
140a55fab:	00
140a55fac:	e8 cf 54 3a 00       	call   0x140dfb480
140a55fb1:	4c 39 35 f8 08 9c 00 	cmp    %r14,0x9c08f8(%rip)        # 0x1414168b0
140a55fb8:	75 17                	jne    0x140a55fd1
140a55fba:	8b 05 f0 82 a4 00    	mov    0xa482f0(%rip),%eax        # 0x14149e2b0
140a55fc0:	ff c0                	inc    %eax
140a55fc2:	89 05 e8 82 a4 00    	mov    %eax,0xa482e8(%rip)        # 0x14149e2b0
140a55fc8:	48 98                	cltq
140a55fca:	48 89 05 df 08 9c 00 	mov    %rax,0x9c08df(%rip)        # 0x1414168b0
140a55fd1:	48 8d 8c 24 28 01 00 	lea    0x128(%rsp),%rcx
140a55fd8:	00
140a55fd9:	e8 1a 55 3a 00       	call   0x140dfb4f8
140a55fde:	4c 8b 35 cb 08 9c 00 	mov    0x9c08cb(%rip),%r14        # 0x1414168b0
140a55fe5:	4e 8d 3c f5 00 00 00 	lea    0x0(,%r14,8),%r15
140a55fec:	00
140a55fed:	4c 3b 76 18          	cmp    0x18(%rsi),%r14
140a55ff1:	73 0f                	jae    0x140a56002
140a55ff3:	48 8b 46 10          	mov    0x10(%rsi),%rax
140a55ff7:	49 8b 3c 07          	mov    (%r15,%rax,1),%rdi
140a55ffb:	48 85 ff             	test   %rdi,%rdi
140a55ffe:	75 75                	jne    0x140a56075
140a56000:	eb 03                	jmp    0x140a56005
140a56002:	49 8b fc             	mov    %r12,%rdi
140a56005:	80 7e 24 00          	cmpb   $0x0,0x24(%rsi)
140a56009:	74 13                	je     0x140a5601e
140a5600b:	e8 54 62 3a 00       	call   0x140dfc264
140a56010:	4c 3b 70 18          	cmp    0x18(%rax),%r14
140a56014:	73 0d                	jae    0x140a56023
140a56016:	48 8b 40 10          	mov    0x10(%rax),%rax
140a5601a:	49 8b 3c 07          	mov    (%r15,%rax,1),%rdi
140a5601e:	48 85 ff             	test   %rdi,%rdi
140a56021:	75 52                	jne    0x140a56075
140a56023:	4d 85 ed             	test   %r13,%r13
140a56026:	74 05                	je     0x140a5602d
140a56028:	49 8b fd             	mov    %r13,%rdi
140a5602b:	eb 48                	jmp    0x140a56075
140a5602d:	48 8d 94 24 80 00 00 	lea    0x80(%rsp),%rdx
140a56034:	00
140a56035:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140a5603a:	e8 51 f3 cc ff       	call   0x140725390
140a5603f:	48 83 f8 ff          	cmp    $0xffffffffffffffff,%rax
140a56043:	0f 84 58 01 00 00    	je     0x140a561a1
140a56049:	48 8b 7c 24 40       	mov    0x40(%rsp),%rdi
140a5604e:	48 89 bc 24 28 01 00 	mov    %rdi,0x128(%rsp)
140a56055:	00
140a56056:	48 8b cf             	mov    %rdi,%rcx
140a56059:	e8 ce 61 3a 00       	call   0x140dfc22c
140a5605e:	48 8b 07             	mov    (%rdi),%rax
140a56061:	48 8b cf             	mov    %rdi,%rcx
140a56064:	48 8b 40 08          	mov    0x8(%rax),%rax
140a56068:	ff 15 b2 d9 52 00    	call   *0x52d9b2(%rip)        # 0x140f83a20
140a5606e:	48 89 3d 6b a3 9d 00 	mov    %rdi,0x9da36b(%rip)        # 0x1414303e0
140a56075:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
140a5607a:	e8 79 54 3a 00       	call   0x140dfb4f8
140a5607f:	48 8b 03             	mov    (%rbx),%rax
140a56082:	48 63 50 04          	movslq 0x4(%rax),%rdx
140a56086:	48 03 d3             	add    %rbx,%rdx
140a56089:	4c 89 64 24 40       	mov    %r12,0x40(%rsp)
140a5608e:	66 c7 44 24 48 01 00 	movw   $0x1,0x48(%rsp)
140a56095:	48 8b 42 48          	mov    0x48(%rdx),%rax
140a56099:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
140a5609e:	48 85 c0             	test   %rax,%rax
140a560a1:	0f 94 44 24 68       	sete   0x68(%rsp)
140a560a6:	c6 44 24 69 00       	movb   $0x0,0x69(%rsp)
140a560ab:	48 8b 07             	mov    (%rdi),%rax
140a560ae:	0f 28 44 24 40       	movaps 0x40(%rsp),%xmm0
140a560b3:	66 0f 7f 44 24 40    	movdqa %xmm0,0x40(%rsp)
140a560b9:	0f 28 4c 24 60       	movaps 0x60(%rsp),%xmm1
140a560be:	66 0f 7f 4c 24 60    	movdqa %xmm1,0x60(%rsp)
140a560c4:	48 8b 8c 24 18 01 00 	mov    0x118(%rsp),%rcx
140a560cb:	00
140a560cc:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
140a560d1:	48 8d 8c 24 20 01 00 	lea    0x120(%rsp),%rcx
140a560d8:	00
140a560d9:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
140a560de:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
140a560e3:	4c 8d 4c 24 40       	lea    0x40(%rsp),%r9
140a560e8:	4c 8d 44 24 60       	lea    0x60(%rsp),%r8
140a560ed:	48 8d 94 24 90 00 00 	lea    0x90(%rsp),%rdx
140a560f4:	00
140a560f5:	48 8b cf             	mov    %rdi,%rcx
140a560f8:	48 8b 40 20          	mov    0x20(%rax),%rax
140a560fc:	ff 15 1e d9 52 00    	call   *0x52d91e(%rip)        # 0x140f83a20
140a56102:	90                   	nop
140a56103:	48 8b 06             	mov    (%rsi),%rax
140a56106:	48 8b ce             	mov    %rsi,%rcx
140a56109:	48 8b 40 10          	mov    0x10(%rax),%rax
140a5610d:	ff 15 0d d9 52 00    	call   *0x52d90d(%rip)        # 0x140f83a20
140a56113:	4c 8b c0             	mov    %rax,%r8
140a56116:	48 85 c0             	test   %rax,%rax
140a56119:	74 15                	je     0x140a56130
140a5611b:	48 8b 08             	mov    (%rax),%rcx
140a5611e:	48 8b 01             	mov    (%rcx),%rax
140a56121:	ba 01 00 00 00       	mov    $0x1,%edx
140a56126:	49 8b c8             	mov    %r8,%rcx
140a56129:	ff 15 f1 d8 52 00    	call   *0x52d8f1(%rip)        # 0x140f83a20
140a5612f:	90                   	nop
140a56130:	eb 0b                	jmp    0x140a5613d
140a56132:	45 33 e4             	xor    %r12d,%r12d
140a56135:	48 8b 9c 24 10 01 00 	mov    0x110(%rsp),%rbx
140a5613c:	00
140a5613d:	48 8b 03             	mov    (%rbx),%rax
140a56140:	48 63 48 04          	movslq 0x4(%rax),%rcx
140a56144:	48 03 cb             	add    %rbx,%rcx
140a56147:	8b 84 24 20 01 00 00 	mov    0x120(%rsp),%eax
140a5614e:	0b 41 10             	or     0x10(%rcx),%eax
140a56151:	ba 04 00 00 00       	mov    $0x4,%edx
140a56156:	48 83 79 48 00       	cmpq   $0x0,0x48(%rcx)
140a5615b:	41 0f 45 d4          	cmovne %r12d,%edx
140a5615f:	0b d0                	or     %eax,%edx
140a56161:	83 e2 17             	and    $0x17,%edx
140a56164:	89 51 10             	mov    %edx,0x10(%rcx)
140a56167:	23 51 14             	and    0x14(%rcx),%edx
140a5616a:	75 3b                	jne    0x140a561a7
140a5616c:	48 8b 03             	mov    (%rbx),%rax
140a5616f:	48 63 48 04          	movslq 0x4(%rax),%rcx
140a56173:	48 8b 4c 19 48       	mov    0x48(%rcx,%rbx,1),%rcx
140a56178:	48 85 c9             	test   %rcx,%rcx
140a5617b:	74 0e                	je     0x140a5618b
140a5617d:	48 8b 01             	mov    (%rcx),%rax
140a56180:	48 8b 40 10          	mov    0x10(%rax),%rax
140a56184:	ff 15 96 d8 52 00    	call   *0x52d896(%rip)        # 0x140f83a20
140a5618a:	90                   	nop
140a5618b:	48 8b c3             	mov    %rbx,%rax
140a5618e:	48 81 c4 d0 00 00 00 	add    $0xd0,%rsp
140a56195:	41 5f                	pop    %r15
140a56197:	41 5e                	pop    %r14
140a56199:	41 5d                	pop    %r13
140a5619b:	41 5c                	pop    %r12
140a5619d:	5f                   	pop    %rdi
140a5619e:	5e                   	pop    %rsi
140a5619f:	5b                   	pop    %rbx
140a561a0:	c3                   	ret
140a561a1:	e8 aa 25 79 ff       	call   0x1401e8750
140a561a6:	90                   	nop
140a561a7:	f6 c2 04             	test   $0x4,%dl
140a561aa:	74 09                	je     0x140a561b5
140a561ac:	48 8d 1d 35 35 55 00 	lea    0x553535(%rip),%rbx        # 0x140fa96e8
140a561b3:	eb 15                	jmp    0x140a561ca
140a561b5:	f6 c2 02             	test   $0x2,%dl
140a561b8:	48 8d 1d 41 35 55 00 	lea    0x553541(%rip),%rbx        # 0x140fa9700
140a561bf:	48 8d 05 52 35 55 00 	lea    0x553552(%rip),%rax        # 0x140fa9718
140a561c6:	48 0f 44 d8          	cmove  %rax,%rbx
140a561ca:	ba 01 00 00 00       	mov    $0x1,%edx
140a561cf:	48 8d 8c 24 90 00 00 	lea    0x90(%rsp),%rcx
140a561d6:	00
140a561d7:	e8 e4 15 7b ff       	call   0x1402077c0
140a561dc:	4c 8b c0             	mov    %rax,%r8
140a561df:	48 8b d3             	mov    %rbx,%rdx
140a561e2:	48 8d 8c 24 a0 00 00 	lea    0xa0(%rsp),%rcx
140a561e9:	00
140a561ea:	e8 41 a6 78 ff       	call   0x1401e0830
140a561ef:	48 8d 15 22 ab 94 00 	lea    0x94ab22(%rip),%rdx        # 0x1413a0d18
140a561f6:	48 8d 8c 24 a0 00 00 	lea    0xa0(%rsp),%rcx
140a561fd:	00
140a561fe:	e8 15 66 3c 00       	call   0x140e1c818
140a56203:	cc                   	int3
140a56204:	cc                   	int3
140a56205:	cc                   	int3
140a56206:	cc                   	int3
140a56207:	cc                   	int3
140a56208:	cc                   	int3
140a56209:	cc                   	int3
140a5620a:	cc                   	int3
140a5620b:	cc                   	int3
140a5620c:	cc                   	int3
140a5620d:	cc                   	int3
140a5620e:	cc                   	int3
140a5620f:	cc                   	int3
140a56210:	40 56                	rex push %rsi
140a56212:	57                   	push   %rdi
140a56213:	41 56                	push   %r14
140a56215:	41 57                	push   %r15
140a56217:	48 83 ec 28          	sub    $0x28,%rsp
140a5621b:	4c 8b 71 10          	mov    0x10(%rcx),%r14
140a5621f:	48 bf fe ff ff ff ff 	movabs $0x7ffffffffffffffe,%rdi
140a56226:	ff ff 7f
140a56229:	48 8b c7             	mov    %rdi,%rax
140a5622c:	45 0f b7 f9          	movzwl %r9w,%r15d
140a56230:	49 2b c6             	sub    %r14,%rax
140a56233:	48 8b f1             	mov    %rcx,%rsi
140a56236:	48 3b c2             	cmp    %rdx,%rax
140a56239:	0f 82 5a 01 00 00    	jb     0x140a56399
140a5623f:	48 89 5c 24 50       	mov    %rbx,0x50(%rsp)
140a56244:	48 89 6c 24 58       	mov    %rbp,0x58(%rsp)
140a56249:	48 8b 69 18          	mov    0x18(%rcx),%rbp
140a5624d:	4c 89 64 24 60       	mov    %r12,0x60(%rsp)
140a56252:	4d 8d 24 16          	lea    (%r14,%rdx,1),%r12
140a56256:	49 8b d4             	mov    %r12,%rdx
140a56259:	4c 89 6c 24 20       	mov    %r13,0x20(%rsp)
140a5625e:	48 83 ca 07          	or     $0x7,%rdx
140a56262:	45 33 ed             	xor    %r13d,%r13d
140a56265:	48 3b d7             	cmp    %rdi,%rdx
140a56268:	77 40                	ja     0x140a562aa
140a5626a:	48 8b cd             	mov    %rbp,%rcx
140a5626d:	48 8b c7             	mov    %rdi,%rax
140a56270:	48 d1 e9             	shr    $1,%rcx
140a56273:	48 2b c1             	sub    %rcx,%rax
140a56276:	48 3b e8             	cmp    %rax,%rbp
140a56279:	77 2f                	ja     0x140a562aa
140a5627b:	48 8d 04 29          	lea    (%rcx,%rbp,1),%rax
140a5627f:	48 8b fa             	mov    %rdx,%rdi
140a56282:	48 3b d0             	cmp    %rax,%rdx
140a56285:	48 0f 42 f8          	cmovb  %rax,%rdi
140a56289:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
140a56290:	ff ff 7f
140a56293:	48 8d 4f 01          	lea    0x1(%rdi),%rcx
140a56297:	48 3b c8             	cmp    %rax,%rcx
140a5629a:	0f 87 f3 00 00 00    	ja     0x140a56393
140a562a0:	48 03 c9             	add    %rcx,%rcx
140a562a3:	75 13                	jne    0x140a562b8
140a562a5:	41 8b dd             	mov    %r13d,%ebx
140a562a8:	eb 4b                	jmp    0x140a562f5
140a562aa:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
140a562b1:	ff ff 7f
140a562b4:	48 8d 0c 00          	lea    (%rax,%rax,1),%rcx
140a562b8:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
140a562bf:	72 2c                	jb     0x140a562ed
140a562c1:	48 8d 41 27          	lea    0x27(%rcx),%rax
140a562c5:	48 3b c1             	cmp    %rcx,%rax
140a562c8:	0f 86 c5 00 00 00    	jbe    0x140a56393
140a562ce:	48 8b c8             	mov    %rax,%rcx
140a562d1:	e8 32 4e 3c 00       	call   0x140e1b108
140a562d6:	48 85 c0             	test   %rax,%rax
140a562d9:	0f 84 ae 00 00 00    	je     0x140a5638d
140a562df:	48 8d 58 27          	lea    0x27(%rax),%rbx
140a562e3:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
140a562e7:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
140a562eb:	eb 08                	jmp    0x140a562f5
140a562ed:	e8 16 4e 3c 00       	call   0x140e1b108
140a562f2:	48 8b d8             	mov    %rax,%rbx
140a562f5:	4d 03 f6             	add    %r14,%r14
140a562f8:	4c 89 66 10          	mov    %r12,0x10(%rsi)
140a562fc:	48 89 7e 18          	mov    %rdi,0x18(%rsi)
140a56300:	4d 8b c6             	mov    %r14,%r8
140a56303:	48 8b cb             	mov    %rbx,%rcx
140a56306:	48 83 fd 07          	cmp    $0x7,%rbp
140a5630a:	76 49                	jbe    0x140a56355
140a5630c:	48 8b 3e             	mov    (%rsi),%rdi
140a5630f:	48 8b d7             	mov    %rdi,%rdx
140a56312:	e8 f9 8c 48 00       	call   0x140edf010
140a56317:	48 8d 14 6d 02 00 00 	lea    0x2(,%rbp,2),%rdx
140a5631e:	00
140a5631f:	66 45 89 3c 1e       	mov    %r15w,(%r14,%rbx,1)
140a56324:	66 45 89 6c 1e 02    	mov    %r13w,0x2(%r14,%rbx,1)
140a5632a:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140a56331:	72 18                	jb     0x140a5634b
140a56333:	48 8b 4f f8          	mov    -0x8(%rdi),%rcx