140503be0:	48 83 ec 58          	sub    $0x58,%rsp
140503be4:	48 8b 05 15 53 eb 00 	mov    0xeb5315(%rip),%rax        # 0x1413b8f00
140503beb:	48 33 c4             	xor    %rsp,%rax
140503bee:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
140503bf3:	4c 8d 52 08          	lea    0x8(%rdx),%r10
140503bf7:	4d 8b c8             	mov    %r8,%r9
140503bfa:	4d 3b d0             	cmp    %r8,%r10
140503bfd:	77 7f                	ja     0x140503c7e
140503bff:	4c 8d 42 06          	lea    0x6(%rdx),%r8
140503c03:	4d 3b d0             	cmp    %r8,%r10
140503c06:	72 76                	jb     0x140503c7e
140503c08:	83 79 18 01          	cmpl   $0x1,0x18(%rcx)
140503c0c:	8b 02                	mov    (%rdx),%eax
140503c0e:	48 89 5c 24 50       	mov    %rbx,0x50(%rsp)
140503c13:	75 10                	jne    0x140503c25
140503c15:	89 01                	mov    %eax,(%rcx)
140503c17:	0f b7 42 04          	movzwl 0x4(%rdx),%eax
140503c1b:	66 89 41 04          	mov    %ax,0x4(%rcx)
140503c1f:	41 0f b7 00          	movzwl (%r8),%eax
140503c23:	eb 18                	jmp    0x140503c3d
140503c25:	0f c8                	bswap  %eax
140503c27:	89 01                	mov    %eax,(%rcx)
140503c29:	0f b7 42 04          	movzwl 0x4(%rdx),%eax
140503c2d:	66 c1 c8 08          	ror    $0x8,%ax
140503c31:	66 89 41 04          	mov    %ax,0x4(%rcx)
140503c35:	41 0f b7 00          	movzwl (%r8),%eax
140503c39:	66 c1 c8 08          	ror    $0x8,%ax
140503c3d:	0f b7 d8             	movzwl %ax,%ebx
140503c40:	4c 8d 42 08          	lea    0x8(%rdx),%r8
140503c44:	4c 03 c3             	add    %rbx,%r8
140503c47:	66 89 41 06          	mov    %ax,0x6(%rcx)
140503c4b:	4d 3b c1             	cmp    %r9,%r8
140503c4e:	77 5a                	ja     0x140503caa
140503c50:	4d 3b c2             	cmp    %r10,%r8
140503c53:	72 55                	jb     0x140503caa
140503c55:	48 83 c1 08          	add    $0x8,%rcx
140503c59:	44 8b c3             	mov    %ebx,%r8d
140503c5c:	49 8b d2             	mov    %r10,%rdx
140503c5f:	e8 fc a6 ca ff       	call   0x1401ae360
140503c64:	8d 43 08             	lea    0x8(%rbx),%eax
140503c67:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140503c6c:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
140503c71:	48 33 cc             	xor    %rsp,%rcx
140503c74:	e8 87 78 91 00       	call   0x140e1b500
140503c79:	48 83 c4 58          	add    $0x58,%rsp
140503c7d:	c3                   	ret
140503c7e:	44 2b ca             	sub    %edx,%r9d
140503c81:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140503c86:	48 8d 15 e3 4f b0 00 	lea    0xb04fe3(%rip),%rdx        # 0x141008c70
140503c8d:	41 b8 08 00 00 00    	mov    $0x8,%r8d
140503c93:	e8 58 54 ca ff       	call   0x1401a90f0
140503c98:	48 8d 15 31 cd e9 00 	lea    0xe9cd31(%rip),%rdx        # 0x1413a09d0
140503c9f:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140503ca4:	e8 6f 8b 91 00       	call   0x140e1c818
140503ca9:	cc                   	int3
140503caa:	44 2b ca             	sub    %edx,%r9d
140503cad:	44 8d 43 08          	lea    0x8(%rbx),%r8d
140503cb1:	48 8d 15 c8 4f b0 00 	lea    0xb04fc8(%rip),%rdx        # 0x141008c80
140503cb8:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140503cbd:	e8 2e 54 ca ff       	call   0x1401a90f0
140503cc2:	48 8d 15 07 cd e9 00 	lea    0xe9cd07(%rip),%rdx        # 0x1413a09d0
140503cc9:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140503cce:	e8 45 8b 91 00       	call   0x140e1c818
140503cd3:	cc                   	int3
140503cd4:	cc                   	int3
140503cd5:	cc                   	int3
140503cd6:	cc                   	int3
140503cd7:	cc                   	int3
140503cd8:	cc                   	int3
140503cd9:	cc                   	int3
140503cda:	cc                   	int3
140503cdb:	cc                   	int3
140503cdc:	cc                   	int3
140503cdd:	cc                   	int3
140503cde:	cc                   	int3
140503cdf:	cc                   	int3
140503ce0:	40 53                	rex push %rbx
140503ce2:	56                   	push   %rsi
140503ce3:	41 54                	push   %r12
140503ce5:	41 57                	push   %r15
140503ce7:	48 83 ec 68          	sub    $0x68,%rsp
140503ceb:	48 8b 05 0e 52 eb 00 	mov    0xeb520e(%rip),%rax        # 0x1413b8f00
140503cf2:	48 33 c4             	xor    %rsp,%rax
140503cf5:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
140503cfa:	48 8d 5a 08          	lea    0x8(%rdx),%rbx
140503cfe:	49 8b f0             	mov    %r8,%rsi
140503d01:	4c 8b fa             	mov    %rdx,%r15
140503d04:	4c 8b e1             	mov    %rcx,%r12
140503d07:	49 3b d8             	cmp    %r8,%rbx
140503d0a:	0f 87 e0 01 00 00    	ja     0x140503ef0
140503d10:	4c 8d 42 06          	lea    0x6(%rdx),%r8
140503d14:	49 3b d8             	cmp    %r8,%rbx
140503d17:	0f 82 d3 01 00 00    	jb     0x140503ef0
140503d1d:	83 79 18 01          	cmpl   $0x1,0x18(%rcx)
140503d21:	8b 02                	mov    (%rdx),%eax
140503d23:	48 89 7c 24 60       	mov    %rdi,0x60(%rsp)
140503d28:	4c 89 6c 24 58       	mov    %r13,0x58(%rsp)
140503d2d:	75 10                	jne    0x140503d3f
140503d2f:	89 01                	mov    %eax,(%rcx)
140503d31:	0f b7 42 04          	movzwl 0x4(%rdx),%eax
140503d35:	66 89 41 04          	mov    %ax,0x4(%rcx)
140503d39:	41 0f b7 00          	movzwl (%r8),%eax
140503d3d:	eb 18                	jmp    0x140503d57
140503d3f:	0f c8                	bswap  %eax
140503d41:	89 01                	mov    %eax,(%rcx)
140503d43:	0f b7 42 04          	movzwl 0x4(%rdx),%eax
140503d47:	66 c1 c8 08          	ror    $0x8,%ax
140503d4b:	66 89 41 04          	mov    %ax,0x4(%rcx)
140503d4f:	41 0f b7 00          	movzwl (%r8),%eax
140503d53:	66 c1 c8 08          	ror    $0x8,%ax
140503d57:	0f b7 f8             	movzwl %ax,%edi
140503d5a:	66 89 41 06          	mov    %ax,0x6(%rcx)
140503d5e:	44 0f b7 e8          	movzwl %ax,%r13d
140503d62:	48 8b c6             	mov    %rsi,%rax
140503d65:	49 2b c7             	sub    %r15,%rax
140503d68:	48 83 e8 08          	sub    $0x8,%rax
140503d6c:	48 99                	cqto
140503d6e:	83 e2 03             	and    $0x3,%edx
140503d71:	48 03 c2             	add    %rdx,%rax
140503d74:	48 c1 f8 02          	sar    $0x2,%rax
140503d78:	48 3b f8             	cmp    %rax,%rdi
140503d7b:	0f 8f 9e 01 00 00    	jg     0x140503f1f
140503d81:	33 c0                	xor    %eax,%eax
140503d83:	48 89 ac 24 a8 00 00 	mov    %rbp,0xa8(%rsp)
140503d8a:	00
140503d8b:	48 89 41 10          	mov    %rax,0x10(%rcx)
140503d8f:	8b e8                	mov    %eax,%ebp
140503d91:	b9 18 00 00 00       	mov    $0x18,%ecx
140503d96:	4c 89 74 24 50       	mov    %r14,0x50(%rsp)
140503d9b:	e8 68 73 91 00       	call   0x140e1b108
140503da0:	48 8b c8             	mov    %rax,%rcx
140503da3:	48 85 c0             	test   %rax,%rax
140503da6:	74 0f                	je     0x140503db7
140503da8:	33 c0                	xor    %eax,%eax
140503daa:	48 89 01             	mov    %rax,(%rcx)
140503dad:	48 89 41 08          	mov    %rax,0x8(%rcx)
140503db1:	48 89 41 10          	mov    %rax,0x10(%rcx)
140503db5:	eb 02                	jmp    0x140503db9
140503db7:	33 c9                	xor    %ecx,%ecx
140503db9:	49 89 4c 24 08       	mov    %rcx,0x8(%r12)
140503dbe:	48 8b 41 10          	mov    0x10(%rcx),%rax
140503dc2:	48 2b 01             	sub    (%rcx),%rax
140503dc5:	48 c1 f8 03          	sar    $0x3,%rax
140503dc9:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140503dce:	48 3b f8             	cmp    %rax,%rdi
140503dd1:	76 0a                	jbe    0x140503ddd
140503dd3:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140503dd8:	e8 43 18 ec ff       	call   0x1403c5620
140503ddd:	45 85 ed             	test   %r13d,%r13d
140503de0:	0f 84 a8 00 00 00    	je     0x140503e8e
140503de6:	48 8d 7b 04          	lea    0x4(%rbx),%rdi
140503dea:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140503df0:	b9 08 00 00 00       	mov    $0x8,%ecx
140503df5:	e8 0e 73 91 00       	call   0x140e1b108
140503dfa:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140503dff:	48 8b c8             	mov    %rax,%rcx
140503e02:	48 85 c0             	test   %rax,%rax
140503e05:	74 0d                	je     0x140503e14
140503e07:	33 c0                	xor    %eax,%eax
140503e09:	c7 41 04 01 00 00 00 	movl   $0x1,0x4(%rcx)
140503e10:	89 01                	mov    %eax,(%rcx)
140503e12:	eb 03                	jmp    0x140503e17
140503e14:	48 8b c8             	mov    %rax,%rcx
140503e17:	49 89 4c 24 10       	mov    %rcx,0x10(%r12)
140503e1c:	48 3b fe             	cmp    %rsi,%rdi
140503e1f:	0f 87 9d 00 00 00    	ja     0x140503ec2
140503e25:	48 3b fb             	cmp    %rbx,%rdi
140503e28:	0f 82 94 00 00 00    	jb     0x140503ec2
140503e2e:	83 79 04 01          	cmpl   $0x1,0x4(%rcx)
140503e32:	0f b7 03             	movzwl (%rbx),%eax
140503e35:	74 04                	je     0x140503e3b
140503e37:	66 c1 c8 08          	ror    $0x8,%ax
140503e3b:	66 89 01             	mov    %ax,(%rcx)
140503e3e:	0f b6 47 fe          	movzbl -0x2(%rdi),%eax
140503e42:	88 41 02             	mov    %al,0x2(%rcx)
140503e45:	0f b6 47 ff          	movzbl -0x1(%rdi),%eax
140503e49:	88 41 03             	mov    %al,0x3(%rcx)
140503e4c:	49 8b 4c 24 08       	mov    0x8(%r12),%rcx
140503e51:	48 8b 51 08          	mov    0x8(%rcx),%rdx
140503e55:	48 3b 51 10          	cmp    0x10(%rcx),%rdx
140503e59:	74 0f                	je     0x140503e6a
140503e5b:	49 8b 44 24 10       	mov    0x10(%r12),%rax
140503e60:	48 89 02             	mov    %rax,(%rdx)
140503e63:	48 83 41 08 08       	addq   $0x8,0x8(%rcx)
140503e68:	eb 0a                	jmp    0x140503e74
140503e6a:	4d 8d 44 24 10       	lea    0x10(%r12),%r8
140503e6f:	e8 4c 16 ec ff       	call   0x1403c54c0
140503e74:	33 c0                	xor    %eax,%eax
140503e76:	48 83 c3 04          	add    $0x4,%rbx
140503e7a:	48 83 c7 04          	add    $0x4,%rdi
140503e7e:	49 89 44 24 10       	mov    %rax,0x10(%r12)
140503e83:	ff c5                	inc    %ebp
140503e85:	41 3b ed             	cmp    %r13d,%ebp
140503e88:	0f 8c 62 ff ff ff    	jl     0x140503df0
140503e8e:	48 8b ac 24 a8 00 00 	mov    0xa8(%rsp),%rbp
140503e95:	00
140503e96:	41 2b df             	sub    %r15d,%ebx
140503e99:	4c 8b 74 24 50       	mov    0x50(%rsp),%r14
140503e9e:	8b c3                	mov    %ebx,%eax
140503ea0:	48 8b 7c 24 60       	mov    0x60(%rsp),%rdi
140503ea5:	4c 8b 6c 24 58       	mov    0x58(%rsp),%r13
140503eaa:	48 8b 4c 24 48       	mov    0x48(%rsp),%rcx
140503eaf:	48 33 cc             	xor    %rsp,%rcx
140503eb2:	e8 49 76 91 00       	call   0x140e1b500
140503eb7:	48 83 c4 68          	add    $0x68,%rsp
140503ebb:	41 5f                	pop    %r15
140503ebd:	41 5c                	pop    %r12
140503ebf:	5e                   	pop    %rsi
140503ec0:	5b                   	pop    %rbx
140503ec1:	c3                   	ret
140503ec2:	2b f3                	sub    %ebx,%esi
140503ec4:	48 8d 15 05 4e b0 00 	lea    0xb04e05(%rip),%rdx        # 0x141008cd0
140503ecb:	44 8b ce             	mov    %esi,%r9d
140503ece:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140503ed3:	41 b8 04 00 00 00    	mov    $0x4,%r8d
140503ed9:	e8 12 52 ca ff       	call   0x1401a90f0
140503ede:	48 8d 15 eb ca e9 00 	lea    0xe9caeb(%rip),%rdx        # 0x1413a09d0
140503ee5:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140503eea:	e8 29 89 91 00       	call   0x140e1c818
140503eef:	cc                   	int3
140503ef0:	41 2b f7             	sub    %r15d,%esi
140503ef3:	48 8d 15 9e 4d b0 00 	lea    0xb04d9e(%rip),%rdx        # 0x141008c98
140503efa:	44 8b ce             	mov    %esi,%r9d
140503efd:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140503f02:	41 b8 08 00 00 00    	mov    $0x8,%r8d
140503f08:	e8 e3 51 ca ff       	call   0x1401a90f0
140503f0d:	48 8d 15 bc ca e9 00 	lea    0xe9cabc(%rip),%rdx        # 0x1413a09d0
140503f14:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140503f19:	e8 fa 88 91 00       	call   0x140e1c818
140503f1e:	cc                   	int3
140503f1f:	41 2b f7             	sub    %r15d,%esi
140503f22:	48 8d 15 87 4d b0 00 	lea    0xb04d87(%rip),%rdx        # 0x141008cb0
140503f29:	45 8b c5             	mov    %r13d,%r8d
140503f2c:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140503f31:	44 8d 4e f8          	lea    -0x8(%rsi),%r9d
140503f35:	e8 b6 51 ca ff       	call   0x1401a90f0
140503f3a:	48 8d 15 8f ca e9 00 	lea    0xe9ca8f(%rip),%rdx        # 0x1413a09d0
140503f41:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140503f46:	e8 cd 88 91 00       	call   0x140e1c818
140503f4b:	cc                   	int3
140503f4c:	cc                   	int3
140503f4d:	cc                   	int3
140503f4e:	cc                   	int3
140503f4f:	cc                   	int3
140503f50:	40 55                	rex push %rbp
140503f52:	53                   	push   %rbx
140503f53:	56                   	push   %rsi
140503f54:	57                   	push   %rdi
140503f55:	41 54                	push   %r12
140503f57:	41 56                	push   %r14
140503f59:	41 57                	push   %r15
140503f5b:	48 8b ec             	mov    %rsp,%rbp
140503f5e:	48 83 ec 50          	sub    $0x50,%rsp
140503f62:	48 8b 05 97 4f eb 00 	mov    0xeb4f97(%rip),%rax        # 0x1413b8f00
140503f69:	48 33 c4             	xor    %rsp,%rax
140503f6c:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
140503f70:	4c 8b f1             	mov    %rcx,%r14
140503f73:	4d 8b f9             	mov    %r9,%r15
140503f76:	b9 24 00 00 00       	mov    $0x24,%ecx
140503f7b:	49 8b f0             	mov    %r8,%rsi
140503f7e:	4c 8b e2             	mov    %rdx,%r12
140503f81:	e8 82 71 91 00       	call   0x140e1b108
140503f86:	33 db                	xor    %ebx,%ebx
140503f88:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
140503f8c:	48 8b c8             	mov    %rax,%rcx
140503f8f:	48 85 c0             	test   %rax,%rax
140503f92:	74 32                	je     0x140503fc6
140503f94:	41 0f b6 86 d1 02 00 	movzbl 0x2d1(%r14),%eax
140503f9b:	00
140503f9c:	88 41 14             	mov    %al,0x14(%rcx)
140503f9f:	c7 01 ff ff ff ff    	movl   $0xffffffff,(%rcx)
140503fa5:	88 59 04             	mov    %bl,0x4(%rcx)
140503fa8:	66 89 59 06          	mov    %bx,0x6(%rcx)
140503fac:	89 59 08             	mov    %ebx,0x8(%rcx)
140503faf:	88 59 0c             	mov    %bl,0xc(%rcx)
140503fb2:	66 89 59 0e          	mov    %bx,0xe(%rcx)
140503fb6:	89 59 10             	mov    %ebx,0x10(%rcx)
140503fb9:	48 c7 41 18 01 00 00 	movq   $0x1,0x18(%rcx)
140503fc0:	00
140503fc1:	88 59 20             	mov    %bl,0x20(%rcx)
140503fc4:	eb 03                	jmp    0x140503fc9
140503fc6:	48 8b cb             	mov    %rbx,%rcx
140503fc9:	4d 8b cf             	mov    %r15,%r9
140503fcc:	49 89 0e             	mov    %rcx,(%r14)
140503fcf:	4c 8b c6             	mov    %rsi,%r8
140503fd2:	49 8b d4             	mov    %r12,%rdx
140503fd5:	e8 f6 f7 ff ff       	call   0x1405037d0
140503fda:	41 0f b7 8e d2 02 00 	movzwl 0x2d2(%r14),%ecx
140503fe1:	00
140503fe2:	48 63 f8             	movslq %eax,%rdi
140503fe5:	49 03 fc             	add    %r12,%rdi
140503fe8:	66 41 89 4e 08       	mov    %cx,0x8(%r14)
140503fed:	81 f9 00 02 00 00    	cmp    $0x200,%ecx
140503ff3:	0f 87 2a 0b 00 00    	ja     0x140504b23
140503ff9:	0f 84 44 1e 00 00    	je     0x140505e43
140503fff:	81 e9 d3 00 00 00    	sub    $0xd3,%ecx
140504005:	83 f9 2f             	cmp    $0x2f,%ecx
140504008:	0f 87 a2 0b 00 00    	ja     0x140504bb0
14050400e:	48 63 c1             	movslq %ecx,%rax
140504011:	48 8d 0d e8 bf af ff 	lea    -0x504018(%rip),%rcx        # 0x140000000
140504018:	8b 84 81 f8 5f 50 00 	mov    0x505ff8(%rcx,%rax,4),%eax
14050401f:	48 03 c1             	add    %rcx,%rax
140504022:	ff e0                	jmp    *%rax
140504024:	b9 20 00 00 00       	mov    $0x20,%ecx
140504029:	e8 da 70 91 00       	call   0x140e1b108
14050402e:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
140504032:	48 85 c0             	test   %rax,%rax
140504035:	74 19                	je     0x140504050
140504037:	48 89 58 08          	mov    %rbx,0x8(%rax)
14050403b:	89 58 10             	mov    %ebx,0x10(%rax)
14050403e:	66 c7 00 00 00       	movw   $0x0,(%rax)
140504043:	c7 40 18 01 00 00 00 	movl   $0x1,0x18(%rax)
14050404a:	c6 40 1c 00          	movb   $0x0,0x1c(%rax)
14050404e:	eb 03                	jmp    0x140504053
140504050:	48 8b c3             	mov    %rbx,%rax
140504053:	49 89 46 10          	mov    %rax,0x10(%r14)
140504057:	4d 8b cf             	mov    %r15,%r9
14050405a:	4c 8b c6             	mov    %rsi,%r8
14050405d:	48 8b d7             	mov    %rdi,%rdx
140504060:	48 8b c8             	mov    %rax,%rcx
140504063:	e8 88 bc ff ff       	call   0x1404ffcf0
140504068:	e9 d4 1d 00 00       	jmp    0x140505e41
14050406d:	b9 20 00 00 00       	mov    $0x20,%ecx
140504072:	e8 91 70 91 00       	call   0x140e1b108
140504077:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
14050407b:	48 85 c0             	test   %rax,%rax
14050407e:	74 1d                	je     0x14050409d
140504080:	48 89 58 08          	mov    %rbx,0x8(%rax)
140504084:	89 58 10             	mov    %ebx,0x10(%rax)
140504087:	66 c7 00 00 00       	movw   $0x0,(%rax)
14050408c:	c7 40 18 01 00 00 00 	movl   $0x1,0x18(%rax)
140504093:	c6 40 1c 00          	movb   $0x0,0x1c(%rax)
140504097:	49 89 46 18          	mov    %rax,0x18(%r14)
14050409b:	eb ba                	jmp    0x140504057
14050409d:	48 8b c3             	mov    %rbx,%rax
1405040a0:	49 89 5e 18          	mov    %rbx,0x18(%r14)
1405040a4:	eb b1                	jmp    0x140504057
1405040a6:	b9 20 00 00 00       	mov    $0x20,%ecx
1405040ab:	e8 58 70 91 00       	call   0x140e1b108
1405040b0:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
1405040b4:	48 85 c0             	test   %rax,%rax
1405040b7:	74 1d                	je     0x1405040d6
1405040b9:	48 89 58 08          	mov    %rbx,0x8(%rax)
1405040bd:	89 58 10             	mov    %ebx,0x10(%rax)
1405040c0:	66 c7 00 00 00       	movw   $0x0,(%rax)
1405040c5:	c7 40 18 01 00 00 00 	movl   $0x1,0x18(%rax)
1405040cc:	c6 40 1c 00          	movb   $0x0,0x1c(%rax)
1405040d0:	49 89 46 20          	mov    %rax,0x20(%r14)
1405040d4:	eb 81                	jmp    0x140504057
1405040d6:	48 8b c3             	mov    %rbx,%rax