4c513d:	8b 85 4c ff ff ff    	mov    -0xb4(%ebp),%eax
4c5143:	89 45 b4             	mov    %eax,-0x4c(%ebp)
4c5146:	8d 8d 40 ff ff ff    	lea    -0xc0(%ebp),%ecx
4c514c:	8b 07                	mov    (%edi),%eax
4c514e:	48                   	dec    %eax
4c514f:	8b 57 04             	mov    0x4(%edi),%edx
4c5152:	e8 f5 54 f5 ff       	call   0x41a64c
4c5157:	8b 85 40 ff ff ff    	mov    -0xc0(%ebp),%eax
4c515d:	89 45 b8             	mov    %eax,-0x48(%ebp)
4c5160:	8b 85 44 ff ff ff    	mov    -0xbc(%ebp),%eax
4c5166:	89 45 bc             	mov    %eax,-0x44(%ebp)
4c5169:	8d 8d 38 ff ff ff    	lea    -0xc8(%ebp),%ecx
4c516f:	8b 57 04             	mov    0x4(%edi),%edx
4c5172:	4a                   	dec    %edx
4c5173:	8b 07                	mov    (%edi),%eax
4c5175:	e8 d2 54 f5 ff       	call   0x41a64c
4c517a:	8b 85 38 ff ff ff    	mov    -0xc8(%ebp),%eax
4c5180:	89 45 c0             	mov    %eax,-0x40(%ebp)
4c5183:	8b 85 3c ff ff ff    	mov    -0xc4(%ebp),%eax
4c5189:	89 45 c4             	mov    %eax,-0x3c(%ebp)
4c518c:	8d 55 80             	lea    -0x80(%ebp),%edx
4c518f:	b9 08 00 00 00       	mov    $0x8,%ecx
4c5194:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5197:	e8 9c 36 f6 ff       	call   0x428838
4c519c:	e9 34 01 00 00       	jmp    0x4c52d5
4c51a1:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
4c51a7:	8b 57 04             	mov    0x4(%edi),%edx
4c51aa:	4a                   	dec    %edx
4c51ab:	8b 07                	mov    (%edi),%eax
4c51ad:	e8 9a 54 f5 ff       	call   0x41a64c
4c51b2:	8b 85 78 ff ff ff    	mov    -0x88(%ebp),%eax
4c51b8:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
4c51be:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
4c51c4:	89 85 04 ff ff ff    	mov    %eax,-0xfc(%ebp)
4c51ca:	8d 8d 70 ff ff ff    	lea    -0x90(%ebp),%ecx
4c51d0:	8b 57 04             	mov    0x4(%edi),%edx
4c51d3:	4a                   	dec    %edx
4c51d4:	8b 47 08             	mov    0x8(%edi),%eax
4c51d7:	48                   	dec    %eax
4c51d8:	e8 6f 54 f5 ff       	call   0x41a64c
4c51dd:	8b 85 70 ff ff ff    	mov    -0x90(%ebp),%eax
4c51e3:	89 85 08 ff ff ff    	mov    %eax,-0xf8(%ebp)
4c51e9:	8b 85 74 ff ff ff    	mov    -0x8c(%ebp),%eax
4c51ef:	89 85 0c ff ff ff    	mov    %eax,-0xf4(%ebp)
4c51f5:	8d 8d 68 ff ff ff    	lea    -0x98(%ebp),%ecx
4c51fb:	8b 57 04             	mov    0x4(%edi),%edx
4c51fe:	8b 47 08             	mov    0x8(%edi),%eax
4c5201:	e8 46 54 f5 ff       	call   0x41a64c
4c5206:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
4c520c:	89 85 10 ff ff ff    	mov    %eax,-0xf0(%ebp)
4c5212:	8b 85 6c ff ff ff    	mov    -0x94(%ebp),%eax
4c5218:	89 85 14 ff ff ff    	mov    %eax,-0xec(%ebp)
4c521e:	8d 8d 60 ff ff ff    	lea    -0xa0(%ebp),%ecx
4c5224:	8b 57 0c             	mov    0xc(%edi),%edx
4c5227:	8b 47 08             	mov    0x8(%edi),%eax
4c522a:	e8 1d 54 f5 ff       	call   0x41a64c
4c522f:	8b 85 60 ff ff ff    	mov    -0xa0(%ebp),%eax
4c5235:	89 85 18 ff ff ff    	mov    %eax,-0xe8(%ebp)
4c523b:	8b 85 64 ff ff ff    	mov    -0x9c(%ebp),%eax
4c5241:	89 85 1c ff ff ff    	mov    %eax,-0xe4(%ebp)
4c5247:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
4c524d:	8b 07                	mov    (%edi),%eax
4c524f:	48                   	dec    %eax
4c5250:	8b 57 0c             	mov    0xc(%edi),%edx
4c5253:	e8 f4 53 f5 ff       	call   0x41a64c
4c5258:	8b 85 58 ff ff ff    	mov    -0xa8(%ebp),%eax
4c525e:	89 85 20 ff ff ff    	mov    %eax,-0xe0(%ebp)
4c5264:	8b 85 5c ff ff ff    	mov    -0xa4(%ebp),%eax
4c526a:	89 85 24 ff ff ff    	mov    %eax,-0xdc(%ebp)
4c5270:	8d 8d 50 ff ff ff    	lea    -0xb0(%ebp),%ecx
4c5276:	8b 07                	mov    (%edi),%eax
4c5278:	48                   	dec    %eax
4c5279:	8b 57 04             	mov    0x4(%edi),%edx
4c527c:	e8 cb 53 f5 ff       	call   0x41a64c
4c5281:	8b 85 50 ff ff ff    	mov    -0xb0(%ebp),%eax
4c5287:	89 85 28 ff ff ff    	mov    %eax,-0xd8(%ebp)
4c528d:	8b 85 54 ff ff ff    	mov    -0xac(%ebp),%eax
4c5293:	89 85 2c ff ff ff    	mov    %eax,-0xd4(%ebp)
4c5299:	8d 8d 48 ff ff ff    	lea    -0xb8(%ebp),%ecx
4c529f:	8b 57 04             	mov    0x4(%edi),%edx
4c52a2:	4a                   	dec    %edx
4c52a3:	8b 07                	mov    (%edi),%eax
4c52a5:	e8 a2 53 f5 ff       	call   0x41a64c
4c52aa:	8b 85 48 ff ff ff    	mov    -0xb8(%ebp),%eax
4c52b0:	89 85 30 ff ff ff    	mov    %eax,-0xd0(%ebp)
4c52b6:	8b 85 4c ff ff ff    	mov    -0xb4(%ebp),%eax
4c52bc:	89 85 34 ff ff ff    	mov    %eax,-0xcc(%ebp)
4c52c2:	8d 95 00 ff ff ff    	lea    -0x100(%ebp),%edx
4c52c8:	b9 06 00 00 00       	mov    $0x6,%ecx
4c52cd:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c52d0:	e8 63 35 f6 ff       	call   0x428838
4c52d5:	8b 45 08             	mov    0x8(%ebp),%eax
4c52d8:	80 78 14 00          	cmpb   $0x0,0x14(%eax)
4c52dc:	0f 84 85 02 00 00    	je     0x4c5567
4c52e2:	8b 45 08             	mov    0x8(%ebp),%eax
4c52e5:	8b 40 08             	mov    0x8(%eax),%eax
4c52e8:	25 00 10 00 00       	and    $0x1000,%eax
4c52ed:	3d 00 10 00 00       	cmp    $0x1000,%eax
4c52f2:	75 14                	jne    0x4c5308
4c52f4:	33 c0                	xor    %eax,%eax
4c52f6:	8a c3                	mov    %bl,%al
4c52f8:	8d 04 40             	lea    (%eax,%eax,2),%eax
4c52fb:	8b 54 86 24          	mov    0x24(%esi,%eax,4),%edx
4c52ff:	89 55 dc             	mov    %edx,-0x24(%ebp)
4c5302:	8b 5c 86 28          	mov    0x28(%esi,%eax,4),%ebx
4c5306:	eb 12                	jmp    0x4c531a
4c5308:	33 c0                	xor    %eax,%eax
4c530a:	8a c3                	mov    %bl,%al
4c530c:	8d 04 40             	lea    (%eax,%eax,2),%eax
4c530f:	8b 54 86 3c          	mov    0x3c(%esi,%eax,4),%edx
4c5313:	89 55 dc             	mov    %edx,-0x24(%ebp)
4c5316:	8b 5c 86 40          	mov    0x40(%esi,%eax,4),%ebx
4c531a:	8b 45 08             	mov    0x8(%ebp),%eax
4c531d:	f6 40 24 02          	testb  $0x2,0x24(%eax)
4c5321:	0f 84 e0 00 00 00    	je     0x4c5407
4c5327:	6a 33                	push   $0x33
4c5329:	e8 f2 27 f4 ff       	call   0x407b20
4c532e:	48                   	dec    %eax
4c532f:	50                   	push   %eax
4c5330:	57                   	push   %edi
4c5331:	8b 4d 08             	mov    0x8(%ebp),%ecx
4c5334:	8b 49 0c             	mov    0xc(%ecx),%ecx
4c5337:	33 d2                	xor    %edx,%edx
4c5339:	33 c0                	xor    %eax,%eax
4c533b:	e8 34 53 f5 ff       	call   0x41a674
4c5340:	8b 45 08             	mov    0x8(%ebp),%eax
4c5343:	8b 40 19             	mov    0x19(%eax),%eax
4c5346:	50                   	push   %eax
4c5347:	8b 45 08             	mov    0x8(%ebp),%eax
4c534a:	8b 40 15             	mov    0x15(%eax),%eax
4c534d:	50                   	push   %eax
4c534e:	57                   	push   %edi
4c534f:	e8 24 29 f4 ff       	call   0x407c78
4c5354:	8b 47 08             	mov    0x8(%edi),%eax
4c5357:	50                   	push   %eax
4c5358:	8b 47 0c             	mov    0xc(%edi),%eax
4c535b:	50                   	push   %eax
4c535c:	8b 45 e0             	mov    -0x20(%ebp),%eax
4c535f:	50                   	push   %eax
4c5360:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5363:	e8 58 39 f6 ff       	call   0x428cc0
4c5368:	8b 4f 0c             	mov    0xc(%edi),%ecx
4c536b:	8b 17                	mov    (%edi),%edx
4c536d:	e8 1e 3b fc ff       	call   0x488e90
4c5372:	8b 45 08             	mov    0x8(%ebp),%eax
4c5375:	f6 40 20 01          	testb  $0x1,0x20(%eax)
4c5379:	74 14                	je     0x4c538f
4c537b:	8b 45 08             	mov    0x8(%ebp),%eax
4c537e:	f6 40 24 04          	testb  $0x4,0x24(%eax)
4c5382:	74 0b                	je     0x4c538f
4c5384:	6a 33                	push   $0x33
4c5386:	e8 95 27 f4 ff       	call   0x407b20
4c538b:	48                   	dec    %eax
4c538c:	29 47 08             	sub    %eax,0x8(%edi)
4c538f:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5392:	8b 40 14             	mov    0x14(%eax),%eax
4c5395:	8b 55 dc             	mov    -0x24(%ebp),%edx
4c5398:	e8 e7 2e f6 ff       	call   0x428284
4c539d:	68 ff ff ff 00       	push   $0xffffff
4c53a2:	6a 01                	push   $0x1
4c53a4:	8b d7                	mov    %edi,%edx
4c53a6:	b9 d0 d8 dc 00       	mov    $0xdcd8d0,%ecx
4c53ab:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c53ae:	e8 8d e5 ff ff       	call   0x4c3940
4c53b3:	6a 00                	push   $0x0
4c53b5:	6a fe                	push   $0xfffffffe
4c53b7:	57                   	push   %edi
4c53b8:	e8 cb 27 f4 ff       	call   0x407b88
4c53bd:	8b 15 18 71 6a 00    	mov    0x6a7118,%edx
4c53c3:	8b 12                	mov    (%edx),%edx
4c53c5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c53c8:	8b 40 0c             	mov    0xc(%eax),%eax
4c53cb:	8b 08                	mov    (%eax),%ecx
4c53cd:	ff 51 08             	call   *0x8(%ecx)
4c53d0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c53d3:	8b 40 0c             	mov    0xc(%eax),%eax
4c53d6:	8b d3                	mov    %ebx,%edx
4c53d8:	e8 bb 26 f6 ff       	call   0x427a98
4c53dd:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c53e0:	8b 40 14             	mov    0x14(%eax),%eax
4c53e3:	b2 01                	mov    $0x1,%dl
4c53e5:	e8 b6 2f f6 ff       	call   0x4283a0
4c53ea:	68 24 80 10 00       	push   $0x108024
4c53ef:	57                   	push   %edi
4c53f0:	6a ff                	push   $0xffffffff
4c53f2:	8b 45 08             	mov    0x8(%ebp),%eax
4c53f5:	8b 40 28             	mov    0x28(%eax),%eax
4c53f8:	50                   	push   %eax
4c53f9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c53fc:	e8 bf 38 f6 ff       	call   0x428cc0
4c5401:	50                   	push   %eax
4c5402:	e8 31 25 f4 ff       	call   0x407938
4c5407:	8b 45 08             	mov    0x8(%ebp),%eax
4c540a:	f6 40 20 01          	testb  $0x1,0x20(%eax)
4c540e:	0f 84 53 01 00 00    	je     0x4c5567
4c5414:	6a 33                	push   $0x33
4c5416:	e8 05 27 f4 ff       	call   0x407b20
4c541b:	48                   	dec    %eax
4c541c:	50                   	push   %eax
4c541d:	57                   	push   %edi
4c541e:	8b 4d 08             	mov    0x8(%ebp),%ecx
4c5421:	8b 49 0c             	mov    0xc(%ecx),%ecx
4c5424:	33 d2                	xor    %edx,%edx
4c5426:	33 c0                	xor    %eax,%eax
4c5428:	e8 47 52 f5 ff       	call   0x41a674
4c542d:	8b 45 08             	mov    0x8(%ebp),%eax
4c5430:	8b 40 19             	mov    0x19(%eax),%eax
4c5433:	50                   	push   %eax
4c5434:	8b 45 08             	mov    0x8(%ebp),%eax
4c5437:	8b 40 15             	mov    0x15(%eax),%eax
4c543a:	50                   	push   %eax
4c543b:	57                   	push   %edi
4c543c:	e8 37 28 f4 ff       	call   0x407c78
4c5441:	8b 47 0c             	mov    0xc(%edi),%eax
4c5444:	2b 47 04             	sub    0x4(%edi),%eax
4c5447:	8b 57 08             	mov    0x8(%edi),%edx
4c544a:	2b d0                	sub    %eax,%edx
4c544c:	89 17                	mov    %edx,(%edi)
4c544e:	8b 47 08             	mov    0x8(%edi),%eax
4c5451:	50                   	push   %eax
4c5452:	8b 5f 0c             	mov    0xc(%edi),%ebx
4c5455:	53                   	push   %ebx
4c5456:	8b 45 e0             	mov    -0x20(%ebp),%eax
4c5459:	50                   	push   %eax
4c545a:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c545d:	e8 5e 38 f6 ff       	call   0x428cc0
4c5462:	8b 17                	mov    (%edi),%edx
4c5464:	4a                   	dec    %edx
4c5465:	8b cb                	mov    %ebx,%ecx
4c5467:	e8 24 3a fc ff       	call   0x488e90
4c546c:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c546f:	8b 40 14             	mov    0x14(%eax),%eax
4c5472:	8b 55 dc             	mov    -0x24(%ebp),%edx
4c5475:	e8 0a 2e f6 ff       	call   0x428284
4c547a:	68 ff ff ff 00       	push   $0xffffff
4c547f:	6a 01                	push   $0x1
4c5481:	8b d7                	mov    %edi,%edx
4c5483:	b9 d0 d8 dc 00       	mov    $0xdcd8d0,%ecx
4c5488:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c548b:	e8 b0 e4 ff ff       	call   0x4c3940
4c5490:	55                   	push   %ebp
4c5491:	8b 45 08             	mov    0x8(%ebp),%eax
4c5494:	8b 40 20             	mov    0x20(%eax),%eax
4c5497:	e8 60 fa ff ff       	call   0x4c4efc
4c549c:	59                   	pop    %ecx
4c549d:	8b d8                	mov    %eax,%ebx
4c549f:	80 fb 04             	cmp    $0x4,%bl
4c54a2:	75 3b                	jne    0x4c54df
4c54a4:	6a 01                	push   $0x1
4c54a6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c54a9:	e8 12 38 f6 ff       	call   0x428cc0
4c54ae:	8b d7                	mov    %edi,%edx
4c54b0:	b9 80 80 80 00       	mov    $0x808080,%ecx
4c54b5:	e8 72 39 fc ff       	call   0x488e2c
4c54ba:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c54bd:	e8 fe 37 f6 ff       	call   0x428cc0
4c54c2:	8b d7                	mov    %edi,%edx
4c54c4:	b9 ff ff ff 00       	mov    $0xffffff,%ecx
4c54c9:	e8 16 39 fc ff       	call   0x488de4
4c54ce:	33 c9                	xor    %ecx,%ecx
4c54d0:	8b d7                	mov    %edi,%edx
4c54d2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c54d5:	e8 26 e6 ff ff       	call   0x4c3b00
4c54da:	e9 88 00 00 00       	jmp    0x4c5567
4c54df:	80 fb 03             	cmp    $0x3,%bl
4c54e2:	75 3b                	jne    0x4c551f
4c54e4:	6a 01                	push   $0x1
4c54e6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c54e9:	e8 d2 37 f6 ff       	call   0x428cc0
4c54ee:	8b d7                	mov    %edi,%edx
4c54f0:	b9 80 80 80 00       	mov    $0x808080,%ecx
4c54f5:	e8 32 39 fc ff       	call   0x488e2c
4c54fa:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c54fd:	e8 be 37 f6 ff       	call   0x428cc0
4c5502:	8b d7                	mov    %edi,%edx
4c5504:	b9 c0 c0 c0 00       	mov    $0xc0c0c0,%ecx
4c5509:	e8 d6 38 fc ff       	call   0x488de4
4c550e:	b9 ff ff ff 00       	mov    $0xffffff,%ecx
4c5513:	8b d7                	mov    %edi,%edx
4c5515:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5518:	e8 e3 e5 ff ff       	call   0x4c3b00
4c551d:	eb 48                	jmp    0x4c5567
4c551f:	6a 01                	push   $0x1
4c5521:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5524:	e8 97 37 f6 ff       	call   0x428cc0
4c5529:	33 d2                	xor    %edx,%edx
4c552b:	8a d3                	mov    %bl,%dl
4c552d:	8d 14 52             	lea    (%edx,%edx,2),%edx
4c5530:	8b 8c 96 88 00 00 00 	mov    0x88(%esi,%edx,4),%ecx
4c5537:	8b d7                	mov    %edi,%edx
4c5539:	e8 ee 38 fc ff       	call   0x488e2c
4c553e:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5541:	e8 7a 37 f6 ff       	call   0x428cc0
4c5546:	33 d2                	xor    %edx,%edx
4c5548:	8a d3                	mov    %bl,%dl
4c554a:	8d 14 52             	lea    (%edx,%edx,2),%edx
4c554d:	8b 8c 96 80 00 00 00 	mov    0x80(%esi,%edx,4),%ecx
4c5554:	8b d7                	mov    %edi,%edx
4c5556:	e8 89 38 fc ff       	call   0x488de4
4c555b:	33 c9                	xor    %ecx,%ecx
4c555d:	8b d7                	mov    %edi,%edx
4c555f:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5562:	e8 99 e5 ff ff       	call   0x4c3b00
4c5567:	5f                   	pop    %edi
4c5568:	5e                   	pop    %esi
4c5569:	5b                   	pop    %ebx
4c556a:	8b e5                	mov    %ebp,%esp
4c556c:	5d                   	pop    %ebp
4c556d:	c2 04 00             	ret    $0x4
4c5570:	55                   	push   %ebp
4c5571:	8b ec                	mov    %esp,%ebp
4c5573:	83 c4 ec             	add    $0xffffffec,%esp
4c5576:	53                   	push   %ebx
4c5577:	56                   	push   %esi
4c5578:	57                   	push   %edi
4c5579:	8b f9                	mov    %ecx,%edi
4c557b:	89 55 fc             	mov    %edx,-0x4(%ebp)
4c557e:	8b f0                	mov    %eax,%esi
4c5580:	8b 5d 08             	mov    0x8(%ebp),%ebx
4c5583:	56                   	push   %esi
4c5584:	8b f7                	mov    %edi,%esi
4c5586:	8d 7d ec             	lea    -0x14(%ebp),%edi
4c5589:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c558a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c558b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c558c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c558d:	5e                   	pop    %esi
4c558e:	80 7b 08 00          	cmpb   $0x0,0x8(%ebx)
4c5592:	75 10                	jne    0x4c55a4
4c5594:	80 7b 08 00          	cmpb   $0x0,0x8(%ebx)
4c5598:	75 06                	jne    0x4c55a0
4c559a:	80 7b 0a 01          	cmpb   $0x1,0xa(%ebx)
4c559e:	74 04                	je     0x4c55a4
4c55a0:	33 c0                	xor    %eax,%eax
4c55a2:	eb 02                	jmp    0x4c55a6
4c55a4:	b0 01                	mov    $0x1,%al
4c55a6:	84 c0                	test   %al,%al
4c55a8:	75 12                	jne    0x4c55bc
4c55aa:	6a ff                	push   $0xffffffff
4c55ac:	6a ff                	push   $0xffffffff
4c55ae:	8d 45 ec             	lea    -0x14(%ebp),%eax
4c55b1:	50                   	push   %eax
4c55b2:	e8 d1 25 f4 ff       	call   0x407b88
4c55b7:	e9 83 00 00 00       	jmp    0x4c563f
4c55bc:	84 c0                	test   %al,%al
4c55be:	74 06                	je     0x4c55c6
4c55c0:	80 7b 0a 00          	cmpb   $0x0,0xa(%ebx)
4c55c4:	75 06                	jne    0x4c55cc
4c55c6:	f6 43 04 10          	testb  $0x10,0x4(%ebx)
4c55ca:	74 73                	je     0x4c563f