140adf16f:	5f                   	pop    %rdi
140adf170:	c3                   	ret
140adf171:	ff 15 21 d8 02 00    	call   *0x2d821(%rip)        # 0x140b0c998
140adf177:	cc                   	int3
140adf178:	48 8b c4             	mov    %rsp,%rax
140adf17b:	48 89 58 08          	mov    %rbx,0x8(%rax)
140adf17f:	48 89 68 10          	mov    %rbp,0x10(%rax)
140adf183:	48 89 70 18          	mov    %rsi,0x18(%rax)
140adf187:	48 89 78 20          	mov    %rdi,0x20(%rax)
140adf18b:	41 54                	push   %r12
140adf18d:	41 56                	push   %r14
140adf18f:	41 57                	push   %r15
140adf191:	48 83 ec 40          	sub    $0x40,%rsp
140adf195:	49 8b f0             	mov    %r8,%rsi
140adf198:	48 8b fa             	mov    %rdx,%rdi
140adf19b:	4c 8b f9             	mov    %rcx,%r15
140adf19e:	4c 8b 31             	mov    (%rcx),%r14
140adf1a1:	48 8b 41 10          	mov    0x10(%rcx),%rax
140adf1a5:	49 2b c6             	sub    %r14,%rax
140adf1a8:	48 c1 f8 03          	sar    $0x3,%rax
140adf1ac:	49 bc ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%r12
140adf1b3:	aa aa aa
140adf1b6:	49 0f af c4          	imul   %r12,%rax
140adf1ba:	4c 3b c0             	cmp    %rax,%r8
140adf1bd:	76 3d                	jbe    0x140adf1fc
140adf1bf:	49 8b d0             	mov    %r8,%rdx
140adf1c2:	e8 8d 05 00 00       	call   0x140adf754
140adf1c7:	49 8b 1f             	mov    (%r15),%rbx
140adf1ca:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140adf1cf:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140adf1d4:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
140adf1d9:	48 85 f6             	test   %rsi,%rsi
140adf1dc:	74 1c                	je     0x140adf1fa
140adf1de:	48 8b d7             	mov    %rdi,%rdx
140adf1e1:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140adf1e6:	e8 d9 11 00 00       	call   0x140ae03c4
140adf1eb:	48 83 c7 18          	add    $0x18,%rdi
140adf1ef:	48 83 ee 01          	sub    $0x1,%rsi
140adf1f3:	75 e9                	jne    0x140adf1de
140adf1f5:	48 8b 5c 24 28       	mov    0x28(%rsp),%rbx
140adf1fa:	eb 72                	jmp    0x140adf26e
140adf1fc:	48 8b 59 08          	mov    0x8(%rcx),%rbx
140adf200:	48 8b eb             	mov    %rbx,%rbp
140adf203:	49 2b ee             	sub    %r14,%rbp
140adf206:	48 c1 fd 03          	sar    $0x3,%rbp
140adf20a:	49 0f af ec          	imul   %r12,%rbp
140adf20e:	48 3b f5             	cmp    %rbp,%rsi
140adf211:	0f 87 a5 00 00 00    	ja     0x140adf2bc
140adf217:	4b 8d 04 40          	lea    (%r8,%r8,2),%rax
140adf21b:	49 8d 1c c6          	lea    (%r14,%rax,8),%rbx
140adf21f:	48 85 f6             	test   %rsi,%rsi
140adf222:	74 2d                	je     0x140adf251
140adf224:	4c 3b f7             	cmp    %rdi,%r14
140adf227:	74 1a                	je     0x140adf243
140adf229:	4c 8b 47 08          	mov    0x8(%rdi),%r8
140adf22d:	4c 2b 07             	sub    (%rdi),%r8
140adf230:	49 c1 f8 03          	sar    $0x3,%r8
140adf234:	4d 0f af c4          	imul   %r12,%r8
140adf238:	48 8b 17             	mov    (%rdi),%rdx
140adf23b:	49 8b ce             	mov    %r14,%rcx
140adf23e:	e8 11 0f 00 00       	call   0x140ae0154
140adf243:	49 83 c6 18          	add    $0x18,%r14
140adf247:	48 83 c7 18          	add    $0x18,%rdi
140adf24b:	48 83 ee 01          	sub    $0x1,%rsi
140adf24f:	75 d3                	jne    0x140adf224
140adf251:	49 8b 77 08          	mov    0x8(%r15),%rsi
140adf255:	48 8b fb             	mov    %rbx,%rdi
140adf258:	48 3b de             	cmp    %rsi,%rbx
140adf25b:	74 11                	je     0x140adf26e
140adf25d:	48 8b cf             	mov    %rdi,%rcx
140adf260:	e8 f7 e4 57 ff       	call   0x14005d75c
140adf265:	48 83 c7 18          	add    $0x18,%rdi
140adf269:	48 3b fe             	cmp    %rsi,%rdi
140adf26c:	75 ef                	jne    0x140adf25d
140adf26e:	49 89 5f 08          	mov    %rbx,0x8(%r15)
140adf272:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140adf277:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
140adf27c:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
140adf281:	48 8b 7c 24 78       	mov    0x78(%rsp),%rdi
140adf286:	48 83 c4 40          	add    $0x40,%rsp
140adf28a:	41 5f                	pop    %r15
140adf28c:	41 5e                	pop    %r14
140adf28e:	41 5c                	pop    %r12
140adf290:	c3                   	ret
140adf291:	4c 3b f7             	cmp    %rdi,%r14
140adf294:	74 1a                	je     0x140adf2b0
140adf296:	4c 8b 47 08          	mov    0x8(%rdi),%r8
140adf29a:	4c 2b 07             	sub    (%rdi),%r8
140adf29d:	49 c1 f8 03          	sar    $0x3,%r8
140adf2a1:	4d 0f af c4          	imul   %r12,%r8
140adf2a5:	48 8b 17             	mov    (%rdi),%rdx
140adf2a8:	49 8b ce             	mov    %r14,%rcx
140adf2ab:	e8 a4 0e 00 00       	call   0x140ae0154
140adf2b0:	49 83 c6 18          	add    $0x18,%r14
140adf2b4:	48 83 c7 18          	add    $0x18,%rdi
140adf2b8:	49 8b 5f 08          	mov    0x8(%r15),%rbx
140adf2bc:	4c 3b f3             	cmp    %rbx,%r14
140adf2bf:	75 d0                	jne    0x140adf291
140adf2c1:	48 2b f5             	sub    %rbp,%rsi
140adf2c4:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140adf2c9:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140adf2ce:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
140adf2d3:	74 1c                	je     0x140adf2f1
140adf2d5:	48 8b d7             	mov    %rdi,%rdx
140adf2d8:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140adf2dd:	e8 e2 10 00 00       	call   0x140ae03c4
140adf2e2:	48 83 c7 18          	add    $0x18,%rdi
140adf2e6:	48 83 ee 01          	sub    $0x1,%rsi
140adf2ea:	75 e9                	jne    0x140adf2d5
140adf2ec:	48 8b 5c 24 28       	mov    0x28(%rsp),%rbx
140adf2f1:	e9 78 ff ff ff       	jmp    0x140adf26e
140adf2f6:	cc                   	int3
140adf2f7:	90                   	nop
140adf2f8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140adf2fd:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140adf302:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140adf307:	57                   	push   %rdi
140adf308:	41 56                	push   %r14
140adf30a:	41 57                	push   %r15
140adf30c:	48 83 ec 40          	sub    $0x40,%rsp
140adf310:	49 8b f8             	mov    %r8,%rdi
140adf313:	48 8b f2             	mov    %rdx,%rsi
140adf316:	4c 8b f1             	mov    %rcx,%r14
140adf319:	48 8b 29             	mov    (%rcx),%rbp
140adf31c:	48 8b 41 10          	mov    0x10(%rcx),%rax
140adf320:	48 2b c5             	sub    %rbp,%rax
140adf323:	48 c1 f8 03          	sar    $0x3,%rax
140adf327:	48 b9 c5 4e ec c4 4e 	movabs $0x4ec4ec4ec4ec4ec5,%rcx
140adf32e:	ec c4 4e
140adf331:	48 0f af c1          	imul   %rcx,%rax
140adf335:	4c 3b c0             	cmp    %rax,%r8
140adf338:	76 40                	jbe    0x140adf37a
140adf33a:	49 8b d0             	mov    %r8,%rdx
140adf33d:	49 8b ce             	mov    %r14,%rcx
140adf340:	e8 0f 05 00 00       	call   0x140adf854
140adf345:	49 8b 1e             	mov    (%r14),%rbx
140adf348:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140adf34d:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140adf352:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
140adf357:	48 85 ff             	test   %rdi,%rdi
140adf35a:	74 1c                	je     0x140adf378
140adf35c:	48 8b d6             	mov    %rsi,%rdx
140adf35f:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140adf364:	e8 1b 11 00 00       	call   0x140ae0484
140adf369:	48 83 c6 68          	add    $0x68,%rsi
140adf36d:	48 83 ef 01          	sub    $0x1,%rdi
140adf371:	75 e9                	jne    0x140adf35c
140adf373:	48 8b 5c 24 28       	mov    0x28(%rsp),%rbx
140adf378:	eb 59                	jmp    0x140adf3d3
140adf37a:	49 8b 5e 08          	mov    0x8(%r14),%rbx
140adf37e:	4c 8b fb             	mov    %rbx,%r15
140adf381:	4c 2b fd             	sub    %rbp,%r15
140adf384:	49 c1 ff 03          	sar    $0x3,%r15
140adf388:	4c 0f af f9          	imul   %rcx,%r15
140adf38c:	49 3b ff             	cmp    %r15,%rdi
140adf38f:	77 76                	ja     0x140adf407
140adf391:	48 6b df 68          	imul   $0x68,%rdi,%rbx
140adf395:	48 03 dd             	add    %rbp,%rbx
140adf398:	48 85 ff             	test   %rdi,%rdi
140adf39b:	74 19                	je     0x140adf3b6
140adf39d:	48 8b d6             	mov    %rsi,%rdx
140adf3a0:	48 8b cd             	mov    %rbp,%rcx
140adf3a3:	e8 64 df ff ff       	call   0x140add30c
140adf3a8:	48 83 c5 68          	add    $0x68,%rbp
140adf3ac:	48 83 c6 68          	add    $0x68,%rsi
140adf3b0:	48 83 ef 01          	sub    $0x1,%rdi
140adf3b4:	75 e7                	jne    0x140adf39d
140adf3b6:	49 8b 76 08          	mov    0x8(%r14),%rsi
140adf3ba:	48 8b fb             	mov    %rbx,%rdi
140adf3bd:	48 3b de             	cmp    %rsi,%rbx
140adf3c0:	74 11                	je     0x140adf3d3
140adf3c2:	48 8b cf             	mov    %rdi,%rcx
140adf3c5:	e8 a2 de ff ff       	call   0x140add26c
140adf3ca:	48 83 c7 68          	add    $0x68,%rdi
140adf3ce:	48 3b fe             	cmp    %rsi,%rdi
140adf3d1:	75 ef                	jne    0x140adf3c2
140adf3d3:	49 89 5e 08          	mov    %rbx,0x8(%r14)
140adf3d7:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140adf3dc:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
140adf3e1:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
140adf3e6:	48 83 c4 40          	add    $0x40,%rsp
140adf3ea:	41 5f                	pop    %r15
140adf3ec:	41 5e                	pop    %r14
140adf3ee:	5f                   	pop    %rdi
140adf3ef:	c3                   	ret
140adf3f0:	48 8b d6             	mov    %rsi,%rdx
140adf3f3:	48 8b cd             	mov    %rbp,%rcx
140adf3f6:	e8 11 df ff ff       	call   0x140add30c
140adf3fb:	48 83 c5 68          	add    $0x68,%rbp
140adf3ff:	48 83 c6 68          	add    $0x68,%rsi
140adf403:	49 8b 5e 08          	mov    0x8(%r14),%rbx
140adf407:	48 3b eb             	cmp    %rbx,%rbp
140adf40a:	75 e4                	jne    0x140adf3f0
140adf40c:	49 2b ff             	sub    %r15,%rdi
140adf40f:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140adf414:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140adf419:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
140adf41e:	74 1c                	je     0x140adf43c
140adf420:	48 8b d6             	mov    %rsi,%rdx
140adf423:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140adf428:	e8 57 10 00 00       	call   0x140ae0484
140adf42d:	48 83 c6 68          	add    $0x68,%rsi
140adf431:	48 83 ef 01          	sub    $0x1,%rdi
140adf435:	75 e9                	jne    0x140adf420
140adf437:	48 8b 5c 24 28       	mov    0x28(%rsp),%rbx
140adf43c:	eb 95                	jmp    0x140adf3d3
140adf43e:	cc                   	int3
140adf43f:	90                   	nop
140adf440:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140adf445:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
140adf44a:	56                   	push   %rsi
140adf44b:	57                   	push   %rdi
140adf44c:	41 55                	push   %r13
140adf44e:	41 56                	push   %r14
140adf450:	41 57                	push   %r15
140adf452:	48 83 ec 40          	sub    $0x40,%rsp
140adf456:	49 8b f0             	mov    %r8,%rsi
140adf459:	4c 8b fa             	mov    %rdx,%r15
140adf45c:	4c 8b f1             	mov    %rcx,%r14
140adf45f:	48 8b 39             	mov    (%rcx),%rdi
140adf462:	48 8b 41 10          	mov    0x10(%rcx),%rax
140adf466:	48 2b c7             	sub    %rdi,%rax
140adf469:	48 c1 f8 03          	sar    $0x3,%rax
140adf46d:	48 b9 b7 6d db b6 6d 	movabs $0x6db6db6db6db6db7,%rcx
140adf474:	db b6 6d
140adf477:	48 0f af c1          	imul   %rcx,%rax
140adf47b:	4c 3b c0             	cmp    %rax,%r8
140adf47e:	76 69                	jbe    0x140adf4e9
140adf480:	49 8b d0             	mov    %r8,%rdx
140adf483:	49 8b ce             	mov    %r14,%rcx
140adf486:	e8 c5 04 00 00       	call   0x140adf950
140adf48b:	49 8b 1e             	mov    (%r14),%rbx
140adf48e:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140adf493:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140adf498:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
140adf49d:	48 85 f6             	test   %rsi,%rsi
140adf4a0:	74 42                	je     0x140adf4e4
140adf4a2:	49 83 c7 08          	add    $0x8,%r15
140adf4a6:	48 89 5c 24 70       	mov    %rbx,0x70(%rsp)
140adf4ab:	41 8b 47 f8          	mov    -0x8(%r15),%eax
140adf4af:	89 03                	mov    %eax,(%rbx)
140adf4b1:	41 8b 47 fc          	mov    -0x4(%r15),%eax
140adf4b5:	89 43 04             	mov    %eax,0x4(%rbx)
140adf4b8:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140adf4bc:	49 8b d7             	mov    %r15,%rdx
140adf4bf:	e8 10 c7 53 ff       	call   0x14001bbd4
140adf4c4:	48 8d 4b 20          	lea    0x20(%rbx),%rcx
140adf4c8:	49 8d 57 18          	lea    0x18(%r15),%rdx
140adf4cc:	e8 03 c7 53 ff       	call   0x14001bbd4
140adf4d1:	48 83 c3 38          	add    $0x38,%rbx
140adf4d5:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140adf4da:	49 83 c7 38          	add    $0x38,%r15
140adf4de:	48 83 ee 01          	sub    $0x1,%rsi
140adf4e2:	75 c2                	jne    0x140adf4a6
140adf4e4:	e9 47 01 00 00       	jmp    0x140adf630
140adf4e9:	49 8b 5e 08          	mov    0x8(%r14),%rbx
140adf4ed:	48 8b eb             	mov    %rbx,%rbp
140adf4f0:	48 2b ef             	sub    %rdi,%rbp
140adf4f3:	48 c1 fd 03          	sar    $0x3,%rbp
140adf4f7:	48 0f af e9          	imul   %rcx,%rbp
140adf4fb:	48 3b f5             	cmp    %rbp,%rsi
140adf4fe:	0f 86 b1 00 00 00    	jbe    0x140adf5b5
140adf504:	48 3b fb             	cmp    %rbx,%rdi
140adf507:	74 52                	je     0x140adf55b
140adf509:	4c 8d 6f 20          	lea    0x20(%rdi),%r13
140adf50d:	41 8b 07             	mov    (%r15),%eax
140adf510:	89 07                	mov    %eax,(%rdi)
140adf512:	41 8b 47 04          	mov    0x4(%r15),%eax
140adf516:	41 89 45 e4          	mov    %eax,-0x1c(%r13)
140adf51a:	49 8d 57 08          	lea    0x8(%r15),%rdx
140adf51e:	49 8d 4d e8          	lea    -0x18(%r13),%rcx
140adf522:	e8 41 a4 6f ff       	call   0x1401d9968
140adf527:	49 8d 57 20          	lea    0x20(%r15),%rdx
140adf52b:	4c 3b ea             	cmp    %rdx,%r13
140adf52e:	74 16                	je     0x140adf546
140adf530:	4d 8b 47 28          	mov    0x28(%r15),%r8
140adf534:	4c 2b 02             	sub    (%rdx),%r8
140adf537:	49 c1 f8 02          	sar    $0x2,%r8
140adf53b:	48 8b 12             	mov    (%rdx),%rdx
140adf53e:	49 8b cd             	mov    %r13,%rcx
140adf541:	e8 aa f7 57 ff       	call   0x14005ecf0
140adf546:	48 83 c7 38          	add    $0x38,%rdi
140adf54a:	49 83 c5 38          	add    $0x38,%r13
140adf54e:	49 83 c7 38          	add    $0x38,%r15
140adf552:	49 8b 5e 08          	mov    0x8(%r14),%rbx
140adf556:	48 3b fb             	cmp    %rbx,%rdi
140adf559:	75 b2                	jne    0x140adf50d
140adf55b:	48 2b f5             	sub    %rbp,%rsi
140adf55e:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140adf563:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140adf568:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
140adf56d:	74 44                	je     0x140adf5b3
140adf56f:	49 83 c7 08          	add    $0x8,%r15
140adf573:	48 89 5c 24 70       	mov    %rbx,0x70(%rsp)
140adf578:	41 8b 47 f8          	mov    -0x8(%r15),%eax
140adf57c:	89 03                	mov    %eax,(%rbx)
140adf57e:	41 8b 47 fc          	mov    -0x4(%r15),%eax
140adf582:	89 43 04             	mov    %eax,0x4(%rbx)
140adf585:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140adf589:	49 8b d7             	mov    %r15,%rdx
140adf58c:	e8 43 c6 53 ff       	call   0x14001bbd4
140adf591:	90                   	nop
140adf592:	48 8d 4b 20          	lea    0x20(%rbx),%rcx
140adf596:	49 8d 57 18          	lea    0x18(%r15),%rdx
140adf59a:	e8 35 c6 53 ff       	call   0x14001bbd4
140adf59f:	90                   	nop
140adf5a0:	48 83 c3 38          	add    $0x38,%rbx
140adf5a4:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140adf5a9:	49 83 c7 38          	add    $0x38,%r15
140adf5ad:	48 83 ee 01          	sub    $0x1,%rsi
140adf5b1:	75 c0                	jne    0x140adf573
140adf5b3:	eb 7b                	jmp    0x140adf630
140adf5b5:	48 6b de 38          	imul   $0x38,%rsi,%rbx
140adf5b9:	48 03 df             	add    %rdi,%rbx
140adf5bc:	48 85 f6             	test   %rsi,%rsi
140adf5bf:	74 52                	je     0x140adf613
140adf5c1:	48 8d 6f 20          	lea    0x20(%rdi),%rbp
140adf5c5:	49 83 c7 04          	add    $0x4,%r15
140adf5c9:	41 8b 47 fc          	mov    -0x4(%r15),%eax
140adf5cd:	89 07                	mov    %eax,(%rdi)
140adf5cf:	41 8b 07             	mov    (%r15),%eax
140adf5d2:	89 45 e4             	mov    %eax,-0x1c(%rbp)
140adf5d5:	49 8d 57 04          	lea    0x4(%r15),%rdx
140adf5d9:	48 8d 4d e8          	lea    -0x18(%rbp),%rcx
140adf5dd:	e8 86 a3 6f ff       	call   0x1401d9968
140adf5e2:	49 8d 57 1c          	lea    0x1c(%r15),%rdx
140adf5e6:	48 3b ea             	cmp    %rdx,%rbp
140adf5e9:	74 16                	je     0x140adf601
140adf5eb:	4d 8b 47 24          	mov    0x24(%r15),%r8
140adf5ef:	4c 2b 02             	sub    (%rdx),%r8
140adf5f2:	49 c1 f8 02          	sar    $0x2,%r8
140adf5f6:	48 8b 12             	mov    (%rdx),%rdx
140adf5f9:	48 8b cd             	mov    %rbp,%rcx
140adf5fc:	e8 ef f6 57 ff       	call   0x14005ecf0
140adf601:	48 83 c7 38          	add    $0x38,%rdi
140adf605:	48 83 c5 38          	add    $0x38,%rbp
140adf609:	49 83 c7 38          	add    $0x38,%r15
140adf60d:	48 83 ee 01          	sub    $0x1,%rsi
140adf611:	75 b6                	jne    0x140adf5c9
140adf613:	49 8b 76 08          	mov    0x8(%r14),%rsi
140adf617:	48 8b fb             	mov    %rbx,%rdi
140adf61a:	48 3b de             	cmp    %rsi,%rbx
140adf61d:	74 11                	je     0x140adf630
140adf61f:	48 8b cf             	mov    %rdi,%rcx
140adf622:	e8 45 dc ff ff       	call   0x140add26c
140adf627:	48 83 c7 38          	add    $0x38,%rdi
140adf62b:	48 3b fe             	cmp    %rsi,%rdi
140adf62e:	75 ef                	jne    0x140adf61f
140adf630:	49 89 5e 08          	mov    %rbx,0x8(%r14)
140adf634:	4c 8d 5c 24 40       	lea    0x40(%rsp),%r11