140abfd27:	48 85 db             	test   %rbx,%rbx
140abfd2a:	74 7b                	je     0x140abfda7
140abfd2c:	48 8b 77 08          	mov    0x8(%rdi),%rsi
140abfd30:	48 3b de             	cmp    %rsi,%rbx
140abfd33:	74 11                	je     0x140abfd46
140abfd35:	48 8b cb             	mov    %rbx,%rcx
140abfd38:	e8 b3 36 8d ff       	call   0x1403933f0
140abfd3d:	48 83 c3 28          	add    $0x28,%rbx
140abfd41:	48 3b de             	cmp    %rsi,%rbx
140abfd44:	75 ef                	jne    0x140abfd35
140abfd46:	4c 8b 07             	mov    (%rdi),%r8
140abfd49:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140abfd4d:	49 2b c8             	sub    %r8,%rcx
140abfd50:	48 b8 67 66 66 66 66 	movabs $0x6666666666666667,%rax
140abfd57:	66 66 66
140abfd5a:	48 f7 e9             	imul   %rcx
140abfd5d:	48 c1 fa 04          	sar    $0x4,%rdx
140abfd61:	48 8b c2             	mov    %rdx,%rax
140abfd64:	48 c1 e8 3f          	shr    $0x3f,%rax
140abfd68:	48 03 d0             	add    %rax,%rdx
140abfd6b:	48 8d 14 92          	lea    (%rdx,%rdx,4),%rdx
140abfd6f:	48 c1 e2 03          	shl    $0x3,%rdx
140abfd73:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140abfd7a:	72 18                	jb     0x140abfd94
140abfd7c:	48 83 c2 27          	add    $0x27,%rdx
140abfd80:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
140abfd84:	4c 2b c1             	sub    %rcx,%r8
140abfd87:	49 8d 40 f8          	lea    -0x8(%r8),%rax
140abfd8b:	48 83 f8 1f          	cmp    $0x1f,%rax
140abfd8f:	77 27                	ja     0x140abfdb8
140abfd91:	4c 8b c1             	mov    %rcx,%r8
140abfd94:	49 8b c8             	mov    %r8,%rcx
140abfd97:	e8 a8 b3 35 00       	call   0x140e1b144
140abfd9c:	48 89 2f             	mov    %rbp,(%rdi)
140abfd9f:	48 89 6f 08          	mov    %rbp,0x8(%rdi)
140abfda3:	48 89 6f 10          	mov    %rbp,0x10(%rdi)
140abfda7:	49 8b c6             	mov    %r14,%rax
140abfdaa:	48 81 c4 90 00 00 00 	add    $0x90,%rsp
140abfdb1:	41 5e                	pop    %r14
140abfdb3:	5f                   	pop    %rdi
140abfdb4:	5e                   	pop    %rsi
140abfdb5:	5d                   	pop    %rbp
140abfdb6:	5b                   	pop    %rbx
140abfdb7:	c3                   	ret
140abfdb8:	e8 e7 a3 36 00       	call   0x140e2a1a4
140abfdbd:	cc                   	int3
140abfdbe:	cc                   	int3
140abfdbf:	cc                   	int3
140abfdc0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140abfdc5:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
140abfdca:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140abfdcf:	56                   	push   %rsi
140abfdd0:	57                   	push   %rdi
140abfdd1:	41 56                	push   %r14
140abfdd3:	48 81 ec 90 00 00 00 	sub    $0x90,%rsp
140abfdda:	48 8b fa             	mov    %rdx,%rdi
140abfddd:	4c 8b f1             	mov    %rcx,%r14
140abfde0:	4c 8b 42 10          	mov    0x10(%rdx),%r8
140abfde4:	33 ed                	xor    %ebp,%ebp
140abfde6:	48 89 6a 10          	mov    %rbp,0x10(%rdx)
140abfdea:	48 8b 4a 08          	mov    0x8(%rdx),%rcx
140abfdee:	48 89 6a 08          	mov    %rbp,0x8(%rdx)
140abfdf2:	48 8b 02             	mov    (%rdx),%rax
140abfdf5:	48 89 2a             	mov    %rbp,(%rdx)
140abfdf8:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140abfdfd:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
140abfe02:	4c 89 44 24 30       	mov    %r8,0x30(%rsp)
140abfe07:	48 83 c2 18          	add    $0x18,%rdx
140abfe0b:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
140abfe10:	e8 fb 2b 8d ff       	call   0x140392a10
140abfe15:	48 8b 47 68          	mov    0x68(%rdi),%rax
140abfe19:	48 89 6f 68          	mov    %rbp,0x68(%rdi)
140abfe1d:	48 89 84 24 88 00 00 	mov    %rax,0x88(%rsp)
140abfe24:	00
140abfe25:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140abfe2a:	49 8b ce             	mov    %r14,%rcx
140abfe2d:	e8 be fd ff ff       	call   0x140abfbf0
140abfe32:	48 8d 05 87 36 52 00 	lea    0x523687(%rip),%rax        # 0x140fe34c0
140abfe39:	49 89 06             	mov    %rax,(%r14)
140abfe3c:	49 89 6e 10          	mov    %rbp,0x10(%r14)
140abfe40:	49 89 6e 18          	mov    %rbp,0x18(%r14)
140abfe44:	49 89 6e 20          	mov    %rbp,0x20(%r14)
140abfe48:	48 8b 4f 68          	mov    0x68(%rdi),%rcx
140abfe4c:	48 85 c9             	test   %rcx,%rcx
140abfe4f:	74 10                	je     0x140abfe61
140abfe51:	48 83 29 01          	subq   $0x1,(%rcx)
140abfe55:	75 0a                	jne    0x140abfe61
140abfe57:	ba 18 00 00 00       	mov    $0x18,%edx
140abfe5c:	e8 e3 b2 35 00       	call   0x140e1b144
140abfe61:	48 8d 4f 50          	lea    0x50(%rdi),%rcx
140abfe65:	e8 f6 84 6d ff       	call   0x140198360
140abfe6a:	80 7f 48 00          	cmpb   $0x0,0x48(%rdi)
140abfe6e:	74 09                	je     0x140abfe79
140abfe70:	48 8d 4f 18          	lea    0x18(%rdi),%rcx
140abfe74:	e8 87 d6 6d ff       	call   0x14019d500
140abfe79:	48 8b 1f             	mov    (%rdi),%rbx
140abfe7c:	48 85 db             	test   %rbx,%rbx
140abfe7f:	0f 84 7d 00 00 00    	je     0x140abff02
140abfe85:	48 8b 77 08          	mov    0x8(%rdi),%rsi
140abfe89:	48 3b de             	cmp    %rsi,%rbx
140abfe8c:	74 13                	je     0x140abfea1
140abfe8e:	66 90                	xchg   %ax,%ax
140abfe90:	48 8b cb             	mov    %rbx,%rcx
140abfe93:	e8 58 35 8d ff       	call   0x1403933f0
140abfe98:	48 83 c3 28          	add    $0x28,%rbx
140abfe9c:	48 3b de             	cmp    %rsi,%rbx
140abfe9f:	75 ef                	jne    0x140abfe90
140abfea1:	4c 8b 07             	mov    (%rdi),%r8
140abfea4:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140abfea8:	49 2b c8             	sub    %r8,%rcx
140abfeab:	48 b8 67 66 66 66 66 	movabs $0x6666666666666667,%rax
140abfeb2:	66 66 66
140abfeb5:	48 f7 e9             	imul   %rcx
140abfeb8:	48 c1 fa 04          	sar    $0x4,%rdx
140abfebc:	48 8b c2             	mov    %rdx,%rax
140abfebf:	48 c1 e8 3f          	shr    $0x3f,%rax
140abfec3:	48 03 d0             	add    %rax,%rdx
140abfec6:	48 8d 14 92          	lea    (%rdx,%rdx,4),%rdx
140abfeca:	48 c1 e2 03          	shl    $0x3,%rdx
140abfece:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140abfed5:	72 18                	jb     0x140abfeef
140abfed7:	48 83 c2 27          	add    $0x27,%rdx
140abfedb:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
140abfedf:	4c 2b c1             	sub    %rcx,%r8
140abfee2:	49 8d 40 f8          	lea    -0x8(%r8),%rax
140abfee6:	48 83 f8 1f          	cmp    $0x1f,%rax
140abfeea:	77 31                	ja     0x140abff1d
140abfeec:	4c 8b c1             	mov    %rcx,%r8
140abfeef:	49 8b c8             	mov    %r8,%rcx
140abfef2:	e8 4d b2 35 00       	call   0x140e1b144
140abfef7:	48 89 2f             	mov    %rbp,(%rdi)
140abfefa:	48 89 6f 08          	mov    %rbp,0x8(%rdi)
140abfefe:	48 89 6f 10          	mov    %rbp,0x10(%rdi)
140abff02:	49 8b c6             	mov    %r14,%rax
140abff05:	4c 8d 9c 24 90 00 00 	lea    0x90(%rsp),%r11
140abff0c:	00
140abff0d:	49 8b 5b 30          	mov    0x30(%r11),%rbx
140abff11:	49 8b 6b 38          	mov    0x38(%r11),%rbp
140abff15:	49 8b e3             	mov    %r11,%rsp
140abff18:	41 5e                	pop    %r14
140abff1a:	5f                   	pop    %rdi
140abff1b:	5e                   	pop    %rsi
140abff1c:	c3                   	ret
140abff1d:	e8 82 a2 36 00       	call   0x140e2a1a4
140abff22:	cc                   	int3
140abff23:	cc                   	int3
140abff24:	cc                   	int3
140abff25:	cc                   	int3
140abff26:	cc                   	int3
140abff27:	cc                   	int3
140abff28:	cc                   	int3
140abff29:	cc                   	int3
140abff2a:	cc                   	int3
140abff2b:	cc                   	int3
140abff2c:	cc                   	int3
140abff2d:	cc                   	int3
140abff2e:	cc                   	int3
140abff2f:	cc                   	int3
140abff30:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140abff35:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140abff3a:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140abff3f:	57                   	push   %rdi
140abff40:	48 81 ec 00 02 00 00 	sub    $0x200,%rsp
140abff47:	48 8b fa             	mov    %rdx,%rdi
140abff4a:	48 8b d9             	mov    %rcx,%rbx
140abff4d:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140abff52:	e8 09 08 00 00       	call   0x140ac0760
140abff57:	48 8d 05 92 35 52 00 	lea    0x523592(%rip),%rax        # 0x140fe34f0
140abff5e:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140abff63:	48 8d 44 24 20       	lea    0x20(%rsp),%rax
140abff68:	48 89 84 24 20 02 00 	mov    %rax,0x220(%rsp)
140abff6f:	00
140abff70:	48 8d 05 29 35 52 00 	lea    0x523529(%rip),%rax        # 0x140fe34a0
140abff77:	48 89 03             	mov    %rax,(%rbx)
140abff7a:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140abff7f:	48 8d 8c 24 10 02 00 	lea    0x210(%rsp),%rcx
140abff86:	00
140abff87:	e8 94 05 00 00       	call   0x140ac0520
140abff8c:	48 8b 08             	mov    (%rax),%rcx
140abff8f:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
140abff96:	48 89 4b 08          	mov    %rcx,0x8(%rbx)
140abff9a:	48 8b 08             	mov    (%rax),%rcx
140abff9d:	48 85 c9             	test   %rcx,%rcx
140abffa0:	74 1a                	je     0x140abffbc
140abffa2:	48 83 69 08 01       	subq   $0x1,0x8(%rcx)
140abffa7:	75 13                	jne    0x140abffbc
140abffa9:	48 8b 01             	mov    (%rcx),%rax
140abffac:	ba 01 00 00 00       	mov    $0x1,%edx
140abffb1:	48 8b 40 28          	mov    0x28(%rax),%rax
140abffb5:	ff 15 65 3a 4c 00    	call   *0x4c3a65(%rip)        # 0x140f83a20
140abffbb:	90                   	nop
140abffbc:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140abffc1:	e8 2a 35 8d ff       	call   0x1403934f0
140abffc6:	48 8d 05 e3 34 52 00 	lea    0x5234e3(%rip),%rax        # 0x140fe34b0
140abffcd:	48 89 03             	mov    %rax,(%rbx)
140abffd0:	48 8b cf             	mov    %rdi,%rcx
140abffd3:	e8 18 35 8d ff       	call   0x1403934f0
140abffd8:	48 8b c3             	mov    %rbx,%rax
140abffdb:	48 8b 9c 24 28 02 00 	mov    0x228(%rsp),%rbx
140abffe2:	00
140abffe3:	48 81 c4 00 02 00 00 	add    $0x200,%rsp
140abffea:	5f                   	pop    %rdi
140abffeb:	c3                   	ret
140abffec:	cc                   	int3
140abffed:	cc                   	int3
140abffee:	cc                   	int3
140abffef:	cc                   	int3
140abfff0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140abfff5:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140abfffa:	57                   	push   %rdi
140abfffb:	48 81 ec 00 02 00 00 	sub    $0x200,%rsp
140ac0002:	48 8b da             	mov    %rdx,%rbx
140ac0005:	48 8b f9             	mov    %rcx,%rdi
140ac0008:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140ac000d:	e8 4e 07 00 00       	call   0x140ac0760
140ac0012:	48 8d 05 d7 34 52 00 	lea    0x5234d7(%rip),%rax        # 0x140fe34f0
140ac0019:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140ac001e:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140ac0023:	48 8b cf             	mov    %rdi,%rcx
140ac0026:	e8 05 ff ff ff       	call   0x140abff30
140ac002b:	48 8d 05 8e 34 52 00 	lea    0x52348e(%rip),%rax        # 0x140fe34c0
140ac0032:	48 89 07             	mov    %rax,(%rdi)
140ac0035:	33 c9                	xor    %ecx,%ecx
140ac0037:	48 89 4f 10          	mov    %rcx,0x10(%rdi)
140ac003b:	48 89 4f 18          	mov    %rcx,0x18(%rdi)
140ac003f:	48 89 4f 20          	mov    %rcx,0x20(%rdi)
140ac0043:	48 8b cb             	mov    %rbx,%rcx
140ac0046:	e8 a5 34 8d ff       	call   0x1403934f0
140ac004b:	48 8b c7             	mov    %rdi,%rax
140ac004e:	48 8b 9c 24 20 02 00 	mov    0x220(%rsp),%rbx
140ac0055:	00
140ac0056:	48 81 c4 00 02 00 00 	add    $0x200,%rsp
140ac005d:	5f                   	pop    %rdi
140ac005e:	c3                   	ret
140ac005f:	cc                   	int3
140ac0060:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140ac0065:	55                   	push   %rbp
140ac0066:	56                   	push   %rsi
140ac0067:	57                   	push   %rdi
140ac0068:	48 8d 6c 24 90       	lea    -0x70(%rsp),%rbp
140ac006d:	48 81 ec 70 01 00 00 	sub    $0x170,%rsp
140ac0074:	48 8b 05 85 8e 8f 00 	mov    0x8f8e85(%rip),%rax        # 0x1413b8f00
140ac007b:	48 33 c4             	xor    %rsp,%rax
140ac007e:	48 89 45 68          	mov    %rax,0x68(%rbp)
140ac0082:	49 8b d8             	mov    %r8,%rbx
140ac0085:	48 8b fa             	mov    %rdx,%rdi
140ac0088:	48 8b f1             	mov    %rcx,%rsi
140ac008b:	48 89 4c 24 40       	mov    %rcx,0x40(%rsp)
140ac0090:	ba 01 00 00 00       	mov    $0x1,%edx
140ac0095:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
140ac009a:	e8 d1 de 71 ff       	call   0x1401ddf70
140ac009f:	90                   	nop
140ac00a0:	48 8d 45 50          	lea    0x50(%rbp),%rax
140ac00a4:	48 89 45 40          	mov    %rax,0x40(%rbp)
140ac00a8:	c7 45 48 01 00 00 00 	movl   $0x1,0x48(%rbp)
140ac00af:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140ac00b4:	48 8d 05 f5 fd fd ff 	lea    -0x2020b(%rip),%rax        # 0x140a9feb0
140ac00bb:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140ac00c0:	48 8d 05 39 00 fe ff 	lea    -0x1ffc7(%rip),%rax        # 0x140aa0100
140ac00c7:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140ac00cc:	0f 10 44 24 28       	movups 0x28(%rsp),%xmm0
140ac00d1:	0f 11 45 50          	movups %xmm0,0x50(%rbp)
140ac00d5:	f2 0f 10 4c 24 38    	movsd  0x38(%rsp),%xmm1
140ac00db:	f2 0f 11 4d 60       	movsd  %xmm1,0x60(%rbp)
140ac00e0:	41 b9 01 00 00 00    	mov    $0x1,%r9d
140ac00e6:	4c 8d 45 50          	lea    0x50(%rbp),%r8
140ac00ea:	48 8b d7             	mov    %rdi,%rdx
140ac00ed:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
140ac00f2:	e8 f9 6a 74 ff       	call   0x140206bf0
140ac00f7:	48 8b d6             	mov    %rsi,%rdx
140ac00fa:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
140ac00ff:	e8 6c a7 74 ff       	call   0x14020a870
140ac0104:	90                   	nop
140ac0105:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
140ac010a:	48 63 48 04          	movslq 0x4(%rax),%rcx
140ac010e:	48 8d 05 7b 97 4e 00 	lea    0x4e977b(%rip),%rax        # 0x140fa9890
140ac0115:	48 89 44 0c 50       	mov    %rax,0x50(%rsp,%rcx,1)
140ac011a:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
140ac011f:	48 63 48 04          	movslq 0x4(%rax),%rcx
140ac0123:	8d 91 78 ff ff ff    	lea    -0x88(%rcx),%edx
140ac0129:	89 54 0c 4c          	mov    %edx,0x4c(%rsp,%rcx,1)
140ac012d:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
140ac0132:	e8 b9 11 72 ff       	call   0x1401e12f0
140ac0137:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
140ac013c:	48 63 48 04          	movslq 0x4(%rax),%rcx
140ac0140:	48 8d 05 31 96 4e 00 	lea    0x4e9631(%rip),%rax        # 0x140fa9778
140ac0147:	48 89 44 0c 50       	mov    %rax,0x50(%rsp,%rcx,1)
140ac014c:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
140ac0151:	48 63 51 04          	movslq 0x4(%rcx),%rdx
140ac0155:	44 8d 42 f0          	lea    -0x10(%rdx),%r8d
140ac0159:	44 89 44 14 4c       	mov    %r8d,0x4c(%rsp,%rdx,1)
140ac015e:	48 8d 05 7b 95 4e 00 	lea    0x4e957b(%rip),%rax        # 0x140fa96e0
140ac0165:	48 89 45 d8          	mov    %rax,-0x28(%rbp)
140ac0169:	48 8d 4d d8          	lea    -0x28(%rbp),%rcx
140ac016d:	e8 92 c8 33 00       	call   0x140dfca04
140ac0172:	90                   	nop
140ac0173:	48 8b c6             	mov    %rsi,%rax
140ac0176:	48 8b 4d 68          	mov    0x68(%rbp),%rcx
140ac017a:	48 33 cc             	xor    %rsp,%rcx
140ac017d:	e8 7e b3 35 00       	call   0x140e1b500
140ac0182:	48 8b 9c 24 a0 01 00 	mov    0x1a0(%rsp),%rbx
140ac0189:	00
140ac018a:	48 81 c4 70 01 00 00 	add    $0x170,%rsp
140ac0191:	5f                   	pop    %rdi
140ac0192:	5e                   	pop    %rsi
140ac0193:	5d                   	pop    %rbp
140ac0194:	c3                   	ret
140ac0195:	cc                   	int3
140ac0196:	cc                   	int3
140ac0197:	cc                   	int3
140ac0198:	cc                   	int3
140ac0199:	cc                   	int3
140ac019a:	cc                   	int3
140ac019b:	cc                   	int3
140ac019c:	cc                   	int3
140ac019d:	cc                   	int3
140ac019e:	cc                   	int3
140ac019f:	cc                   	int3
140ac01a0:	e9 0b 00 00 00       	jmp    0x140ac01b0
140ac01a5:	cc                   	int3
140ac01a6:	cc                   	int3
140ac01a7:	cc                   	int3
140ac01a8:	cc                   	int3
140ac01a9:	cc                   	int3
140ac01aa:	cc                   	int3
140ac01ab:	cc                   	int3
140ac01ac:	cc                   	int3
140ac01ad:	cc                   	int3
140ac01ae:	cc                   	int3
140ac01af:	cc                   	int3
140ac01b0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140ac01b5:	55                   	push   %rbp
140ac01b6:	56                   	push   %rsi
140ac01b7:	57                   	push   %rdi
140ac01b8:	48 8d ac 24 d0 fd ff 	lea    -0x230(%rsp),%rbp
140ac01bf:	ff
140ac01c0:	48 81 ec 30 03 00 00 	sub    $0x330,%rsp
140ac01c7:	48 8b 05 32 8d 8f 00 	mov    0x8f8d32(%rip),%rax        # 0x1413b8f00
140ac01ce:	48 33 c4             	xor    %rsp,%rax
140ac01d1:	48 89 85 20 02 00 00 	mov    %rax,0x220(%rbp)
140ac01d8:	41 8b d9             	mov    %r9d,%ebx
140ac01db:	48 8b f9             	mov    %rcx,%rdi
140ac01de:	48 8b b5 70 02 00 00 	mov    0x270(%rbp),%rsi
140ac01e5:	45 85 c9             	test   %r9d,%r9d
140ac01e8:	0f 88 3d 01 00 00    	js     0x140ac032b
140ac01ee:	ba 01 00 00 00       	mov    $0x1,%edx
140ac01f3:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140ac01f8:	e8 73 dd 71 ff       	call   0x1401ddf70
140ac01fd:	90                   	nop
140ac01fe:	48 8b d6             	mov    %rsi,%rdx