1402c7279:	4c 0f 44 c8          	cmove  %rax,%r9
1402c727d:	48 8b cf             	mov    %rdi,%rcx
1402c7280:	e8 eb 2b f6 ff       	call   0x140229e70
1402c7285:	85 c0                	test   %eax,%eax
1402c7287:	0f 8e d2 00 00 00    	jle    0x1402c735f
1402c728d:	49 8d 54 24 01       	lea    0x1(%r12),%rdx
1402c7292:	48 8b ce             	mov    %rsi,%rcx
1402c7295:	e8 66 44 f6 ff       	call   0x14022b700
1402c729a:	41 38 6c 24 01       	cmp    %bpl,0x1(%r12)
1402c729f:	7d 04                	jge    0x1402c72a5
1402c72a1:	ff c0                	inc    %eax
1402c72a3:	eb 03                	jmp    0x1402c72a8
1402c72a5:	49 ff c4             	inc    %r12
1402c72a8:	48 63 f0             	movslq %eax,%rsi
1402c72ab:	48 8b dd             	mov    %rbp,%rbx
1402c72ae:	85 c0                	test   %eax,%eax
1402c72b0:	0f 84 8d 00 00 00    	je     0x1402c7343
1402c72b6:	49 be 89 88 88 88 88 	movabs $0x8888888888888889,%r14
1402c72bd:	88 88 88
1402c72c0:	4c 8d 3d 71 36 06 00 	lea    0x63671(%rip),%r15        # 0x14032a938
1402c72c7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
1402c72ce:	00 00
1402c72d0:	49 8b c6             	mov    %r14,%rax
1402c72d3:	48 f7 e3             	mul    %rbx
1402c72d6:	48 c1 ea 03          	shr    $0x3,%rdx
1402c72da:	48 6b ca 0f          	imul   $0xf,%rdx,%rcx
1402c72de:	48 3b d9             	cmp    %rcx,%rbx
1402c72e1:	75 2e                	jne    0x1402c7311
1402c72e3:	48 85 db             	test   %rbx,%rbx
1402c72e6:	74 13                	je     0x1402c72fb
1402c72e8:	48 8d 15 55 79 06 00 	lea    0x67955(%rip),%rdx        # 0x14032ec44
1402c72ef:	48 8b cf             	mov    %rdi,%rcx
1402c72f2:	e8 09 61 f5 ff       	call   0x14021d400
1402c72f7:	85 c0                	test   %eax,%eax
1402c72f9:	7e 64                	jle    0x1402c735f
1402c72fb:	41 8d 55 04          	lea    0x4(%r13),%edx
1402c72ff:	41 b8 80 00 00 00    	mov    $0x80,%r8d
1402c7305:	48 8b cf             	mov    %rdi,%rcx
1402c7308:	e8 33 5c f5 ff       	call   0x14021cf40
1402c730d:	85 c0                	test   %eax,%eax
1402c730f:	74 4e                	je     0x1402c735f
1402c7311:	46 0f b6 04 23       	movzbl (%rbx,%r12,1),%r8d
1402c7316:	48 8d 46 ff          	lea    -0x1(%rsi),%rax
1402c731a:	48 3b d8             	cmp    %rax,%rbx
1402c731d:	4c 8d 0d 1c 79 06 00 	lea    0x6791c(%rip),%r9        # 0x14032ec40
1402c7324:	48 8d 15 31 28 0c 00 	lea    0xc2831(%rip),%rdx        # 0x140389b5c
1402c732b:	48 8b cf             	mov    %rdi,%rcx
1402c732e:	4d 0f 44 cf          	cmove  %r15,%r9
1402c7332:	e8 39 2b f6 ff       	call   0x140229e70
1402c7337:	85 c0                	test   %eax,%eax
1402c7339:	7e 24                	jle    0x1402c735f
1402c733b:	48 ff c3             	inc    %rbx
1402c733e:	48 3b de             	cmp    %rsi,%rbx
1402c7341:	72 8d                	jb     0x1402c72d0
1402c7343:	bb 01 00 00 00       	mov    $0x1,%ebx
1402c7348:	48 8d 15 f5 78 06 00 	lea    0x678f5(%rip),%rdx        # 0x14032ec44
1402c734f:	44 8b c3             	mov    %ebx,%r8d
1402c7352:	48 8b cf             	mov    %rdi,%rcx
1402c7355:	e8 96 63 f5 ff       	call   0x14021d6f0
1402c735a:	85 c0                	test   %eax,%eax
1402c735c:	0f 4f eb             	cmovg  %ebx,%ebp
1402c735f:	48 8b 94 24 90 00 00 	mov    0x90(%rsp),%rdx
1402c7366:	00
1402c7367:	4c 8d 05 1a 5e 0e 00 	lea    0xe5e1a(%rip),%r8        # 0x1403ad188
1402c736e:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
1402c7373:	41 b9 5b 00 00 00    	mov    $0x5b,%r9d
1402c7379:	e8 a2 20 f6 ff       	call   0x140229420
1402c737e:	4c 8b a4 24 80 00 00 	mov    0x80(%rsp),%r12
1402c7385:	00
1402c7386:	8b c5                	mov    %ebp,%eax
1402c7388:	e9 1d fe ff ff       	jmp    0x1402c71aa
1402c738d:	33 c0                	xor    %eax,%eax
1402c738f:	e9 16 fe ff ff       	jmp    0x1402c71aa
1402c7394:	cc                   	int3
1402c7395:	cc                   	int3
1402c7396:	cc                   	int3
1402c7397:	cc                   	int3
1402c7398:	cc                   	int3
1402c7399:	cc                   	int3
1402c739a:	cc                   	int3
1402c739b:	cc                   	int3
1402c739c:	cc                   	int3
1402c739d:	cc                   	int3
1402c739e:	cc                   	int3
1402c739f:	cc                   	int3
1402c73a0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1402c73a5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1402c73aa:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1402c73af:	57                   	push   %rdi
1402c73b0:	41 54                	push   %r12
1402c73b2:	41 55                	push   %r13
1402c73b4:	41 56                	push   %r14
1402c73b6:	41 57                	push   %r15
1402c73b8:	b8 20 00 00 00       	mov    $0x20,%eax
1402c73bd:	e8 1e 32 03 00       	call   0x1402fa5e0
1402c73c2:	48 2b e0             	sub    %rax,%rsp
1402c73c5:	33 ed                	xor    %ebp,%ebp
1402c73c7:	45 8b f1             	mov    %r9d,%r14d
1402c73ca:	49 8b f0             	mov    %r8,%rsi
1402c73cd:	4c 8b fa             	mov    %rdx,%r15
1402c73d0:	48 8b f9             	mov    %rcx,%rdi
1402c73d3:	8b dd                	mov    %ebp,%ebx
1402c73d5:	4d 85 c0             	test   %r8,%r8
1402c73d8:	0f 84 88 00 00 00    	je     0x1402c7466
1402c73de:	49 bc 89 88 88 88 88 	movabs $0x8888888888888889,%r12
1402c73e5:	88 88 88
1402c73e8:	4c 8d 2d 49 35 06 00 	lea    0x63549(%rip),%r13        # 0x14032a938
1402c73ef:	90                   	nop
1402c73f0:	49 8b c4             	mov    %r12,%rax
1402c73f3:	48 f7 e3             	mul    %rbx
1402c73f6:	48 c1 ea 03          	shr    $0x3,%rdx
1402c73fa:	48 6b ca 0f          	imul   $0xf,%rdx,%rcx
1402c73fe:	48 3b d9             	cmp    %rcx,%rbx
1402c7401:	75 31                	jne    0x1402c7434
1402c7403:	48 85 db             	test   %rbx,%rbx
1402c7406:	74 17                	je     0x1402c741f
1402c7408:	48 8d 15 35 78 06 00 	lea    0x67835(%rip),%rdx        # 0x14032ec44
1402c740f:	48 8b cf             	mov    %rdi,%rcx
1402c7412:	e8 e9 5f f5 ff       	call   0x14021d400
1402c7417:	85 c0                	test   %eax,%eax
1402c7419:	0f 8e 81 00 00 00    	jle    0x1402c74a0
1402c741f:	41 b8 80 00 00 00    	mov    $0x80,%r8d
1402c7425:	41 8b d6             	mov    %r14d,%edx
1402c7428:	48 8b cf             	mov    %rdi,%rcx
1402c742b:	e8 10 5b f5 ff       	call   0x14021cf40
1402c7430:	85 c0                	test   %eax,%eax
1402c7432:	74 6c                	je     0x1402c74a0
1402c7434:	46 0f b6 04 3b       	movzbl (%rbx,%r15,1),%r8d
1402c7439:	48 8d 46 ff          	lea    -0x1(%rsi),%rax
1402c743d:	48 3b d8             	cmp    %rax,%rbx
1402c7440:	4c 8d 0d f9 77 06 00 	lea    0x677f9(%rip),%r9        # 0x14032ec40
1402c7447:	48 8d 15 0e 27 0c 00 	lea    0xc270e(%rip),%rdx        # 0x140389b5c
1402c744e:	48 8b cf             	mov    %rdi,%rcx
1402c7451:	4d 0f 44 cd          	cmove  %r13,%r9
1402c7455:	e8 16 2a f6 ff       	call   0x140229e70
1402c745a:	85 c0                	test   %eax,%eax
1402c745c:	7e 42                	jle    0x1402c74a0
1402c745e:	48 ff c3             	inc    %rbx
1402c7461:	48 3b de             	cmp    %rsi,%rbx
1402c7464:	72 8a                	jb     0x1402c73f0
1402c7466:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1402c746c:	48 8d 15 d1 77 06 00 	lea    0x677d1(%rip),%rdx        # 0x14032ec44
1402c7473:	48 8b cf             	mov    %rdi,%rcx
1402c7476:	e8 75 62 f5 ff       	call   0x14021d6f0
1402c747b:	85 c0                	test   %eax,%eax
1402c747d:	40 0f 9f c5          	setg   %bpl
1402c7481:	8b c5                	mov    %ebp,%eax
1402c7483:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1402c7488:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
1402c748d:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
1402c7492:	48 83 c4 20          	add    $0x20,%rsp
1402c7496:	41 5f                	pop    %r15
1402c7498:	41 5e                	pop    %r14
1402c749a:	41 5d                	pop    %r13
1402c749c:	41 5c                	pop    %r12
1402c749e:	5f                   	pop    %rdi
1402c749f:	c3                   	ret
1402c74a0:	33 c0                	xor    %eax,%eax
1402c74a2:	eb df                	jmp    0x1402c7483
1402c74a4:	cc                   	int3
1402c74a5:	cc                   	int3
1402c74a6:	cc                   	int3
1402c74a7:	cc                   	int3
1402c74a8:	cc                   	int3
1402c74a9:	cc                   	int3
1402c74aa:	cc                   	int3
1402c74ab:	cc                   	int3
1402c74ac:	cc                   	int3
1402c74ad:	cc                   	int3
1402c74ae:	cc                   	int3
1402c74af:	cc                   	int3
1402c74b0:	8b 01                	mov    (%rcx),%eax
1402c74b2:	85 c0                	test   %eax,%eax
1402c74b4:	75 09                	jne    0x1402c74bf
1402c74b6:	48 8b 41 08          	mov    0x8(%rcx),%rax
1402c74ba:	48 8b 40 30          	mov    0x30(%rax),%rax
1402c74be:	c3                   	ret
1402c74bf:	83 f8 01             	cmp    $0x1,%eax
1402c74c2:	75 09                	jne    0x1402c74cd
1402c74c4:	48 8b 41 08          	mov    0x8(%rcx),%rax
1402c74c8:	48 8b 40 28          	mov    0x28(%rax),%rax
1402c74cc:	c3                   	ret
1402c74cd:	33 c0                	xor    %eax,%eax
1402c74cf:	c3                   	ret
1402c74d0:	b8 38 00 00 00       	mov    $0x38,%eax
1402c74d5:	e8 06 31 03 00       	call   0x1402fa5e0
1402c74da:	48 2b e0             	sub    %rax,%rsp
1402c74dd:	83 39 00             	cmpl   $0x0,(%rcx)
1402c74e0:	74 25                	je     0x1402c7507
1402c74e2:	4c 8d 0d bf 5c 0e 00 	lea    0xe5cbf(%rip),%r9        # 0x1403ad1a8
1402c74e9:	c7 44 24 20 ee 00 00 	movl   $0xee,0x20(%rsp)
1402c74f0:	00
1402c74f1:	8d 50 56             	lea    0x56(%rax),%edx
1402c74f4:	44 8d 40 44          	lea    0x44(%rax),%r8d
1402c74f8:	8d 48 f6             	lea    -0xa(%rax),%ecx
1402c74fb:	e8 a0 9e f5 ff       	call   0x1402213a0
1402c7500:	33 c0                	xor    %eax,%eax
1402c7502:	48 83 c4 38          	add    $0x38,%rsp
1402c7506:	c3                   	ret
1402c7507:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1402c750b:	48 85 d2             	test   %rdx,%rdx
1402c750e:	74 07                	je     0x1402c7517
1402c7510:	48 8b 41 28          	mov    0x28(%rcx),%rax
1402c7514:	48 89 02             	mov    %rax,(%rdx)
1402c7517:	4d 85 c0             	test   %r8,%r8
1402c751a:	74 07                	je     0x1402c7523
1402c751c:	48 8b 41 20          	mov    0x20(%rcx),%rax
1402c7520:	49 89 00             	mov    %rax,(%r8)
1402c7523:	4d 85 c9             	test   %r9,%r9
1402c7526:	74 07                	je     0x1402c752f
1402c7528:	48 8b 41 10          	mov    0x10(%rcx),%rax
1402c752c:	49 89 01             	mov    %rax,(%r9)
1402c752f:	b8 01 00 00 00       	mov    $0x1,%eax
1402c7534:	48 83 c4 38          	add    $0x38,%rsp
1402c7538:	c3                   	ret
1402c7539:	cc                   	int3
1402c753a:	cc                   	int3
1402c753b:	cc                   	int3
1402c753c:	cc                   	int3
1402c753d:	cc                   	int3
1402c753e:	cc                   	int3
1402c753f:	cc                   	int3
1402c7540:	b8 38 00 00 00       	mov    $0x38,%eax
1402c7545:	e8 96 30 03 00       	call   0x1402fa5e0
1402c754a:	48 2b e0             	sub    %rax,%rsp
1402c754d:	83 39 01             	cmpl   $0x1,(%rcx)
1402c7550:	4c 8b ca             	mov    %rdx,%r9
1402c7553:	74 25                	je     0x1402c757a
1402c7555:	4c 8d 0d 64 5c 0e 00 	lea    0xe5c64(%rip),%r9        # 0x1403ad1c0
1402c755c:	c7 44 24 20 1c 00 00 	movl   $0x1c,0x20(%rsp)
1402c7563:	00
1402c7564:	8d 50 77             	lea    0x77(%rax),%edx
1402c7567:	44 8d 40 7d          	lea    0x7d(%rax),%r8d
1402c756b:	8d 48 f6             	lea    -0xa(%rax),%ecx
1402c756e:	e8 2d 9e f5 ff       	call   0x1402213a0
1402c7573:	33 c0                	xor    %eax,%eax
1402c7575:	48 83 c4 38          	add    $0x38,%rsp
1402c7579:	c3                   	ret
1402c757a:	48 8d 51 08          	lea    0x8(%rcx),%rdx
1402c757e:	4d 85 c9             	test   %r9,%r9
1402c7581:	74 0a                	je     0x1402c758d
1402c7583:	48 8b 02             	mov    (%rdx),%rax
1402c7586:	48 8b 48 18          	mov    0x18(%rax),%rcx
1402c758a:	49 89 09             	mov    %rcx,(%r9)
1402c758d:	4d 85 c0             	test   %r8,%r8
1402c7590:	74 0a                	je     0x1402c759c
1402c7592:	48 8b 02             	mov    (%rdx),%rax
1402c7595:	48 8b 48 10          	mov    0x10(%rax),%rcx
1402c7599:	49 89 08             	mov    %rcx,(%r8)
1402c759c:	b8 01 00 00 00       	mov    $0x1,%eax
1402c75a1:	48 83 c4 38          	add    $0x38,%rsp
1402c75a5:	c3                   	ret
1402c75a6:	cc                   	int3
1402c75a7:	cc                   	int3
1402c75a8:	cc                   	int3
1402c75a9:	cc                   	int3
1402c75aa:	cc                   	int3
1402c75ab:	cc                   	int3
1402c75ac:	cc                   	int3
1402c75ad:	cc                   	int3
1402c75ae:	cc                   	int3
1402c75af:	cc                   	int3
1402c75b0:	83 39 01             	cmpl   $0x1,(%rcx)
1402c75b3:	75 09                	jne    0x1402c75be
1402c75b5:	48 8b 41 08          	mov    0x8(%rcx),%rax
1402c75b9:	48 8b 40 30          	mov    0x30(%rax),%rax
1402c75bd:	c3                   	ret
1402c75be:	33 c0                	xor    %eax,%eax
1402c75c0:	c3                   	ret
1402c75c1:	cc                   	int3
1402c75c2:	cc                   	int3
1402c75c3:	cc                   	int3
1402c75c4:	cc                   	int3
1402c75c5:	cc                   	int3
1402c75c6:	cc                   	int3
1402c75c7:	cc                   	int3
1402c75c8:	cc                   	int3
1402c75c9:	cc                   	int3
1402c75ca:	cc                   	int3
1402c75cb:	cc                   	int3
1402c75cc:	cc                   	int3
1402c75cd:	cc                   	int3
1402c75ce:	cc                   	int3
1402c75cf:	cc                   	int3
1402c75d0:	40 53                	rex push %rbx
1402c75d2:	b8 30 00 00 00       	mov    $0x30,%eax
1402c75d7:	e8 04 30 03 00       	call   0x1402fa5e0
1402c75dc:	48 2b e0             	sub    %rax,%rsp
1402c75df:	83 39 01             	cmpl   $0x1,(%rcx)
1402c75e2:	4d 8b d0             	mov    %r8,%r10
1402c75e5:	48 8b da             	mov    %rdx,%rbx
1402c75e8:	74 26                	je     0x1402c7610
1402c75ea:	8d 50 7d             	lea    0x7d(%rax),%edx
1402c75ed:	c7 44 24 20 3d 00 00 	movl   $0x3d,0x20(%rsp)
1402c75f4:	00
1402c75f5:	44 8d 42 08          	lea    0x8(%rdx),%r8d
1402c75f9:	4c 8d 0d c0 5b 0e 00 	lea    0xe5bc0(%rip),%r9        # 0x1403ad1c0
1402c7600:	8d 48 fe             	lea    -0x2(%rax),%ecx
1402c7603:	e8 98 9d f5 ff       	call   0x1402213a0
1402c7608:	33 c0                	xor    %eax,%eax
1402c760a:	48 83 c4 30          	add    $0x30,%rsp
1402c760e:	5b                   	pop    %rbx
1402c760f:	c3                   	ret
1402c7610:	48 8b 41 08          	mov    0x8(%rcx),%rax
1402c7614:	4c 8b 5c 24 60       	mov    0x60(%rsp),%r11
1402c7619:	48 8b 50 08          	mov    0x8(%rax),%rdx
1402c761d:	33 c0                	xor    %eax,%eax
1402c761f:	4d 85 db             	test   %r11,%r11
1402c7622:	74 03                	je     0x1402c7627
1402c7624:	49 89 03             	mov    %rax,(%r11)
1402c7627:	4c 8b 44 24 68       	mov    0x68(%rsp),%r8
1402c762c:	4d 85 c0             	test   %r8,%r8
1402c762f:	74 03                	je     0x1402c7634
1402c7631:	49 89 00             	mov    %rax,(%r8)
1402c7634:	4d 85 c9             	test   %r9,%r9
1402c7637:	74 03                	je     0x1402c763c
1402c7639:	49 89 01             	mov    %rax,(%r9)
1402c763c:	48 85 db             	test   %rbx,%rbx
1402c763f:	74 03                	je     0x1402c7644
1402c7641:	48 89 03             	mov    %rax,(%rbx)
1402c7644:	4d 85 d2             	test   %r10,%r10
1402c7647:	74 03                	je     0x1402c764c
1402c7649:	49 89 02             	mov    %rax,(%r10)
1402c764c:	8b 02                	mov    (%rdx),%eax
1402c764e:	85 c0                	test   %eax,%eax
1402c7650:	75 2a                	jne    0x1402c767c
1402c7652:	4d 85 db             	test   %r11,%r11
1402c7655:	74 0a                	je     0x1402c7661
1402c7657:	48 8b 42 08          	mov    0x8(%rdx),%rax
1402c765b:	48 8b 08             	mov    (%rax),%rcx
1402c765e:	49 89 0b             	mov    %rcx,(%r11)
1402c7661:	4d 85 c0             	test   %r8,%r8
1402c7664:	74 5a                	je     0x1402c76c0
1402c7666:	48 8b 42 08          	mov    0x8(%rdx),%rax
1402c766a:	48 8b 48 08          	mov    0x8(%rax),%rcx
1402c766e:	b8 01 00 00 00       	mov    $0x1,%eax
1402c7673:	49 89 08             	mov    %rcx,(%r8)
1402c7676:	48 83 c4 30          	add    $0x30,%rsp
1402c767a:	5b                   	pop    %rbx
1402c767b:	c3                   	ret
1402c767c:	83 f8 01             	cmp    $0x1,%eax
1402c767f:	75 17                	jne    0x1402c7698
1402c7681:	4d 85 c9             	test   %r9,%r9
1402c7684:	74 3a                	je     0x1402c76c0
1402c7686:	48 8b 42 08          	mov    0x8(%rdx),%rax
1402c768a:	49 89 01             	mov    %rax,(%r9)
1402c768d:	b8 01 00 00 00       	mov    $0x1,%eax
1402c7692:	48 83 c4 30          	add    $0x30,%rsp
1402c7696:	5b                   	pop    %rbx
1402c7697:	c3                   	ret