140917e5f:	89 55 ab             	mov    %edx,-0x55(%rbp)
140917e62:	48 8b f1             	mov    %rcx,%rsi
140917e65:	44 89 4d af          	mov    %r9d,-0x51(%rbp)
140917e69:	45 33 f6             	xor    %r14d,%r14d
140917e6c:	48 83 c1 48          	add    $0x48,%rcx
140917e70:	48 8b 18             	mov    (%rax),%rbx
140917e73:	41 b8 30 00 00 00    	mov    $0x30,%r8d
140917e79:	48 8b d3             	mov    %rbx,%rdx
140917e7c:	4c 89 75 c7          	mov    %r14,-0x39(%rbp)
140917e80:	44 89 75 bf          	mov    %r14d,-0x41(%rbp)
140917e84:	e8 c7 7b 5c 00       	call   0x140edfa50
140917e89:	85 c0                	test   %eax,%eax
140917e8b:	74 08                	je     0x140917e95
140917e8d:	8b 43 10             	mov    0x10(%rbx),%eax
140917e90:	ff c0                	inc    %eax
140917e92:	89 45 bf             	mov    %eax,-0x41(%rbp)
140917e95:	41 8b fe             	mov    %r14d,%edi
140917e98:	66 39 7e 3c          	cmp    %di,0x3c(%rsi)
140917e9c:	0f 85 cc 00 00 00    	jne    0x140917f6e
140917ea2:	8b 43 60             	mov    0x60(%rbx),%eax
140917ea5:	85 c0                	test   %eax,%eax
140917ea7:	74 72                	je     0x140917f1b
140917ea9:	48 8d 55 b7          	lea    -0x49(%rbp),%rdx
140917ead:	b9 04 00 00 00       	mov    $0x4,%ecx
140917eb2:	e8 29 3e f7 ff       	call   0x14088bce0
140917eb7:	48 8d 5e 08          	lea    0x8(%rsi),%rbx
140917ebb:	40 38 7e 3f          	cmp    %dil,0x3f(%rsi)
140917ebf:	75 24                	jne    0x140917ee5
140917ec1:	48 8b 0b             	mov    (%rbx),%rcx
140917ec4:	ba 04 00 00 00       	mov    $0x4,%edx
140917ec9:	41 b9 0a 00 00 00    	mov    $0xa,%r9d
140917ecf:	44 8b c2             	mov    %edx,%r8d
140917ed2:	48 8b 01             	mov    (%rcx),%rax
140917ed5:	48 8b 40 70          	mov    0x70(%rax),%rax
140917ed9:	ff 15 41 bb 66 00    	call   *0x66bb41(%rip)        # 0x140f83a20
140917edf:	8b f8                	mov    %eax,%edi
140917ee1:	85 c0                	test   %eax,%eax
140917ee3:	75 31                	jne    0x140917f16
140917ee5:	8b 55 b7             	mov    -0x49(%rbp),%edx
140917ee8:	48 8b ce             	mov    %rsi,%rcx
140917eeb:	e8 c0 6a 01 00       	call   0x14092e9b0
140917ef0:	44 38 76 3f          	cmp    %r14b,0x3f(%rsi)
140917ef4:	75 4d                	jne    0x140917f43
140917ef6:	48 8b 0b             	mov    (%rbx),%rcx
140917ef9:	ba 04 00 00 00       	mov    $0x4,%edx
140917efe:	41 b9 09 00 00 00    	mov    $0x9,%r9d
140917f04:	44 8b c2             	mov    %edx,%r8d
140917f07:	48 8b 01             	mov    (%rcx),%rax
140917f0a:	48 8b 40 70          	mov    0x70(%rax),%rax
140917f0e:	ff 15 0c bb 66 00    	call   *0x66bb0c(%rip)        # 0x140f83a20
140917f14:	eb 05                	jmp    0x140917f1b
140917f16:	83 f8 05             	cmp    $0x5,%eax
140917f19:	75 57                	jne    0x140917f72
140917f1b:	44 38 76 3f          	cmp    %r14b,0x3f(%rsi)
140917f1f:	75 22                	jne    0x140917f43
140917f21:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
140917f25:	ba 03 00 00 00       	mov    $0x3,%edx
140917f2a:	41 b9 05 00 00 00    	mov    $0x5,%r9d
140917f30:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140917f36:	48 8b 01             	mov    (%rcx),%rax
140917f39:	48 8b 40 70          	mov    0x70(%rax),%rax
140917f3d:	ff 15 dd ba 66 00    	call   *0x66badd(%rip)        # 0x140f83a20
140917f43:	66 c7 46 3c ff ff    	movw   $0xffff,0x3c(%rsi)
140917f49:	41 8b de             	mov    %r14d,%ebx
140917f4c:	0f 1f 40 00          	nopl   0x0(%rax)
140917f50:	ff c3                	inc    %ebx
140917f52:	48 8d 55 b7          	lea    -0x49(%rbp),%rdx
140917f56:	44 8b cb             	mov    %ebx,%r9d
140917f59:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140917f5f:	48 8b ce             	mov    %rsi,%rcx
140917f62:	e8 d9 6c 01 00       	call   0x14092ec40
140917f67:	8b f8                	mov    %eax,%edi
140917f69:	83 f8 ff             	cmp    $0xffffffff,%eax
140917f6c:	74 e2                	je     0x140917f50
140917f6e:	85 ff                	test   %edi,%edi
140917f70:	74 07                	je     0x140917f79
140917f72:	8b c7                	mov    %edi,%eax
140917f74:	e9 d9 03 00 00       	jmp    0x140918352
140917f79:	8b 46 58             	mov    0x58(%rsi),%eax
140917f7c:	89 45 a7             	mov    %eax,-0x59(%rbp)
140917f7f:	85 c0                	test   %eax,%eax
140917f81:	0f 85 e6 00 00 00    	jne    0x14091806d
140917f87:	8b 8e 88 00 00 00    	mov    0x88(%rsi),%ecx
140917f8d:	41 8b c7             	mov    %r15d,%eax
140917f90:	c7 45 ef 37 7f 06 82 	movl   $0x82067f37,-0x11(%rbp)
140917f97:	c7 45 f3 00 2d e2 18 	movl   $0x18e22d00,-0xd(%rbp)
140917f9e:	0f c8                	bswap  %eax
140917fa0:	89 45 f7             	mov    %eax,-0x9(%rbp)
140917fa3:	8b c1                	mov    %ecx,%eax
140917fa5:	0f c8                	bswap  %eax
140917fa7:	89 45 fb             	mov    %eax,-0x5(%rbp)
140917faa:	85 c9                	test   %ecx,%ecx
140917fac:	75 0e                	jne    0x140917fbc
140917fae:	48 8d 56 68          	lea    0x68(%rsi),%rdx
140917fb2:	b9 08 00 00 00       	mov    $0x8,%ecx
140917fb7:	e8 24 3d f7 ff       	call   0x14088bce0
140917fbc:	48 8b 46 68          	mov    0x68(%rsi),%rax
140917fc0:	48 8d 4d ef          	lea    -0x11(%rbp),%rcx
140917fc4:	48 89 45 ff          	mov    %rax,-0x1(%rbp)
140917fc8:	41 8b d6             	mov    %r14d,%edx
140917fcb:	45 8b c6             	mov    %r14d,%r8d
140917fce:	66 90                	xchg   %ax,%ax
140917fd0:	8b 01                	mov    (%rcx),%eax
140917fd2:	03 c2                	add    %edx,%eax
140917fd4:	44 03 c0             	add    %eax,%r8d
140917fd7:	8b 41 04             	mov    0x4(%rcx),%eax
140917fda:	41 03 c0             	add    %r8d,%eax
140917fdd:	48 83 c1 08          	add    $0x8,%rcx
140917fe1:	03 d0                	add    %eax,%edx
140917fe3:	48 8d 45 07          	lea    0x7(%rbp),%rax
140917fe7:	48 3b c8             	cmp    %rax,%rcx
140917fea:	72 e4                	jb     0x140917fd0
140917fec:	44 89 46 60          	mov    %r8d,0x60(%rsi)
140917ff0:	41 8b c0             	mov    %r8d,%eax
140917ff3:	0f c8                	bswap  %eax
140917ff5:	89 56 64             	mov    %edx,0x64(%rsi)
140917ff8:	45 33 c9             	xor    %r9d,%r9d
140917ffb:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
140917fff:	41 b8 20 00 00 00    	mov    $0x20,%r8d
140918005:	89 45 07             	mov    %eax,0x7(%rbp)
140918008:	8b c2                	mov    %edx,%eax
14091800a:	0f c8                	bswap  %eax
14091800c:	89 45 0b             	mov    %eax,0xb(%rbp)
14091800f:	48 8d 55 ef          	lea    -0x11(%rbp),%rdx
140918013:	44 89 7e 38          	mov    %r15d,0x38(%rsi)
140918017:	44 88 76 55          	mov    %r14b,0x55(%rsi)
14091801b:	c6 46 43 01          	movb   $0x1,0x43(%rsi)
14091801f:	48 8b 01             	mov    (%rcx),%rax
140918022:	48 8b 40 18          	mov    0x18(%rax),%rax
140918026:	ff 15 f4 b9 66 00    	call   *0x66b9f4(%rip)        # 0x140f83a20
14091802c:	8b f8                	mov    %eax,%edi
14091802e:	85 c0                	test   %eax,%eax
140918030:	0f 85 1c 03 00 00    	jne    0x140918352
140918036:	8b 5d 7f             	mov    0x7f(%rbp),%ebx
140918039:	44 38 76 44          	cmp    %r14b,0x44(%rsi)
14091803d:	74 29                	je     0x140918068
14091803f:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
140918043:	8b d3                	mov    %ebx,%edx
140918045:	c1 fa 02             	sar    $0x2,%edx
140918048:	83 e2 03             	and    $0x3,%edx
14091804b:	74 18                	je     0x140918065
14091804d:	48 8b 01             	mov    (%rcx),%rax
140918050:	48 8b 40 28          	mov    0x28(%rax),%rax
140918054:	ff 15 c6 b9 66 00    	call   *0x66b9c6(%rip)        # 0x140f83a20
14091805a:	8b f8                	mov    %eax,%edi
14091805c:	85 c0                	test   %eax,%eax
14091805e:	74 08                	je     0x140918068
140918060:	e9 ed 02 00 00       	jmp    0x140918352
140918065:	41 8b fe             	mov    %r14d,%edi
140918068:	8b 45 a7             	mov    -0x59(%rbp),%eax
14091806b:	eb 03                	jmp    0x140918070
14091806d:	8b 5d 7f             	mov    0x7f(%rbp),%ebx
140918070:	41 8d 4f 18          	lea    0x18(%r15),%ecx
140918074:	44 89 7d eb          	mov    %r15d,-0x15(%rbp)
140918078:	48 63 c9             	movslq %ecx,%rcx
14091807b:	44 8b f8             	mov    %eax,%r15d
14091807e:	4c 0f af f9          	imul   %rcx,%r15
140918082:	4c 89 a4 24 f8 00 00 	mov    %r12,0xf8(%rsp)
140918089:	00
14091808a:	4c 8b 66 10          	mov    0x10(%rsi),%r12
14091808e:	49 83 c7 20          	add    $0x20,%r15
140918092:	89 5d e7             	mov    %ebx,-0x19(%rbp)
140918095:	49 8b dd             	mov    %r13,%rbx
140918098:	48 89 4d b7          	mov    %rcx,-0x49(%rbp)
14091809c:	8b 4d 77             	mov    0x77(%rbp),%ecx
14091809f:	48 89 75 cf          	mov    %rsi,-0x31(%rbp)
1409180a3:	4c 89 65 d7          	mov    %r12,-0x29(%rbp)
1409180a7:	4c 89 75 df          	mov    %r14,-0x21(%rbp)
1409180ab:	4d 85 ed             	test   %r13,%r13
1409180ae:	0f 84 cf 00 00 00    	je     0x140918183
1409180b4:	4c 8b 65 b7          	mov    -0x49(%rbp),%r12
1409180b8:	8b 7d bf             	mov    -0x41(%rbp),%edi
1409180bb:	85 ff                	test   %edi,%edi
1409180bd:	74 72                	je     0x140918131
1409180bf:	4c 39 73 20          	cmp    %r14,0x20(%rbx)
1409180c3:	75 04                	jne    0x1409180c9
1409180c5:	85 c9                	test   %ecx,%ecx
1409180c7:	75 68                	jne    0x140918131
1409180c9:	8b 53 30             	mov    0x30(%rbx),%edx
1409180cc:	4c 8d 45 b7          	lea    -0x49(%rbp),%r8
1409180d0:	48 8b ce             	mov    %rsi,%rcx
1409180d3:	44 89 75 b7          	mov    %r14d,-0x49(%rbp)
1409180d7:	e8 64 fb ff ff       	call   0x140917c40
1409180dc:	8b 4d b7             	mov    -0x49(%rbp),%ecx
1409180df:	3b cf                	cmp    %edi,%ecx
1409180e1:	72 48                	jb     0x14091812b
1409180e3:	8b 46 7c             	mov    0x7c(%rsi),%eax
1409180e6:	44 8d 49 ff          	lea    -0x1(%rcx),%r9d
1409180ea:	4d 0f af cc          	imul   %r12,%r9
1409180ee:	49 83 c1 38          	add    $0x38,%r9
1409180f2:	85 c0                	test   %eax,%eax
1409180f4:	74 04                	je     0x1409180fa
1409180f6:	3b c8                	cmp    %eax,%ecx
1409180f8:	73 03                	jae    0x1409180fd
1409180fa:	89 4e 7c             	mov    %ecx,0x7c(%rsi)
1409180fd:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
140918101:	44 8b 45 ab          	mov    -0x55(%rbp),%r8d
140918105:	48 8b 53 08          	mov    0x8(%rbx),%rdx
140918109:	48 8b 01             	mov    (%rcx),%rax
14091810c:	48 8b 40 18          	mov    0x18(%rax),%rax
140918110:	ff 15 0a b9 66 00    	call   *0x66b90a(%rip)        # 0x140f83a20
140918116:	8b f8                	mov    %eax,%edi
140918118:	85 c0                	test   %eax,%eax
14091811a:	0f 85 2a 02 00 00    	jne    0x14091834a
140918120:	ba bf ff 00 00       	mov    $0xffbf,%edx
140918125:	66 21 53 34          	and    %dx,0x34(%rbx)
140918129:	eb 41                	jmp    0x14091816c
14091812b:	8b 45 a7             	mov    -0x59(%rbp),%eax
14091812e:	8b 4d 77             	mov    0x77(%rbp),%ecx
140918131:	ff c0                	inc    %eax
140918133:	89 45 a7             	mov    %eax,-0x59(%rbp)
140918136:	85 c9                	test   %ecx,%ecx
140918138:	74 0a                	je     0x140918144
14091813a:	44 8b 45 af          	mov    -0x51(%rbp),%r8d
14091813e:	4c 39 73 20          	cmp    %r14,0x20(%rbx)
140918142:	74 03                	je     0x140918147
140918144:	45 8b c6             	mov    %r14d,%r8d
140918147:	4d 8b cf             	mov    %r15,%r9
14091814a:	48 8d 4d cf          	lea    -0x31(%rbp),%rcx
14091814e:	48 8b d3             	mov    %rbx,%rdx
140918151:	e8 ba 6e 01 00       	call   0x14092f010
140918156:	8b f8                	mov    %eax,%edi
140918158:	85 c0                	test   %eax,%eax
14091815a:	0f 85 ea 01 00 00    	jne    0x14091834a
140918160:	4d 03 fc             	add    %r12,%r15
140918163:	48 89 5d c7          	mov    %rbx,-0x39(%rbp)
140918167:	66 83 4b 34 40       	orw    $0x40,0x34(%rbx)
14091816c:	48 8b 5b 20          	mov    0x20(%rbx),%rbx
140918170:	8b 45 a7             	mov    -0x59(%rbp),%eax
140918173:	8b 4d 77             	mov    0x77(%rbp),%ecx
140918176:	48 85 db             	test   %rbx,%rbx
140918179:	0f 85 39 ff ff ff    	jne    0x1409180b8
14091817f:	4c 8b 65 d7          	mov    -0x29(%rbp),%r12
140918183:	85 c9                	test   %ecx,%ecx
140918185:	0f 84 26 01 00 00    	je     0x1409182b1
14091818b:	44 39 76 7c          	cmp    %r14d,0x7c(%rsi)
14091818f:	74 14                	je     0x1409181a5
140918191:	8b d0                	mov    %eax,%edx
140918193:	48 8b ce             	mov    %rsi,%rcx
140918196:	e8 85 68 01 00       	call   0x14092ea20
14091819b:	8b f8                	mov    %eax,%edi
14091819d:	85 c0                	test   %eax,%eax
14091819f:	0f 85 a5 01 00 00    	jne    0x14091834a
1409181a5:	8b 4d 7f             	mov    0x7f(%rbp),%ecx
1409181a8:	f6 c1 03             	test   $0x3,%cl
1409181ab:	0f 84 c3 00 00 00    	je     0x140918274
1409181b1:	44 38 76 45          	cmp    %r14b,0x45(%rsi)
1409181b5:	0f 84 a1 00 00 00    	je     0x14091825c
1409181bb:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
1409181bf:	48 8b 01             	mov    (%rcx),%rax
1409181c2:	48 8b 40 58          	mov    0x58(%rax),%rax
1409181c6:	48 85 c0             	test   %rax,%rax
1409181c9:	74 20                	je     0x1409181eb
1409181cb:	ff 15 4f b8 66 00    	call   *0x66b84f(%rip)        # 0x140f83a20
1409181d1:	83 f8 20             	cmp    $0x20,%eax
1409181d4:	7d 07                	jge    0x1409181dd
1409181d6:	b8 00 02 00 00       	mov    $0x200,%eax
1409181db:	eb 13                	jmp    0x1409181f0
1409181dd:	3d 00 00 01 00       	cmp    $0x10000,%eax
1409181e2:	7e 0c                	jle    0x1409181f0
1409181e4:	b8 00 00 01 00       	mov    $0x10000,%eax
1409181e9:	eb 05                	jmp    0x1409181f0
1409181eb:	b8 00 10 00 00       	mov    $0x1000,%eax
1409181f0:	48 63 c8             	movslq %eax,%rcx
1409181f3:	41 8b de             	mov    %r14d,%ebx
1409181f6:	4c 8d 41 ff          	lea    -0x1(%rcx),%r8
1409181fa:	4d 03 c7             	add    %r15,%r8
1409181fd:	49 8b c0             	mov    %r8,%rax
140918200:	48 99                	cqto
140918202:	48 f7 f9             	idiv   %rcx
140918205:	4c 2b c2             	sub    %rdx,%r8
140918208:	4d 3b c7             	cmp    %r15,%r8
14091820b:	4c 89 45 df          	mov    %r8,-0x21(%rbp)
14091820f:	0f 94 c3             	sete   %bl
140918212:	7e 41                	jle    0x140918255
140918214:	4c 8b 65 c7          	mov    -0x39(%rbp),%r12
140918218:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14091821f:	00
140918220:	44 8b 45 af          	mov    -0x51(%rbp),%r8d
140918224:	48 8d 4d cf          	lea    -0x31(%rbp),%rcx
140918228:	4d 8b cf             	mov    %r15,%r9
14091822b:	49 8b d4             	mov    %r12,%rdx
14091822e:	e8 dd 6d 01 00       	call   0x14092f010
140918233:	8b f8                	mov    %eax,%edi
140918235:	85 c0                	test   %eax,%eax
140918237:	0f 85 0d 01 00 00    	jne    0x14091834a
14091823d:	8b 45 ab             	mov    -0x55(%rbp),%eax
140918240:	41 ff c6             	inc    %r14d
140918243:	83 c0 18             	add    $0x18,%eax
140918246:	48 98                	cltq
140918248:	4c 03 f8             	add    %rax,%r15
14091824b:	4c 3b 7d df          	cmp    -0x21(%rbp),%r15
14091824f:	7c cf                	jl     0x140918220
140918251:	4c 8b 65 d7          	mov    -0x29(%rbp),%r12
140918255:	85 db                	test   %ebx,%ebx
140918257:	74 1b                	je     0x140918274
140918259:	8b 4d 7f             	mov    0x7f(%rbp),%ecx
14091825c:	49 8b 04 24          	mov    (%r12),%rax
140918260:	83 e1 03             	and    $0x3,%ecx
140918263:	8b d1                	mov    %ecx,%edx
140918265:	49 8b cc             	mov    %r12,%rcx
140918268:	48 8b 40 28          	mov    0x28(%rax),%rax
14091826c:	ff 15 ae b7 66 00    	call   *0x66b7ae(%rip)        # 0x140f83a20
140918272:	8b f8                	mov    %eax,%edi
140918274:	80 7e 43 00          	cmpb   $0x0,0x43(%rsi)
140918278:	74 37                	je     0x1409182b1
14091827a:	4c 8b 46 20          	mov    0x20(%rsi),%r8
14091827e:	44 8b 7d ab          	mov    -0x55(%rbp),%r15d
140918282:	4d 85 c0             	test   %r8,%r8
140918285:	78 2e                	js     0x1409182b5
140918287:	8b 55 a7             	mov    -0x59(%rbp),%edx
14091828a:	41 8d 47 18          	lea    0x18(%r15),%eax
14091828e:	41 03 d6             	add    %r14d,%edx
140918291:	48 63 c8             	movslq %eax,%rcx
140918294:	48 0f af d1          	imul   %rcx,%rdx
140918298:	48 8b ce             	mov    %rsi,%rcx
14091829b:	48 83 c2 20          	add    $0x20,%rdx
14091829f:	49 3b d0             	cmp    %r8,%rdx
1409182a2:	49 0f 4e d0          	cmovle %r8,%rdx
1409182a6:	e8 c5 63 01 00       	call   0x14092e670
1409182ab:	c6 46 43 00          	movb   $0x0,0x43(%rsi)
1409182af:	eb 04                	jmp    0x1409182b5
1409182b1:	44 8b 7d ab          	mov    -0x55(%rbp),%r15d
1409182b5:	8b 5e 58             	mov    0x58(%rsi),%ebx
1409182b8:	4d 85 ed             	test   %r13,%r13
1409182bb:	74 2d                	je     0x1409182ea
1409182bd:	0f 1f 00             	nopl   (%rax)
1409182c0:	85 ff                	test   %edi,%edi
1409182c2:	0f 85 80 00 00 00    	jne    0x140918348
1409182c8:	41 f6 45 34 40       	testb  $0x40,0x34(%r13)
1409182cd:	74 12                	je     0x1409182e1
1409182cf:	45 8b 45 30          	mov    0x30(%r13),%r8d
1409182d3:	ff c3                	inc    %ebx
1409182d5:	8b d3                	mov    %ebx,%edx
1409182d7:	48 8b ce             	mov    %rsi,%rcx
1409182da:	e8 41 51 01 00       	call   0x14092d420
1409182df:	8b f8                	mov    %eax,%edi
1409182e1:	4d 8b 6d 20          	mov    0x20(%r13),%r13
1409182e5:	4d 85 ed             	test   %r13,%r13
1409182e8:	75 d6                	jne    0x1409182c0
1409182ea:	85 ff                	test   %edi,%edi
1409182ec:	75 5a                	jne    0x140918348
1409182ee:	66 90                	xchg   %ax,%ax
1409182f0:	45 85 f6             	test   %r14d,%r14d
1409182f3:	7e 1f                	jle    0x140918314
1409182f5:	48 8b 45 c7          	mov    -0x39(%rbp),%rax
1409182f9:	ff c3                	inc    %ebx
1409182fb:	8b d3                	mov    %ebx,%edx
1409182fd:	48 8b ce             	mov    %rsi,%rcx
140918300:	41 ff ce             	dec    %r14d