5d526e:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5d5275:	59                   	pop    %ecx
5d5276:	5f                   	pop    %edi
5d5277:	5e                   	pop    %esi
5d5278:	5b                   	pop    %ebx
5d5279:	c9                   	leave
5d527a:	c3                   	ret
5d527b:	8b 75 e4             	mov    -0x1c(%ebp),%esi
5d527e:	e8 b3 f2 ff ff       	call   0x5d4536
5d5283:	83 78 18 00          	cmpl   $0x0,0x18(%eax)
5d5287:	7e 08                	jle    0x5d5291
5d5289:	e8 a8 f2 ff ff       	call   0x5d4536
5d528e:	ff 48 18             	decl   0x18(%eax)
5d5291:	c3                   	ret
5d5292:	e8 52 ac 00 00       	call   0x5dfee9
5d5297:	cc                   	int3
5d5298:	55                   	push   %ebp
5d5299:	8b ec                	mov    %esp,%ebp
5d529b:	83 ec 1c             	sub    $0x1c,%esp
5d529e:	53                   	push   %ebx
5d529f:	56                   	push   %esi
5d52a0:	8b 75 0c             	mov    0xc(%ebp),%esi
5d52a3:	57                   	push   %edi
5d52a4:	85 f6                	test   %esi,%esi
5d52a6:	0f 84 80 00 00 00    	je     0x5d532c
5d52ac:	8b 3e                	mov    (%esi),%edi
5d52ae:	33 db                	xor    %ebx,%ebx
5d52b0:	85 ff                	test   %edi,%edi
5d52b2:	7e 71                	jle    0x5d5325
5d52b4:	8b 45 08             	mov    0x8(%ebp),%eax
5d52b7:	8b d3                	mov    %ebx,%edx
5d52b9:	89 5d fc             	mov    %ebx,-0x4(%ebp)
5d52bc:	8b 40 1c             	mov    0x1c(%eax),%eax
5d52bf:	89 45 ec             	mov    %eax,-0x14(%ebp)
5d52c2:	8b 40 0c             	mov    0xc(%eax),%eax
5d52c5:	8b 08                	mov    (%eax),%ecx
5d52c7:	83 c0 04             	add    $0x4,%eax
5d52ca:	89 4d f0             	mov    %ecx,-0x10(%ebp)
5d52cd:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5d52d0:	8b c8                	mov    %eax,%ecx
5d52d2:	8b 45 f0             	mov    -0x10(%ebp),%eax
5d52d5:	89 4d f4             	mov    %ecx,-0xc(%ebp)
5d52d8:	89 45 f8             	mov    %eax,-0x8(%ebp)
5d52db:	85 c0                	test   %eax,%eax
5d52dd:	7e 38                	jle    0x5d5317
5d52df:	8b 46 04             	mov    0x4(%esi),%eax
5d52e2:	03 c2                	add    %edx,%eax
5d52e4:	89 45 e8             	mov    %eax,-0x18(%ebp)
5d52e7:	ff 75 ec             	push   -0x14(%ebp)
5d52ea:	ff 31                	push   (%ecx)
5d52ec:	50                   	push   %eax
5d52ed:	e8 63 fa ff ff       	call   0x5d4d55
5d52f2:	83 c4 0c             	add    $0xc,%esp
5d52f5:	85 c0                	test   %eax,%eax
5d52f7:	75 19                	jne    0x5d5312
5d52f9:	8b 45 f8             	mov    -0x8(%ebp),%eax
5d52fc:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5d52ff:	48                   	dec    %eax
5d5300:	83 c1 04             	add    $0x4,%ecx
5d5303:	89 45 f8             	mov    %eax,-0x8(%ebp)
5d5306:	85 c0                	test   %eax,%eax
5d5308:	89 4d f4             	mov    %ecx,-0xc(%ebp)
5d530b:	8b 45 e8             	mov    -0x18(%ebp),%eax
5d530e:	7f d7                	jg     0x5d52e7
5d5310:	eb 02                	jmp    0x5d5314
5d5312:	b3 01                	mov    $0x1,%bl
5d5314:	8b 55 fc             	mov    -0x4(%ebp),%edx
5d5317:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5d531a:	83 c2 10             	add    $0x10,%edx
5d531d:	89 55 fc             	mov    %edx,-0x4(%ebp)
5d5320:	83 ef 01             	sub    $0x1,%edi
5d5323:	75 ab                	jne    0x5d52d0
5d5325:	5f                   	pop    %edi
5d5326:	5e                   	pop    %esi
5d5327:	8a c3                	mov    %bl,%al
5d5329:	5b                   	pop    %ebx
5d532a:	c9                   	leave
5d532b:	c3                   	ret
5d532c:	e8 b8 ab 00 00       	call   0x5dfee9
5d5331:	cc                   	int3
5d5332:	55                   	push   %ebp
5d5333:	8b ec                	mov    %esp,%ebp
5d5335:	ff 75 10             	push   0x10(%ebp)
5d5338:	8b 4d 08             	mov    0x8(%ebp),%ecx
5d533b:	ff 55 0c             	call   *0xc(%ebp)
5d533e:	5d                   	pop    %ebp
5d533f:	c2 0c 00             	ret    $0xc
5d5342:	55                   	push   %ebp
5d5343:	8b ec                	mov    %esp,%ebp
5d5345:	ff 75 14             	push   0x14(%ebp)
5d5348:	8b 4d 08             	mov    0x8(%ebp),%ecx
5d534b:	ff 75 10             	push   0x10(%ebp)
5d534e:	ff 55 0c             	call   *0xc(%ebp)
5d5351:	5d                   	pop    %ebp
5d5352:	c2 10 00             	ret    $0x10
5d5355:	55                   	push   %ebp
5d5356:	8b ec                	mov    %esp,%ebp
5d5358:	8b 45 08             	mov    0x8(%ebp),%eax
5d535b:	8b 40 1c             	mov    0x1c(%eax),%eax
5d535e:	5d                   	pop    %ebp
5d535f:	c3                   	ret
5d5360:	55                   	push   %ebp
5d5361:	8b ec                	mov    %esp,%ebp
5d5363:	83 ec 04             	sub    $0x4,%esp
5d5366:	53                   	push   %ebx
5d5367:	51                   	push   %ecx
5d5368:	8b 45 0c             	mov    0xc(%ebp),%eax
5d536b:	83 c0 0c             	add    $0xc,%eax
5d536e:	89 45 fc             	mov    %eax,-0x4(%ebp)
5d5371:	8b 45 08             	mov    0x8(%ebp),%eax
5d5374:	55                   	push   %ebp
5d5375:	ff 75 10             	push   0x10(%ebp)
5d5378:	8b 4d 10             	mov    0x10(%ebp),%ecx
5d537b:	8b 6d fc             	mov    -0x4(%ebp),%ebp
5d537e:	e8 bd 01 00 00       	call   0x5d5540
5d5383:	56                   	push   %esi
5d5384:	57                   	push   %edi
5d5385:	ff d0                	call   *%eax
5d5387:	5f                   	pop    %edi
5d5388:	5e                   	pop    %esi
5d5389:	8b dd                	mov    %ebp,%ebx
5d538b:	5d                   	pop    %ebp
5d538c:	8b 4d 10             	mov    0x10(%ebp),%ecx
5d538f:	55                   	push   %ebp
5d5390:	8b eb                	mov    %ebx,%ebp
5d5392:	81 f9 00 01 00 00    	cmp    $0x100,%ecx
5d5398:	75 05                	jne    0x5d539f
5d539a:	b9 02 00 00 00       	mov    $0x2,%ecx
5d539f:	51                   	push   %ecx
5d53a0:	e8 9b 01 00 00       	call   0x5d5540
5d53a5:	5d                   	pop    %ebp
5d53a6:	59                   	pop    %ecx
5d53a7:	5b                   	pop    %ebx
5d53a8:	c9                   	leave
5d53a9:	c2 0c 00             	ret    $0xc
5d53ac:	55                   	push   %ebp
5d53ad:	8b ec                	mov    %esp,%ebp
5d53af:	a1 64 23 60 00       	mov    0x602364,%eax
5d53b4:	3d b0 75 44 00       	cmp    $0x4475b0,%eax
5d53b9:	74 1f                	je     0x5d53da
5d53bb:	64 8b 0d 18 00 00 00 	mov    %fs:0x18,%ecx
5d53c2:	8b 45 08             	mov    0x8(%ebp),%eax
5d53c5:	8b 80 c4 00 00 00    	mov    0xc4(%eax),%eax
5d53cb:	3b 41 08             	cmp    0x8(%ecx),%eax
5d53ce:	72 05                	jb     0x5d53d5
5d53d0:	3b 41 04             	cmp    0x4(%ecx),%eax
5d53d3:	76 05                	jbe    0x5d53da
5d53d5:	6a 0d                	push   $0xd
5d53d7:	59                   	pop    %ecx
5d53d8:	cd 29                	int    $0x29
5d53da:	5d                   	pop    %ebp
5d53db:	c3                   	ret
5d53dc:	55                   	push   %ebp
5d53dd:	8b ec                	mov    %esp,%ebp
5d53df:	56                   	push   %esi
5d53e0:	8b 75 08             	mov    0x8(%ebp),%esi
5d53e3:	81 3e 63 73 6d e0    	cmpl   $0xe06d7363,(%esi)
5d53e9:	75 2e                	jne    0x5d5419
5d53eb:	83 3d 10 1c 67 00 00 	cmpl   $0x0,0x671c10
5d53f2:	74 25                	je     0x5d5419
5d53f4:	68 10 1c 67 00       	push   $0x671c10
5d53f9:	e8 22 2d 02 00       	call   0x5f8120
5d53fe:	59                   	pop    %ecx
5d53ff:	85 c0                	test   %eax,%eax
5d5401:	74 16                	je     0x5d5419
5d5403:	ff 75 0c             	push   0xc(%ebp)
5d5406:	56                   	push   %esi
5d5407:	8b 35 10 1c 67 00    	mov    0x671c10,%esi
5d540d:	8b ce                	mov    %esi,%ecx
5d540f:	ff 15 64 23 60 00    	call   *0x602364
5d5415:	ff d6                	call   *%esi
5d5417:	59                   	pop    %ecx
5d5418:	59                   	pop    %ecx
5d5419:	5e                   	pop    %esi
5d541a:	5d                   	pop    %ebp
5d541b:	c3                   	ret
5d541c:	cc                   	int3
5d541d:	cc                   	int3
5d541e:	cc                   	int3
5d541f:	cc                   	int3
5d5420:	55                   	push   %ebp
5d5421:	8b ec                	mov    %esp,%ebp
5d5423:	53                   	push   %ebx
5d5424:	56                   	push   %esi
5d5425:	57                   	push   %edi
5d5426:	55                   	push   %ebp
5d5427:	6a 00                	push   $0x0
5d5429:	6a 00                	push   $0x0
5d542b:	68 39 54 5d 00       	push   $0x5d5439
5d5430:	ff 75 08             	push   0x8(%ebp)
5d5433:	ff 15 64 21 60 00    	call   *0x602164
5d5439:	5d                   	pop    %ebp
5d543a:	5f                   	pop    %edi
5d543b:	5e                   	pop    %esi
5d543c:	5b                   	pop    %ebx
5d543d:	8b e5                	mov    %ebp,%esp
5d543f:	5d                   	pop    %ebp
5d5440:	c3                   	ret
5d5441:	cc                   	int3
5d5442:	cc                   	int3
5d5443:	cc                   	int3
5d5444:	cc                   	int3
5d5445:	cc                   	int3
5d5446:	cc                   	int3
5d5447:	cc                   	int3
5d5448:	cc                   	int3
5d5449:	cc                   	int3
5d544a:	cc                   	int3
5d544b:	cc                   	int3
5d544c:	cc                   	int3
5d544d:	cc                   	int3
5d544e:	cc                   	int3
5d544f:	cc                   	int3
5d5450:	8b 4c 24 04          	mov    0x4(%esp),%ecx
5d5454:	f7 41 04 06 00 00 00 	testl  $0x6,0x4(%ecx)
5d545b:	b8 01 00 00 00       	mov    $0x1,%eax
5d5460:	0f 84 32 00 00 00    	je     0x5d5498
5d5466:	8b 44 24 14          	mov    0x14(%esp),%eax
5d546a:	8b 48 fc             	mov    -0x4(%eax),%ecx
5d546d:	33 c8                	xor    %eax,%ecx
5d546f:	e8 b2 c5 ff ff       	call   0x5d1a26
5d5474:	55                   	push   %ebp
5d5475:	8b 68 10             	mov    0x10(%eax),%ebp
5d5478:	8b 50 28             	mov    0x28(%eax),%edx
5d547b:	52                   	push   %edx
5d547c:	8b 50 24             	mov    0x24(%eax),%edx
5d547f:	52                   	push   %edx
5d5480:	e8 1b 00 00 00       	call   0x5d54a0
5d5485:	83 c4 08             	add    $0x8,%esp
5d5488:	5d                   	pop    %ebp
5d5489:	8b 44 24 08          	mov    0x8(%esp),%eax
5d548d:	8b 54 24 10          	mov    0x10(%esp),%edx
5d5491:	89 02                	mov    %eax,(%edx)
5d5493:	b8 03 00 00 00       	mov    $0x3,%eax
5d5498:	c3                   	ret
5d5499:	cc                   	int3
5d549a:	cc                   	int3
5d549b:	cc                   	int3
5d549c:	cc                   	int3
5d549d:	cc                   	int3
5d549e:	cc                   	int3
5d549f:	cc                   	int3
5d54a0:	53                   	push   %ebx
5d54a1:	56                   	push   %esi
5d54a2:	57                   	push   %edi
5d54a3:	8b 44 24 10          	mov    0x10(%esp),%eax
5d54a7:	55                   	push   %ebp
5d54a8:	50                   	push   %eax
5d54a9:	6a fe                	push   $0xfffffffe
5d54ab:	68 50 54 5d 00       	push   $0x5d5450
5d54b0:	64 ff 35 00 00 00 00 	push   %fs:0x0
5d54b7:	a1 c0 14 69 00       	mov    0x6914c0,%eax
5d54bc:	33 c4                	xor    %esp,%eax
5d54be:	50                   	push   %eax
5d54bf:	8d 44 24 04          	lea    0x4(%esp),%eax
5d54c3:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
5d54c9:	8b 44 24 28          	mov    0x28(%esp),%eax
5d54cd:	8b 58 08             	mov    0x8(%eax),%ebx
5d54d0:	8b 70 0c             	mov    0xc(%eax),%esi
5d54d3:	83 fe ff             	cmp    $0xffffffff,%esi
5d54d6:	0f 84 49 00 00 00    	je     0x5d5525
5d54dc:	83 7c 24 2c ff       	cmpl   $0xffffffff,0x2c(%esp)
5d54e1:	0f 84 0a 00 00 00    	je     0x5d54f1
5d54e7:	3b 74 24 2c          	cmp    0x2c(%esp),%esi
5d54eb:	0f 86 34 00 00 00    	jbe    0x5d5525
5d54f1:	8d 34 76             	lea    (%esi,%esi,2),%esi
5d54f4:	8b 0c b3             	mov    (%ebx,%esi,4),%ecx
5d54f7:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
5d54fb:	89 48 0c             	mov    %ecx,0xc(%eax)
5d54fe:	83 7c b3 04 00       	cmpl   $0x0,0x4(%ebx,%esi,4)
5d5503:	0f 85 17 00 00 00    	jne    0x5d5520
5d5509:	68 01 01 00 00       	push   $0x101
5d550e:	8b 44 b3 08          	mov    0x8(%ebx,%esi,4),%eax
5d5512:	e8 39 00 00 00       	call   0x5d5550
5d5517:	8b 44 b3 08          	mov    0x8(%ebx,%esi,4),%eax
5d551b:	e8 50 00 00 00       	call   0x5d5570
5d5520:	e9 a4 ff ff ff       	jmp    0x5d54c9
5d5525:	8b 4c 24 04          	mov    0x4(%esp),%ecx
5d5529:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5d5530:	83 c4 18             	add    $0x18,%esp
5d5533:	5f                   	pop    %edi
5d5534:	5e                   	pop    %esi
5d5535:	5b                   	pop    %ebx
5d5536:	c3                   	ret
5d5537:	cc                   	int3
5d5538:	cc                   	int3
5d5539:	cc                   	int3
5d553a:	cc                   	int3
5d553b:	cc                   	int3
5d553c:	cc                   	int3
5d553d:	cc                   	int3
5d553e:	cc                   	int3
5d553f:	cc                   	int3
5d5540:	53                   	push   %ebx
5d5541:	51                   	push   %ecx
5d5542:	bb 50 15 69 00       	mov    $0x691550,%ebx
5d5547:	e9 0f 00 00 00       	jmp    0x5d555b
5d554c:	cc                   	int3
5d554d:	cc                   	int3
5d554e:	cc                   	int3
5d554f:	cc                   	int3
5d5550:	53                   	push   %ebx
5d5551:	51                   	push   %ecx
5d5552:	bb 50 15 69 00       	mov    $0x691550,%ebx
5d5557:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
5d555b:	89 4b 08             	mov    %ecx,0x8(%ebx)
5d555e:	89 43 04             	mov    %eax,0x4(%ebx)
5d5561:	89 6b 0c             	mov    %ebp,0xc(%ebx)
5d5564:	55                   	push   %ebp
5d5565:	51                   	push   %ecx
5d5566:	50                   	push   %eax
5d5567:	58                   	pop    %eax
5d5568:	59                   	pop    %ecx
5d5569:	5d                   	pop    %ebp
5d556a:	59                   	pop    %ecx
5d556b:	5b                   	pop    %ebx
5d556c:	c2 04 00             	ret    $0x4
5d556f:	cc                   	int3
5d5570:	ff d0                	call   *%eax
5d5572:	c3                   	ret
5d5573:	cc                   	int3
5d5574:	cc                   	int3
5d5575:	cc                   	int3
5d5576:	cc                   	int3
5d5577:	cc                   	int3
5d5578:	cc                   	int3
5d5579:	cc                   	int3
5d557a:	cc                   	int3
5d557b:	cc                   	int3
5d557c:	cc                   	int3
5d557d:	cc                   	int3
5d557e:	cc                   	int3
5d557f:	cc                   	int3
5d5580:	55                   	push   %ebp
5d5581:	8b ec                	mov    %esp,%ebp
5d5583:	53                   	push   %ebx
5d5584:	56                   	push   %esi
5d5585:	57                   	push   %edi
5d5586:	8b 7d 10             	mov    0x10(%ebp),%edi
5d5589:	33 c0                	xor    %eax,%eax
5d558b:	83 ca ff             	or     $0xffffffff,%edx
5d558e:	83 ff ff             	cmp    $0xffffffff,%edi
5d5591:	0f 84 a2 00 00 00    	je     0x5d5639
5d5597:	8b 5d 08             	mov    0x8(%ebp),%ebx
5d559a:	8b 75 0c             	mov    0xc(%ebp),%esi
5d559d:	0f 1f 00             	nopl   (%eax)
5d55a0:	8d 0c 7f             	lea    (%edi,%edi,2),%ecx
5d55a3:	8b 74 8e 08          	mov    0x8(%esi,%ecx,4),%esi
5d55a7:	2b f3                	sub    %ebx,%esi
5d55a9:	81 e6 00 f0 ff ff    	and    $0xfffff000,%esi