140908d0d:	0f b7 77 14          	movzwl 0x14(%rdi),%esi
140908d11:	40 f6 c6 12          	test   $0x12,%sil
140908d15:	75 11                	jne    0x140908d28
140908d17:	45 33 c0             	xor    %r8d,%r8d
140908d1a:	41 0f b6 d4          	movzbl %r12b,%edx
140908d1e:	48 8b cf             	mov    %rdi,%rcx
140908d21:	e8 aa ac 00 00       	call   0x1409139d0
140908d26:	eb 0d                	jmp    0x140908d35
140908d28:	66 85 f0             	test   %si,%ax
140908d2b:	74 1c                	je     0x140908d49
140908d2d:	48 8b cf             	mov    %rdi,%rcx
140908d30:	e8 4b a0 00 00       	call   0x140912d80
140908d35:	85 c0                	test   %eax,%eax
140908d37:	0f 85 05 7d 00 00    	jne    0x140910a42
140908d3d:	0f b7 77 14          	movzwl 0x14(%rdi),%esi
140908d41:	b8 fd ff 00 00       	mov    $0xfffd,%eax
140908d46:	66 23 f0             	and    %ax,%si
140908d49:	8b 57 10             	mov    0x10(%rdi),%edx
140908d4c:	41 03 56 10          	add    0x10(%r14),%edx
140908d50:	49 63 85 88 00 00 00 	movslq 0x88(%r13),%rax
140908d57:	4c 63 e2             	movslq %edx,%r12
140908d5a:	4c 3b e0             	cmp    %rax,%r12
140908d5d:	0f 8f b2 79 00 00    	jg     0x140910715
140908d63:	33 c9                	xor    %ecx,%ecx
140908d65:	44 8b c1             	mov    %ecx,%r8d
140908d68:	48 3b df             	cmp    %rdi,%rbx
140908d6b:	48 8b cb             	mov    %rbx,%rcx
140908d6e:	41 0f 94 c0          	sete   %r8b
140908d72:	83 c2 02             	add    $0x2,%edx
140908d75:	e8 06 a3 00 00       	call   0x140913080
140908d7a:	85 c0                	test   %eax,%eax
140908d7c:	0f 85 c0 7c 00 00    	jne    0x140910a42
140908d82:	0f b7 43 14          	movzwl 0x14(%rbx),%eax
140908d86:	b9 42 f2 00 00       	mov    $0xf242,%ecx
140908d8b:	66 23 c1             	and    %cx,%ax
140908d8e:	66 83 c8 02          	or     $0x2,%ax
140908d92:	66 89 43 14          	mov    %ax,0x14(%rbx)
140908d96:	48 3b df             	cmp    %rdi,%rbx
140908d99:	74 15                	je     0x140908db0
140908d9b:	4c 63 47 10          	movslq 0x10(%rdi),%r8
140908d9f:	48 8b 57 08          	mov    0x8(%rdi),%rdx
140908da3:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140908da7:	e8 64 62 5d 00       	call   0x140edf010
140908dac:	66 89 77 14          	mov    %si,0x14(%rdi)
140908db0:	48 63 4f 10          	movslq 0x10(%rdi),%rcx
140908db4:	48 03 4b 08          	add    0x8(%rbx),%rcx
140908db8:	4d 63 46 10          	movslq 0x10(%r14),%r8
140908dbc:	49 8b 56 08          	mov    0x8(%r14),%rdx
140908dc0:	e8 4b 62 5d 00       	call   0x140edf010
140908dc5:	0f b6 7c 24 30       	movzbl 0x30(%rsp),%edi
140908dca:	66 45 89 7e 14       	mov    %r15w,0x14(%r14)
140908dcf:	40 80 ff 01          	cmp    $0x1,%dil
140908dd3:	76 04                	jbe    0x140908dd9
140908dd5:	49 83 e4 fe          	and    $0xfffffffffffffffe,%r12
140908dd9:	48 8b 43 08          	mov    0x8(%rbx),%rax
140908ddd:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140908de2:	4c 8b 74 24 68       	mov    0x68(%rsp),%r14
140908de7:	4c 8b 7c 24 38       	mov    0x38(%rsp),%r15
140908dec:	41 c6 04 04 00       	movb   $0x0,(%r12,%rax,1)
140908df1:	48 8b 43 08          	mov    0x8(%rbx),%rax
140908df5:	41 c6 44 04 01 00    	movb   $0x0,0x1(%r12,%rax,1)
140908dfb:	b8 00 02 00 00       	mov    $0x200,%eax
140908e00:	66 09 43 14          	or     %ax,0x14(%rbx)
140908e04:	44 89 63 10          	mov    %r12d,0x10(%rbx)
140908e08:	45 33 db             	xor    %r11d,%r11d
140908e0b:	44 8b 64 24 40       	mov    0x40(%rsp),%r12d
140908e10:	40 88 7b 16          	mov    %dil,0x16(%rbx)
140908e14:	e9 18 37 00 00       	jmp    0x14090c531
140908e19:	4c 8b 6c 24 38       	mov    0x38(%rsp),%r13
140908e1e:	49 63 45 04          	movslq 0x4(%r13),%rax
140908e22:	48 6b f8 38          	imul   $0x38,%rax,%rdi
140908e26:	49 03 fe             	add    %r14,%rdi
140908e29:	0f b7 5f 14          	movzwl 0x14(%rdi),%ebx
140908e2d:	f6 c3 2c             	test   $0x2c,%bl
140908e30:	75 19                	jne    0x140908e4b
140908e32:	f6 c3 12             	test   $0x12,%bl
140908e35:	74 10                	je     0x140908e47
140908e37:	48 8b cf             	mov    %rdi,%rcx
140908e3a:	e8 81 2c f9 ff       	call   0x14089bac0
140908e3f:	0f b7 d8             	movzwl %ax,%ebx
140908e42:	45 33 db             	xor    %r11d,%r11d
140908e45:	eb 04                	jmp    0x140908e4b
140908e47:	41 0f b7 db          	movzwl %r11w,%ebx
140908e4b:	49 63 45 08          	movslq 0x8(%r13),%rax
140908e4f:	48 6b f0 38          	imul   $0x38,%rax,%rsi
140908e53:	49 03 f6             	add    %r14,%rsi
140908e56:	0f b7 4e 14          	movzwl 0x14(%rsi),%ecx
140908e5a:	f6 c1 2c             	test   $0x2c,%cl
140908e5d:	75 15                	jne    0x140908e74
140908e5f:	f6 c1 12             	test   $0x12,%cl
140908e62:	74 0d                	je     0x140908e71
140908e64:	48 8b ce             	mov    %rsi,%rcx
140908e67:	e8 54 2c f9 ff       	call   0x14089bac0
140908e6c:	0f b7 c8             	movzwl %ax,%ecx
140908e6f:	eb 03                	jmp    0x140908e74
140908e71:	41 8b cb             	mov    %r11d,%ecx
140908e74:	49 8b c5             	mov    %r13,%rax
140908e77:	22 cb                	and    %bl,%cl
140908e79:	48 63 40 0c          	movslq 0xc(%rax),%rax
140908e7d:	4c 6b f0 38          	imul   $0x38,%rax,%r14
140908e81:	0f b7 46 14          	movzwl 0x14(%rsi),%eax
140908e85:	4c 03 74 24 68       	add    0x68(%rsp),%r14
140908e8a:	66 0b 47 14          	or     0x14(%rdi),%ax
140908e8e:	f6 c1 04             	test   $0x4,%cl
140908e91:	0f 84 f1 01 00 00    	je     0x140909088
140908e97:	4c 8b 0f             	mov    (%rdi),%r9
140908e9a:	49 8b c5             	mov    %r13,%rax
140908e9d:	4c 8b 06             	mov    (%rsi),%r8
140908ea0:	0f b6 08             	movzbl (%rax),%ecx
140908ea3:	83 e9 6a             	sub    $0x6a,%ecx
140908ea6:	0f 84 87 01 00 00    	je     0x140909033
140908eac:	83 e9 01             	sub    $0x1,%ecx
140908eaf:	0f 84 fe 00 00 00    	je     0x140908fb3
140908eb5:	83 e9 01             	sub    $0x1,%ecx
140908eb8:	74 5e                	je     0x140908f18
140908eba:	83 f9 01             	cmp    $0x1,%ecx
140908ebd:	74 27                	je     0x140908ee6
140908ebf:	4d 85 c9             	test   %r9,%r9
140908ec2:	0f 84 6c 03 00 00    	je     0x140909234
140908ec8:	49 83 f9 ff          	cmp    $0xffffffffffffffff,%r9
140908ecc:	49 8b c0             	mov    %r8,%rax
140908ecf:	41 bf 01 00 00 00    	mov    $0x1,%r15d
140908ed5:	48 99                	cqto
140908ed7:	4d 0f 44 cf          	cmove  %r15,%r9
140908edb:	49 f7 f9             	idiv   %r9
140908ede:	4c 8b c2             	mov    %rdx,%r8
140908ee1:	e9 89 01 00 00       	jmp    0x14090906f
140908ee6:	4d 85 c9             	test   %r9,%r9
140908ee9:	0f 84 45 03 00 00    	je     0x140909234
140908eef:	49 83 f9 ff          	cmp    $0xffffffffffffffff,%r9
140908ef3:	75 13                	jne    0x140908f08
140908ef5:	48 b9 00 00 00 00 00 	movabs $0x8000000000000000,%rcx
140908efc:	00 00 80
140908eff:	4c 3b c1             	cmp    %rcx,%r8
140908f02:	0f 84 88 01 00 00    	je     0x140909090
140908f08:	49 8b c0             	mov    %r8,%rax
140908f0b:	48 99                	cqto
140908f0d:	49 f7 f9             	idiv   %r9
140908f10:	4c 8b c0             	mov    %rax,%r8
140908f13:	e9 57 01 00 00       	jmp    0x14090906f
140908f18:	4d 85 c9             	test   %r9,%r9
140908f1b:	7e 31                	jle    0x140908f4e
140908f1d:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
140908f24:	ff ff 7f
140908f27:	48 99                	cqto
140908f29:	49 f7 f9             	idiv   %r9
140908f2c:	4c 3b c0             	cmp    %rax,%r8
140908f2f:	0f 8f 5b 01 00 00    	jg     0x140909090
140908f35:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140908f3c:	00 00 80
140908f3f:	48 99                	cqto
140908f41:	49 f7 f9             	idiv   %r9
140908f44:	4c 3b c0             	cmp    %rax,%r8
140908f47:	7d 61                	jge    0x140908faa
140908f49:	e9 42 01 00 00       	jmp    0x140909090
140908f4e:	79 5a                	jns    0x140908faa
140908f50:	4d 85 c0             	test   %r8,%r8
140908f53:	7e 19                	jle    0x140908f6e
140908f55:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140908f5c:	00 00 80
140908f5f:	48 99                	cqto
140908f61:	49 f7 f8             	idiv   %r8
140908f64:	4c 3b c8             	cmp    %rax,%r9
140908f67:	7d 41                	jge    0x140908faa
140908f69:	e9 22 01 00 00       	jmp    0x140909090
140908f6e:	79 3a                	jns    0x140908faa
140908f70:	48 b9 00 00 00 00 00 	movabs $0x8000000000000000,%rcx
140908f77:	00 00 80
140908f7a:	4c 3b c9             	cmp    %rcx,%r9
140908f7d:	0f 84 0d 01 00 00    	je     0x140909090
140908f83:	4c 3b c1             	cmp    %rcx,%r8
140908f86:	0f 84 04 01 00 00    	je     0x140909090
140908f8c:	48 b8 01 00 00 00 00 	movabs $0x8000000000000001,%rax
140908f93:	00 00 80
140908f96:	49 8b c8             	mov    %r8,%rcx
140908f99:	48 99                	cqto
140908f9b:	48 f7 d9             	neg    %rcx
140908f9e:	49 f7 f9             	idiv   %r9
140908fa1:	48 3b c8             	cmp    %rax,%rcx
140908fa4:	0f 8f e6 00 00 00    	jg     0x140909090
140908faa:	4d 0f af c1          	imul   %r9,%r8
140908fae:	e9 bc 00 00 00       	jmp    0x14090906f
140908fb3:	48 b9 00 00 00 00 00 	movabs $0x8000000000000000,%rcx
140908fba:	00 00 80
140908fbd:	4c 3b c9             	cmp    %rcx,%r9
140908fc0:	75 11                	jne    0x140908fd3
140908fc2:	4d 85 c0             	test   %r8,%r8
140908fc5:	0f 89 c5 00 00 00    	jns    0x140909090
140908fcb:	4c 2b c1             	sub    %rcx,%r8
140908fce:	e9 9c 00 00 00       	jmp    0x14090906f
140908fd3:	49 f7 d9             	neg    %r9
140908fd6:	78 22                	js     0x140908ffa
140908fd8:	4d 85 c0             	test   %r8,%r8
140908fdb:	7e 43                	jle    0x140909020
140908fdd:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
140908fe4:	ff ff 7f
140908fe7:	49 2b c0             	sub    %r8,%rax
140908fea:	49 3b c1             	cmp    %r9,%rax
140908fed:	7d 31                	jge    0x140909020
140908fef:	41 bf 01 00 00 00    	mov    $0x1,%r15d
140908ff5:	41 8b c7             	mov    %r15d,%eax
140908ff8:	eb 33                	jmp    0x14090902d
140908ffa:	4d 85 c0             	test   %r8,%r8
140908ffd:	79 21                	jns    0x140909020
140908fff:	48 b8 01 00 00 00 00 	movabs $0x8000000000000001,%rax
140909006:	00 00 80
140909009:	49 8d 49 01          	lea    0x1(%r9),%rcx
14090900d:	49 2b c0             	sub    %r8,%rax
140909010:	48 3b c1             	cmp    %rcx,%rax
140909013:	7e 0b                	jle    0x140909020
140909015:	41 bf 01 00 00 00    	mov    $0x1,%r15d
14090901b:	41 8b c7             	mov    %r15d,%eax
14090901e:	eb 0d                	jmp    0x14090902d
140909020:	4d 03 c1             	add    %r9,%r8
140909023:	41 bf 01 00 00 00    	mov    $0x1,%r15d
140909029:	33 c9                	xor    %ecx,%ecx
14090902b:	8b c1                	mov    %ecx,%eax
14090902d:	85 c0                	test   %eax,%eax
14090902f:	75 65                	jne    0x140909096
140909031:	eb 3c                	jmp    0x14090906f
140909033:	4d 85 c9             	test   %r9,%r9
140909036:	78 19                	js     0x140909051
140909038:	4d 85 c0             	test   %r8,%r8
14090903b:	7e 2f                	jle    0x14090906c
14090903d:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
140909044:	ff ff 7f
140909047:	49 2b c0             	sub    %r8,%rax
14090904a:	49 3b c1             	cmp    %r9,%rax
14090904d:	7d 1d                	jge    0x14090906c
14090904f:	eb 3f                	jmp    0x140909090
140909051:	4d 85 c0             	test   %r8,%r8
140909054:	79 16                	jns    0x14090906c
140909056:	48 b8 01 00 00 00 00 	movabs $0x8000000000000001,%rax
14090905d:	00 00 80
140909060:	49 8d 49 01          	lea    0x1(%r9),%rcx
140909064:	49 2b c0             	sub    %r8,%rax
140909067:	48 3b c1             	cmp    %rcx,%rax
14090906a:	7f 24                	jg     0x140909090
14090906c:	4d 03 c1             	add    %r9,%r8
14090906f:	4d 89 06             	mov    %r8,(%r14)
140909072:	b9 44 f2 00 00       	mov    $0xf244,%ecx
140909077:	41 0f b7 46 14       	movzwl 0x14(%r14),%eax
14090907c:	66 23 c1             	and    %cx,%ax
14090907f:	66 83 c8 04          	or     $0x4,%ax
140909083:	e9 8d 01 00 00       	jmp    0x140909215
140909088:	a8 01                	test   $0x1,%al
14090908a:	0f 85 a4 01 00 00    	jne    0x140909234
140909090:	41 bf 01 00 00 00    	mov    $0x1,%r15d
140909096:	0f b7 47 14          	movzwl 0x14(%rdi),%eax
14090909a:	a8 08                	test   $0x8,%al
14090909c:	74 06                	je     0x1409090a4
14090909e:	f2 0f 10 17          	movsd  (%rdi),%xmm2
1409090a2:	eb 23                	jmp    0x1409090c7
1409090a4:	a8 24                	test   $0x24,%al
1409090a6:	74 0a                	je     0x1409090b2
1409090a8:	0f 57 d2             	xorps  %xmm2,%xmm2
1409090ab:	f2 48 0f 2a 17       	cvtsi2sdq (%rdi),%xmm2
1409090b0:	eb 15                	jmp    0x1409090c7
1409090b2:	a8 12                	test   $0x12,%al
1409090b4:	74 0d                	je     0x1409090c3
1409090b6:	48 8b cf             	mov    %rdi,%rcx
1409090b9:	e8 22 a9 fa ff       	call   0x1408b39e0
1409090be:	0f 28 d0             	movaps %xmm0,%xmm2
1409090c1:	eb 04                	jmp    0x1409090c7
1409090c3:	41 0f 28 d1          	movaps %xmm9,%xmm2
1409090c7:	0f b7 46 14          	movzwl 0x14(%rsi),%eax
1409090cb:	a8 08                	test   $0x8,%al
1409090cd:	74 06                	je     0x1409090d5
1409090cf:	f2 0f 10 06          	movsd  (%rsi),%xmm0
1409090d3:	eb 20                	jmp    0x1409090f5
1409090d5:	a8 24                	test   $0x24,%al
1409090d7:	74 0a                	je     0x1409090e3
1409090d9:	0f 57 c0             	xorps  %xmm0,%xmm0
1409090dc:	f2 48 0f 2a 06       	cvtsi2sdq (%rsi),%xmm0
1409090e1:	eb 12                	jmp    0x1409090f5
1409090e3:	a8 12                	test   $0x12,%al
1409090e5:	74 0a                	je     0x1409090f1
1409090e7:	48 8b ce             	mov    %rsi,%rcx
1409090ea:	e8 f1 a8 fa ff       	call   0x1408b39e0
1409090ef:	eb 04                	jmp    0x1409090f5
1409090f1:	41 0f 28 c1          	movaps %xmm9,%xmm0
1409090f5:	49 8b c5             	mov    %r13,%rax
1409090f8:	0f b6 08             	movzbl (%rax),%ecx
1409090fb:	83 e9 6a             	sub    $0x6a,%ecx
1409090fe:	0f 84 cb 00 00 00    	je     0x1409091cf
140909104:	83 e9 01             	sub    $0x1,%ecx
140909107:	0f 84 bc 00 00 00    	je     0x1409091c9
14090910d:	83 e9 01             	sub    $0x1,%ecx
140909110:	0f 84 ad 00 00 00    	je     0x1409091c3
140909116:	83 f9 01             	cmp    $0x1,%ecx
140909119:	0f 84 95 00 00 00    	je     0x1409091b4
14090911f:	0f b7 47 14          	movzwl 0x14(%rdi),%eax
140909123:	a8 24                	test   $0x24,%al
140909125:	74 07                	je     0x14090912e
140909127:	48 8b 1f             	mov    (%rdi),%rbx
14090912a:	33 c9                	xor    %ecx,%ecx
14090912c:	eb 32                	jmp    0x140909160
14090912e:	a8 08                	test   $0x8,%al
140909130:	74 10                	je     0x140909142
140909132:	f2 0f 10 07          	movsd  (%rdi),%xmm0
140909136:	e8 e5 62 f9 ff       	call   0x14089f420
14090913b:	48 8b d8             	mov    %rax,%rbx
14090913e:	33 c9                	xor    %ecx,%ecx
140909140:	eb 1e                	jmp    0x140909160
140909142:	a8 12                	test   $0x12,%al
140909144:	74 16                	je     0x14090915c
140909146:	48 83 7f 08 00       	cmpq   $0x0,0x8(%rdi)
14090914b:	74 0f                	je     0x14090915c
14090914d:	48 8b cf             	mov    %rdi,%rcx
140909150:	e8 5b a8 fa ff       	call   0x1408b39b0
140909155:	48 8b d8             	mov    %rax,%rbx
140909158:	33 c9                	xor    %ecx,%ecx
14090915a:	eb 04                	jmp    0x140909160
14090915c:	33 c9                	xor    %ecx,%ecx
14090915e:	8b d9                	mov    %ecx,%ebx
140909160:	0f b7 46 14          	movzwl 0x14(%rsi),%eax
140909164:	a8 24                	test   $0x24,%al
140909166:	74 05                	je     0x14090916d
140909168:	48 8b 06             	mov    (%rsi),%rax
14090916b:	eb 27                	jmp    0x140909194
14090916d:	a8 08                	test   $0x8,%al
14090916f:	74 0b                	je     0x14090917c
140909171:	f2 0f 10 06          	movsd  (%rsi),%xmm0
140909175:	e8 a6 62 f9 ff       	call   0x14089f420
14090917a:	eb 18                	jmp    0x140909194
14090917c:	a8 12                	test   $0x12,%al
14090917e:	74 11                	je     0x140909191
140909180:	48 83 7e 08 00       	cmpq   $0x0,0x8(%rsi)
140909185:	74 0a                	je     0x140909191
140909187:	48 8b ce             	mov    %rsi,%rcx
14090918a:	e8 21 a8 fa ff       	call   0x1408b39b0
14090918f:	eb 03                	jmp    0x140909194
140909191:	48 8b c1             	mov    %rcx,%rax
140909194:	48 85 db             	test   %rbx,%rbx
140909197:	0f 84 97 00 00 00    	je     0x140909234
14090919d:	48 83 fb ff          	cmp    $0xffffffffffffffff,%rbx
1409091a1:	48 99                	cqto
1409091a3:	0f 57 c0             	xorps  %xmm0,%xmm0
1409091a6:	49 0f 44 df          	cmove  %r15,%rbx
1409091aa:	48 f7 fb             	idiv   %rbx
1409091ad:	f2 48 0f 2a c2       	cvtsi2sd %rdx,%xmm0
1409091b2:	eb 1f                	jmp    0x1409091d3
1409091b4:	66 41 0f 2e d1       	ucomisd %xmm9,%xmm2
1409091b9:	7a 02                	jp     0x1409091bd
1409091bb:	74 77                	je     0x140909234
1409091bd:	f2 0f 5e c2          	divsd  %xmm2,%xmm0
1409091c1:	eb 10                	jmp    0x1409091d3
1409091c3:	f2 0f 59 c2          	mulsd  %xmm2,%xmm0
1409091c7:	eb 0a                	jmp    0x1409091d3
1409091c9:	f2 0f 5c c2          	subsd  %xmm2,%xmm0