140390f0e:	00
140390f0f:	48 85 c9             	test   %rcx,%rcx
140390f12:	74 10                	je     0x140390f24
140390f14:	48 83 29 01          	subq   $0x1,(%rcx)
140390f18:	75 0a                	jne    0x140390f24
140390f1a:	ba 18 00 00 00       	mov    $0x18,%edx
140390f1f:	e8 20 a2 a8 00       	call   0x140e1b144
140390f24:	48 8d 4c 24 70       	lea    0x70(%rsp),%rcx
140390f29:	e8 32 74 e0 ff       	call   0x140198360
140390f2e:	80 7c 24 68 00       	cmpb   $0x0,0x68(%rsp)
140390f33:	74 0a                	je     0x140390f3f
140390f35:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
140390f3a:	e8 c1 c5 e0 ff       	call   0x14019d500
140390f3f:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140390f44:	e8 57 2b 00 00       	call   0x140393aa0
140390f49:	48 8d 05 90 25 c5 00 	lea    0xc52590(%rip),%rax        # 0x140fe34e0
140390f50:	49 89 06             	mov    %rax,(%r14)
140390f53:	41 c6 86 a0 00 00 00 	movb   $0x0,0xa0(%r14)
140390f5a:	00
140390f5b:	41 c6 86 38 01 00 00 	movb   $0x0,0x138(%r14)
140390f62:	00
140390f63:	41 c6 86 d0 01 00 00 	movb   $0x0,0x1d0(%r14)
140390f6a:	00
140390f6b:	49 89 ae d8 01 00 00 	mov    %rbp,0x1d8(%r14)
140390f72:	48 8b 4f 68          	mov    0x68(%rdi),%rcx
140390f76:	48 85 c9             	test   %rcx,%rcx
140390f79:	74 10                	je     0x140390f8b
140390f7b:	48 83 29 01          	subq   $0x1,(%rcx)
140390f7f:	75 0a                	jne    0x140390f8b
140390f81:	ba 18 00 00 00       	mov    $0x18,%edx
140390f86:	e8 b9 a1 a8 00       	call   0x140e1b144
140390f8b:	48 8d 4f 50          	lea    0x50(%rdi),%rcx
140390f8f:	e8 cc 73 e0 ff       	call   0x140198360
140390f94:	80 7f 48 00          	cmpb   $0x0,0x48(%rdi)
140390f98:	74 09                	je     0x140390fa3
140390f9a:	48 8d 4f 18          	lea    0x18(%rdi),%rcx
140390f9e:	e8 5d c5 e0 ff       	call   0x14019d500
140390fa3:	48 8b 1f             	mov    (%rdi),%rbx
140390fa6:	48 85 db             	test   %rbx,%rbx
140390fa9:	74 7b                	je     0x140391026
140390fab:	48 8b 77 08          	mov    0x8(%rdi),%rsi
140390faf:	48 3b de             	cmp    %rsi,%rbx
140390fb2:	74 11                	je     0x140390fc5
140390fb4:	48 8b cb             	mov    %rbx,%rcx
140390fb7:	e8 34 24 00 00       	call   0x1403933f0
140390fbc:	48 83 c3 28          	add    $0x28,%rbx
140390fc0:	48 3b de             	cmp    %rsi,%rbx
140390fc3:	75 ef                	jne    0x140390fb4
140390fc5:	4c 8b 07             	mov    (%rdi),%r8
140390fc8:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140390fcc:	49 2b c8             	sub    %r8,%rcx
140390fcf:	48 b8 67 66 66 66 66 	movabs $0x6666666666666667,%rax
140390fd6:	66 66 66
140390fd9:	48 f7 e9             	imul   %rcx
140390fdc:	48 c1 fa 04          	sar    $0x4,%rdx
140390fe0:	48 8b c2             	mov    %rdx,%rax
140390fe3:	48 c1 e8 3f          	shr    $0x3f,%rax
140390fe7:	48 03 d0             	add    %rax,%rdx
140390fea:	48 8d 14 92          	lea    (%rdx,%rdx,4),%rdx
140390fee:	48 c1 e2 03          	shl    $0x3,%rdx
140390ff2:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140390ff9:	72 18                	jb     0x140391013
140390ffb:	48 83 c2 27          	add    $0x27,%rdx
140390fff:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
140391003:	4c 2b c1             	sub    %rcx,%r8
140391006:	49 8d 40 f8          	lea    -0x8(%r8),%rax
14039100a:	48 83 f8 1f          	cmp    $0x1f,%rax
14039100e:	77 27                	ja     0x140391037
140391010:	4c 8b c1             	mov    %rcx,%r8
140391013:	49 8b c8             	mov    %r8,%rcx
140391016:	e8 29 a1 a8 00       	call   0x140e1b144
14039101b:	48 89 2f             	mov    %rbp,(%rdi)
14039101e:	48 89 6f 08          	mov    %rbp,0x8(%rdi)
140391022:	48 89 6f 10          	mov    %rbp,0x10(%rdi)
140391026:	49 8b c6             	mov    %r14,%rax
140391029:	48 81 c4 90 00 00 00 	add    $0x90,%rsp
140391030:	41 5e                	pop    %r14
140391032:	5f                   	pop    %rdi
140391033:	5e                   	pop    %rsi
140391034:	5d                   	pop    %rbp
140391035:	5b                   	pop    %rbx
140391036:	c3                   	ret
140391037:	e8 68 91 a9 00       	call   0x140e2a1a4
14039103c:	cc                   	int3
14039103d:	cc                   	int3
14039103e:	cc                   	int3
14039103f:	cc                   	int3
140391040:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140391045:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
14039104a:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
14039104f:	56                   	push   %rsi
140391050:	57                   	push   %rdi
140391051:	41 56                	push   %r14
140391053:	48 81 ec 90 00 00 00 	sub    $0x90,%rsp
14039105a:	48 8b fa             	mov    %rdx,%rdi
14039105d:	4c 8b f1             	mov    %rcx,%r14
140391060:	4c 8b 42 10          	mov    0x10(%rdx),%r8
140391064:	33 ed                	xor    %ebp,%ebp
140391066:	48 89 6a 10          	mov    %rbp,0x10(%rdx)
14039106a:	48 8b 4a 08          	mov    0x8(%rdx),%rcx
14039106e:	48 89 6a 08          	mov    %rbp,0x8(%rdx)
140391072:	48 8b 02             	mov    (%rdx),%rax
140391075:	48 89 2a             	mov    %rbp,(%rdx)
140391078:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14039107d:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
140391082:	4c 89 44 24 30       	mov    %r8,0x30(%rsp)
140391087:	48 83 c2 18          	add    $0x18,%rdx
14039108b:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
140391090:	e8 7b 19 00 00       	call   0x140392a10
140391095:	48 8b 47 68          	mov    0x68(%rdi),%rax
140391099:	48 89 6f 68          	mov    %rbp,0x68(%rdi)
14039109d:	48 89 84 24 88 00 00 	mov    %rax,0x88(%rsp)
1403910a4:	00
1403910a5:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1403910aa:	49 8b ce             	mov    %r14,%rcx
1403910ad:	e8 9e fd ff ff       	call   0x140390e50
1403910b2:	48 8d 05 37 24 c5 00 	lea    0xc52437(%rip),%rax        # 0x140fe34f0
1403910b9:	49 89 06             	mov    %rax,(%r14)
1403910bc:	48 8b 4f 68          	mov    0x68(%rdi),%rcx
1403910c0:	48 85 c9             	test   %rcx,%rcx
1403910c3:	74 10                	je     0x1403910d5
1403910c5:	48 83 29 01          	subq   $0x1,(%rcx)
1403910c9:	75 0a                	jne    0x1403910d5
1403910cb:	ba 18 00 00 00       	mov    $0x18,%edx
1403910d0:	e8 6f a0 a8 00       	call   0x140e1b144
1403910d5:	48 8d 4f 50          	lea    0x50(%rdi),%rcx
1403910d9:	e8 82 72 e0 ff       	call   0x140198360
1403910de:	80 7f 48 00          	cmpb   $0x0,0x48(%rdi)
1403910e2:	74 09                	je     0x1403910ed
1403910e4:	48 8d 4f 18          	lea    0x18(%rdi),%rcx
1403910e8:	e8 13 c4 e0 ff       	call   0x14019d500
1403910ed:	48 8b 1f             	mov    (%rdi),%rbx
1403910f0:	48 85 db             	test   %rbx,%rbx
1403910f3:	74 7d                	je     0x140391172
1403910f5:	48 8b 77 08          	mov    0x8(%rdi),%rsi
1403910f9:	48 3b de             	cmp    %rsi,%rbx
1403910fc:	74 13                	je     0x140391111
1403910fe:	66 90                	xchg   %ax,%ax
140391100:	48 8b cb             	mov    %rbx,%rcx
140391103:	e8 e8 22 00 00       	call   0x1403933f0
140391108:	48 83 c3 28          	add    $0x28,%rbx
14039110c:	48 3b de             	cmp    %rsi,%rbx
14039110f:	75 ef                	jne    0x140391100
140391111:	4c 8b 07             	mov    (%rdi),%r8
140391114:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140391118:	49 2b c8             	sub    %r8,%rcx
14039111b:	48 b8 67 66 66 66 66 	movabs $0x6666666666666667,%rax
140391122:	66 66 66
140391125:	48 f7 e9             	imul   %rcx
140391128:	48 c1 fa 04          	sar    $0x4,%rdx
14039112c:	48 8b c2             	mov    %rdx,%rax
14039112f:	48 c1 e8 3f          	shr    $0x3f,%rax
140391133:	48 03 d0             	add    %rax,%rdx
140391136:	48 8d 14 92          	lea    (%rdx,%rdx,4),%rdx
14039113a:	48 c1 e2 03          	shl    $0x3,%rdx
14039113e:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140391145:	72 18                	jb     0x14039115f
140391147:	48 83 c2 27          	add    $0x27,%rdx
14039114b:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
14039114f:	4c 2b c1             	sub    %rcx,%r8
140391152:	49 8d 40 f8          	lea    -0x8(%r8),%rax
140391156:	48 83 f8 1f          	cmp    $0x1f,%rax
14039115a:	77 31                	ja     0x14039118d
14039115c:	4c 8b c1             	mov    %rcx,%r8
14039115f:	49 8b c8             	mov    %r8,%rcx
140391162:	e8 dd 9f a8 00       	call   0x140e1b144
140391167:	48 89 2f             	mov    %rbp,(%rdi)
14039116a:	48 89 6f 08          	mov    %rbp,0x8(%rdi)
14039116e:	48 89 6f 10          	mov    %rbp,0x10(%rdi)
140391172:	49 8b c6             	mov    %r14,%rax
140391175:	4c 8d 9c 24 90 00 00 	lea    0x90(%rsp),%r11
14039117c:	00
14039117d:	49 8b 5b 30          	mov    0x30(%r11),%rbx
140391181:	49 8b 6b 38          	mov    0x38(%r11),%rbp
140391185:	49 8b e3             	mov    %r11,%rsp
140391188:	41 5e                	pop    %r14
14039118a:	5f                   	pop    %rdi
14039118b:	5e                   	pop    %rsi
14039118c:	c3                   	ret
14039118d:	e8 12 90 a9 00       	call   0x140e2a1a4
140391192:	cc                   	int3
140391193:	cc                   	int3
140391194:	cc                   	int3
140391195:	cc                   	int3
140391196:	cc                   	int3
140391197:	cc                   	int3
140391198:	cc                   	int3
140391199:	cc                   	int3
14039119a:	cc                   	int3
14039119b:	cc                   	int3
14039119c:	cc                   	int3
14039119d:	cc                   	int3
14039119e:	cc                   	int3
14039119f:	cc                   	int3
1403911a0:	48 83 ec 28          	sub    $0x28,%rsp
1403911a4:	48 8b 02             	mov    (%rdx),%rax
1403911a7:	48 b9 66 66 66 66 66 	movabs $0x666666666666666,%rcx
1403911ae:	66 66 06
1403911b1:	48 3b c1             	cmp    %rcx,%rax
1403911b4:	77 50                	ja     0x140391206
1403911b6:	48 8d 0c 80          	lea    (%rax,%rax,4),%rcx
1403911ba:	48 c1 e1 03          	shl    $0x3,%rcx
1403911be:	48 85 c9             	test   %rcx,%rcx
1403911c1:	75 07                	jne    0x1403911ca
1403911c3:	33 c0                	xor    %eax,%eax
1403911c5:	48 83 c4 28          	add    $0x28,%rsp
1403911c9:	c3                   	ret
1403911ca:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
1403911d1:	72 2a                	jb     0x1403911fd
1403911d3:	48 8d 41 27          	lea    0x27(%rcx),%rax
1403911d7:	48 3b c1             	cmp    %rcx,%rax
1403911da:	76 2a                	jbe    0x140391206
1403911dc:	48 8b c8             	mov    %rax,%rcx
1403911df:	e8 24 9f a8 00       	call   0x140e1b108
1403911e4:	48 8b c8             	mov    %rax,%rcx
1403911e7:	48 85 c0             	test   %rax,%rax
1403911ea:	74 20                	je     0x14039120c
1403911ec:	48 83 c0 27          	add    $0x27,%rax
1403911f0:	48 83 e0 e0          	and    $0xffffffffffffffe0,%rax
1403911f4:	48 89 48 f8          	mov    %rcx,-0x8(%rax)
1403911f8:	48 83 c4 28          	add    $0x28,%rsp
1403911fc:	c3                   	ret
1403911fd:	48 83 c4 28          	add    $0x28,%rsp
140391201:	e9 02 9f a8 00       	jmp    0x140e1b108
140391206:	e8 85 bf e0 ff       	call   0x14019d190
14039120b:	cc                   	int3
14039120c:	e8 93 8f a9 00       	call   0x140e2a1a4
140391211:	cc                   	int3
140391212:	cc                   	int3
140391213:	cc                   	int3
140391214:	cc                   	int3
140391215:	cc                   	int3
140391216:	cc                   	int3
140391217:	cc                   	int3
140391218:	cc                   	int3
140391219:	cc                   	int3
14039121a:	cc                   	int3
14039121b:	cc                   	int3
14039121c:	cc                   	int3
14039121d:	cc                   	int3
14039121e:	cc                   	int3
14039121f:	cc                   	int3
140391220:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140391225:	57                   	push   %rdi
140391226:	48 83 ec 20          	sub    $0x20,%rsp
14039122a:	80 79 30 00          	cmpb   $0x0,0x30(%rcx)
14039122e:	48 8b fa             	mov    %rdx,%rdi
140391231:	48 8b d9             	mov    %rcx,%rbx
140391234:	74 28                	je     0x14039125e
140391236:	e8 45 99 ea ff       	call   0x14023ab80
14039123b:	8b 47 20             	mov    0x20(%rdi),%eax
14039123e:	89 43 20             	mov    %eax,0x20(%rbx)
140391241:	8b 47 24             	mov    0x24(%rdi),%eax
140391244:	89 43 24             	mov    %eax,0x24(%rbx)
140391247:	8b 47 28             	mov    0x28(%rdi),%eax
14039124a:	89 43 28             	mov    %eax,0x28(%rbx)
14039124d:	8b 47 2c             	mov    0x2c(%rdi),%eax
140391250:	89 43 2c             	mov    %eax,0x2c(%rbx)
140391253:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140391258:	48 83 c4 20          	add    $0x20,%rsp
14039125c:	5f                   	pop    %rdi
14039125d:	c3                   	ret
14039125e:	33 c0                	xor    %eax,%eax
140391260:	0f 57 c0             	xorps  %xmm0,%xmm0
140391263:	0f 11 01             	movups %xmm0,(%rcx)
140391266:	48 89 41 10          	mov    %rax,0x10(%rcx)
14039126a:	48 89 41 18          	mov    %rax,0x18(%rcx)
14039126e:	0f 10 02             	movups (%rdx),%xmm0
140391271:	0f 11 01             	movups %xmm0,(%rcx)
140391274:	0f 10 4a 10          	movups 0x10(%rdx),%xmm1
140391278:	0f 11 49 10          	movups %xmm1,0x10(%rcx)
14039127c:	48 89 42 10          	mov    %rax,0x10(%rdx)
140391280:	48 c7 42 18 07 00 00 	movq   $0x7,0x18(%rdx)
140391287:	00
140391288:	66 89 02             	mov    %ax,(%rdx)
14039128b:	8b 42 20             	mov    0x20(%rdx),%eax
14039128e:	89 41 20             	mov    %eax,0x20(%rcx)
140391291:	8b 42 24             	mov    0x24(%rdx),%eax
140391294:	89 41 24             	mov    %eax,0x24(%rcx)
140391297:	8b 42 28             	mov    0x28(%rdx),%eax
14039129a:	89 41 28             	mov    %eax,0x28(%rcx)
14039129d:	8b 42 2c             	mov    0x2c(%rdx),%eax
1403912a0:	89 41 2c             	mov    %eax,0x2c(%rcx)
1403912a3:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1403912a8:	c6 41 30 01          	movb   $0x1,0x30(%rcx)
1403912ac:	48 83 c4 20          	add    $0x20,%rsp
1403912b0:	5f                   	pop    %rdi
1403912b1:	c3                   	ret
1403912b2:	cc                   	int3
1403912b3:	cc                   	int3
1403912b4:	cc                   	int3
1403912b5:	cc                   	int3
1403912b6:	cc                   	int3
1403912b7:	cc                   	int3
1403912b8:	cc                   	int3
1403912b9:	cc                   	int3
1403912ba:	cc                   	int3
1403912bb:	cc                   	int3
1403912bc:	cc                   	int3
1403912bd:	cc                   	int3
1403912be:	cc                   	int3
1403912bf:	cc                   	int3
1403912c0:	48 3b ca             	cmp    %rdx,%rcx
1403912c3:	74 2b                	je     0x1403912f0
1403912c5:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1403912ca:	57                   	push   %rdi
1403912cb:	48 83 ec 20          	sub    $0x20,%rsp
1403912cf:	48 8b fa             	mov    %rdx,%rdi
1403912d2:	48 8b d9             	mov    %rcx,%rbx
1403912d5:	48 8b cb             	mov    %rbx,%rcx
1403912d8:	e8 c3 1f 00 00       	call   0x1403932a0
1403912dd:	48 83 c3 70          	add    $0x70,%rbx
1403912e1:	48 3b df             	cmp    %rdi,%rbx
1403912e4:	75 ef                	jne    0x1403912d5
1403912e6:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1403912eb:	48 83 c4 20          	add    $0x20,%rsp
1403912ef:	5f                   	pop    %rdi
1403912f0:	c3                   	ret
1403912f1:	cc                   	int3
1403912f2:	cc                   	int3
1403912f3:	cc                   	int3
1403912f4:	cc                   	int3
1403912f5:	cc                   	int3
1403912f6:	cc                   	int3
1403912f7:	cc                   	int3
1403912f8:	cc                   	int3
1403912f9:	cc                   	int3
1403912fa:	cc                   	int3
1403912fb:	cc                   	int3
1403912fc:	cc                   	int3
1403912fd:	cc                   	int3
1403912fe:	cc                   	int3
1403912ff:	cc                   	int3
140391300:	48 3b ca             	cmp    %rdx,%rcx
140391303:	74 2b                	je     0x140391330
140391305:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14039130a:	57                   	push   %rdi
14039130b:	48 83 ec 20          	sub    $0x20,%rsp
14039130f:	48 8b fa             	mov    %rdx,%rdi
140391312:	48 8b d9             	mov    %rcx,%rbx
140391315:	48 8b cb             	mov    %rbx,%rcx
140391318:	e8 d3 20 00 00       	call   0x1403933f0
14039131d:	48 83 c3 28          	add    $0x28,%rbx
140391321:	48 3b df             	cmp    %rdi,%rbx
140391324:	75 ef                	jne    0x140391315
140391326:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14039132b:	48 83 c4 20          	add    $0x20,%rsp
14039132f:	5f                   	pop    %rdi
140391330:	c3                   	ret
140391331:	cc                   	int3