14003c39f:	5b                   	pop    %rbx
14003c3a0:	c3                   	ret
14003c3a1:	cc                   	int3
14003c3a2:	cc                   	int3
14003c3a3:	cc                   	int3
14003c3a4:	48 83 ec 28          	sub    $0x28,%rsp
14003c3a8:	48 85 c9             	test   %rcx,%rcx
14003c3ab:	75 19                	jne    0x14003c3c6
14003c3ad:	e8 86 f6 fe ff       	call   0x14002ba38
14003c3b2:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
14003c3b8:	e8 e7 f1 fe ff       	call   0x14002b5a4
14003c3bd:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
14003c3c1:	48 83 c4 28          	add    $0x28,%rsp
14003c3c5:	c3                   	ret
14003c3c6:	4c 8b c1             	mov    %rcx,%r8
14003c3c9:	33 d2                	xor    %edx,%edx
14003c3cb:	48 8b 0d 1e c3 03 00 	mov    0x3c31e(%rip),%rcx        # 0x1400786f0
14003c3d2:	48 83 c4 28          	add    $0x28,%rsp
14003c3d6:	48 ff 25 33 fc 00 00 	rex.W jmp *0xfc33(%rip)        # 0x14004c010
14003c3dd:	cc                   	int3
14003c3de:	cc                   	int3
14003c3df:	cc                   	int3
14003c3e0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14003c3e5:	57                   	push   %rdi
14003c3e6:	48 83 ec 20          	sub    $0x20,%rsp
14003c3ea:	48 8b da             	mov    %rdx,%rbx
14003c3ed:	48 8b f9             	mov    %rcx,%rdi
14003c3f0:	48 85 c9             	test   %rcx,%rcx
14003c3f3:	75 0a                	jne    0x14003c3ff
14003c3f5:	48 8b ca             	mov    %rdx,%rcx
14003c3f8:	e8 cb c9 ff ff       	call   0x140038dc8
14003c3fd:	eb 1f                	jmp    0x14003c41e
14003c3ff:	48 85 db             	test   %rbx,%rbx
14003c402:	75 07                	jne    0x14003c40b
14003c404:	e8 83 c9 ff ff       	call   0x140038d8c
14003c409:	eb 11                	jmp    0x14003c41c
14003c40b:	48 83 fb e0          	cmp    $0xffffffffffffffe0,%rbx
14003c40f:	76 2d                	jbe    0x14003c43e
14003c411:	e8 22 f6 fe ff       	call   0x14002ba38
14003c416:	c7 00 0c 00 00 00    	movl   $0xc,(%rax)
14003c41c:	33 c0                	xor    %eax,%eax
14003c41e:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14003c423:	48 83 c4 20          	add    $0x20,%rsp
14003c427:	5f                   	pop    %rdi
14003c428:	c3                   	ret
14003c429:	e8 fe b7 ff ff       	call   0x140037c2c
14003c42e:	85 c0                	test   %eax,%eax
14003c430:	74 df                	je     0x14003c411
14003c432:	48 8b cb             	mov    %rbx,%rcx
14003c435:	e8 e6 9c ff ff       	call   0x140036120
14003c43a:	85 c0                	test   %eax,%eax
14003c43c:	74 d3                	je     0x14003c411
14003c43e:	48 8b 0d ab c2 03 00 	mov    0x3c2ab(%rip),%rcx        # 0x1400786f0
14003c445:	4c 8b cb             	mov    %rbx,%r9
14003c448:	4c 8b c7             	mov    %rdi,%r8
14003c44b:	33 d2                	xor    %edx,%edx
14003c44d:	ff 15 cd fb 00 00    	call   *0xfbcd(%rip)        # 0x14004c020
14003c453:	48 85 c0             	test   %rax,%rax
14003c456:	74 d1                	je     0x14003c429
14003c458:	eb c4                	jmp    0x14003c41e
14003c45a:	cc                   	int3
14003c45b:	cc                   	int3
14003c45c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14003c461:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14003c466:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14003c46b:	57                   	push   %rdi
14003c46c:	48 83 ec 50          	sub    $0x50,%rsp
14003c470:	49 63 d9             	movslq %r9d,%rbx
14003c473:	49 8b f8             	mov    %r8,%rdi
14003c476:	8b f2                	mov    %edx,%esi
14003c478:	48 8b e9             	mov    %rcx,%rbp
14003c47b:	45 85 c9             	test   %r9d,%r9d
14003c47e:	7e 14                	jle    0x14003c494
14003c480:	48 8b d3             	mov    %rbx,%rdx
14003c483:	49 8b c8             	mov    %r8,%rcx
14003c486:	e8 01 f3 fe ff       	call   0x14002b78c
14003c48b:	3b c3                	cmp    %ebx,%eax
14003c48d:	8d 58 01             	lea    0x1(%rax),%ebx
14003c490:	7c 02                	jl     0x14003c494
14003c492:	8b d8                	mov    %eax,%ebx
14003c494:	48 83 64 24 40 00    	andq   $0x0,0x40(%rsp)
14003c49a:	44 8b cb             	mov    %ebx,%r9d
14003c49d:	48 83 64 24 38 00    	andq   $0x0,0x38(%rsp)
14003c4a3:	4c 8b c7             	mov    %rdi,%r8
14003c4a6:	48 83 64 24 30 00    	andq   $0x0,0x30(%rsp)
14003c4ac:	8b d6                	mov    %esi,%edx
14003c4ae:	8b 84 24 88 00 00 00 	mov    0x88(%rsp),%eax
14003c4b5:	48 8b cd             	mov    %rbp,%rcx
14003c4b8:	89 44 24 28          	mov    %eax,0x28(%rsp)
14003c4bc:	48 8b 84 24 80 00 00 	mov    0x80(%rsp),%rax
14003c4c3:	00
14003c4c4:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14003c4c9:	e8 ce d5 ff ff       	call   0x140039a9c
14003c4ce:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
14003c4d3:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
14003c4d8:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
14003c4dd:	48 83 c4 50          	add    $0x50,%rsp
14003c4e1:	5f                   	pop    %rdi
14003c4e2:	c3                   	ret
14003c4e3:	cc                   	int3
14003c4e4:	40 55                	rex push %rbp
14003c4e6:	41 56                	push   %r14
14003c4e8:	41 57                	push   %r15
14003c4ea:	48 83 ec 70          	sub    $0x70,%rsp
14003c4ee:	48 8d 6c 24 40       	lea    0x40(%rsp),%rbp
14003c4f3:	48 89 5d 50          	mov    %rbx,0x50(%rbp)
14003c4f7:	48 89 75 58          	mov    %rsi,0x58(%rbp)
14003c4fb:	48 89 7d 60          	mov    %rdi,0x60(%rbp)
14003c4ff:	4c 89 65 68          	mov    %r12,0x68(%rbp)
14003c503:	48 8b 05 0e 5b 03 00 	mov    0x35b0e(%rip),%rax        # 0x140072018
14003c50a:	48 33 c5             	xor    %rbp,%rax
14003c50d:	48 89 45 28          	mov    %rax,0x28(%rbp)
14003c511:	4c 8b f2             	mov    %rdx,%r14
14003c514:	4d 8b f9             	mov    %r9,%r15
14003c517:	48 8b d1             	mov    %rcx,%rdx
14003c51a:	41 8b f0             	mov    %r8d,%esi
14003c51d:	48 8d 4d 08          	lea    0x8(%rbp),%rcx
14003c521:	e8 4a f9 fe ff       	call   0x14002be70
14003c526:	48 8b 45 10          	mov    0x10(%rbp),%rax
14003c52a:	45 33 c9             	xor    %r9d,%r9d
14003c52d:	45 33 c0             	xor    %r8d,%r8d
14003c530:	8b d6                	mov    %esi,%edx
14003c532:	49 8b ce             	mov    %r14,%rcx
14003c535:	44 8b 60 0c          	mov    0xc(%rax),%r12d
14003c539:	e8 0a d3 ff ff       	call   0x140039848
14003c53e:	48 63 f8             	movslq %eax,%rdi
14003c541:	85 c0                	test   %eax,%eax
14003c543:	75 07                	jne    0x14003c54c
14003c545:	33 ff                	xor    %edi,%edi
14003c547:	e9 da 00 00 00       	jmp    0x14003c626
14003c54c:	48 8b c7             	mov    %rdi,%rax
14003c54f:	48 03 c0             	add    %rax,%rax
14003c552:	48 8d 48 10          	lea    0x10(%rax),%rcx
14003c556:	48 3b c1             	cmp    %rcx,%rax
14003c559:	48 1b d2             	sbb    %rdx,%rdx
14003c55c:	48 23 d1             	and    %rcx,%rdx
14003c55f:	0f 84 a7 00 00 00    	je     0x14003c60c
14003c565:	48 81 fa 00 04 00 00 	cmp    $0x400,%rdx
14003c56c:	77 31                	ja     0x14003c59f
14003c56e:	48 8d 42 0f          	lea    0xf(%rdx),%rax
14003c572:	48 3b c2             	cmp    %rdx,%rax
14003c575:	77 0a                	ja     0x14003c581
14003c577:	48 b8 f0 ff ff ff ff 	movabs $0xffffffffffffff0,%rax
14003c57e:	ff ff 0f
14003c581:	48 83 e0 f0          	and    $0xfffffffffffffff0,%rax
14003c585:	e8 c6 8f fe ff       	call   0x140025550
14003c58a:	48 2b e0             	sub    %rax,%rsp
14003c58d:	48 8d 5c 24 40       	lea    0x40(%rsp),%rbx
14003c592:	48 85 db             	test   %rbx,%rbx
14003c595:	74 77                	je     0x14003c60e
14003c597:	c7 03 cc cc 00 00    	movl   $0xcccc,(%rbx)
14003c59d:	eb 16                	jmp    0x14003c5b5
14003c59f:	48 8b ca             	mov    %rdx,%rcx
14003c5a2:	e8 21 c8 ff ff       	call   0x140038dc8
14003c5a7:	48 8b d8             	mov    %rax,%rbx
14003c5aa:	48 85 c0             	test   %rax,%rax
14003c5ad:	74 0a                	je     0x14003c5b9
14003c5af:	c7 00 dd dd 00 00    	movl   $0xdddd,(%rax)
14003c5b5:	48 83 c3 10          	add    $0x10,%rbx
14003c5b9:	48 85 db             	test   %rbx,%rbx
14003c5bc:	74 50                	je     0x14003c60e
14003c5be:	44 8b cf             	mov    %edi,%r9d
14003c5c1:	4c 8b c3             	mov    %rbx,%r8
14003c5c4:	8b d6                	mov    %esi,%edx
14003c5c6:	49 8b ce             	mov    %r14,%rcx
14003c5c9:	e8 7a d2 ff ff       	call   0x140039848
14003c5ce:	85 c0                	test   %eax,%eax
14003c5d0:	74 3c                	je     0x14003c60e
14003c5d2:	44 8b 45 70          	mov    0x70(%rbp),%r8d
14003c5d6:	41 8b cc             	mov    %r12d,%ecx
14003c5d9:	41 8b c0             	mov    %r8d,%eax
14003c5dc:	f7 d8                	neg    %eax
14003c5de:	48 1b d2             	sbb    %rdx,%rdx
14003c5e1:	48 83 64 24 38 00    	andq   $0x0,0x38(%rsp)
14003c5e7:	48 83 64 24 30 00    	andq   $0x0,0x30(%rsp)
14003c5ed:	49 23 d7             	and    %r15,%rdx
14003c5f0:	44 89 44 24 28       	mov    %r8d,0x28(%rsp)
14003c5f5:	41 83 c9 ff          	or     $0xffffffff,%r9d
14003c5f9:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
14003c5fe:	4c 8b c3             	mov    %rbx,%r8
14003c601:	33 d2                	xor    %edx,%edx
14003c603:	e8 48 1b 00 00       	call   0x14003e150
14003c608:	8b f8                	mov    %eax,%edi
14003c60a:	eb 09                	jmp    0x14003c615
14003c60c:	33 db                	xor    %ebx,%ebx
14003c60e:	33 ff                	xor    %edi,%edi
14003c610:	48 85 db             	test   %rbx,%rbx
14003c613:	74 11                	je     0x14003c626
14003c615:	48 8d 4b f0          	lea    -0x10(%rbx),%rcx
14003c619:	81 39 dd dd 00 00    	cmpl   $0xdddd,(%rcx)
14003c61f:	75 05                	jne    0x14003c626
14003c621:	e8 66 c7 ff ff       	call   0x140038d8c
14003c626:	80 7d 20 00          	cmpb   $0x0,0x20(%rbp)
14003c62a:	74 0b                	je     0x14003c637
14003c62c:	48 8b 45 08          	mov    0x8(%rbp),%rax
14003c630:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
14003c637:	8b c7                	mov    %edi,%eax
14003c639:	48 8b 4d 28          	mov    0x28(%rbp),%rcx
14003c63d:	48 33 cd             	xor    %rbp,%rcx
14003c640:	e8 bb 84 fe ff       	call   0x140024b00
14003c645:	48 8b 5d 50          	mov    0x50(%rbp),%rbx
14003c649:	48 8b 75 58          	mov    0x58(%rbp),%rsi
14003c64d:	48 8b 7d 60          	mov    0x60(%rbp),%rdi
14003c651:	4c 8b 65 68          	mov    0x68(%rbp),%r12
14003c655:	48 8d 65 30          	lea    0x30(%rbp),%rsp
14003c659:	41 5f                	pop    %r15
14003c65b:	41 5e                	pop    %r14
14003c65d:	5d                   	pop    %rbp
14003c65e:	c3                   	ret
14003c65f:	cc                   	int3
14003c660:	40 53                	rex push %rbx
14003c662:	55                   	push   %rbp
14003c663:	56                   	push   %rsi
14003c664:	57                   	push   %rdi
14003c665:	41 54                	push   %r12
14003c667:	41 56                	push   %r14
14003c669:	41 57                	push   %r15
14003c66b:	48 81 ec d0 00 00 00 	sub    $0xd0,%rsp
14003c672:	48 8b 05 9f 59 03 00 	mov    0x3599f(%rip),%rax        # 0x140072018
14003c679:	48 33 c4             	xor    %rsp,%rax
14003c67c:	48 89 84 24 c0 00 00 	mov    %rax,0xc0(%rsp)
14003c683:	00
14003c684:	48 8b b4 24 30 01 00 	mov    0x130(%rsp),%rsi
14003c68b:	00
14003c68c:	33 ff                	xor    %edi,%edi
14003c68e:	41 8b e9             	mov    %r9d,%ebp
14003c691:	4d 8b f0             	mov    %r8,%r14
14003c694:	4c 8b e1             	mov    %rcx,%r12
14003c697:	48 89 3e             	mov    %rdi,(%rsi)
14003c69a:	83 fa 01             	cmp    $0x1,%edx
14003c69d:	0f 85 da 00 00 00    	jne    0x14003c77d
14003c6a3:	4c 8d 4c 24 40       	lea    0x40(%rsp),%r9
14003c6a8:	c7 44 24 20 80 00 00 	movl   $0x80,0x20(%rsp)
14003c6af:	00
14003c6b0:	44 8b c5             	mov    %ebp,%r8d
14003c6b3:	49 8b d6             	mov    %r14,%rdx
14003c6b6:	e8 29 fe ff ff       	call   0x14003c4e4
14003c6bb:	48 63 d8             	movslq %eax,%rbx
14003c6be:	85 c0                	test   %eax,%eax
14003c6c0:	74 43                	je     0x14003c705
14003c6c2:	8d 57 01             	lea    0x1(%rdi),%edx
14003c6c5:	48 8b cb             	mov    %rbx,%rcx
14003c6c8:	e8 5f fc ff ff       	call   0x14003c32c
14003c6cd:	33 c9                	xor    %ecx,%ecx
14003c6cf:	48 89 06             	mov    %rax,(%rsi)
14003c6d2:	e8 b5 c6 ff ff       	call   0x140038d8c
14003c6d7:	48 39 3e             	cmp    %rdi,(%rsi)
14003c6da:	0f 84 0e 01 00 00    	je     0x14003c7ee
14003c6e0:	48 8b 0e             	mov    (%rsi),%rcx
14003c6e3:	8d 43 ff             	lea    -0x1(%rbx),%eax
14003c6e6:	4c 63 c8             	movslq %eax,%r9
14003c6e9:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
14003c6ee:	48 8b d3             	mov    %rbx,%rdx
14003c6f1:	e8 8a 84 00 00       	call   0x140044b80
14003c6f6:	85 c0                	test   %eax,%eax
14003c6f8:	0f 85 15 01 00 00    	jne    0x14003c813
14003c6fe:	33 c0                	xor    %eax,%eax
14003c700:	e9 ec 00 00 00       	jmp    0x14003c7f1
14003c705:	ff 15 0d f9 00 00    	call   *0xf90d(%rip)        # 0x14004c018
14003c70b:	83 f8 7a             	cmp    $0x7a,%eax
14003c70e:	0f 85 da 00 00 00    	jne    0x14003c7ee
14003c714:	45 33 c9             	xor    %r9d,%r9d
14003c717:	89 7c 24 20          	mov    %edi,0x20(%rsp)
14003c71b:	44 8b c5             	mov    %ebp,%r8d
14003c71e:	49 8b d6             	mov    %r14,%rdx
14003c721:	49 8b cc             	mov    %r12,%rcx
14003c724:	e8 bb fd ff ff       	call   0x14003c4e4
14003c729:	4c 63 f8             	movslq %eax,%r15
14003c72c:	85 c0                	test   %eax,%eax
14003c72e:	0f 84 ba 00 00 00    	je     0x14003c7ee
14003c734:	49 8b cf             	mov    %r15,%rcx
14003c737:	ba 01 00 00 00       	mov    $0x1,%edx
14003c73c:	e8 eb fb ff ff       	call   0x14003c32c
14003c741:	48 8b d8             	mov    %rax,%rbx
14003c744:	48 85 c0             	test   %rax,%rax
14003c747:	74 25                	je     0x14003c76e
14003c749:	4c 8b c8             	mov    %rax,%r9
14003c74c:	44 89 7c 24 20       	mov    %r15d,0x20(%rsp)
14003c751:	44 8b c5             	mov    %ebp,%r8d
14003c754:	49 8b d6             	mov    %r14,%rdx
14003c757:	49 8b cc             	mov    %r12,%rcx
14003c75a:	e8 85 fd ff ff       	call   0x14003c4e4
14003c75f:	85 c0                	test   %eax,%eax
14003c761:	74 0b                	je     0x14003c76e
14003c763:	48 8b c3             	mov    %rbx,%rax
14003c766:	48 8b df             	mov    %rdi,%rbx
14003c769:	48 89 06             	mov    %rax,(%rsi)
14003c76c:	eb 03                	jmp    0x14003c771
14003c76e:	83 cf ff             	or     $0xffffffff,%edi
14003c771:	48 8b cb             	mov    %rbx,%rcx
14003c774:	e8 13 c6 ff ff       	call   0x140038d8c
14003c779:	8b c7                	mov    %edi,%eax
14003c77b:	eb 74                	jmp    0x14003c7f1
14003c77d:	bb 02 00 00 00       	mov    $0x2,%ebx
14003c782:	3b d3                	cmp    %ebx,%edx
14003c784:	75 3b                	jne    0x14003c7c1
14003c786:	45 33 c9             	xor    %r9d,%r9d
14003c789:	45 33 c0             	xor    %r8d,%r8d
14003c78c:	8b d5                	mov    %ebp,%edx
14003c78e:	49 8b ce             	mov    %r14,%rcx
14003c791:	e8 b2 d0 ff ff       	call   0x140039848
14003c796:	4c 63 f8             	movslq %eax,%r15
14003c799:	85 c0                	test   %eax,%eax
14003c79b:	74 51                	je     0x14003c7ee
14003c79d:	49 8b cf             	mov    %r15,%rcx
14003c7a0:	8b d3                	mov    %ebx,%edx
14003c7a2:	e8 85 fb ff ff       	call   0x14003c32c
14003c7a7:	48 8b d8             	mov    %rax,%rbx
14003c7aa:	48 85 c0             	test   %rax,%rax
14003c7ad:	74 bf                	je     0x14003c76e
14003c7af:	45 8b cf             	mov    %r15d,%r9d
14003c7b2:	4c 8b c0             	mov    %rax,%r8
14003c7b5:	8b d5                	mov    %ebp,%edx
14003c7b7:	49 8b ce             	mov    %r14,%rcx
14003c7ba:	e8 89 d0 ff ff       	call   0x140039848
14003c7bf:	eb 9e                	jmp    0x14003c75f
14003c7c1:	85 d2                	test   %edx,%edx
14003c7c3:	75 29                	jne    0x14003c7ee
14003c7c5:	0f ba ed 1d          	bts    $0x1d,%ebp
14003c7c9:	89 7c 24 30          	mov    %edi,0x30(%rsp)
14003c7cd:	8b d5                	mov    %ebp,%edx
14003c7cf:	4c 8d 44 24 30       	lea    0x30(%rsp),%r8
14003c7d4:	44 8b cb             	mov    %ebx,%r9d
14003c7d7:	49 8b ce             	mov    %r14,%rcx
14003c7da:	e8 69 d0 ff ff       	call   0x140039848
14003c7df:	85 c0                	test   %eax,%eax
14003c7e1:	74 0b                	je     0x14003c7ee
14003c7e3:	8a 44 24 30          	mov    0x30(%rsp),%al
14003c7e7:	88 06                	mov    %al,(%rsi)
14003c7e9:	e9 10 ff ff ff       	jmp    0x14003c6fe
14003c7ee:	83 c8 ff             	or     $0xffffffff,%eax
14003c7f1:	48 8b 8c 24 c0 00 00 	mov    0xc0(%rsp),%rcx
14003c7f8:	00
14003c7f9:	48 33 cc             	xor    %rsp,%rcx
14003c7fc:	e8 ff 82 fe ff       	call   0x140024b00
14003c801:	48 81 c4 d0 00 00 00 	add    $0xd0,%rsp
14003c808:	41 5f                	pop    %r15
14003c80a:	41 5e                	pop    %r14
14003c80c:	41 5c                	pop    %r12
14003c80e:	5f                   	pop    %rdi
14003c80f:	5e                   	pop    %rsi
14003c810:	5d                   	pop    %rbp
14003c811:	5b                   	pop    %rbx
14003c812:	c3                   	ret
14003c813:	45 33 c9             	xor    %r9d,%r9d
14003c816:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14003c81b:	45 33 c0             	xor    %r8d,%r8d
14003c81e:	33 d2                	xor    %edx,%edx
14003c820:	33 c9                	xor    %ecx,%ecx
14003c822:	e8 cd ed fe ff       	call   0x14002b5f4