475cf8:	89 55 fc             	mov    %edx,-0x4(%ebp)
475cfb:	8b 55 08             	mov    0x8(%ebp),%edx
475cfe:	8b 52 fc             	mov    -0x4(%edx),%edx
475d01:	8b 92 c0 00 00 00    	mov    0xc0(%edx),%edx
475d07:	4a                   	dec    %edx
475d08:	2b d0                	sub    %eax,%edx
475d0a:	7c 4c                	jl     0x475d58
475d0c:	42                   	inc    %edx
475d0d:	6b f0 15             	imul   $0x15,%eax,%esi
475d10:	8b 4d 08             	mov    0x8(%ebp),%ecx
475d13:	8b 49 f8             	mov    -0x8(%ecx),%ecx
475d16:	80 7c 31 10 00       	cmpb   $0x0,0x10(%ecx,%esi,1)
475d1b:	74 37                	je     0x475d54
475d1d:	8b 4d 08             	mov    0x8(%ebp),%ecx
475d20:	8b 49 fc             	mov    -0x4(%ecx),%ecx
475d23:	8b 89 c4 00 00 00    	mov    0xc4(%ecx),%ecx
475d29:	8b 0c 81             	mov    (%ecx,%eax,4),%ecx
475d2c:	8b 49 1c             	mov    0x1c(%ecx),%ecx
475d2f:	f6 41 64 04          	testb  $0x4,0x64(%ecx)
475d33:	75 23                	jne    0x475d58
475d35:	8b 4d 08             	mov    0x8(%ebp),%ecx
475d38:	8b 49 f8             	mov    -0x8(%ecx),%ecx
475d3b:	03 ce                	add    %esi,%ecx
475d3d:	8b 5d 08             	mov    0x8(%ebp),%ebx
475d40:	80 7b f7 01          	cmpb   $0x1,-0x9(%ebx)
475d44:	74 08                	je     0x475d4e
475d46:	8b 49 08             	mov    0x8(%ecx),%ecx
475d49:	01 4d fc             	add    %ecx,-0x4(%ebp)
475d4c:	eb 06                	jmp    0x475d54
475d4e:	8b 49 0c             	mov    0xc(%ecx),%ecx
475d51:	01 4d fc             	add    %ecx,-0x4(%ebp)
475d54:	40                   	inc    %eax
475d55:	4a                   	dec    %edx
475d56:	75 b5                	jne    0x475d0d
475d58:	8b 45 fc             	mov    -0x4(%ebp),%eax
475d5b:	5e                   	pop    %esi
475d5c:	5b                   	pop    %ebx
475d5d:	59                   	pop    %ecx
475d5e:	5d                   	pop    %ebp
475d5f:	c3                   	ret
475d60:	55                   	push   %ebp
475d61:	8b ec                	mov    %esp,%ebp
475d63:	53                   	push   %ebx
475d64:	56                   	push   %esi
475d65:	57                   	push   %edi
475d66:	8b 45 08             	mov    0x8(%ebp),%eax
475d69:	8b 40 fc             	mov    -0x4(%eax),%eax
475d6c:	8b 90 c0 00 00 00    	mov    0xc0(%eax),%edx
475d72:	4a                   	dec    %edx
475d73:	85 d2                	test   %edx,%edx
475d75:	7c 33                	jl     0x475daa
475d77:	42                   	inc    %edx
475d78:	33 c9                	xor    %ecx,%ecx
475d7a:	6b c1 15             	imul   $0x15,%ecx,%eax
475d7d:	8b 5d 08             	mov    0x8(%ebp),%ebx
475d80:	8b 5b f8             	mov    -0x8(%ebx),%ebx
475d83:	8d 04 03             	lea    (%ebx,%eax,1),%eax
475d86:	80 78 10 00          	cmpb   $0x0,0x10(%eax)
475d8a:	74 1a                	je     0x475da6
475d8c:	8b 5d 08             	mov    0x8(%ebp),%ebx
475d8f:	8b 73 0c             	mov    0xc(%ebx),%esi
475d92:	8b 36                	mov    (%esi),%esi
475d94:	8b de                	mov    %esi,%ebx
475d96:	2b 18                	sub    (%eax),%ebx
475d98:	8b 7d 08             	mov    0x8(%ebp),%edi
475d9b:	8b 7f 0c             	mov    0xc(%edi),%edi
475d9e:	2b 70 08             	sub    0x8(%eax),%esi
475da1:	89 30                	mov    %esi,(%eax)
475da3:	89 58 08             	mov    %ebx,0x8(%eax)
475da6:	41                   	inc    %ecx
475da7:	4a                   	dec    %edx
475da8:	75 d0                	jne    0x475d7a
475daa:	5f                   	pop    %edi
475dab:	5e                   	pop    %esi
475dac:	5b                   	pop    %ebx
475dad:	5d                   	pop    %ebp
475dae:	c3                   	ret
475daf:	90                   	nop
475db0:	55                   	push   %ebp
475db1:	8b ec                	mov    %esp,%ebp
475db3:	83 c4 f8             	add    $0xfffffff8,%esp
475db6:	53                   	push   %ebx
475db7:	56                   	push   %esi
475db8:	57                   	push   %edi
475db9:	8b 7d 08             	mov    0x8(%ebp),%edi
475dbc:	83 c7 fc             	add    $0xfffffffc,%edi
475dbf:	8b 07                	mov    (%edi),%eax
475dc1:	c6 80 b2 00 00 00 00 	movb   $0x0,0xb2(%eax)
475dc8:	8b 07                	mov    (%edi),%eax
475dca:	c6 80 b1 00 00 00 00 	movb   $0x0,0xb1(%eax)
475dd1:	8b 07                	mov    (%edi),%eax
475dd3:	8b 40 74             	mov    0x74(%eax),%eax
475dd6:	85 c0                	test   %eax,%eax
475dd8:	0f 8e 3c 01 00 00    	jle    0x475f1a
475dde:	8b 55 08             	mov    0x8(%ebp),%edx
475de1:	8b 52 0c             	mov    0xc(%edx),%edx
475de4:	3b 42 04             	cmp    0x4(%edx),%eax
475de7:	0f 8d 2d 01 00 00    	jge    0x475f1a
475ded:	8b 55 08             	mov    0x8(%ebp),%edx
475df0:	8b 52 0c             	mov    0xc(%edx),%edx
475df3:	8b 52 04             	mov    0x4(%edx),%edx
475df6:	2b d0                	sub    %eax,%edx
475df8:	8b c2                	mov    %edx,%eax
475dfa:	8b 17                	mov    (%edi),%edx
475dfc:	3b 82 a8 00 00 00    	cmp    0xa8(%edx),%eax
475e02:	7d 08                	jge    0x475e0c
475e04:	8b 17                	mov    (%edi),%edx
475e06:	89 82 a8 00 00 00    	mov    %eax,0xa8(%edx)
475e0c:	8b 17                	mov    (%edi),%edx
475e0e:	83 ba a8 00 00 00 00 	cmpl   $0x0,0xa8(%edx)
475e15:	7d 0a                	jge    0x475e21
475e17:	8b 17                	mov    (%edi),%edx
475e19:	33 c9                	xor    %ecx,%ecx
475e1b:	89 8a a8 00 00 00    	mov    %ecx,0xa8(%edx)
475e21:	8b 17                	mov    (%edi),%edx
475e23:	83 ba a8 00 00 00 00 	cmpl   $0x0,0xa8(%edx)
475e2a:	0f 9f c2             	setg   %dl
475e2d:	8b 0f                	mov    (%edi),%ecx
475e2f:	88 91 b2 00 00 00    	mov    %dl,0xb2(%ecx)
475e35:	8b 17                	mov    (%edi),%edx
475e37:	3b 82 a8 00 00 00    	cmp    0xa8(%edx),%eax
475e3d:	0f 9f c2             	setg   %dl
475e40:	8b 07                	mov    (%edi),%eax
475e42:	88 90 b1 00 00 00    	mov    %dl,0xb1(%eax)
475e48:	33 c0                	xor    %eax,%eax
475e4a:	89 45 fc             	mov    %eax,-0x4(%ebp)
475e4d:	8b 07                	mov    (%edi),%eax
475e4f:	80 b8 b2 00 00 00 00 	cmpb   $0x0,0xb2(%eax)
475e56:	74 07                	je     0x475e5f
475e58:	c7 45 fc 13 00 00 00 	movl   $0x13,-0x4(%ebp)
475e5f:	8b 07                	mov    (%edi),%eax
475e61:	8b 40 74             	mov    0x74(%eax),%eax
475e64:	89 45 f8             	mov    %eax,-0x8(%ebp)
475e67:	84 d2                	test   %dl,%dl
475e69:	74 04                	je     0x475e6f
475e6b:	83 6d f8 13          	subl   $0x13,-0x8(%ebp)
475e6f:	8b 07                	mov    (%edi),%eax
475e71:	8b b0 c0 00 00 00    	mov    0xc0(%eax),%esi
475e77:	4e                   	dec    %esi
475e78:	85 f6                	test   %esi,%esi
475e7a:	0f 8c 8a 00 00 00    	jl     0x475f0a
475e80:	46                   	inc    %esi
475e81:	33 db                	xor    %ebx,%ebx
475e83:	6b c3 15             	imul   $0x15,%ebx,%eax
475e86:	8b 55 08             	mov    0x8(%ebp),%edx
475e89:	8b 52 f8             	mov    -0x8(%edx),%edx
475e8c:	8d 04 02             	lea    (%edx,%eax,1),%eax
475e8f:	50                   	push   %eax
475e90:	e8 4b 1d f9 ff       	call   0x407be0
475e95:	85 c0                	test   %eax,%eax
475e97:	75 69                	jne    0x475f02
475e99:	8b 07                	mov    (%edi),%eax
475e9b:	8b 80 a8 00 00 00    	mov    0xa8(%eax),%eax
475ea1:	f7 d8                	neg    %eax
475ea3:	50                   	push   %eax
475ea4:	6a 00                	push   $0x0
475ea6:	6b c3 15             	imul   $0x15,%ebx,%eax
475ea9:	8b 55 08             	mov    0x8(%ebp),%edx
475eac:	8b 52 f8             	mov    -0x8(%edx),%edx
475eaf:	8d 04 02             	lea    (%edx,%eax,1),%eax
475eb2:	50                   	push   %eax
475eb3:	e8 c0 1d f9 ff       	call   0x407c78
475eb8:	6b d3 15             	imul   $0x15,%ebx,%edx
475ebb:	8b 4d 08             	mov    0x8(%ebp),%ecx
475ebe:	8b 49 f8             	mov    -0x8(%ecx),%ecx
475ec1:	80 7c 11 10 00       	cmpb   $0x0,0x10(%ecx,%edx,1)
475ec6:	74 3a                	je     0x475f02
475ec8:	6b c3 15             	imul   $0x15,%ebx,%eax
475ecb:	8b 55 08             	mov    0x8(%ebp),%edx
475ece:	8b 52 f8             	mov    -0x8(%edx),%edx
475ed1:	8b 54 02 04          	mov    0x4(%edx,%eax,1),%edx
475ed5:	3b 55 fc             	cmp    -0x4(%ebp),%edx
475ed8:	7c 0f                	jl     0x475ee9
475eda:	8b 55 08             	mov    0x8(%ebp),%edx
475edd:	8b 52 f8             	mov    -0x8(%edx),%edx
475ee0:	8b 44 02 0c          	mov    0xc(%edx,%eax,1),%eax
475ee4:	3b 45 f8             	cmp    -0x8(%ebp),%eax
475ee7:	7e 19                	jle    0x475f02
475ee9:	6b c3 15             	imul   $0x15,%ebx,%eax
475eec:	8b 55 08             	mov    0x8(%ebp),%edx
475eef:	8b 52 f8             	mov    -0x8(%edx),%edx
475ef2:	c6 44 02 10 00       	movb   $0x0,0x10(%edx,%eax,1)
475ef7:	8b 55 08             	mov    0x8(%ebp),%edx
475efa:	8b 52 f8             	mov    -0x8(%edx),%edx
475efd:	c6 44 02 13 01       	movb   $0x1,0x13(%edx,%eax,1)
475f02:	43                   	inc    %ebx
475f03:	4e                   	dec    %esi
475f04:	0f 85 79 ff ff ff    	jne    0x475e83
475f0a:	8b 07                	mov    (%edi),%eax
475f0c:	8b 40 74             	mov    0x74(%eax),%eax
475f0f:	8b 55 08             	mov    0x8(%ebp),%edx
475f12:	8b 52 0c             	mov    0xc(%edx),%edx
475f15:	89 42 04             	mov    %eax,0x4(%edx)
475f18:	eb 0a                	jmp    0x475f24
475f1a:	8b 07                	mov    (%edi),%eax
475f1c:	33 d2                	xor    %edx,%edx
475f1e:	89 90 a8 00 00 00    	mov    %edx,0xa8(%eax)
475f24:	5f                   	pop    %edi
475f25:	5e                   	pop    %esi
475f26:	5b                   	pop    %ebx
475f27:	59                   	pop    %ecx
475f28:	59                   	pop    %ecx
475f29:	5d                   	pop    %ebp
475f2a:	c3                   	ret
475f2b:	90                   	nop
475f2c:	55                   	push   %ebp
475f2d:	8b ec                	mov    %esp,%ebp
475f2f:	83 c4 f0             	add    $0xfffffff0,%esp
475f32:	53                   	push   %ebx
475f33:	56                   	push   %esi
475f34:	57                   	push   %edi
475f35:	88 55 fb             	mov    %dl,-0x5(%ebp)
475f38:	89 45 fc             	mov    %eax,-0x4(%ebp)
475f3b:	8b 45 08             	mov    0x8(%ebp),%eax
475f3e:	83 78 f0 ff          	cmpl   $0xffffffff,-0x10(%eax)
475f42:	0f 84 53 02 00 00    	je     0x47619b
475f48:	8b 45 08             	mov    0x8(%ebp),%eax
475f4b:	80 78 ef 00          	cmpb   $0x0,-0x11(%eax)
475f4f:	74 5e                	je     0x475faf
475f51:	8b 45 08             	mov    0x8(%ebp),%eax
475f54:	8b 40 fc             	mov    -0x4(%eax),%eax
475f57:	83 78 4c 00          	cmpl   $0x0,0x4c(%eax)
475f5b:	75 52                	jne    0x475faf
475f5d:	8b 45 08             	mov    0x8(%ebp),%eax
475f60:	80 78 f7 00          	cmpb   $0x0,-0x9(%eax)
475f64:	75 20                	jne    0x475f86
475f66:	8b 45 08             	mov    0x8(%ebp),%eax
475f69:	8b 40 0c             	mov    0xc(%eax),%eax
475f6c:	8b 00                	mov    (%eax),%eax
475f6e:	8b 55 08             	mov    0x8(%ebp),%edx
475f71:	3b 42 1c             	cmp    0x1c(%edx),%eax
475f74:	7d 10                	jge    0x475f86
475f76:	8b 45 08             	mov    0x8(%ebp),%eax
475f79:	8b 40 1c             	mov    0x1c(%eax),%eax
475f7c:	8b 55 08             	mov    0x8(%ebp),%edx
475f7f:	8b 52 0c             	mov    0xc(%edx),%edx
475f82:	89 02                	mov    %eax,(%edx)
475f84:	eb 29                	jmp    0x475faf
475f86:	8b 45 08             	mov    0x8(%ebp),%eax
475f89:	80 78 f7 01          	cmpb   $0x1,-0x9(%eax)
475f8d:	75 20                	jne    0x475faf
475f8f:	8b 45 08             	mov    0x8(%ebp),%eax
475f92:	8b 40 0c             	mov    0xc(%eax),%eax
475f95:	8b 40 04             	mov    0x4(%eax),%eax
475f98:	8b 55 08             	mov    0x8(%ebp),%edx
475f9b:	3b 42 1c             	cmp    0x1c(%edx),%eax
475f9e:	7d 0f                	jge    0x475faf
475fa0:	8b 45 08             	mov    0x8(%ebp),%eax
475fa3:	8b 40 1c             	mov    0x1c(%eax),%eax
475fa6:	8b 55 08             	mov    0x8(%ebp),%edx
475fa9:	8b 52 0c             	mov    0xc(%edx),%edx
475fac:	89 42 04             	mov    %eax,0x4(%edx)
475faf:	c7 45 f4 ff ff ff ff 	movl   $0xffffffff,-0xc(%ebp)
475fb6:	8b 45 08             	mov    0x8(%ebp),%eax
475fb9:	8b 70 f0             	mov    -0x10(%eax),%esi
475fbc:	8b 7d fc             	mov    -0x4(%ebp),%edi
475fbf:	2b fe                	sub    %esi,%edi
475fc1:	0f 8c 32 01 00 00    	jl     0x4760f9
475fc7:	47                   	inc    %edi
475fc8:	6b c6 15             	imul   $0x15,%esi,%eax
475fcb:	8b 55 08             	mov    0x8(%ebp),%edx
475fce:	8b 52 f8             	mov    -0x8(%edx),%edx
475fd1:	8d 1c 02             	lea    (%edx,%eax,1),%ebx
475fd4:	80 7b 10 00          	cmpb   $0x0,0x10(%ebx)
475fd8:	0f 84 13 01 00 00    	je     0x4760f1
475fde:	8b 45 08             	mov    0x8(%ebp),%eax
475fe1:	8b 40 fc             	mov    -0x4(%eax),%eax
475fe4:	8b 80 c4 00 00 00    	mov    0xc4(%eax),%eax
475fea:	8b 04 b0             	mov    (%eax,%esi,4),%eax
475fed:	8b 40 1c             	mov    0x1c(%eax),%eax
475ff0:	89 45 f0             	mov    %eax,-0x10(%ebp)
475ff3:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
475ff7:	7d 0c                	jge    0x476005
475ff9:	8b 45 f0             	mov    -0x10(%ebp),%eax
475ffc:	f6 40 65 02          	testb  $0x2,0x65(%eax)
476000:	74 03                	je     0x476005
476002:	89 75 f4             	mov    %esi,-0xc(%ebp)
476005:	8b 45 08             	mov    0x8(%ebp),%eax
476008:	8b 40 fc             	mov    -0x4(%eax),%eax
47600b:	8a 40 71             	mov    0x71(%eax),%al
47600e:	84 c0                	test   %al,%al
476010:	75 0d                	jne    0x47601f
476012:	8b 55 f0             	mov    -0x10(%ebp),%edx
476015:	f6 42 40 02          	testb  $0x2,0x40(%edx)
476019:	75 04                	jne    0x47601f
47601b:	33 d2                	xor    %edx,%edx
47601d:	eb 02                	jmp    0x476021
47601f:	b2 01                	mov    $0x1,%dl
476021:	8b 4d 08             	mov    0x8(%ebp),%ecx
476024:	84 c0                	test   %al,%al
476026:	0f 84 b4 00 00 00    	je     0x4760e0
47602c:	80 7d fb 00          	cmpb   $0x0,-0x5(%ebp)
476030:	74 2f                	je     0x476061
476032:	8b 45 08             	mov    0x8(%ebp),%eax
476035:	80 78 ef 00          	cmpb   $0x0,-0x11(%eax)
476039:	75 26                	jne    0x476061
47603b:	8b 45 08             	mov    0x8(%ebp),%eax
47603e:	80 78 f7 02          	cmpb   $0x2,-0x9(%eax)
476042:	74 1d                	je     0x476061
476044:	8b 45 08             	mov    0x8(%ebp),%eax
476047:	8b 40 0c             	mov    0xc(%eax),%eax
47604a:	8b 00                	mov    (%eax),%eax
47604c:	8b 55 08             	mov    0x8(%ebp),%edx
47604f:	89 42 e8             	mov    %eax,-0x18(%edx)
476052:	8b 45 08             	mov    0x8(%ebp),%eax
476055:	8b 40 0c             	mov    0xc(%eax),%eax
476058:	8b 40 04             	mov    0x4(%eax),%eax
47605b:	8b 55 08             	mov    0x8(%ebp),%edx
47605e:	89 42 e4             	mov    %eax,-0x1c(%edx)
476061:	8b 45 f0             	mov    -0x10(%ebp),%eax
476064:	66 8b 40 64          	mov    0x64(%eax),%ax
476068:	66 23 05 bc 61 47 00 	and    0x4761bc,%ax
47606f:	66 8b 15 c0 61 47 00 	mov    0x4761c0,%dx
476076:	66 3b d0             	cmp    %ax,%dx
476079:	74 24                	je     0x47609f
47607b:	8b 45 08             	mov    0x8(%ebp),%eax
47607e:	80 78 f7 01          	cmpb   $0x1,-0x9(%eax)
476082:	74 0e                	je     0x476092
476084:	8b 45 08             	mov    0x8(%ebp),%eax
476087:	8b 40 e4             	mov    -0x1c(%eax),%eax
47608a:	03 43 04             	add    0x4(%ebx),%eax
47608d:	89 43 0c             	mov    %eax,0xc(%ebx)
476090:	eb 5f                	jmp    0x4760f1
476092:	8b 45 08             	mov    0x8(%ebp),%eax
476095:	8b 40 e8             	mov    -0x18(%eax),%eax
476098:	03 03                	add    (%ebx),%eax
47609a:	89 43 08             	mov    %eax,0x8(%ebx)
47609d:	eb 52                	jmp    0x4760f1
47609f:	8b 45 08             	mov    0x8(%ebp),%eax
4760a2:	80 78 f7 01          	cmpb   $0x1,-0x9(%eax)
4760a6:	74 1d                	je     0x4760c5
4760a8:	8b 45 08             	mov    0x8(%ebp),%eax
4760ab:	8b 40 e4             	mov    -0x1c(%eax),%eax
4760ae:	8b 53 0c             	mov    0xc(%ebx),%edx
4760b1:	2b 53 04             	sub    0x4(%ebx),%edx
4760b4:	2b c2                	sub    %edx,%eax
4760b6:	d1 f8                	sar    $1,%eax
4760b8:	79 03                	jns    0x4760bd
4760ba:	83 d0 00             	adc    $0x0,%eax
4760bd:	01 43 04             	add    %eax,0x4(%ebx)
4760c0:	01 43 0c             	add    %eax,0xc(%ebx)
4760c3:	eb 2c                	jmp    0x4760f1
4760c5:	8b 45 08             	mov    0x8(%ebp),%eax
4760c8:	8b 40 e8             	mov    -0x18(%eax),%eax
4760cb:	8b 53 08             	mov    0x8(%ebx),%edx
4760ce:	2b 13                	sub    (%ebx),%edx
4760d0:	2b c2                	sub    %edx,%eax
4760d2:	d1 f8                	sar    $1,%eax
4760d4:	79 03                	jns    0x4760d9
4760d6:	83 d0 00             	adc    $0x0,%eax