14002243b:	ba 01 00 00 00       	mov    $0x1,%edx
140022440:	49 8b c6             	mov    %r14,%rax
140022443:	48 03 ea             	add    %rdx,%rbp
140022446:	48 f7 d0             	not    %rax
140022449:	48 3b e8             	cmp    %rax,%rbp
14002244c:	76 20                	jbe    0x14002246e
14002244e:	8d 42 0b             	lea    0xb(%rdx),%eax
140022451:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140022456:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
14002245b:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
140022460:	48 83 c4 30          	add    $0x30,%rsp
140022464:	41 5f                	pop    %r15
140022466:	41 5e                	pop    %r14
140022468:	41 5d                	pop    %r13
14002246a:	41 5c                	pop    %r12
14002246c:	5f                   	pop    %rdi
14002246d:	c3                   	ret
14002246e:	4d 8d 78 01          	lea    0x1(%r8),%r15
140022472:	4c 03 fd             	add    %rbp,%r15
140022475:	49 8b cf             	mov    %r15,%rcx
140022478:	e8 93 89 ff ff       	call   0x14001ae10
14002247d:	48 8b d8             	mov    %rax,%rbx
140022480:	4d 85 f6             	test   %r14,%r14
140022483:	74 19                	je     0x14002249e
140022485:	4d 8b ce             	mov    %r14,%r9
140022488:	4d 8b c5             	mov    %r13,%r8
14002248b:	49 8b d7             	mov    %r15,%rdx
14002248e:	48 8b c8             	mov    %rax,%rcx
140022491:	e8 f6 67 00 00       	call   0x140028c8c
140022496:	85 c0                	test   %eax,%eax
140022498:	0f 85 d8 00 00 00    	jne    0x140022576
14002249e:	4d 2b fe             	sub    %r14,%r15
1400224a1:	4a 8d 0c 33          	lea    (%rbx,%r14,1),%rcx
1400224a5:	49 8b d7             	mov    %r15,%rdx
1400224a8:	4c 8b cd             	mov    %rbp,%r9
1400224ab:	4d 8b c4             	mov    %r12,%r8
1400224ae:	e8 d9 67 00 00       	call   0x140028c8c
1400224b3:	85 c0                	test   %eax,%eax
1400224b5:	0f 85 bb 00 00 00    	jne    0x140022576
1400224bb:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
1400224bf:	44 8d 78 08          	lea    0x8(%rax),%r15d
1400224c3:	4c 8b 77 10          	mov    0x10(%rdi),%r14
1400224c7:	49 3b ce             	cmp    %r14,%rcx
1400224ca:	0f 85 9d 00 00 00    	jne    0x14002256d
1400224d0:	48 39 37             	cmp    %rsi,(%rdi)
1400224d3:	75 2b                	jne    0x140022500
1400224d5:	41 8b d7             	mov    %r15d,%edx
1400224d8:	8d 48 04             	lea    0x4(%rax),%ecx
1400224db:	e8 30 89 ff ff       	call   0x14001ae10
1400224e0:	33 c9                	xor    %ecx,%ecx
1400224e2:	48 89 07             	mov    %rax,(%rdi)
1400224e5:	e8 9e 89 ff ff       	call   0x14001ae88
1400224ea:	48 8b 0f             	mov    (%rdi),%rcx
1400224ed:	48 85 c9             	test   %rcx,%rcx
1400224f0:	74 42                	je     0x140022534
1400224f2:	48 8d 41 20          	lea    0x20(%rcx),%rax
1400224f6:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
1400224fa:	48 89 47 10          	mov    %rax,0x10(%rdi)
1400224fe:	eb 6d                	jmp    0x14002256d
140022500:	4c 2b 37             	sub    (%rdi),%r14
140022503:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
14002250a:	ff ff 7f
14002250d:	49 c1 fe 03          	sar    $0x3,%r14
140022511:	4c 3b f0             	cmp    %rax,%r14
140022514:	77 1e                	ja     0x140022534
140022516:	48 8b 0f             	mov    (%rdi),%rcx
140022519:	4b 8d 2c 36          	lea    (%r14,%r14,1),%rbp
14002251d:	48 8b d5             	mov    %rbp,%rdx
140022520:	4d 8b c7             	mov    %r15,%r8
140022523:	e8 b8 10 00 00       	call   0x1400235e0
140022528:	48 85 c0             	test   %rax,%rax
14002252b:	75 22                	jne    0x14002254f
14002252d:	33 c9                	xor    %ecx,%ecx
14002252f:	e8 54 89 ff ff       	call   0x14001ae88
140022534:	48 8b cb             	mov    %rbx,%rcx
140022537:	e8 4c 89 ff ff       	call   0x14001ae88
14002253c:	be 0c 00 00 00       	mov    $0xc,%esi
140022541:	33 c9                	xor    %ecx,%ecx
140022543:	e8 40 89 ff ff       	call   0x14001ae88
140022548:	8b c6                	mov    %esi,%eax
14002254a:	e9 02 ff ff ff       	jmp    0x140022451
14002254f:	4a 8d 0c f0          	lea    (%rax,%r14,8),%rcx
140022553:	48 89 07             	mov    %rax,(%rdi)
140022556:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
14002255a:	48 8d 0c e8          	lea    (%rax,%rbp,8),%rcx
14002255e:	48 89 4f 10          	mov    %rcx,0x10(%rdi)
140022562:	33 c9                	xor    %ecx,%ecx
140022564:	e8 1f 89 ff ff       	call   0x14001ae88
140022569:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
14002256d:	48 89 19             	mov    %rbx,(%rcx)
140022570:	4c 01 7f 08          	add    %r15,0x8(%rdi)
140022574:	eb cb                	jmp    0x140022541
140022576:	45 33 c9             	xor    %r9d,%r9d
140022579:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14002257e:	45 33 c0             	xor    %r8d,%r8d
140022581:	33 d2                	xor    %edx,%edx
140022583:	33 c9                	xor    %ecx,%ecx
140022585:	e8 5e e2 fe ff       	call   0x1400107e8
14002258a:	cc                   	int3
14002258b:	cc                   	int3
14002258c:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140022591:	55                   	push   %rbp
140022592:	56                   	push   %rsi
140022593:	57                   	push   %rdi
140022594:	41 54                	push   %r12
140022596:	41 55                	push   %r13
140022598:	41 56                	push   %r14
14002259a:	41 57                	push   %r15
14002259c:	48 8d ac 24 d0 fd ff 	lea    -0x230(%rsp),%rbp
1400225a3:	ff
1400225a4:	48 81 ec 30 03 00 00 	sub    $0x330,%rsp
1400225ab:	48 8b 05 ce 1a 02 00 	mov    0x21ace(%rip),%rax        # 0x140044080
1400225b2:	48 33 c4             	xor    %rsp,%rax
1400225b5:	48 89 85 20 02 00 00 	mov    %rax,0x220(%rbp)
1400225bc:	4d 8b e0             	mov    %r8,%r12
1400225bf:	48 8b f1             	mov    %rcx,%rsi
1400225c2:	48 bb 01 08 00 00 00 	movabs $0x200000000801,%rbx
1400225c9:	20 00 00
1400225cc:	48 3b d1             	cmp    %rcx,%rdx
1400225cf:	74 22                	je     0x1400225f3
1400225d1:	8a 02                	mov    (%rdx),%al
1400225d3:	2c 2f                	sub    $0x2f,%al
1400225d5:	3c 2d                	cmp    $0x2d,%al
1400225d7:	77 0a                	ja     0x1400225e3
1400225d9:	48 0f be c0          	movsbq %al,%rax
1400225dd:	48 0f a3 c3          	bt     %rax,%rbx
1400225e1:	72 10                	jb     0x1400225f3
1400225e3:	48 8b ce             	mov    %rsi,%rcx
1400225e6:	e8 c5 78 00 00       	call   0x140029eb0
1400225eb:	48 8b d0             	mov    %rax,%rdx
1400225ee:	48 3b c6             	cmp    %rsi,%rax
1400225f1:	75 de                	jne    0x1400225d1
1400225f3:	44 8a 02             	mov    (%rdx),%r8b
1400225f6:	41 80 f8 3a          	cmp    $0x3a,%r8b
1400225fa:	75 1e                	jne    0x14002261a
1400225fc:	48 8d 46 01          	lea    0x1(%rsi),%rax
140022600:	48 3b d0             	cmp    %rax,%rdx
140022603:	74 15                	je     0x14002261a
140022605:	4d 8b cc             	mov    %r12,%r9
140022608:	45 33 c0             	xor    %r8d,%r8d
14002260b:	33 d2                	xor    %edx,%edx
14002260d:	48 8b ce             	mov    %rsi,%rcx
140022610:	e8 ef fd ff ff       	call   0x140022404
140022615:	e9 56 02 00 00       	jmp    0x140022870
14002261a:	41 80 e8 2f          	sub    $0x2f,%r8b
14002261e:	33 ff                	xor    %edi,%edi
140022620:	41 80 f8 2d          	cmp    $0x2d,%r8b
140022624:	77 0c                	ja     0x140022632
140022626:	49 0f be c0          	movsbq %r8b,%rax
14002262a:	48 0f a3 c3          	bt     %rax,%rbx
14002262e:	b0 01                	mov    $0x1,%al
140022630:	72 03                	jb     0x140022635
140022632:	40 8a c7             	mov    %dil,%al
140022635:	48 2b d6             	sub    %rsi,%rdx
140022638:	48 89 7d a0          	mov    %rdi,-0x60(%rbp)
14002263c:	48 ff c2             	inc    %rdx
14002263f:	48 89 7d a8          	mov    %rdi,-0x58(%rbp)
140022643:	f6 d8                	neg    %al
140022645:	48 89 7d b0          	mov    %rdi,-0x50(%rbp)
140022649:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14002264e:	48 89 7d b8          	mov    %rdi,-0x48(%rbp)
140022652:	4d 1b ed             	sbb    %r13,%r13
140022655:	48 89 7d c0          	mov    %rdi,-0x40(%rbp)
140022659:	4c 23 ea             	and    %rdx,%r13
14002265c:	40 88 7d c8          	mov    %dil,-0x38(%rbp)
140022660:	33 d2                	xor    %edx,%edx
140022662:	e8 39 e9 fe ff       	call   0x140010fa0
140022667:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
14002266c:	41 bf e9 fd 00 00    	mov    $0xfde9,%r15d
140022672:	44 39 78 0c          	cmp    %r15d,0xc(%rax)
140022676:	75 18                	jne    0x140022690
140022678:	40 38 7c 24 48       	cmp    %dil,0x48(%rsp)
14002267d:	74 0c                	je     0x14002268b
14002267f:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
140022684:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
14002268b:	45 8b c7             	mov    %r15d,%r8d
14002268e:	eb 3a                	jmp    0x1400226ca
140022690:	e8 1f 91 ff ff       	call   0x14001b7b4
140022695:	85 c0                	test   %eax,%eax
140022697:	75 1b                	jne    0x1400226b4
140022699:	40 38 7c 24 48       	cmp    %dil,0x48(%rsp)
14002269e:	74 0c                	je     0x1400226ac
1400226a0:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
1400226a5:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
1400226ac:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1400226b2:	eb 16                	jmp    0x1400226ca
1400226b4:	40 38 7c 24 48       	cmp    %dil,0x48(%rsp)
1400226b9:	74 0c                	je     0x1400226c7
1400226bb:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
1400226c0:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
1400226c7:	44 8b c7             	mov    %edi,%r8d
1400226ca:	48 8d 55 a0          	lea    -0x60(%rbp),%rdx
1400226ce:	48 8b ce             	mov    %rsi,%rcx
1400226d1:	e8 12 51 ff ff       	call   0x1400177e8
1400226d6:	48 8b 4d b0          	mov    -0x50(%rbp),%rcx
1400226da:	4c 8d 45 d0          	lea    -0x30(%rbp),%r8
1400226de:	85 c0                	test   %eax,%eax
1400226e0:	89 7c 24 28          	mov    %edi,0x28(%rsp)
1400226e4:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1400226e9:	48 0f 45 cf          	cmovne %rdi,%rcx
1400226ed:	45 33 c9             	xor    %r9d,%r9d
1400226f0:	33 d2                	xor    %edx,%edx
1400226f2:	ff 15 a0 9b 00 00    	call   *0x9ba0(%rip)        # 0x14002c298
1400226f8:	48 8b d8             	mov    %rax,%rbx
1400226fb:	48 83 f8 ff          	cmp    $0xffffffffffffffff,%rax
1400226ff:	75 17                	jne    0x140022718
140022701:	4d 8b cc             	mov    %r12,%r9
140022704:	45 33 c0             	xor    %r8d,%r8d
140022707:	33 d2                	xor    %edx,%edx
140022709:	48 8b ce             	mov    %rsi,%rcx
14002270c:	e8 f3 fc ff ff       	call   0x140022404
140022711:	8b f8                	mov    %eax,%edi
140022713:	e9 47 01 00 00       	jmp    0x14002285f
140022718:	4d 8b 74 24 08       	mov    0x8(%r12),%r14
14002271d:	4d 2b 34 24          	sub    (%r12),%r14
140022721:	49 c1 fe 03          	sar    $0x3,%r14
140022725:	33 d2                	xor    %edx,%edx
140022727:	48 89 7c 24 70       	mov    %rdi,0x70(%rsp)
14002272c:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
140022731:	48 89 7c 24 78       	mov    %rdi,0x78(%rsp)
140022736:	48 89 7d 80          	mov    %rdi,-0x80(%rbp)
14002273a:	48 89 7d 88          	mov    %rdi,-0x78(%rbp)
14002273e:	48 89 7d 90          	mov    %rdi,-0x70(%rbp)
140022742:	40 88 7d 98          	mov    %dil,-0x68(%rbp)
140022746:	e8 55 e8 fe ff       	call   0x140010fa0
14002274b:	48 8b 44 24 58       	mov    0x58(%rsp),%rax
140022750:	44 39 78 0c          	cmp    %r15d,0xc(%rax)
140022754:	75 18                	jne    0x14002276e
140022756:	40 38 7c 24 68       	cmp    %dil,0x68(%rsp)
14002275b:	74 0c                	je     0x140022769
14002275d:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
140022762:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
140022769:	45 8b c7             	mov    %r15d,%r8d
14002276c:	eb 3a                	jmp    0x1400227a8
14002276e:	e8 41 90 ff ff       	call   0x14001b7b4
140022773:	85 c0                	test   %eax,%eax
140022775:	75 1b                	jne    0x140022792
140022777:	40 38 7c 24 68       	cmp    %dil,0x68(%rsp)
14002277c:	74 0c                	je     0x14002278a
14002277e:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
140022783:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
14002278a:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140022790:	eb 16                	jmp    0x1400227a8
140022792:	40 38 7c 24 68       	cmp    %dil,0x68(%rsp)
140022797:	74 0c                	je     0x1400227a5
140022799:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
14002279e:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
1400227a5:	44 8b c7             	mov    %edi,%r8d
1400227a8:	48 8d 54 24 70       	lea    0x70(%rsp),%rdx
1400227ad:	48 8d 4d fc          	lea    -0x4(%rbp),%rcx
1400227b1:	e8 b6 f8 ff ff       	call   0x14002206c
1400227b6:	4c 8b 7d 80          	mov    -0x80(%rbp),%r15
1400227ba:	85 c0                	test   %eax,%eax
1400227bc:	49 8b cf             	mov    %r15,%rcx
1400227bf:	48 0f 45 cf          	cmovne %rdi,%rcx
1400227c3:	80 39 2e             	cmpb   $0x2e,(%rcx)
1400227c6:	75 11                	jne    0x1400227d9
1400227c8:	8a 41 01             	mov    0x1(%rcx),%al
1400227cb:	84 c0                	test   %al,%al
1400227cd:	74 20                	je     0x1400227ef
1400227cf:	3c 2e                	cmp    $0x2e,%al
1400227d1:	75 06                	jne    0x1400227d9
1400227d3:	40 38 79 02          	cmp    %dil,0x2(%rcx)
1400227d7:	74 16                	je     0x1400227ef
1400227d9:	4d 8b cc             	mov    %r12,%r9
1400227dc:	4d 8b c5             	mov    %r13,%r8
1400227df:	48 8b d6             	mov    %rsi,%rdx
1400227e2:	e8 1d fc ff ff       	call   0x140022404
1400227e7:	8b f8                	mov    %eax,%edi
1400227e9:	85 c0                	test   %eax,%eax
1400227eb:	75 5b                	jne    0x140022848
1400227ed:	33 ff                	xor    %edi,%edi
1400227ef:	40 38 7d 98          	cmp    %dil,-0x68(%rbp)
1400227f3:	74 08                	je     0x1400227fd
1400227f5:	49 8b cf             	mov    %r15,%rcx
1400227f8:	e8 8b 86 ff ff       	call   0x14001ae88
1400227fd:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
140022801:	48 8b cb             	mov    %rbx,%rcx
140022804:	ff 15 96 9a 00 00    	call   *0x9a96(%rip)        # 0x14002c2a0
14002280a:	41 bf e9 fd 00 00    	mov    $0xfde9,%r15d
140022810:	85 c0                	test   %eax,%eax
140022812:	0f 85 0d ff ff ff    	jne    0x140022725
140022818:	49 8b 04 24          	mov    (%r12),%rax
14002281c:	49 8b 54 24 08       	mov    0x8(%r12),%rdx
140022821:	48 2b d0             	sub    %rax,%rdx
140022824:	48 c1 fa 03          	sar    $0x3,%rdx
140022828:	4c 3b f2             	cmp    %rdx,%r14
14002282b:	74 29                	je     0x140022856
14002282d:	49 2b d6             	sub    %r14,%rdx
140022830:	4a 8d 0c f0          	lea    (%rax,%r14,8),%rcx
140022834:	4c 8d 0d 1d f8 ff ff 	lea    -0x7e3(%rip),%r9        # 0x140022058
14002283b:	41 b8 08 00 00 00    	mov    $0x8,%r8d
140022841:	e8 2a 6e 00 00       	call   0x140029670
140022846:	eb 0e                	jmp    0x140022856
140022848:	80 7d 98 00          	cmpb   $0x0,-0x68(%rbp)
14002284c:	74 08                	je     0x140022856
14002284e:	49 8b cf             	mov    %r15,%rcx
140022851:	e8 32 86 ff ff       	call   0x14001ae88
140022856:	48 8b cb             	mov    %rbx,%rcx
140022859:	ff 15 31 9a 00 00    	call   *0x9a31(%rip)        # 0x14002c290
14002285f:	80 7d c8 00          	cmpb   $0x0,-0x38(%rbp)
140022863:	74 09                	je     0x14002286e
140022865:	48 8b 4d b0          	mov    -0x50(%rbp),%rcx
140022869:	e8 1a 86 ff ff       	call   0x14001ae88
14002286e:	8b c7                	mov    %edi,%eax
140022870:	48 8b 8d 20 02 00 00 	mov    0x220(%rbp),%rcx
140022877:	48 33 cc             	xor    %rsp,%rcx
14002287a:	e8 f1 9c fe ff       	call   0x14000c570
14002287f:	48 8b 9c 24 88 03 00 	mov    0x388(%rsp),%rbx
140022886:	00
140022887:	48 81 c4 30 03 00 00 	add    $0x330,%rsp
14002288e:	41 5f                	pop    %r15
140022890:	41 5e                	pop    %r14
140022892:	41 5d                	pop    %r13
140022894:	41 5c                	pop    %r12
140022896:	5f                   	pop    %rdi
140022897:	5e                   	pop    %rsi
140022898:	5d                   	pop    %rbp
140022899:	c3                   	ret
14002289a:	cc                   	int3
14002289b:	cc                   	int3
14002289c:	e9 57 f9 ff ff       	jmp    0x1400221f8
1400228a1:	cc                   	int3
1400228a2:	cc                   	int3
1400228a3:	cc                   	int3
1400228a4:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1400228a9:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
1400228ae:	55                   	push   %rbp
1400228af:	48 8d ac 24 70 fe ff 	lea    -0x190(%rsp),%rbp
1400228b6:	ff
1400228b7:	48 81 ec 90 02 00 00 	sub    $0x290,%rsp
1400228be:	48 8b 05 bb 17 02 00 	mov    0x217bb(%rip),%rax        # 0x140044080
1400228c5:	48 33 c4             	xor    %rsp,%rax
1400228c8:	48 89 85 80 01 00 00 	mov    %rax,0x180(%rbp)
1400228cf:	41 8b f8             	mov    %r8d,%edi
1400228d2:	48 8b da             	mov    %rdx,%rbx
1400228d5:	41 b8 05 01 00 00    	mov    $0x105,%r8d
1400228db:	48 8d 54 24 70       	lea    0x70(%rsp),%rdx
1400228e0:	ff 15 72 97 00 00    	call   *0x9772(%rip)        # 0x14002c058
1400228e6:	85 c0                	test   %eax,%eax
1400228e8:	75 14                	jne    0x1400228fe
1400228ea:	ff 15 70 97 00 00    	call   *0x9770(%rip)        # 0x14002c060
1400228f0:	8b c8                	mov    %eax,%ecx
1400228f2:	e8 85 20 ff ff       	call   0x14001497c
1400228f7:	33 c0                	xor    %eax,%eax
1400228f9:	e9 a0 00 00 00       	jmp    0x14002299e
1400228fe:	48 83 64 24 60 00    	andq   $0x0,0x60(%rsp)
140022904:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140022909:	48 8b c7             	mov    %rdi,%rax
14002290c:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)