140a9fd09:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140a9fd0d:	49 2b ca             	sub    %r10,%rcx
140a9fd10:	49 8b c3             	mov    %r11,%rax
140a9fd13:	48 f7 e9             	imul   %rcx
140a9fd16:	48 c1 fa 04          	sar    $0x4,%rdx
140a9fd1a:	48 8b c2             	mov    %rdx,%rax
140a9fd1d:	48 c1 e8 3f          	shr    $0x3f,%rax
140a9fd21:	48 03 d0             	add    %rax,%rdx
140a9fd24:	48 8b ca             	mov    %rdx,%rcx
140a9fd27:	48 d1 e9             	shr    $1,%rcx
140a9fd2a:	49 8b c0             	mov    %r8,%rax
140a9fd2d:	48 2b c1             	sub    %rcx,%rax
140a9fd30:	48 3b d0             	cmp    %rax,%rdx
140a9fd33:	0f 87 57 01 00 00    	ja     0x140a9fe90
140a9fd39:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
140a9fd3d:	49 8b cf             	mov    %r15,%rcx
140a9fd40:	49 3b c7             	cmp    %r15,%rax
140a9fd43:	48 0f 43 c8          	cmovae %rax,%rcx
140a9fd47:	49 3b c8             	cmp    %r8,%rcx
140a9fd4a:	0f 87 40 01 00 00    	ja     0x140a9fe90
140a9fd50:	48 8d 04 89          	lea    (%rcx,%rcx,4),%rax
140a9fd54:	48 8d 34 c5 00 00 00 	lea    0x0(,%rax,8),%rsi
140a9fd5b:	00
140a9fd5c:	48 89 4c 24 78       	mov    %rcx,0x78(%rsp)
140a9fd61:	48 85 f6             	test   %rsi,%rsi
140a9fd64:	75 09                	jne    0x140a9fd6f
140a9fd66:	33 db                	xor    %ebx,%ebx
140a9fd68:	48 89 4c 24 78       	mov    %rcx,0x78(%rsp)
140a9fd6d:	eb 3d                	jmp    0x140a9fdac
140a9fd6f:	48 81 fe 00 10 00 00 	cmp    $0x1000,%rsi
140a9fd76:	72 29                	jb     0x140a9fda1
140a9fd78:	48 8d 4e 27          	lea    0x27(%rsi),%rcx
140a9fd7c:	48 3b ce             	cmp    %rsi,%rcx
140a9fd7f:	0f 86 0b 01 00 00    	jbe    0x140a9fe90
140a9fd85:	e8 7e b3 37 00       	call   0x140e1b108
140a9fd8a:	48 85 c0             	test   %rax,%rax
140a9fd8d:	0f 84 09 01 00 00    	je     0x140a9fe9c
140a9fd93:	48 8d 58 27          	lea    0x27(%rax),%rbx
140a9fd97:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
140a9fd9b:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
140a9fd9f:	eb 0b                	jmp    0x140a9fdac
140a9fda1:	48 8b ce             	mov    %rsi,%rcx
140a9fda4:	e8 5f b3 37 00       	call   0x140e1b108
140a9fda9:	48 8b d8             	mov    %rax,%rbx
140a9fdac:	48 89 5c 24 68       	mov    %rbx,0x68(%rsp)
140a9fdb1:	4b 8d 04 b6          	lea    (%r14,%r14,4),%rax
140a9fdb5:	4c 8d 34 c3          	lea    (%rbx,%rax,8),%r14
140a9fdb9:	41 0f 10 45 00       	movups 0x0(%r13),%xmm0
140a9fdbe:	41 0f 11 06          	movups %xmm0,(%r14)
140a9fdc2:	41 0f 10 4d 10       	movups 0x10(%r13),%xmm1
140a9fdc7:	41 0f 11 4e 10       	movups %xmm1,0x10(%r14)
140a9fdcc:	f2 41 0f 10 45 20    	movsd  0x20(%r13),%xmm0
140a9fdd2:	f2 41 0f 11 46 20    	movsd  %xmm0,0x20(%r14)
140a9fdd8:	4c 8b 47 08          	mov    0x8(%rdi),%r8
140a9fddc:	48 8b 17             	mov    (%rdi),%rdx
140a9fddf:	48 8b cb             	mov    %rbx,%rcx
140a9fde2:	4d 3b e0             	cmp    %r8,%r12
140a9fde5:	75 05                	jne    0x140a9fdec
140a9fde7:	4c 2b c2             	sub    %rdx,%r8
140a9fdea:	eb 19                	jmp    0x140a9fe05
140a9fdec:	4d 8b c4             	mov    %r12,%r8
140a9fdef:	4c 2b c2             	sub    %rdx,%r8
140a9fdf2:	e8 19 f2 43 00       	call   0x140edf010
140a9fdf7:	49 8d 4e 28          	lea    0x28(%r14),%rcx
140a9fdfb:	4c 8b 47 08          	mov    0x8(%rdi),%r8
140a9fdff:	4d 2b c4             	sub    %r12,%r8
140a9fe02:	49 8b d4             	mov    %r12,%rdx
140a9fe05:	e8 06 f2 43 00       	call   0x140edf010
140a9fe0a:	90                   	nop
140a9fe0b:	4c 8b 07             	mov    (%rdi),%r8
140a9fe0e:	4d 85 c0             	test   %r8,%r8
140a9fe11:	74 53                	je     0x140a9fe66
140a9fe13:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140a9fe17:	49 2b c8             	sub    %r8,%rcx
140a9fe1a:	48 b8 67 66 66 66 66 	movabs $0x6666666666666667,%rax
140a9fe21:	66 66 66
140a9fe24:	48 f7 e9             	imul   %rcx
140a9fe27:	48 c1 fa 04          	sar    $0x4,%rdx
140a9fe2b:	48 8b c2             	mov    %rdx,%rax
140a9fe2e:	48 c1 e8 3f          	shr    $0x3f,%rax
140a9fe32:	48 03 d0             	add    %rax,%rdx
140a9fe35:	48 8d 14 92          	lea    (%rdx,%rdx,4),%rdx
140a9fe39:	48 c1 e2 03          	shl    $0x3,%rdx
140a9fe3d:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140a9fe44:	72 18                	jb     0x140a9fe5e
140a9fe46:	48 83 c2 27          	add    $0x27,%rdx
140a9fe4a:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
140a9fe4e:	4c 2b c1             	sub    %rcx,%r8
140a9fe51:	49 8d 40 f8          	lea    -0x8(%r8),%rax
140a9fe55:	48 83 f8 1f          	cmp    $0x1f,%rax
140a9fe59:	77 41                	ja     0x140a9fe9c
140a9fe5b:	4c 8b c1             	mov    %rcx,%r8
140a9fe5e:	49 8b c8             	mov    %r8,%rcx
140a9fe61:	e8 de b2 37 00       	call   0x140e1b144
140a9fe66:	48 89 1f             	mov    %rbx,(%rdi)
140a9fe69:	4b 8d 0c bf          	lea    (%r15,%r15,4),%rcx
140a9fe6d:	48 8d 14 cb          	lea    (%rbx,%rcx,8),%rdx
140a9fe71:	48 89 57 08          	mov    %rdx,0x8(%rdi)
140a9fe75:	48 8d 0c 1e          	lea    (%rsi,%rbx,1),%rcx
140a9fe79:	48 89 4f 10          	mov    %rcx,0x10(%rdi)
140a9fe7d:	49 8b c6             	mov    %r14,%rax
140a9fe80:	48 83 c4 20          	add    $0x20,%rsp
140a9fe84:	41 5f                	pop    %r15
140a9fe86:	41 5e                	pop    %r14
140a9fe88:	41 5d                	pop    %r13
140a9fe8a:	41 5c                	pop    %r12
140a9fe8c:	5f                   	pop    %rdi
140a9fe8d:	5e                   	pop    %rsi
140a9fe8e:	5b                   	pop    %rbx
140a9fe8f:	c3                   	ret
140a9fe90:	e8 fb d2 6f ff       	call   0x14019d190
140a9fe95:	cc                   	int3
140a9fe96:	e8 f5 d6 6f ff       	call   0x14019d590
140a9fe9b:	cc                   	int3
140a9fe9c:	e8 03 a3 38 00       	call   0x140e2a1a4
140a9fea1:	cc                   	int3
140a9fea2:	cc                   	int3
140a9fea3:	cc                   	int3
140a9fea4:	cc                   	int3
140a9fea5:	cc                   	int3
140a9fea6:	cc                   	int3
140a9fea7:	cc                   	int3
140a9fea8:	cc                   	int3
140a9fea9:	cc                   	int3
140a9feaa:	cc                   	int3
140a9feab:	cc                   	int3
140a9feac:	cc                   	int3
140a9fead:	cc                   	int3
140a9feae:	cc                   	int3
140a9feaf:	cc                   	int3
140a9feb0:	48 8b 01             	mov    (%rcx),%rax
140a9feb3:	48 8b 54 24 28       	mov    0x28(%rsp),%rdx
140a9feb8:	4c 63 50 04          	movslq 0x4(%rax),%r10
140a9febc:	41 80 7c 0a 58 30    	cmpb   $0x30,0x58(%r10,%rcx,1)
140a9fec2:	75 1e                	jne    0x140a9fee2
140a9fec4:	48 8b 02             	mov    (%rdx),%rax
140a9fec7:	48 c1 e8 34          	shr    $0x34,%rax
140a9fecb:	25 ff 07 00 00       	and    $0x7ff,%eax
140a9fed0:	3d ff 07 00 00       	cmp    $0x7ff,%eax
140a9fed5:	0f 95 c0             	setne  %al
140a9fed8:	3c 01                	cmp    $0x1,%al
140a9feda:	74 06                	je     0x140a9fee2
140a9fedc:	41 c6 44 0a 58 20    	movb   $0x20,0x58(%r10,%rcx,1)
140a9fee2:	41 80 78 ff 63       	cmpb   $0x63,-0x1(%r8)
140a9fee7:	75 09                	jne    0x140a9fef2
140a9fee9:	f2 0f 2c 12          	cvttsd2si (%rdx),%edx
140a9feed:	e9 3e 00 73 ff       	jmp    0x1401cff30
140a9fef2:	45 85 c9             	test   %r9d,%r9d
140a9fef5:	78 08                	js     0x140a9feff
140a9fef7:	45 8b c1             	mov    %r9d,%r8d
140a9fefa:	e9 11 00 00 00       	jmp    0x140a9ff10
140a9feff:	f2 0f 10 0a          	movsd  (%rdx),%xmm1
140a9ff03:	e9 68 64 8f ff       	jmp    0x140396370
140a9ff08:	cc                   	int3
140a9ff09:	cc                   	int3
140a9ff0a:	cc                   	int3
140a9ff0b:	cc                   	int3
140a9ff0c:	cc                   	int3
140a9ff0d:	cc                   	int3
140a9ff0e:	cc                   	int3
140a9ff0f:	cc                   	int3
140a9ff10:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140a9ff15:	55                   	push   %rbp
140a9ff16:	56                   	push   %rsi
140a9ff17:	57                   	push   %rdi
140a9ff18:	48 8d 6c 24 a0       	lea    -0x60(%rsp),%rbp
140a9ff1d:	48 81 ec 60 01 00 00 	sub    $0x160,%rsp
140a9ff24:	48 8b 05 d5 8f 91 00 	mov    0x918fd5(%rip),%rax        # 0x1413b8f00
140a9ff2b:	48 33 c4             	xor    %rsp,%rax
140a9ff2e:	48 89 45 50          	mov    %rax,0x50(%rbp)
140a9ff32:	41 8b f8             	mov    %r8d,%edi
140a9ff35:	48 8b da             	mov    %rdx,%rbx
140a9ff38:	48 8b f1             	mov    %rcx,%rsi
140a9ff3b:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%rsp)
140a9ff42:	00
140a9ff43:	ba 01 00 00 00       	mov    $0x1,%edx
140a9ff48:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140a9ff4d:	e8 1e e0 73 ff       	call   0x1401ddf70
140a9ff52:	90                   	nop
140a9ff53:	f2 0f 10 0b          	movsd  (%rbx),%xmm1
140a9ff57:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140a9ff5c:	e8 0f 64 8f ff       	call   0x140396370
140a9ff61:	90                   	nop
140a9ff62:	0f 57 c0             	xorps  %xmm0,%xmm0
140a9ff65:	0f 11 45 30          	movups %xmm0,0x30(%rbp)
140a9ff69:	66 0f 6f 0d bf 3e 50 	movdqa 0x503ebf(%rip),%xmm1        # 0x140fa3e30
140a9ff70:	00
140a9ff71:	f3 0f 7f 4d 40       	movdqu %xmm1,0x40(%rbp)
140a9ff76:	c6 45 30 00          	movb   $0x0,0x30(%rbp)
140a9ff7a:	c7 44 24 20 02 00 00 	movl   $0x2,0x20(%rsp)
140a9ff81:	00
140a9ff82:	0f 11 44 24 28       	movups %xmm0,0x28(%rsp)
140a9ff87:	48 8b 4d b8          	mov    -0x48(%rbp),%rcx
140a9ff8b:	8b c1                	mov    %ecx,%eax
140a9ff8d:	24 22                	and    $0x22,%al
140a9ff8f:	3c 02                	cmp    $0x2,%al
140a9ff91:	74 22                	je     0x140a9ffb5
140a9ff93:	48 8b 45 88          	mov    -0x78(%rbp),%rax
140a9ff97:	4c 8b 00             	mov    (%rax),%r8
140a9ff9a:	4d 85 c0             	test   %r8,%r8
140a9ff9d:	74 16                	je     0x140a9ffb5
140a9ff9f:	48 8b 44 24 68       	mov    0x68(%rsp),%rax
140a9ffa4:	48 8b 10             	mov    (%rax),%rdx
140a9ffa7:	4c 3b 45 b0          	cmp    -0x50(%rbp),%r8
140a9ffab:	4c 0f 42 45 b0       	cmovb  -0x50(%rbp),%r8
140a9ffb0:	4c 2b c2             	sub    %rdx,%r8
140a9ffb3:	eb 32                	jmp    0x140a9ffe7
140a9ffb5:	f6 c1 04             	test   $0x4,%cl
140a9ffb8:	75 23                	jne    0x140a9ffdd
140a9ffba:	48 8b 45 80          	mov    -0x80(%rbp),%rax
140a9ffbe:	48 8b 08             	mov    (%rax),%rcx
140a9ffc1:	48 85 c9             	test   %rcx,%rcx
140a9ffc4:	74 17                	je     0x140a9ffdd
140a9ffc6:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
140a9ffcb:	48 8b 10             	mov    (%rax),%rdx
140a9ffce:	48 8b 45 98          	mov    -0x68(%rbp),%rax
140a9ffd2:	4c 63 00             	movslq (%rax),%r8
140a9ffd5:	4c 2b c2             	sub    %rdx,%r8
140a9ffd8:	4c 03 c1             	add    %rcx,%r8
140a9ffdb:	eb 0a                	jmp    0x140a9ffe7
140a9ffdd:	4c 8b 44 24 30       	mov    0x30(%rsp),%r8
140a9ffe2:	48 8b 54 24 28       	mov    0x28(%rsp),%rdx
140a9ffe7:	48 85 d2             	test   %rdx,%rdx
140a9ffea:	74 0a                	je     0x140a9fff6
140a9ffec:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
140a9fff0:	e8 db f3 6f ff       	call   0x14019f3d0
140a9fff5:	90                   	nop
140a9fff6:	39 7d 40             	cmp    %edi,0x40(%rbp)
140a9fff9:	0f 4c 7d 40          	cmovl  0x40(%rbp),%edi
140a9fffd:	4c 63 c7             	movslq %edi,%r8
140aa0000:	48 8d 55 30          	lea    0x30(%rbp),%rdx
140aa0004:	48 83 7d 48 0f       	cmpq   $0xf,0x48(%rbp)
140aa0009:	48 0f 47 55 30       	cmova  0x30(%rbp),%rdx
140aa000e:	48 8b ce             	mov    %rsi,%rcx
140aa0011:	e8 ea b5 76 ff       	call   0x14020b600
140aa0016:	90                   	nop
140aa0017:	48 8b 55 48          	mov    0x48(%rbp),%rdx
140aa001b:	48 83 fa 0f          	cmp    $0xf,%rdx
140aa001f:	76 31                	jbe    0x140aa0052
140aa0021:	48 ff c2             	inc    %rdx
140aa0024:	48 8b 4d 30          	mov    0x30(%rbp),%rcx
140aa0028:	48 8b c1             	mov    %rcx,%rax
140aa002b:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140aa0032:	72 19                	jb     0x140aa004d
140aa0034:	48 83 c2 27          	add    $0x27,%rdx
140aa0038:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
140aa003c:	48 2b c1             	sub    %rcx,%rax
140aa003f:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
140aa0043:	48 83 f8 1f          	cmp    $0x1f,%rax
140aa0047:	0f 87 a1 00 00 00    	ja     0x140aa00ee
140aa004d:	e8 f2 b0 37 00       	call   0x140e1b144
140aa0052:	66 0f 6f 05 d6 3d 50 	movdqa 0x503dd6(%rip),%xmm0        # 0x140fa3e30
140aa0059:	00
140aa005a:	f3 0f 7f 45 40       	movdqu %xmm0,0x40(%rbp)
140aa005f:	c6 45 30 00          	movb   $0x0,0x30(%rbp)
140aa0063:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
140aa0068:	48 63 48 04          	movslq 0x4(%rax),%rcx
140aa006c:	48 8d 05 1d 98 50 00 	lea    0x50981d(%rip),%rax        # 0x140fa9890
140aa0073:	48 89 44 0c 40       	mov    %rax,0x40(%rsp,%rcx,1)
140aa0078:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
140aa007d:	48 63 48 04          	movslq 0x4(%rax),%rcx
140aa0081:	8d 91 78 ff ff ff    	lea    -0x88(%rcx),%edx
140aa0087:	89 54 0c 3c          	mov    %edx,0x3c(%rsp,%rcx,1)
140aa008b:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140aa0090:	e8 5b 12 74 ff       	call   0x1401e12f0
140aa0095:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
140aa009a:	48 63 48 04          	movslq 0x4(%rax),%rcx
140aa009e:	48 8d 05 d3 96 50 00 	lea    0x5096d3(%rip),%rax        # 0x140fa9778
140aa00a5:	48 89 44 0c 40       	mov    %rax,0x40(%rsp,%rcx,1)
140aa00aa:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
140aa00af:	48 63 48 04          	movslq 0x4(%rax),%rcx
140aa00b3:	8d 51 f0             	lea    -0x10(%rcx),%edx
140aa00b6:	89 54 0c 3c          	mov    %edx,0x3c(%rsp,%rcx,1)
140aa00ba:	48 8d 05 1f 96 50 00 	lea    0x50961f(%rip),%rax        # 0x140fa96e0
140aa00c1:	48 89 45 c8          	mov    %rax,-0x38(%rbp)
140aa00c5:	48 8d 4d c8          	lea    -0x38(%rbp),%rcx
140aa00c9:	e8 36 c9 35 00       	call   0x140dfca04
140aa00ce:	90                   	nop
140aa00cf:	48 8b 4d 50          	mov    0x50(%rbp),%rcx
140aa00d3:	48 33 cc             	xor    %rsp,%rcx
140aa00d6:	e8 25 b4 37 00       	call   0x140e1b500
140aa00db:	48 8b 9c 24 98 01 00 	mov    0x198(%rsp),%rbx
140aa00e2:	00
140aa00e3:	48 81 c4 60 01 00 00 	add    $0x160,%rsp
140aa00ea:	5f                   	pop    %rdi
140aa00eb:	5e                   	pop    %rsi
140aa00ec:	5d                   	pop    %rbp
140aa00ed:	c3                   	ret
140aa00ee:	e8 b1 a0 38 00       	call   0x140e2a1a4
140aa00f3:	90                   	nop
140aa00f4:	cc                   	int3
140aa00f5:	cc                   	int3
140aa00f6:	cc                   	int3
140aa00f7:	cc                   	int3
140aa00f8:	cc                   	int3
140aa00f9:	cc                   	int3
140aa00fa:	cc                   	int3
140aa00fb:	cc                   	int3
140aa00fc:	cc                   	int3
140aa00fd:	cc                   	int3
140aa00fe:	cc                   	int3
140aa00ff:	cc                   	int3
140aa0100:	f2 0f 2c 01          	cvttsd2si (%rcx),%eax
140aa0104:	c3                   	ret
140aa0105:	cc                   	int3
140aa0106:	cc                   	int3
140aa0107:	cc                   	int3
140aa0108:	cc                   	int3
140aa0109:	cc                   	int3
140aa010a:	cc                   	int3
140aa010b:	cc                   	int3
140aa010c:	cc                   	int3
140aa010d:	cc                   	int3
140aa010e:	cc                   	int3
140aa010f:	cc                   	int3
140aa0110:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140aa0115:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140aa011a:	55                   	push   %rbp
140aa011b:	56                   	push   %rsi
140aa011c:	57                   	push   %rdi
140aa011d:	48 83 ec 20          	sub    $0x20,%rsp
140aa0121:	48 8b 05 68 74 99 00 	mov    0x997468(%rip),%rax        # 0x141437590
140aa0128:	33 ed                	xor    %ebp,%ebp
140aa012a:	48 8b fa             	mov    %rdx,%rdi
140aa012d:	48 8b f1             	mov    %rcx,%rsi
140aa0130:	48 85 c0             	test   %rax,%rax
140aa0133:	0f 85 8a 00 00 00    	jne    0x140aa01c3
140aa0139:	b9 18 00 00 00       	mov    $0x18,%ecx
140aa013e:	e8 c5 af 37 00       	call   0x140e1b108
140aa0143:	48 85 c0             	test   %rax,%rax
140aa0146:	74 0d                	je     0x140aa0155
140aa0148:	48 89 28             	mov    %rbp,(%rax)
140aa014b:	48 89 68 08          	mov    %rbp,0x8(%rax)
140aa014f:	48 89 68 10          	mov    %rbp,0x10(%rax)
140aa0153:	eb 03                	jmp    0x140aa0158
140aa0155:	48 8b c5             	mov    %rbp,%rax
140aa0158:	48 8b 1d 31 74 99 00 	mov    0x997431(%rip),%rbx        # 0x141437590
140aa015f:	48 89 05 2a 74 99 00 	mov    %rax,0x99742a(%rip)        # 0x141437590
140aa0166:	48 85 db             	test   %rbx,%rbx
140aa0169:	74 58                	je     0x140aa01c3
140aa016b:	48 8b 0b             	mov    (%rbx),%rcx
140aa016e:	48 85 c9             	test   %rcx,%rcx
140aa0171:	74 3c                	je     0x140aa01af
140aa0173:	48 8b 53 10          	mov    0x10(%rbx),%rdx
140aa0177:	48 2b d1             	sub    %rcx,%rdx
140aa017a:	48 83 e2 f8          	and    $0xfffffffffffffff8,%rdx
140aa017e:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140aa0185:	72 18                	jb     0x140aa019f
140aa0187:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
140aa018b:	48 83 c2 27          	add    $0x27,%rdx