140c98374:	3d 97 01 00 00       	cmp    $0x197,%eax
140c98379:	75 29                	jne    0x140c983a4
140c9837b:	b1 02                	mov    $0x2,%cl
140c9837d:	48 8b 97 98 06 00 00 	mov    0x698(%rdi),%rdx
140c98384:	48 85 d2             	test   %rdx,%rdx
140c98387:	74 2d                	je     0x140c983b6
140c98389:	4c 8b 87 90 06 00 00 	mov    0x690(%rdi),%r8
140c98390:	33 c0                	xor    %eax,%eax
140c98392:	4d 85 c0             	test   %r8,%r8
140c98395:	74 0d                	je     0x140c983a4
140c98397:	38 0c 02             	cmp    %cl,(%rdx,%rax,1)
140c9839a:	74 1a                	je     0x140c983b6
140c9839c:	48 ff c0             	inc    %rax
140c9839f:	49 3b c0             	cmp    %r8,%rax
140c983a2:	72 f3                	jb     0x140c98397
140c983a4:	33 c0                	xor    %eax,%eax
140c983a6:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140c983ab:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140c983b0:	48 83 c4 20          	add    $0x20,%rsp
140c983b4:	5f                   	pop    %rdi
140c983b5:	c3                   	ret
140c983b6:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140c983bb:	b8 01 00 00 00       	mov    $0x1,%eax
140c983c0:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140c983c5:	48 83 c4 20          	add    $0x20,%rsp
140c983c9:	5f                   	pop    %rdi
140c983ca:	c3                   	ret
140c983cb:	cc                   	int3
140c983cc:	cc                   	int3
140c983cd:	cc                   	int3
140c983ce:	cc                   	int3
140c983cf:	cc                   	int3
140c983d0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140c983d5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140c983da:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140c983df:	57                   	push   %rdi
140c983e0:	b8 20 00 00 00       	mov    $0x20,%eax
140c983e5:	e8 b6 30 18 00       	call   0x140e1b4a0
140c983ea:	48 2b e0             	sub    %rax,%rsp
140c983ed:	41 8b d8             	mov    %r8d,%ebx
140c983f0:	48 8b f9             	mov    %rcx,%rdi
140c983f3:	41 83 f8 ff          	cmp    $0xffffffff,%r8d
140c983f7:	0f 84 ce 00 00 00    	je     0x140c984cb
140c983fd:	48 8b ca             	mov    %rdx,%rcx
140c98400:	e8 8b 49 03 00       	call   0x140cccd90
140c98405:	45 33 d2             	xor    %r10d,%r10d
140c98408:	8b f0                	mov    %eax,%esi
140c9840a:	85 db                	test   %ebx,%ebx
140c9840c:	74 0e                	je     0x140c9841c
140c9840e:	3b c3                	cmp    %ebx,%eax
140c98410:	41 0f 94 c2          	sete   %r10b
140c98414:	41 8b c2             	mov    %r10d,%eax
140c98417:	e9 b4 00 00 00       	jmp    0x140c984d0
140c9841c:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140c98420:	48 8b 81 c0 00 00 00 	mov    0xc0(%rcx),%rax
140c98427:	f6 40 60 08          	testb  $0x8,0x60(%rax)
140c9842b:	75 2e                	jne    0x140c9845b
140c9842d:	8b 01                	mov    (%rcx),%eax
140c9842f:	3d 04 03 00 00       	cmp    $0x304,%eax
140c98434:	7c 25                	jl     0x140c9845b
140c98436:	3d 00 00 01 00       	cmp    $0x10000,%eax
140c9843b:	74 1e                	je     0x140c9845b
140c9843d:	48 8b 87 a8 00 00 00 	mov    0xa8(%rdi),%rax
140c98444:	4c 39 90 f0 02 00 00 	cmp    %r10,0x2f0(%rax)
140c9844b:	74 0e                	je     0x140c9845b
140c9844d:	4c 8b 98 00 03 00 00 	mov    0x300(%rax),%r11
140c98454:	bb 01 00 00 00       	mov    $0x1,%ebx
140c98459:	eb 0a                	jmp    0x140c98465
140c9845b:	4c 8b 9f 70 17 00 00 	mov    0x1770(%rdi),%r11
140c98462:	49 8b da             	mov    %r10,%rbx
140c98465:	4d 8b ca             	mov    %r10,%r9
140c98468:	4d 85 db             	test   %r11,%r11
140c9846b:	74 5a                	je     0x140c984c7
140c9846d:	48 8d 2d 8c 9c 4a 00 	lea    0x4a9c8c(%rip),%rbp        # 0x141142100
140c98474:	48 85 db             	test   %rbx,%rbx
140c98477:	74 31                	je     0x140c984aa
140c98479:	48 8b 8f a8 00 00 00 	mov    0xa8(%rdi),%rcx
140c98480:	4d 8b c2             	mov    %r10,%r8
140c98483:	48 8b c5             	mov    %rbp,%rax
140c98486:	48 8b 91 f0 02 00 00 	mov    0x2f0(%rcx),%rdx
140c9848d:	42 0f b7 0c 4a       	movzwl (%rdx,%r9,2),%ecx
140c98492:	66 39 48 08          	cmp    %cx,0x8(%rax)
140c98496:	74 1d                	je     0x140c984b5
140c98498:	49 ff c0             	inc    %r8
140c9849b:	48 83 c0 28          	add    $0x28,%rax
140c9849f:	49 83 f8 1a          	cmp    $0x1a,%r8
140c984a3:	72 ed                	jb     0x140c98492
140c984a5:	49 8b c2             	mov    %r10,%rax
140c984a8:	eb 0b                	jmp    0x140c984b5
140c984aa:	48 8b 87 68 17 00 00 	mov    0x1768(%rdi),%rax
140c984b1:	4a 8b 04 c8          	mov    (%rax,%r9,8),%rax
140c984b5:	48 85 c0             	test   %rax,%rax
140c984b8:	74 05                	je     0x140c984bf
140c984ba:	3b 70 1c             	cmp    0x1c(%rax),%esi
140c984bd:	74 0c                	je     0x140c984cb
140c984bf:	49 ff c1             	inc    %r9
140c984c2:	4d 3b cb             	cmp    %r11,%r9
140c984c5:	72 ad                	jb     0x140c98474
140c984c7:	33 c0                	xor    %eax,%eax
140c984c9:	eb 05                	jmp    0x140c984d0
140c984cb:	b8 01 00 00 00       	mov    $0x1,%eax
140c984d0:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140c984d5:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140c984da:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140c984df:	48 83 c4 20          	add    $0x20,%rsp
140c984e3:	5f                   	pop    %rdi
140c984e4:	c3                   	ret
140c984e5:	cc                   	int3
140c984e6:	cc                   	int3
140c984e7:	cc                   	int3
140c984e8:	cc                   	int3
140c984e9:	cc                   	int3
140c984ea:	cc                   	int3
140c984eb:	cc                   	int3
140c984ec:	cc                   	int3
140c984ed:	cc                   	int3
140c984ee:	cc                   	int3
140c984ef:	cc                   	int3
140c984f0:	40 53                	rex push %rbx
140c984f2:	b8 20 00 00 00       	mov    $0x20,%eax
140c984f7:	e8 a4 2f 18 00       	call   0x140e1b4a0
140c984fc:	48 2b e0             	sub    %rax,%rsp
140c984ff:	48 8b d9             	mov    %rcx,%rbx
140c98502:	e8 69 b4 00 00       	call   0x140ca3970
140c98507:	85 c0                	test   %eax,%eax
140c98509:	75 06                	jne    0x140c98511
140c9850b:	48 83 c4 20          	add    $0x20,%rsp
140c9850f:	5b                   	pop    %rbx
140c98510:	c3                   	ret
140c98511:	48 8b 43 08          	mov    0x8(%rbx),%rax
140c98515:	8b 08                	mov    (%rax),%ecx
140c98517:	b8 04 03 00 00       	mov    $0x304,%eax
140c9851c:	81 f9 00 00 01 00    	cmp    $0x10000,%ecx
140c98522:	0f 44 c8             	cmove  %eax,%ecx
140c98525:	b8 01 00 00 00       	mov    $0x1,%eax
140c9852a:	89 0b                	mov    %ecx,(%rbx)
140c9852c:	48 83 c4 20          	add    $0x20,%rsp
140c98530:	5b                   	pop    %rbx
140c98531:	c3                   	ret
140c98532:	cc                   	int3
140c98533:	cc                   	int3
140c98534:	cc                   	int3
140c98535:	cc                   	int3
140c98536:	cc                   	int3
140c98537:	cc                   	int3
140c98538:	cc                   	int3
140c98539:	cc                   	int3
140c9853a:	cc                   	int3
140c9853b:	cc                   	int3
140c9853c:	cc                   	int3
140c9853d:	cc                   	int3
140c9853e:	cc                   	int3
140c9853f:	cc                   	int3
140c98540:	b8 20 1c 00 00       	mov    $0x1c20,%eax
140c98545:	c3                   	ret
140c98546:	cc                   	int3
140c98547:	cc                   	int3
140c98548:	cc                   	int3
140c98549:	cc                   	int3
140c9854a:	cc                   	int3
140c9854b:	cc                   	int3
140c9854c:	cc                   	int3
140c9854d:	cc                   	int3
140c9854e:	cc                   	int3
140c9854f:	cc                   	int3
140c98550:	40 53                	rex push %rbx
140c98552:	b8 20 00 00 00       	mov    $0x20,%eax
140c98557:	e8 44 2f 18 00       	call   0x140e1b4a0
140c9855c:	48 2b e0             	sub    %rax,%rsp
140c9855f:	48 8b d9             	mov    %rcx,%rbx
140c98562:	44 8d 40 55          	lea    0x55(%rax),%r8d
140c98566:	48 8b 89 c0 06 00 00 	mov    0x6c0(%rcx),%rcx
140c9856d:	48 8d 15 6c a1 4a 00 	lea    0x4aa16c(%rip),%rdx        # 0x1411426e0
140c98574:	e8 97 94 02 00       	call   0x140cc1a10
140c98579:	48 8b cb             	mov    %rbx,%rcx
140c9857c:	48 83 c4 20          	add    $0x20,%rsp
140c98580:	5b                   	pop    %rbx
140c98581:	e9 4a c7 00 00       	jmp    0x140ca4cd0
140c98586:	cc                   	int3
140c98587:	cc                   	int3
140c98588:	cc                   	int3
140c98589:	cc                   	int3
140c9858a:	cc                   	int3
140c9858b:	cc                   	int3
140c9858c:	cc                   	int3
140c9858d:	cc                   	int3
140c9858e:	cc                   	int3
140c9858f:	cc                   	int3
140c98590:	48 8b 81 88 06 00 00 	mov    0x688(%rcx),%rax
140c98597:	48 85 c0             	test   %rax,%rax
140c9859a:	74 0e                	je     0x140c985aa
140c9859c:	48 89 02             	mov    %rax,(%rdx)
140c9859f:	48 8b 81 80 06 00 00 	mov    0x680(%rcx),%rax
140c985a6:	49 89 00             	mov    %rax,(%r8)
140c985a9:	c3                   	ret
140c985aa:	48 8d 05 f7 9a 4a 00 	lea    0x4a9af7(%rip),%rax        # 0x1411420a8
140c985b1:	48 89 02             	mov    %rax,(%rdx)
140c985b4:	48 8b 81 88 04 00 00 	mov    0x488(%rcx),%rax
140c985bb:	8b 48 1c             	mov    0x1c(%rax),%ecx
140c985be:	81 e1 00 00 03 00    	and    $0x30000,%ecx
140c985c4:	f7 d9                	neg    %ecx
140c985c6:	48 1b c0             	sbb    %rax,%rax
140c985c9:	48 83 c0 03          	add    $0x3,%rax
140c985cd:	49 89 00             	mov    %rax,(%r8)
140c985d0:	c3                   	ret
140c985d1:	cc                   	int3
140c985d2:	cc                   	int3
140c985d3:	cc                   	int3
140c985d4:	cc                   	int3
140c985d5:	cc                   	int3
140c985d6:	cc                   	int3
140c985d7:	cc                   	int3
140c985d8:	cc                   	int3
140c985d9:	cc                   	int3
140c985da:	cc                   	int3
140c985db:	cc                   	int3
140c985dc:	cc                   	int3
140c985dd:	cc                   	int3
140c985de:	cc                   	int3
140c985df:	cc                   	int3
140c985e0:	b8 28 00 00 00       	mov    $0x28,%eax
140c985e5:	e8 b6 2e 18 00       	call   0x140e1b4a0
140c985ea:	48 2b e0             	sub    %rax,%rsp
140c985ed:	e8 9e dd 02 00       	call   0x140cc6390
140c985f2:	48 85 c0             	test   %rax,%rax
140c985f5:	75 05                	jne    0x140c985fc
140c985f7:	48 83 c4 28          	add    $0x28,%rsp
140c985fb:	c3                   	ret
140c985fc:	48 8b c8             	mov    %rax,%rcx
140c985ff:	e8 1c 77 7b ff       	call   0x14044fd20
140c98604:	48 8b c8             	mov    %rax,%rcx
140c98607:	e8 b4 7f 5a ff       	call   0x1402405c0
140c9860c:	44 8b c0             	mov    %eax,%r8d
140c9860f:	4c 8d 0d 2a 99 4a 00 	lea    0x4a992a(%rip),%r9        # 0x141141f40
140c98616:	33 c0                	xor    %eax,%eax
140c98618:	8b d0                	mov    %eax,%edx
140c9861a:	8b c8                	mov    %eax,%ecx
140c9861c:	0f 1f 40 00          	nopl   0x0(%rax)
140c98620:	46 39 04 09          	cmp    %r8d,(%rcx,%r9,1)
140c98624:	74 15                	je     0x140c9863b
140c98626:	48 ff c2             	inc    %rdx
140c98629:	48 83 c1 0c          	add    $0xc,%rcx
140c9862d:	48 81 f9 68 01 00 00 	cmp    $0x168,%rcx
140c98634:	72 ea                	jb     0x140c98620
140c98636:	48 83 c4 28          	add    $0x28,%rsp
140c9863a:	c3                   	ret
140c9863b:	8d 42 01             	lea    0x1(%rdx),%eax
140c9863e:	48 83 c4 28          	add    $0x28,%rsp
140c98642:	c3                   	ret
140c98643:	cc                   	int3
140c98644:	cc                   	int3
140c98645:	cc                   	int3
140c98646:	cc                   	int3
140c98647:	cc                   	int3
140c98648:	cc                   	int3
140c98649:	cc                   	int3
140c9864a:	cc                   	int3
140c9864b:	cc                   	int3
140c9864c:	cc                   	int3
140c9864d:	cc                   	int3
140c9864e:	cc                   	int3
140c9864f:	cc                   	int3
140c98650:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140c98655:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140c9865a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140c9865f:	57                   	push   %rdi
140c98660:	b8 20 00 00 00       	mov    $0x20,%eax
140c98665:	e8 36 2e 18 00       	call   0x140e1b4a0
140c9866a:	48 2b e0             	sub    %rax,%rsp
140c9866d:	33 f6                	xor    %esi,%esi
140c9866f:	8b da                	mov    %edx,%ebx
140c98671:	48 8b e9             	mov    %rcx,%rbp
140c98674:	83 fa ff             	cmp    $0xffffffff,%edx
140c98677:	0f 85 a9 00 00 00    	jne    0x140c98726
140c9867d:	39 71 38             	cmp    %esi,0x38(%rcx)
140c98680:	74 78                	je     0x140c986fa
140c98682:	8b de                	mov    %esi,%ebx
140c98684:	48 8b cb             	mov    %rbx,%rcx
140c98687:	e8 e4 52 ff ff       	call   0x140c8d970
140c9868c:	48 8b 8d a8 00 00 00 	mov    0xa8(%rbp),%rcx
140c98693:	48 8b 91 38 02 00 00 	mov    0x238(%rcx),%rdx
140c9869a:	8b 4a 20             	mov    0x20(%rdx),%ecx
140c9869d:	85 48 04             	test   %ecx,0x4(%rax)
140c986a0:	75 20                	jne    0x140c986c2
140c986a2:	48 ff c3             	inc    %rbx
140c986a5:	48 83 fb 09          	cmp    $0x9,%rbx
140c986a9:	72 d9                	jb     0x140c98684
140c986ab:	33 c0                	xor    %eax,%eax
140c986ad:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140c986b2:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140c986b7:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140c986bc:	48 83 c4 20          	add    $0x20,%rsp
140c986c0:	5f                   	pop    %rdi
140c986c1:	c3                   	ret
140c986c2:	83 fb 04             	cmp    $0x4,%ebx
140c986c5:	75 5f                	jne    0x140c98726
140c986c7:	83 f9 20             	cmp    $0x20,%ecx
140c986ca:	74 5f                	je     0x140c9872b
140c986cc:	48 8b 85 88 04 00 00 	mov    0x488(%rbp),%rax
140c986d3:	ba 06 00 00 00       	mov    $0x6,%edx
140c986d8:	8b ca                	mov    %edx,%ecx
140c986da:	48 05 18 01 00 00    	add    $0x118,%rax
140c986e0:	48 39 30             	cmp    %rsi,(%rax)
140c986e3:	75 11                	jne    0x140c986f6
140c986e5:	ff ca                	dec    %edx
140c986e7:	48 ff c9             	dec    %rcx
140c986ea:	48 83 e8 28          	sub    $0x28,%rax
140c986ee:	48 83 f9 04          	cmp    $0x4,%rcx
140c986f2:	7d ec                	jge    0x140c986e0
140c986f4:	eb 35                	jmp    0x140c9872b
140c986f6:	8b da                	mov    %edx,%ebx
140c986f8:	eb 2c                	jmp    0x140c98726
140c986fa:	48 8b 81 88 04 00 00 	mov    0x488(%rcx),%rax
140c98701:	48 8b 08             	mov    (%rax),%rcx
140c98704:	48 2b c8             	sub    %rax,%rcx
140c98707:	48 b8 67 66 66 66 66 	movabs $0x6666666666666667,%rax
140c9870e:	66 66 66
140c98711:	48 83 e9 20          	sub    $0x20,%rcx
140c98715:	48 f7 e9             	imul   %rcx
140c98718:	48 c1 fa 04          	sar    $0x4,%rdx
140c9871c:	48 8b da             	mov    %rdx,%rbx
140c9871f:	48 c1 eb 3f          	shr    $0x3f,%rbx
140c98723:	48 03 da             	add    %rdx,%rbx
140c98726:	83 fb 08             	cmp    $0x8,%ebx
140c98729:	77 80                	ja     0x140c986ab
140c9872b:	48 8b 45 08          	mov    0x8(%rbp),%rax
140c9872f:	48 8b 88 c0 00 00 00 	mov    0xc0(%rax),%rcx
140c98736:	f6 41 60 02          	testb  $0x2,0x60(%rcx)
140c9873a:	75 2c                	jne    0x140c98768
140c9873c:	85 db                	test   %ebx,%ebx
140c9873e:	75 28                	jne    0x140c98768
140c98740:	4c 8d 05 c9 9d 4a 00 	lea    0x4a9dc9(%rip),%r8        # 0x141142510
140c98747:	ba 0b 00 05 00       	mov    $0x5000b,%edx
140c9874c:	48 8b cd             	mov    %rbp,%rcx
140c9874f:	e8 dc ef ff ff       	call   0x140c97730
140c98754:	85 c0                	test   %eax,%eax
140c98756:	0f 84 4f ff ff ff    	je     0x140c986ab
140c9875c:	48 8d 05 ad 9d 4a 00 	lea    0x4a9dad(%rip),%rax        # 0x141142510
140c98763:	e9 45 ff ff ff       	jmp    0x140c986ad
140c98768:	48 63 c3             	movslq %ebx,%rax
140c9876b:	48 8d 0d c6 9d 4a 00 	lea    0x4a9dc6(%rip),%rcx        # 0x141142538
140c98772:	48 8d 3d 87 99 4a 00 	lea    0x4a9987(%rip),%rdi        # 0x141142100
140c98779:	0f b7 0c 41          	movzwl (%rcx,%rax,2),%ecx
140c9877d:	0f 1f 00             	nopl   (%rax)
140c98780:	66 39 4f 08          	cmp    %cx,0x8(%rdi)
140c98784:	74 12                	je     0x140c98798
140c98786:	48 ff c6             	inc    %rsi
140c98789:	48 83 c7 28          	add    $0x28,%rdi
140c9878d:	48 83 fe 1a          	cmp    $0x1a,%rsi
140c98791:	72 ed                	jb     0x140c98780