14035534f:	ff 15 e3 78 7b 00    	call   *0x7b78e3(%rip)        # 0x140b0cc38
140355355:	0f be d0             	movsbl %al,%edx
140355358:	8b ca                	mov    %edx,%ecx
14035535a:	83 e9 28             	sub    $0x28,%ecx
14035535d:	0f 84 7e 01 00 00    	je     0x1403554e1
140355363:	41 2b cc             	sub    %r12d,%ecx
140355366:	0f 84 50 01 00 00    	je     0x1403554bc
14035536c:	83 f9 33             	cmp    $0x33,%ecx
14035536f:	74 34                	je     0x1403553a5
140355371:	44 0f b7 ca          	movzwl %dx,%r9d
140355375:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
140355379:	48 3b 4b 18          	cmp    0x18(%rbx),%rcx
14035537d:	0f 83 66 01 00 00    	jae    0x1403554e9
140355383:	48 8d 41 01          	lea    0x1(%rcx),%rax
140355387:	48 89 43 10          	mov    %rax,0x10(%rbx)
14035538b:	48 8b c3             	mov    %rbx,%rax
14035538e:	48 83 7b 18 07       	cmpq   $0x7,0x18(%rbx)
140355393:	76 03                	jbe    0x140355398
140355395:	48 8b 03             	mov    (%rbx),%rax
140355398:	66 44 89 0c 48       	mov    %r9w,(%rax,%rcx,2)
14035539d:	66 44 89 7c 48 02    	mov    %r15w,0x2(%rax,%rcx,2)
1403553a3:	eb a0                	jmp    0x140355345
1403553a5:	49 8b 0e             	mov    (%r14),%rcx
1403553a8:	48 8b 01             	mov    (%rcx),%rax
1403553ab:	48 8b 40 18          	mov    0x18(%rax),%rax
1403553af:	ff 15 83 78 7b 00    	call   *0x7b7883(%rip)        # 0x140b0cc38
1403553b5:	0f be d0             	movsbl %al,%edx
1403553b8:	8b ca                	mov    %edx,%ecx
1403553ba:	83 fa 62             	cmp    $0x62,%edx
1403553bd:	7f 70                	jg     0x14035542f
1403553bf:	74 69                	je     0x14035542a
1403553c1:	83 e9 0a             	sub    $0xa,%ecx
1403553c4:	74 5c                	je     0x140355422
1403553c6:	83 e9 03             	sub    $0x3,%ecx
1403553c9:	74 27                	je     0x1403553f2
1403553cb:	83 e9 1b             	sub    $0x1b,%ecx
1403553ce:	74 1a                	je     0x1403553ea
1403553d0:	41 2b cc             	sub    %r12d,%ecx
1403553d3:	74 0d                	je     0x1403553e2
1403553d5:	83 f9 33             	cmp    $0x33,%ecx
1403553d8:	75 69                	jne    0x140355443
1403553da:	40 b7 5c             	mov    $0x5c,%dil
1403553dd:	e9 c8 00 00 00       	jmp    0x1403554aa
1403553e2:	40 b7 29             	mov    $0x29,%dil
1403553e5:	e9 c0 00 00 00       	jmp    0x1403554aa
1403553ea:	40 b7 28             	mov    $0x28,%dil
1403553ed:	e9 b8 00 00 00       	jmp    0x1403554aa
1403553f2:	49 8b 0e             	mov    (%r14),%rcx
1403553f5:	48 8b 01             	mov    (%rcx),%rax
1403553f8:	48 8b 40 18          	mov    0x18(%rax),%rax
1403553fc:	ff 15 36 78 7b 00    	call   *0x7b7836(%rip)        # 0x140b0cc38
140355402:	3c 0a                	cmp    $0xa,%al
140355404:	74 1c                	je     0x140355422
140355406:	49 8b 0e             	mov    (%r14),%rcx
140355409:	48 8b 01             	mov    (%rcx),%rax
14035540c:	45 8a cc             	mov    %r12b,%r9b
14035540f:	41 b8 02 00 00 00    	mov    $0x2,%r8d
140355415:	41 8b d4             	mov    %r12d,%edx
140355418:	48 8b 40 10          	mov    0x10(%rax),%rax
14035541c:	ff 15 16 78 7b 00    	call   *0x7b7816(%rip)        # 0x140b0cc38
140355422:	41 8a ff             	mov    %r15b,%dil
140355425:	e9 80 00 00 00       	jmp    0x1403554aa
14035542a:	40 b7 08             	mov    $0x8,%dil
14035542d:	eb 7b                	jmp    0x1403554aa
14035542f:	83 f9 66             	cmp    $0x66,%ecx
140355432:	74 73                	je     0x1403554a7
140355434:	83 f9 6e             	cmp    $0x6e,%ecx
140355437:	74 69                	je     0x1403554a2
140355439:	83 f9 72             	cmp    $0x72,%ecx
14035543c:	74 5f                	je     0x14035549d
14035543e:	83 f9 74             	cmp    $0x74,%ecx
140355441:	74 55                	je     0x140355498
140355443:	8d 42 d0             	lea    -0x30(%rdx),%eax
140355446:	3c 07                	cmp    $0x7,%al
140355448:	77 d8                	ja     0x140355422
14035544a:	41 8b f7             	mov    %r15d,%esi
14035544d:	41 8b ff             	mov    %r15d,%edi
140355450:	0f be c2             	movsbl %dl,%eax
140355453:	8d 7f fa             	lea    -0x6(%rdi),%edi
140355456:	8d 3c f8             	lea    (%rax,%rdi,8),%edi
140355459:	41 03 f4             	add    %r12d,%esi
14035545c:	49 8b 0e             	mov    (%r14),%rcx
14035545f:	48 8b 01             	mov    (%rcx),%rax
140355462:	48 8b 40 18          	mov    0x18(%rax),%rax
140355466:	ff 15 cc 77 7b 00    	call   *0x7b77cc(%rip)        # 0x140b0cc38
14035546c:	8a d0                	mov    %al,%dl
14035546e:	8d 42 d0             	lea    -0x30(%rdx),%eax
140355471:	3c 07                	cmp    $0x7,%al
140355473:	77 05                	ja     0x14035547a
140355475:	83 fe 03             	cmp    $0x3,%esi
140355478:	7c d6                	jl     0x140355450
14035547a:	49 8b 0e             	mov    (%r14),%rcx
14035547d:	48 8b 01             	mov    (%rcx),%rax
140355480:	45 8a cc             	mov    %r12b,%r9b
140355483:	41 b8 02 00 00 00    	mov    $0x2,%r8d
140355489:	41 8b d4             	mov    %r12d,%edx
14035548c:	48 8b 40 10          	mov    0x10(%rax),%rax
140355490:	ff 15 a2 77 7b 00    	call   *0x7b77a2(%rip)        # 0x140b0cc38
140355496:	eb 12                	jmp    0x1403554aa
140355498:	40 b7 09             	mov    $0x9,%dil
14035549b:	eb 0d                	jmp    0x1403554aa
14035549d:	40 b7 0d             	mov    $0xd,%dil
1403554a0:	eb 08                	jmp    0x1403554aa
1403554a2:	40 b7 0a             	mov    $0xa,%dil
1403554a5:	eb 03                	jmp    0x1403554aa
1403554a7:	40 b7 0c             	mov    $0xc,%dil
1403554aa:	40 84 ff             	test   %dil,%dil
1403554ad:	0f 84 92 fe ff ff    	je     0x140355345
1403554b3:	44 0f be cf          	movsbl %dil,%r9d
1403554b7:	e9 b9 fe ff ff       	jmp    0x140355375
1403554bc:	41 2b ec             	sub    %r12d,%ebp
1403554bf:	0f 85 ac fe ff ff    	jne    0x140355371
1403554c5:	48 8b c3             	mov    %rbx,%rax
1403554c8:	4c 8d 5c 24 40       	lea    0x40(%rsp),%r11
1403554cd:	49 8b 5b 40          	mov    0x40(%r11),%rbx
1403554d1:	49 8b 6b 48          	mov    0x48(%r11),%rbp
1403554d5:	49 8b e3             	mov    %r11,%rsp
1403554d8:	41 5f                	pop    %r15
1403554da:	41 5e                	pop    %r14
1403554dc:	41 5c                	pop    %r12
1403554de:	5f                   	pop    %rdi
1403554df:	5e                   	pop    %rsi
1403554e0:	c3                   	ret
1403554e1:	41 03 ec             	add    %r12d,%ebp
1403554e4:	e9 88 fe ff ff       	jmp    0x140355371
1403554e9:	48 8b cb             	mov    %rbx,%rcx
1403554ec:	e8 4b 3c cb ff       	call   0x14000913c
1403554f1:	e9 4f fe ff ff       	jmp    0x140355345
1403554f6:	cc                   	int3
1403554f7:	90                   	nop
1403554f8:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
1403554fd:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140355502:	53                   	push   %rbx
140355503:	55                   	push   %rbp
140355504:	56                   	push   %rsi
140355505:	57                   	push   %rdi
140355506:	41 56                	push   %r14
140355508:	48 83 ec 30          	sub    $0x30,%rsp
14035550c:	4c 8b f2             	mov    %rdx,%r14
14035550f:	48 8b f9             	mov    %rcx,%rdi
140355512:	48 8d 05 7f fd 7c 00 	lea    0x7cfd7f(%rip),%rax        # 0x140b25298
140355519:	48 89 01             	mov    %rax,(%rcx)
14035551c:	48 83 61 08 00       	andq   $0x0,0x8(%rcx)
140355521:	c7 41 10 01 00 00 00 	movl   $0x1,0x10(%rcx)
140355528:	c6 41 14 00          	movb   $0x0,0x14(%rcx)
14035552c:	b9 10 00 00 00       	mov    $0x10,%ecx
140355531:	e8 ce a0 79 00       	call   0x140aef604
140355536:	4c 8b c0             	mov    %rax,%r8
140355539:	48 89 44 24 70       	mov    %rax,0x70(%rsp)
14035553e:	0f 57 c0             	xorps  %xmm0,%xmm0
140355541:	f3 0f 7f 44 24 20    	movdqu %xmm0,0x20(%rsp)
140355547:	49 8b 4e 08          	mov    0x8(%r14),%rcx
14035554b:	48 85 c9             	test   %rcx,%rcx
14035554e:	74 04                	je     0x140355554
140355550:	f0 ff 41 08          	lock incl 0x8(%rcx)
140355554:	49 8b 06             	mov    (%r14),%rax
140355557:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14035555c:	49 8b 46 08          	mov    0x8(%r14),%rax
140355560:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140355565:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
14035556a:	49 8b c8             	mov    %r8,%rcx
14035556d:	e8 92 f1 ff ff       	call   0x140354704
140355572:	48 83 64 24 68 00    	andq   $0x0,0x68(%rsp)
140355578:	48 8b 77 08          	mov    0x8(%rdi),%rsi
14035557c:	48 89 47 08          	mov    %rax,0x8(%rdi)
140355580:	83 cd ff             	or     $0xffffffff,%ebp
140355583:	48 85 f6             	test   %rsi,%rsi
140355586:	74 46                	je     0x1403555ce
140355588:	48 8b 5e 08          	mov    0x8(%rsi),%rbx
14035558c:	48 85 db             	test   %rbx,%rbx
14035558f:	74 35                	je     0x1403555c6
140355591:	8b c5                	mov    %ebp,%eax
140355593:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
140355598:	03 c5                	add    %ebp,%eax
14035559a:	75 2a                	jne    0x1403555c6
14035559c:	48 8b 03             	mov    (%rbx),%rax
14035559f:	48 8b cb             	mov    %rbx,%rcx
1403555a2:	48 8b 00             	mov    (%rax),%rax
1403555a5:	ff 15 8d 76 7b 00    	call   *0x7b768d(%rip)        # 0x140b0cc38
1403555ab:	8b c5                	mov    %ebp,%eax
1403555ad:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
1403555b2:	03 c5                	add    %ebp,%eax
1403555b4:	75 10                	jne    0x1403555c6
1403555b6:	48 8b 03             	mov    (%rbx),%rax
1403555b9:	48 8b cb             	mov    %rbx,%rcx
1403555bc:	48 8b 40 08          	mov    0x8(%rax),%rax
1403555c0:	ff 15 72 76 7b 00    	call   *0x7b7672(%rip)        # 0x140b0cc38
1403555c6:	48 8b ce             	mov    %rsi,%rcx
1403555c9:	e8 06 a0 79 00       	call   0x140aef5d4
1403555ce:	48 8d 4c 24 68       	lea    0x68(%rsp),%rcx
1403555d3:	e8 60 e4 d4 ff       	call   0x1400a3a38
1403555d8:	49 8b 5e 08          	mov    0x8(%r14),%rbx
1403555dc:	48 85 db             	test   %rbx,%rbx
1403555df:	74 35                	je     0x140355616
1403555e1:	8b c5                	mov    %ebp,%eax
1403555e3:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
1403555e8:	03 c5                	add    %ebp,%eax
1403555ea:	75 2a                	jne    0x140355616
1403555ec:	48 8b 03             	mov    (%rbx),%rax
1403555ef:	48 8b cb             	mov    %rbx,%rcx
1403555f2:	48 8b 00             	mov    (%rax),%rax
1403555f5:	ff 15 3d 76 7b 00    	call   *0x7b763d(%rip)        # 0x140b0cc38
1403555fb:	8b c5                	mov    %ebp,%eax
1403555fd:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
140355602:	03 c5                	add    %ebp,%eax
140355604:	75 10                	jne    0x140355616
140355606:	48 8b 03             	mov    (%rbx),%rax
140355609:	48 8b cb             	mov    %rbx,%rcx
14035560c:	48 8b 40 08          	mov    0x8(%rax),%rax
140355610:	ff 15 22 76 7b 00    	call   *0x7b7622(%rip)        # 0x140b0cc38
140355616:	48 8b c7             	mov    %rdi,%rax
140355619:	48 83 c4 30          	add    $0x30,%rsp
14035561d:	41 5e                	pop    %r14
14035561f:	5f                   	pop    %rdi
140355620:	5e                   	pop    %rsi
140355621:	5d                   	pop    %rbp
140355622:	5b                   	pop    %rbx
140355623:	c3                   	ret
140355624:	90                   	nop
140355625:	90                   	nop
140355626:	90                   	nop
140355627:	90                   	nop
140355628:	90                   	nop
140355629:	90                   	nop
14035562a:	90                   	nop
14035562b:	90                   	nop
14035562c:	90                   	nop
14035562d:	90                   	nop
14035562e:	90                   	nop
14035562f:	90                   	nop
140355630:	48 8b c4             	mov    %rsp,%rax
140355633:	48 89 58 10          	mov    %rbx,0x10(%rax)
140355637:	48 89 70 18          	mov    %rsi,0x18(%rax)
14035563b:	48 89 78 20          	mov    %rdi,0x20(%rax)
14035563f:	55                   	push   %rbp
140355640:	41 54                	push   %r12
140355642:	41 55                	push   %r13
140355644:	41 56                	push   %r14
140355646:	41 57                	push   %r15
140355648:	48 8d 68 a1          	lea    -0x5f(%rax),%rbp
14035564c:	48 81 ec 90 00 00 00 	sub    $0x90,%rsp
140355653:	48 8b 05 e6 99 96 00 	mov    0x9699e6(%rip),%rax        # 0x140cbf040
14035565a:	48 33 c4             	xor    %rsp,%rax
14035565d:	48 89 45 2f          	mov    %rax,0x2f(%rbp)
140355661:	4c 8b f9             	mov    %rcx,%r15
140355664:	33 db                	xor    %ebx,%ebx
140355666:	89 5d 07             	mov    %ebx,0x7(%rbp)
140355669:	0f 57 c0             	xorps  %xmm0,%xmm0
14035566c:	0f 11 45 0f          	movups %xmm0,0xf(%rbp)
140355670:	48 89 5d 1f          	mov    %rbx,0x1f(%rbp)
140355674:	48 c7 45 27 07 00 00 	movq   $0x7,0x27(%rbp)
14035567b:	00
14035567c:	66 89 5d 0f          	mov    %bx,0xf(%rbp)
140355680:	c7 45 df 04 00 00 00 	movl   $0x4,-0x21(%rbp)
140355687:	0f 11 45 e7          	movups %xmm0,-0x19(%rbp)
14035568b:	48 89 5d f7          	mov    %rbx,-0x9(%rbp)
14035568f:	48 89 5d ff          	mov    %rbx,-0x1(%rbp)
140355693:	45 33 c0             	xor    %r8d,%r8d
140355696:	48 8d 15 1b 96 7e 00 	lea    0x7e961b(%rip),%rdx        # 0x140b3ecb8
14035569d:	48 8d 4d e7          	lea    -0x19(%rbp),%rcx
1403556a1:	e8 7a e7 ca ff       	call   0x140003e20
1403556a6:	41 b5 01             	mov    $0x1,%r13b
1403556a9:	48 bf fe ff ff ff ff 	movabs $0x7ffffffffffffffe,%rdi
1403556b0:	ff ff 7f
1403556b3:	45 33 c0             	xor    %r8d,%r8d
1403556b6:	48 8d 55 07          	lea    0x7(%rbp),%rdx
1403556ba:	49 8b 4f 08          	mov    0x8(%r15),%rcx
1403556be:	e8 15 f1 ff ff       	call   0x1403547d8
1403556c3:	83 7d 07 03          	cmpl   $0x3,0x7(%rbp)
1403556c7:	74 54                	je     0x14035571d
1403556c9:	83 7d 07 05          	cmpl   $0x5,0x7(%rbp)
1403556cd:	75 65                	jne    0x140355734
1403556cf:	4c 8d 45 0f          	lea    0xf(%rbp),%r8
1403556d3:	48 83 7d 27 07       	cmpq   $0x7,0x27(%rbp)
1403556d8:	4c 0f 47 45 0f       	cmova  0xf(%rbp),%r8
1403556dd:	c7 44 24 20 01 00 00 	movl   $0x1,0x20(%rsp)
1403556e4:	00
1403556e5:	41 83 c9 ff          	or     $0xffffffff,%r9d
1403556e9:	41 0b d1             	or     %r9d,%edx
1403556ec:	48 8d 0d a5 6a 7f 00 	lea    0x7f6aa5(%rip),%rcx        # 0x140b4c198
1403556f3:	ff 15 7f 6a 7b 00    	call   *0x7b6a7f(%rip)        # 0x140b0c178
1403556f9:	83 f8 02             	cmp    $0x2,%eax
1403556fc:	75 0d                	jne    0x14035570b
1403556fe:	41 c7 47 10 10 00 00 	movl   $0x10,0x10(%r15)
140355705:	00
140355706:	44 8a eb             	mov    %bl,%r13b
140355709:	eb 29                	jmp    0x140355734
14035570b:	4c 8d 45 df          	lea    -0x21(%rbp),%r8
14035570f:	48 8d 55 0f          	lea    0xf(%rbp),%rdx
140355713:	49 8b cf             	mov    %r15,%rcx
140355716:	e8 f5 01 00 00       	call   0x140355910
14035571b:	eb 17                	jmp    0x140355734
14035571d:	49 8b 07             	mov    (%r15),%rax
140355720:	48 8d 55 0f          	lea    0xf(%rbp),%rdx
140355724:	49 8b cf             	mov    %r15,%rcx
140355727:	48 8b 80 90 00 00 00 	mov    0x90(%rax),%rax
14035572e:	ff 15 04 75 7b 00    	call   *0x7b7504(%rip)        # 0x140b0cc38
140355734:	8b 45 07             	mov    0x7(%rbp),%eax
140355737:	89 45 df             	mov    %eax,-0x21(%rbp)
14035573a:	4c 8b 75 1f          	mov    0x1f(%rbp),%r14
14035573e:	4c 8d 65 0f          	lea    0xf(%rbp),%r12
140355742:	48 83 7d 27 07       	cmpq   $0x7,0x27(%rbp)
140355747:	4c 0f 47 65 0f       	cmova  0xf(%rbp),%r12
14035574c:	48 8b 75 ff          	mov    -0x1(%rbp),%rsi
140355750:	4c 3b f6             	cmp    %rsi,%r14
140355753:	77 30                	ja     0x140355785
140355755:	48 8d 5d e7          	lea    -0x19(%rbp),%rbx
140355759:	48 83 fe 07          	cmp    $0x7,%rsi
14035575d:	48 0f 47 5d e7       	cmova  -0x19(%rbp),%rbx
140355762:	4c 89 75 f7          	mov    %r14,-0x9(%rbp)
140355766:	4f 8d 04 36          	lea    (%r14,%r14,1),%r8
14035576a:	49 8b d4             	mov    %r12,%rdx
14035576d:	48 8b cb             	mov    %rbx,%rcx
140355770:	e8 f1 ac 79 00       	call   0x140af0466
140355775:	33 c0                	xor    %eax,%eax
140355777:	66 42 89 04 73       	mov    %ax,(%rbx,%r14,2)
14035577c:	48 8b 7d e7          	mov    -0x19(%rbp),%rdi
140355780:	e9 a5 00 00 00       	jmp    0x14035582a
140355785:	4c 3b f7             	cmp    %rdi,%r14
140355788:	0f 87 68 01 00 00    	ja     0x1403558f6
14035578e:	49 8b de             	mov    %r14,%rbx
140355791:	48 83 cb 07          	or     $0x7,%rbx
140355795:	48 3b df             	cmp    %rdi,%rbx
140355798:	76 05                	jbe    0x14035579f
14035579a:	48 8b df             	mov    %rdi,%rbx
14035579d:	eb 1c                	jmp    0x1403557bb
14035579f:	48 8b ce             	mov    %rsi,%rcx
1403557a2:	48 d1 e9             	shr    $1,%rcx
1403557a5:	48 8b c7             	mov    %rdi,%rax
1403557a8:	48 2b c1             	sub    %rcx,%rax
1403557ab:	48 3b f0             	cmp    %rax,%rsi
1403557ae:	77 ea                	ja     0x14035579a
1403557b0:	48 8d 04 0e          	lea    (%rsi,%rcx,1),%rax
1403557b4:	48 3b d8             	cmp    %rax,%rbx
1403557b7:	48 0f 42 d8          	cmovb  %rax,%rbx
1403557bb:	48 ff c3             	inc    %rbx
1403557be:	48 89 5d d7          	mov    %rbx,-0x29(%rbp)
1403557c2:	48 8d 55 d7          	lea    -0x29(%rbp),%rdx
1403557c6:	e8 1d e7 ca ff       	call   0x140003ee8
1403557cb:	48 8b f8             	mov    %rax,%rdi
1403557ce:	48 8d 43 ff          	lea    -0x1(%rbx),%rax
1403557d2:	4c 89 75 f7          	mov    %r14,-0x9(%rbp)
1403557d6:	48 89 45 ff          	mov    %rax,-0x1(%rbp)
1403557da:	4b 8d 1c 36          	lea    (%r14,%r14,1),%rbx
1403557de:	4c 8b c3             	mov    %rbx,%r8
1403557e1:	49 8b d4             	mov    %r12,%rdx
1403557e4:	48 8b cf             	mov    %rdi,%rcx
1403557e7:	e8 b4 c6 79 00       	call   0x140af1ea0
1403557ec:	33 c0                	xor    %eax,%eax
1403557ee:	66 89 04 3b          	mov    %ax,(%rbx,%rdi,1)