140e5a5f8:	49 83 f9 ff          	cmp    $0xffffffffffffffff,%r9
140e5a5fc:	75 0f                	jne    0x140e5a60d
140e5a5fe:	66 46 89 54 59 fe    	mov    %r10w,-0x2(%rcx,%r11,2)
140e5a604:	45 8d 50 50          	lea    0x50(%r8),%r10d
140e5a608:	e9 52 ff ff ff       	jmp    0x140e5a55f
140e5a60d:	66 44 89 11          	mov    %r10w,(%rcx)
140e5a611:	e8 da fc fc ff       	call   0x140e2a2f0
140e5a616:	bb 22 00 00 00       	mov    $0x22,%ebx
140e5a61b:	e9 35 ff ff ff       	jmp    0x140e5a555
140e5a620:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140e5a625:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140e5a62a:	57                   	push   %rdi
140e5a62b:	48 83 ec 40          	sub    $0x40,%rsp
140e5a62f:	8b da                	mov    %edx,%ebx
140e5a631:	41 8b f9             	mov    %r9d,%edi
140e5a634:	48 8b d1             	mov    %rcx,%rdx
140e5a637:	41 8b f0             	mov    %r8d,%esi
140e5a63a:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140e5a63f:	e8 20 7b fd ff       	call   0x140e32164
140e5a644:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
140e5a649:	0f b6 d3             	movzbl %bl,%edx
140e5a64c:	40 84 7c 02 19       	test   %dil,0x19(%rdx,%rax,1)
140e5a651:	75 18                	jne    0x140e5a66b
140e5a653:	85 f6                	test   %esi,%esi
140e5a655:	74 10                	je     0x140e5a667
140e5a657:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
140e5a65c:	48 8b 08             	mov    (%rax),%rcx
140e5a65f:	0f b7 04 51          	movzwl (%rcx,%rdx,2),%eax
140e5a663:	85 c6                	test   %eax,%esi
140e5a665:	75 04                	jne    0x140e5a66b
140e5a667:	33 c0                	xor    %eax,%eax
140e5a669:	eb 05                	jmp    0x140e5a670
140e5a66b:	b8 01 00 00 00       	mov    $0x1,%eax
140e5a670:	80 7c 24 38 00       	cmpb   $0x0,0x38(%rsp)
140e5a675:	74 0c                	je     0x140e5a683
140e5a677:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
140e5a67c:	83 a1 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rcx)
140e5a683:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140e5a688:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
140e5a68d:	48 83 c4 40          	add    $0x40,%rsp
140e5a691:	5f                   	pop    %rdi
140e5a692:	c3                   	ret
140e5a693:	cc                   	int3
140e5a694:	8b d1                	mov    %ecx,%edx
140e5a696:	41 b9 04 00 00 00    	mov    $0x4,%r9d
140e5a69c:	33 c9                	xor    %ecx,%ecx
140e5a69e:	45 33 c0             	xor    %r8d,%r8d
140e5a6a1:	e9 7a ff ff ff       	jmp    0x140e5a620
140e5a6a6:	cc                   	int3
140e5a6a7:	cc                   	int3
140e5a6a8:	cc                   	int3
140e5a6a9:	cc                   	int3
140e5a6aa:	cc                   	int3
140e5a6ab:	cc                   	int3
140e5a6ac:	cc                   	int3
140e5a6ad:	cc                   	int3
140e5a6ae:	cc                   	int3
140e5a6af:	cc                   	int3
140e5a6b0:	48 83 ec 28          	sub    $0x28,%rsp
140e5a6b4:	ff 15 ce 8b 12 00    	call   *0x128bce(%rip)        # 0x140f83288
140e5a6ba:	48 85 c0             	test   %rax,%rax
140e5a6bd:	48 89 05 9c 58 64 00 	mov    %rax,0x64589c(%rip)        # 0x14149ff60
140e5a6c4:	0f 95 c0             	setne  %al
140e5a6c7:	48 83 c4 28          	add    $0x28,%rsp
140e5a6cb:	c3                   	ret
140e5a6cc:	cc                   	int3
140e5a6cd:	cc                   	int3
140e5a6ce:	cc                   	int3
140e5a6cf:	cc                   	int3
140e5a6d0:	48 83 25 88 58 64 00 	andq   $0x0,0x645888(%rip)        # 0x14149ff60
140e5a6d7:	00
140e5a6d8:	b0 01                	mov    $0x1,%al
140e5a6da:	c3                   	ret
140e5a6db:	cc                   	int3
140e5a6dc:	cc                   	int3
140e5a6dd:	cc                   	int3
140e5a6de:	cc                   	int3
140e5a6df:	cc                   	int3
140e5a6e0:	8b 05 82 58 64 00    	mov    0x645882(%rip),%eax        # 0x14149ff68
140e5a6e6:	b9 00 40 00 00       	mov    $0x4000,%ecx
140e5a6eb:	85 c0                	test   %eax,%eax
140e5a6ed:	0f 44 c1             	cmove  %ecx,%eax
140e5a6f0:	89 05 72 58 64 00    	mov    %eax,0x645872(%rip)        # 0x14149ff68
140e5a6f6:	33 c0                	xor    %eax,%eax
140e5a6f8:	c3                   	ret
140e5a6f9:	cc                   	int3
140e5a6fa:	cc                   	int3
140e5a6fb:	cc                   	int3
140e5a6fc:	4c 8b da             	mov    %rdx,%r11
140e5a6ff:	4c 8b d1             	mov    %rcx,%r10
140e5a702:	4d 85 c0             	test   %r8,%r8
140e5a705:	75 03                	jne    0x140e5a70a
140e5a707:	33 c0                	xor    %eax,%eax
140e5a709:	c3                   	ret
140e5a70a:	41 0f b7 0a          	movzwl (%r10),%ecx
140e5a70e:	4d 8d 52 02          	lea    0x2(%r10),%r10
140e5a712:	41 0f b7 13          	movzwl (%r11),%edx
140e5a716:	4d 8d 5b 02          	lea    0x2(%r11),%r11
140e5a71a:	8d 41 bf             	lea    -0x41(%rcx),%eax
140e5a71d:	83 f8 19             	cmp    $0x19,%eax
140e5a720:	44 8d 49 20          	lea    0x20(%rcx),%r9d
140e5a724:	8d 42 bf             	lea    -0x41(%rdx),%eax
140e5a727:	44 0f 47 c9          	cmova  %ecx,%r9d
140e5a72b:	83 f8 19             	cmp    $0x19,%eax
140e5a72e:	8d 4a 20             	lea    0x20(%rdx),%ecx
140e5a731:	41 8b c1             	mov    %r9d,%eax
140e5a734:	0f 47 ca             	cmova  %edx,%ecx
140e5a737:	2b c1                	sub    %ecx,%eax
140e5a739:	75 0b                	jne    0x140e5a746
140e5a73b:	45 85 c9             	test   %r9d,%r9d
140e5a73e:	74 06                	je     0x140e5a746
140e5a740:	49 83 e8 01          	sub    $0x1,%r8
140e5a744:	75 c4                	jne    0x140e5a70a
140e5a746:	c3                   	ret
140e5a747:	cc                   	int3
140e5a748:	48 83 ec 28          	sub    $0x28,%rsp
140e5a74c:	83 3d 09 51 64 00 00 	cmpl   $0x0,0x645109(%rip)        # 0x14149f85c
140e5a753:	75 2d                	jne    0x140e5a782
140e5a755:	48 85 c9             	test   %rcx,%rcx
140e5a758:	75 1a                	jne    0x140e5a774
140e5a75a:	e8 91 fb fc ff       	call   0x140e2a2f0
140e5a75f:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140e5a765:	e8 1a fa fc ff       	call   0x140e2a184
140e5a76a:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
140e5a76f:	48 83 c4 28          	add    $0x28,%rsp
140e5a773:	c3                   	ret
140e5a774:	48 85 d2             	test   %rdx,%rdx
140e5a777:	74 e1                	je     0x140e5a75a
140e5a779:	48 83 c4 28          	add    $0x28,%rsp
140e5a77d:	e9 7a ff ff ff       	jmp    0x140e5a6fc
140e5a782:	45 33 c9             	xor    %r9d,%r9d
140e5a785:	48 83 c4 28          	add    $0x28,%rsp
140e5a789:	e9 02 00 00 00       	jmp    0x140e5a790
140e5a78e:	cc                   	int3
140e5a78f:	cc                   	int3
140e5a790:	48 8b c4             	mov    %rsp,%rax
140e5a793:	48 89 58 08          	mov    %rbx,0x8(%rax)
140e5a797:	48 89 68 10          	mov    %rbp,0x10(%rax)
140e5a79b:	48 89 70 18          	mov    %rsi,0x18(%rax)
140e5a79f:	48 89 78 20          	mov    %rdi,0x20(%rax)
140e5a7a3:	41 54                	push   %r12
140e5a7a5:	41 56                	push   %r14
140e5a7a7:	41 57                	push   %r15
140e5a7a9:	48 83 ec 40          	sub    $0x40,%rsp
140e5a7ad:	49 8b e8             	mov    %r8,%rbp
140e5a7b0:	48 8b f2             	mov    %rdx,%rsi
140e5a7b3:	48 8b d9             	mov    %rcx,%rbx
140e5a7b6:	48 85 c9             	test   %rcx,%rcx
140e5a7b9:	75 1a                	jne    0x140e5a7d5
140e5a7bb:	e8 30 fb fc ff       	call   0x140e2a2f0
140e5a7c0:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140e5a7c6:	e8 b9 f9 fc ff       	call   0x140e2a184
140e5a7cb:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
140e5a7d0:	e9 ed 00 00 00       	jmp    0x140e5a8c2
140e5a7d5:	48 85 f6             	test   %rsi,%rsi
140e5a7d8:	74 e1                	je     0x140e5a7bb
140e5a7da:	48 85 ed             	test   %rbp,%rbp
140e5a7dd:	75 07                	jne    0x140e5a7e6
140e5a7df:	33 c0                	xor    %eax,%eax
140e5a7e1:	e9 dc 00 00 00       	jmp    0x140e5a8c2
140e5a7e6:	49 8b d1             	mov    %r9,%rdx
140e5a7e9:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140e5a7ee:	e8 71 79 fd ff       	call   0x140e32164
140e5a7f3:	48 8b 54 24 28       	mov    0x28(%rsp),%rdx
140e5a7f8:	48 83 ba 38 01 00 00 	cmpq   $0x0,0x138(%rdx)
140e5a7ff:	00
140e5a800:	75 15                	jne    0x140e5a817
140e5a802:	4c 8b c5             	mov    %rbp,%r8
140e5a805:	48 8b d6             	mov    %rsi,%rdx
140e5a808:	48 8b cb             	mov    %rbx,%rcx
140e5a80b:	e8 ec fe ff ff       	call   0x140e5a6fc
140e5a810:	8b f8                	mov    %eax,%edi
140e5a812:	e9 96 00 00 00       	jmp    0x140e5a8ad
140e5a817:	41 bf 00 01 00 00    	mov    $0x100,%r15d
140e5a81d:	4c 8d 25 cc b2 38 00 	lea    0x38b2cc(%rip),%r12        # 0x1411e5af0
140e5a824:	0f b7 0b             	movzwl (%rbx),%ecx
140e5a827:	48 8d 5b 02          	lea    0x2(%rbx),%rbx
140e5a82b:	66 41 3b cf          	cmp    %r15w,%cx
140e5a82f:	73 1a                	jae    0x140e5a84b
140e5a831:	0f b6 c9             	movzbl %cl,%ecx
140e5a834:	41 f6 44 4c 02 01    	testb  $0x1,0x2(%r12,%rcx,2)
140e5a83a:	74 0a                	je     0x140e5a846
140e5a83c:	48 8b 82 10 01 00 00 	mov    0x110(%rdx),%rax
140e5a843:	8a 0c 01             	mov    (%rcx,%rax,1),%cl
140e5a846:	0f b6 c1             	movzbl %cl,%eax
140e5a849:	eb 0f                	jmp    0x140e5a85a
140e5a84b:	48 8d 54 24 28       	lea    0x28(%rsp),%rdx
140e5a850:	e8 7b 75 00 00       	call   0x140e61dd0
140e5a855:	48 8b 54 24 28       	mov    0x28(%rsp),%rdx
140e5a85a:	0f b7 0e             	movzwl (%rsi),%ecx
140e5a85d:	48 83 c6 02          	add    $0x2,%rsi
140e5a861:	44 0f b7 f0          	movzwl %ax,%r14d
140e5a865:	41 8b fe             	mov    %r14d,%edi
140e5a868:	66 41 3b cf          	cmp    %r15w,%cx
140e5a86c:	73 1a                	jae    0x140e5a888
140e5a86e:	0f b6 c9             	movzbl %cl,%ecx
140e5a871:	41 f6 44 4c 02 01    	testb  $0x1,0x2(%r12,%rcx,2)
140e5a877:	74 0a                	je     0x140e5a883
140e5a879:	48 8b 82 10 01 00 00 	mov    0x110(%rdx),%rax
140e5a880:	8a 0c 01             	mov    (%rcx,%rax,1),%cl
140e5a883:	0f b6 c1             	movzbl %cl,%eax
140e5a886:	eb 0f                	jmp    0x140e5a897
140e5a888:	48 8d 54 24 28       	lea    0x28(%rsp),%rdx
140e5a88d:	e8 3e 75 00 00       	call   0x140e61dd0
140e5a892:	48 8b 54 24 28       	mov    0x28(%rsp),%rdx
140e5a897:	0f b7 c0             	movzwl %ax,%eax
140e5a89a:	2b f8                	sub    %eax,%edi
140e5a89c:	75 0f                	jne    0x140e5a8ad
140e5a89e:	45 85 f6             	test   %r14d,%r14d
140e5a8a1:	74 0a                	je     0x140e5a8ad
140e5a8a3:	48 83 ed 01          	sub    $0x1,%rbp
140e5a8a7:	0f 85 77 ff ff ff    	jne    0x140e5a824
140e5a8ad:	80 7c 24 38 00       	cmpb   $0x0,0x38(%rsp)
140e5a8b2:	74 0c                	je     0x140e5a8c0
140e5a8b4:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
140e5a8b9:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
140e5a8c0:	8b c7                	mov    %edi,%eax
140e5a8c2:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140e5a8c7:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
140e5a8cc:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
140e5a8d1:	48 8b 7c 24 78       	mov    0x78(%rsp),%rdi
140e5a8d6:	48 83 c4 40          	add    $0x40,%rsp
140e5a8da:	41 5f                	pop    %r15
140e5a8dc:	41 5e                	pop    %r14
140e5a8de:	41 5c                	pop    %r12
140e5a8e0:	c3                   	ret
140e5a8e1:	cc                   	int3
140e5a8e2:	cc                   	int3
140e5a8e3:	cc                   	int3
140e5a8e4:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140e5a8e9:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140e5a8ee:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140e5a8f3:	57                   	push   %rdi
140e5a8f4:	48 83 ec 20          	sub    $0x20,%rsp
140e5a8f8:	49 8b e8             	mov    %r8,%rbp
140e5a8fb:	48 8b da             	mov    %rdx,%rbx
140e5a8fe:	48 8b f1             	mov    %rcx,%rsi
140e5a901:	48 85 d2             	test   %rdx,%rdx
140e5a904:	74 1d                	je     0x140e5a923
140e5a906:	33 d2                	xor    %edx,%edx
140e5a908:	48 8d 42 e0          	lea    -0x20(%rdx),%rax
140e5a90c:	48 f7 f3             	div    %rbx
140e5a90f:	49 3b c0             	cmp    %r8,%rax
140e5a912:	73 0f                	jae    0x140e5a923
140e5a914:	e8 d7 f9 fc ff       	call   0x140e2a2f0
140e5a919:	c7 00 0c 00 00 00    	movl   $0xc,(%rax)
140e5a91f:	33 c0                	xor    %eax,%eax
140e5a921:	eb 41                	jmp    0x140e5a964
140e5a923:	48 85 f6             	test   %rsi,%rsi
140e5a926:	74 0a                	je     0x140e5a932
140e5a928:	e8 73 ba fe ff       	call   0x140e463a0
140e5a92d:	48 8b f8             	mov    %rax,%rdi
140e5a930:	eb 02                	jmp    0x140e5a934
140e5a932:	33 ff                	xor    %edi,%edi
140e5a934:	48 0f af dd          	imul   %rbp,%rbx
140e5a938:	48 8b ce             	mov    %rsi,%rcx
140e5a93b:	48 8b d3             	mov    %rbx,%rdx
140e5a93e:	e8 d1 bb ff ff       	call   0x140e56514
140e5a943:	48 8b f0             	mov    %rax,%rsi
140e5a946:	48 85 c0             	test   %rax,%rax
140e5a949:	74 16                	je     0x140e5a961
140e5a94b:	48 3b fb             	cmp    %rbx,%rdi
140e5a94e:	73 11                	jae    0x140e5a961
140e5a950:	48 2b df             	sub    %rdi,%rbx
140e5a953:	48 8d 0c 38          	lea    (%rax,%rdi,1),%rcx
140e5a957:	4c 8b c3             	mov    %rbx,%r8
140e5a95a:	33 d2                	xor    %edx,%edx
140e5a95c:	e8 4f 4d 08 00       	call   0x140edf6b0
140e5a961:	48 8b c6             	mov    %rsi,%rax
140e5a964:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140e5a969:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140e5a96e:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140e5a973:	48 83 c4 20          	add    $0x20,%rsp
140e5a977:	5f                   	pop    %rdi
140e5a978:	c3                   	ret
140e5a979:	cc                   	int3
140e5a97a:	cc                   	int3
140e5a97b:	cc                   	int3
140e5a97c:	40 53                	rex push %rbx
140e5a97e:	48 83 ec 20          	sub    $0x20,%rsp
140e5a982:	33 db                	xor    %ebx,%ebx
140e5a984:	4c 8b c9             	mov    %rcx,%r9
140e5a987:	48 85 c9             	test   %rcx,%rcx
140e5a98a:	74 0d                	je     0x140e5a999
140e5a98c:	48 85 d2             	test   %rdx,%rdx
140e5a98f:	74 08                	je     0x140e5a999
140e5a991:	4d 85 c0             	test   %r8,%r8
140e5a994:	75 1c                	jne    0x140e5a9b2
140e5a996:	66 89 19             	mov    %bx,(%rcx)
140e5a999:	e8 52 f9 fc ff       	call   0x140e2a2f0
140e5a99e:	bb 16 00 00 00       	mov    $0x16,%ebx
140e5a9a3:	89 18                	mov    %ebx,(%rax)
140e5a9a5:	e8 da f7 fc ff       	call   0x140e2a184
140e5a9aa:	8b c3                	mov    %ebx,%eax
140e5a9ac:	48 83 c4 20          	add    $0x20,%rsp
140e5a9b0:	5b                   	pop    %rbx
140e5a9b1:	c3                   	ret
140e5a9b2:	66 39 19             	cmp    %bx,(%rcx)
140e5a9b5:	74 10                	je     0x140e5a9c7
140e5a9b7:	48 83 c1 02          	add    $0x2,%rcx
140e5a9bb:	48 83 ea 01          	sub    $0x1,%rdx
140e5a9bf:	75 f1                	jne    0x140e5a9b2
140e5a9c1:	66 41 89 19          	mov    %bx,(%r9)
140e5a9c5:	eb d2                	jmp    0x140e5a999
140e5a9c7:	4c 2b c1             	sub    %rcx,%r8
140e5a9ca:	41 0f b7 04 08       	movzwl (%r8,%rcx,1),%eax
140e5a9cf:	66 89 01             	mov    %ax,(%rcx)
140e5a9d2:	48 8d 49 02          	lea    0x2(%rcx),%rcx
140e5a9d6:	66 85 c0             	test   %ax,%ax
140e5a9d9:	74 cf                	je     0x140e5a9aa
140e5a9db:	48 83 ea 01          	sub    $0x1,%rdx
140e5a9df:	75 e9                	jne    0x140e5a9ca
140e5a9e1:	66 41 89 19          	mov    %bx,(%r9)
140e5a9e5:	e8 06 f9 fc ff       	call   0x140e2a2f0
140e5a9ea:	bb 22 00 00 00       	mov    $0x22,%ebx
140e5a9ef:	eb b2                	jmp    0x140e5a9a3
140e5a9f1:	cc                   	int3
140e5a9f2:	cc                   	int3
140e5a9f3:	cc                   	int3
140e5a9f4:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140e5a9f9:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140e5a9fe:	57                   	push   %rdi
140e5a9ff:	48 83 ec 20          	sub    $0x20,%rsp
140e5aa03:	48 83 cf ff          	or     $0xffffffffffffffff,%rdi
140e5aa07:	48 8b f2             	mov    %rdx,%rsi
140e5aa0a:	48 8b d9             	mov    %rcx,%rbx
140e5aa0d:	48 85 c9             	test   %rcx,%rcx
140e5aa10:	74 02                	je     0x140e5aa14
140e5aa12:	89 39                	mov    %edi,(%rcx)
140e5aa14:	48 8d 42 02          	lea    0x2(%rdx),%rax
140e5aa18:	48 83 f8 01          	cmp    $0x1,%rax
140e5aa1c:	76 6e                	jbe    0x140e5aa8c
140e5aa1e:	83 ca ff             	or     $0xffffffff,%edx
140e5aa21:	48 8b ce             	mov    %rsi,%rcx
140e5aa24:	ff 15 76 88 12 00    	call   *0x128876(%rip)        # 0x140f832a0
140e5aa2a:	85 c0                	test   %eax,%eax
140e5aa2c:	75 22                	jne    0x140e5aa50
140e5aa2e:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
140e5aa33:	48 8b ce             	mov    %rsi,%rcx
140e5aa36:	ff 15 5c 89 12 00    	call   *0x12895c(%rip)        # 0x140f83398
140e5aa3c:	85 c0                	test   %eax,%eax
140e5aa3e:	74 10                	je     0x140e5aa50
140e5aa40:	48 85 db             	test   %rbx,%rbx
140e5aa43:	74 06                	je     0x140e5aa4b
140e5aa45:	8b 44 24 30          	mov    0x30(%rsp),%eax
140e5aa49:	89 03                	mov    %eax,(%rbx)
140e5aa4b:	48 8b fe             	mov    %rsi,%rdi
140e5aa4e:	eb 31                	jmp    0x140e5aa81
140e5aa50:	ff 15 12 88 12 00    	call   *0x128812(%rip)        # 0x140f83268
140e5aa56:	83 f8 06             	cmp    $0x6,%eax