1400134b4:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400134b9:	48 83 c4 20          	add    $0x20,%rsp
1400134bd:	5f                   	pop    %rdi
1400134be:	c3                   	ret
1400134bf:	83 ff ff             	cmp    $0xffffffff,%edi
1400134c2:	74 ed                	je     0x1400134b1
1400134c4:	8b 43 14             	mov    0x14(%rbx),%eax
1400134c7:	8b 4b 14             	mov    0x14(%rbx),%ecx
1400134ca:	a8 01                	test   $0x1,%al
1400134cc:	75 08                	jne    0x1400134d6
1400134ce:	83 e1 06             	and    $0x6,%ecx
1400134d1:	80 f9 06             	cmp    $0x6,%cl
1400134d4:	75 db                	jne    0x1400134b1
1400134d6:	48 8b 43 08          	mov    0x8(%rbx),%rax
1400134da:	48 85 c0             	test   %rax,%rax
1400134dd:	75 0c                	jne    0x1400134eb
1400134df:	48 8b cb             	mov    %rbx,%rcx
1400134e2:	e8 f1 ca 00 00       	call   0x14001ffd8
1400134e7:	48 8b 43 08          	mov    0x8(%rbx),%rax
1400134eb:	48 8b 0b             	mov    (%rbx),%rcx
1400134ee:	48 3b c8             	cmp    %rax,%rcx
1400134f1:	75 0d                	jne    0x140013500
1400134f3:	83 7b 10 00          	cmpl   $0x0,0x10(%rbx)
1400134f7:	75 b8                	jne    0x1400134b1
1400134f9:	48 8d 41 01          	lea    0x1(%rcx),%rax
1400134fd:	48 89 03             	mov    %rax,(%rbx)
140013500:	8b 43 14             	mov    0x14(%rbx),%eax
140013503:	48 8b 0b             	mov    (%rbx),%rcx
140013506:	48 ff c9             	dec    %rcx
140013509:	c1 e8 0c             	shr    $0xc,%eax
14001350c:	48 89 0b             	mov    %rcx,(%rbx)
14001350f:	24 01                	and    $0x1,%al
140013511:	74 0e                	je     0x140013521
140013513:	40 38 39             	cmp    %dil,(%rcx)
140013516:	74 0c                	je     0x140013524
140013518:	48 8d 41 01          	lea    0x1(%rcx),%rax
14001351c:	48 89 03             	mov    %rax,(%rbx)
14001351f:	eb 90                	jmp    0x1400134b1
140013521:	40 88 39             	mov    %dil,(%rcx)
140013524:	ff 43 10             	incl   0x10(%rbx)
140013527:	f0 83 63 14 f7       	lock andl $0xfffffff7,0x14(%rbx)
14001352c:	f0 83 4b 14 01       	lock orl $0x1,0x14(%rbx)
140013531:	40 0f b6 c7          	movzbl %dil,%eax
140013535:	e9 7a ff ff ff       	jmp    0x1400134b4
14001353a:	cc                   	int3
14001353b:	cc                   	int3
14001353c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140013541:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140013546:	57                   	push   %rdi
140013547:	48 83 ec 20          	sub    $0x20,%rsp
14001354b:	48 8b da             	mov    %rdx,%rbx
14001354e:	8b f9                	mov    %ecx,%edi
140013550:	48 85 d2             	test   %rdx,%rdx
140013553:	75 1e                	jne    0x140013573
140013555:	e8 92 14 00 00       	call   0x1400149ec
14001355a:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140013560:	e8 33 d2 ff ff       	call   0x140010798
140013565:	83 c8 ff             	or     $0xffffffff,%eax
140013568:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14001356d:	48 83 c4 20          	add    $0x20,%rsp
140013571:	5f                   	pop    %rdi
140013572:	c3                   	ret
140013573:	48 8b cb             	mov    %rbx,%rcx
140013576:	e8 8d d4 ff ff       	call   0x140010a08
14001357b:	90                   	nop
14001357c:	48 8b d3             	mov    %rbx,%rdx
14001357f:	8b cf                	mov    %edi,%ecx
140013581:	e8 8e fe ff ff       	call   0x140013414
140013586:	8b f8                	mov    %eax,%edi
140013588:	48 8b cb             	mov    %rbx,%rcx
14001358b:	e8 84 d4 ff ff       	call   0x140010a14
140013590:	8b c7                	mov    %edi,%eax
140013592:	eb d4                	jmp    0x140013568
140013594:	40 53                	rex push %rbx
140013596:	55                   	push   %rbp
140013597:	56                   	push   %rsi
140013598:	57                   	push   %rdi
140013599:	41 54                	push   %r12
14001359b:	48 83 ec 20          	sub    $0x20,%rsp
14001359f:	48 8b f9             	mov    %rcx,%rdi
1400135a2:	8b 41 14             	mov    0x14(%rcx),%eax
1400135a5:	c1 e8 0c             	shr    $0xc,%eax
1400135a8:	4c 8d 25 e1 36 03 00 	lea    0x336e1(%rip),%r12        # 0x140046c90
1400135af:	be 01 00 00 00       	mov    $0x1,%esi
1400135b4:	48 8d 2d 05 0d 03 00 	lea    0x30d05(%rip),%rbp        # 0x1400442c0
1400135bb:	40 84 c6             	test   %al,%sil
1400135be:	75 73                	jne    0x140013633
1400135c0:	e8 87 a0 00 00       	call   0x14001d64c
1400135c5:	83 f8 ff             	cmp    $0xffffffff,%eax
1400135c8:	74 35                	je     0x1400135ff
1400135ca:	48 8b cf             	mov    %rdi,%rcx
1400135cd:	e8 7a a0 00 00       	call   0x14001d64c
1400135d2:	83 f8 fe             	cmp    $0xfffffffe,%eax
1400135d5:	74 28                	je     0x1400135ff
1400135d7:	48 8b cf             	mov    %rdi,%rcx
1400135da:	e8 6d a0 00 00       	call   0x14001d64c
1400135df:	48 63 d8             	movslq %eax,%rbx
1400135e2:	48 8b cf             	mov    %rdi,%rcx
1400135e5:	48 c1 fb 06          	sar    $0x6,%rbx
1400135e9:	e8 5e a0 00 00       	call   0x14001d64c
1400135ee:	83 e0 3f             	and    $0x3f,%eax
1400135f1:	48 8d 0c c0          	lea    (%rax,%rax,8),%rcx
1400135f5:	49 8b 04 dc          	mov    (%r12,%rbx,8),%rax
1400135f9:	48 8d 14 c8          	lea    (%rax,%rcx,8),%rdx
1400135fd:	eb 03                	jmp    0x140013602
1400135ff:	48 8b d5             	mov    %rbp,%rdx
140013602:	80 7a 39 00          	cmpb   $0x0,0x39(%rdx)
140013606:	74 2b                	je     0x140013633
140013608:	48 8d 5c 24 50       	lea    0x50(%rsp),%rbx
14001360d:	48 8b cf             	mov    %rdi,%rcx
140013610:	e8 f3 f2 ff ff       	call   0x140012908
140013615:	83 f8 ff             	cmp    $0xffffffff,%eax
140013618:	74 7b                	je     0x140013695
14001361a:	88 03                	mov    %al,(%rbx)
14001361c:	48 03 de             	add    %rsi,%rbx
14001361f:	48 8d 44 24 52       	lea    0x52(%rsp),%rax
140013624:	48 3b d8             	cmp    %rax,%rbx
140013627:	75 e4                	jne    0x14001360d
140013629:	0f b7 44 24 50       	movzwl 0x50(%rsp),%eax
14001362e:	e9 f9 00 00 00       	jmp    0x14001372c
140013633:	8b 47 14             	mov    0x14(%rdi),%eax
140013636:	c1 e8 0c             	shr    $0xc,%eax
140013639:	40 84 c6             	test   %al,%sil
14001363c:	0f 85 c2 00 00 00    	jne    0x140013704
140013642:	48 8b cf             	mov    %rdi,%rcx
140013645:	e8 02 a0 00 00       	call   0x14001d64c
14001364a:	83 f8 ff             	cmp    $0xffffffff,%eax
14001364d:	74 33                	je     0x140013682
14001364f:	48 8b cf             	mov    %rdi,%rcx
140013652:	e8 f5 9f 00 00       	call   0x14001d64c
140013657:	83 f8 fe             	cmp    $0xfffffffe,%eax
14001365a:	74 26                	je     0x140013682
14001365c:	48 8b cf             	mov    %rdi,%rcx
14001365f:	e8 e8 9f 00 00       	call   0x14001d64c
140013664:	48 63 d8             	movslq %eax,%rbx
140013667:	48 8b cf             	mov    %rdi,%rcx
14001366a:	48 c1 fb 06          	sar    $0x6,%rbx
14001366e:	e8 d9 9f 00 00       	call   0x14001d64c
140013673:	83 e0 3f             	and    $0x3f,%eax
140013676:	48 8d 0c c0          	lea    (%rax,%rax,8),%rcx
14001367a:	49 8b 04 dc          	mov    (%r12,%rbx,8),%rax
14001367e:	48 8d 2c c8          	lea    (%rax,%rcx,8),%rbp
140013682:	80 7d 38 00          	cmpb   $0x0,0x38(%rbp)
140013686:	7d 7c                	jge    0x140013704
140013688:	48 8b cf             	mov    %rdi,%rcx
14001368b:	e8 78 f2 ff ff       	call   0x140012908
140013690:	83 f8 ff             	cmp    $0xffffffff,%eax
140013693:	75 0a                	jne    0x14001369f
140013695:	b8 ff ff 00 00       	mov    $0xffff,%eax
14001369a:	e9 8d 00 00 00       	jmp    0x14001372c
14001369f:	88 44 24 60          	mov    %al,0x60(%rsp)
1400136a3:	e8 ac 05 00 00       	call   0x140013c54
1400136a8:	0f b6 4c 24 60       	movzbl 0x60(%rsp),%ecx
1400136ad:	66 83 3c 48 00       	cmpw   $0x0,(%rax,%rcx,2)
1400136b2:	7d 25                	jge    0x1400136d9
1400136b4:	48 8b cf             	mov    %rdi,%rcx
1400136b7:	e8 4c f2 ff ff       	call   0x140012908
1400136bc:	83 f8 ff             	cmp    $0xffffffff,%eax
1400136bf:	75 0f                	jne    0x1400136d0
1400136c1:	0f be 4c 24 60       	movsbl 0x60(%rsp),%ecx
1400136c6:	48 8b d7             	mov    %rdi,%rdx
1400136c9:	e8 6e fe ff ff       	call   0x14001353c
1400136ce:	eb c5                	jmp    0x140013695
1400136d0:	88 44 24 61          	mov    %al,0x61(%rsp)
1400136d4:	be 02 00 00 00       	mov    $0x2,%esi
1400136d9:	4c 8b c6             	mov    %rsi,%r8
1400136dc:	48 8d 54 24 60       	lea    0x60(%rsp),%rdx
1400136e1:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
1400136e6:	e8 e1 90 00 00       	call   0x14001c7cc
1400136eb:	83 f8 ff             	cmp    $0xffffffff,%eax
1400136ee:	75 0d                	jne    0x1400136fd
1400136f0:	e8 f7 12 00 00       	call   0x1400149ec
1400136f5:	c7 00 2a 00 00 00    	movl   $0x2a,(%rax)
1400136fb:	eb 98                	jmp    0x140013695
1400136fd:	0f b7 44 24 58       	movzwl 0x58(%rsp),%eax
140013702:	eb 28                	jmp    0x14001372c
140013704:	8b 47 10             	mov    0x10(%rdi),%eax
140013707:	be 02 00 00 00       	mov    $0x2,%esi
14001370c:	3b c6                	cmp    %esi,%eax
14001370e:	7c 14                	jl     0x140013724
140013710:	83 c0 fe             	add    $0xfffffffe,%eax
140013713:	89 47 10             	mov    %eax,0x10(%rdi)
140013716:	48 8b 0f             	mov    (%rdi),%rcx
140013719:	0f b7 01             	movzwl (%rcx),%eax
14001371c:	48 03 ce             	add    %rsi,%rcx
14001371f:	48 89 0f             	mov    %rcx,(%rdi)
140013722:	eb 08                	jmp    0x14001372c
140013724:	48 8b cf             	mov    %rdi,%rcx
140013727:	e8 c4 b2 00 00       	call   0x14001e9f0
14001372c:	48 83 c4 20          	add    $0x20,%rsp
140013730:	41 5c                	pop    %r12
140013732:	5f                   	pop    %rdi
140013733:	5e                   	pop    %rsi
140013734:	5d                   	pop    %rbp
140013735:	5b                   	pop    %rbx
140013736:	c3                   	ret
140013737:	cc                   	int3
140013738:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14001373d:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140013742:	57                   	push   %rdi
140013743:	48 83 ec 20          	sub    $0x20,%rsp
140013747:	48 8b d9             	mov    %rcx,%rbx
14001374a:	48 85 c9             	test   %rcx,%rcx
14001374d:	75 20                	jne    0x14001376f
14001374f:	e8 98 12 00 00       	call   0x1400149ec
140013754:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
14001375a:	e8 39 d0 ff ff       	call   0x140010798
14001375f:	b8 ff ff 00 00       	mov    $0xffff,%eax
140013764:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140013769:	48 83 c4 20          	add    $0x20,%rsp
14001376d:	5f                   	pop    %rdi
14001376e:	c3                   	ret
14001376f:	e8 94 d2 ff ff       	call   0x140010a08
140013774:	90                   	nop
140013775:	48 8b cb             	mov    %rbx,%rcx
140013778:	e8 17 fe ff ff       	call   0x140013594
14001377d:	0f b7 f8             	movzwl %ax,%edi
140013780:	48 8b cb             	mov    %rbx,%rcx
140013783:	e8 8c d2 ff ff       	call   0x140010a14
140013788:	0f b7 c7             	movzwl %di,%eax
14001378b:	eb d7                	jmp    0x140013764
14001378d:	cc                   	int3
14001378e:	cc                   	int3
14001378f:	cc                   	int3
140013790:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140013795:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14001379a:	56                   	push   %rsi
14001379b:	57                   	push   %rdi
14001379c:	41 56                	push   %r14
14001379e:	48 83 ec 40          	sub    $0x40,%rsp
1400137a2:	48 8b 05 d7 08 03 00 	mov    0x308d7(%rip),%rax        # 0x140044080
1400137a9:	48 33 c4             	xor    %rsp,%rax
1400137ac:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1400137b1:	8b 42 14             	mov    0x14(%rdx),%eax
1400137b4:	48 8b fa             	mov    %rdx,%rdi
1400137b7:	0f b7 f1             	movzwl %cx,%esi
1400137ba:	c1 e8 0c             	shr    $0xc,%eax
1400137bd:	a8 01                	test   $0x1,%al
1400137bf:	74 19                	je     0x1400137da
1400137c1:	83 42 10 fe          	addl   $0xfffffffe,0x10(%rdx)
1400137c5:	0f 88 0a 01 00 00    	js     0x1400138d5
1400137cb:	48 8b 02             	mov    (%rdx),%rax
1400137ce:	66 89 08             	mov    %cx,(%rax)
1400137d1:	48 83 02 02          	addq   $0x2,(%rdx)
1400137d5:	e9 0f 01 00 00       	jmp    0x1400138e9
1400137da:	48 8b cf             	mov    %rdi,%rcx
1400137dd:	e8 6a 9e 00 00       	call   0x14001d64c
1400137e2:	48 8d 2d d7 0a 03 00 	lea    0x30ad7(%rip),%rbp        # 0x1400442c0
1400137e9:	4c 8d 35 a0 34 03 00 	lea    0x334a0(%rip),%r14        # 0x140046c90
1400137f0:	83 f8 ff             	cmp    $0xffffffff,%eax
1400137f3:	74 35                	je     0x14001382a
1400137f5:	48 8b cf             	mov    %rdi,%rcx
1400137f8:	e8 4f 9e 00 00       	call   0x14001d64c
1400137fd:	83 f8 fe             	cmp    $0xfffffffe,%eax
140013800:	74 28                	je     0x14001382a
140013802:	48 8b cf             	mov    %rdi,%rcx
140013805:	e8 42 9e 00 00       	call   0x14001d64c
14001380a:	48 63 d8             	movslq %eax,%rbx
14001380d:	48 8b cf             	mov    %rdi,%rcx
140013810:	48 c1 fb 06          	sar    $0x6,%rbx
140013814:	e8 33 9e 00 00       	call   0x14001d64c
140013819:	83 e0 3f             	and    $0x3f,%eax
14001381c:	48 8d 0c c0          	lea    (%rax,%rax,8),%rcx
140013820:	49 8b 04 de          	mov    (%r14,%rbx,8),%rax
140013824:	48 8d 14 c8          	lea    (%rax,%rcx,8),%rdx
140013828:	eb 03                	jmp    0x14001382d
14001382a:	48 8b d5             	mov    %rbp,%rdx
14001382d:	8a 42 39             	mov    0x39(%rdx),%al
140013830:	fe c8                	dec    %al
140013832:	3c 01                	cmp    $0x1,%al
140013834:	0f 86 92 00 00 00    	jbe    0x1400138cc
14001383a:	48 8b cf             	mov    %rdi,%rcx
14001383d:	e8 0a 9e 00 00       	call   0x14001d64c
140013842:	83 f8 ff             	cmp    $0xffffffff,%eax
140013845:	74 33                	je     0x14001387a
140013847:	48 8b cf             	mov    %rdi,%rcx
14001384a:	e8 fd 9d 00 00       	call   0x14001d64c
14001384f:	83 f8 fe             	cmp    $0xfffffffe,%eax
140013852:	74 26                	je     0x14001387a
140013854:	48 8b cf             	mov    %rdi,%rcx
140013857:	e8 f0 9d 00 00       	call   0x14001d64c
14001385c:	48 63 d8             	movslq %eax,%rbx
14001385f:	48 8b cf             	mov    %rdi,%rcx
140013862:	48 c1 fb 06          	sar    $0x6,%rbx
140013866:	e8 e1 9d 00 00       	call   0x14001d64c
14001386b:	83 e0 3f             	and    $0x3f,%eax
14001386e:	48 8d 0c c0          	lea    (%rax,%rax,8),%rcx
140013872:	49 8b 04 de          	mov    (%r14,%rbx,8),%rax
140013876:	48 8d 2c c8          	lea    (%rax,%rcx,8),%rbp
14001387a:	33 db                	xor    %ebx,%ebx
14001387c:	38 5d 38             	cmp    %bl,0x38(%rbp)
14001387f:	7d 4b                	jge    0x1400138cc
140013881:	44 0f b7 ce          	movzwl %si,%r9d
140013885:	44 8d 43 05          	lea    0x5(%rbx),%r8d
140013889:	48 8d 54 24 24       	lea    0x24(%rsp),%rdx
14001388e:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140013893:	e8 dc 90 00 00       	call   0x14001c974
140013898:	85 c0                	test   %eax,%eax
14001389a:	75 29                	jne    0x1400138c5
14001389c:	39 5c 24 20          	cmp    %ebx,0x20(%rsp)
1400138a0:	7e 47                	jle    0x1400138e9
1400138a2:	48 8d 6c 24 24       	lea    0x24(%rsp),%rbp
1400138a7:	0f be 4d 00          	movsbl 0x0(%rbp),%ecx
1400138ab:	48 8b d7             	mov    %rdi,%rdx
1400138ae:	e8 b1 f1 ff ff       	call   0x140012a64
1400138b3:	83 f8 ff             	cmp    $0xffffffff,%eax
1400138b6:	74 0d                	je     0x1400138c5
1400138b8:	ff c3                	inc    %ebx
1400138ba:	48 ff c5             	inc    %rbp
1400138bd:	3b 5c 24 20          	cmp    0x20(%rsp),%ebx
1400138c1:	7c e4                	jl     0x1400138a7
1400138c3:	eb 24                	jmp    0x1400138e9
1400138c5:	b8 ff ff 00 00       	mov    $0xffff,%eax
1400138ca:	eb 20                	jmp    0x1400138ec
1400138cc:	83 47 10 fe          	addl   $0xfffffffe,0x10(%rdi)
1400138d0:	79 0d                	jns    0x1400138df
1400138d2:	48 8b d7             	mov    %rdi,%rdx
1400138d5:	0f b7 ce             	movzwl %si,%ecx
1400138d8:	e8 2b b9 00 00       	call   0x14001f208
1400138dd:	eb 0d                	jmp    0x1400138ec
1400138df:	48 8b 07             	mov    (%rdi),%rax
1400138e2:	66 89 30             	mov    %si,(%rax)
1400138e5:	48 83 07 02          	addq   $0x2,(%rdi)
1400138e9:	0f b7 c6             	movzwl %si,%eax
1400138ec:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
1400138f1:	48 33 cc             	xor    %rsp,%rcx
1400138f4:	e8 77 8c ff ff       	call   0x14000c570
1400138f9:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
1400138fe:	48 8b 6c 24 70       	mov    0x70(%rsp),%rbp
140013903:	48 83 c4 40          	add    $0x40,%rsp
140013907:	41 5e                	pop    %r14
140013909:	5f                   	pop    %rdi
14001390a:	5e                   	pop    %rsi
14001390b:	c3                   	ret
14001390c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140013911:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140013916:	57                   	push   %rdi
140013917:	48 83 ec 20          	sub    $0x20,%rsp
14001391b:	48 8b da             	mov    %rdx,%rbx
14001391e:	0f b7 f9             	movzwl %cx,%edi
140013921:	48 85 d2             	test   %rdx,%rdx
140013924:	75 20                	jne    0x140013946
140013926:	e8 c1 10 00 00       	call   0x1400149ec
14001392b:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140013931:	e8 62 ce ff ff       	call   0x140010798
140013936:	b8 ff ff 00 00       	mov    $0xffff,%eax
14001393b:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140013940:	48 83 c4 20          	add    $0x20,%rsp
140013944:	5f                   	pop    %rdi
140013945:	c3                   	ret