42f011:	56                   	push   %esi
42f012:	8b 75 18             	mov    0x18(%ebp),%esi
42f015:	57                   	push   %edi
42f016:	8b 7d 10             	mov    0x10(%ebp),%edi
42f019:	8b 06                	mov    (%esi),%eax
42f01b:	89 45 18             	mov    %eax,0x18(%ebp)
42f01e:	f6 47 0c 40          	testb  $0x40,0xc(%edi)
42f022:	74 10                	je     0x42f034
42f024:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
42f028:	75 0a                	jne    0x42f034
42f02a:	8b 4d 14             	mov    0x14(%ebp),%ecx
42f02d:	8b 45 0c             	mov    0xc(%ebp),%eax
42f030:	01 01                	add    %eax,(%ecx)
42f032:	eb 4e                	jmp    0x42f082
42f034:	83 26 00             	andl   $0x0,(%esi)
42f037:	53                   	push   %ebx
42f038:	8b 5d 0c             	mov    0xc(%ebp),%ebx
42f03b:	85 db                	test   %ebx,%ebx
42f03d:	7e 40                	jle    0x42f07f
42f03f:	8b 45 14             	mov    0x14(%ebp),%eax
42f042:	50                   	push   %eax
42f043:	8b 45 08             	mov    0x8(%ebp),%eax
42f046:	4b                   	dec    %ebx
42f047:	57                   	push   %edi
42f048:	0f b6 00             	movzbl (%eax),%eax
42f04b:	50                   	push   %eax
42f04c:	e8 49 ff ff ff       	call   0x42ef9a
42f051:	8b 45 14             	mov    0x14(%ebp),%eax
42f054:	83 c4 0c             	add    $0xc,%esp
42f057:	ff 45 08             	incl   0x8(%ebp)
42f05a:	83 38 ff             	cmpl   $0xffffffff,(%eax)
42f05d:	75 14                	jne    0x42f073
42f05f:	83 3e 2a             	cmpl   $0x2a,(%esi)
42f062:	75 13                	jne    0x42f077
42f064:	50                   	push   %eax
42f065:	57                   	push   %edi
42f066:	6a 3f                	push   $0x3f
42f068:	e8 2d ff ff ff       	call   0x42ef9a
42f06d:	8b 45 14             	mov    0x14(%ebp),%eax
42f070:	83 c4 0c             	add    $0xc,%esp
42f073:	85 db                	test   %ebx,%ebx
42f075:	7f cb                	jg     0x42f042
42f077:	83 3e 00             	cmpl   $0x0,(%esi)
42f07a:	75 05                	jne    0x42f081
42f07c:	8b 45 18             	mov    0x18(%ebp),%eax
42f07f:	89 06                	mov    %eax,(%esi)
42f081:	5b                   	pop    %ebx
42f082:	5f                   	pop    %edi
42f083:	5e                   	pop    %esi
42f084:	5d                   	pop    %ebp
42f085:	c3                   	ret
42f086:	6a 14                	push   $0x14
42f088:	68 50 bf 4b 00       	push   $0x4bbf50
42f08d:	e8 ae 9a ff ff       	call   0x428b40
42f092:	33 f6                	xor    %esi,%esi
42f094:	89 75 e4             	mov    %esi,-0x1c(%ebp)
42f097:	8b 7d 08             	mov    0x8(%ebp),%edi
42f09a:	83 ff fe             	cmp    $0xfffffffe,%edi
42f09d:	75 10                	jne    0x42f0af
42f09f:	e8 c4 9c ff ff       	call   0x428d68
42f0a4:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
42f0aa:	e9 b7 00 00 00       	jmp    0x42f166
42f0af:	85 ff                	test   %edi,%edi
42f0b1:	0f 88 9f 00 00 00    	js     0x42f156
42f0b7:	3b 3d 8c 51 4c 00    	cmp    0x4c518c,%edi
42f0bd:	0f 83 93 00 00 00    	jae    0x42f156
42f0c3:	8b c7                	mov    %edi,%eax
42f0c5:	c1 f8 05             	sar    $0x5,%eax
42f0c8:	89 45 e0             	mov    %eax,-0x20(%ebp)
42f0cb:	8b df                	mov    %edi,%ebx
42f0cd:	83 e3 1f             	and    $0x1f,%ebx
42f0d0:	c1 e3 06             	shl    $0x6,%ebx
42f0d3:	8b 04 85 e0 49 4c 00 	mov    0x4c49e0(,%eax,4),%eax
42f0da:	0f be 44 03 04       	movsbl 0x4(%ebx,%eax,1),%eax
42f0df:	83 e0 01             	and    $0x1,%eax
42f0e2:	74 72                	je     0x42f156
42f0e4:	57                   	push   %edi
42f0e5:	e8 5c e3 ff ff       	call   0x42d446
42f0ea:	59                   	pop    %ecx
42f0eb:	89 75 fc             	mov    %esi,-0x4(%ebp)
42f0ee:	8b 45 e0             	mov    -0x20(%ebp),%eax
42f0f1:	8b 04 85 e0 49 4c 00 	mov    0x4c49e0(,%eax,4),%eax
42f0f8:	f6 44 03 04 01       	testb  $0x1,0x4(%ebx,%eax,1)
42f0fd:	74 28                	je     0x42f127
42f0ff:	57                   	push   %edi
42f100:	e8 fe e5 ff ff       	call   0x42d703
42f105:	59                   	pop    %ecx
42f106:	50                   	push   %eax
42f107:	ff 15 e8 f1 48 00    	call   *0x48f1e8
42f10d:	85 c0                	test   %eax,%eax
42f10f:	75 08                	jne    0x42f119
42f111:	ff 15 40 f3 48 00    	call   *0x48f340
42f117:	8b f0                	mov    %eax,%esi
42f119:	89 75 e4             	mov    %esi,-0x1c(%ebp)
42f11c:	85 f6                	test   %esi,%esi
42f11e:	74 18                	je     0x42f138
42f120:	e8 0f 9c ff ff       	call   0x428d34
42f125:	89 30                	mov    %esi,(%eax)
42f127:	e8 3c 9c ff ff       	call   0x428d68
42f12c:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
42f132:	83 ce ff             	or     $0xffffffff,%esi
42f135:	89 75 e4             	mov    %esi,-0x1c(%ebp)
42f138:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
42f13f:	e8 0a 00 00 00       	call   0x42f14e
42f144:	8b c6                	mov    %esi,%eax
42f146:	eb 21                	jmp    0x42f169
42f148:	8b 7d 08             	mov    0x8(%ebp),%edi
42f14b:	8b 75 e4             	mov    -0x1c(%ebp),%esi
42f14e:	57                   	push   %edi
42f14f:	e8 98 e6 ff ff       	call   0x42d7ec
42f154:	59                   	pop    %ecx
42f155:	c3                   	ret
42f156:	e8 0d 9c ff ff       	call   0x428d68
42f15b:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
42f161:	e8 90 9e ff ff       	call   0x428ff6
42f166:	83 c8 ff             	or     $0xffffffff,%eax
42f169:	e8 17 9a ff ff       	call   0x428b85
42f16e:	c3                   	ret
42f16f:	55                   	push   %ebp
42f170:	8b ec                	mov    %esp,%ebp
42f172:	8b 45 14             	mov    0x14(%ebp),%eax
42f175:	85 c0                	test   %eax,%eax
42f177:	7e 0b                	jle    0x42f184
42f179:	50                   	push   %eax
42f17a:	ff 75 10             	push   0x10(%ebp)
42f17d:	e8 2b 6b 00 00       	call   0x435cad
42f182:	59                   	pop    %ecx
42f183:	59                   	pop    %ecx
42f184:	ff 75 1c             	push   0x1c(%ebp)
42f187:	ff 75 18             	push   0x18(%ebp)
42f18a:	50                   	push   %eax
42f18b:	ff 75 10             	push   0x10(%ebp)
42f18e:	ff 75 0c             	push   0xc(%ebp)
42f191:	ff 75 08             	push   0x8(%ebp)
42f194:	e8 9b 5a 00 00       	call   0x434c34
42f199:	83 c4 18             	add    $0x18,%esp
42f19c:	5d                   	pop    %ebp
42f19d:	c3                   	ret
42f19e:	55                   	push   %ebp
42f19f:	8b ec                	mov    %esp,%ebp
42f1a1:	51                   	push   %ecx
42f1a2:	51                   	push   %ecx
42f1a3:	a1 50 fd 4b 00       	mov    0x4bfd50,%eax
42f1a8:	33 c5                	xor    %ebp,%eax
42f1aa:	89 45 fc             	mov    %eax,-0x4(%ebp)
42f1ad:	53                   	push   %ebx
42f1ae:	56                   	push   %esi
42f1af:	8b 75 18             	mov    0x18(%ebp),%esi
42f1b2:	57                   	push   %edi
42f1b3:	85 f6                	test   %esi,%esi
42f1b5:	7e 21                	jle    0x42f1d8
42f1b7:	8b 45 14             	mov    0x14(%ebp),%eax
42f1ba:	8b ce                	mov    %esi,%ecx
42f1bc:	49                   	dec    %ecx
42f1bd:	80 38 00             	cmpb   $0x0,(%eax)
42f1c0:	74 08                	je     0x42f1ca
42f1c2:	40                   	inc    %eax
42f1c3:	85 c9                	test   %ecx,%ecx
42f1c5:	75 f5                	jne    0x42f1bc
42f1c7:	83 c9 ff             	or     $0xffffffff,%ecx
42f1ca:	8b c6                	mov    %esi,%eax
42f1cc:	2b c1                	sub    %ecx,%eax
42f1ce:	48                   	dec    %eax
42f1cf:	3b c6                	cmp    %esi,%eax
42f1d1:	8d 70 01             	lea    0x1(%eax),%esi
42f1d4:	7c 02                	jl     0x42f1d8
42f1d6:	8b f0                	mov    %eax,%esi
42f1d8:	8b 4d 24             	mov    0x24(%ebp),%ecx
42f1db:	33 ff                	xor    %edi,%edi
42f1dd:	85 c9                	test   %ecx,%ecx
42f1df:	75 0d                	jne    0x42f1ee
42f1e1:	8b 45 08             	mov    0x8(%ebp),%eax
42f1e4:	8b 00                	mov    (%eax),%eax
42f1e6:	8b 40 04             	mov    0x4(%eax),%eax
42f1e9:	8b c8                	mov    %eax,%ecx
42f1eb:	89 45 24             	mov    %eax,0x24(%ebp)
42f1ee:	33 c0                	xor    %eax,%eax
42f1f0:	39 45 28             	cmp    %eax,0x28(%ebp)
42f1f3:	6a 00                	push   $0x0
42f1f5:	6a 00                	push   $0x0
42f1f7:	56                   	push   %esi
42f1f8:	ff 75 14             	push   0x14(%ebp)
42f1fb:	0f 95 c0             	setne  %al
42f1fe:	8d 04 c5 01 00 00 00 	lea    0x1(,%eax,8),%eax
42f205:	50                   	push   %eax
42f206:	51                   	push   %ecx
42f207:	ff 15 84 f1 48 00    	call   *0x48f184
42f20d:	8b c8                	mov    %eax,%ecx
42f20f:	89 4d f8             	mov    %ecx,-0x8(%ebp)
42f212:	85 c9                	test   %ecx,%ecx
42f214:	75 07                	jne    0x42f21d
42f216:	33 c0                	xor    %eax,%eax
42f218:	e9 71 01 00 00       	jmp    0x42f38e
42f21d:	7e 57                	jle    0x42f276
42f21f:	6a e0                	push   $0xffffffe0
42f221:	33 d2                	xor    %edx,%edx
42f223:	58                   	pop    %eax
42f224:	f7 f1                	div    %ecx
42f226:	83 f8 02             	cmp    $0x2,%eax
42f229:	72 4b                	jb     0x42f276
42f22b:	03 c9                	add    %ecx,%ecx
42f22d:	8d 41 08             	lea    0x8(%ecx),%eax
42f230:	3b c1                	cmp    %ecx,%eax
42f232:	76 3f                	jbe    0x42f273
42f234:	8b 45 f8             	mov    -0x8(%ebp),%eax
42f237:	8d 04 45 08 00 00 00 	lea    0x8(,%eax,2),%eax
42f23e:	3d 00 04 00 00       	cmp    $0x400,%eax
42f243:	77 13                	ja     0x42f258
42f245:	e8 a6 5a 00 00       	call   0x434cf0
42f24a:	8b dc                	mov    %esp,%ebx
42f24c:	85 db                	test   %ebx,%ebx
42f24e:	74 1e                	je     0x42f26e
42f250:	c7 03 cc cc 00 00    	movl   $0xcccc,(%ebx)
42f256:	eb 13                	jmp    0x42f26b
42f258:	50                   	push   %eax
42f259:	e8 ee 66 ff ff       	call   0x42594c
42f25e:	8b d8                	mov    %eax,%ebx
42f260:	59                   	pop    %ecx
42f261:	85 db                	test   %ebx,%ebx
42f263:	74 09                	je     0x42f26e
42f265:	c7 03 dd dd 00 00    	movl   $0xdddd,(%ebx)
42f26b:	83 c3 08             	add    $0x8,%ebx
42f26e:	8b 4d f8             	mov    -0x8(%ebp),%ecx
42f271:	eb 05                	jmp    0x42f278
42f273:	8b 4d f8             	mov    -0x8(%ebp),%ecx
42f276:	33 db                	xor    %ebx,%ebx
42f278:	85 db                	test   %ebx,%ebx
42f27a:	74 9a                	je     0x42f216
42f27c:	51                   	push   %ecx
42f27d:	53                   	push   %ebx
42f27e:	56                   	push   %esi
42f27f:	ff 75 14             	push   0x14(%ebp)
42f282:	6a 01                	push   $0x1
42f284:	ff 75 24             	push   0x24(%ebp)
42f287:	ff 15 84 f1 48 00    	call   *0x48f184
42f28d:	85 c0                	test   %eax,%eax
42f28f:	0f 84 f0 00 00 00    	je     0x42f385
42f295:	8b 75 f8             	mov    -0x8(%ebp),%esi
42f298:	6a 00                	push   $0x0
42f29a:	6a 00                	push   $0x0
42f29c:	56                   	push   %esi
42f29d:	53                   	push   %ebx
42f29e:	ff 75 10             	push   0x10(%ebp)
42f2a1:	ff 75 0c             	push   0xc(%ebp)
42f2a4:	e8 8b 59 00 00       	call   0x434c34
42f2a9:	8b f8                	mov    %eax,%edi
42f2ab:	83 c4 18             	add    $0x18,%esp
42f2ae:	85 ff                	test   %edi,%edi
42f2b0:	0f 84 cf 00 00 00    	je     0x42f385
42f2b6:	f7 45 10 00 04 00 00 	testl  $0x400,0x10(%ebp)
42f2bd:	74 2c                	je     0x42f2eb
42f2bf:	8b 4d 20             	mov    0x20(%ebp),%ecx
42f2c2:	85 c9                	test   %ecx,%ecx
42f2c4:	0f 84 bb 00 00 00    	je     0x42f385
42f2ca:	3b f9                	cmp    %ecx,%edi
42f2cc:	0f 8f b3 00 00 00    	jg     0x42f385
42f2d2:	51                   	push   %ecx
42f2d3:	ff 75 1c             	push   0x1c(%ebp)
42f2d6:	56                   	push   %esi
42f2d7:	53                   	push   %ebx
42f2d8:	ff 75 10             	push   0x10(%ebp)
42f2db:	ff 75 0c             	push   0xc(%ebp)
42f2de:	e8 51 59 00 00       	call   0x434c34
42f2e3:	83 c4 18             	add    $0x18,%esp
42f2e6:	e9 9a 00 00 00       	jmp    0x42f385
42f2eb:	85 ff                	test   %edi,%edi
42f2ed:	7e 4f                	jle    0x42f33e
42f2ef:	6a e0                	push   $0xffffffe0
42f2f1:	33 d2                	xor    %edx,%edx
42f2f3:	58                   	pop    %eax
42f2f4:	f7 f7                	div    %edi
42f2f6:	83 f8 02             	cmp    $0x2,%eax
42f2f9:	72 43                	jb     0x42f33e
42f2fb:	8d 0c 3f             	lea    (%edi,%edi,1),%ecx
42f2fe:	8d 41 08             	lea    0x8(%ecx),%eax
42f301:	3b c1                	cmp    %ecx,%eax
42f303:	76 39                	jbe    0x42f33e
42f305:	8d 04 7d 08 00 00 00 	lea    0x8(,%edi,2),%eax
42f30c:	3d 00 04 00 00       	cmp    $0x400,%eax
42f311:	77 13                	ja     0x42f326
42f313:	e8 d8 59 00 00       	call   0x434cf0
42f318:	8b f4                	mov    %esp,%esi
42f31a:	85 f6                	test   %esi,%esi
42f31c:	74 67                	je     0x42f385
42f31e:	c7 06 cc cc 00 00    	movl   $0xcccc,(%esi)
42f324:	eb 13                	jmp    0x42f339
42f326:	50                   	push   %eax
42f327:	e8 20 66 ff ff       	call   0x42594c
42f32c:	8b f0                	mov    %eax,%esi
42f32e:	59                   	pop    %ecx
42f32f:	85 f6                	test   %esi,%esi
42f331:	74 52                	je     0x42f385
42f333:	c7 06 dd dd 00 00    	movl   $0xdddd,(%esi)
42f339:	83 c6 08             	add    $0x8,%esi
42f33c:	eb 02                	jmp    0x42f340
42f33e:	33 f6                	xor    %esi,%esi
42f340:	85 f6                	test   %esi,%esi
42f342:	74 41                	je     0x42f385
42f344:	8b 45 f8             	mov    -0x8(%ebp),%eax
42f347:	57                   	push   %edi
42f348:	56                   	push   %esi
42f349:	50                   	push   %eax
42f34a:	53                   	push   %ebx
42f34b:	ff 75 10             	push   0x10(%ebp)
42f34e:	ff 75 0c             	push   0xc(%ebp)
42f351:	e8 de 58 00 00       	call   0x434c34
42f356:	83 c4 18             	add    $0x18,%esp
42f359:	85 c0                	test   %eax,%eax
42f35b:	74 21                	je     0x42f37e
42f35d:	33 c0                	xor    %eax,%eax
42f35f:	50                   	push   %eax
42f360:	50                   	push   %eax
42f361:	39 45 20             	cmp    %eax,0x20(%ebp)
42f364:	75 04                	jne    0x42f36a
42f366:	50                   	push   %eax
42f367:	50                   	push   %eax
42f368:	eb 06                	jmp    0x42f370
42f36a:	ff 75 20             	push   0x20(%ebp)
42f36d:	ff 75 1c             	push   0x1c(%ebp)
42f370:	57                   	push   %edi
42f371:	56                   	push   %esi
42f372:	50                   	push   %eax
42f373:	ff 75 24             	push   0x24(%ebp)
42f376:	ff 15 ac f1 48 00    	call   *0x48f1ac
42f37c:	8b f8                	mov    %eax,%edi
42f37e:	56                   	push   %esi
42f37f:	e8 92 8a ff ff       	call   0x427e16
42f384:	59                   	pop    %ecx
42f385:	53                   	push   %ebx
42f386:	e8 8b 8a ff ff       	call   0x427e16
42f38b:	59                   	pop    %ecx
42f38c:	8b c7                	mov    %edi,%eax
42f38e:	8d 65 ec             	lea    -0x14(%ebp),%esp
42f391:	5f                   	pop    %edi
42f392:	5e                   	pop    %esi
42f393:	5b                   	pop    %ebx
42f394:	8b 4d fc             	mov    -0x4(%ebp),%ecx
42f397:	33 cd                	xor    %ebp,%ecx
42f399:	e8 98 d4 ff ff       	call   0x42c836
42f39e:	8b e5                	mov    %ebp,%esp
42f3a0:	5d                   	pop    %ebp
42f3a1:	c3                   	ret
42f3a2:	55                   	push   %ebp
42f3a3:	8b ec                	mov    %esp,%ebp
42f3a5:	83 ec 10             	sub    $0x10,%esp
42f3a8:	ff 75 08             	push   0x8(%ebp)
42f3ab:	8d 4d f0             	lea    -0x10(%ebp),%ecx
42f3ae:	e8 02 3d ff ff       	call   0x4230b5
42f3b3:	ff 75 28             	push   0x28(%ebp)
42f3b6:	8d 45 f0             	lea    -0x10(%ebp),%eax