1405242c3:	48 8d 4e 02          	lea    0x2(%rsi),%rcx
1405242c7:	4c 3b f9             	cmp    %rcx,%r15
1405242ca:	0f 82 e7 00 00 00    	jb     0x1405243b7
1405242d0:	83 bc 24 f0 00 00 00 	cmpl   $0x1,0xf0(%rsp)
1405242d7:	01
1405242d8:	0f b7 06             	movzwl (%rsi),%eax
1405242db:	75 08                	jne    0x1405242e5
1405242dd:	66 89 07             	mov    %ax,(%rdi)
1405242e0:	0f b7 01             	movzwl (%rcx),%eax
1405242e3:	eb 0e                	jmp    0x1405242f3
1405242e5:	66 c1 c8 08          	ror    $0x8,%ax
1405242e9:	66 89 07             	mov    %ax,(%rdi)
1405242ec:	0f b7 01             	movzwl (%rcx),%eax
1405242ef:	66 c1 c8 08          	ror    $0x8,%ax
1405242f3:	b9 18 00 00 00       	mov    $0x18,%ecx
1405242f8:	66 89 47 02          	mov    %ax,0x2(%rdi)
1405242fc:	e8 07 6e 8f 00       	call   0x140e1b108
140524301:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140524306:	48 85 c0             	test   %rax,%rax
140524309:	74 0b                	je     0x140524316
14052430b:	48 89 18             	mov    %rbx,(%rax)
14052430e:	89 58 08             	mov    %ebx,0x8(%rax)
140524311:	89 58 10             	mov    %ebx,0x10(%rax)
140524314:	eb 03                	jmp    0x140524319
140524316:	48 8b c3             	mov    %rbx,%rax
140524319:	44 8b 8c 24 f0 00 00 	mov    0xf0(%rsp),%r9d
140524320:	00
140524321:	4c 8b c5             	mov    %rbp,%r8
140524324:	49 8b d7             	mov    %r15,%rdx
140524327:	48 89 47 08          	mov    %rax,0x8(%rdi)
14052432b:	48 8b c8             	mov    %rax,%rcx
14052432e:	e8 6d 16 00 00       	call   0x1405259a0
140524333:	4d 8b 4d 18          	mov    0x18(%r13),%r9
140524337:	8d 78 04             	lea    0x4(%rax),%edi
14052433a:	49 8b 51 08          	mov    0x8(%r9),%rdx
14052433e:	49 3b 51 10          	cmp    0x10(%r9),%rdx
140524342:	74 0e                	je     0x140524352
140524344:	49 8b 4d 20          	mov    0x20(%r13),%rcx
140524348:	48 89 0a             	mov    %rcx,(%rdx)
14052434b:	49 83 41 08 08       	addq   $0x8,0x8(%r9)
140524350:	eb 0c                	jmp    0x14052435e
140524352:	4d 8d 45 20          	lea    0x20(%r13),%r8
140524356:	49 8b c9             	mov    %r9,%rcx
140524359:	e8 62 11 ea ff       	call   0x1403c54c0
14052435e:	48 63 c7             	movslq %edi,%rax
140524361:	41 ff c4             	inc    %r12d
140524364:	48 03 f0             	add    %rax,%rsi
140524367:	49 89 5d 20          	mov    %rbx,0x20(%r13)
14052436b:	44 3b 64 24 38       	cmp    0x38(%rsp),%r12d
140524370:	0f 8c 1a ff ff ff    	jl     0x140524290
140524376:	2b 74 24 40          	sub    0x40(%rsp),%esi
14052437a:	4c 8b b4 24 90 00 00 	mov    0x90(%rsp),%r14
140524381:	00
140524382:	8b c6                	mov    %esi,%eax
140524384:	48 8b bc 24 98 00 00 	mov    0x98(%rsp),%rdi
14052438b:	00
14052438c:	48 8b 9c 24 a0 00 00 	mov    0xa0(%rsp),%rbx
140524393:	00
140524394:	4c 8b bc 24 88 00 00 	mov    0x88(%rsp),%r15
14052439b:	00
14052439c:	48 8b 4c 24 78       	mov    0x78(%rsp),%rcx
1405243a1:	48 33 cc             	xor    %rsp,%rcx
1405243a4:	e8 57 71 8f 00       	call   0x140e1b500
1405243a9:	48 81 c4 a8 00 00 00 	add    $0xa8,%rsp
1405243b0:	41 5d                	pop    %r13
1405243b2:	41 5c                	pop    %r12
1405243b4:	5e                   	pop    %rsi
1405243b5:	5d                   	pop    %rbp
1405243b6:	c3                   	ret
1405243b7:	2b ee                	sub    %esi,%ebp
1405243b9:	48 8d 15 f0 6e ae 00 	lea    0xae6ef0(%rip),%rdx        # 0x14100b2b0
1405243c0:	44 8b cd             	mov    %ebp,%r9d
1405243c3:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
1405243c8:	41 b8 04 00 00 00    	mov    $0x4,%r8d
1405243ce:	e8 1d 4d c8 ff       	call   0x1401a90f0
1405243d3:	48 8d 15 f6 c5 e7 00 	lea    0xe7c5f6(%rip),%rdx        # 0x1413a09d0
1405243da:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
1405243df:	e8 34 84 8f 00       	call   0x140e1c818
1405243e4:	cc                   	int3
1405243e5:	41 2b ec             	sub    %r12d,%ebp
1405243e8:	48 8d 15 d9 6e ae 00 	lea    0xae6ed9(%rip),%rdx        # 0x14100b2c8
1405243ef:	44 8b cd             	mov    %ebp,%r9d
1405243f2:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
1405243f7:	41 b8 04 00 00 00    	mov    $0x4,%r8d
1405243fd:	e8 ee 4c c8 ff       	call   0x1401a90f0
140524402:	48 8d 15 c7 c5 e7 00 	lea    0xe7c5c7(%rip),%rdx        # 0x1413a09d0
140524409:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
14052440e:	e8 05 84 8f 00       	call   0x140e1c818
140524413:	cc                   	int3
140524414:	e8 f7 f9 c8 ff       	call   0x1401b3e10
140524419:	4c 63 c0             	movslq %eax,%r8
14052441c:	48 8d 15 fd 6e ae 00 	lea    0xae6efd(%rip),%rdx        # 0x14100b320
140524423:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140524428:	e8 33 3c c9 ff       	call   0x1401b8060
14052442d:	48 8d 15 ec c6 e7 00 	lea    0xe7c6ec(%rip),%rdx        # 0x1413a0b20
140524434:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140524439:	e8 da 83 8f 00       	call   0x140e1c818
14052443e:	cc                   	int3
14052443f:	41 2b ec             	sub    %r12d,%ebp
140524442:	48 8d 15 97 6e ae 00 	lea    0xae6e97(%rip),%rdx        # 0x14100b2e0
140524449:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
14052444e:	44 8d 4d fc          	lea    -0x4(%rbp),%r9d
140524452:	e8 99 4c c8 ff       	call   0x1401a90f0
140524457:	48 8d 15 72 c5 e7 00 	lea    0xe7c572(%rip),%rdx        # 0x1413a09d0
14052445e:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140524463:	e8 b0 83 8f 00       	call   0x140e1c818
140524468:	cc                   	int3
140524469:	41 2b ec             	sub    %r12d,%ebp
14052446c:	48 8d 15 8d 6e ae 00 	lea    0xae6e8d(%rip),%rdx        # 0x14100b300
140524473:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140524478:	44 8d 4d fc          	lea    -0x4(%rbp),%r9d
14052447c:	e8 6f 4c c8 ff       	call   0x1401a90f0
140524481:	48 8d 15 48 c5 e7 00 	lea    0xe7c548(%rip),%rdx        # 0x1413a09d0
140524488:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
14052448d:	e8 86 83 8f 00       	call   0x140e1c818
140524492:	cc                   	int3
140524493:	cc                   	int3
140524494:	cc                   	int3
140524495:	cc                   	int3
140524496:	cc                   	int3
140524497:	cc                   	int3
140524498:	cc                   	int3
140524499:	cc                   	int3
14052449a:	cc                   	int3
14052449b:	cc                   	int3
14052449c:	cc                   	int3
14052449d:	cc                   	int3
14052449e:	cc                   	int3
14052449f:	cc                   	int3
1405244a0:	40 53                	rex push %rbx
1405244a2:	55                   	push   %rbp
1405244a3:	56                   	push   %rsi
1405244a4:	57                   	push   %rdi
1405244a5:	41 54                	push   %r12
1405244a7:	41 55                	push   %r13
1405244a9:	41 56                	push   %r14
1405244ab:	41 57                	push   %r15
1405244ad:	48 81 ec 98 00 00 00 	sub    $0x98,%rsp
1405244b4:	48 8b 05 45 4a e9 00 	mov    0xe94a45(%rip),%rax        # 0x1413b8f00
1405244bb:	48 33 c4             	xor    %rsp,%rax
1405244be:	48 89 84 24 88 00 00 	mov    %rax,0x88(%rsp)
1405244c5:	00
1405244c6:	4c 89 4c 24 50       	mov    %r9,0x50(%rsp)
1405244cb:	49 8b e8             	mov    %r8,%rbp
1405244ce:	4c 8b e2             	mov    %rdx,%r12
1405244d1:	4c 8b f1             	mov    %rcx,%r14
1405244d4:	33 db                	xor    %ebx,%ebx
1405244d6:	48 8d 7a 04          	lea    0x4(%rdx),%rdi
1405244da:	49 3b f8             	cmp    %r8,%rdi
1405244dd:	0f 87 ed 02 00 00    	ja     0x1405247d0
1405244e3:	48 8d 42 03          	lea    0x3(%rdx),%rax
1405244e7:	48 3b f8             	cmp    %rax,%rdi
1405244ea:	0f 82 e0 02 00 00    	jb     0x1405247d0
1405244f0:	44 8b ac 24 00 01 00 	mov    0x100(%rsp),%r13d
1405244f7:	00
1405244f8:	0f b7 02             	movzwl (%rdx),%eax
1405244fb:	41 83 fd 01          	cmp    $0x1,%r13d
1405244ff:	74 04                	je     0x140524505
140524501:	66 c1 c8 08          	ror    $0x8,%ax
140524505:	66 89 01             	mov    %ax,(%rcx)
140524508:	0f b6 42 02          	movzbl 0x2(%rdx),%eax
14052450c:	88 41 02             	mov    %al,0x2(%rcx)
14052450f:	b9 18 00 00 00       	mov    $0x18,%ecx
140524514:	e8 ef 6b 8f 00       	call   0x140e1b108
140524519:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
14052451e:	48 85 c0             	test   %rax,%rax
140524521:	74 0b                	je     0x14052452e
140524523:	48 89 18             	mov    %rbx,(%rax)
140524526:	89 58 08             	mov    %ebx,0x8(%rax)
140524529:	89 58 10             	mov    %ebx,0x10(%rax)
14052452c:	eb 03                	jmp    0x140524531
14052452e:	48 8b c3             	mov    %rbx,%rax
140524531:	49 89 46 08          	mov    %rax,0x8(%r14)
140524535:	45 8b cd             	mov    %r13d,%r9d
140524538:	4c 8b c5             	mov    %rbp,%r8
14052453b:	48 8b d7             	mov    %rdi,%rdx
14052453e:	48 8b c8             	mov    %rax,%rcx
140524541:	e8 5a 14 00 00       	call   0x1405259a0
140524546:	48 63 f0             	movslq %eax,%rsi
140524549:	48 83 c6 04          	add    $0x4,%rsi
14052454d:	49 03 f4             	add    %r12,%rsi
140524550:	48 89 74 24 48       	mov    %rsi,0x48(%rsp)
140524555:	45 0f b6 7e 02       	movzbl 0x2(%r14),%r15d
14052455a:	48 8b c5             	mov    %rbp,%rax
14052455d:	48 2b c6             	sub    %rsi,%rax
140524560:	4c 3b f8             	cmp    %rax,%r15
140524563:	0f 8f 96 02 00 00    	jg     0x1405247ff
140524569:	49 89 5e 18          	mov    %rbx,0x18(%r14)
14052456d:	b9 18 00 00 00       	mov    $0x18,%ecx
140524572:	e8 91 6b 8f 00       	call   0x140e1b108
140524577:	48 8b c8             	mov    %rax,%rcx
14052457a:	48 85 c0             	test   %rax,%rax
14052457d:	74 0d                	je     0x14052458c
14052457f:	48 89 18             	mov    %rbx,(%rax)
140524582:	48 89 58 08          	mov    %rbx,0x8(%rax)
140524586:	48 89 58 10          	mov    %rbx,0x10(%rax)
14052458a:	eb 03                	jmp    0x14052458f
14052458c:	48 8b cb             	mov    %rbx,%rcx
14052458f:	49 89 4e 10          	mov    %rcx,0x10(%r14)
140524593:	4c 89 7c 24 40       	mov    %r15,0x40(%rsp)
140524598:	48 8b 41 10          	mov    0x10(%rcx),%rax
14052459c:	48 2b 01             	sub    (%rcx),%rax
14052459f:	48 c1 f8 03          	sar    $0x3,%rax
1405245a3:	4c 3b f8             	cmp    %rax,%r15
1405245a6:	76 0a                	jbe    0x1405245b2
1405245a8:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
1405245ad:	e8 6e 10 ea ff       	call   0x1403c5620
1405245b2:	45 85 ff             	test   %r15d,%r15d
1405245b5:	0f 84 7c 00 00 00    	je     0x140524637
1405245bb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1405245c0:	b9 18 00 00 00       	mov    $0x18,%ecx
1405245c5:	e8 3e 6b 8f 00       	call   0x140e1b108
1405245ca:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
1405245cf:	48 85 c0             	test   %rax,%rax
1405245d2:	74 0b                	je     0x1405245df
1405245d4:	48 89 18             	mov    %rbx,(%rax)
1405245d7:	89 58 08             	mov    %ebx,0x8(%rax)
1405245da:	89 58 10             	mov    %ebx,0x10(%rax)
1405245dd:	eb 03                	jmp    0x1405245e2
1405245df:	48 8b c3             	mov    %rbx,%rax
1405245e2:	49 89 46 18          	mov    %rax,0x18(%r14)
1405245e6:	45 8b cd             	mov    %r13d,%r9d
1405245e9:	4c 8b c5             	mov    %rbp,%r8
1405245ec:	48 8b d6             	mov    %rsi,%rdx
1405245ef:	48 8b c8             	mov    %rax,%rcx
1405245f2:	e8 a9 13 00 00       	call   0x1405259a0
1405245f7:	4c 63 e8             	movslq %eax,%r13
1405245fa:	4d 8b 4e 10          	mov    0x10(%r14),%r9
1405245fe:	49 8b 51 08          	mov    0x8(%r9),%rdx
140524602:	49 3b 51 10          	cmp    0x10(%r9),%rdx
140524606:	74 0e                	je     0x140524616
140524608:	49 8b 4e 18          	mov    0x18(%r14),%rcx
14052460c:	48 89 0a             	mov    %rcx,(%rdx)
14052460f:	49 83 41 08 08       	addq   $0x8,0x8(%r9)
140524614:	eb 0c                	jmp    0x140524622
140524616:	4d 8d 46 18          	lea    0x18(%r14),%r8
14052461a:	49 8b c9             	mov    %r9,%rcx
14052461d:	e8 9e 0e ea ff       	call   0x1403c54c0
140524622:	49 03 f5             	add    %r13,%rsi
140524625:	49 89 5e 18          	mov    %rbx,0x18(%r14)
140524629:	49 83 ef 01          	sub    $0x1,%r15
14052462d:	44 8b ac 24 00 01 00 	mov    0x100(%rsp),%r13d
140524634:	00
140524635:	75 89                	jne    0x1405245c0
140524637:	48 8b 44 24 48       	mov    0x48(%rsp),%rax
14052463c:	2b f0                	sub    %eax,%esi
14052463e:	48 63 fe             	movslq %esi,%rdi
140524641:	48 03 f8             	add    %rax,%rdi
140524644:	41 2b fc             	sub    %r12d,%edi
140524647:	41 0f b6 46 20       	movzbl 0x20(%r14),%eax
14052464c:	3c 0b                	cmp    $0xb,%al
14052464e:	0f 84 9a 00 00 00    	je     0x1405246ee
140524654:	3c 0e                	cmp    $0xe,%al
140524656:	0f 85 45 01 00 00    	jne    0x1405247a1
14052465c:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140524661:	48 8b 36             	mov    (%rsi),%rsi
140524664:	48 8b 0d 05 74 f0 00 	mov    0xf07405(%rip),%rcx        # 0x14142ba70
14052466b:	48 85 c9             	test   %rcx,%rcx
14052466e:	0f 84 ff 00 00 00    	je     0x140524773
140524674:	e8 b7 0e 2f 00       	call   0x140815530
140524679:	84 c0                	test   %al,%al
14052467b:	0f 84 f2 00 00 00    	je     0x140524773
140524681:	49 8b 46 08          	mov    0x8(%r14),%rax
140524685:	44 0f b7 60 12       	movzwl 0x12(%rax),%r12d
14052468a:	44 0f b7 68 10       	movzwl 0x10(%rax),%r13d
14052468f:	48 8b 28             	mov    (%rax),%rbp
140524692:	44 8b 78 08          	mov    0x8(%rax),%r15d
140524696:	b9 28 00 00 00       	mov    $0x28,%ecx
14052469b:	e8 68 6a 8f 00       	call   0x140e1b108
1405246a0:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
1405246a5:	48 85 c0             	test   %rax,%rax
1405246a8:	74 11                	je     0x1405246bb
1405246aa:	4c 8b c5             	mov    %rbp,%r8
1405246ad:	41 8b d7             	mov    %r15d,%edx
1405246b0:	48 8b c8             	mov    %rax,%rcx
1405246b3:	e8 38 d5 20 00       	call   0x140731bf0
1405246b8:	48 8b d8             	mov    %rax,%rbx
1405246bb:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
1405246c0:	48 8b 4e 48          	mov    0x48(%rsi),%rcx
1405246c4:	45 0f b7 0e          	movzwl (%r14),%r9d
1405246c8:	4c 89 64 24 30       	mov    %r12,0x30(%rsp)
1405246cd:	4c 89 6c 24 28       	mov    %r13,0x28(%rsp)
1405246d2:	48 8d 44 24 40       	lea    0x40(%rsp),%rax
1405246d7:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1405246dc:	4c 8b 46 18          	mov    0x18(%rsi),%r8
1405246e0:	48 8b 51 28          	mov    0x28(%rcx),%rdx
1405246e4:	e8 e7 24 00 00       	call   0x140526bd0
1405246e9:	e9 85 00 00 00       	jmp    0x140524773
1405246ee:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
1405246f3:	48 8b 36             	mov    (%rsi),%rsi
1405246f6:	48 8b 0d 93 73 f0 00 	mov    0xf07393(%rip),%rcx        # 0x14142ba90
1405246fd:	48 85 c9             	test   %rcx,%rcx
140524700:	74 71                	je     0x140524773
140524702:	e8 29 0e 2f 00       	call   0x140815530
140524707:	84 c0                	test   %al,%al
140524709:	74 68                	je     0x140524773
14052470b:	49 8b 46 08          	mov    0x8(%r14),%rax
14052470f:	44 0f b7 60 12       	movzwl 0x12(%rax),%r12d
140524714:	44 0f b7 68 10       	movzwl 0x10(%rax),%r13d
140524719:	48 8b 28             	mov    (%rax),%rbp
14052471c:	44 8b 78 08          	mov    0x8(%rax),%r15d
140524720:	b9 28 00 00 00       	mov    $0x28,%ecx
140524725:	e8 de 69 8f 00       	call   0x140e1b108
14052472a:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
14052472f:	48 85 c0             	test   %rax,%rax
140524732:	74 11                	je     0x140524745
140524734:	4c 8b c5             	mov    %rbp,%r8
140524737:	41 8b d7             	mov    %r15d,%edx
14052473a:	48 8b c8             	mov    %rax,%rcx
14052473d:	e8 ae d4 20 00       	call   0x140731bf0
140524742:	48 8b d8             	mov    %rax,%rbx
140524745:	48 89 5c 24 50       	mov    %rbx,0x50(%rsp)
14052474a:	48 8b 4e 48          	mov    0x48(%rsi),%rcx
14052474e:	45 0f b7 0e          	movzwl (%r14),%r9d
140524752:	4c 89 64 24 30       	mov    %r12,0x30(%rsp)
140524757:	4c 89 6c 24 28       	mov    %r13,0x28(%rsp)
14052475c:	48 8d 44 24 50       	lea    0x50(%rsp),%rax
140524761:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140524766:	4c 8b 46 18          	mov    0x18(%rsi),%r8
14052476a:	48 8b 51 28          	mov    0x28(%rcx),%rdx
14052476e:	e8 4d 27 00 00       	call   0x140526ec0
140524773:	41 c7 46 24 01 00 00 	movl   $0x1,0x24(%r14)
14052477a:	00
14052477b:	8b c7                	mov    %edi,%eax
14052477d:	48 8b 8c 24 88 00 00 	mov    0x88(%rsp),%rcx
140524784:	00
140524785:	48 33 cc             	xor    %rsp,%rcx
140524788:	e8 73 6d 8f 00       	call   0x140e1b500
14052478d:	48 81 c4 98 00 00 00 	add    $0x98,%rsp
140524794:	41 5f                	pop    %r15
140524796:	41 5e                	pop    %r14
140524798:	41 5d                	pop    %r13
14052479a:	41 5c                	pop    %r12
14052479c:	5f                   	pop    %rdi
14052479d:	5e                   	pop    %rsi
14052479e:	5d                   	pop    %rbp
14052479f:	5b                   	pop    %rbx
1405247a0:	c3                   	ret
1405247a1:	49 8b ce             	mov    %r14,%rcx
1405247a4:	e8 f7 3b ea ff       	call   0x1403c83a0
1405247a9:	44 0f b6 c0          	movzbl %al,%r8d
1405247ad:	48 8d 15 bc 6a ae 00 	lea    0xae6abc(%rip),%rdx        # 0x14100b270
1405247b4:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
1405247b9:	e8 a2 38 c9 ff       	call   0x1401b8060
1405247be:	48 8d 15 5b c3 e7 00 	lea    0xe7c35b(%rip),%rdx        # 0x1413a0b20
1405247c5:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
1405247ca:	e8 49 80 8f 00       	call   0x140e1c818
1405247cf:	cc                   	int3
1405247d0:	41 2b ec             	sub    %r12d,%ebp
1405247d3:	44 8b cd             	mov    %ebp,%r9d