4edc5d:	88 01                	mov    %al,(%ecx)
4edc5f:	ff 45 d0             	incl   -0x30(%ebp)
4edc62:	ff 45 dc             	incl   -0x24(%ebp)
4edc65:	8b 45 ec             	mov    -0x14(%ebp),%eax
4edc68:	01 45 d8             	add    %eax,-0x28(%ebp)
4edc6b:	8b 55 dc             	mov    -0x24(%ebp),%edx
4edc6e:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
4edc71:	3b d1                	cmp    %ecx,%edx
4edc73:	72 a2                	jb     0x4edc17
4edc75:	8b 45 e8             	mov    -0x18(%ebp),%eax
4edc78:	01 45 f4             	add    %eax,-0xc(%ebp)
4edc7b:	ff 45 f0             	incl   -0x10(%ebp)
4edc7e:	83 45 cc 04          	addl   $0x4,-0x34(%ebp)
4edc82:	8b 55 fc             	mov    -0x4(%ebp),%edx
4edc85:	8b 4a 0c             	mov    0xc(%edx),%ecx
4edc88:	8b 45 f0             	mov    -0x10(%ebp),%eax
4edc8b:	3b c8                	cmp    %eax,%ecx
4edc8d:	0f 8f 68 ff ff ff    	jg     0x4edbfb
4edc93:	5e                   	pop    %esi
4edc94:	5b                   	pop    %ebx
4edc95:	8b e5                	mov    %ebp,%esp
4edc97:	5d                   	pop    %ebp
4edc98:	c2 04 00             	ret    $0x4
4edc9b:	90                   	nop
4edc9c:	55                   	push   %ebp
4edc9d:	8b ec                	mov    %esp,%ebp
4edc9f:	51                   	push   %ecx
4edca0:	53                   	push   %ebx
4edca1:	56                   	push   %esi
4edca2:	57                   	push   %edi
4edca3:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4edca6:	8b d8                	mov    %eax,%ebx
4edca8:	8b 75 08             	mov    0x8(%ebp),%esi
4edcab:	6a 00                	push   $0x0
4edcad:	8b 83 ec 00 00 00    	mov    0xec(%ebx),%eax
4edcb3:	8b fa                	mov    %edx,%edi
4edcb5:	50                   	push   %eax
4edcb6:	8b ce                	mov    %esi,%ecx
4edcb8:	8b 53 1c             	mov    0x1c(%ebx),%edx
4edcbb:	52                   	push   %edx
4edcbc:	33 d2                	xor    %edx,%edx
4edcbe:	8b 45 fc             	mov    -0x4(%ebp),%eax
4edcc1:	e8 e6 c2 ff ff       	call   0x4e9fac
4edcc6:	8b 4f 1c             	mov    0x1c(%edi),%ecx
4edcc9:	c1 e1 03             	shl    $0x3,%ecx
4edccc:	51                   	push   %ecx
4edccd:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
4edcd0:	8b 93 ec 00 00 00    	mov    0xec(%ebx),%edx
4edcd6:	8b c6                	mov    %esi,%eax
4edcd8:	e8 bb fd ff ff       	call   0x4eda98
4edcdd:	5f                   	pop    %edi
4edcde:	5e                   	pop    %esi
4edcdf:	5b                   	pop    %ebx
4edce0:	59                   	pop    %ecx
4edce1:	5d                   	pop    %ebp
4edce2:	c2 04 00             	ret    $0x4
4edce5:	90                   	nop
4edce6:	90                   	nop
4edce7:	90                   	nop
4edce8:	55                   	push   %ebp
4edce9:	8b ec                	mov    %esp,%ebp
4edceb:	83 c4 ec             	add    $0xffffffec,%esp
4edcee:	53                   	push   %ebx
4edcef:	56                   	push   %esi
4edcf0:	57                   	push   %edi
4edcf1:	89 55 fc             	mov    %edx,-0x4(%ebp)
4edcf4:	8b 55 fc             	mov    -0x4(%ebp),%edx
4edcf7:	8b d9                	mov    %ecx,%ebx
4edcf9:	8b 4a 1c             	mov    0x1c(%edx),%ecx
4edcfc:	c1 e1 03             	shl    $0x3,%ecx
4edcff:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4edd02:	8b 55 f4             	mov    -0xc(%ebp),%edx
4edd05:	03 d2                	add    %edx,%edx
4edd07:	52                   	push   %edx
4edd08:	8b 90 ec 00 00 00    	mov    0xec(%eax),%edx
4edd0e:	8b 48 1c             	mov    0x1c(%eax),%ecx
4edd11:	8b c3                	mov    %ebx,%eax
4edd13:	e8 80 fd ff ff       	call   0x4eda98
4edd18:	33 c9                	xor    %ecx,%ecx
4edd1a:	8b c3                	mov    %ebx,%eax
4edd1c:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4edd1f:	89 45 ec             	mov    %eax,-0x14(%ebp)
4edd22:	8b 55 08             	mov    0x8(%ebp),%edx
4edd25:	8b ca                	mov    %edx,%ecx
4edd27:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4edd2a:	eb 3f                	jmp    0x4edd6b
4edd2c:	8b 45 f0             	mov    -0x10(%ebp),%eax
4edd2f:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4edd32:	33 f6                	xor    %esi,%esi
4edd34:	8b 5d f4             	mov    -0xc(%ebp),%ebx
4edd37:	8b 10                	mov    (%eax),%edx
4edd39:	8b 01                	mov    (%ecx),%eax
4edd3b:	33 c9                	xor    %ecx,%ecx
4edd3d:	3b f3                	cmp    %ebx,%esi
4edd3f:	73 1f                	jae    0x4edd60
4edd41:	0f b6 78 01          	movzbl 0x1(%eax),%edi
4edd45:	33 db                	xor    %ebx,%ebx
4edd47:	46                   	inc    %esi
4edd48:	8a 18                	mov    (%eax),%bl
4edd4a:	83 c0 02             	add    $0x2,%eax
4edd4d:	03 df                	add    %edi,%ebx
4edd4f:	03 d9                	add    %ecx,%ebx
4edd51:	83 f1 01             	xor    $0x1,%ecx
4edd54:	d1 fb                	sar    $1,%ebx
4edd56:	88 1a                	mov    %bl,(%edx)
4edd58:	42                   	inc    %edx
4edd59:	8b 5d f4             	mov    -0xc(%ebp),%ebx
4edd5c:	3b f3                	cmp    %ebx,%esi
4edd5e:	72 e1                	jb     0x4edd41
4edd60:	ff 45 f8             	incl   -0x8(%ebp)
4edd63:	83 45 ec 04          	addl   $0x4,-0x14(%ebp)
4edd67:	83 45 f0 04          	addl   $0x4,-0x10(%ebp)
4edd6b:	8b 45 fc             	mov    -0x4(%ebp),%eax
4edd6e:	8b 50 0c             	mov    0xc(%eax),%edx
4edd71:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4edd74:	3b d1                	cmp    %ecx,%edx
4edd76:	7f b4                	jg     0x4edd2c
4edd78:	5f                   	pop    %edi
4edd79:	5e                   	pop    %esi
4edd7a:	5b                   	pop    %ebx
4edd7b:	8b e5                	mov    %ebp,%esp
4edd7d:	5d                   	pop    %ebp
4edd7e:	c2 04 00             	ret    $0x4
4edd81:	90                   	nop
4edd82:	90                   	nop
4edd83:	90                   	nop
4edd84:	55                   	push   %ebp
4edd85:	8b ec                	mov    %esp,%ebp
4edd87:	83 c4 e8             	add    $0xffffffe8,%esp
4edd8a:	53                   	push   %ebx
4edd8b:	56                   	push   %esi
4edd8c:	57                   	push   %edi
4edd8d:	89 55 fc             	mov    %edx,-0x4(%ebp)
4edd90:	8b 55 fc             	mov    -0x4(%ebp),%edx
4edd93:	8b d9                	mov    %ecx,%ebx
4edd95:	8b 4a 1c             	mov    0x1c(%edx),%ecx
4edd98:	c1 e1 03             	shl    $0x3,%ecx
4edd9b:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4edd9e:	8b 55 f0             	mov    -0x10(%ebp),%edx
4edda1:	03 d2                	add    %edx,%edx
4edda3:	52                   	push   %edx
4edda4:	8b 90 ec 00 00 00    	mov    0xec(%eax),%edx
4eddaa:	8b 48 1c             	mov    0x1c(%eax),%ecx
4eddad:	8b c3                	mov    %ebx,%eax
4eddaf:	e8 e4 fc ff ff       	call   0x4eda98
4eddb4:	33 c9                	xor    %ecx,%ecx
4eddb6:	8b c3                	mov    %ebx,%eax
4eddb8:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4eddbb:	89 45 e8             	mov    %eax,-0x18(%ebp)
4eddbe:	8b 55 08             	mov    0x8(%ebp),%edx
4eddc1:	8b ca                	mov    %edx,%ecx
4eddc3:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4eddc6:	eb 60                	jmp    0x4ede28
4eddc8:	8b 45 ec             	mov    -0x14(%ebp),%eax
4eddcb:	8b 55 e8             	mov    -0x18(%ebp),%edx
4eddce:	33 db                	xor    %ebx,%ebx
4eddd0:	be 01 00 00 00       	mov    $0x1,%esi
4eddd5:	8b 08                	mov    (%eax),%ecx
4eddd7:	8b 02                	mov    (%edx),%eax
4eddd9:	8b 55 e8             	mov    -0x18(%ebp),%edx
4edddc:	8b 52 04             	mov    0x4(%edx),%edx
4edddf:	89 5d f4             	mov    %ebx,-0xc(%ebp)
4edde2:	8b 5d f4             	mov    -0xc(%ebp),%ebx
4edde5:	3b 5d f0             	cmp    -0x10(%ebp),%ebx
4edde8:	73 33                	jae    0x4ede1d
4eddea:	0f b6 78 01          	movzbl 0x1(%eax),%edi
4eddee:	33 db                	xor    %ebx,%ebx
4eddf0:	8a 18                	mov    (%eax),%bl
4eddf2:	83 c0 02             	add    $0x2,%eax
4eddf5:	03 df                	add    %edi,%ebx
4eddf7:	0f b6 3a             	movzbl (%edx),%edi
4eddfa:	03 df                	add    %edi,%ebx
4eddfc:	0f b6 7a 01          	movzbl 0x1(%edx),%edi
4ede00:	03 df                	add    %edi,%ebx
4ede02:	83 c2 02             	add    $0x2,%edx
4ede05:	03 de                	add    %esi,%ebx
4ede07:	83 f6 03             	xor    $0x3,%esi
4ede0a:	c1 fb 02             	sar    $0x2,%ebx
4ede0d:	88 19                	mov    %bl,(%ecx)
4ede0f:	41                   	inc    %ecx
4ede10:	ff 45 f4             	incl   -0xc(%ebp)
4ede13:	8b 5d f4             	mov    -0xc(%ebp),%ebx
4ede16:	8b 7d f0             	mov    -0x10(%ebp),%edi
4ede19:	3b df                	cmp    %edi,%ebx
4ede1b:	72 cd                	jb     0x4eddea
4ede1d:	83 45 e8 08          	addl   $0x8,-0x18(%ebp)
4ede21:	ff 45 f8             	incl   -0x8(%ebp)
4ede24:	83 45 ec 04          	addl   $0x4,-0x14(%ebp)
4ede28:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ede2b:	8b 50 0c             	mov    0xc(%eax),%edx
4ede2e:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4ede31:	3b d1                	cmp    %ecx,%edx
4ede33:	7f 93                	jg     0x4eddc8
4ede35:	5f                   	pop    %edi
4ede36:	5e                   	pop    %esi
4ede37:	5b                   	pop    %ebx
4ede38:	8b e5                	mov    %ebp,%esp
4ede3a:	5d                   	pop    %ebp
4ede3b:	c2 04 00             	ret    $0x4
4ede3e:	90                   	nop
4ede3f:	90                   	nop
4ede40:	55                   	push   %ebp
4ede41:	8b ec                	mov    %esp,%ebp
4ede43:	83 c4 d4             	add    $0xffffffd4,%esp
4ede46:	53                   	push   %ebx
4ede47:	56                   	push   %esi
4ede48:	57                   	push   %edi
4ede49:	8b d8                	mov    %eax,%ebx
4ede4b:	89 55 fc             	mov    %edx,-0x4(%ebp)
4ede4e:	8b f1                	mov    %ecx,%esi
4ede50:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ede53:	8b 50 1c             	mov    0x1c(%eax),%edx
4ede56:	8d 46 fc             	lea    -0x4(%esi),%eax
4ede59:	c1 e2 03             	shl    $0x3,%edx
4ede5c:	89 55 f0             	mov    %edx,-0x10(%ebp)
4ede5f:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4ede62:	03 c9                	add    %ecx,%ecx
4ede64:	51                   	push   %ecx
4ede65:	8b 93 ec 00 00 00    	mov    0xec(%ebx),%edx
4ede6b:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
4ede6e:	83 c2 02             	add    $0x2,%edx
4ede71:	e8 22 fc ff ff       	call   0x4eda98
4ede76:	8b 83 c0 00 00 00    	mov    0xc0(%ebx),%eax
4ede7c:	b9 00 40 00 00       	mov    $0x4000,%ecx
4ede81:	8b d0                	mov    %eax,%edx
4ede83:	c1 e2 04             	shl    $0x4,%edx
4ede86:	c1 e0 04             	shl    $0x4,%eax
4ede89:	8d 14 92             	lea    (%edx,%edx,4),%edx
4ede8c:	2b ca                	sub    %edx,%ecx
4ede8e:	8b d6                	mov    %esi,%edx
4ede90:	89 4d e0             	mov    %ecx,-0x20(%ebp)
4ede93:	89 45 dc             	mov    %eax,-0x24(%ebp)
4ede96:	33 c0                	xor    %eax,%eax
4ede98:	89 45 f8             	mov    %eax,-0x8(%ebp)
4ede9b:	89 55 d4             	mov    %edx,-0x2c(%ebp)
4ede9e:	8b 4d 08             	mov    0x8(%ebp),%ecx
4edea1:	8b c1                	mov    %ecx,%eax
4edea3:	89 45 d8             	mov    %eax,-0x28(%ebp)
4edea6:	e9 0d 02 00 00       	jmp    0x4ee0b8
4edeab:	8b 55 d8             	mov    -0x28(%ebp),%edx
4edeae:	8b 0a                	mov    (%edx),%ecx
4edeb0:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4edeb3:	8b 45 d4             	mov    -0x2c(%ebp),%eax
4edeb6:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
4edeb9:	8b 55 d4             	mov    -0x2c(%ebp),%edx
4edebc:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
4edebf:	8b 00                	mov    (%eax),%eax
4edec1:	8b 73 08             	mov    0x8(%ebx),%esi
4edec4:	8b 52 04             	mov    0x4(%edx),%edx
4edec7:	33 db                	xor    %ebx,%ebx
4edec9:	0f b6 78 01          	movzbl 0x1(%eax),%edi
4edecd:	8a 18                	mov    (%eax),%bl
4edecf:	8b 49 fc             	mov    -0x4(%ecx),%ecx
4eded2:	03 df                	add    %edi,%ebx
4eded4:	0f b6 3a             	movzbl (%edx),%edi
4eded7:	03 df                	add    %edi,%ebx
4eded9:	0f b6 7a 01          	movzbl 0x1(%edx),%edi
4ededd:	03 df                	add    %edi,%ebx
4ededf:	89 5d e8             	mov    %ebx,-0x18(%ebp)
4edee2:	33 db                	xor    %ebx,%ebx
4edee4:	0f b6 79 01          	movzbl 0x1(%ecx),%edi
4edee8:	8a 19                	mov    (%ecx),%bl
4edeea:	03 df                	add    %edi,%ebx
4edeec:	0f b6 3e             	movzbl (%esi),%edi
4edeef:	03 df                	add    %edi,%ebx
4edef1:	0f b6 7e 01          	movzbl 0x1(%esi),%edi
4edef5:	03 df                	add    %edi,%ebx
4edef7:	0f b6 38             	movzbl (%eax),%edi
4edefa:	03 df                	add    %edi,%ebx
4edefc:	0f b6 78 02          	movzbl 0x2(%eax),%edi
4edf00:	03 df                	add    %edi,%ebx
4edf02:	83 c0 02             	add    $0x2,%eax
4edf05:	0f b6 3a             	movzbl (%edx),%edi
4edf08:	03 df                	add    %edi,%ebx
4edf0a:	0f b6 7a 02          	movzbl 0x2(%edx),%edi
4edf0e:	03 df                	add    %edi,%ebx
4edf10:	83 c2 02             	add    $0x2,%edx
4edf13:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
4edf16:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
4edf19:	01 5d e4             	add    %ebx,-0x1c(%ebp)
4edf1c:	0f b6 79 02          	movzbl 0x2(%ecx),%edi
4edf20:	33 db                	xor    %ebx,%ebx
4edf22:	8a 19                	mov    (%ecx),%bl
4edf24:	83 c1 02             	add    $0x2,%ecx
4edf27:	03 df                	add    %edi,%ebx
4edf29:	0f b6 3e             	movzbl (%esi),%edi
4edf2c:	03 df                	add    %edi,%ebx
4edf2e:	0f b6 7e 02          	movzbl 0x2(%esi),%edi
4edf32:	03 df                	add    %edi,%ebx
4edf34:	83 c6 02             	add    $0x2,%esi
4edf37:	01 5d e4             	add    %ebx,-0x1c(%ebp)
4edf3a:	8b 5d e8             	mov    -0x18(%ebp),%ebx
4edf3d:	8b 7d e4             	mov    -0x1c(%ebp),%edi
4edf40:	0f af 7d dc          	imul   -0x24(%ebp),%edi
4edf44:	0f af 5d e0          	imul   -0x20(%ebp),%ebx
4edf48:	03 df                	add    %edi,%ebx
4edf4a:	89 5d e8             	mov    %ebx,-0x18(%ebp)
4edf4d:	8b 5d e8             	mov    -0x18(%ebp),%ebx
4edf50:	8b 7d ec             	mov    -0x14(%ebp),%edi
4edf53:	81 c3 00 80 00 00    	add    $0x8000,%ebx
4edf59:	c1 fb 10             	sar    $0x10,%ebx
4edf5c:	88 1f                	mov    %bl,(%edi)
4edf5e:	ff 45 ec             	incl   -0x14(%ebp)
4edf61:	8b 5d f0             	mov    -0x10(%ebp),%ebx
4edf64:	83 eb 02             	sub    $0x2,%ebx
4edf67:	89 5d f4             	mov    %ebx,-0xc(%ebp)
4edf6a:	8b 5d f4             	mov    -0xc(%ebp),%ebx
4edf6d:	85 db                	test   %ebx,%ebx
4edf6f:	0f 86 a9 00 00 00    	jbe    0x4ee01e
4edf75:	0f b6 78 01          	movzbl 0x1(%eax),%edi
4edf79:	33 db                	xor    %ebx,%ebx
4edf7b:	8a 18                	mov    (%eax),%bl
4edf7d:	03 df                	add    %edi,%ebx
4edf7f:	0f b6 3a             	movzbl (%edx),%edi
4edf82:	03 df                	add    %edi,%ebx
4edf84:	0f b6 7a 01          	movzbl 0x1(%edx),%edi
4edf88:	03 df                	add    %edi,%ebx
4edf8a:	89 5d e8             	mov    %ebx,-0x18(%ebp)
4edf8d:	33 db                	xor    %ebx,%ebx
4edf8f:	0f b6 79 01          	movzbl 0x1(%ecx),%edi
4edf93:	8a 19                	mov    (%ecx),%bl
4edf95:	03 df                	add    %edi,%ebx
4edf97:	0f b6 3e             	movzbl (%esi),%edi
4edf9a:	03 df                	add    %edi,%ebx
4edf9c:	0f b6 7e 01          	movzbl 0x1(%esi),%edi
4edfa0:	03 df                	add    %edi,%ebx
4edfa2:	0f b6 78 ff          	movzbl -0x1(%eax),%edi
4edfa6:	03 df                	add    %edi,%ebx
4edfa8:	0f b6 78 02          	movzbl 0x2(%eax),%edi
4edfac:	03 df                	add    %edi,%ebx
4edfae:	83 c0 02             	add    $0x2,%eax
4edfb1:	0f b6 7a ff          	movzbl -0x1(%edx),%edi
4edfb5:	03 df                	add    %edi,%ebx
4edfb7:	0f b6 7a 02          	movzbl 0x2(%edx),%edi
4edfbb:	03 df                	add    %edi,%ebx
4edfbd:	83 c2 02             	add    $0x2,%edx
4edfc0:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
4edfc3:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
4edfc6:	01 5d e4             	add    %ebx,-0x1c(%ebp)
4edfc9:	0f b6 79 02          	movzbl 0x2(%ecx),%edi
4edfcd:	33 db                	xor    %ebx,%ebx
4edfcf:	8a 59 ff             	mov    -0x1(%ecx),%bl
4edfd2:	83 c1 02             	add    $0x2,%ecx
4edfd5:	03 df                	add    %edi,%ebx
4edfd7:	0f b6 7e ff          	movzbl -0x1(%esi),%edi
4edfdb:	03 df                	add    %edi,%ebx
4edfdd:	0f b6 7e 02          	movzbl 0x2(%esi),%edi
4edfe1:	03 df                	add    %edi,%ebx
4edfe3:	83 c6 02             	add    $0x2,%esi
4edfe6:	01 5d e4             	add    %ebx,-0x1c(%ebp)