1402a9472:	81 fe ff 00 00 00    	cmp    $0xff,%esi
1402a9478:	0f 94 c2             	sete   %dl
1402a947b:	49 3b d4             	cmp    %r12,%rdx
1402a947e:	0f 83 47 01 00 00    	jae    0x1402a95cb
1402a9484:	8d 4e ff             	lea    -0x1(%rsi),%ecx
1402a9487:	44 8b c9             	mov    %ecx,%r9d
1402a948a:	48 8d 34 52          	lea    (%rdx,%rdx,2),%rsi
1402a948e:	c1 e9 03             	shr    $0x3,%ecx
1402a9491:	41 83 e1 07          	and    $0x7,%r9d
1402a9495:	48 c1 e6 09          	shl    $0x9,%rsi
1402a9499:	48 03 74 24 50       	add    0x50(%rsp),%rsi
1402a949e:	48 6b ea 21          	imul   $0x21,%rdx,%rbp
1402a94a2:	8d 41 01             	lea    0x1(%rcx),%eax
1402a94a5:	44 89 4c 24 30       	mov    %r9d,0x30(%rsp)
1402a94aa:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
1402a94af:	4c 2b e2             	sub    %rdx,%r12
1402a94b2:	48 89 4c 24 60       	mov    %rcx,0x60(%rsp)
1402a94b7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
1402a94be:	00 00
1402a94c0:	48 03 c5             	add    %rbp,%rax
1402a94c3:	44 0f b6 04 18       	movzbl (%rax,%rbx,1),%r8d
1402a94c8:	48 8d 04 29          	lea    (%rcx,%rbp,1),%rax
1402a94cc:	0f b6 0c 18          	movzbl (%rax,%rbx,1),%ecx
1402a94d0:	41 c1 e0 08          	shl    $0x8,%r8d
1402a94d4:	44 0b c1             	or     %ecx,%r8d
1402a94d7:	41 8b c9             	mov    %r9d,%ecx
1402a94da:	41 d3 e8             	shr    %cl,%r8d
1402a94dd:	b9 3f 00 00 00       	mov    $0x3f,%ecx
1402a94e2:	41 83 e0 3f          	and    $0x3f,%r8d
1402a94e6:	41 2b c8             	sub    %r8d,%ecx
1402a94e9:	41 8b c0             	mov    %r8d,%eax
1402a94ec:	c1 e8 05             	shr    $0x5,%eax
1402a94ef:	ff c8                	dec    %eax
1402a94f1:	8b d0                	mov    %eax,%edx
1402a94f3:	41 23 c0             	and    %r8d,%eax
1402a94f6:	f7 d2                	not    %edx
1402a94f8:	23 ca                	and    %edx,%ecx
1402a94fa:	83 e2 01             	and    $0x1,%edx
1402a94fd:	0b c8                	or     %eax,%ecx
1402a94ff:	8b c1                	mov    %ecx,%eax
1402a9501:	83 e1 01             	and    $0x1,%ecx
1402a9504:	d1 e8                	shr    $1,%eax
1402a9506:	03 c1                	add    %ecx,%eax
1402a9508:	49 8b cd             	mov    %r13,%rcx
1402a950b:	8d 1c 42             	lea    (%rdx,%rax,2),%ebx
1402a950e:	48 8b d6             	mov    %rsi,%rdx
1402a9511:	44 8b c3             	mov    %ebx,%r8d
1402a9514:	41 d1 e8             	shr    $1,%r8d
1402a9517:	e8 44 39 dc ff       	call   0x14006ce60
1402a951c:	49 8b d6             	mov    %r14,%rdx
1402a951f:	48 8b cf             	mov    %rdi,%rcx
1402a9522:	e8 99 1f dc ff       	call   0x14006b4c0
1402a9527:	44 8b c3             	mov    %ebx,%r8d
1402a952a:	41 83 e0 01          	and    $0x1,%r8d
1402a952e:	49 f7 d8             	neg    %r8
1402a9531:	49 8b d0             	mov    %r8,%rdx
1402a9534:	49 8b c0             	mov    %r8,%rax
1402a9537:	48 23 07             	and    (%rdi),%rax
1402a953a:	48 f7 d2             	not    %rdx
1402a953d:	48 8b ca             	mov    %rdx,%rcx
1402a9540:	49 23 0e             	and    (%r14),%rcx
1402a9543:	48 33 c8             	xor    %rax,%rcx
1402a9546:	48 8b c2             	mov    %rdx,%rax
1402a9549:	49 89 0e             	mov    %rcx,(%r14)
1402a954c:	49 23 46 08          	and    0x8(%r14),%rax
1402a9550:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
1402a9554:	49 23 c8             	and    %r8,%rcx
1402a9557:	48 33 c8             	xor    %rax,%rcx
1402a955a:	48 8b c2             	mov    %rdx,%rax
1402a955d:	49 89 4e 08          	mov    %rcx,0x8(%r14)
1402a9561:	49 23 46 10          	and    0x10(%r14),%rax
1402a9565:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
1402a9569:	49 23 c8             	and    %r8,%rcx
1402a956c:	48 33 c8             	xor    %rax,%rcx
1402a956f:	49 89 4e 10          	mov    %rcx,0x10(%r14)
1402a9573:	48 8b 4f 18          	mov    0x18(%rdi),%rcx
1402a9577:	49 8b 46 18          	mov    0x18(%r14),%rax
1402a957b:	49 23 c8             	and    %r8,%rcx
1402a957e:	48 23 c2             	and    %rdx,%rax
1402a9581:	4d 8b c5             	mov    %r13,%r8
1402a9584:	48 33 c8             	xor    %rax,%rcx
1402a9587:	49 8b d7             	mov    %r15,%rdx
1402a958a:	49 89 4e 18          	mov    %rcx,0x18(%r14)
1402a958e:	49 8b cf             	mov    %r15,%rcx
1402a9591:	e8 2a 43 dc ff       	call   0x14006d8c0
1402a9596:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
1402a959b:	48 83 c5 21          	add    $0x21,%rbp
1402a959f:	44 8b 4c 24 30       	mov    0x30(%rsp),%r9d
1402a95a4:	48 81 c6 00 06 00 00 	add    $0x600,%rsi
1402a95ab:	48 8b 44 24 68       	mov    0x68(%rsp),%rax
1402a95b0:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
1402a95b5:	49 83 ec 01          	sub    $0x1,%r12
1402a95b9:	0f 85 01 ff ff ff    	jne    0x1402a94c0
1402a95bf:	8b 74 24 38          	mov    0x38(%rsp),%esi
1402a95c3:	4c 8b a4 24 e0 00 00 	mov    0xe0(%rsp),%r12
1402a95ca:	00
1402a95cb:	83 c6 fb             	add    $0xfffffffb,%esi
1402a95ce:	49 8b d7             	mov    %r15,%rdx
1402a95d1:	49 8b cf             	mov    %r15,%rcx
1402a95d4:	89 74 24 38          	mov    %esi,0x38(%rsp)
1402a95d8:	e8 a3 3f dc ff       	call   0x14006d580
1402a95dd:	49 8b d7             	mov    %r15,%rdx
1402a95e0:	49 8b cf             	mov    %r15,%rcx
1402a95e3:	e8 98 3f dc ff       	call   0x14006d580
1402a95e8:	49 8b d7             	mov    %r15,%rdx
1402a95eb:	49 8b cf             	mov    %r15,%rcx
1402a95ee:	e8 8d 3f dc ff       	call   0x14006d580
1402a95f3:	49 8b d7             	mov    %r15,%rdx
1402a95f6:	49 8b cf             	mov    %r15,%rcx
1402a95f9:	e8 82 3f dc ff       	call   0x14006d580
1402a95fe:	49 8b d7             	mov    %r15,%rdx
1402a9601:	49 8b cf             	mov    %r15,%rcx
1402a9604:	e8 77 3f dc ff       	call   0x14006d580
1402a9609:	83 fe 05             	cmp    $0x5,%esi
1402a960c:	0f 83 5e fe ff ff    	jae    0x1402a9470
1402a9612:	4d 85 e4             	test   %r12,%r12
1402a9615:	0f 84 e9 00 00 00    	je     0x1402a9704
1402a961b:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
1402a9620:	48 8b f3             	mov    %rbx,%rsi
1402a9623:	0f 1f 40 00          	nopl   0x0(%rax)
1402a9627:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
1402a962e:	00 00
1402a9630:	0f b6 16             	movzbl (%rsi),%edx
1402a9633:	b9 3f 00 00 00       	mov    $0x3f,%ecx
1402a9638:	83 e2 1f             	and    $0x1f,%edx
1402a963b:	03 d2                	add    %edx,%edx
1402a963d:	2b ca                	sub    %edx,%ecx
1402a963f:	8b c2                	mov    %edx,%eax
1402a9641:	c1 e8 05             	shr    $0x5,%eax
1402a9644:	ff c8                	dec    %eax
1402a9646:	44 8b c0             	mov    %eax,%r8d
1402a9649:	23 c2                	and    %edx,%eax
1402a964b:	41 f7 d0             	not    %r8d
1402a964e:	48 8b d5             	mov    %rbp,%rdx
1402a9651:	41 23 c8             	and    %r8d,%ecx
1402a9654:	41 83 e0 01          	and    $0x1,%r8d
1402a9658:	0b c8                	or     %eax,%ecx
1402a965a:	8b c1                	mov    %ecx,%eax
1402a965c:	83 e1 01             	and    $0x1,%ecx
1402a965f:	d1 e8                	shr    $1,%eax
1402a9661:	03 c1                	add    %ecx,%eax
1402a9663:	49 8b cd             	mov    %r13,%rcx
1402a9666:	41 8d 1c 40          	lea    (%r8,%rax,2),%ebx
1402a966a:	44 8b c3             	mov    %ebx,%r8d
1402a966d:	41 d1 e8             	shr    $1,%r8d
1402a9670:	e8 eb 37 dc ff       	call   0x14006ce60
1402a9675:	49 8b d6             	mov    %r14,%rdx
1402a9678:	48 8b cf             	mov    %rdi,%rcx
1402a967b:	e8 40 1e dc ff       	call   0x14006b4c0
1402a9680:	49 8b 0e             	mov    (%r14),%rcx
1402a9683:	44 8b c3             	mov    %ebx,%r8d
1402a9686:	48 8b 07             	mov    (%rdi),%rax
1402a9689:	41 83 e0 01          	and    $0x1,%r8d
1402a968d:	49 f7 d8             	neg    %r8
1402a9690:	49 23 c0             	and    %r8,%rax
1402a9693:	49 8b d0             	mov    %r8,%rdx
1402a9696:	48 f7 d2             	not    %rdx
1402a9699:	48 23 ca             	and    %rdx,%rcx
1402a969c:	48 33 c8             	xor    %rax,%rcx
1402a969f:	48 8b c2             	mov    %rdx,%rax
1402a96a2:	49 89 0e             	mov    %rcx,(%r14)
1402a96a5:	49 23 46 08          	and    0x8(%r14),%rax
1402a96a9:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
1402a96ad:	49 23 c8             	and    %r8,%rcx
1402a96b0:	48 33 c8             	xor    %rax,%rcx
1402a96b3:	49 89 4e 08          	mov    %rcx,0x8(%r14)
1402a96b7:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
1402a96bb:	49 8b 46 10          	mov    0x10(%r14),%rax
1402a96bf:	49 23 c8             	and    %r8,%rcx
1402a96c2:	48 23 c2             	and    %rdx,%rax
1402a96c5:	48 33 c8             	xor    %rax,%rcx
1402a96c8:	49 89 4e 10          	mov    %rcx,0x10(%r14)
1402a96cc:	48 8b 4f 18          	mov    0x18(%rdi),%rcx
1402a96d0:	49 8b 46 18          	mov    0x18(%r14),%rax
1402a96d4:	49 23 c8             	and    %r8,%rcx
1402a96d7:	48 23 c2             	and    %rdx,%rax
1402a96da:	4d 8b c5             	mov    %r13,%r8
1402a96dd:	48 33 c8             	xor    %rax,%rcx
1402a96e0:	49 8b d7             	mov    %r15,%rdx
1402a96e3:	49 89 4e 18          	mov    %rcx,0x18(%r14)
1402a96e7:	49 8b cf             	mov    %r15,%rcx
1402a96ea:	e8 d1 41 dc ff       	call   0x14006d8c0
1402a96ef:	48 81 c5 00 06 00 00 	add    $0x600,%rbp
1402a96f6:	48 8d 76 21          	lea    0x21(%rsi),%rsi
1402a96fa:	49 83 ec 01          	sub    $0x1,%r12
1402a96fe:	0f 85 2c ff ff ff    	jne    0x1402a9630
1402a9704:	41 be 01 00 00 00    	mov    $0x1,%r14d
1402a970a:	e9 68 fc ff ff       	jmp    0x1402a9377
1402a970f:	48 8b dd             	mov    %rbp,%rbx
1402a9712:	eb 03                	jmp    0x1402a9717
1402a9714:	48 8b d8             	mov    %rax,%rbx
1402a9717:	b9 10 00 00 00       	mov    $0x10,%ecx
1402a971c:	c7 44 24 20 7a 02 00 	movl   $0x27a,0x20(%rsp)
1402a9723:	00
1402a9724:	4c 8d 0d a5 94 0e 00 	lea    0xe94a5(%rip),%r9        # 0x140392bd0
1402a972b:	ba f2 00 00 00       	mov    $0xf2,%edx
1402a9730:	44 8d 41 31          	lea    0x31(%rcx),%r8d
1402a9734:	e8 67 7c f7 ff       	call   0x1402213a0
1402a9739:	e9 46 fc ff ff       	jmp    0x1402a9384
1402a973e:	cc                   	int3
1402a973f:	cc                   	int3
1402a9740:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1402a9745:	57                   	push   %rdi
1402a9746:	b8 20 00 00 00       	mov    $0x20,%eax
1402a974b:	e8 90 0e 05 00       	call   0x1402fa5e0
1402a9750:	48 2b e0             	sub    %rax,%rsp
1402a9753:	48 8b d9             	mov    %rcx,%rbx
1402a9756:	e8 95 eb f6 ff       	call   0x1402182f0
1402a975b:	48 8b cb             	mov    %rbx,%rcx
1402a975e:	48 8b f8             	mov    %rax,%rdi
1402a9761:	e8 2a 68 f9 ff       	call   0x14023ff90
1402a9766:	83 f8 04             	cmp    $0x4,%eax
1402a9769:	75 4f                	jne    0x1402a97ba
1402a976b:	48 8b 4f 18          	mov    0x18(%rdi),%rcx
1402a976f:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
1402a9774:	48 33 c8             	xor    %rax,%rcx
1402a9777:	48 ba 00 00 00 00 ff 	movabs $0xffffffff00000000,%rdx
1402a977e:	ff ff ff
1402a9781:	48 8b 47 08          	mov    0x8(%rdi),%rax
1402a9785:	48 33 c2             	xor    %rdx,%rax
1402a9788:	48 0b c8             	or     %rax,%rcx
1402a978b:	48 8b 47 10          	mov    0x10(%rdi),%rax
1402a978f:	48 f7 d0             	not    %rax
1402a9792:	48 0b c8             	or     %rax,%rcx
1402a9795:	48 8b 07             	mov    (%rdi),%rax
1402a9798:	48 83 f0 01          	xor    $0x1,%rax
1402a979c:	48 0b c8             	or     %rax,%rcx
1402a979f:	48 8b c1             	mov    %rcx,%rax
1402a97a2:	48 f7 d8             	neg    %rax
1402a97a5:	48 0b c1             	or     %rcx,%rax
1402a97a8:	48 f7 d0             	not    %rax
1402a97ab:	48 c1 e8 3f          	shr    $0x3f,%rax
1402a97af:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1402a97b4:	48 83 c4 20          	add    $0x20,%rsp
1402a97b8:	5f                   	pop    %rdi
1402a97b9:	c3                   	ret
1402a97ba:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1402a97bf:	33 c0                	xor    %eax,%eax
1402a97c1:	48 83 c4 20          	add    $0x20,%rsp
1402a97c5:	5f                   	pop    %rdi
1402a97c6:	c3                   	ret
1402a97c7:	cc                   	int3
1402a97c8:	cc                   	int3
1402a97c9:	cc                   	int3
1402a97ca:	cc                   	int3
1402a97cb:	cc                   	int3
1402a97cc:	cc                   	int3
1402a97cd:	cc                   	int3
1402a97ce:	cc                   	int3
1402a97cf:	cc                   	int3
1402a97d0:	48 85 c9             	test   %rcx,%rcx
1402a97d3:	74 0a                	je     0x1402a97df
1402a97d5:	b8 01 00 00 00       	mov    $0x1,%eax
1402a97da:	f0 0f c1 41 30       	lock xadd %eax,0x30(%rcx)
1402a97df:	48 8b c1             	mov    %rcx,%rax
1402a97e2:	c3                   	ret
1402a97e3:	cc                   	int3
1402a97e4:	cc                   	int3
1402a97e5:	cc                   	int3
1402a97e6:	cc                   	int3
1402a97e7:	cc                   	int3
1402a97e8:	cc                   	int3
1402a97e9:	cc                   	int3
1402a97ea:	cc                   	int3
1402a97eb:	cc                   	int3
1402a97ec:	cc                   	int3
1402a97ed:	cc                   	int3
1402a97ee:	cc                   	int3
1402a97ef:	cc                   	int3
1402a97f0:	48 85 c9             	test   %rcx,%rcx
1402a97f3:	0f 84 8a 00 00 00    	je     0x1402a9883
1402a97f9:	57                   	push   %rdi
1402a97fa:	b8 20 00 00 00       	mov    $0x20,%eax
1402a97ff:	e8 dc 0d 05 00       	call   0x1402fa5e0
1402a9804:	48 2b e0             	sub    %rax,%rsp
1402a9807:	48 8b f9             	mov    %rcx,%rdi
1402a980a:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
1402a980f:	f0 0f c1 41 30       	lock xadd %eax,0x30(%rcx)
1402a9814:	83 e8 01             	sub    $0x1,%eax
1402a9817:	7f 65                	jg     0x1402a987e
1402a9819:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
1402a981e:	48 8b 59 20          	mov    0x20(%rcx),%rbx
1402a9822:	48 85 db             	test   %rbx,%rbx
1402a9825:	74 34                	je     0x1402a985b
1402a9827:	48 8b 03             	mov    (%rbx),%rax
1402a982a:	48 85 c0             	test   %rax,%rax
1402a982d:	74 16                	je     0x1402a9845
1402a982f:	90                   	nop
1402a9830:	48 8b c8             	mov    %rax,%rcx
1402a9833:	e8 68 f9 fa ff       	call   0x1402591a0
1402a9838:	48 8b 43 08          	mov    0x8(%rbx),%rax
1402a983c:	48 8d 5b 08          	lea    0x8(%rbx),%rbx
1402a9840:	48 85 c0             	test   %rax,%rax
1402a9843:	75 eb                	jne    0x1402a9830
1402a9845:	48 8b 4f 20          	mov    0x20(%rdi),%rcx
1402a9849:	48 8d 15 a0 93 0e 00 	lea    0xe93a0(%rip),%rdx        # 0x140392bf0
1402a9850:	41 b8 62 00 00 00    	mov    $0x62,%r8d
1402a9856:	e8 b5 fa f7 ff       	call   0x140229310
1402a985b:	48 8b 4f 38          	mov    0x38(%rdi),%rcx
1402a985f:	e8 3c 2b f9 ff       	call   0x14023c3a0
1402a9864:	41 b8 65 00 00 00    	mov    $0x65,%r8d
1402a986a:	48 8d 15 7f 93 0e 00 	lea    0xe937f(%rip),%rdx        # 0x140392bf0
1402a9871:	48 8b cf             	mov    %rdi,%rcx
1402a9874:	e8 97 fa f7 ff       	call   0x140229310
1402a9879:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1402a987e:	48 83 c4 20          	add    $0x20,%rsp
1402a9882:	5f                   	pop    %rdi
1402a9883:	c3                   	ret
1402a9884:	cc                   	int3
1402a9885:	cc                   	int3
1402a9886:	cc                   	int3
1402a9887:	cc                   	int3
1402a9888:	cc                   	int3
1402a9889:	cc                   	int3
1402a988a:	cc                   	int3
1402a988b:	cc                   	int3
1402a988c:	cc                   	int3
1402a988d:	cc                   	int3
1402a988e:	cc                   	int3
1402a988f:	cc                   	int3
1402a9890:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
1402a9895:	53                   	push   %rbx
1402a9896:	56                   	push   %rsi
1402a9897:	57                   	push   %rdi
1402a9898:	41 56                	push   %r14
1402a989a:	b8 58 00 00 00       	mov    $0x58,%eax
1402a989f:	e8 3c 0d 05 00       	call   0x1402fa5e0
1402a98a4:	48 2b e0             	sub    %rax,%rsp
1402a98a7:	33 ff                	xor    %edi,%edi
1402a98a9:	49 8b d9             	mov    %r9,%rbx
1402a98ac:	89 7c 24 34          	mov    %edi,0x34(%rsp)
1402a98b0:	48 8b f2             	mov    %rdx,%rsi
1402a98b3:	4c 8b f1             	mov    %rcx,%r14
1402a98b6:	4d 85 c9             	test   %r9,%r9
1402a98b9:	74 20                	je     0x1402a98db
1402a98bb:	48 8b d3             	mov    %rbx,%rdx
1402a98be:	e8 dd fa fa ff       	call   0x1402593a0
1402a98c3:	85 c0                	test   %eax,%eax
1402a98c5:	74 14                	je     0x1402a98db
1402a98c7:	48 8b d6             	mov    %rsi,%rdx
1402a98ca:	49 8b ce             	mov    %r14,%rcx
1402a98cd:	48 83 c4 58          	add    $0x58,%rsp
1402a98d1:	41 5e                	pop    %r14
1402a98d3:	5f                   	pop    %rdi
1402a98d4:	5e                   	pop    %rsi
1402a98d5:	5b                   	pop    %rbx
1402a98d6:	e9 f5 00 fb ff       	jmp    0x1402599d0
1402a98db:	49 8b 4e 10          	mov    0x10(%r14),%rcx
1402a98df:	e8 1c 25 f8 ff       	call   0x14022be00
1402a98e4:	85 c0                	test   %eax,%eax