1801122e5:	45 0f 4f c2          	cmovg  %r10d,%r8d
1801122e9:	4a 8b 7c 25 80       	mov    -0x80(%rbp,%r12,1),%rdi
1801122ee:	4c 89 45 90          	mov    %r8,-0x70(%rbp)
1801122f2:	4a 8b 54 05 80       	mov    -0x80(%rbp,%r8,1),%rdx
1801122f7:	48 8b da             	mov    %rdx,%rbx
1801122fa:	48 2b df             	sub    %rdi,%rbx
1801122fd:	48 ff c3             	inc    %rbx
180112300:	4d 85 f6             	test   %r14,%r14
180112303:	74 21                	je     0x180112326
180112305:	4a 8b 44 24 50       	mov    0x50(%rsp,%r12,1),%rax
18011230a:	4d 8d 4e ff          	lea    -0x1(%r14),%r9
18011230e:	4e 8d 0c c8          	lea    (%rax,%r9,8),%r9
180112312:	49 83 39 00          	cmpq   $0x0,(%r9)
180112316:	75 09                	jne    0x180112321
180112318:	4d 2b ca             	sub    %r10,%r9
18011231b:	48 83 e9 01          	sub    $0x1,%rcx
18011231f:	75 f1                	jne    0x180112312
180112321:	48 89 4c 24 48       	mov    %rcx,0x48(%rsp)
180112326:	4a 8b 44 04 68       	mov    0x68(%rsp,%r8,1),%rax
18011232b:	4c 8b cf             	mov    %rdi,%r9
18011232e:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
180112333:	4c 8b 7d c8          	mov    -0x38(%rbp),%r15
180112337:	4e 8b 44 24 68       	mov    0x68(%rsp,%r12,1),%r8
18011233c:	48 89 74 24 38       	mov    %rsi,0x38(%rsp)
180112341:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
180112346:	48 8b c8             	mov    %rax,%rcx
180112349:	4c 89 7c 24 28       	mov    %r15,0x28(%rsp)
18011234e:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
180112354:	e8 2f 16 00 00       	call   0x180113988
180112359:	85 c0                	test   %eax,%eax
18011235b:	0f 84 58 01 00 00    	je     0x1801124b9
180112361:	48 85 db             	test   %rbx,%rbx
180112364:	74 1c                	je     0x180112382
180112366:	49 8d 47 f8          	lea    -0x8(%r15),%rax
18011236a:	b9 08 00 00 00       	mov    $0x8,%ecx
18011236f:	48 8d 04 d8          	lea    (%rax,%rbx,8),%rax
180112373:	48 83 38 00          	cmpq   $0x0,(%rax)
180112377:	75 09                	jne    0x180112382
180112379:	48 2b c1             	sub    %rcx,%rax
18011237c:	48 83 eb 01          	sub    $0x1,%rbx
180112380:	75 f1                	jne    0x180112373
180112382:	48 85 ff             	test   %rdi,%rdi
180112385:	74 21                	je     0x1801123a8
180112387:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
18011238c:	b9 08 00 00 00       	mov    $0x8,%ecx
180112391:	48 8d 04 f8          	lea    (%rax,%rdi,8),%rax
180112395:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
180112399:	48 83 38 00          	cmpq   $0x0,(%rax)
18011239d:	75 09                	jne    0x1801123a8
18011239f:	48 2b c1             	sub    %rcx,%rax
1801123a2:	48 83 ef 01          	sub    $0x1,%rdi
1801123a6:	75 f1                	jne    0x180112399
1801123a8:	48 8b 45 90          	mov    -0x70(%rbp),%rax
1801123ac:	4c 8b c7             	mov    %rdi,%r8
1801123af:	49 c1 e0 03          	shl    $0x3,%r8
1801123b3:	48 8b 4c 04 68       	mov    0x68(%rsp,%rax,1),%rcx
1801123b8:	48 89 7c 05 80       	mov    %rdi,-0x80(%rbp,%rax,1)
1801123bd:	48 8b 7c 24 60       	mov    0x60(%rsp),%rdi
1801123c2:	48 8b d7             	mov    %rdi,%rdx
1801123c5:	e8 f6 35 02 00       	call   0x1801359c0
1801123ca:	4e 8b 44 24 50       	mov    0x50(%rsp,%r12,1),%r8
1801123cf:	48 8b d3             	mov    %rbx,%rdx
1801123d2:	48 89 74 24 28       	mov    %rsi,0x28(%rsp)
1801123d7:	49 8b cf             	mov    %r15,%rcx
1801123da:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1801123df:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
1801123e4:	4c 8b cf             	mov    %rdi,%r9
1801123e7:	e8 c8 f2 ff ff       	call   0x1801116b4
1801123ec:	85 c0                	test   %eax,%eax
1801123ee:	0f 84 c5 00 00 00    	je     0x1801124b9
1801123f4:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
1801123f9:	48 8d 14 3b          	lea    (%rbx,%rdi,1),%rdx
1801123fd:	48 85 d2             	test   %rdx,%rdx
180112400:	74 1d                	je     0x18011241f
180112402:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
180112406:	41 b8 08 00 00 00    	mov    $0x8,%r8d
18011240c:	48 8d 04 d0          	lea    (%rax,%rdx,8),%rax
180112410:	48 83 38 00          	cmpq   $0x0,(%rax)
180112414:	75 09                	jne    0x18011241f
180112416:	49 2b c0             	sub    %r8,%rax
180112419:	48 83 ea 01          	sub    $0x1,%rdx
18011241d:	75 f1                	jne    0x180112410
18011241f:	48 83 64 24 48 00    	andq   $0x0,0x48(%rsp)
180112425:	49 8b de             	mov    %r14,%rbx
180112428:	48 8b 45 90          	mov    -0x70(%rbp),%rax
18011242c:	49 3b d6             	cmp    %r14,%rdx
18011242f:	4c 8b 7d d8          	mov    -0x28(%rbp),%r15
180112433:	48 0f 47 da          	cmova  %rdx,%rbx
180112437:	48 8b 7c 04 50       	mov    0x50(%rsp,%rax,1),%rdi
18011243c:	4c 3b fb             	cmp    %rbx,%r15
18011243f:	0f 82 8c 00 00 00    	jb     0x1801124d1
180112445:	48 89 74 24 30       	mov    %rsi,0x30(%rsp)
18011244a:	48 8d 44 24 48       	lea    0x48(%rsp),%rax
18011244f:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
180112454:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
180112459:	49 3b d6             	cmp    %r14,%rdx
18011245c:	73 0e                	jae    0x18011246c
18011245e:	4c 8b ca             	mov    %rdx,%r9
180112461:	4c 8b c1             	mov    %rcx,%r8
180112464:	49 8b d6             	mov    %r14,%rdx
180112467:	48 8b cf             	mov    %rdi,%rcx
18011246a:	eb 06                	jmp    0x180112472
18011246c:	4d 8b ce             	mov    %r14,%r9
18011246f:	4c 8b c7             	mov    %rdi,%r8
180112472:	e8 d9 dd ff ff       	call   0x180110250
180112477:	85 c0                	test   %eax,%eax
180112479:	74 1e                	je     0x180112499
18011247b:	48 8b 44 24 48       	mov    0x48(%rsp),%rax
180112480:	48 85 c0             	test   %rax,%rax
180112483:	74 0c                	je     0x180112491
180112485:	49 3b df             	cmp    %r15,%rbx
180112488:	74 47                	je     0x1801124d1
18011248a:	48 89 04 df          	mov    %rax,(%rdi,%rbx,8)
18011248e:	48 ff c3             	inc    %rbx
180112491:	4c 8b f3             	mov    %rbx,%r14
180112494:	b8 01 00 00 00       	mov    $0x1,%eax
180112499:	85 c0                	test   %eax,%eax
18011249b:	74 1c                	je     0x1801124b9
18011249d:	4c 8b 65 88          	mov    -0x78(%rbp),%r12
1801124a1:	bf 01 00 00 00       	mov    $0x1,%edi
1801124a6:	4c 8b 7d 80          	mov    -0x80(%rbp),%r15
1801124aa:	e9 fc f8 ff ff       	jmp    0x180111dab
1801124af:	33 ff                	xor    %edi,%edi
1801124b1:	44 8b ff             	mov    %edi,%r15d
1801124b4:	e9 31 02 00 00       	jmp    0x1801126ea
1801124b9:	33 ff                	xor    %edi,%edi
1801124bb:	4c 8b ff             	mov    %rdi,%r15
1801124be:	e9 4d 02 00 00       	jmp    0x180112710
1801124c3:	48 85 f6             	test   %rsi,%rsi
1801124c6:	74 f1                	je     0x1801124b9
1801124c8:	c7 46 10 05 00 00 00 	movl   $0x5,0x10(%rsi)
1801124cf:	eb e8                	jmp    0x1801124b9
1801124d1:	48 85 f6             	test   %rsi,%rsi
1801124d4:	74 e3                	je     0x1801124b9
1801124d6:	c7 46 10 01 00 00 00 	movl   $0x1,0x10(%rsi)
1801124dd:	eb da                	jmp    0x1801124b9
1801124df:	85 ff                	test   %edi,%edi
1801124e1:	0f 84 24 02 00 00    	je     0x18011270b
1801124e7:	48 8b 4d b8          	mov    -0x48(%rbp),%rcx
1801124eb:	45 33 e4             	xor    %r12d,%r12d
1801124ee:	4d 85 ff             	test   %r15,%r15
1801124f1:	41 0f 94 c4          	sete   %r12b
1801124f5:	4d 8b f4             	mov    %r12,%r14
1801124f8:	49 c1 e6 03          	shl    $0x3,%r14
1801124fc:	4e 8b 7c 35 80       	mov    -0x80(%rbp,%r14,1),%r15
180112501:	4a 8b 54 34 68       	mov    0x68(%rsp,%r14,1),%rdx
180112506:	4d 8b c7             	mov    %r15,%r8
180112509:	49 c1 e0 03          	shl    $0x3,%r8
18011250d:	4c 89 7c 24 40       	mov    %r15,0x40(%rsp)
180112512:	e8 a9 34 02 00       	call   0x1801359c0
180112517:	48 8b 4d a0          	mov    -0x60(%rbp),%rcx
18011251b:	48 8d 44 24 58       	lea    0x58(%rsp),%rax
180112520:	49 2b c6             	sub    %r14,%rax
180112523:	4d 8b c5             	mov    %r13,%r8
180112526:	48 8b 18             	mov    (%rax),%rbx
180112529:	48 8b d3             	mov    %rbx,%rdx
18011252c:	e8 37 e0 ff ff       	call   0x180110568
180112531:	85 c0                	test   %eax,%eax
180112533:	78 14                	js     0x180112549
180112535:	4a 8b 54 34 50       	mov    0x50(%rsp,%r14,1),%rdx
18011253a:	4d 8b c5             	mov    %r13,%r8
18011253d:	48 8b cb             	mov    %rbx,%rcx
180112540:	e8 23 e0 ff ff       	call   0x180110568
180112545:	85 c0                	test   %eax,%eax
180112547:	79 12                	jns    0x18011255b
180112549:	33 ff                	xor    %edi,%edi
18011254b:	48 85 f6             	test   %rsi,%rsi
18011254e:	0f 84 bc 01 00 00    	je     0x180112710
180112554:	c7 46 10 05 00 00 00 	movl   $0x5,0x10(%rsi)
18011255b:	85 ff                	test   %edi,%edi
18011255d:	0f 84 ad 01 00 00    	je     0x180112710
180112563:	4c 8b 74 24 78       	mov    0x78(%rsp),%r14
180112568:	4d 85 e4             	test   %r12,%r12
18011256b:	75 16                	jne    0x180112583
18011256d:	48 8b 54 24 50       	mov    0x50(%rsp),%rdx
180112572:	4d 8b c5             	mov    %r13,%r8
180112575:	49 c1 e0 03          	shl    $0x3,%r8
180112579:	49 8b ce             	mov    %r14,%rcx
18011257c:	e8 3f 34 02 00       	call   0x1801359c0
180112581:	eb 30                	jmp    0x1801125b3
180112583:	4d 85 ed             	test   %r13,%r13
180112586:	74 2b                	je     0x1801125b3
180112588:	48 8b 54 24 58       	mov    0x58(%rsp),%rdx
18011258d:	49 8b c5             	mov    %r13,%rax
180112590:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
180112595:	4d 8b c6             	mov    %r14,%r8
180112598:	48 c1 e0 06          	shl    $0x6,%rax
18011259c:	48 3d 00 01 00 00    	cmp    $0x100,%rax
1801125a2:	75 07                	jne    0x1801125ab
1801125a4:	e8 b7 08 02 00       	call   0x180132e60
1801125a9:	eb 08                	jmp    0x1801125b3
1801125ab:	4d 8b cd             	mov    %r13,%r9
1801125ae:	e8 7d 08 02 00       	call   0x180132e30
1801125b3:	48 8b 45 30          	mov    0x30(%rbp),%rax
1801125b7:	4c 8b 65 b0          	mov    -0x50(%rbp),%r12
1801125bb:	4c 8b 7d 98          	mov    -0x68(%rbp),%r15
1801125bf:	48 85 c0             	test   %rax,%rax
1801125c2:	74 28                	je     0x1801125ec
1801125c4:	48 89 74 24 28       	mov    %rsi,0x28(%rsp)
1801125c9:	4d 8b cd             	mov    %r13,%r9
1801125cc:	4c 8b c3             	mov    %rbx,%r8
1801125cf:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1801125d4:	49 8b d4             	mov    %r12,%rdx
1801125d7:	49 8b cf             	mov    %r15,%rcx
1801125da:	e8 d5 f0 ff ff       	call   0x1801116b4
1801125df:	85 c0                	test   %eax,%eax
1801125e1:	74 07                	je     0x1801125ea
1801125e3:	bf 01 00 00 00       	mov    $0x1,%edi
1801125e8:	eb 0a                	jmp    0x1801125f4
1801125ea:	33 ff                	xor    %edi,%edi
1801125ec:	85 ff                	test   %edi,%edi
1801125ee:	0f 84 17 01 00 00    	je     0x18011270b
1801125f4:	48 83 7d e0 00       	cmpq   $0x0,-0x20(%rbp)
1801125f9:	0f 84 0c 01 00 00    	je     0x18011270b
1801125ff:	4d 85 ed             	test   %r13,%r13
180112602:	74 27                	je     0x18011262b
180112604:	49 8b c5             	mov    %r13,%rax
180112607:	4c 8b c3             	mov    %rbx,%r8
18011260a:	48 c1 e0 06          	shl    $0x6,%rax
18011260e:	49 8b d6             	mov    %r14,%rdx
180112611:	48 8b cb             	mov    %rbx,%rcx
180112614:	48 3d 00 01 00 00    	cmp    $0x100,%rax
18011261a:	75 07                	jne    0x180112623
18011261c:	e8 3f 08 02 00       	call   0x180132e60
180112621:	eb 08                	jmp    0x18011262b
180112623:	4d 8b cd             	mov    %r13,%r9
180112626:	e8 05 08 02 00       	call   0x180132e30
18011262b:	48 8b 7c 24 60       	mov    0x60(%rsp),%rdi
180112630:	4d 8b cd             	mov    %r13,%r9
180112633:	48 89 74 24 28       	mov    %rsi,0x28(%rsp)
180112638:	4c 8b c3             	mov    %rbx,%r8
18011263b:	49 8b d4             	mov    %r12,%rdx
18011263e:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
180112643:	49 8b cf             	mov    %r15,%rcx
180112646:	e8 69 f0 ff ff       	call   0x1801116b4
18011264b:	4c 8b 7c 24 40       	mov    0x40(%rsp),%r15
180112650:	85 c0                	test   %eax,%eax
180112652:	0f 84 fd 00 00 00    	je     0x180112755
180112658:	4c 8b 45 b8          	mov    -0x48(%rbp),%r8
18011265c:	4b 8d 14 2c          	lea    (%r12,%r13,1),%rdx
180112660:	48 89 74 24 30       	mov    %rsi,0x30(%rsp)
180112665:	4d 8b cf             	mov    %r15,%r9
180112668:	48 83 64 24 28 00    	andq   $0x0,0x28(%rsp)
18011266e:	48 8b cf             	mov    %rdi,%rcx
180112671:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
180112676:	e8 d5 db ff ff       	call   0x180110250
18011267b:	85 c0                	test   %eax,%eax
18011267d:	0f 84 d2 00 00 00    	je     0x180112755
180112683:	4c 8b 7d c0          	mov    -0x40(%rbp),%r15
180112687:	48 8b cf             	mov    %rdi,%rcx
18011268a:	4c 8b 75 c8          	mov    -0x38(%rbp),%r14
18011268e:	4d 8b cf             	mov    %r15,%r9
180112691:	4c 8b 45 a0          	mov    -0x60(%rbp),%r8
180112695:	48 89 74 24 38       	mov    %rsi,0x38(%rsp)
18011269a:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
18011269f:	4b 8d 14 3c          	lea    (%r12,%r15,1),%rdx
1801126a3:	4c 89 74 24 28       	mov    %r14,0x28(%rsp)
1801126a8:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
1801126ae:	e8 d5 12 00 00       	call   0x180113988
1801126b3:	85 c0                	test   %eax,%eax
1801126b5:	0f 84 95 00 00 00    	je     0x180112750
1801126bb:	bf 01 00 00 00       	mov    $0x1,%edi
1801126c0:	4d 85 ff             	test   %r15,%r15
1801126c3:	74 33                	je     0x1801126f8
1801126c5:	49 8d 47 ff          	lea    -0x1(%r15),%rax
1801126c9:	48 8d 04 c3          	lea    (%rbx,%rax,8),%rax
1801126cd:	8d 4f 07             	lea    0x7(%rdi),%ecx
1801126d0:	48 83 38 00          	cmpq   $0x0,(%rax)
1801126d4:	75 08                	jne    0x1801126de
1801126d6:	48 2b c1             	sub    %rcx,%rax
1801126d9:	4c 2b ff             	sub    %rdi,%r15
1801126dc:	75 f2                	jne    0x1801126d0
1801126de:	4d 85 ff             	test   %r15,%r15
1801126e1:	74 15                	je     0x1801126f8
1801126e3:	4c 8b 7c 24 40       	mov    0x40(%rsp),%r15
1801126e8:	33 ff                	xor    %edi,%edi
1801126ea:	48 85 f6             	test   %rsi,%rsi
1801126ed:	74 21                	je     0x180112710
1801126ef:	c7 46 10 05 00 00 00 	movl   $0x5,0x10(%rsi)
1801126f6:	eb 18                	jmp    0x180112710
1801126f8:	48 8b 4d e0          	mov    -0x20(%rbp),%rcx
1801126fc:	4d 8b c4             	mov    %r12,%r8
1801126ff:	49 c1 e0 03          	shl    $0x3,%r8
180112703:	49 8b d6             	mov    %r14,%rdx
180112706:	e8 b5 32 02 00       	call   0x1801359c0
18011270b:	4c 8b 7c 24 40       	mov    0x40(%rsp),%r15
180112710:	83 7d f8 00          	cmpl   $0x0,-0x8(%rbp)
180112714:	74 09                	je     0x18011271f
180112716:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
18011271a:	e8 dd 78 f8 ff       	call   0x180099ffc
18011271f:	85 ff                	test   %edi,%edi
180112721:	74 07                	je     0x18011272a
180112723:	48 8b 45 38          	mov    0x38(%rbp),%rax
180112727:	4c 89 38             	mov    %r15,(%rax)
18011272a:	8b c7                	mov    %edi,%eax
18011272c:	48 8b 8d b0 00 00 00 	mov    0xb0(%rbp),%rcx
180112733:	48 33 cc             	xor    %rsp,%rcx
180112736:	e8 f1 33 f0 ff       	call   0x180015b2c
18011273b:	48 81 c4 c8 01 00 00 	add    $0x1c8,%rsp
180112742:	41 5f                	pop    %r15
180112744:	41 5e                	pop    %r14
180112746:	41 5d                	pop    %r13
180112748:	41 5c                	pop    %r12
18011274a:	5f                   	pop    %rdi
18011274b:	5e                   	pop    %rsi
18011274c:	5b                   	pop    %rbx
18011274d:	5d                   	pop    %rbp
18011274e:	c3                   	ret
18011274f:	cc                   	int3
180112750:	4c 8b 7c 24 40       	mov    0x40(%rsp),%r15
180112755:	33 ff                	xor    %edi,%edi
180112757:	eb b7                	jmp    0x180112710
180112759:	cc                   	int3
18011275a:	cc                   	int3
18011275b:	cc                   	int3
18011275c:	40 53                	rex push %rbx
18011275e:	55                   	push   %rbp
18011275f:	56                   	push   %rsi
180112760:	57                   	push   %rdi
180112761:	41 54                	push   %r12
180112763:	41 55                	push   %r13
180112765:	41 56                	push   %r14
180112767:	41 57                	push   %r15
180112769:	48 83 ec 38          	sub    $0x38,%rsp
18011276d:	48 8b 42 08          	mov    0x8(%rdx),%rax
180112771:	33 f6                	xor    %esi,%esi
180112773:	4c 8b 19             	mov    (%rcx),%r11
180112776:	33 ff                	xor    %edi,%edi
180112778:	48 8b 49 08          	mov    0x8(%rcx),%rcx
18011277c:	4d 8b e0             	mov    %r8,%r12
18011277f:	4c 8b 12             	mov    (%rdx),%r10
180112782:	48 89 44 24 08       	mov    %rax,0x8(%rsp)
180112787:	b8 01 00 00 00       	mov    $0x1,%eax
18011278c:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
180112791:	8b d8                	mov    %eax,%ebx
180112793:	48 89 0c 24          	mov    %rcx,(%rsp)
180112797:	44 8b c0             	mov    %eax,%r8d
18011279a:	44 8b f0             	mov    %eax,%r14d
18011279d:	4d 85 db             	test   %r11,%r11
1801127a0:	74 0d                	je     0x1801127af
1801127a2:	4d 85 d2             	test   %r10,%r10
1801127a5:	74 08                	je     0x1801127af
1801127a7:	49 8b c2             	mov    %r10,%rax
1801127aa:	49 0b c3             	or     %r11,%rax
1801127ad:	7c 0f                	jl     0x1801127be
1801127af:	33 db                	xor    %ebx,%ebx
1801127b1:	4d 85 c9             	test   %r9,%r9
1801127b4:	74 08                	je     0x1801127be
1801127b6:	41 c7 41 10 05 00 00 	movl   $0x5,0x10(%r9)
1801127bd:	00