140899734:	44 8b c9             	mov    %ecx,%r9d
140899737:	45 2b c8             	sub    %r8d,%r9d
14089973a:	4c 89 54 24 48       	mov    %r10,0x48(%rsp)
14089973f:	49 83 c6 10          	add    $0x10,%r14
140899743:	44 89 4c 24 30       	mov    %r9d,0x30(%rsp)
140899748:	41 8b d8             	mov    %r8d,%ebx
14089974b:	4c 89 7c 24 60       	mov    %r15,0x60(%rsp)
140899750:	2b d9                	sub    %ecx,%ebx
140899752:	4d 8b df             	mov    %r15,%r11
140899755:	8b e9                	mov    %ecx,%ebp
140899757:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14089975e:	00 00
140899760:	48 8b 42 48          	mov    0x48(%rdx),%rax
140899764:	49 8b 0c 02          	mov    (%r10,%rax,1),%rcx
140899768:	4c 39 21             	cmp    %r12,(%rcx)
14089976b:	0f 85 73 01 00 00    	jne    0x1408998e4
140899771:	83 7c 24 38 01       	cmpl   $0x1,0x38(%rsp)
140899776:	75 52                	jne    0x1408997ca
140899778:	48 63 96 90 00 00 00 	movslq 0x90(%rsi),%rdx
14089977f:	39 96 94 00 00 00    	cmp    %edx,0x94(%rsi)
140899785:	7f 1e                	jg     0x1408997a5
140899787:	44 8b cd             	mov    %ebp,%r9d
14089978a:	89 7c 24 20          	mov    %edi,0x20(%rsp)
14089978e:	45 8b c5             	mov    %r13d,%r8d
140899791:	ba 87 00 00 00       	mov    $0x87,%edx
140899796:	48 8b ce             	mov    %rsi,%rcx
140899799:	e8 02 36 01 00       	call   0x1408acda0
14089979e:	8b d0                	mov    %eax,%edx
1408997a0:	e9 93 00 00 00       	jmp    0x140899838
1408997a5:	48 8d 0c 52          	lea    (%rdx,%rdx,2),%rcx
1408997a9:	8d 42 01             	lea    0x1(%rdx),%eax
1408997ac:	89 86 90 00 00 00    	mov    %eax,0x90(%rsi)
1408997b2:	48 8b 86 88 00 00 00 	mov    0x88(%rsi),%rax
1408997b9:	c7 04 c8 87 00 00 00 	movl   $0x87,(%rax,%rcx,8)
1408997c0:	89 6c c8 08          	mov    %ebp,0x8(%rax,%rcx,8)
1408997c4:	89 7c c8 0c          	mov    %edi,0xc(%rax,%rcx,8)
1408997c8:	eb 64                	jmp    0x14089982e
1408997ca:	4d 85 ff             	test   %r15,%r15
1408997cd:	74 0e                	je     0x1408997dd
1408997cf:	45 8b 03             	mov    (%r11),%r8d
1408997d2:	49 83 c3 04          	add    $0x4,%r11
1408997d6:	4c 89 5c 24 60       	mov    %r11,0x60(%rsp)
1408997db:	eb 03                	jmp    0x1408997e0
1408997dd:	44 8b c7             	mov    %edi,%r8d
1408997e0:	48 63 96 90 00 00 00 	movslq 0x90(%rsi),%rdx
1408997e7:	39 96 94 00 00 00    	cmp    %edx,0x94(%rsi)
1408997ed:	7f 1b                	jg     0x14089980a
1408997ef:	45 8b c8             	mov    %r8d,%r9d
1408997f2:	89 6c 24 20          	mov    %ebp,0x20(%rsp)
1408997f6:	45 8b c5             	mov    %r13d,%r8d
1408997f9:	ba 5e 00 00 00       	mov    $0x5e,%edx
1408997fe:	48 8b ce             	mov    %rsi,%rcx
140899801:	e8 9a 35 01 00       	call   0x1408acda0
140899806:	8b d0                	mov    %eax,%edx
140899808:	eb 2e                	jmp    0x140899838
14089980a:	48 8d 0c 52          	lea    (%rdx,%rdx,2),%rcx
14089980e:	8d 42 01             	lea    0x1(%rdx),%eax
140899811:	89 86 90 00 00 00    	mov    %eax,0x90(%rsi)
140899817:	48 8b 86 88 00 00 00 	mov    0x88(%rsi),%rax
14089981e:	c7 04 c8 5e 00 00 00 	movl   $0x5e,(%rax,%rcx,8)
140899825:	44 89 44 c8 08       	mov    %r8d,0x8(%rax,%rcx,8)
14089982a:	89 6c c8 0c          	mov    %ebp,0xc(%rax,%rcx,8)
14089982e:	48 89 7c c8 10       	mov    %rdi,0x10(%rax,%rcx,8)
140899833:	44 89 6c c8 04       	mov    %r13d,0x4(%rax,%rcx,8)
140899838:	41 89 56 f4          	mov    %edx,-0xc(%r14)
14089983c:	48 63 8e 90 00 00 00 	movslq 0x90(%rsi),%rcx
140899843:	39 8e 94 00 00 00    	cmp    %ecx,0x94(%rsi)
140899849:	7f 19                	jg     0x140899864
14089984b:	45 33 c9             	xor    %r9d,%r9d
14089984e:	89 7c 24 20          	mov    %edi,0x20(%rsp)
140899852:	44 8b c5             	mov    %ebp,%r8d
140899855:	ba 32 00 00 00       	mov    $0x32,%edx
14089985a:	48 8b ce             	mov    %rsi,%rcx
14089985d:	e8 3e 35 01 00       	call   0x1408acda0
140899862:	eb 29                	jmp    0x14089988d
140899864:	8d 41 01             	lea    0x1(%rcx),%eax
140899867:	89 86 90 00 00 00    	mov    %eax,0x90(%rsi)
14089986d:	48 8d 0c 49          	lea    (%rcx,%rcx,2),%rcx
140899871:	48 8b 86 88 00 00 00 	mov    0x88(%rsi),%rax
140899878:	c7 04 c8 32 00 00 00 	movl   $0x32,(%rax,%rcx,8)
14089987f:	89 6c c8 04          	mov    %ebp,0x4(%rax,%rcx,8)
140899883:	48 89 7c c8 08       	mov    %rdi,0x8(%rax,%rcx,8)
140899888:	48 89 7c c8 10       	mov    %rdi,0x10(%rax,%rcx,8)
14089988d:	44 8b 84 24 d8 00 00 	mov    0xd8(%rsp),%r8d
140899894:	00
140899895:	8d 0c 2b             	lea    (%rbx,%rbp,1),%ecx
140899898:	41 3b c8             	cmp    %r8d,%ecx
14089989b:	75 2b                	jne    0x1408998c8
14089989d:	39 7c 24 3c          	cmp    %edi,0x3c(%rsp)
1408998a1:	45 89 6e f0          	mov    %r13d,-0x10(%r14)
1408998a5:	0f 94 c0             	sete   %al
1408998a8:	04 25                	add    $0x25,%al
1408998aa:	41 88 06             	mov    %al,(%r14)
1408998ad:	45 85 c0             	test   %r8d,%r8d
1408998b0:	7e 0e                	jle    0x1408998c0
1408998b2:	8b 44 24 30          	mov    0x30(%rsp),%eax
1408998b6:	41 89 46 f8          	mov    %eax,-0x8(%r14)
1408998ba:	41 89 4e fc          	mov    %ecx,-0x4(%r14)
1408998be:	eb 0c                	jmp    0x1408998cc
1408998c0:	8b cf                	mov    %edi,%ecx
1408998c2:	41 89 4e fc          	mov    %ecx,-0x4(%r14)
1408998c6:	eb 04                	jmp    0x1408998cc
1408998c8:	41 c6 06 b8          	movb   $0xb8,(%r14)
1408998cc:	48 8b 54 24 40       	mov    0x40(%rsp),%rdx
1408998d1:	49 83 c6 14          	add    $0x14,%r14
1408998d5:	44 8b 4c 24 30       	mov    0x30(%rsp),%r9d
1408998da:	4c 8b 54 24 48       	mov    0x48(%rsp),%r10
1408998df:	4c 8b 5c 24 60       	mov    0x60(%rsp),%r11
1408998e4:	0f b7 42 3c          	movzwl 0x3c(%rdx),%eax
1408998e8:	ff c5                	inc    %ebp
1408998ea:	41 ff c9             	dec    %r9d
1408998ed:	49 83 c2 08          	add    $0x8,%r10
1408998f1:	44 89 4c 24 30       	mov    %r9d,0x30(%rsp)
1408998f6:	4c 89 54 24 48       	mov    %r10,0x48(%rsp)
1408998fb:	8d 0c 2b             	lea    (%rbx,%rbp,1),%ecx
1408998fe:	3b c8                	cmp    %eax,%ecx
140899900:	0f 8c 5a fe ff ff    	jl     0x140899760
140899906:	48 8b 9c 24 c8 00 00 	mov    0xc8(%rsp),%rbx
14089990d:	00
14089990e:	4c 8b a4 24 d0 00 00 	mov    0xd0(%rsp),%r12
140899915:	00
140899916:	45 85 c0             	test   %r8d,%r8d
140899919:	7e 6b                	jle    0x140899986
14089991b:	f7 42 38 00 04 10 00 	testl  $0x100400,0x38(%rdx)
140899922:	75 62                	jne    0x140899986
140899924:	48 63 8e 90 00 00 00 	movslq 0x90(%rsi),%rcx
14089992b:	41 8b 54 24 08       	mov    0x8(%r12),%edx
140899930:	39 8e 94 00 00 00    	cmp    %ecx,0x94(%rsi)
140899936:	7f 1a                	jg     0x140899952
140899938:	44 89 44 24 20       	mov    %r8d,0x20(%rsp)
14089993d:	45 33 c9             	xor    %r9d,%r9d
140899940:	44 8b c2             	mov    %edx,%r8d
140899943:	48 8b ce             	mov    %rsi,%rcx
140899946:	ba 7d 00 00 00       	mov    $0x7d,%edx
14089994b:	e8 50 34 01 00       	call   0x1408acda0
140899950:	eb 34                	jmp    0x140899986
140899952:	8d 41 01             	lea    0x1(%rcx),%eax
140899955:	89 86 90 00 00 00    	mov    %eax,0x90(%rsi)
14089995b:	48 8d 0c 49          	lea    (%rcx,%rcx,2),%rcx
14089995f:	48 8b 86 88 00 00 00 	mov    0x88(%rsi),%rax
140899966:	c7 04 c8 7d 00 00 00 	movl   $0x7d,(%rax,%rcx,8)
14089996d:	89 54 c8 04          	mov    %edx,0x4(%rax,%rcx,8)
140899971:	89 7c c8 08          	mov    %edi,0x8(%rax,%rcx,8)
140899975:	44 89 44 c8 0c       	mov    %r8d,0xc(%rax,%rcx,8)
14089997a:	48 89 7c c8 10       	mov    %rdi,0x10(%rax,%rcx,8)
14089997f:	eb 05                	jmp    0x140899986
140899981:	41 89 7c 24 50       	mov    %edi,0x50(%r12)
140899986:	48 8b 84 24 c0 00 00 	mov    0xc0(%rsp),%rax
14089998d:	00
14089998e:	48 8b 08             	mov    (%rax),%rcx
140899991:	4d 85 ff             	test   %r15,%r15
140899994:	74 1a                	je     0x1408999b0
140899996:	48 85 c9             	test   %rcx,%rcx
140899999:	0f 84 cd 00 00 00    	je     0x140899a6c
14089999f:	48 39 b9 00 03 00 00 	cmp    %rdi,0x300(%rcx)
1408999a6:	74 7d                	je     0x140899a25
1408999a8:	49 8b d7             	mov    %r15,%rdx
1408999ab:	e8 90 9f 01 00       	call   0x1408b3940
1408999b0:	8b ac 24 e8 00 00 00 	mov    0xe8(%rsp),%ebp
1408999b7:	41 bd 00 04 00 00    	mov    $0x400,%r13d
1408999bd:	41 be 00 08 00 00    	mov    $0x800,%r14d
1408999c3:	49 8b 4c 24 60       	mov    0x60(%r12),%rcx
1408999c8:	f7 41 38 00 00 20 00 	testl  $0x200000,0x38(%rcx)
1408999cf:	74 0b                	je     0x1408999dc
1408999d1:	66 44 85 73 14       	test   %r14w,0x14(%rbx)
1408999d6:	0f 85 e3 00 00 00    	jne    0x140899abf
1408999dc:	f6 43 12 04          	testb  $0x4,0x12(%rbx)
1408999e0:	0f 85 d9 00 00 00    	jne    0x140899abf
1408999e6:	41 83 3c 24 00       	cmpl   $0x0,(%r12)
1408999eb:	74 0d                	je     0x1408999fa
1408999ed:	48 8b 03             	mov    (%rbx),%rax
1408999f0:	f6 40 04 01          	testb  $0x1,0x4(%rax)
1408999f4:	0f 84 c5 00 00 00    	je     0x140899abf
1408999fa:	48 8b 43 30          	mov    0x30(%rbx),%rax
1408999fe:	49 85 44 24 68       	test   %rax,0x68(%r12)
140899a03:	0f 85 b6 00 00 00    	jne    0x140899abf
140899a09:	85 ff                	test   %edi,%edi
140899a0b:	0f 84 80 00 00 00    	je     0x140899a91
140899a11:	0f b7 43 12          	movzwl 0x12(%rbx),%eax
140899a15:	66 41 85 c5          	test   %ax,%r13w
140899a19:	74 76                	je     0x140899a91
140899a1b:	66 0d 00 02          	or     $0x200,%ax
140899a1f:	66 89 43 12          	mov    %ax,0x12(%rbx)
140899a23:	eb 71                	jmp    0x140899a96
140899a25:	4c 3b b9 f0 01 00 00 	cmp    0x1f0(%rcx),%r15
140899a2c:	73 3e                	jae    0x140899a6c
140899a2e:	4c 3b b9 e0 01 00 00 	cmp    0x1e0(%rcx),%r15
140899a35:	72 16                	jb     0x140899a4d
140899a37:	48 8b 81 d8 01 00 00 	mov    0x1d8(%rcx),%rax
140899a3e:	49 89 07             	mov    %rax,(%r15)
140899a41:	4c 89 b9 d8 01 00 00 	mov    %r15,0x1d8(%rcx)
140899a48:	e9 63 ff ff ff       	jmp    0x1408999b0
140899a4d:	4c 3b b9 e8 01 00 00 	cmp    0x1e8(%rcx),%r15
140899a54:	72 16                	jb     0x140899a6c
140899a56:	48 8b 81 c8 01 00 00 	mov    0x1c8(%rcx),%rax
140899a5d:	49 89 07             	mov    %rax,(%r15)
140899a60:	4c 89 b9 c8 01 00 00 	mov    %r15,0x1c8(%rcx)
140899a67:	e9 44 ff ff ff       	jmp    0x1408999b0
140899a6c:	49 8b cf             	mov    %r15,%rcx
140899a6f:	e8 dc 20 ff ff       	call   0x14088bb50
140899a74:	e9 37 ff ff ff       	jmp    0x1408999b0
140899a79:	44 8b 84 24 e8 00 00 	mov    0xe8(%rsp),%r8d
140899a80:	00
140899a81:	49 8b 53 18          	mov    0x18(%r11),%rdx
140899a85:	e8 b6 2c 04 00       	call   0x1408dc740
140899a8a:	8b e8                	mov    %eax,%ebp
140899a8c:	e9 32 ff ff ff       	jmp    0x1408999c3
140899a91:	66 83 4b 12 04       	orw    $0x4,0x12(%rbx)
140899a96:	48 63 43 18          	movslq 0x18(%rbx),%rax
140899a9a:	85 c0                	test   %eax,%eax
140899a9c:	78 21                	js     0x140899abf
140899a9e:	48 6b c8 38          	imul   $0x38,%rax,%rcx
140899aa2:	48 8b 43 08          	mov    0x8(%rbx),%rax
140899aa6:	48 03 48 20          	add    0x20(%rax),%rcx
140899aaa:	48 8b d9             	mov    %rcx,%rbx
140899aad:	80 41 16 ff          	addb   $0xff,0x16(%rcx)
140899ab1:	75 0c                	jne    0x140899abf
140899ab3:	ff c7                	inc    %edi
140899ab5:	f6 41 12 04          	testb  $0x4,0x12(%rcx)
140899ab9:	0f 84 27 ff ff ff    	je     0x1408999e6
140899abf:	8b c5                	mov    %ebp,%eax
140899ac1:	48 83 c4 78          	add    $0x78,%rsp
140899ac5:	41 5f                	pop    %r15
140899ac7:	41 5e                	pop    %r14
140899ac9:	41 5d                	pop    %r13
140899acb:	41 5c                	pop    %r12
140899acd:	5f                   	pop    %rdi
140899ace:	5e                   	pop    %rsi
140899acf:	5d                   	pop    %rbp
140899ad0:	5b                   	pop    %rbx
140899ad1:	c3                   	ret
140899ad2:	cc                   	int3
140899ad3:	cc                   	int3
140899ad4:	cc                   	int3
140899ad5:	cc                   	int3
140899ad6:	cc                   	int3
140899ad7:	cc                   	int3
140899ad8:	cc                   	int3
140899ad9:	cc                   	int3
140899ada:	cc                   	int3
140899adb:	cc                   	int3
140899adc:	cc                   	int3
140899add:	cc                   	int3
140899ade:	cc                   	int3
140899adf:	cc                   	int3
140899ae0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140899ae5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140899aea:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140899aef:	57                   	push   %rdi
140899af0:	48 83 ec 30          	sub    $0x30,%rsp
140899af4:	49 63 f1             	movslq %r9d,%rsi
140899af7:	41 8b f8             	mov    %r8d,%edi
140899afa:	48 8b e9             	mov    %rcx,%rbp
140899afd:	48 85 d2             	test   %rdx,%rdx
140899b00:	74 7c                	je     0x140899b7e
140899b02:	0f b6 02             	movzbl (%rdx),%eax
140899b05:	3c b0                	cmp    $0xb0,%al
140899b07:	75 04                	jne    0x140899b0d
140899b09:	0f b6 42 02          	movzbl 0x2(%rdx),%eax
140899b0d:	3c b1                	cmp    $0xb1,%al
140899b0f:	75 09                	jne    0x140899b1a
140899b11:	48 8b 5a 20          	mov    0x20(%rdx),%rbx
140899b15:	48 8b c3             	mov    %rbx,%rax
140899b18:	eb 0c                	jmp    0x140899b26
140899b1a:	3c 8a                	cmp    $0x8a,%al
140899b1c:	75 60                	jne    0x140899b7e
140899b1e:	48 8b 5a 20          	mov    0x20(%rdx),%rbx
140899b22:	48 8b 43 20          	mov    0x20(%rbx),%rax
140899b26:	83 38 01             	cmpl   $0x1,(%rax)
140899b29:	7e 53                	jle    0x140899b7e
140899b2b:	f7 42 04 00 10 00 00 	testl  $0x1000,0x4(%rdx)
140899b32:	74 25                	je     0x140899b59
140899b34:	48 8b 59 10          	mov    0x10(%rcx),%rbx
140899b38:	e8 13 85 03 00       	call   0x1408d2050
140899b3d:	8d 56 ff             	lea    -0x1(%rsi),%edx
140899b40:	44 8b cf             	mov    %edi,%r9d
140899b43:	89 54 24 20          	mov    %edx,0x20(%rsp)
140899b47:	44 8b c0             	mov    %eax,%r8d
140899b4a:	ba 50 00 00 00       	mov    $0x50,%edx
140899b4f:	48 8b cb             	mov    %rbx,%rcx
140899b52:	e8 59 d1 06 00       	call   0x140906cb0
140899b57:	eb 2a                	jmp    0x140899b83
140899b59:	45 85 c9             	test   %r9d,%r9d
140899b5c:	7e 25                	jle    0x140899b83
140899b5e:	48 83 c3 08          	add    $0x8,%rbx
140899b62:	48 8b 13             	mov    (%rbx),%rdx
140899b65:	44 8b c7             	mov    %edi,%r8d
140899b68:	48 8b cd             	mov    %rbp,%rcx
140899b6b:	e8 30 0e 04 00       	call   0x1408da9a0
140899b70:	ff c7                	inc    %edi
140899b72:	48 8d 5b 20          	lea    0x20(%rbx),%rbx
140899b76:	48 83 ee 01          	sub    $0x1,%rsi
140899b7a:	75 e6                	jne    0x140899b62
140899b7c:	eb 05                	jmp    0x140899b83
140899b7e:	e8 1d 0e 04 00       	call   0x1408da9a0
140899b83:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140899b88:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140899b8d:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140899b92:	48 83 c4 30          	add    $0x30,%rsp
140899b96:	5f                   	pop    %rdi
140899b97:	c3                   	ret
140899b98:	cc                   	int3
140899b99:	cc                   	int3
140899b9a:	cc                   	int3
140899b9b:	cc                   	int3
140899b9c:	cc                   	int3
140899b9d:	cc                   	int3
140899b9e:	cc                   	int3
140899b9f:	cc                   	int3
140899ba0:	40 53                	rex push %rbx
140899ba2:	57                   	push   %rdi
140899ba3:	41 55                	push   %r13
140899ba5:	41 56                	push   %r14
140899ba7:	41 57                	push   %r15
140899ba9:	48 83 ec 30          	sub    $0x30,%rsp
140899bad:	f7 42 04 00 08 00 00 	testl  $0x800,0x4(%rdx)
140899bb4:	45 8b f1             	mov    %r9d,%r14d
140899bb7:	48 8b 79 10          	mov    0x10(%rcx),%rdi
140899bbb:	41 8b d8             	mov    %r8d,%ebx
140899bbe:	4c 8b fa             	mov    %rdx,%r15
140899bc1:	4c 8b e9             	mov    %rcx,%r13
140899bc4:	74 7e                	je     0x140899c44
140899bc6:	8b 52 08             	mov    0x8(%rdx),%edx
140899bc9:	48 63 8f 90 00 00 00 	movslq 0x90(%rdi),%rcx
140899bd0:	f7 da                	neg    %edx
140899bd2:	85 db                	test   %ebx,%ebx
140899bd4:	41 0f 44 57 08       	cmove  0x8(%r15),%edx
140899bd9:	45 33 c9             	xor    %r9d,%r9d
140899bdc:	39 8f 94 00 00 00    	cmp    %ecx,0x94(%rdi)
140899be2:	7f 25                	jg     0x140899c09
140899be4:	44 89 4c 24 20       	mov    %r9d,0x20(%rsp)
140899be9:	44 8b c2             	mov    %edx,%r8d
140899bec:	45 8b ce             	mov    %r14d,%r9d
140899bef:	ba 47 00 00 00       	mov    $0x47,%edx
140899bf4:	48 8b cf             	mov    %rdi,%rcx
140899bf7:	e8 a4 31 01 00       	call   0x1408acda0
140899bfc:	48 83 c4 30          	add    $0x30,%rsp
140899c00:	41 5f                	pop    %r15
140899c02:	41 5e                	pop    %r14
140899c04:	41 5d                	pop    %r13
140899c06:	5f                   	pop    %rdi
140899c07:	5b                   	pop    %rbx
140899c08:	c3                   	ret
140899c09:	8d 41 01             	lea    0x1(%rcx),%eax
140899c0c:	89 87 90 00 00 00    	mov    %eax,0x90(%rdi)
140899c12:	48 8d 0c 49          	lea    (%rcx,%rcx,2),%rcx
140899c16:	48 8b 87 88 00 00 00 	mov    0x88(%rdi),%rax
140899c1d:	c7 04 c8 47 00 00 00 	movl   $0x47,(%rax,%rcx,8)
140899c24:	89 54 c8 04          	mov    %edx,0x4(%rax,%rcx,8)
140899c28:	44 89 74 c8 08       	mov    %r14d,0x8(%rax,%rcx,8)