1402c7350:	41 56                	push   %r14
1402c7352:	48 83 ec 30          	sub    $0x30,%rsp
1402c7356:	48 8b d9             	mov    %rcx,%rbx
1402c7359:	c6 01 00             	movb   $0x0,(%rcx)
1402c735c:	8b ca                	mov    %edx,%ecx
1402c735e:	45 8b f1             	mov    %r9d,%r14d
1402c7361:	41 8b e8             	mov    %r8d,%ebp
1402c7364:	8b fa                	mov    %edx,%edi
1402c7366:	be ff ff ff ff       	mov    $0xffffffff,%esi
1402c736b:	83 e1 03             	and    $0x3,%ecx
1402c736e:	74 47                	je     0x1402c73b7
1402c7370:	83 e9 01             	sub    $0x1,%ecx
1402c7373:	74 20                	je     0x1402c7395
1402c7375:	83 f9 01             	cmp    $0x1,%ecx
1402c7378:	74 14                	je     0x1402c738e
1402c737a:	e8 29 55 ff ff       	call   0x1402bc8a8
1402c737f:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
1402c7385:	e8 7a f0 fe ff       	call   0x1402b6404
1402c738a:	8b c6                	mov    %esi,%eax
1402c738c:	eb 2e                	jmp    0x1402c73bc
1402c738e:	b8 00 00 00 c0       	mov    $0xc0000000,%eax
1402c7393:	eb 27                	jmp    0x1402c73bc
1402c7395:	f7 c7 00 00 07 00    	test   $0x70000,%edi
1402c739b:	0f 95 c1             	setne  %cl
1402c739e:	40 f6 c7 08          	test   $0x8,%dil
1402c73a2:	0f 95 c0             	setne  %al
1402c73a5:	22 c8                	and    %al,%cl
1402c73a7:	f6 d9                	neg    %cl
1402c73a9:	1b c0                	sbb    %eax,%eax
1402c73ab:	25 00 00 00 80       	and    $0x80000000,%eax
1402c73b0:	05 00 00 00 40       	add    $0x40000000,%eax
1402c73b5:	eb 05                	jmp    0x1402c73bc
1402c73b7:	b8 00 00 00 80       	mov    $0x80000000,%eax
1402c73bc:	89 43 04             	mov    %eax,0x4(%rbx)
1402c73bf:	b9 00 07 00 00       	mov    $0x700,%ecx
1402c73c4:	8b c7                	mov    %edi,%eax
1402c73c6:	23 c1                	and    %ecx,%eax
1402c73c8:	74 5e                	je     0x1402c7428
1402c73ca:	3d 00 01 00 00       	cmp    $0x100,%eax
1402c73cf:	74 50                	je     0x1402c7421
1402c73d1:	3d 00 02 00 00       	cmp    $0x200,%eax
1402c73d6:	74 42                	je     0x1402c741a
1402c73d8:	3d 00 03 00 00       	cmp    $0x300,%eax
1402c73dd:	74 34                	je     0x1402c7413
1402c73df:	3d 00 04 00 00       	cmp    $0x400,%eax
1402c73e4:	74 42                	je     0x1402c7428
1402c73e6:	3d 00 05 00 00       	cmp    $0x500,%eax
1402c73eb:	74 1f                	je     0x1402c740c
1402c73ed:	3d 00 06 00 00       	cmp    $0x600,%eax
1402c73f2:	74 26                	je     0x1402c741a
1402c73f4:	3b c1                	cmp    %ecx,%eax
1402c73f6:	74 14                	je     0x1402c740c
1402c73f8:	e8 ab 54 ff ff       	call   0x1402bc8a8
1402c73fd:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
1402c7403:	e8 fc ef fe ff       	call   0x1402b6404
1402c7408:	8b c6                	mov    %esi,%eax
1402c740a:	eb 21                	jmp    0x1402c742d
1402c740c:	b8 01 00 00 00       	mov    $0x1,%eax
1402c7411:	eb 1a                	jmp    0x1402c742d
1402c7413:	b8 02 00 00 00       	mov    $0x2,%eax
1402c7418:	eb 13                	jmp    0x1402c742d
1402c741a:	b8 05 00 00 00       	mov    $0x5,%eax
1402c741f:	eb 0c                	jmp    0x1402c742d
1402c7421:	b8 04 00 00 00       	mov    $0x4,%eax
1402c7426:	eb 05                	jmp    0x1402c742d
1402c7428:	b8 03 00 00 00       	mov    $0x3,%eax
1402c742d:	89 43 08             	mov    %eax,0x8(%rbx)
1402c7430:	83 ed 10             	sub    $0x10,%ebp
1402c7433:	74 4a                	je     0x1402c747f
1402c7435:	83 ed 10             	sub    $0x10,%ebp
1402c7438:	74 3e                	je     0x1402c7478
1402c743a:	83 ed 10             	sub    $0x10,%ebp
1402c743d:	74 32                	je     0x1402c7471
1402c743f:	83 ed 10             	sub    $0x10,%ebp
1402c7442:	74 26                	je     0x1402c746a
1402c7444:	83 fd 40             	cmp    $0x40,%ebp
1402c7447:	74 12                	je     0x1402c745b
1402c7449:	e8 5a 54 ff ff       	call   0x1402bc8a8
1402c744e:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
1402c7454:	e8 ab ef fe ff       	call   0x1402b6404
1402c7459:	eb 26                	jmp    0x1402c7481
1402c745b:	33 f6                	xor    %esi,%esi
1402c745d:	81 7b 04 00 00 00 80 	cmpl   $0x80000000,0x4(%rbx)
1402c7464:	40 0f 94 c6          	sete   %sil
1402c7468:	eb 17                	jmp    0x1402c7481
1402c746a:	be 03 00 00 00       	mov    $0x3,%esi
1402c746f:	eb 10                	jmp    0x1402c7481
1402c7471:	be 02 00 00 00       	mov    $0x2,%esi
1402c7476:	eb 09                	jmp    0x1402c7481
1402c7478:	be 01 00 00 00       	mov    $0x1,%esi
1402c747d:	eb 02                	jmp    0x1402c7481
1402c747f:	33 f6                	xor    %esi,%esi
1402c7481:	83 63 14 00          	andl   $0x0,0x14(%rbx)
1402c7485:	89 73 0c             	mov    %esi,0xc(%rbx)
1402c7488:	c7 43 10 80 00 00 00 	movl   $0x80,0x10(%rbx)
1402c748f:	40 84 ff             	test   %dil,%dil
1402c7492:	79 03                	jns    0x1402c7497
1402c7494:	80 0b 10             	orb    $0x10,(%rbx)
1402c7497:	be 00 80 00 00       	mov    $0x8000,%esi
1402c749c:	85 fe                	test   %edi,%esi
1402c749e:	75 1f                	jne    0x1402c74bf
1402c74a0:	f7 c7 00 40 07 00    	test   $0x74000,%edi
1402c74a6:	75 14                	jne    0x1402c74bc
1402c74a8:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
1402c74ad:	e8 12 23 00 00       	call   0x1402c97c4
1402c74b2:	85 c0                	test   %eax,%eax
1402c74b4:	75 7e                	jne    0x1402c7534
1402c74b6:	39 74 24 58          	cmp    %esi,0x58(%rsp)
1402c74ba:	74 03                	je     0x1402c74bf
1402c74bc:	80 0b 80             	orb    $0x80,(%rbx)
1402c74bf:	b9 00 01 00 00       	mov    $0x100,%ecx
1402c74c4:	85 f9                	test   %edi,%ecx
1402c74c6:	74 16                	je     0x1402c74de
1402c74c8:	8b 05 e6 41 11 00    	mov    0x1141e6(%rip),%eax        # 0x1403db6b4
1402c74ce:	f7 d0                	not    %eax
1402c74d0:	41 23 c6             	and    %r14d,%eax
1402c74d3:	84 c0                	test   %al,%al
1402c74d5:	78 07                	js     0x1402c74de
1402c74d7:	c7 43 10 01 00 00 00 	movl   $0x1,0x10(%rbx)
1402c74de:	40 f6 c7 40          	test   $0x40,%dil
1402c74e2:	74 0e                	je     0x1402c74f2
1402c74e4:	0f ba 6b 14 1a       	btsl   $0x1a,0x14(%rbx)
1402c74e9:	0f ba 6b 04 10       	btsl   $0x10,0x4(%rbx)
1402c74ee:	83 4b 0c 04          	orl    $0x4,0xc(%rbx)
1402c74f2:	0f ba e7 0c          	bt     $0xc,%edi
1402c74f6:	73 03                	jae    0x1402c74fb
1402c74f8:	09 4b 10             	or     %ecx,0x10(%rbx)
1402c74fb:	0f ba e7 0d          	bt     $0xd,%edi
1402c74ff:	73 05                	jae    0x1402c7506
1402c7501:	0f ba 6b 14 19       	btsl   $0x19,0x14(%rbx)
1402c7506:	40 f6 c7 20          	test   $0x20,%dil
1402c750a:	74 07                	je     0x1402c7513
1402c750c:	0f ba 6b 14 1b       	btsl   $0x1b,0x14(%rbx)
1402c7511:	eb 0b                	jmp    0x1402c751e
1402c7513:	40 f6 c7 10          	test   $0x10,%dil
1402c7517:	74 05                	je     0x1402c751e
1402c7519:	0f ba 6b 14 1c       	btsl   $0x1c,0x14(%rbx)
1402c751e:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
1402c7523:	48 8b c3             	mov    %rbx,%rax
1402c7526:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1402c752b:	48 83 c4 30          	add    $0x30,%rsp
1402c752f:	41 5e                	pop    %r14
1402c7531:	5f                   	pop    %rdi
1402c7532:	5e                   	pop    %rsi
1402c7533:	c3                   	ret
1402c7534:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
1402c753a:	45 33 c9             	xor    %r9d,%r9d
1402c753d:	45 33 c0             	xor    %r8d,%r8d
1402c7540:	33 d2                	xor    %edx,%edx
1402c7542:	33 c9                	xor    %ecx,%ecx
1402c7544:	e8 0b ef fe ff       	call   0x1402b6454
1402c7549:	cc                   	int3
1402c754a:	cc                   	int3
1402c754b:	cc                   	int3
1402c754c:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1402c7551:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
1402c7556:	57                   	push   %rdi
1402c7557:	48 83 ec 20          	sub    $0x20,%rsp
1402c755b:	48 63 d9             	movslq %ecx,%rbx
1402c755e:	48 8d 0d 8b 3b 11 00 	lea    0x113b8b(%rip),%rcx        # 0x1403db0f0
1402c7565:	48 8b d3             	mov    %rbx,%rdx
1402c7568:	48 8b c3             	mov    %rbx,%rax
1402c756b:	48 c1 f8 06          	sar    $0x6,%rax
1402c756f:	83 e2 3f             	and    $0x3f,%edx
1402c7572:	48 8b 04 c1          	mov    (%rcx,%rax,8),%rax
1402c7576:	48 8d 14 d2          	lea    (%rdx,%rdx,8),%rdx
1402c757a:	8a 4c d0 38          	mov    0x38(%rax,%rdx,8),%cl
1402c757e:	f6 c1 48             	test   $0x48,%cl
1402c7581:	75 78                	jne    0x1402c75fb
1402c7583:	33 ed                	xor    %ebp,%ebp
1402c7585:	84 c9                	test   %cl,%cl
1402c7587:	79 72                	jns    0x1402c75fb
1402c7589:	44 8d 45 02          	lea    0x2(%rbp),%r8d
1402c758d:	48 83 ca ff          	or     $0xffffffffffffffff,%rdx
1402c7591:	8b cb                	mov    %ebx,%ecx
1402c7593:	e8 60 21 00 00       	call   0x1402c96f8
1402c7598:	48 8b f8             	mov    %rax,%rdi
1402c759b:	48 83 f8 ff          	cmp    $0xffffffffffffffff,%rax
1402c759f:	75 16                	jne    0x1402c75b7
1402c75a1:	e8 e2 52 ff ff       	call   0x1402bc888
1402c75a6:	81 38 83 00 00 00    	cmpl   $0x83,(%rax)
1402c75ac:	74 4d                	je     0x1402c75fb
1402c75ae:	e8 f5 52 ff ff       	call   0x1402bc8a8
1402c75b3:	8b 00                	mov    (%rax),%eax
1402c75b5:	eb 46                	jmp    0x1402c75fd
1402c75b7:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1402c75bd:	66 89 6c 24 30       	mov    %bp,0x30(%rsp)
1402c75c2:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1402c75c7:	8b cb                	mov    %ebx,%ecx
1402c75c9:	e8 e6 91 00 00       	call   0x1402d07b4
1402c75ce:	85 c0                	test   %eax,%eax
1402c75d0:	75 17                	jne    0x1402c75e9
1402c75d2:	66 83 7c 24 30 1a    	cmpw   $0x1a,0x30(%rsp)
1402c75d8:	75 0f                	jne    0x1402c75e9
1402c75da:	48 8b d7             	mov    %rdi,%rdx
1402c75dd:	8b cb                	mov    %ebx,%ecx
1402c75df:	e8 20 ee 00 00       	call   0x1402d6404
1402c75e4:	83 f8 ff             	cmp    $0xffffffff,%eax
1402c75e7:	74 c5                	je     0x1402c75ae
1402c75e9:	45 33 c0             	xor    %r8d,%r8d
1402c75ec:	33 d2                	xor    %edx,%edx
1402c75ee:	8b cb                	mov    %ebx,%ecx
1402c75f0:	e8 03 21 00 00       	call   0x1402c96f8
1402c75f5:	48 83 f8 ff          	cmp    $0xffffffffffffffff,%rax
1402c75f9:	74 b3                	je     0x1402c75ae
1402c75fb:	33 c0                	xor    %eax,%eax
1402c75fd:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
1402c7602:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
1402c7607:	48 83 c4 20          	add    $0x20,%rsp
1402c760b:	5f                   	pop    %rdi
1402c760c:	c3                   	ret
1402c760d:	cc                   	int3
1402c760e:	cc                   	int3
1402c760f:	cc                   	int3
1402c7610:	48 8b c4             	mov    %rsp,%rax
1402c7613:	89 50 10             	mov    %edx,0x10(%rax)
1402c7616:	4c 89 40 18          	mov    %r8,0x18(%rax)
1402c761a:	4c 89 48 20          	mov    %r9,0x20(%rax)
1402c761e:	48 83 ec 28          	sub    $0x28,%rsp
1402c7622:	48 8d 40 18          	lea    0x18(%rax),%rax
1402c7626:	44 8b 00             	mov    (%rax),%r8d
1402c7629:	e8 5e f8 ff ff       	call   0x1402c6e8c
1402c762e:	48 83 c4 28          	add    $0x28,%rsp
1402c7632:	c3                   	ret
1402c7633:	cc                   	int3
1402c7634:	48 8b c4             	mov    %rsp,%rax
1402c7637:	48 89 58 08          	mov    %rbx,0x8(%rax)
1402c763b:	48 89 70 10          	mov    %rsi,0x10(%rax)
1402c763f:	48 89 78 18          	mov    %rdi,0x18(%rax)
1402c7643:	4c 89 70 20          	mov    %r14,0x20(%rax)
1402c7647:	55                   	push   %rbp
1402c7648:	48 8d 68 b9          	lea    -0x47(%rax),%rbp
1402c764c:	48 81 ec a0 00 00 00 	sub    $0xa0,%rsp
1402c7653:	48 83 65 07 00       	andq   $0x0,0x7(%rbp)
1402c7658:	48 8b f2             	mov    %rdx,%rsi
1402c765b:	48 83 65 0f 00       	andq   $0x0,0xf(%rbp)
1402c7660:	4c 8b f1             	mov    %rcx,%r14
1402c7663:	48 83 65 17 00       	andq   $0x0,0x17(%rbp)
1402c7668:	48 8d 4d e7          	lea    -0x19(%rbp),%rcx
1402c766c:	48 83 65 1f 00       	andq   $0x0,0x1f(%rbp)
1402c7671:	33 d2                	xor    %edx,%edx
1402c7673:	48 83 65 27 00       	andq   $0x0,0x27(%rbp)
1402c7678:	41 8b f9             	mov    %r9d,%edi
1402c767b:	49 8b d8             	mov    %r8,%rbx
1402c767e:	c6 45 2f 00          	movb   $0x0,0x2f(%rbp)
1402c7682:	e8 29 4f ff ff       	call   0x1402bc5b0
1402c7687:	48 8b 45 ef          	mov    -0x11(%rbp),%rax
1402c768b:	41 b9 e9 fd 00 00    	mov    $0xfde9,%r9d
1402c7691:	44 39 48 0c          	cmp    %r9d,0xc(%rax)
1402c7695:	75 13                	jne    0x1402c76aa
1402c7697:	80 7d ff 00          	cmpb   $0x0,-0x1(%rbp)
1402c769b:	74 42                	je     0x1402c76df
1402c769d:	48 8b 45 e7          	mov    -0x19(%rbp),%rax
1402c76a1:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
1402c76a8:	eb 35                	jmp    0x1402c76df
1402c76aa:	e8 e1 d9 00 00       	call   0x1402d5090
1402c76af:	85 c0                	test   %eax,%eax
1402c76b1:	75 18                	jne    0x1402c76cb
1402c76b3:	38 45 ff             	cmp    %al,-0x1(%rbp)
1402c76b6:	74 0b                	je     0x1402c76c3
1402c76b8:	48 8b 45 e7          	mov    -0x19(%rbp),%rax
1402c76bc:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
1402c76c3:	41 b9 01 00 00 00    	mov    $0x1,%r9d
1402c76c9:	eb 14                	jmp    0x1402c76df
1402c76cb:	80 7d ff 00          	cmpb   $0x0,-0x1(%rbp)
1402c76cf:	74 0b                	je     0x1402c76dc
1402c76d1:	48 8b 45 e7          	mov    -0x19(%rbp),%rax
1402c76d5:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
1402c76dc:	45 33 c9             	xor    %r9d,%r9d
1402c76df:	4c 8d 45 df          	lea    -0x21(%rbp),%r8
1402c76e3:	48 8b cb             	mov    %rbx,%rcx
1402c76e6:	48 8d 55 07          	lea    0x7(%rbp),%rdx
1402c76ea:	e8 29 4c ff ff       	call   0x1402bc318
1402c76ef:	85 c0                	test   %eax,%eax
1402c76f1:	74 05                	je     0x1402c76f8
1402c76f3:	83 cb ff             	or     $0xffffffff,%ebx
1402c76f6:	eb 29                	jmp    0x1402c7721
1402c76f8:	8b 45 7f             	mov    0x7f(%rbp),%eax
1402c76fb:	44 8b cf             	mov    %edi,%r9d
1402c76fe:	4c 8b 45 17          	mov    0x17(%rbp),%r8
1402c7702:	48 8b d6             	mov    %rsi,%rdx
1402c7705:	89 44 24 30          	mov    %eax,0x30(%rsp)
1402c7709:	49 8b ce             	mov    %r14,%rcx
1402c770c:	8b 45 77             	mov    0x77(%rbp),%eax
1402c770f:	89 44 24 28          	mov    %eax,0x28(%rsp)
1402c7713:	8b 45 6f             	mov    0x6f(%rbp),%eax
1402c7716:	89 44 24 20          	mov    %eax,0x20(%rsp)
1402c771a:	e8 65 00 00 00       	call   0x1402c7784
1402c771f:	8b d8                	mov    %eax,%ebx
1402c7721:	80 7d 2f 00          	cmpb   $0x0,0x2f(%rbp)
1402c7725:	74 09                	je     0x1402c7730
1402c7727:	48 8b 4d 17          	mov    0x17(%rbp),%rcx
1402c772b:	e8 18 b3 00 00       	call   0x1402d2a48
1402c7730:	4c 8d 9c 24 a0 00 00 	lea    0xa0(%rsp),%r11
1402c7737:	00
1402c7738:	8b c3                	mov    %ebx,%eax
1402c773a:	49 8b 5b 10          	mov    0x10(%r11),%rbx
1402c773e:	49 8b 73 18          	mov    0x18(%r11),%rsi
1402c7742:	49 8b 7b 20          	mov    0x20(%r11),%rdi
1402c7746:	4d 8b 73 28          	mov    0x28(%r11),%r14
1402c774a:	49 8b e3             	mov    %r11,%rsp
1402c774d:	5d                   	pop    %rbp
1402c774e:	c3                   	ret
1402c774f:	cc                   	int3
1402c7750:	48 83 ec 38          	sub    $0x38,%rsp
1402c7754:	41 8b c1             	mov    %r9d,%eax
1402c7757:	c7 44 24 28 01 00 00 	movl   $0x1,0x28(%rsp)
1402c775e:	00
1402c775f:	44 8b 4c 24 60       	mov    0x60(%rsp),%r9d
1402c7764:	45 8b d0             	mov    %r8d,%r10d
1402c7767:	4c 8b da             	mov    %rdx,%r11
1402c776a:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1402c776f:	44 8b c0             	mov    %eax,%r8d
1402c7772:	41 8b d2             	mov    %r10d,%edx
1402c7775:	49 8b cb             	mov    %r11,%rcx
1402c7778:	e8 bf f7 ff ff       	call   0x1402c6f3c
1402c777d:	48 83 c4 38          	add    $0x38,%rsp
1402c7781:	c3                   	ret
1402c7782:	cc                   	int3
1402c7783:	cc                   	int3
1402c7784:	48 8b c4             	mov    %rsp,%rax
1402c7787:	48 89 58 08          	mov    %rbx,0x8(%rax)
1402c778b:	48 89 70 10          	mov    %rsi,0x10(%rax)
1402c778f:	48 89 78 20          	mov    %rdi,0x20(%rax)
1402c7793:	4c 89 40 18          	mov    %r8,0x18(%rax)
1402c7797:	55                   	push   %rbp
1402c7798:	41 54                	push   %r12
1402c779a:	41 55                	push   %r13
1402c779c:	41 56                	push   %r14
1402c779e:	41 57                	push   %r15
1402c77a0:	48 8d 68 b9          	lea    -0x47(%rax),%rbp
1402c77a4:	48 81 ec c0 00 00 00 	sub    $0xc0,%rsp
1402c77ab:	45 8b e1             	mov    %r9d,%r12d
1402c77ae:	49 8b d8             	mov    %r8,%rbx
1402c77b1:	44 8b 4d 77          	mov    0x77(%rbp),%r9d
1402c77b5:	48 8b fa             	mov    %rdx,%rdi
1402c77b8:	44 8b 45 6f          	mov    0x6f(%rbp),%r8d
1402c77bc:	48 8b f1             	mov    %rcx,%rsi
1402c77bf:	41 8b d4             	mov    %r12d,%edx
1402c77c2:	48 8d 4d ff          	lea    -0x1(%rbp),%rcx
1402c77c6:	e8 79 fb ff ff       	call   0x1402c7344
1402c77cb:	0f 10 00             	movups (%rax),%xmm0
1402c77ce:	f2 0f 10 48 10       	movsd  0x10(%rax),%xmm1
1402c77d3:	0f 11 45 a7          	movups %xmm0,-0x59(%rbp)
1402c77d7:	66 0f 73 d8 08       	psrldq $0x8,%xmm0
1402c77dc:	66 49 0f 7e c7       	movq   %xmm0,%r15
1402c77e1:	f2 0f 11 4d c7       	movsd  %xmm1,-0x39(%rbp)
1402c77e6:	49 c1 ef 20          	shr    $0x20,%r15
1402c77ea:	f2 0f 11 4d b7       	movsd  %xmm1,-0x49(%rbp)
1402c77ef:	4c 89 7d d7          	mov    %r15,-0x29(%rbp)