140960ea3:	75 09                	jne    0x140960eae
140960ea5:	49 8b cc             	mov    %r12,%rcx
140960ea8:	e8 e3 76 88 ff       	call   0x1401e8590
140960ead:	90                   	nop
140960eae:	49 8b 04 24          	mov    (%r12),%rax
140960eb2:	48 63 48 04          	movslq 0x4(%rax),%rcx
140960eb6:	4a 8b 4c 21 48       	mov    0x48(%rcx,%r12,1),%rcx
140960ebb:	48 85 c9             	test   %rcx,%rcx
140960ebe:	74 0e                	je     0x140960ece
140960ec0:	48 8b 01             	mov    (%rcx),%rax
140960ec3:	48 8b 40 10          	mov    0x10(%rax),%rax
140960ec7:	ff 15 53 2b 62 00    	call   *0x622b53(%rip)        # 0x140f83a20
140960ecd:	90                   	nop
140960ece:	48 8b c7             	mov    %rdi,%rax
140960ed1:	48 83 c4 70          	add    $0x70,%rsp
140960ed5:	41 5f                	pop    %r15
140960ed7:	41 5e                	pop    %r14
140960ed9:	41 5d                	pop    %r13
140960edb:	41 5c                	pop    %r12
140960edd:	5f                   	pop    %rdi
140960ede:	5e                   	pop    %rsi
140960edf:	5b                   	pop    %rbx
140960ee0:	c3                   	ret
140960ee1:	41 f6 c6 04          	test   $0x4,%r14b
140960ee5:	74 09                	je     0x140960ef0
140960ee7:	48 8d 1d fa 87 64 00 	lea    0x6487fa(%rip),%rbx        # 0x140fa96e8
140960eee:	eb 16                	jmp    0x140960f06
140960ef0:	41 f6 c6 02          	test   $0x2,%r14b
140960ef4:	48 8d 1d 05 88 64 00 	lea    0x648805(%rip),%rbx        # 0x140fa9700
140960efb:	48 8d 05 16 88 64 00 	lea    0x648816(%rip),%rax        # 0x140fa9718
140960f02:	48 0f 44 d8          	cmove  %rax,%rbx
140960f06:	ba 01 00 00 00       	mov    $0x1,%edx
140960f0b:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140960f10:	e8 ab 68 8a ff       	call   0x1402077c0
140960f15:	4c 8b c0             	mov    %rax,%r8
140960f18:	48 8b d3             	mov    %rbx,%rdx
140960f1b:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140960f20:	e8 0b f9 87 ff       	call   0x1401e0830
140960f25:	48 8d 15 ec fd a3 00 	lea    0xa3fdec(%rip),%rdx        # 0x1413a0d18
140960f2c:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140960f31:	e8 e2 b8 4b 00       	call   0x140e1c818
140960f36:	cc                   	int3
140960f37:	cc                   	int3
140960f38:	cc                   	int3
140960f39:	cc                   	int3
140960f3a:	cc                   	int3
140960f3b:	cc                   	int3
140960f3c:	cc                   	int3
140960f3d:	cc                   	int3
140960f3e:	cc                   	int3
140960f3f:	cc                   	int3
140960f40:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140960f45:	53                   	push   %rbx
140960f46:	56                   	push   %rsi
140960f47:	57                   	push   %rdi
140960f48:	41 54                	push   %r12
140960f4a:	41 55                	push   %r13
140960f4c:	41 56                	push   %r14
140960f4e:	41 57                	push   %r15
140960f50:	48 83 ec 70          	sub    $0x70,%rsp
140960f54:	4c 8b e2             	mov    %rdx,%r12
140960f57:	48 8b f1             	mov    %rcx,%rsi
140960f5a:	33 d2                	xor    %edx,%edx
140960f5c:	8b da                	mov    %edx,%ebx
140960f5e:	89 94 24 c0 00 00 00 	mov    %edx,0xc0(%rsp)
140960f65:	49 c7 c6 ff ff ff ff 	mov    $0xffffffffffffffff,%r14
140960f6c:	0f 1f 40 00          	nopl   0x0(%rax)
140960f70:	49 ff c6             	inc    %r14
140960f73:	66 43 39 14 74       	cmp    %dx,(%r12,%r14,2)
140960f78:	75 f6                	jne    0x140960f70
140960f7a:	48 8b 01             	mov    (%rcx),%rax
140960f7d:	48 63 48 04          	movslq 0x4(%rax),%rcx
140960f81:	48 8b 7c 31 28       	mov    0x28(%rcx,%rsi,1),%rdi
140960f86:	48 85 ff             	test   %rdi,%rdi
140960f89:	7e 0a                	jle    0x140960f95
140960f8b:	49 3b fe             	cmp    %r14,%rdi
140960f8e:	7e 05                	jle    0x140960f95
140960f90:	49 2b fe             	sub    %r14,%rdi
140960f93:	eb 03                	jmp    0x140960f98
140960f95:	48 8b fa             	mov    %rdx,%rdi
140960f98:	4c 8b ee             	mov    %rsi,%r13
140960f9b:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140960fa0:	48 8b 4c 31 48       	mov    0x48(%rcx,%rsi,1),%rcx
140960fa5:	48 85 c9             	test   %rcx,%rcx
140960fa8:	74 0e                	je     0x140960fb8
140960faa:	48 8b 01             	mov    (%rcx),%rax
140960fad:	48 8b 40 08          	mov    0x8(%rax),%rax
140960fb1:	ff 15 69 2a 62 00    	call   *0x622a69(%rip)        # 0x140f83a20
140960fb7:	90                   	nop
140960fb8:	48 8b 0e             	mov    (%rsi),%rcx
140960fbb:	48 63 41 04          	movslq 0x4(%rcx),%rax
140960fbf:	83 7c 30 10 00       	cmpl   $0x0,0x10(%rax,%rsi,1)
140960fc4:	74 04                	je     0x140960fca
140960fc6:	32 c0                	xor    %al,%al
140960fc8:	eb 2a                	jmp    0x140960ff4
140960fca:	48 8b 44 30 50       	mov    0x50(%rax,%rsi,1),%rax
140960fcf:	48 85 c0             	test   %rax,%rax
140960fd2:	74 1e                	je     0x140960ff2
140960fd4:	48 3b c6             	cmp    %rsi,%rax
140960fd7:	74 19                	je     0x140960ff2
140960fd9:	48 8b c8             	mov    %rax,%rcx
140960fdc:	e8 9f 5a 8a ff       	call   0x140206a80
140960fe1:	48 8b 0e             	mov    (%rsi),%rcx
140960fe4:	48 63 41 04          	movslq 0x4(%rcx),%rax
140960fe8:	83 7c 30 10 00       	cmpl   $0x0,0x10(%rax,%rsi,1)
140960fed:	0f 94 c0             	sete   %al
140960ff0:	eb 02                	jmp    0x140960ff4
140960ff2:	b0 01                	mov    $0x1,%al
140960ff4:	88 44 24 28          	mov    %al,0x28(%rsp)
140960ff8:	84 c0                	test   %al,%al
140960ffa:	75 0c                	jne    0x140961008
140960ffc:	ba 04 00 00 00       	mov    $0x4,%edx
140961001:	8b da                	mov    %edx,%ebx
140961003:	e9 57 01 00 00       	jmp    0x14096115f
140961008:	48 63 41 04          	movslq 0x4(%rcx),%rax
14096100c:	8b 4c 30 18          	mov    0x18(%rax,%rsi,1),%ecx
140961010:	81 e1 c0 01 00 00    	and    $0x1c0,%ecx
140961016:	41 bf ff ff 00 00    	mov    $0xffff,%r15d
14096101c:	83 f9 40             	cmp    $0x40,%ecx
14096101f:	74 79                	je     0x14096109a
140961021:	48 85 ff             	test   %rdi,%rdi
140961024:	7e 74                	jle    0x14096109a
140961026:	48 8b 06             	mov    (%rsi),%rax
140961029:	48 63 48 04          	movslq 0x4(%rax),%rcx
14096102d:	4c 8b 44 31 48       	mov    0x48(%rcx,%rsi,1),%r8
140961032:	44 0f b7 4c 31 58    	movzwl 0x58(%rcx,%rsi,1),%r9d
140961038:	49 8b 40 40          	mov    0x40(%r8),%rax
14096103c:	48 83 38 00          	cmpq   $0x0,(%rax)
140961040:	74 22                	je     0x140961064
140961042:	49 8b 48 58          	mov    0x58(%r8),%rcx
140961046:	8b 01                	mov    (%rcx),%eax
140961048:	85 c0                	test   %eax,%eax
14096104a:	7e 18                	jle    0x140961064
14096104c:	ff c8                	dec    %eax
14096104e:	89 01                	mov    %eax,(%rcx)
140961050:	49 8b 48 40          	mov    0x40(%r8),%rcx
140961054:	48 8b 11             	mov    (%rcx),%rdx
140961057:	48 8d 42 02          	lea    0x2(%rdx),%rax
14096105b:	48 89 01             	mov    %rax,(%rcx)
14096105e:	66 44 89 0a          	mov    %r9w,(%rdx)
140961062:	eb 18                	jmp    0x14096107c
140961064:	49 8b 00             	mov    (%r8),%rax
140961067:	41 0f b7 d1          	movzwl %r9w,%edx
14096106b:	49 8b c8             	mov    %r8,%rcx
14096106e:	48 8b 40 18          	mov    0x18(%rax),%rax
140961072:	ff 15 a8 29 62 00    	call   *0x6229a8(%rip)        # 0x140f83a20
140961078:	44 0f b7 c8          	movzwl %ax,%r9d
14096107c:	66 45 3b f9          	cmp    %r9w,%r15w
140961080:	75 13                	jne    0x140961095
140961082:	ba 04 00 00 00       	mov    $0x4,%edx
140961087:	8b da                	mov    %edx,%ebx
140961089:	89 94 24 c0 00 00 00 	mov    %edx,0xc0(%rsp)
140961090:	e9 a0 00 00 00       	jmp    0x140961135
140961095:	48 ff cf             	dec    %rdi
140961098:	eb 87                	jmp    0x140961021
14096109a:	48 8b 06             	mov    (%rsi),%rax
14096109d:	48 63 48 04          	movslq 0x4(%rax),%rcx
1409610a1:	48 8b 4c 31 48       	mov    0x48(%rcx,%rsi,1),%rcx
1409610a6:	48 8b 01             	mov    (%rcx),%rax
1409610a9:	4d 8b c6             	mov    %r14,%r8
1409610ac:	49 8b d4             	mov    %r12,%rdx
1409610af:	48 8b 40 48          	mov    0x48(%rax),%rax
1409610b3:	ff 15 67 29 62 00    	call   *0x622967(%rip)        # 0x140f83a20
1409610b9:	49 3b c6             	cmp    %r14,%rax
1409610bc:	75 68                	jne    0x140961126
1409610be:	66 90                	xchg   %ax,%ax
1409610c0:	48 85 ff             	test   %rdi,%rdi
1409610c3:	7e 6b                	jle    0x140961130
1409610c5:	48 8b 06             	mov    (%rsi),%rax
1409610c8:	48 63 48 04          	movslq 0x4(%rax),%rcx
1409610cc:	4c 8b 44 31 48       	mov    0x48(%rcx,%rsi,1),%r8
1409610d1:	44 0f b7 4c 31 58    	movzwl 0x58(%rcx,%rsi,1),%r9d
1409610d7:	49 8b 40 40          	mov    0x40(%r8),%rax
1409610db:	48 83 38 00          	cmpq   $0x0,(%rax)
1409610df:	74 22                	je     0x140961103
1409610e1:	49 8b 48 58          	mov    0x58(%r8),%rcx
1409610e5:	8b 01                	mov    (%rcx),%eax
1409610e7:	85 c0                	test   %eax,%eax
1409610e9:	7e 18                	jle    0x140961103
1409610eb:	ff c8                	dec    %eax
1409610ed:	89 01                	mov    %eax,(%rcx)
1409610ef:	49 8b 48 40          	mov    0x40(%r8),%rcx
1409610f3:	48 8b 11             	mov    (%rcx),%rdx
1409610f6:	48 8d 42 02          	lea    0x2(%rdx),%rax
1409610fa:	48 89 01             	mov    %rax,(%rcx)
1409610fd:	66 44 89 0a          	mov    %r9w,(%rdx)
140961101:	eb 18                	jmp    0x14096111b
140961103:	49 8b 00             	mov    (%r8),%rax
140961106:	41 0f b7 d1          	movzwl %r9w,%edx
14096110a:	49 8b c8             	mov    %r8,%rcx
14096110d:	48 8b 40 18          	mov    0x18(%rax),%rax
140961111:	ff 15 09 29 62 00    	call   *0x622909(%rip)        # 0x140f83a20
140961117:	44 0f b7 c8          	movzwl %ax,%r9d
14096111b:	66 45 3b f9          	cmp    %r9w,%r15w
14096111f:	74 05                	je     0x140961126
140961121:	48 ff cf             	dec    %rdi
140961124:	eb 9a                	jmp    0x1409610c0
140961126:	83 cb 04             	or     $0x4,%ebx
140961129:	89 9c 24 c0 00 00 00 	mov    %ebx,0xc0(%rsp)
140961130:	ba 04 00 00 00       	mov    $0x4,%edx
140961135:	48 8b 06             	mov    (%rsi),%rax
140961138:	48 63 48 04          	movslq 0x4(%rax),%rcx
14096113c:	45 33 c0             	xor    %r8d,%r8d
14096113f:	4c 89 44 31 28       	mov    %r8,0x28(%rcx,%rsi,1)
140961144:	eb 1c                	jmp    0x140961162
140961146:	ba 04 00 00 00       	mov    $0x4,%edx
14096114b:	48 8b b4 24 b0 00 00 	mov    0xb0(%rsp),%rsi
140961152:	00
140961153:	8b 9c 24 c0 00 00 00 	mov    0xc0(%rsp),%ebx
14096115a:	4c 8b 6c 24 20       	mov    0x20(%rsp),%r13
14096115f:	45 33 c0             	xor    %r8d,%r8d
140961162:	48 8b 06             	mov    (%rsi),%rax
140961165:	48 63 48 04          	movslq 0x4(%rax),%rcx
140961169:	48 03 ce             	add    %rsi,%rcx
14096116c:	0b 59 10             	or     0x10(%rcx),%ebx
14096116f:	48 83 79 48 00       	cmpq   $0x0,0x48(%rcx)
140961174:	41 0f 45 d0          	cmovne %r8d,%edx
140961178:	0b d3                	or     %ebx,%edx
14096117a:	83 e2 17             	and    $0x17,%edx
14096117d:	89 51 10             	mov    %edx,0x10(%rcx)
140961180:	23 51 14             	and    0x14(%rcx),%edx
140961183:	75 45                	jne    0x1409611ca
140961185:	e8 a2 a3 49 00       	call   0x140dfb52c
14096118a:	85 c0                	test   %eax,%eax
14096118c:	75 09                	jne    0x140961197
14096118e:	49 8b cd             	mov    %r13,%rcx
140961191:	e8 fa 73 88 ff       	call   0x1401e8590
140961196:	90                   	nop
140961197:	49 8b 45 00          	mov    0x0(%r13),%rax
14096119b:	48 63 48 04          	movslq 0x4(%rax),%rcx
14096119f:	4a 8b 4c 29 48       	mov    0x48(%rcx,%r13,1),%rcx
1409611a4:	48 85 c9             	test   %rcx,%rcx
1409611a7:	74 0e                	je     0x1409611b7
1409611a9:	48 8b 01             	mov    (%rcx),%rax
1409611ac:	48 8b 40 10          	mov    0x10(%rax),%rax
1409611b0:	ff 15 6a 28 62 00    	call   *0x62286a(%rip)        # 0x140f83a20
1409611b6:	90                   	nop
1409611b7:	48 8b c6             	mov    %rsi,%rax
1409611ba:	48 83 c4 70          	add    $0x70,%rsp
1409611be:	41 5f                	pop    %r15
1409611c0:	41 5e                	pop    %r14
1409611c2:	41 5d                	pop    %r13
1409611c4:	41 5c                	pop    %r12
1409611c6:	5f                   	pop    %rdi
1409611c7:	5e                   	pop    %rsi
1409611c8:	5b                   	pop    %rbx
1409611c9:	c3                   	ret
1409611ca:	f6 c2 04             	test   $0x4,%dl
1409611cd:	74 09                	je     0x1409611d8
1409611cf:	48 8d 1d 12 85 64 00 	lea    0x648512(%rip),%rbx        # 0x140fa96e8
1409611d6:	eb 15                	jmp    0x1409611ed
1409611d8:	f6 c2 02             	test   $0x2,%dl
1409611db:	48 8d 1d 1e 85 64 00 	lea    0x64851e(%rip),%rbx        # 0x140fa9700
1409611e2:	48 8d 05 2f 85 64 00 	lea    0x64852f(%rip),%rax        # 0x140fa9718
1409611e9:	48 0f 44 d8          	cmove  %rax,%rbx
1409611ed:	ba 01 00 00 00       	mov    $0x1,%edx
1409611f2:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1409611f7:	e8 c4 65 8a ff       	call   0x1402077c0
1409611fc:	4c 8b c0             	mov    %rax,%r8
1409611ff:	48 8b d3             	mov    %rbx,%rdx
140961202:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140961207:	e8 24 f6 87 ff       	call   0x1401e0830
14096120c:	48 8d 15 05 fb a3 00 	lea    0xa3fb05(%rip),%rdx        # 0x1413a0d18
140961213:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140961218:	e8 fb b5 4b 00       	call   0x140e1c818
14096121d:	cc                   	int3
14096121e:	cc                   	int3
14096121f:	cc                   	int3
140961220:	48 83 ec 48          	sub    $0x48,%rsp
140961224:	4d 8b 08             	mov    (%r8),%r9
140961227:	4d 39 48 08          	cmp    %r9,0x8(%r8)
14096122b:	41 b8 00 00 00 00    	mov    $0x0,%r8d
140961231:	8b 41 10             	mov    0x10(%rcx),%eax
140961234:	4d 0f 44 c8          	cmove  %r8,%r9
140961238:	48 83 79 18 0f       	cmpq   $0xf,0x18(%rcx)
14096123d:	76 03                	jbe    0x140961242
14096123f:	48 8b 09             	mov    (%rcx),%rcx
140961242:	4c 89 44 24 30       	mov    %r8,0x30(%rsp)
140961247:	4c 89 44 24 28       	mov    %r8,0x28(%rsp)
14096124c:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140961252:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
140961257:	8b d0                	mov    %eax,%edx
140961259:	ff 15 a1 1e 62 00    	call   *0x621ea1(%rip)        # 0x140f83100
14096125f:	85 c0                	test   %eax,%eax
140961261:	0f 95 c0             	setne  %al
140961264:	48 83 c4 48          	add    $0x48,%rsp
140961268:	c3                   	ret
140961269:	cc                   	int3
14096126a:	cc                   	int3
14096126b:	cc                   	int3
14096126c:	cc                   	int3
14096126d:	cc                   	int3
14096126e:	cc                   	int3
14096126f:	cc                   	int3
140961270:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140961275:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14096127a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14096127f:	57                   	push   %rdi
140961280:	41 56                	push   %r14
140961282:	41 57                	push   %r15
140961284:	48 83 ec 70          	sub    $0x70,%rsp
140961288:	4c 8b b4 24 b8 00 00 	mov    0xb8(%rsp),%r14
14096128f:	00
140961290:	49 8b d9             	mov    %r9,%rbx
140961293:	4c 8b bc 24 b0 00 00 	mov    0xb0(%rsp),%r15
14096129a:	00
14096129b:	49 8b f8             	mov    %r8,%rdi
14096129e:	4c 89 74 24 28       	mov    %r14,0x28(%rsp)
1409612a3:	8b f2                	mov    %edx,%esi
1409612a5:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
1409612aa:	48 8b e9             	mov    %rcx,%rbp
1409612ad:	e8 6e 93 83 ff       	call   0x14019a620
1409612b2:	85 c0                	test   %eax,%eax
1409612b4:	7e 08                	jle    0x1409612be
1409612b6:	0f b7 c0             	movzwl %ax,%eax
1409612b9:	0d 00 00 07 80       	or     $0x80070000,%eax
1409612be:	8b d0                	mov    %eax,%edx
1409612c0:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
1409612c5:	e8 f6 8e 83 ff       	call   0x14019a1c0
1409612ca:	4c 8b cb             	mov    %rbx,%r9
1409612cd:	4c 8b c7             	mov    %rdi,%r8
1409612d0:	8b d6                	mov    %esi,%edx
1409612d2:	48 8b cd             	mov    %rbp,%rcx
1409612d5:	f2 0f 10 00          	movsd  (%rax),%xmm0
1409612d9:	8b 40 08             	mov    0x8(%rax),%eax
1409612dc:	89 44 24 58          	mov    %eax,0x58(%rsp)
1409612e0:	33 c0                	xor    %eax,%eax
1409612e2:	89 44 24 40          	mov    %eax,0x40(%rsp)
1409612e6:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
1409612eb:	48 8d 44 24 50       	lea    0x50(%rsp),%rax
1409612f0:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1409612f5:	4c 89 74 24 28       	mov    %r14,0x28(%rsp)
1409612fa:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
1409612ff:	f2 0f 11 44 24 50    	movsd  %xmm0,0x50(%rsp)
140961305:	e8 f6 4b 8e ff       	call   0x140245f00
14096130a:	cc                   	int3
14096130b:	cc                   	int3
14096130c:	cc                   	int3
14096130d:	cc                   	int3
14096130e:	cc                   	int3
14096130f:	cc                   	int3
140961310:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140961315:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14096131a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14096131f:	57                   	push   %rdi
140961320:	48 83 ec 70          	sub    $0x70,%rsp
140961324:	8b f2                	mov    %edx,%esi
140961326:	49 8b d9             	mov    %r9,%rbx
140961329:	8b 94 24 b0 00 00 00 	mov    0xb0(%rsp),%edx
140961330:	49 8b f8             	mov    %r8,%rdi