140934334:	0f b7 46 44          	movzwl 0x44(%rsi),%eax
140934338:	b9 80 01 00 00       	mov    $0x180,%ecx
14093433d:	66 23 c1             	and    %cx,%ax
140934340:	66 41 3b c6          	cmp    %r14w,%ax
140934344:	75 5f                	jne    0x1409343a5
140934346:	80 7e 4b 00          	cmpb   $0x0,0x4b(%rsi)
14093434a:	75 59                	jne    0x1409343a5
14093434c:	66 85 ff             	test   %di,%di
14093434f:	74 54                	je     0x1409343a5
140934351:	48 8b 43 18          	mov    0x18(%rbx),%rax
140934355:	41 8d 53 ff          	lea    -0x1(%r11),%edx
140934359:	41 0f b6 cb          	movzbl %r11b,%ecx
14093435d:	4c 8d 84 24 00 01 00 	lea    0x100(%rsp),%r8
140934364:	00
140934365:	4c 89 44 24 30       	mov    %r8,0x30(%rsp)
14093436a:	41 b9 80 00 00 00    	mov    $0x80,%r9d
140934370:	4c 8b c3             	mov    %rbx,%r8
140934373:	48 8b 44 c8 f8       	mov    -0x8(%rax,%rcx,8),%rax
140934378:	48 8b ce             	mov    %rsi,%rcx
14093437b:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140934380:	66 89 54 24 20       	mov    %dx,0x20(%rsp)
140934385:	48 8b 56 18          	mov    0x18(%rsi),%rdx
140934389:	e8 b2 ed ff ff       	call   0x140933140
14093438e:	44 8b 9c 24 18 01 00 	mov    0x118(%rsp),%r11d
140934395:	00
140934396:	0f be c8             	movsbl %al,%ecx
140934399:	48 8b 46 18          	mov    0x18(%rsi),%rax
14093439d:	3b 08                	cmp    (%rax),%ecx
14093439f:	75 04                	jne    0x1409343a5
1409343a1:	c6 46 4b 02          	movb   $0x2,0x4b(%rsi)
1409343a5:	8b 4e 4c             	mov    0x4c(%rsi),%ecx
1409343a8:	4c 8b 56 10          	mov    0x10(%rsi),%r10
1409343ac:	83 e1 fb             	and    $0xfffffffb,%ecx
1409343af:	89 4e 4c             	mov    %ecx,0x4c(%rsi)
1409343b2:	4d 85 d2             	test   %r10,%r10
1409343b5:	0f 84 6d 01 00 00    	je     0x140934528
1409343bb:	44 0f b7 4e 44       	movzwl 0x44(%rsi),%r9d
1409343c0:	44 0f b6 43 16       	movzbl 0x16(%rbx),%r8d
1409343c5:	44 88 46 49          	mov    %r8b,0x49(%rsi)
1409343c9:	45 84 c9             	test   %r9b,%r9b
1409343cc:	79 15                	jns    0x1409343e3
1409343ce:	0f be 43 16          	movsbl 0x16(%rbx),%eax
1409343d2:	41 3b 02             	cmp    (%r10),%eax
1409343d5:	75 04                	jne    0x1409343db
1409343d7:	c6 46 4b 02          	movb   $0x2,0x4b(%rsi)
1409343db:	49 8b d2             	mov    %r10,%rdx
1409343de:	e9 cf 00 00 00       	jmp    0x1409344b2
1409343e3:	48 8b 43 08          	mov    0x8(%rbx),%rax
1409343e7:	49 8b d2             	mov    %r10,%rdx
1409343ea:	48 89 46 78          	mov    %rax,0x78(%rsi)
1409343ee:	45 84 c0             	test   %r8b,%r8b
1409343f1:	0f 8f a4 00 00 00    	jg     0x14093449b
1409343f7:	c6 46 49 00          	movb   $0x0,0x49(%rsi)
1409343fb:	45 84 db             	test   %r11b,%r11b
1409343fe:	0f 84 ae 00 00 00    	je     0x1409344b2
140934404:	48 8b 43 18          	mov    0x18(%rbx),%rax
140934408:	41 0f b6 cb          	movzbl %r11b,%ecx
14093440c:	4c 8b 5c c8 f8       	mov    -0x8(%rax,%rcx,8),%r11
140934411:	41 8b 43 38          	mov    0x38(%r11),%eax
140934415:	25 04 01 00 00       	and    $0x104,%eax
14093441a:	3d 04 01 00 00       	cmp    $0x104,%eax
14093441f:	0f 95 c1             	setne  %cl
140934422:	41 0f ba 63 38 0c    	btl    $0xc,0x38(%r11)
140934428:	0f 93 c0             	setae  %al
14093442b:	84 c8                	test   %cl,%al
14093442d:	74 62                	je     0x140934491
14093442f:	8b 84 24 18 01 00 00 	mov    0x118(%rsp),%eax
140934436:	48 8d 8c 24 00 01 00 	lea    0x100(%rsp),%rcx
14093443d:	00
14093443e:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
140934443:	ff c8                	dec    %eax
140934445:	4c 89 5c 24 28       	mov    %r11,0x28(%rsp)
14093444a:	48 8b ce             	mov    %rsi,%rcx
14093444d:	41 b9 00 08 00 00    	mov    $0x800,%r9d
140934453:	66 89 44 24 20       	mov    %ax,0x20(%rsp)
140934458:	4c 8b c3             	mov    %rbx,%r8
14093445b:	48 c7 84 24 00 01 00 	movq   $0x0,0x100(%rsp)
140934462:	00 00 00 00 00
140934467:	e8 d4 ec ff ff       	call   0x140933140
14093446c:	48 8b 56 10          	mov    0x10(%rsi),%rdx
140934470:	44 8b 9c 24 18 01 00 	mov    0x118(%rsp),%r11d
140934477:	00
140934478:	0f be c8             	movsbl %al,%ecx
14093447b:	3b 0a                	cmp    (%rdx),%ecx
14093447d:	75 33                	jne    0x1409344b2
14093447f:	48 8b 84 24 00 01 00 	mov    0x100(%rsp),%rax
140934486:	00
140934487:	83 4e 4c 04          	orl    $0x4,0x4c(%rsi)
14093448b:	48 89 46 78          	mov    %rax,0x78(%rsi)
14093448f:	eb 21                	jmp    0x1409344b2
140934491:	44 8b 9c 24 18 01 00 	mov    0x118(%rsp),%r11d
140934498:	00
140934499:	eb 17                	jmp    0x1409344b2
14093449b:	45 84 db             	test   %r11b,%r11b
14093449e:	74 12                	je     0x1409344b2
1409344a0:	41 80 f8 01          	cmp    $0x1,%r8b
1409344a4:	75 0c                	jne    0x1409344b2
1409344a6:	41 f6 c1 03          	test   $0x3,%r9b
1409344aa:	74 06                	je     0x1409344b2
1409344ac:	83 c9 04             	or     $0x4,%ecx
1409344af:	89 4e 4c             	mov    %ecx,0x4c(%rsi)
1409344b2:	b8 00 02 00 00       	mov    $0x200,%eax
1409344b7:	66 85 46 44          	test   %ax,0x44(%rsi)
1409344bb:	74 6b                	je     0x140934528
1409344bd:	0f be 46 49          	movsbl 0x49(%rsi),%eax
1409344c1:	3b 02                	cmp    (%rdx),%eax
1409344c3:	75 63                	jne    0x140934528
1409344c5:	45 84 db             	test   %r11b,%r11b
1409344c8:	74 5e                	je     0x140934528
1409344ca:	48 8b 43 18          	mov    0x18(%rbx),%rax
1409344ce:	4c 8d 84 24 00 01 00 	lea    0x100(%rsp),%r8
1409344d5:	00
1409344d6:	41 0f b6 cb          	movzbl %r11b,%ecx
1409344da:	45 33 c9             	xor    %r9d,%r9d
1409344dd:	4c 89 44 24 30       	mov    %r8,0x30(%rsp)
1409344e2:	66 41 ff cb          	dec    %r11w
1409344e6:	4c 8b c3             	mov    %rbx,%r8
1409344e9:	48 c7 84 24 00 01 00 	movq   $0x0,0x100(%rsp)
1409344f0:	00 00 00 00 00
1409344f5:	48 8b 44 c8 f8       	mov    -0x8(%rax,%rcx,8),%rax
1409344fa:	48 8b ce             	mov    %rsi,%rcx
1409344fd:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140934502:	66 44 89 5c 24 20    	mov    %r11w,0x20(%rsp)
140934508:	e8 33 ec ff ff       	call   0x140933140
14093450d:	0f be c8             	movsbl %al,%ecx
140934510:	48 8b 46 10          	mov    0x10(%rsi),%rax
140934514:	3b 08                	cmp    (%rax),%ecx
140934516:	75 10                	jne    0x140934528
140934518:	48 8b 84 24 00 01 00 	mov    0x100(%rsp),%rax
14093451f:	00
140934520:	83 4e 4c 08          	orl    $0x8,0x4c(%rsi)
140934524:	48 89 46 78          	mov    %rax,0x78(%rsi)
140934528:	0f b7 43 10          	movzwl 0x10(%rbx),%eax
14093452c:	66 89 46 50          	mov    %ax,0x50(%rsi)
140934530:	4d 85 e4             	test   %r12,%r12
140934533:	74 67                	je     0x14093459c
140934535:	49 83 bc 24 00 03 00 	cmpq   $0x0,0x300(%r12)
14093453c:	00 00
14093453e:	74 0f                	je     0x14093454f
140934540:	48 8b 54 24 60       	mov    0x60(%rsp),%rdx
140934545:	49 8b cc             	mov    %r12,%rcx
140934548:	e8 f3 f3 f7 ff       	call   0x1408b3940
14093454d:	eb 57                	jmp    0x1409345a6
14093454f:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
140934554:	49 3b 8c 24 f0 01 00 	cmp    0x1f0(%r12),%rcx
14093455b:	00
14093455c:	73 43                	jae    0x1409345a1
14093455e:	49 3b 8c 24 e0 01 00 	cmp    0x1e0(%r12),%rcx
140934565:	00
140934566:	72 15                	jb     0x14093457d
140934568:	49 8b 84 24 d8 01 00 	mov    0x1d8(%r12),%rax
14093456f:	00
140934570:	48 89 01             	mov    %rax,(%rcx)
140934573:	49 89 8c 24 d8 01 00 	mov    %rcx,0x1d8(%r12)
14093457a:	00
14093457b:	eb 29                	jmp    0x1409345a6
14093457d:	49 3b 8c 24 e8 01 00 	cmp    0x1e8(%r12),%rcx
140934584:	00
140934585:	72 1a                	jb     0x1409345a1
140934587:	49 8b 84 24 c8 01 00 	mov    0x1c8(%r12),%rax
14093458e:	00
14093458f:	48 89 01             	mov    %rax,(%rcx)
140934592:	49 89 8c 24 c8 01 00 	mov    %rcx,0x1c8(%r12)
140934599:	00
14093459a:	eb 0a                	jmp    0x1409345a6
14093459c:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
1409345a1:	e8 aa 75 f5 ff       	call   0x14088bb50
1409345a6:	33 c0                	xor    %eax,%eax
1409345a8:	48 81 c4 b8 00 00 00 	add    $0xb8,%rsp
1409345af:	41 5f                	pop    %r15
1409345b1:	41 5e                	pop    %r14
1409345b3:	41 5d                	pop    %r13
1409345b5:	41 5c                	pop    %r12
1409345b7:	5f                   	pop    %rdi
1409345b8:	5e                   	pop    %rsi
1409345b9:	5d                   	pop    %rbp
1409345ba:	5b                   	pop    %rbx
1409345bb:	c3                   	ret
1409345bc:	cc                   	int3
1409345bd:	cc                   	int3
1409345be:	cc                   	int3
1409345bf:	cc                   	int3
1409345c0:	89 54 24 10          	mov    %edx,0x10(%rsp)
1409345c4:	41 54                	push   %r12
1409345c6:	41 55                	push   %r13
1409345c8:	41 57                	push   %r15
1409345ca:	48 83 ec 60          	sub    $0x60,%rsp
1409345ce:	44 8b da             	mov    %edx,%r11d
1409345d1:	4d 8b f8             	mov    %r8,%r15
1409345d4:	48 8b 94 24 a0 00 00 	mov    0xa0(%rsp),%rdx
1409345db:	00
1409345dc:	4c 8b e9             	mov    %rcx,%r13
1409345df:	48 8b 02             	mov    (%rdx),%rax
1409345e2:	4c 8b 50 10          	mov    0x10(%rax),%r10
1409345e6:	41 0f b6 02          	movzbl (%r10),%eax
1409345ea:	3c b0                	cmp    $0xb0,%al
1409345ec:	75 05                	jne    0x1409345f3
1409345ee:	41 0f b6 42 02       	movzbl 0x2(%r10),%eax
1409345f3:	41 bc 01 00 00 00    	mov    $0x1,%r12d
1409345f9:	3c b1                	cmp    $0xb1,%al
1409345fb:	75 08                	jne    0x140934605
1409345fd:	49 8b 42 20          	mov    0x20(%r10),%rax
140934601:	8b 08                	mov    (%rax),%ecx
140934603:	eb 13                	jmp    0x140934618
140934605:	3c 8a                	cmp    $0x8a,%al
140934607:	75 0c                	jne    0x140934615
140934609:	49 8b 42 20          	mov    0x20(%r10),%rax
14093460d:	48 8b 48 20          	mov    0x20(%rax),%rcx
140934611:	8b 09                	mov    (%rcx),%ecx
140934613:	eb 03                	jmp    0x140934618
140934615:	41 8b cc             	mov    %r12d,%ecx
140934618:	41 0f b7 40 60       	movzwl 0x60(%r8),%eax
14093461d:	41 2b c1             	sub    %r9d,%eax
140934620:	3b c8                	cmp    %eax,%ecx
140934622:	0f 4c c1             	cmovl  %ecx,%eax
140934625:	48 98                	cltq
140934627:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14093462c:	49 3b c4             	cmp    %r12,%rax
14093462f:	0f 8e ec 01 00 00    	jle    0x140934821
140934635:	48 89 9c 24 80 00 00 	mov    %rbx,0x80(%rsp)
14093463c:	00
14093463d:	48 89 6c 24 58       	mov    %rbp,0x58(%rsp)
140934642:	bd 20 00 00 00       	mov    $0x20,%ebp
140934647:	4d 63 c9             	movslq %r9d,%r9
14093464a:	4c 89 74 24 40       	mov    %r14,0x40(%rsp)
14093464f:	4d 8b f4             	mov    %r12,%r14
140934652:	48 89 74 24 50       	mov    %rsi,0x50(%rsp)
140934657:	4c 89 4c 24 30       	mov    %r9,0x30(%rsp)
14093465c:	4a 8d 04 cd 08 00 00 	lea    0x8(,%r9,8),%rax
140934663:	00
140934664:	48 89 7c 24 48       	mov    %rdi,0x48(%rsp)
140934669:	4e 8d 04 4d 02 00 00 	lea    0x2(,%r9,2),%r8
140934670:	00
140934671:	48 89 84 24 90 00 00 	mov    %rax,0x90(%rsp)
140934678:	00
140934679:	4c 89 44 24 20       	mov    %r8,0x20(%rsp)
14093467e:	66 90                	xchg   %ax,%ax
140934680:	48 8b 12             	mov    (%rdx),%rdx
140934683:	48 8b 42 10          	mov    0x10(%rdx),%rax
140934687:	48 8b 48 20          	mov    0x20(%rax),%rcx
14093468b:	48 8b 42 18          	mov    0x18(%rdx),%rax
14093468f:	48 8b 5c 29 08       	mov    0x8(%rcx,%rbp,1),%rbx
140934694:	f7 40 04 00 10 00 00 	testl  $0x1000,0x4(%rax)
14093469b:	48 8b 48 20          	mov    0x20(%rax),%rcx
14093469f:	74 0b                	je     0x1409346ac
1409346a1:	48 8b 41 20          	mov    0x20(%rcx),%rax
1409346a5:	48 8b 7c 28 08       	mov    0x8(%rax,%rbp,1),%rdi
1409346aa:	eb 05                	jmp    0x1409346b1
1409346ac:	48 8b 7c 29 08       	mov    0x8(%rcx,%rbp,1),%rdi
1409346b1:	80 3b a7             	cmpb   $0xa7,(%rbx)
1409346b4:	0f 85 4b 01 00 00    	jne    0x140934805
1409346ba:	44 39 5b 2c          	cmp    %r11d,0x2c(%rbx)
1409346be:	0f 85 41 01 00 00    	jne    0x140934805
1409346c4:	49 8b 47 08          	mov    0x8(%r15),%rax
1409346c8:	41 0f b7 0c 00       	movzwl (%r8,%rax,1),%ecx
1409346cd:	66 39 4b 30          	cmp    %cx,0x30(%rbx)
1409346d1:	0f 85 2e 01 00 00    	jne    0x140934805
1409346d7:	49 8b 47 38          	mov    0x38(%r15),%rax
1409346db:	4a 8d 0c 08          	lea    (%rax,%r9,1),%rcx
1409346df:	42 0f b6 04 08       	movzbl (%rax,%r9,1),%eax
1409346e4:	42 38 04 31          	cmp    %al,(%rcx,%r14,1)
1409346e8:	0f 85 17 01 00 00    	jne    0x140934805
1409346ee:	48 8b cb             	mov    %rbx,%rcx
1409346f1:	e8 fa 59 fa ff       	call   0x1408da0f0
1409346f6:	48 8b cf             	mov    %rdi,%rcx
1409346f9:	0f b6 f0             	movzbl %al,%esi
1409346fc:	e8 ef 59 fa ff       	call   0x1408da0f0
140934701:	0f b6 c8             	movzbl %al,%ecx
140934704:	80 f9 40             	cmp    $0x40,%cl
140934707:	7e 19                	jle    0x140934722
140934709:	40 80 fe 40          	cmp    $0x40,%sil
14093470d:	7e 13                	jle    0x140934722
14093470f:	80 f9 43             	cmp    $0x43,%cl
140934712:	7d 0a                	jge    0x14093471e
140934714:	40 80 fe 43          	cmp    $0x43,%sil
140934718:	7d 04                	jge    0x14093471e
14093471a:	b2 41                	mov    $0x41,%dl
14093471c:	eb 0f                	jmp    0x14093472d
14093471e:	b2 43                	mov    $0x43,%dl
140934720:	eb 0b                	jmp    0x14093472d
140934722:	80 f9 40             	cmp    $0x40,%cl
140934725:	8b d6                	mov    %esi,%edx
140934727:	0f 4f d1             	cmovg  %ecx,%edx
14093472a:	80 ca 40             	or     $0x40,%dl
14093472d:	48 0f bf 43 30       	movswq 0x30(%rbx),%rax
140934732:	66 85 c0             	test   %ax,%ax
140934735:	78 1b                	js     0x140934752
140934737:	4d 8b 47 18          	mov    0x18(%r15),%r8
14093473b:	66 41 3b 40 36       	cmp    0x36(%r8),%ax
140934740:	7d 10                	jge    0x140934752
140934742:	48 8d 0c 40          	lea    (%rax,%rax,2),%rcx
140934746:	49 8b 40 08          	mov    0x8(%r8),%rax
14093474a:	44 0f b6 44 c8 0c    	movzbl 0xc(%rax,%rcx,8),%r8d
140934750:	eb 03                	jmp    0x140934755
140934752:	41 b0 44             	mov    $0x44,%r8b
140934755:	41 3a d0             	cmp    %r8b,%dl
140934758:	0f 85 a7 00 00 00    	jne    0x140934805
14093475e:	f7 43 04 00 02 00 00 	testl  $0x200,0x4(%rbx)
140934765:	74 05                	je     0x14093476c
140934767:	48 8b d3             	mov    %rbx,%rdx
14093476a:	eb 21                	jmp    0x14093478d
14093476c:	48 85 ff             	test   %rdi,%rdi
14093476f:	74 09                	je     0x14093477a
140934771:	f7 47 04 00 02 00 00 	testl  $0x200,0x4(%rdi)
140934778:	75 10                	jne    0x14093478a
14093477a:	48 8b d3             	mov    %rbx,%rdx
14093477d:	49 8b cd             	mov    %r13,%rcx
140934780:	e8 eb 9a fa ff       	call   0x1408de270
140934785:	48 85 c0             	test   %rax,%rax
140934788:	75 10                	jne    0x14093479a
14093478a:	48 8b d7             	mov    %rdi,%rdx
14093478d:	49 8b cd             	mov    %r13,%rcx
140934790:	e8 db 9a fa ff       	call   0x1408de270
140934795:	48 85 c0             	test   %rax,%rax
140934798:	74 6b                	je     0x140934805
14093479a:	49 8b 4f 40          	mov    0x40(%r15),%rcx
14093479e:	4c 8b 8c 24 90 00 00 	mov    0x90(%rsp),%r9
1409347a5:	00
1409347a6:	48 8b 00             	mov    (%rax),%rax
1409347a9:	4e 8b 0c 09          	mov    (%rcx,%r9,1),%r9
1409347ad:	4c 2b c8             	sub    %rax,%r9
1409347b0:	0f b6 10             	movzbl (%rax),%edx
1409347b3:	41 0f b6 0c 01       	movzbl (%r9,%rax,1),%ecx
1409347b8:	3b d1                	cmp    %ecx,%edx
1409347ba:	75 73                	jne    0x14093482f
1409347bc:	85 d2                	test   %edx,%edx
1409347be:	0f 85 81 00 00 00    	jne    0x140934845
1409347c4:	4c 8b 44 24 20       	mov    0x20(%rsp),%r8
1409347c9:	41 ff c4             	inc    %r12d
1409347cc:	48 83 84 24 90 00 00 	addq   $0x8,0x90(%rsp)
1409347d3:	00 08
1409347d5:	49 83 c0 02          	add    $0x2,%r8
1409347d9:	4c 8b 4c 24 30       	mov    0x30(%rsp),%r9
1409347de:	49 ff c6             	inc    %r14
1409347e1:	48 8b 94 24 a0 00 00 	mov    0xa0(%rsp),%rdx
1409347e8:	00
1409347e9:	48 83 c5 20          	add    $0x20,%rbp
1409347ed:	44 8b 9c 24 88 00 00 	mov    0x88(%rsp),%r11d
1409347f4:	00
1409347f5:	4c 89 44 24 20       	mov    %r8,0x20(%rsp)
1409347fa:	4c 3b 74 24 28       	cmp    0x28(%rsp),%r14
1409347ff:	0f 8c 7b fe ff ff    	jl     0x140934680
140934805:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
14093480a:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
14093480f:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
140934814:	48 8b 9c 24 80 00 00 	mov    0x80(%rsp),%rbx
14093481b:	00
14093481c:	4c 8b 74 24 40       	mov    0x40(%rsp),%r14
140934821:	41 8b c4             	mov    %r12d,%eax
140934824:	48 83 c4 60          	add    $0x60,%rsp