140663093:	49 0f af c9          	imul   %r9,%rcx
140663097:	48 8b 75 b0          	mov    -0x50(%rbp),%rsi
14066309b:	48 8b 56 30          	mov    0x30(%rsi),%rdx
14066309f:	48 23 d1             	and    %rcx,%rdx
1406630a2:	48 03 d2             	add    %rdx,%rdx
1406630a5:	48 8b 4e 18          	mov    0x18(%rsi),%rcx
1406630a9:	48 8b 44 d1 08       	mov    0x8(%rcx,%rdx,8),%rax
1406630ae:	48 3b 46 08          	cmp    0x8(%rsi),%rax
1406630b2:	74 1d                	je     0x1406630d1
1406630b4:	48 8b 0c d1          	mov    (%rcx,%rdx,8),%rcx
1406630b8:	48 3b 78 10          	cmp    0x10(%rax),%rdi
1406630bc:	74 15                	je     0x1406630d3
1406630be:	66 90                	xchg   %ax,%ax
1406630c0:	48 3b c1             	cmp    %rcx,%rax
1406630c3:	74 0c                	je     0x1406630d1
1406630c5:	48 8b 40 08          	mov    0x8(%rax),%rax
1406630c9:	48 3b 78 10          	cmp    0x10(%rax),%rdi
1406630cd:	75 f1                	jne    0x1406630c0
1406630cf:	eb 02                	jmp    0x1406630d3
1406630d1:	33 c0                	xor    %eax,%eax
1406630d3:	48 85 c0             	test   %rax,%rax
1406630d6:	0f 85 ec 00 00 00    	jne    0x1406631c8
1406630dc:	48 8b 4f 38          	mov    0x38(%rdi),%rcx
1406630e0:	e8 bb 73 0e 00       	call   0x14074a4a0
1406630e5:	48 8d 55 e8          	lea    -0x18(%rbp),%rdx
1406630e9:	48 8b c8             	mov    %rax,%rcx
1406630ec:	e8 3f ad 0e 00       	call   0x14074de30
1406630f1:	90                   	nop
1406630f2:	48 8d 55 e8          	lea    -0x18(%rbp),%rdx
1406630f6:	48 83 7d 00 0f       	cmpq   $0xf,0x0(%rbp)
1406630fb:	48 0f 47 55 e8       	cmova  -0x18(%rbp),%rdx
140663100:	48 8d 0d a1 62 9b 00 	lea    0x9b62a1(%rip),%rcx        # 0x1410193a8
140663107:	e8 04 48 20 00       	call   0x140867910
14066310c:	48 c7 44 24 20 00 00 	movq   $0x0,0x20(%rsp)
140663113:	00 00
140663115:	45 33 c9             	xor    %r9d,%r9d
140663118:	45 33 c0             	xor    %r8d,%r8d
14066311b:	48 8b d0             	mov    %rax,%rdx
14066311e:	48 8b cf             	mov    %rdi,%rcx
140663121:	e8 0a 75 12 00       	call   0x14078a630
140663126:	4c 8d 44 24 38       	lea    0x38(%rsp),%r8
14066312b:	48 8d 55 d8          	lea    -0x28(%rbp),%rdx
14066312f:	48 8b ce             	mov    %rsi,%rcx
140663132:	e8 a9 52 ff ff       	call   0x1406583e0
140663137:	48 8b 4d b8          	mov    -0x48(%rbp),%rcx
14066313b:	e8 00 96 ff ff       	call   0x14065c740
140663140:	4c 8b 74 24 30       	mov    0x30(%rsp),%r14
140663145:	49 8b d6             	mov    %r14,%rdx
140663148:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
14066314d:	e8 8e d5 13 00       	call   0x1407a06e0
140663152:	90                   	nop
140663153:	48 8b 55 00          	mov    0x0(%rbp),%rdx
140663157:	48 83 fa 0f          	cmp    $0xf,%rdx
14066315b:	76 31                	jbe    0x14066318e
14066315d:	48 ff c2             	inc    %rdx
140663160:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
140663164:	48 8b c1             	mov    %rcx,%rax
140663167:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14066316e:	72 19                	jb     0x140663189
140663170:	48 83 c2 27          	add    $0x27,%rdx
140663174:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
140663178:	48 2b c1             	sub    %rcx,%rax
14066317b:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
14066317f:	48 83 f8 1f          	cmp    $0x1f,%rax
140663183:	0f 87 a7 02 00 00    	ja     0x140663430
140663189:	e8 b6 7f 7b 00       	call   0x140e1b144
14066318e:	49 b9 b3 01 00 00 00 	movabs $0x100000001b3,%r9
140663195:	01 00 00
140663198:	48 8b 43 10          	mov    0x10(%rbx),%rax
14066319c:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
1406631a0:	74 2d                	je     0x1406631cf
1406631a2:	48 8b 43 08          	mov    0x8(%rbx),%rax
1406631a6:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
1406631aa:	75 17                	jne    0x1406631c3
1406631ac:	0f 1f 40 00          	nopl   0x0(%rax)
1406631b0:	48 3b 58 10          	cmp    0x10(%rax),%rbx
1406631b4:	75 0d                	jne    0x1406631c3
1406631b6:	48 8b d8             	mov    %rax,%rbx
1406631b9:	48 8b 40 08          	mov    0x8(%rax),%rax
1406631bd:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
1406631c1:	74 ed                	je     0x1406631b0
1406631c3:	48 8b d8             	mov    %rax,%rbx
1406631c6:	eb 27                	jmp    0x1406631ef
1406631c8:	4c 8b 74 24 30       	mov    0x30(%rsp),%r14
1406631cd:	eb c9                	jmp    0x140663198
1406631cf:	48 8b d8             	mov    %rax,%rbx
1406631d2:	48 8b 08             	mov    (%rax),%rcx
1406631d5:	80 79 19 00          	cmpb   $0x0,0x19(%rcx)
1406631d9:	75 14                	jne    0x1406631ef
1406631db:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1406631e0:	48 8b d9             	mov    %rcx,%rbx
1406631e3:	48 8b 01             	mov    (%rcx),%rax
1406631e6:	48 8b c8             	mov    %rax,%rcx
1406631e9:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
1406631ed:	74 f1                	je     0x1406631e0
1406631ef:	80 7b 19 00          	cmpb   $0x0,0x19(%rbx)
1406631f3:	0f 84 d7 fd ff ff    	je     0x140662fd0
1406631f9:	45 33 e4             	xor    %r12d,%r12d
1406631fc:	48 b9 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rcx
140663203:	9c f2 cb
140663206:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14066320b:	48 8b 1b             	mov    (%rbx),%rbx
14066320e:	48 8b 1b             	mov    (%rbx),%rbx
140663211:	80 7b 19 00          	cmpb   $0x0,0x19(%rbx)
140663215:	0f 85 58 01 00 00    	jne    0x140663373
14066321b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140663220:	48 8b 53 40          	mov    0x40(%rbx),%rdx
140663224:	48 8b c2             	mov    %rdx,%rax
140663227:	48 c1 e8 08          	shr    $0x8,%rax
14066322b:	44 0f b6 c0          	movzbl %al,%r8d
14066322f:	0f b6 c2             	movzbl %dl,%eax
140663232:	48 33 c1             	xor    %rcx,%rax
140663235:	49 0f af c1          	imul   %r9,%rax
140663239:	4c 33 c0             	xor    %rax,%r8
14066323c:	4d 0f af c1          	imul   %r9,%r8
140663240:	48 8b c2             	mov    %rdx,%rax
140663243:	48 c1 e8 10          	shr    $0x10,%rax
140663247:	0f b6 c8             	movzbl %al,%ecx
14066324a:	4c 33 c1             	xor    %rcx,%r8
14066324d:	4d 0f af c1          	imul   %r9,%r8
140663251:	48 8b c2             	mov    %rdx,%rax
140663254:	48 c1 e8 18          	shr    $0x18,%rax
140663258:	0f b6 c8             	movzbl %al,%ecx
14066325b:	4c 33 c1             	xor    %rcx,%r8
14066325e:	4d 0f af c1          	imul   %r9,%r8
140663262:	48 8b c2             	mov    %rdx,%rax
140663265:	48 c1 e8 20          	shr    $0x20,%rax
140663269:	0f b6 c8             	movzbl %al,%ecx
14066326c:	4c 33 c1             	xor    %rcx,%r8
14066326f:	4d 0f af c1          	imul   %r9,%r8
140663273:	48 8b c2             	mov    %rdx,%rax
140663276:	48 c1 e8 28          	shr    $0x28,%rax
14066327a:	0f b6 c8             	movzbl %al,%ecx
14066327d:	4c 33 c1             	xor    %rcx,%r8
140663280:	4d 0f af c1          	imul   %r9,%r8
140663284:	48 8b c2             	mov    %rdx,%rax
140663287:	48 c1 e8 30          	shr    $0x30,%rax
14066328b:	0f b6 c8             	movzbl %al,%ecx
14066328e:	4c 33 c1             	xor    %rcx,%r8
140663291:	4d 0f af c1          	imul   %r9,%r8
140663295:	48 8b c2             	mov    %rdx,%rax
140663298:	48 c1 e8 38          	shr    $0x38,%rax
14066329c:	4c 33 c0             	xor    %rax,%r8
14066329f:	4d 0f af c1          	imul   %r9,%r8
1406632a3:	4d 23 46 40          	and    0x40(%r14),%r8
1406632a7:	4d 03 c0             	add    %r8,%r8
1406632aa:	49 8b 4e 28          	mov    0x28(%r14),%rcx
1406632ae:	4a 8b 44 c1 08       	mov    0x8(%rcx,%r8,8),%rax
1406632b3:	49 3b 46 18          	cmp    0x18(%r14),%rax
1406632b7:	74 1b                	je     0x1406632d4
1406632b9:	4a 8b 0c c1          	mov    (%rcx,%r8,8),%rcx
1406632bd:	48 3b 50 10          	cmp    0x10(%rax),%rdx
1406632c1:	74 14                	je     0x1406632d7
1406632c3:	48 3b c1             	cmp    %rcx,%rax
1406632c6:	74 0c                	je     0x1406632d4
1406632c8:	48 8b 40 08          	mov    0x8(%rax),%rax
1406632cc:	48 3b 50 10          	cmp    0x10(%rax),%rdx
1406632d0:	75 f1                	jne    0x1406632c3
1406632d2:	eb 03                	jmp    0x1406632d7
1406632d4:	49 8b c4             	mov    %r12,%rax
1406632d7:	48 85 c0             	test   %rax,%rax
1406632da:	75 32                	jne    0x14066330e
1406632dc:	49 8b ce             	mov    %r14,%rcx
1406632df:	e8 ac 08 00 00       	call   0x140663b90
1406632e4:	48 85 c0             	test   %rax,%rax
1406632e7:	74 1b                	je     0x140663304
1406632e9:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
1406632ee:	45 33 c9             	xor    %r9d,%r9d
1406632f1:	45 33 c0             	xor    %r8d,%r8d
1406632f4:	48 8d 15 dd 60 9b 00 	lea    0x9b60dd(%rip),%rdx        # 0x1410193d8
1406632fb:	48 8b 4b 40          	mov    0x40(%rbx),%rcx
1406632ff:	e8 2c 73 12 00       	call   0x14078a630
140663304:	49 b9 b3 01 00 00 00 	movabs $0x100000001b3,%r9
14066330b:	01 00 00
14066330e:	48 8b 43 10          	mov    0x10(%rbx),%rax
140663312:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
140663316:	74 22                	je     0x14066333a
140663318:	48 8b 43 08          	mov    0x8(%rbx),%rax
14066331c:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
140663320:	75 13                	jne    0x140663335
140663322:	48 3b 58 10          	cmp    0x10(%rax),%rbx
140663326:	75 0d                	jne    0x140663335
140663328:	48 8b d8             	mov    %rax,%rbx
14066332b:	48 8b 40 08          	mov    0x8(%rax),%rax
14066332f:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
140663333:	74 ed                	je     0x140663322
140663335:	48 8b d8             	mov    %rax,%rbx
140663338:	eb 25                	jmp    0x14066335f
14066333a:	48 8b d8             	mov    %rax,%rbx
14066333d:	48 8b 08             	mov    (%rax),%rcx
140663340:	80 79 19 00          	cmpb   $0x0,0x19(%rcx)
140663344:	75 19                	jne    0x14066335f
140663346:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
14066334d:	00 00 00
140663350:	48 8b d9             	mov    %rcx,%rbx
140663353:	48 8b 01             	mov    (%rcx),%rax
140663356:	48 8b c8             	mov    %rax,%rcx
140663359:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
14066335d:	74 f1                	je     0x140663350
14066335f:	80 7b 19 00          	cmpb   $0x0,0x19(%rbx)
140663363:	48 b9 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rcx
14066336a:	9c f2 cb
14066336d:	0f 84 ad fe ff ff    	je     0x140663220
140663373:	48 8b 4c 24 68       	mov    0x68(%rsp),%rcx
140663378:	48 85 c9             	test   %rcx,%rcx
14066337b:	74 48                	je     0x1406633c5
14066337d:	48 8b 44 24 78       	mov    0x78(%rsp),%rax
140663382:	48 2b c1             	sub    %rcx,%rax
140663385:	48 c1 f8 03          	sar    $0x3,%rax
140663389:	48 8d 14 c5 00 00 00 	lea    0x0(,%rax,8),%rdx
140663390:	00
140663391:	48 8b c1             	mov    %rcx,%rax
140663394:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14066339b:	72 15                	jb     0x1406633b2
14066339d:	48 83 c2 27          	add    $0x27,%rdx
1406633a1:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
1406633a5:	48 2b c1             	sub    %rcx,%rax
1406633a8:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
1406633ac:	48 83 f8 1f          	cmp    $0x1f,%rax
1406633b0:	77 62                	ja     0x140663414
1406633b2:	e8 8d 7d 7b 00       	call   0x140e1b144
1406633b7:	4c 89 64 24 68       	mov    %r12,0x68(%rsp)
1406633bc:	0f 57 c0             	xorps  %xmm0,%xmm0
1406633bf:	66 0f 7f 44 24 70    	movdqa %xmm0,0x70(%rsp)
1406633c5:	48 8b 54 24 58       	mov    0x58(%rsp),%rdx
1406633ca:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
1406633cf:	e8 bc 27 d4 ff       	call   0x1403a5b90
1406633d4:	ba 30 00 00 00       	mov    $0x30,%edx
1406633d9:	48 8b 4c 24 58       	mov    0x58(%rsp),%rcx
1406633de:	e8 61 7d 7b 00       	call   0x140e1b144
1406633e3:	90                   	nop
1406633e4:	49 8b c6             	mov    %r14,%rax
1406633e7:	48 8b 4d 08          	mov    0x8(%rbp),%rcx
1406633eb:	48 33 cc             	xor    %rsp,%rcx
1406633ee:	e8 0d 81 7b 00       	call   0x140e1b500
1406633f3:	4c 8d 9c 24 10 01 00 	lea    0x110(%rsp),%r11
1406633fa:	00
1406633fb:	49 8b 5b 38          	mov    0x38(%r11),%rbx
1406633ff:	49 8b 73 40          	mov    0x40(%r11),%rsi
140663403:	49 8b 7b 48          	mov    0x48(%r11),%rdi
140663407:	49 8b e3             	mov    %r11,%rsp
14066340a:	41 5f                	pop    %r15
14066340c:	41 5e                	pop    %r14
14066340e:	41 5d                	pop    %r13
140663410:	41 5c                	pop    %r12
140663412:	5d                   	pop    %rbp
140663413:	c3                   	ret
140663414:	e8 8b 6d 7c 00       	call   0x140e2a1a4
140663419:	90                   	nop
14066341a:	b9 02 00 00 00       	mov    $0x2,%ecx
14066341f:	e8 dc 72 12 00       	call   0x14078a700
140663424:	90                   	nop
140663425:	b9 02 00 00 00       	mov    $0x2,%ecx
14066342a:	e8 d1 72 12 00       	call   0x14078a700
14066342f:	90                   	nop
140663430:	e8 6f 6d 7c 00       	call   0x140e2a1a4
140663435:	cc                   	int3
140663436:	cc                   	int3
140663437:	cc                   	int3
140663438:	cc                   	int3
140663439:	cc                   	int3
14066343a:	cc                   	int3
14066343b:	cc                   	int3
14066343c:	cc                   	int3
14066343d:	cc                   	int3
14066343e:	cc                   	int3
14066343f:	cc                   	int3
140663440:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140663445:	57                   	push   %rdi
140663446:	48 83 ec 20          	sub    $0x20,%rsp
14066344a:	8b fa                	mov    %edx,%edi
14066344c:	48 8b d9             	mov    %rcx,%rbx
14066344f:	48 81 c1 d0 00 00 00 	add    $0xd0,%rcx
140663456:	e8 15 71 f4 ff       	call   0x1405aa570
14066345b:	48 8d 8b 90 00 00 00 	lea    0x90(%rbx),%rcx
140663462:	e8 49 70 bd ff       	call   0x14023a4b0
140663467:	48 8d 4b 50          	lea    0x50(%rbx),%rcx
14066346b:	e8 40 70 bd ff       	call   0x14023a4b0
140663470:	48 8d 4b 10          	lea    0x10(%rbx),%rcx
140663474:	e8 37 70 bd ff       	call   0x14023a4b0
140663479:	48 8d 05 a8 53 9b 00 	lea    0x9b53a8(%rip),%rax        # 0x141018828
140663480:	48 89 03             	mov    %rax,(%rbx)
140663483:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140663487:	48 85 c9             	test   %rcx,%rcx
14066348a:	74 20                	je     0x1406634ac
14066348c:	8b 41 10             	mov    0x10(%rcx),%eax
14066348f:	ff c8                	dec    %eax
140663491:	89 41 10             	mov    %eax,0x10(%rcx)
140663494:	85 c0                	test   %eax,%eax
140663496:	7f 14                	jg     0x1406634ac
140663498:	78 33                	js     0x1406634cd
14066349a:	48 8b 01             	mov    (%rcx),%rax
14066349d:	ba 01 00 00 00       	mov    $0x1,%edx
1406634a2:	48 8b 00             	mov    (%rax),%rax
1406634a5:	ff 15 75 05 92 00    	call   *0x920575(%rip)        # 0x140f83a20
1406634ab:	90                   	nop
1406634ac:	40 f6 c7 01          	test   $0x1,%dil
1406634b0:	74 0d                	je     0x1406634bf
1406634b2:	ba 10 01 00 00       	mov    $0x110,%edx
1406634b7:	48 8b cb             	mov    %rbx,%rcx
1406634ba:	e8 85 7c 7b 00       	call   0x140e1b144
1406634bf:	48 8b c3             	mov    %rbx,%rax
1406634c2:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1406634c7:	48 83 c4 20          	add    $0x20,%rsp
1406634cb:	5f                   	pop    %rdi
1406634cc:	c3                   	ret
1406634cd:	b9 02 00 00 00       	mov    $0x2,%ecx
1406634d2:	e8 29 72 12 00       	call   0x14078a700
1406634d7:	cc                   	int3
1406634d8:	cc                   	int3
1406634d9:	cc                   	int3
1406634da:	cc                   	int3
1406634db:	cc                   	int3
1406634dc:	cc                   	int3
1406634dd:	cc                   	int3
1406634de:	cc                   	int3
1406634df:	cc                   	int3
1406634e0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1406634e5:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
1406634ea:	57                   	push   %rdi
1406634eb:	48 83 ec 20          	sub    $0x20,%rsp
1406634ef:	48 8b e9             	mov    %rcx,%rbp
1406634f2:	48 8b fa             	mov    %rdx,%rdi
1406634f5:	48 83 c1 50          	add    $0x50,%rcx
1406634f9:	e8 42 92 ff ff       	call   0x14065c740
1406634fe:	48 8b 7f 08          	mov    0x8(%rdi),%rdi
140663502:	48 8b 1f             	mov    (%rdi),%rbx
140663505:	48 3b df             	cmp    %rdi,%rbx
140663508:	74 43                	je     0x14066354d
14066350a:	48 89 74 24 30       	mov    %rsi,0x30(%rsp)
14066350f:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
140663514:	0f 1f 40 00          	nopl   0x0(%rax)
140663518:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14066351f:	00
140663520:	48 8b 73 10          	mov    0x10(%rbx),%rsi
140663524:	48 8d 8d 90 00 00 00 	lea    0x90(%rbp),%rcx
14066352b:	e8 10 92 ff ff       	call   0x14065c740
140663530:	48 8b d5             	mov    %rbp,%rdx
140663533:	48 8b ce             	mov    %rsi,%rcx
140663536:	e8 a5 d1 13 00       	call   0x1407a06e0
14066353b:	48 8b 1b             	mov    (%rbx),%rbx
14066353e:	48 3b df             	cmp    %rdi,%rbx
140663541:	75 dd                	jne    0x140663520
140663543:	4c 8b 74 24 38       	mov    0x38(%rsp),%r14
140663548:	48 8b 74 24 30       	mov    0x30(%rsp),%rsi
14066354d:	48 83 7d 60 00       	cmpq   $0x0,0x60(%rbp)
140663552:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140663557:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
14066355c:	0f 95 c0             	setne  %al
14066355f:	48 83 c4 20          	add    $0x20,%rsp