14089d889:	41 c1 e1 08          	shl    $0x8,%r9d
14089d88d:	44 0b c8             	or     %eax,%r9d
14089d890:	41 8b c9             	mov    %r9d,%ecx
14089d893:	45 2b c1             	sub    %r9d,%r8d
14089d896:	48 03 cd             	add    %rbp,%rcx
14089d899:	49 8d 14 39          	lea    (%r9,%rdi,1),%rdx
14089d89d:	e8 6e 17 64 00       	call   0x140edf010
14089d8a2:	41 0f b7 4d 18       	movzwl 0x18(%r13),%ecx
14089d8a7:	48 8d 14 3b          	lea    (%rbx,%rdi,1),%rdx
14089d8ab:	41 0f b7 45 12       	movzwl 0x12(%r13),%eax
14089d8b0:	4c 8d 04 48          	lea    (%rax,%rcx,2),%r8
14089d8b4:	33 c9                	xor    %ecx,%ecx
14089d8b6:	b8 64 00 00 00       	mov    $0x64,%eax
14089d8bb:	83 fe 01             	cmp    $0x1,%esi
14089d8be:	0f 44 c8             	cmove  %eax,%ecx
14089d8c1:	48 03 cd             	add    %rbp,%rcx
14089d8c4:	e8 47 17 64 00       	call   0x140edf010
14089d8c9:	49 8b cf             	mov    %r15,%rcx
14089d8cc:	41 c6 07 00          	movb   $0x0,(%r15)
14089d8d0:	e8 fb 7a ff ff       	call   0x1408953d0
14089d8d5:	48 8b 7c 24 28       	mov    0x28(%rsp),%rdi
14089d8da:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
14089d8df:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
14089d8e4:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
14089d8e9:	85 c0                	test   %eax,%eax
14089d8eb:	75 1b                	jne    0x14089d908
14089d8ed:	49 8b cf             	mov    %r15,%rcx
14089d8f0:	e8 db 6d ff ff       	call   0x1408946d0
14089d8f5:	85 c0                	test   %eax,%eax
14089d8f7:	75 0f                	jne    0x14089d908
14089d8f9:	41 38 44 24 21       	cmp    %al,0x21(%r12)
14089d8fe:	74 0b                	je     0x14089d90b
14089d900:	49 8b cf             	mov    %r15,%rcx
14089d903:	e8 98 90 02 00       	call   0x1408c69a0
14089d908:	41 89 06             	mov    %eax,(%r14)
14089d90b:	4c 8b 64 24 20       	mov    0x20(%rsp),%r12
14089d910:	48 83 c4 30          	add    $0x30,%rsp
14089d914:	41 5f                	pop    %r15
14089d916:	41 5e                	pop    %r14
14089d918:	41 5d                	pop    %r13
14089d91a:	c3                   	ret
14089d91b:	cc                   	int3
14089d91c:	cc                   	int3
14089d91d:	cc                   	int3
14089d91e:	cc                   	int3
14089d91f:	cc                   	int3
14089d920:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14089d925:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14089d92a:	57                   	push   %rdi
14089d92b:	48 83 ec 20          	sub    $0x20,%rsp
14089d92f:	49 63 d8             	movslq %r8d,%rbx
14089d932:	48 8b fa             	mov    %rdx,%rdi
14089d935:	48 8b f1             	mov    %rcx,%rsi
14089d938:	45 85 c9             	test   %r9d,%r9d
14089d93b:	74 59                	je     0x14089d996
14089d93d:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
14089d942:	f6 41 34 04          	testb  $0x4,0x34(%rcx)
14089d946:	4c 8b 49 28          	mov    0x28(%rcx),%r9
14089d94a:	74 1a                	je     0x14089d966
14089d94c:	8b 41 30             	mov    0x30(%rcx),%eax
14089d94f:	41 39 41 20          	cmp    %eax,0x20(%r9)
14089d953:	72 11                	jb     0x14089d966
14089d955:	41 83 b9 80 00 00 00 	cmpl   $0x0,0x80(%r9)
14089d95c:	00
14089d95d:	74 2f                	je     0x14089d98e
14089d95f:	e8 ac 6e 08 00       	call   0x140924810
14089d964:	eb 24                	jmp    0x14089d98a
14089d966:	41 8b 41 30          	mov    0x30(%r9),%eax
14089d96a:	85 c0                	test   %eax,%eax
14089d96c:	75 38                	jne    0x14089d9a6
14089d96e:	41 8b 81 c8 00 00 00 	mov    0xc8(%r9),%eax
14089d975:	41 39 81 b8 00 00 00 	cmp    %eax,0xb8(%r9)
14089d97c:	76 07                	jbe    0x14089d985
14089d97e:	e8 bd b4 01 00       	call   0x1408b8e40
14089d983:	eb 05                	jmp    0x14089d98a
14089d985:	e8 e6 c7 01 00       	call   0x1408ba170
14089d98a:	85 c0                	test   %eax,%eax
14089d98c:	75 18                	jne    0x14089d9a6
14089d98e:	48 8b d7             	mov    %rdi,%rdx
14089d991:	48 8b ce             	mov    %rsi,%rcx
14089d994:	eb 06                	jmp    0x14089d99c
14089d996:	48 8b d6             	mov    %rsi,%rdx
14089d999:	48 8b cf             	mov    %rdi,%rcx
14089d99c:	4c 8b c3             	mov    %rbx,%r8
14089d99f:	e8 6c 16 64 00       	call   0x140edf010
14089d9a4:	33 c0                	xor    %eax,%eax
14089d9a6:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14089d9ab:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14089d9b0:	48 83 c4 20          	add    $0x20,%rsp
14089d9b4:	5f                   	pop    %rdi
14089d9b5:	c3                   	ret
14089d9b6:	cc                   	int3
14089d9b7:	cc                   	int3
14089d9b8:	cc                   	int3
14089d9b9:	cc                   	int3
14089d9ba:	cc                   	int3
14089d9bb:	cc                   	int3
14089d9bc:	cc                   	int3
14089d9bd:	cc                   	int3
14089d9be:	cc                   	int3
14089d9bf:	cc                   	int3
14089d9c0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14089d9c5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14089d9ca:	57                   	push   %rdi
14089d9cb:	48 83 ec 30          	sub    $0x30,%rsp
14089d9cf:	48 8b 39             	mov    (%rcx),%rdi
14089d9d2:	49 8b f0             	mov    %r8,%rsi
14089d9d5:	48 8b d9             	mov    %rcx,%rbx
14089d9d8:	80 7f 67 00          	cmpb   $0x0,0x67(%rdi)
14089d9dc:	74 17                	je     0x14089d9f5
14089d9de:	c7 41 14 07 00 00 00 	movl   $0x7,0x14(%rcx)
14089d9e5:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14089d9ea:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
14089d9ef:	48 83 c4 30          	add    $0x30,%rsp
14089d9f3:	5f                   	pop    %rdi
14089d9f4:	c3                   	ret
14089d9f5:	48 8b 41 08          	mov    0x8(%rcx),%rax
14089d9f9:	48 83 38 00          	cmpq   $0x0,(%rax)
14089d9fd:	0f 85 ba 00 00 00    	jne    0x14089dabd
14089da03:	8b 41 18             	mov    0x18(%rcx),%eax
14089da06:	83 e0 03             	and    $0x3,%eax
14089da09:	74 4b                	je     0x14089da56
14089da0b:	4c 8b 4a 08          	mov    0x8(%rdx),%r9
14089da0f:	48 8d 0d 92 23 b1 00 	lea    0xb12392(%rip),%rcx        # 0x1413afda8
14089da16:	4c 8b 02             	mov    (%rdx),%r8
14089da19:	ff c8                	dec    %eax
14089da1b:	48 89 74 24 28       	mov    %rsi,0x28(%rsp)
14089da20:	48 8d 15 61 47 7b 00 	lea    0x7b4761(%rip),%rdx        # 0x141052188
14089da27:	48 8b 04 c1          	mov    (%rcx,%rax,8),%rax
14089da2b:	48 8b cf             	mov    %rdi,%rcx
14089da2e:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14089da33:	e8 f8 fc 04 00       	call   0x1408ed730
14089da38:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
14089da3c:	48 89 01             	mov    %rax,(%rcx)
14089da3f:	c7 43 14 01 00 00 00 	movl   $0x1,0x14(%rbx)
14089da46:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14089da4b:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
14089da50:	48 83 c4 30          	add    $0x30,%rsp
14089da54:	5f                   	pop    %rdi
14089da55:	c3                   	ret
14089da56:	f6 47 30 01          	testb  $0x1,0x30(%rdi)
14089da5a:	74 07                	je     0x14089da63
14089da5c:	b9 b0 0d 02 00       	mov    $0x20db0,%ecx
14089da61:	eb 52                	jmp    0x14089dab5
14089da63:	48 8b 42 08          	mov    0x8(%rdx),%rax
14089da67:	4c 8d 05 b6 c7 77 00 	lea    0x77c7b6(%rip),%r8        # 0x14101a224
14089da6e:	48 85 c0             	test   %rax,%rax
14089da71:	48 8d 15 30 47 7b 00 	lea    0x7b4730(%rip),%rdx        # 0x1410521a8
14089da78:	48 8b cf             	mov    %rdi,%rcx
14089da7b:	4c 0f 45 c0          	cmovne %rax,%r8
14089da7f:	e8 ac fc 04 00       	call   0x1408ed730
14089da84:	48 8b c8             	mov    %rax,%rcx
14089da87:	48 85 f6             	test   %rsi,%rsi
14089da8a:	74 1d                	je     0x14089daa9
14089da8c:	80 3e 00             	cmpb   $0x0,(%rsi)
14089da8f:	74 18                	je     0x14089daa9
14089da91:	4c 8b ce             	mov    %rsi,%r9
14089da94:	48 8d 15 2d 47 7b 00 	lea    0x7b472d(%rip),%rdx        # 0x1410521c8
14089da9b:	4c 8b c0             	mov    %rax,%r8
14089da9e:	48 8b cf             	mov    %rdi,%rcx
14089daa1:	e8 8a fc 04 00       	call   0x1408ed730
14089daa6:	48 8b c8             	mov    %rax,%rcx
14089daa9:	48 8b 43 08          	mov    0x8(%rbx),%rax
14089daad:	48 89 08             	mov    %rcx,(%rax)
14089dab0:	b9 b7 0d 02 00       	mov    $0x20db7,%ecx
14089dab5:	e8 36 6a 03 00       	call   0x1408d44f0
14089daba:	89 43 14             	mov    %eax,0x14(%rbx)
14089dabd:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14089dac2:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
14089dac7:	48 83 c4 30          	add    $0x30,%rsp
14089dacb:	5f                   	pop    %rdi
14089dacc:	c3                   	ret
14089dacd:	cc                   	int3
14089dace:	cc                   	int3
14089dacf:	cc                   	int3
14089dad0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14089dad5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14089dada:	57                   	push   %rdi
14089dadb:	48 83 ec 20          	sub    $0x20,%rsp
14089dadf:	48 8b 59 10          	mov    0x10(%rcx),%rbx
14089dae3:	48 8b f1             	mov    %rcx,%rsi
14089dae6:	48 63 fa             	movslq %edx,%rdi
14089dae9:	85 d2                	test   %edx,%edx
14089daeb:	7f 51                	jg     0x14089db3e
14089daed:	b8 00 90 00 00       	mov    $0x9000,%eax
14089daf2:	66 85 43 14          	test   %ax,0x14(%rbx)
14089daf6:	74 24                	je     0x14089db1c
14089daf8:	48 8b cb             	mov    %rbx,%rcx
14089dafb:	e8 30 b8 08 00       	call   0x140929330
14089db00:	48 c7 43 08 00 00 00 	movq   $0x0,0x8(%rbx)
14089db07:	00
14089db08:	48 8b 43 08          	mov    0x8(%rbx),%rax
14089db0c:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14089db11:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14089db16:	48 83 c4 20          	add    $0x20,%rsp
14089db1a:	5f                   	pop    %rdi
14089db1b:	c3                   	ret
14089db1c:	48 c7 43 08 00 00 00 	movq   $0x0,0x8(%rbx)
14089db23:	00
14089db24:	48 8b 43 08          	mov    0x8(%rbx),%rax
14089db28:	66 c7 43 14 01 00    	movw   $0x1,0x14(%rbx)
14089db2e:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14089db33:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14089db38:	48 83 c4 20          	add    $0x20,%rsp
14089db3c:	5f                   	pop    %rdi
14089db3d:	c3                   	ret
14089db3e:	39 7b 20             	cmp    %edi,0x20(%rbx)
14089db41:	7d 0f                	jge    0x14089db52
14089db43:	45 33 c0             	xor    %r8d,%r8d
14089db46:	8b d7                	mov    %edi,%edx
14089db48:	48 8b cb             	mov    %rbx,%rcx
14089db4b:	e8 30 55 07 00       	call   0x140913080
14089db50:	eb 0d                	jmp    0x14089db5f
14089db52:	48 8b 43 28          	mov    0x28(%rbx),%rax
14089db56:	66 83 63 14 2d       	andw   $0x2d,0x14(%rbx)
14089db5b:	48 89 43 08          	mov    %rax,0x8(%rbx)
14089db5f:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
14089db63:	66 c7 43 14 00 80    	movw   $0x8000,0x14(%rbx)
14089db69:	48 8b 46 08          	mov    0x8(%rsi),%rax
14089db6d:	48 89 03             	mov    %rax,(%rbx)
14089db70:	48 85 c9             	test   %rcx,%rcx
14089db73:	74 1e                	je     0x14089db93
14089db75:	4c 8b c7             	mov    %rdi,%r8
14089db78:	33 d2                	xor    %edx,%edx
14089db7a:	e8 31 1b 64 00       	call   0x140edf6b0
14089db7f:	48 8b 43 08          	mov    0x8(%rbx),%rax
14089db83:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14089db88:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14089db8d:	48 83 c4 20          	add    $0x20,%rsp
14089db91:	5f                   	pop    %rdi
14089db92:	c3                   	ret
14089db93:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14089db98:	48 8b c1             	mov    %rcx,%rax
14089db9b:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14089dba0:	48 83 c4 20          	add    $0x20,%rsp
14089dba4:	5f                   	pop    %rdi
14089dba5:	c3                   	ret
14089dba6:	cc                   	int3
14089dba7:	cc                   	int3
14089dba8:	cc                   	int3
14089dba9:	cc                   	int3
14089dbaa:	cc                   	int3
14089dbab:	cc                   	int3
14089dbac:	cc                   	int3
14089dbad:	cc                   	int3
14089dbae:	cc                   	int3
14089dbaf:	cc                   	int3
14089dbb0:	40 55                	rex push %rbp
14089dbb2:	57                   	push   %rdi
14089dbb3:	41 54                	push   %r12
14089dbb5:	41 56                	push   %r14
14089dbb7:	41 57                	push   %r15
14089dbb9:	48 83 ec 30          	sub    $0x30,%rsp
14089dbbd:	45 0f b6 f0          	movzbl %r8b,%r14d
14089dbc1:	4d 8b e1             	mov    %r9,%r12
14089dbc4:	4c 8b fa             	mov    %rdx,%r15
14089dbc7:	48 8b f9             	mov    %rcx,%rdi
14089dbca:	41 8b ee             	mov    %r14d,%ebp
14089dbcd:	41 8d 46 fc          	lea    -0x4(%r14),%eax
14089dbd1:	a9 fb ff ff ff       	test   $0xfffffffb,%eax
14089dbd6:	75 07                	jne    0x14089dbdf
14089dbd8:	bd 02 00 00 00       	mov    $0x2,%ebp
14089dbdd:	eb 0d                	jmp    0x14089dbec
14089dbdf:	41 8d 46 ff          	lea    -0x1(%r14),%eax
14089dbe3:	83 f8 02             	cmp    $0x2,%eax
14089dbe6:	0f 87 b8 01 00 00    	ja     0x14089dda4
14089dbec:	48 89 74 24 68       	mov    %rsi,0x68(%rsp)
14089dbf1:	4c 89 6c 24 70       	mov    %r13,0x70(%rsp)
14089dbf6:	4d 85 ff             	test   %r15,%r15
14089dbf9:	74 28                	je     0x14089dc23
14089dbfb:	48 81 c1 68 02 00 00 	add    $0x268,%rcx
14089dc02:	45 33 c0             	xor    %r8d,%r8d
14089dc05:	e8 06 7a 00 00       	call   0x1408a5610
14089dc0a:	48 8b 70 10          	mov    0x10(%rax),%rsi
14089dc0e:	48 85 f6             	test   %rsi,%rsi
14089dc11:	74 14                	je     0x14089dc27
14089dc13:	8b c5                	mov    %ebp,%eax
14089dc15:	48 8d 0c 80          	lea    (%rax,%rax,4),%rcx
14089dc19:	48 8d 34 ce          	lea    (%rsi,%rcx,8),%rsi
14089dc1d:	48 83 c6 d8          	add    $0xffffffffffffffd8,%rsi
14089dc21:	eb 04                	jmp    0x14089dc27
14089dc23:	48 8b 71 10          	mov    0x10(%rcx),%rsi
14089dc27:	45 33 ed             	xor    %r13d,%r13d
14089dc2a:	48 85 f6             	test   %rsi,%rsi
14089dc2d:	0f 84 f7 00 00 00    	je     0x14089dd2a
14089dc33:	4c 39 6e 18          	cmp    %r13,0x18(%rsi)
14089dc37:	0f 84 ed 00 00 00    	je     0x14089dd2a
14089dc3d:	44 39 af d8 00 00 00 	cmp    %r13d,0xd8(%rdi)
14089dc44:	74 30                	je     0x14089dc76
14089dc46:	4c 8d 05 43 5b 7b 00 	lea    0x7b5b43(%rip),%r8        # 0x141053790
14089dc4d:	ba 05 00 00 00       	mov    $0x5,%edx
14089dc52:	48 8b cf             	mov    %rdi,%rcx
14089dc55:	e8 86 bd 03 00       	call   0x1408d99e0
14089dc5a:	b8 05 00 00 00       	mov    $0x5,%eax
14089dc5f:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
14089dc64:	4c 8b 6c 24 70       	mov    0x70(%rsp),%r13
14089dc69:	48 83 c4 30          	add    $0x30,%rsp
14089dc6d:	41 5f                	pop    %r15
14089dc6f:	41 5e                	pop    %r14
14089dc71:	41 5c                	pop    %r12
14089dc73:	5f                   	pop    %rdi
14089dc74:	5d                   	pop    %rbp
14089dc75:	c3                   	ret
14089dc76:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
14089dc7a:	48 85 c9             	test   %rcx,%rcx
14089dc7d:	74 1c                	je     0x14089dc9b
14089dc7f:	90                   	nop
14089dc80:	8b 81 c8 00 00 00    	mov    0xc8(%rcx),%eax
14089dc86:	83 e0 fd             	and    $0xfffffffd,%eax
14089dc89:	83 c8 01             	or     $0x1,%eax
14089dc8c:	89 81 c8 00 00 00    	mov    %eax,0xc8(%rcx)
14089dc92:	48 8b 49 10          	mov    0x10(%rcx),%rcx
14089dc96:	48 85 c9             	test   %rcx,%rcx
14089dc99:	75 e5                	jne    0x14089dc80
14089dc9b:	0f b6 46 08          	movzbl 0x8(%rsi),%eax
14089dc9f:	83 e0 f7             	and    $0xfffffff7,%eax
14089dca2:	3b c5                	cmp    %ebp,%eax
14089dca4:	0f 85 80 00 00 00    	jne    0x14089dd2a
14089dcaa:	48 8d 8f 68 02 00 00 	lea    0x268(%rdi),%rcx
14089dcb1:	48 89 5c 24 60       	mov    %rbx,0x60(%rsp)
14089dcb6:	45 33 c0             	xor    %r8d,%r8d
14089dcb9:	49 8b d7             	mov    %r15,%rdx
14089dcbc:	e8 4f 79 00 00       	call   0x1408a5610
14089dcc1:	48 8b 58 10          	mov    0x10(%rax),%rbx
14089dcc5:	0f b6 46 08          	movzbl 0x8(%rsi),%eax
14089dcc9:	38 43 08             	cmp    %al,0x8(%rbx)
14089dccc:	75 17                	jne    0x14089dce5
14089dcce:	48 8b 43 20          	mov    0x20(%rbx),%rax
14089dcd2:	48 85 c0             	test   %rax,%rax
14089dcd5:	74 0a                	je     0x14089dce1
14089dcd7:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
14089dcdb:	ff 15 3f 5d 6e 00    	call   *0x6e5d3f(%rip)        # 0x140f83a20
14089dce1:	4c 89 6b 18          	mov    %r13,0x18(%rbx)
14089dce5:	0f b6 46 08          	movzbl 0x8(%rsi),%eax
14089dce9:	38 43 30             	cmp    %al,0x30(%rbx)
14089dcec:	75 17                	jne    0x14089dd05
14089dcee:	48 8b 43 48          	mov    0x48(%rbx),%rax
14089dcf2:	48 85 c0             	test   %rax,%rax
14089dcf5:	74 0a                	je     0x14089dd01
14089dcf7:	48 8b 4b 38          	mov    0x38(%rbx),%rcx
14089dcfb:	ff 15 1f 5d 6e 00    	call   *0x6e5d1f(%rip)        # 0x140f83a20
14089dd01:	4c 89 6b 40          	mov    %r13,0x40(%rbx)
14089dd05:	0f b6 46 08          	movzbl 0x8(%rsi),%eax
14089dd09:	38 43 58             	cmp    %al,0x58(%rbx)
14089dd0c:	75 17                	jne    0x14089dd25
14089dd0e:	48 8b 43 70          	mov    0x70(%rbx),%rax
14089dd12:	48 85 c0             	test   %rax,%rax
14089dd15:	74 0a                	je     0x14089dd21
14089dd17:	48 8b 4b 60          	mov    0x60(%rbx),%rcx
14089dd1b:	ff 15 ff 5c 6e 00    	call   *0x6e5cff(%rip)        # 0x140f83a20