14002c2c8:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
14002c2cd:	48 8b 0e             	mov    (%rsi),%rcx
14002c2d0:	e8 b7 2a 00 00       	call   0x14002ed8c
14002c2d5:	8b 0f                	mov    (%rdi),%ecx
14002c2d7:	85 c0                	test   %eax,%eax
14002c2d9:	75 22                	jne    0x14002c2fd
14002c2db:	83 c9 02             	or     $0x2,%ecx
14002c2de:	89 5f 08             	mov    %ebx,0x8(%rdi)
14002c2e1:	89 0f                	mov    %ecx,(%rdi)
14002c2e3:	48 8b c5             	mov    %rbp,%rax
14002c2e6:	48 8b 0e             	mov    (%rsi),%rcx
14002c2e9:	48 ff c0             	inc    %rax
14002c2ec:	66 44 39 34 41       	cmp    %r14w,(%rcx,%rax,2)
14002c2f1:	75 f6                	jne    0x14002c2e9
14002c2f3:	3b 46 14             	cmp    0x14(%rsi),%eax
14002c2f6:	75 2c                	jne    0x14002c324
14002c2f8:	89 5f 04             	mov    %ebx,0x4(%rdi)
14002c2fb:	eb 27                	jmp    0x14002c324
14002c2fd:	f6 c1 01             	test   $0x1,%cl
14002c300:	75 22                	jne    0x14002c324
14002c302:	41 8b d6             	mov    %r14d,%edx
14002c305:	48 8d 05 8c 56 01 00 	lea    0x1568c(%rip),%rax        # 0x140041998
14002c30c:	66 3b 18             	cmp    (%rax),%bx
14002c30f:	74 13                	je     0x14002c324
14002c311:	ff c2                	inc    %edx
14002c313:	48 83 c0 02          	add    $0x2,%rax
14002c317:	83 fa 0a             	cmp    $0xa,%edx
14002c31a:	72 f0                	jb     0x14002c30c
14002c31c:	83 c9 01             	or     $0x1,%ecx
14002c31f:	89 5f 08             	mov    %ebx,0x8(%rdi)
14002c322:	89 0f                	mov    %ecx,(%rdi)
14002c324:	8b 07                	mov    (%rdi),%eax
14002c326:	b9 00 03 00 00       	mov    $0x300,%ecx
14002c32b:	23 c1                	and    %ecx,%eax
14002c32d:	3b c1                	cmp    %ecx,%eax
14002c32f:	0f 84 ae 00 00 00    	je     0x14002c3e3
14002c335:	8b 46 18             	mov    0x18(%rsi),%eax
14002c338:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
14002c33d:	f7 d8                	neg    %eax
14002c33f:	41 b9 78 00 00 00    	mov    $0x78,%r9d
14002c345:	8b cb                	mov    %ebx,%ecx
14002c347:	1b d2                	sbb    %edx,%edx
14002c349:	81 e2 02 f0 ff ff    	and    $0xfffff002,%edx
14002c34f:	81 c2 01 10 00 00    	add    $0x1001,%edx
14002c355:	ff 15 d5 fd 00 00    	call   *0xfdd5(%rip)        # 0x14003c130
14002c35b:	85 c0                	test   %eax,%eax
14002c35d:	0f 84 8c 00 00 00    	je     0x14002c3ef
14002c363:	48 8b 0e             	mov    (%rsi),%rcx
14002c366:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
14002c36b:	e8 6c 07 ff ff       	call   0x14001cadc
14002c370:	85 c0                	test   %eax,%eax
14002c372:	75 35                	jne    0x14002c3a9
14002c374:	8b 07                	mov    (%rdi),%eax
14002c376:	0f ba e8 09          	bts    $0x9,%eax
14002c37a:	89 07                	mov    %eax,(%rdi)
14002c37c:	44 39 76 18          	cmp    %r14d,0x18(%rsi)
14002c380:	74 08                	je     0x14002c38a
14002c382:	0f ba e8 08          	bts    $0x8,%eax
14002c386:	89 07                	mov    %eax,(%rdi)
14002c388:	eb 50                	jmp    0x14002c3da
14002c38a:	44 39 76 14          	cmp    %r14d,0x14(%rsi)
14002c38e:	74 f2                	je     0x14002c382
14002c390:	48 8b 0e             	mov    (%rsi),%rcx
14002c393:	48 ff c5             	inc    %rbp
14002c396:	66 44 39 34 69       	cmp    %r14w,(%rcx,%rbp,2)
14002c39b:	75 f6                	jne    0x14002c393
14002c39d:	3b 6e 14             	cmp    0x14(%rsi),%ebp
14002c3a0:	75 e0                	jne    0x14002c382
14002c3a2:	ba 01 00 00 00       	mov    $0x1,%edx
14002c3a7:	eb 1f                	jmp    0x14002c3c8
14002c3a9:	44 39 76 18          	cmp    %r14d,0x18(%rsi)
14002c3ad:	75 34                	jne    0x14002c3e3
14002c3af:	44 39 76 14          	cmp    %r14d,0x14(%rsi)
14002c3b3:	74 2e                	je     0x14002c3e3
14002c3b5:	48 8b 0e             	mov    (%rsi),%rcx
14002c3b8:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
14002c3bd:	e8 1a 07 ff ff       	call   0x14001cadc
14002c3c2:	85 c0                	test   %eax,%eax
14002c3c4:	75 1d                	jne    0x14002c3e3
14002c3c6:	33 d2                	xor    %edx,%edx
14002c3c8:	4c 8b c7             	mov    %rdi,%r8
14002c3cb:	8b cb                	mov    %ebx,%ecx
14002c3cd:	e8 56 02 00 00       	call   0x14002c628
14002c3d2:	85 c0                	test   %eax,%eax
14002c3d4:	74 0d                	je     0x14002c3e3
14002c3d6:	0f ba 2f 08          	btsl   $0x8,(%rdi)
14002c3da:	44 39 77 04          	cmp    %r14d,0x4(%rdi)
14002c3de:	75 03                	jne    0x14002c3e3
14002c3e0:	89 5f 04             	mov    %ebx,0x4(%rdi)
14002c3e3:	8b 07                	mov    (%rdi),%eax
14002c3e5:	c1 e8 02             	shr    $0x2,%eax
14002c3e8:	f7 d0                	not    %eax
14002c3ea:	83 e0 01             	and    $0x1,%eax
14002c3ed:	eb 08                	jmp    0x14002c3f7
14002c3ef:	44 89 37             	mov    %r14d,(%rdi)
14002c3f2:	b8 01 00 00 00       	mov    $0x1,%eax
14002c3f7:	48 8b 8c 24 10 01 00 	mov    0x110(%rsp),%rcx
14002c3fe:	00
14002c3ff:	48 33 cc             	xor    %rsp,%rcx
14002c402:	e8 99 cf fd ff       	call   0x1400093a0
14002c407:	4c 8d 9c 24 20 01 00 	lea    0x120(%rsp),%r11
14002c40e:	00
14002c40f:	49 8b 5b 28          	mov    0x28(%r11),%rbx
14002c413:	49 8b 6b 30          	mov    0x30(%r11),%rbp
14002c417:	49 8b e3             	mov    %r11,%rsp
14002c41a:	41 5e                	pop    %r14
14002c41c:	5f                   	pop    %rdi
14002c41d:	5e                   	pop    %rsi
14002c41e:	c3                   	ret
14002c41f:	cc                   	int3
14002c420:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14002c425:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14002c42a:	57                   	push   %rdi
14002c42b:	48 81 ec 20 01 00 00 	sub    $0x120,%rsp
14002c432:	48 8b 05 87 1d 02 00 	mov    0x21d87(%rip),%rax        # 0x14004e1c0
14002c439:	48 33 c4             	xor    %rsp,%rax
14002c43c:	48 89 84 24 10 01 00 	mov    %rax,0x110(%rsp)
14002c443:	00
14002c444:	48 8b d9             	mov    %rcx,%rbx
14002c447:	e8 5c 48 ff ff       	call   0x140020ca8
14002c44c:	48 8b f0             	mov    %rax,%rsi
14002c44f:	e8 54 48 ff ff       	call   0x140020ca8
14002c454:	48 8b cb             	mov    %rbx,%rcx
14002c457:	48 8b b8 a0 03 00 00 	mov    0x3a0(%rax),%rdi
14002c45e:	e8 c5 00 00 00       	call   0x14002c528
14002c463:	8b 8e b0 00 00 00    	mov    0xb0(%rsi),%ecx
14002c469:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
14002c46e:	f7 d9                	neg    %ecx
14002c470:	41 b9 78 00 00 00    	mov    $0x78,%r9d
14002c476:	8b c8                	mov    %eax,%ecx
14002c478:	8b d8                	mov    %eax,%ebx
14002c47a:	1b d2                	sbb    %edx,%edx
14002c47c:	81 e2 02 f0 ff ff    	and    $0xfffff002,%edx
14002c482:	81 c2 01 10 00 00    	add    $0x1001,%edx
14002c488:	ff 15 a2 fc 00 00    	call   *0xfca2(%rip)        # 0x14003c130
14002c48e:	85 c0                	test   %eax,%eax
14002c490:	75 09                	jne    0x14002c49b
14002c492:	21 07                	and    %eax,(%rdi)
14002c494:	b8 01 00 00 00       	mov    $0x1,%eax
14002c499:	eb 68                	jmp    0x14002c503
14002c49b:	48 8b 8e 98 00 00 00 	mov    0x98(%rsi),%rcx
14002c4a2:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
14002c4a7:	e8 30 06 ff ff       	call   0x14001cadc
14002c4ac:	8b 8e b0 00 00 00    	mov    0xb0(%rsi),%ecx
14002c4b2:	85 c0                	test   %eax,%eax
14002c4b4:	75 09                	jne    0x14002c4bf
14002c4b6:	85 c9                	test   %ecx,%ecx
14002c4b8:	75 36                	jne    0x14002c4f0
14002c4ba:	8d 51 01             	lea    0x1(%rcx),%edx
14002c4bd:	eb 23                	jmp    0x14002c4e2
14002c4bf:	85 c9                	test   %ecx,%ecx
14002c4c1:	75 36                	jne    0x14002c4f9
14002c4c3:	39 8e ac 00 00 00    	cmp    %ecx,0xac(%rsi)
14002c4c9:	74 2e                	je     0x14002c4f9
14002c4cb:	48 8b 8e 98 00 00 00 	mov    0x98(%rsi),%rcx
14002c4d2:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
14002c4d7:	e8 00 06 ff ff       	call   0x14001cadc
14002c4dc:	85 c0                	test   %eax,%eax
14002c4de:	75 19                	jne    0x14002c4f9
14002c4e0:	33 d2                	xor    %edx,%edx
14002c4e2:	4c 8b c7             	mov    %rdi,%r8
14002c4e5:	8b cb                	mov    %ebx,%ecx
14002c4e7:	e8 3c 01 00 00       	call   0x14002c628
14002c4ec:	85 c0                	test   %eax,%eax
14002c4ee:	74 09                	je     0x14002c4f9
14002c4f0:	83 0f 04             	orl    $0x4,(%rdi)
14002c4f3:	89 5f 04             	mov    %ebx,0x4(%rdi)
14002c4f6:	89 5f 08             	mov    %ebx,0x8(%rdi)
14002c4f9:	8b 07                	mov    (%rdi),%eax
14002c4fb:	c1 e8 02             	shr    $0x2,%eax
14002c4fe:	f7 d0                	not    %eax
14002c500:	83 e0 01             	and    $0x1,%eax
14002c503:	48 8b 8c 24 10 01 00 	mov    0x110(%rsp),%rcx
14002c50a:	00
14002c50b:	48 33 cc             	xor    %rsp,%rcx
14002c50e:	e8 8d ce fd ff       	call   0x1400093a0
14002c513:	4c 8d 9c 24 20 01 00 	lea    0x120(%rsp),%r11
14002c51a:	00
14002c51b:	49 8b 5b 18          	mov    0x18(%r11),%rbx
14002c51f:	49 8b 73 20          	mov    0x20(%r11),%rsi
14002c523:	49 8b e3             	mov    %r11,%rsp
14002c526:	5f                   	pop    %rdi
14002c527:	c3                   	ret
14002c528:	0f b7 11             	movzwl (%rcx),%edx
14002c52b:	4c 8d 41 02          	lea    0x2(%rcx),%r8
14002c52f:	45 33 d2             	xor    %r10d,%r10d
14002c532:	45 8b ca             	mov    %r10d,%r9d
14002c535:	eb 37                	jmp    0x14002c56e
14002c537:	8d 42 9f             	lea    -0x61(%rdx),%eax
14002c53a:	66 83 f8 05          	cmp    $0x5,%ax
14002c53e:	77 07                	ja     0x14002c547
14002c540:	b8 d9 ff 00 00       	mov    $0xffd9,%eax
14002c545:	eb 0e                	jmp    0x14002c555
14002c547:	8d 42 bf             	lea    -0x41(%rdx),%eax
14002c54a:	66 83 f8 05          	cmp    $0x5,%ax
14002c54e:	77 08                	ja     0x14002c558
14002c550:	b8 f9 ff 00 00       	mov    $0xfff9,%eax
14002c555:	66 03 d0             	add    %ax,%dx
14002c558:	41 c1 e1 04          	shl    $0x4,%r9d
14002c55c:	41 83 c1 d0          	add    $0xffffffd0,%r9d
14002c560:	0f b7 ca             	movzwl %dx,%ecx
14002c563:	41 0f b7 10          	movzwl (%r8),%edx
14002c567:	44 03 c9             	add    %ecx,%r9d
14002c56a:	49 83 c0 02          	add    $0x2,%r8
14002c56e:	66 85 d2             	test   %dx,%dx
14002c571:	75 c4                	jne    0x14002c537
14002c573:	41 8b c1             	mov    %r9d,%eax
14002c576:	c3                   	ret
14002c577:	cc                   	int3
14002c578:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14002c57d:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14002c582:	57                   	push   %rdi
14002c583:	48 83 ec 20          	sub    $0x20,%rsp
14002c587:	33 f6                	xor    %esi,%esi
14002c589:	48 8b fa             	mov    %rdx,%rdi
14002c58c:	48 8b d9             	mov    %rcx,%rbx
14002c58f:	48 85 c9             	test   %rcx,%rcx
14002c592:	74 53                	je     0x14002c5e7
14002c594:	66 39 31             	cmp    %si,(%rcx)
14002c597:	74 4e                	je     0x14002c5e7
14002c599:	48 8d 15 d8 53 01 00 	lea    0x153d8(%rip),%rdx        # 0x140041978
14002c5a0:	e8 bb 53 00 00       	call   0x140031960
14002c5a5:	85 c0                	test   %eax,%eax
14002c5a7:	74 3e                	je     0x14002c5e7
14002c5a9:	48 8d 15 e0 53 01 00 	lea    0x153e0(%rip),%rdx        # 0x140041990
14002c5b0:	48 8b cb             	mov    %rbx,%rcx
14002c5b3:	e8 a8 53 00 00       	call   0x140031960
14002c5b8:	85 c0                	test   %eax,%eax
14002c5ba:	75 21                	jne    0x14002c5dd
14002c5bc:	8b 4f 08             	mov    0x8(%rdi),%ecx
14002c5bf:	44 8d 4e 02          	lea    0x2(%rsi),%r9d
14002c5c3:	4c 8d 44 24 30       	lea    0x30(%rsp),%r8
14002c5c8:	ba 0b 00 00 20       	mov    $0x2000000b,%edx
14002c5cd:	ff 15 5d fb 00 00    	call   *0xfb5d(%rip)        # 0x14003c130
14002c5d3:	85 c0                	test   %eax,%eax
14002c5d5:	74 2d                	je     0x14002c604
14002c5d7:	8b 44 24 30          	mov    0x30(%rsp),%eax
14002c5db:	eb 39                	jmp    0x14002c616
14002c5dd:	48 8b cb             	mov    %rbx,%rcx
14002c5e0:	e8 8b 9a fe ff       	call   0x140016070
14002c5e5:	eb 2f                	jmp    0x14002c616
14002c5e7:	8b 4f 08             	mov    0x8(%rdi),%ecx
14002c5ea:	4c 8d 44 24 30       	lea    0x30(%rsp),%r8
14002c5ef:	41 b9 02 00 00 00    	mov    $0x2,%r9d
14002c5f5:	ba 04 10 00 20       	mov    $0x20001004,%edx
14002c5fa:	ff 15 30 fb 00 00    	call   *0xfb30(%rip)        # 0x14003c130
14002c600:	85 c0                	test   %eax,%eax
14002c602:	75 04                	jne    0x14002c608
14002c604:	33 c0                	xor    %eax,%eax
14002c606:	eb 0e                	jmp    0x14002c616
14002c608:	8b 44 24 30          	mov    0x30(%rsp),%eax
14002c60c:	85 c0                	test   %eax,%eax
14002c60e:	75 06                	jne    0x14002c616
14002c610:	ff 15 c2 fa 00 00    	call   *0xfac2(%rip)        # 0x14003c0d8
14002c616:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
14002c61b:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14002c620:	48 83 c4 20          	add    $0x20,%rsp
14002c624:	5f                   	pop    %rdi
14002c625:	c3                   	ret
14002c626:	cc                   	int3
14002c627:	cc                   	int3
14002c628:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14002c62d:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14002c632:	57                   	push   %rdi
14002c633:	48 83 ec 20          	sub    $0x20,%rsp
14002c637:	8b f2                	mov    %edx,%esi
14002c639:	8b d9                	mov    %ecx,%ebx
14002c63b:	e8 68 46 ff ff       	call   0x140020ca8
14002c640:	8b cb                	mov    %ebx,%ecx
14002c642:	4c 8d 44 24 30       	lea    0x30(%rsp),%r8
14002c647:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
14002c64d:	41 b9 02 00 00 00    	mov    $0x2,%r9d
14002c653:	0f ba e9 0a          	bts    $0xa,%ecx
14002c657:	ba 01 00 00 20       	mov    $0x20000001,%edx
14002c65c:	48 8b f8             	mov    %rax,%rdi
14002c65f:	ff 15 cb fa 00 00    	call   *0xfacb(%rip)        # 0x14003c130
14002c665:	33 d2                	xor    %edx,%edx
14002c667:	85 c0                	test   %eax,%eax
14002c669:	74 5e                	je     0x14002c6c9
14002c66b:	3b 5c 24 30          	cmp    0x30(%rsp),%ebx
14002c66f:	74 51                	je     0x14002c6c2
14002c671:	85 f6                	test   %esi,%esi
14002c673:	74 4d                	je     0x14002c6c2
14002c675:	4c 8b 97 98 00 00 00 	mov    0x98(%rdi),%r10
14002c67c:	44 8b ca             	mov    %edx,%r9d
14002c67f:	45 0f b7 02          	movzwl (%r10),%r8d
14002c683:	49 8d 4a 02          	lea    0x2(%r10),%rcx
14002c687:	41 8d 40 bf          	lea    -0x41(%r8),%eax
14002c68b:	66 83 f8 19          	cmp    $0x19,%ax
14002c68f:	76 0c                	jbe    0x14002c69d
14002c691:	66 41 83 e8 61       	sub    $0x61,%r8w
14002c696:	66 41 83 f8 19       	cmp    $0x19,%r8w
14002c69b:	77 0d                	ja     0x14002c6aa
14002c69d:	44 0f b7 01          	movzwl (%rcx),%r8d
14002c6a1:	41 ff c1             	inc    %r9d
14002c6a4:	48 83 c1 02          	add    $0x2,%rcx
14002c6a8:	eb dd                	jmp    0x14002c687
14002c6aa:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
14002c6ae:	48 ff c0             	inc    %rax
14002c6b1:	66 41 39 14 42       	cmp    %dx,(%r10,%rax,2)
14002c6b6:	75 f6                	jne    0x14002c6ae
14002c6b8:	44 3b c8             	cmp    %eax,%r9d
14002c6bb:	0f 95 c2             	setne  %dl
14002c6be:	8b c2                	mov    %edx,%eax
14002c6c0:	eb 09                	jmp    0x14002c6cb
14002c6c2:	b8 01 00 00 00       	mov    $0x1,%eax
14002c6c7:	eb 02                	jmp    0x14002c6cb
14002c6c9:	33 c0                	xor    %eax,%eax
14002c6cb:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
14002c6d0:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14002c6d5:	48 83 c4 20          	add    $0x20,%rsp
14002c6d9:	5f                   	pop    %rdi
14002c6da:	c3                   	ret
14002c6db:	cc                   	int3
14002c6dc:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14002c6e1:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14002c6e6:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14002c6eb:	57                   	push   %rdi
14002c6ec:	41 56                	push   %r14
14002c6ee:	41 57                	push   %r15
14002c6f0:	48 83 ec 20          	sub    $0x20,%rsp
14002c6f4:	33 ff                	xor    %edi,%edi
14002c6f6:	4d 8b f8             	mov    %r8,%r15
14002c6f9:	8b da                	mov    %edx,%ebx
14002c6fb:	48 8b e9             	mov    %rcx,%rbp
14002c6fe:	85 d2                	test   %edx,%edx
14002c700:	78 30                	js     0x14002c732
14002c702:	49 8b 0f             	mov    (%r15),%rcx
14002c705:	8d 04 1f             	lea    (%rdi,%rbx,1),%eax
14002c708:	99                   	cltd
14002c709:	2b c2                	sub    %edx,%eax
14002c70b:	d1 f8                	sar    $1,%eax
14002c70d:	48 63 f0             	movslq %eax,%rsi
14002c710:	4c 8b f6             	mov    %rsi,%r14
14002c713:	49 c1 e6 04          	shl    $0x4,%r14
14002c717:	49 8b 14 2e          	mov    (%r14,%rbp,1),%rdx
14002c71b:	e8 bc 03 ff ff       	call   0x14001cadc
14002c720:	85 c0                	test   %eax,%eax
14002c722:	74 29                	je     0x14002c74d
14002c724:	79 05                	jns    0x14002c72b
14002c726:	8d 5e ff             	lea    -0x1(%rsi),%ebx
14002c729:	eb 03                	jmp    0x14002c72e
14002c72b:	8d 7e 01             	lea    0x1(%rsi),%edi
14002c72e:	3b fb                	cmp    %ebx,%edi
14002c730:	7e d0                	jle    0x14002c702
14002c732:	32 c0                	xor    %al,%al
14002c734:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14002c739:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
14002c73e:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
14002c743:	48 83 c4 20          	add    $0x20,%rsp