1402a720e:	45 33 c0             	xor    %r8d,%r8d
1402a7211:	0f 1f 40 00          	nopl   0x0(%rax)
1402a7215:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)
1402a721c:	00 00 00 00
1402a7220:	4a 8b 14 10          	mov    (%rax,%r10,1),%rdx
1402a7224:	48 8d 40 08          	lea    0x8(%rax),%rax
1402a7228:	33 c9                	xor    %ecx,%ecx
1402a722a:	49 23 d1             	and    %r9,%rdx
1402a722d:	49 03 d0             	add    %r8,%rdx
1402a7230:	48 01 50 f8          	add    %rdx,-0x8(%rax)
1402a7234:	49 3b d0             	cmp    %r8,%rdx
1402a7237:	0f 92 c1             	setb   %cl
1402a723a:	48 39 50 f8          	cmp    %rdx,-0x8(%rax)
1402a723e:	4c 8b c1             	mov    %rcx,%r8
1402a7241:	49 83 d0 00          	adc    $0x0,%r8
1402a7245:	48 83 eb 01          	sub    $0x1,%rbx
1402a7249:	75 d5                	jne    0x1402a7220
1402a724b:	4c 8b 64 24 60       	mov    0x60(%rsp),%r12
1402a7250:	b8 01 00 00 00       	mov    $0x1,%eax
1402a7255:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
1402a725a:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
1402a725f:	45 89 6f 08          	mov    %r13d,0x8(%r15)
1402a7263:	41 c7 47 10 00 00 00 	movl   $0x0,0x10(%r15)
1402a726a:	00
1402a726b:	48 83 c4 20          	add    $0x20,%rsp
1402a726f:	41 5f                	pop    %r15
1402a7271:	41 5e                	pop    %r14
1402a7273:	41 5d                	pop    %r13
1402a7275:	5e                   	pop    %rsi
1402a7276:	5b                   	pop    %rbx
1402a7277:	c3                   	ret
1402a7278:	cc                   	int3
1402a7279:	cc                   	int3
1402a727a:	cc                   	int3
1402a727b:	cc                   	int3
1402a727c:	cc                   	int3
1402a727d:	cc                   	int3
1402a727e:	cc                   	int3
1402a727f:	cc                   	int3
1402a7280:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1402a7285:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1402a728a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1402a728f:	57                   	push   %rdi
1402a7290:	b8 30 00 00 00       	mov    $0x30,%eax
1402a7295:	e8 46 33 05 00       	call   0x1402fa5e0
1402a729a:	48 2b e0             	sub    %rax,%rsp
1402a729d:	48 8b f9             	mov    %rcx,%rdi
1402a72a0:	49 8b f1             	mov    %r9,%rsi
1402a72a3:	49 8b c9             	mov    %r9,%rcx
1402a72a6:	49 8b e8             	mov    %r8,%rbp
1402a72a9:	48 8b da             	mov    %rdx,%rbx
1402a72ac:	e8 4f 4b f8 ff       	call   0x14022be00
1402a72b1:	85 c0                	test   %eax,%eax
1402a72b3:	74 24                	je     0x1402a72d9
1402a72b5:	ba 6b 00 00 00       	mov    $0x6b,%edx
1402a72ba:	c7 44 24 20 d7 00 00 	movl   $0xd7,0x20(%rsp)
1402a72c1:	00
1402a72c2:	4c 8d 0d a7 b6 0e 00 	lea    0xeb6a7(%rip),%r9        # 0x140392970
1402a72c9:	8d 4a 98             	lea    -0x68(%rdx),%ecx
1402a72cc:	44 8d 42 fc          	lea    -0x4(%rdx),%r8d
1402a72d0:	e8 cb a0 f7 ff       	call   0x1402213a0
1402a72d5:	33 c0                	xor    %eax,%eax
1402a72d7:	eb 6f                	jmp    0x1402a7348
1402a72d9:	48 63 4e 08          	movslq 0x8(%rsi),%rcx
1402a72dd:	48 8b 06             	mov    (%rsi),%rax
1402a72e0:	48 83 7c c8 f8 00    	cmpq   $0x0,-0x8(%rax,%rcx,8)
1402a72e6:	75 23                	jne    0x1402a730b
1402a72e8:	ba 6b 00 00 00       	mov    $0x6b,%edx
1402a72ed:	c7 44 24 20 e1 00 00 	movl   $0xe1,0x20(%rsp)
1402a72f4:	00
1402a72f5:	4c 8d 0d 74 b6 0e 00 	lea    0xeb674(%rip),%r9        # 0x140392970
1402a72fc:	44 8b c2             	mov    %edx,%r8d
1402a72ff:	8d 4a 98             	lea    -0x68(%rdx),%ecx
1402a7302:	e8 99 a0 f7 ff       	call   0x1402213a0
1402a7307:	33 c0                	xor    %eax,%eax
1402a7309:	eb 3d                	jmp    0x1402a7348
1402a730b:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
1402a7310:	4c 8b ce             	mov    %rsi,%r9
1402a7313:	4c 8b c5             	mov    %rbp,%r8
1402a7316:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1402a731b:	48 8b d3             	mov    %rbx,%rdx
1402a731e:	48 8b cf             	mov    %rdi,%rcx
1402a7321:	e8 3a 00 00 00       	call   0x1402a7360
1402a7326:	8b f0                	mov    %eax,%esi
1402a7328:	85 c0                	test   %eax,%eax
1402a732a:	74 1a                	je     0x1402a7346
1402a732c:	48 85 ff             	test   %rdi,%rdi
1402a732f:	74 08                	je     0x1402a7339
1402a7331:	48 8b cf             	mov    %rdi,%rcx
1402a7334:	e8 57 53 f8 ff       	call   0x14022c690
1402a7339:	48 85 db             	test   %rbx,%rbx
1402a733c:	74 08                	je     0x1402a7346
1402a733e:	48 8b cb             	mov    %rbx,%rcx
1402a7341:	e8 4a 53 f8 ff       	call   0x14022c690
1402a7346:	8b c6                	mov    %esi,%eax
1402a7348:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1402a734d:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
1402a7352:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
1402a7357:	48 83 c4 30          	add    $0x30,%rsp
1402a735b:	5f                   	pop    %rdi
1402a735c:	c3                   	ret
1402a735d:	cc                   	int3
1402a735e:	cc                   	int3
1402a735f:	cc                   	int3
1402a7360:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
1402a7365:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
1402a736a:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
1402a736f:	53                   	push   %rbx
1402a7370:	55                   	push   %rbp
1402a7371:	56                   	push   %rsi
1402a7372:	41 54                	push   %r12
1402a7374:	41 56                	push   %r14
1402a7376:	41 57                	push   %r15
1402a7378:	b8 78 00 00 00       	mov    $0x78,%eax
1402a737d:	e8 5e 32 05 00       	call   0x1402fa5e0
1402a7382:	48 2b e0             	sub    %rax,%rsp
1402a7385:	4c 8b b4 24 d0 00 00 	mov    0xd0(%rsp),%r14
1402a738c:	00
1402a738d:	48 8b e9             	mov    %rcx,%rbp
1402a7390:	49 8b ce             	mov    %r14,%rcx
1402a7393:	49 8b d9             	mov    %r9,%rbx
1402a7396:	49 8b f0             	mov    %r8,%rsi
1402a7399:	e8 52 5f fd ff       	call   0x14027d2f0
1402a739e:	48 85 ed             	test   %rbp,%rbp
1402a73a1:	75 0b                	jne    0x1402a73ae
1402a73a3:	49 8b ce             	mov    %r14,%rcx
1402a73a6:	e8 a5 5c fd ff       	call   0x14027d050
1402a73ab:	48 8b e8             	mov    %rax,%rbp
1402a73ae:	48 89 7c 24 70       	mov    %rdi,0x70(%rsp)
1402a73b3:	49 8b ce             	mov    %r14,%rcx
1402a73b6:	4c 89 6c 24 68       	mov    %r13,0x68(%rsp)
1402a73bb:	e8 90 5c fd ff       	call   0x14027d050
1402a73c0:	49 8b ce             	mov    %r14,%rcx
1402a73c3:	4c 8b f8             	mov    %rax,%r15
1402a73c6:	e8 85 5c fd ff       	call   0x14027d050
1402a73cb:	49 8b ce             	mov    %r14,%rcx
1402a73ce:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
1402a73d3:	4c 8b e0             	mov    %rax,%r12
1402a73d6:	e8 75 5c fd ff       	call   0x14027d050
1402a73db:	4c 8b f0             	mov    %rax,%r14
1402a73de:	48 85 c0             	test   %rax,%rax
1402a73e1:	0f 84 c7 03 00 00    	je     0x1402a77ae
1402a73e7:	48 8b d3             	mov    %rbx,%rdx
1402a73ea:	48 8b c8             	mov    %rax,%rcx
1402a73ed:	e8 0e 47 f8 ff       	call   0x14022bb00
1402a73f2:	48 85 c0             	test   %rax,%rax
1402a73f5:	0f 84 b3 03 00 00    	je     0x1402a77ae
1402a73fb:	49 8b 3e             	mov    (%r14),%rdi
1402a73fe:	49 63 5e 08          	movslq 0x8(%r14),%rbx
1402a7402:	48 8b 4c df f8       	mov    -0x8(%rdi,%rbx,8),%rcx
1402a7407:	e8 d4 4b f8 ff       	call   0x14022bfe0
1402a740c:	41 bd 40 00 00 00    	mov    $0x40,%r13d
1402a7412:	44 8b c8             	mov    %eax,%r9d
1402a7415:	44 2b e8             	sub    %eax,%r13d
1402a7418:	44 89 6c 24 24       	mov    %r13d,0x24(%rsp)
1402a741d:	41 81 e1 3f 00 00 80 	and    $0x8000003f,%r9d
1402a7424:	7d 0a                	jge    0x1402a7430
1402a7426:	41 ff c9             	dec    %r9d
1402a7429:	41 83 c9 c0          	or     $0xffffffc0,%r9d
1402a742d:	41 ff c1             	inc    %r9d
1402a7430:	4d 63 d9             	movslq %r9d,%r11
1402a7433:	45 33 c0             	xor    %r8d,%r8d
1402a7436:	49 f7 db             	neg    %r11
1402a7439:	49 8b c3             	mov    %r11,%rax
1402a743c:	48 c1 e8 08          	shr    $0x8,%rax
1402a7440:	4c 0b d8             	or     %rax,%r11
1402a7443:	48 85 db             	test   %rbx,%rbx
1402a7446:	7e 30                	jle    0x1402a7478
1402a7448:	45 33 d2             	xor    %r10d,%r10d
1402a744b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1402a7450:	4a 8b 14 d7          	mov    (%rdi,%r10,8),%rdx
1402a7454:	41 8b cd             	mov    %r13d,%ecx
1402a7457:	48 8b c2             	mov    %rdx,%rax
1402a745a:	48 d3 e0             	shl    %cl,%rax
1402a745d:	41 8b c9             	mov    %r9d,%ecx
1402a7460:	49 0b c0             	or     %r8,%rax
1402a7463:	4c 8b c2             	mov    %rdx,%r8
1402a7466:	49 d3 e8             	shr    %cl,%r8
1402a7469:	4a 89 04 d7          	mov    %rax,(%rdi,%r10,8)
1402a746d:	4d 23 c3             	and    %r11,%r8
1402a7470:	49 ff c2             	inc    %r10
1402a7473:	4c 3b d3             	cmp    %rbx,%r10
1402a7476:	7c d8                	jl     0x1402a7450
1402a7478:	45 8b c5             	mov    %r13d,%r8d
1402a747b:	41 c7 46 10 00 00 00 	movl   $0x0,0x10(%r14)
1402a7482:	00
1402a7483:	48 8b d6             	mov    %rsi,%rdx
1402a7486:	49 8b cc             	mov    %r12,%rcx
1402a7489:	e8 12 f2 fd ff       	call   0x1402866a0
1402a748e:	85 c0                	test   %eax,%eax
1402a7490:	0f 84 18 03 00 00    	je     0x1402a77ae
1402a7496:	41 8b 76 08          	mov    0x8(%r14),%esi
1402a749a:	49 63 5c 24 08       	movslq 0x8(%r12),%rbx
1402a749f:	89 b4 24 b0 00 00 00 	mov    %esi,0xb0(%rsp)
1402a74a6:	3b de                	cmp    %esi,%ebx
1402a74a8:	7f 38                	jg     0x1402a74e2
1402a74aa:	8d 56 01             	lea    0x1(%rsi),%edx
1402a74ad:	49 8b cc             	mov    %r12,%rcx
1402a74b0:	e8 4b 53 f8 ff       	call   0x14022c800
1402a74b5:	48 85 c0             	test   %rax,%rax
1402a74b8:	0f 84 f0 02 00 00    	je     0x1402a77ae
1402a74be:	8b c6                	mov    %esi,%eax
1402a74c0:	33 d2                	xor    %edx,%edx
1402a74c2:	2b c3                	sub    %ebx,%eax
1402a74c4:	ff c0                	inc    %eax
1402a74c6:	4c 63 c0             	movslq %eax,%r8
1402a74c9:	49 8b 04 24          	mov    (%r12),%rax
1402a74cd:	49 c1 e0 03          	shl    $0x3,%r8
1402a74d1:	48 8d 0c d8          	lea    (%rax,%rbx,8),%rcx
1402a74d5:	e8 84 55 05 00       	call   0x1402fca5e
1402a74da:	8d 5e 01             	lea    0x1(%rsi),%ebx
1402a74dd:	41 89 5c 24 08       	mov    %ebx,0x8(%r12)
1402a74e2:	49 8b 0c 24          	mov    (%r12),%rcx
1402a74e6:	8b fb                	mov    %ebx,%edi
1402a74e8:	4d 8b 26             	mov    (%r14),%r12
1402a74eb:	2b fe                	sub    %esi,%edi
1402a74ed:	4c 63 eb             	movslq %ebx,%r13
1402a74f0:	48 63 de             	movslq %esi,%rbx
1402a74f3:	48 63 c7             	movslq %edi,%rax
1402a74f6:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
1402a74fb:	49 8b 74 dc f8       	mov    -0x8(%r12,%rbx,8),%rsi
1402a7500:	48 8d 04 c5 00 00 00 	lea    0x0(,%rax,8),%rax
1402a7507:	00
1402a7508:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
1402a750d:	48 03 c1             	add    %rcx,%rax
1402a7510:	48 83 e9 08          	sub    $0x8,%rcx
1402a7514:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1402a7519:	4e 8d 2c e9          	lea    (%rcx,%r13,8),%r13
1402a751d:	48 8d 0c dd f8 ff ff 	lea    -0x8(,%rbx,8),%rcx
1402a7524:	ff
1402a7525:	48 89 4c 24 48       	mov    %rcx,0x48(%rsp)
1402a752a:	83 fb 01             	cmp    $0x1,%ebx
1402a752d:	75 05                	jne    0x1402a7534
1402a752f:	45 33 e4             	xor    %r12d,%r12d
1402a7532:	eb 05                	jmp    0x1402a7539
1402a7534:	4d 8b 64 dc f0       	mov    -0x10(%r12,%rbx,8),%r12
1402a7539:	8b d7                	mov    %edi,%edx
1402a753b:	48 8b cd             	mov    %rbp,%rcx
1402a753e:	e8 bd 52 f8 ff       	call   0x14022c800
1402a7543:	48 85 c0             	test   %rax,%rax
1402a7546:	0f 84 62 02 00 00    	je     0x1402a77ae
1402a754c:	48 8b 84 24 c0 00 00 	mov    0xc0(%rsp),%rax
1402a7553:	00
1402a7554:	48 8b 8c 24 c8 00 00 	mov    0xc8(%rsp),%rcx
1402a755b:	00
1402a755c:	48 8b 54 24 40       	mov    0x40(%rsp),%rdx
1402a7561:	48 03 55 00          	add    0x0(%rbp),%rdx
1402a7565:	8b 40 10             	mov    0x10(%rax),%eax
1402a7568:	89 44 24 20          	mov    %eax,0x20(%rsp)
1402a756c:	33 41 10             	xor    0x10(%rcx),%eax
1402a756f:	49 8b cf             	mov    %r15,%rcx
1402a7572:	48 89 54 24 38       	mov    %rdx,0x38(%rsp)
1402a7577:	8d 53 01             	lea    0x1(%rbx),%edx
1402a757a:	89 45 10             	mov    %eax,0x10(%rbp)
1402a757d:	89 7d 08             	mov    %edi,0x8(%rbp)
1402a7580:	e8 7b 52 f8 ff       	call   0x14022c800
1402a7585:	48 85 c0             	test   %rax,%rax
1402a7588:	0f 84 20 02 00 00    	je     0x1402a77ae
1402a758e:	85 ff                	test   %edi,%edi
1402a7590:	0f 8e db 01 00 00    	jle    0x1402a7771
1402a7596:	48 8b 6c 24 28       	mov    0x28(%rsp),%rbp
1402a759b:	8b c7                	mov    %edi,%eax
1402a759d:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
1402a75a2:	49 8b 4d 00          	mov    0x0(%r13),%rcx
1402a75a6:	49 8b 5d f8          	mov    -0x8(%r13),%rbx
1402a75aa:	48 3b ce             	cmp    %rsi,%rcx
1402a75ad:	75 09                	jne    0x1402a75b8
1402a75af:	48 c7 c7 ff ff ff ff 	mov    $0xffffffffffffffff,%rdi
1402a75b6:	eb 56                	jmp    0x1402a760e
1402a75b8:	4c 3b 6c 24 30       	cmp    0x30(%rsp),%r13
1402a75bd:	75 04                	jne    0x1402a75c3
1402a75bf:	33 ed                	xor    %ebp,%ebp
1402a75c1:	eb 04                	jmp    0x1402a75c7
1402a75c3:	49 8b 6d f0          	mov    -0x10(%r13),%rbp
1402a75c7:	4c 8b c6             	mov    %rsi,%r8
1402a75ca:	48 8b d3             	mov    %rbx,%rdx
1402a75cd:	e8 ae 2e 01 00       	call   0x1402ba480
1402a75d2:	48 8b c8             	mov    %rax,%rcx
1402a75d5:	48 8b f8             	mov    %rax,%rdi
1402a75d8:	48 0f af ce          	imul   %rsi,%rcx
1402a75dc:	49 f7 e4             	mul    %r12
1402a75df:	48 2b d9             	sub    %rcx,%rbx
1402a75e2:	48 3b d3             	cmp    %rbx,%rdx
1402a75e5:	72 22                	jb     0x1402a7609
1402a75e7:	75 05                	jne    0x1402a75ee
1402a75e9:	48 3b c5             	cmp    %rbp,%rax
1402a75ec:	76 1b                	jbe    0x1402a7609
1402a75ee:	48 ff cf             	dec    %rdi
1402a75f1:	48 03 de             	add    %rsi,%rbx
1402a75f4:	48 3b de             	cmp    %rsi,%rbx
1402a75f7:	72 10                	jb     0x1402a7609
1402a75f9:	49 3b c4             	cmp    %r12,%rax
1402a75fc:	73 03                	jae    0x1402a7601
1402a75fe:	48 ff ca             	dec    %rdx
1402a7601:	49 2b c4             	sub    %r12,%rax
1402a7604:	48 3b d3             	cmp    %rbx,%rdx
1402a7607:	73 de                	jae    0x1402a75e7
1402a7609:	48 8b 6c 24 28       	mov    0x28(%rsp),%rbp
1402a760e:	8b 9c 24 b0 00 00 00 	mov    0xb0(%rsp),%ebx
1402a7615:	4c 8b cf             	mov    %rdi,%r9
1402a7618:	49 8b 16             	mov    (%r14),%rdx
1402a761b:	44 8b c3             	mov    %ebx,%r8d
1402a761e:	49 8b 0f             	mov    (%r15),%rcx
1402a7621:	e8 da 3c 01 00       	call   0x1402bb300
1402a7626:	49 8b 0f             	mov    (%r15),%rcx
1402a7629:	44 8d 4b 01          	lea    0x1(%rbx),%r9d
1402a762d:	48 89 04 e9          	mov    %rax,(%rcx,%rbp,8)
1402a7631:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
1402a7636:	4d 8b 07             	mov    (%r15),%r8
1402a7639:	48 83 e8 08          	sub    $0x8,%rax
1402a763d:	48 8b d0             	mov    %rax,%rdx
1402a7640:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1402a7645:	48 8b c8             	mov    %rax,%rcx
1402a7648:	e8 93 46 01 00       	call   0x1402bbce0
1402a764d:	4c 8b d0             	mov    %rax,%r10
1402a7650:	48 2b f8             	sub    %rax,%rdi
1402a7653:	49 f7 da             	neg    %r10
1402a7656:	33 d2                	xor    %edx,%edx
1402a7658:	66 49 0f 6e d2       	movq   %r10,%xmm2
1402a765d:	66 0f 6c d2          	punpcklqdq %xmm2,%xmm2
1402a7661:	85 db                	test   %ebx,%ebx
1402a7663:	0f 8e ae 00 00 00    	jle    0x1402a7717
1402a7669:	83 fb 08             	cmp    $0x8,%ebx
1402a766c:	0f 82 a5 00 00 00    	jb     0x1402a7717
1402a7672:	4d 8b 07             	mov    (%r15),%r8
1402a7675:	48 8b 44 24 48       	mov    0x48(%rsp),%rax
1402a767a:	4d 8b 0e             	mov    (%r14),%r9
1402a767d:	4a 8d 0c 00          	lea    (%rax,%r8,1),%rcx
1402a7681:	49 03 c1             	add    %r9,%rax
1402a7684:	4c 3b c0             	cmp    %rax,%r8
1402a7687:	77 09                	ja     0x1402a7692
1402a7689:	49 3b c9             	cmp    %r9,%rcx
1402a768c:	0f 83 85 00 00 00    	jae    0x1402a7717
1402a7692:	4d 3b c7             	cmp    %r15,%r8
1402a7695:	77 05                	ja     0x1402a769c
1402a7697:	49 3b cf             	cmp    %r15,%rcx
1402a769a:	73 7b                	jae    0x1402a7717
1402a769c:	4d 3b c6             	cmp    %r14,%r8
1402a769f:	77 05                	ja     0x1402a76a6
1402a76a1:	49 3b ce             	cmp    %r14,%rcx
1402a76a4:	73 71                	jae    0x1402a7717
1402a76a6:	8b cb                	mov    %ebx,%ecx
1402a76a8:	81 e1 07 00 00 80    	and    $0x80000007,%ecx
1402a76ae:	7d 07                	jge    0x1402a76b7
1402a76b0:	ff c9                	dec    %ecx
1402a76b2:	83 c9 f8             	or     $0xfffffff8,%ecx
1402a76b5:	ff c1                	inc    %ecx
1402a76b7:	8b c3                	mov    %ebx,%eax
1402a76b9:	2b c1                	sub    %ecx,%eax
1402a76bb:	48 63 c8             	movslq %eax,%rcx