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)
4edfe9:	8b 5d e8             	mov    -0x18(%ebp),%ebx
4edfec:	8b 7d e4             	mov    -0x1c(%ebp),%edi
4edfef:	0f af 7d dc          	imul   -0x24(%ebp),%edi
4edff3:	0f af 5d e0          	imul   -0x20(%ebp),%ebx
4edff7:	03 df                	add    %edi,%ebx
4edff9:	89 5d e8             	mov    %ebx,-0x18(%ebp)
4edffc:	8b 5d e8             	mov    -0x18(%ebp),%ebx
4edfff:	8b 7d ec             	mov    -0x14(%ebp),%edi
4ee002:	81 c3 00 80 00 00    	add    $0x8000,%ebx
4ee008:	c1 fb 10             	sar    $0x10,%ebx
4ee00b:	88 1f                	mov    %bl,(%edi)
4ee00d:	ff 45 ec             	incl   -0x14(%ebp)
4ee010:	ff 4d f4             	decl   -0xc(%ebp)
4ee013:	8b 5d f4             	mov    -0xc(%ebp),%ebx
4ee016:	85 db                	test   %ebx,%ebx
4ee018:	0f 87 57 ff ff ff    	ja     0x4edf75
4ee01e:	0f b6 78 01          	movzbl 0x1(%eax),%edi
4ee022:	33 db                	xor    %ebx,%ebx
4ee024:	8a 18                	mov    (%eax),%bl
4ee026:	03 df                	add    %edi,%ebx
4ee028:	0f b6 3a             	movzbl (%edx),%edi
4ee02b:	03 df                	add    %edi,%ebx
4ee02d:	0f b6 7a 01          	movzbl 0x1(%edx),%edi
4ee031:	03 df                	add    %edi,%ebx
4ee033:	89 5d e8             	mov    %ebx,-0x18(%ebp)
4ee036:	33 db                	xor    %ebx,%ebx
4ee038:	0f b6 79 01          	movzbl 0x1(%ecx),%edi
4ee03c:	8a 19                	mov    (%ecx),%bl
4ee03e:	03 df                	add    %edi,%ebx
4ee040:	0f b6 3e             	movzbl (%esi),%edi
4ee043:	03 df                	add    %edi,%ebx
4ee045:	0f b6 7e 01          	movzbl 0x1(%esi),%edi
4ee049:	03 df                	add    %edi,%ebx
4ee04b:	0f b6 78 ff          	movzbl -0x1(%eax),%edi
4ee04f:	0f b6 40 01          	movzbl 0x1(%eax),%eax
4ee053:	03 df                	add    %edi,%ebx
4ee055:	03 d8                	add    %eax,%ebx
4ee057:	33 c0                	xor    %eax,%eax
4ee059:	8a 42 ff             	mov    -0x1(%edx),%al
4ee05c:	0f b6 52 01          	movzbl 0x1(%edx),%edx
4ee060:	03 d8                	add    %eax,%ebx
4ee062:	03 da                	add    %edx,%ebx
4ee064:	33 d2                	xor    %edx,%edx
4ee066:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
4ee069:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4ee06c:	01 45 e4             	add    %eax,-0x1c(%ebp)
4ee06f:	33 c0                	xor    %eax,%eax
4ee071:	8a 51 ff             	mov    -0x1(%ecx),%dl
4ee074:	8a 46 ff             	mov    -0x1(%esi),%al
4ee077:	0f b6 49 01          	movzbl 0x1(%ecx),%ecx
4ee07b:	03 d1                	add    %ecx,%edx
4ee07d:	33 c9                	xor    %ecx,%ecx
4ee07f:	8a 4e 01             	mov    0x1(%esi),%cl
4ee082:	03 d0                	add    %eax,%edx
4ee084:	03 d1                	add    %ecx,%edx
4ee086:	01 55 e4             	add    %edx,-0x1c(%ebp)
4ee089:	8b 55 e8             	mov    -0x18(%ebp),%edx
4ee08c:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4ee08f:	0f af 45 dc          	imul   -0x24(%ebp),%eax
4ee093:	0f af 55 e0          	imul   -0x20(%ebp),%edx
4ee097:	03 d0                	add    %eax,%edx
4ee099:	89 55 e8             	mov    %edx,-0x18(%ebp)
4ee09c:	8b 55 e8             	mov    -0x18(%ebp),%edx
4ee09f:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4ee0a2:	81 c2 00 80 00 00    	add    $0x8000,%edx
4ee0a8:	c1 fa 10             	sar    $0x10,%edx
4ee0ab:	88 11                	mov    %dl,(%ecx)
4ee0ad:	83 45 d4 08          	addl   $0x8,-0x2c(%ebp)
4ee0b1:	ff 45 f8             	incl   -0x8(%ebp)
4ee0b4:	83 45 d8 04          	addl   $0x4,-0x28(%ebp)
4ee0b8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ee0bb:	8b 50 0c             	mov    0xc(%eax),%edx
4ee0be:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4ee0c1:	3b d1                	cmp    %ecx,%edx
4ee0c3:	0f 8f e2 fd ff ff    	jg     0x4edeab
4ee0c9:	5f                   	pop    %edi
4ee0ca:	5e                   	pop    %esi
4ee0cb:	5b                   	pop    %ebx
4ee0cc:	8b e5                	mov    %ebp,%esp
4ee0ce:	5d                   	pop    %ebp
4ee0cf:	c2 04 00             	ret    $0x4
4ee0d2:	90                   	nop
4ee0d3:	90                   	nop
4ee0d4:	55                   	push   %ebp
4ee0d5:	8b ec                	mov    %esp,%ebp
4ee0d7:	83 c4 cc             	add    $0xffffffcc,%esp
4ee0da:	53                   	push   %ebx
4ee0db:	56                   	push   %esi
4ee0dc:	8b d8                	mov    %eax,%ebx
4ee0de:	89 55 fc             	mov    %edx,-0x4(%ebp)
4ee0e1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ee0e4:	8b f1                	mov    %ecx,%esi
4ee0e6:	8b 50 1c             	mov    0x1c(%eax),%edx
4ee0e9:	8d 46 fc             	lea    -0x4(%esi),%eax
4ee0ec:	c1 e2 03             	shl    $0x3,%edx
4ee0ef:	89 55 f0             	mov    %edx,-0x10(%ebp)
4ee0f2:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4ee0f5:	51                   	push   %ecx
4ee0f6:	8b 93 ec 00 00 00    	mov    0xec(%ebx),%edx
4ee0fc:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
4ee0ff:	83 c2 02             	add    $0x2,%edx
4ee102:	e8 91 f9 ff ff       	call   0x4eda98
4ee107:	8b 83 c0 00 00 00    	mov    0xc0(%ebx),%eax
4ee10d:	b9 00 00 01 00       	mov    $0x10000,%ecx
4ee112:	8b d0                	mov    %eax,%edx
4ee114:	c1 e2 09             	shl    $0x9,%edx
4ee117:	2b ca                	sub    %edx,%ecx
4ee119:	8b d6                	mov    %esi,%edx
4ee11b:	c1 e0 06             	shl    $0x6,%eax
4ee11e:	89 4d dc             	mov    %ecx,-0x24(%ebp)
4ee121:	89 45 d8             	mov    %eax,-0x28(%ebp)
4ee124:	33 c0                	xor    %eax,%eax
4ee126:	89 45 f8             	mov    %eax,-0x8(%ebp)
4ee129:	89 55 cc             	mov    %edx,-0x34(%ebp)
4ee12c:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ee12f:	8b c1                	mov    %ecx,%eax
4ee131:	89 45 d0             	mov    %eax,-0x30(%ebp)
4ee134:	e9 18 01 00 00       	jmp    0x4ee251
4ee139:	8b 55 d0             	mov    -0x30(%ebp),%edx
4ee13c:	8b 0a                	mov    (%edx),%ecx
4ee13e:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
4ee141:	8b 45 cc             	mov    -0x34(%ebp),%eax
4ee144:	8b 55 cc             	mov    -0x34(%ebp),%edx
4ee147:	8b 08                	mov    (%eax),%ecx
4ee149:	8b 42 fc             	mov    -0x4(%edx),%eax
4ee14c:	89 45 ec             	mov    %eax,-0x14(%ebp)
4ee14f:	8b 55 cc             	mov    -0x34(%ebp),%edx
4ee152:	8b 42 04             	mov    0x4(%edx),%eax
4ee155:	89 45 e8             	mov    %eax,-0x18(%ebp)
4ee158:	33 c0                	xor    %eax,%eax
4ee15a:	8b 55 ec             	mov    -0x14(%ebp),%edx
4ee15d:	8b 5d e8             	mov    -0x18(%ebp),%ebx
4ee160:	8a 01                	mov    (%ecx),%al
4ee162:	41                   	inc    %ecx
4ee163:	0f b6 1b             	movzbl (%ebx),%ebx
4ee166:	0f b6 12             	movzbl (%edx),%edx
4ee169:	ff 45 e8             	incl   -0x18(%ebp)
4ee16c:	ff 45 ec             	incl   -0x14(%ebp)
4ee16f:	03 d3                	add    %ebx,%edx
4ee171:	8b 5d ec             	mov    -0x14(%ebp),%ebx
4ee174:	03 d0                	add    %eax,%edx
4ee176:	0f b6 33             	movzbl (%ebx),%esi
4ee179:	8b 5d e8             	mov    -0x18(%ebp),%ebx
4ee17c:	0f b6 1b             	movzbl (%ebx),%ebx
4ee17f:	03 f3                	add    %ebx,%esi
4ee181:	33 db                	xor    %ebx,%ebx
4ee183:	8a 19                	mov    (%ecx),%bl
4ee185:	03 f3                	add    %ebx,%esi
4ee187:	8b da                	mov    %edx,%ebx
4ee189:	2b d8                	sub    %eax,%ebx
4ee18b:	03 da                	add    %edx,%ebx
4ee18d:	03 de                	add    %esi,%ebx
4ee18f:	89 5d e0             	mov    %ebx,-0x20(%ebp)
4ee192:	0f af 45 dc          	imul   -0x24(%ebp),%eax
4ee196:	8b 5d e0             	mov    -0x20(%ebp),%ebx
4ee199:	0f af 5d d8          	imul   -0x28(%ebp),%ebx
4ee19d:	03 c3                	add    %ebx,%eax
4ee19f:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
4ee1a2:	05 00 80 00 00       	add    $0x8000,%eax
4ee1a7:	c1 f8 10             	sar    $0x10,%eax
4ee1aa:	88 03                	mov    %al,(%ebx)
4ee1ac:	ff 45 e4             	incl   -0x1c(%ebp)
4ee1af:	89 55 d4             	mov    %edx,-0x2c(%ebp)
4ee1b2:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ee1b5:	8b d6                	mov    %esi,%edx
4ee1b7:	83 e8 02             	sub    $0x2,%eax
4ee1ba:	89 45 f4             	mov    %eax,-0xc(%ebp)
4ee1bd:	8b 45 f4             	mov    -0xc(%ebp),%eax
4ee1c0:	85 c0                	test   %eax,%eax
4ee1c2:	76 57                	jbe    0x4ee21b
4ee1c4:	33 c0                	xor    %eax,%eax
4ee1c6:	8a 01                	mov    (%ecx),%al
4ee1c8:	41                   	inc    %ecx
4ee1c9:	ff 45 ec             	incl   -0x14(%ebp)
4ee1cc:	ff 45 e8             	incl   -0x18(%ebp)