52726c:	e8 af ff ff ff       	call   0x527220
527271:	83 c4 10             	add    $0x10,%esp
527274:	85 c0                	test   %eax,%eax
527276:	75 c9                	jne    0x527241
527278:	80 3e 33             	cmpb   $0x33,(%esi)
52727b:	75 16                	jne    0x527293
52727d:	6a 00                	push   $0x0
52727f:	57                   	push   %edi
527280:	ff 76 0c             	push   0xc(%esi)
527283:	53                   	push   %ebx
527284:	ff 75 08             	push   0x8(%ebp)
527287:	e8 64 9a fd ff       	call   0x500cf0
52728c:	83 c4 14             	add    $0x14,%esp
52728f:	85 c0                	test   %eax,%eax
527291:	75 ae                	jne    0x527241
527293:	5f                   	pop    %edi
527294:	5e                   	pop    %esi
527295:	33 c0                	xor    %eax,%eax
527297:	5b                   	pop    %ebx
527298:	5d                   	pop    %ebp
527299:	c3                   	ret
52729a:	cc                   	int3
52729b:	cc                   	int3
52729c:	cc                   	int3
52729d:	cc                   	int3
52729e:	cc                   	int3
52729f:	cc                   	int3
5272a0:	55                   	push   %ebp
5272a1:	8b ec                	mov    %esp,%ebp
5272a3:	83 ec 20             	sub    $0x20,%esp
5272a6:	a1 d4 89 72 00       	mov    0x7289d4,%eax
5272ab:	33 c5                	xor    %ebp,%eax
5272ad:	89 45 fc             	mov    %eax,-0x4(%ebp)
5272b0:	8b 45 08             	mov    0x8(%ebp),%eax
5272b3:	56                   	push   %esi
5272b4:	50                   	push   %eax
5272b5:	e8 96 0a 00 00       	call   0x527d50
5272ba:	8b f0                	mov    %eax,%esi
5272bc:	83 c4 04             	add    $0x4,%esp
5272bf:	85 f6                	test   %esi,%esi
5272c1:	75 0f                	jne    0x5272d2
5272c3:	5e                   	pop    %esi
5272c4:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5272c7:	33 cd                	xor    %ebp,%ecx
5272c9:	e8 0c a2 0b 00       	call   0x5e14da
5272ce:	8b e5                	mov    %ebp,%esp
5272d0:	5d                   	pop    %ebp
5272d1:	c3                   	ret
5272d2:	8a 06                	mov    (%esi),%al
5272d4:	57                   	push   %edi
5272d5:	8b 7d 0c             	mov    0xc(%ebp),%edi
5272d8:	3c 33                	cmp    $0x33,%al
5272da:	75 49                	jne    0x527325
5272dc:	8b 76 0c             	mov    0xc(%esi),%esi
5272df:	33 c0                	xor    %eax,%eax
5272e1:	c7 45 e4 f0 6b 50 00 	movl   $0x506bf0,-0x1c(%ebp)
5272e8:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
5272ef:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
5272f6:	66 89 45 f4          	mov    %ax,-0xc(%ebp)
5272fa:	89 7d f8             	mov    %edi,-0x8(%ebp)
5272fd:	85 f6                	test   %esi,%esi
5272ff:	74 11                	je     0x527312
527301:	8d 45 e0             	lea    -0x20(%ebp),%eax
527304:	56                   	push   %esi
527305:	50                   	push   %eax
527306:	e8 a5 8c 03 00       	call   0x55ffb0
52730b:	66 8b 45 f4          	mov    -0xc(%ebp),%ax
52730f:	83 c4 08             	add    $0x8,%esp
527312:	5f                   	pop    %edi
527313:	0f b7 c0             	movzwl %ax,%eax
527316:	5e                   	pop    %esi
527317:	8b 4d fc             	mov    -0x4(%ebp),%ecx
52731a:	33 cd                	xor    %ebp,%ecx
52731c:	e8 b9 a1 0b 00       	call   0x5e14da
527321:	8b e5                	mov    %ebp,%esp
527323:	5d                   	pop    %ebp
527324:	c3                   	ret
527325:	3c 2c                	cmp    $0x2c,%al
527327:	75 b6                	jne    0x5272df
527329:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
527330:	57                   	push   %edi
527331:	ff 76 0c             	push   0xc(%esi)
527334:	e8 67 ff ff ff       	call   0x5272a0
527339:	83 c4 08             	add    $0x8,%esp
52733c:	85 c0                	test   %eax,%eax
52733e:	75 0a                	jne    0x52734a
527340:	8b 76 10             	mov    0x10(%esi),%esi
527343:	80 3e 2c             	cmpb   $0x2c,(%esi)
527346:	74 e8                	je     0x527330
527348:	eb 95                	jmp    0x5272df
52734a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
52734d:	b8 01 00 00 00       	mov    $0x1,%eax
527352:	5f                   	pop    %edi
527353:	33 cd                	xor    %ebp,%ecx
527355:	5e                   	pop    %esi
527356:	e8 7f a1 0b 00       	call   0x5e14da
52735b:	8b e5                	mov    %ebp,%esp
52735d:	5d                   	pop    %ebp
52735e:	c3                   	ret
52735f:	cc                   	int3
527360:	55                   	push   %ebp
527361:	8b ec                	mov    %esp,%ebp
527363:	83 ec 20             	sub    $0x20,%esp
527366:	a1 d4 89 72 00       	mov    0x7289d4,%eax
52736b:	33 c5                	xor    %ebp,%eax
52736d:	89 45 fc             	mov    %eax,-0x4(%ebp)
527370:	8b 45 08             	mov    0x8(%ebp),%eax
527373:	b9 01 00 00 00       	mov    $0x1,%ecx
527378:	66 89 4d f4          	mov    %cx,-0xc(%ebp)
52737c:	c7 45 e4 c0 12 50 00 	movl   $0x5012c0,-0x1c(%ebp)
527383:	c7 45 e8 f0 c7 53 00 	movl   $0x53c7f0,-0x18(%ebp)
52738a:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
527391:	85 c0                	test   %eax,%eax
527393:	74 11                	je     0x5273a6
527395:	50                   	push   %eax
527396:	8d 45 e0             	lea    -0x20(%ebp),%eax
527399:	50                   	push   %eax
52739a:	e8 11 8c 03 00       	call   0x55ffb0
52739f:	0f b7 45 f4          	movzwl -0xc(%ebp),%eax
5273a3:	83 c4 08             	add    $0x8,%esp
5273a6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5273a9:	33 cd                	xor    %ebp,%ecx
5273ab:	e8 2a a1 0b 00       	call   0x5e14da
5273b0:	8b e5                	mov    %ebp,%esp
5273b2:	5d                   	pop    %ebp
5273b3:	c3                   	ret
5273b4:	cc                   	int3
5273b5:	cc                   	int3
5273b6:	cc                   	int3
5273b7:	cc                   	int3
5273b8:	cc                   	int3
5273b9:	cc                   	int3
5273ba:	cc                   	int3
5273bb:	cc                   	int3
5273bc:	cc                   	int3
5273bd:	cc                   	int3
5273be:	cc                   	int3
5273bf:	cc                   	int3
5273c0:	55                   	push   %ebp
5273c1:	8b ec                	mov    %esp,%ebp
5273c3:	83 ec 20             	sub    $0x20,%esp
5273c6:	a1 d4 89 72 00       	mov    0x7289d4,%eax
5273cb:	33 c5                	xor    %ebp,%eax
5273cd:	89 45 fc             	mov    %eax,-0x4(%ebp)
5273d0:	8b 45 08             	mov    0x8(%ebp),%eax
5273d3:	b9 02 00 00 00       	mov    $0x2,%ecx
5273d8:	66 89 4d f4          	mov    %cx,-0xc(%ebp)
5273dc:	c7 45 e4 c0 12 50 00 	movl   $0x5012c0,-0x1c(%ebp)
5273e3:	c7 45 e8 f0 c7 53 00 	movl   $0x53c7f0,-0x18(%ebp)
5273ea:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
5273f1:	85 c0                	test   %eax,%eax
5273f3:	74 11                	je     0x527406
5273f5:	50                   	push   %eax
5273f6:	8d 45 e0             	lea    -0x20(%ebp),%eax
5273f9:	50                   	push   %eax
5273fa:	e8 b1 8b 03 00       	call   0x55ffb0
5273ff:	0f b7 45 f4          	movzwl -0xc(%ebp),%eax
527403:	83 c4 08             	add    $0x8,%esp
527406:	8b 4d fc             	mov    -0x4(%ebp),%ecx
527409:	33 cd                	xor    %ebp,%ecx
52740b:	e8 ca a0 0b 00       	call   0x5e14da
527410:	8b e5                	mov    %ebp,%esp
527412:	5d                   	pop    %ebp
527413:	c3                   	ret
527414:	cc                   	int3
527415:	cc                   	int3
527416:	cc                   	int3
527417:	cc                   	int3
527418:	cc                   	int3
527419:	cc                   	int3
52741a:	cc                   	int3
52741b:	cc                   	int3
52741c:	cc                   	int3
52741d:	cc                   	int3
52741e:	cc                   	int3
52741f:	cc                   	int3
527420:	55                   	push   %ebp
527421:	8b ec                	mov    %esp,%ebp
527423:	83 ec 08             	sub    $0x8,%esp
527426:	a1 d4 89 72 00       	mov    0x7289d4,%eax
52742b:	33 c5                	xor    %ebp,%eax
52742d:	89 45 fc             	mov    %eax,-0x4(%ebp)
527430:	8b 45 08             	mov    0x8(%ebp),%eax
527433:	56                   	push   %esi
527434:	33 f6                	xor    %esi,%esi
527436:	57                   	push   %edi
527437:	8b 7d 0c             	mov    0xc(%ebp),%edi
52743a:	85 c0                	test   %eax,%eax
52743c:	75 10                	jne    0x52744e
52743e:	5f                   	pop    %edi
52743f:	5e                   	pop    %esi
527440:	8b 4d fc             	mov    -0x4(%ebp),%ecx
527443:	33 cd                	xor    %ebp,%ecx
527445:	e8 90 a0 0b 00       	call   0x5e14da
52744a:	8b e5                	mov    %ebp,%esp
52744c:	5d                   	pop    %ebp
52744d:	c3                   	ret
52744e:	f7 40 04 00 04 00 00 	testl  $0x400,0x4(%eax)
527455:	74 1a                	je     0x527471
527457:	8b 40 08             	mov    0x8(%eax),%eax
52745a:	89 07                	mov    %eax,(%edi)
52745c:	b8 01 00 00 00       	mov    $0x1,%eax
527461:	5f                   	pop    %edi
527462:	5e                   	pop    %esi
527463:	8b 4d fc             	mov    -0x4(%ebp),%ecx
527466:	33 cd                	xor    %ebp,%ecx
527468:	e8 6d a0 0b 00       	call   0x5e14da
52746d:	8b e5                	mov    %ebp,%esp
52746f:	5d                   	pop    %ebp
527470:	c3                   	ret
527471:	0f b6 08             	movzbl (%eax),%ecx
527474:	81 e9 aa 00 00 00    	sub    $0xaa,%ecx
52747a:	74 23                	je     0x52749f
52747c:	83 e9 01             	sub    $0x1,%ecx
52747f:	75 3d                	jne    0x5274be
527481:	57                   	push   %edi
527482:	ff 70 0c             	push   0xc(%eax)
527485:	e8 96 ff ff ff       	call   0x527420
52748a:	83 c4 08             	add    $0x8,%esp
52748d:	8b f0                	mov    %eax,%esi
52748f:	5f                   	pop    %edi
527490:	5e                   	pop    %esi
527491:	8b 4d fc             	mov    -0x4(%ebp),%ecx
527494:	33 cd                	xor    %ebp,%ecx
527496:	e8 3f a0 0b 00       	call   0x5e14da
52749b:	8b e5                	mov    %ebp,%esp
52749d:	5d                   	pop    %ebp
52749e:	c3                   	ret
52749f:	8d 4d f8             	lea    -0x8(%ebp),%ecx
5274a2:	51                   	push   %ecx
5274a3:	ff 70 0c             	push   0xc(%eax)
5274a6:	e8 75 ff ff ff       	call   0x527420
5274ab:	83 c4 08             	add    $0x8,%esp
5274ae:	85 c0                	test   %eax,%eax
5274b0:	74 0c                	je     0x5274be
5274b2:	8b 45 f8             	mov    -0x8(%ebp),%eax
5274b5:	be 01 00 00 00       	mov    $0x1,%esi
5274ba:	f7 d8                	neg    %eax
5274bc:	89 07                	mov    %eax,(%edi)
5274be:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5274c1:	8b c6                	mov    %esi,%eax
5274c3:	5f                   	pop    %edi
5274c4:	33 cd                	xor    %ebp,%ecx
5274c6:	5e                   	pop    %esi
5274c7:	e8 0e a0 0b 00       	call   0x5e14da
5274cc:	8b e5                	mov    %ebp,%esp
5274ce:	5d                   	pop    %ebp
5274cf:	c3                   	ret
5274d0:	55                   	push   %ebp
5274d1:	8b ec                	mov    %esp,%ebp
5274d3:	83 ec 20             	sub    $0x20,%esp
5274d6:	a1 d4 89 72 00       	mov    0x7289d4,%eax
5274db:	33 c5                	xor    %ebp,%eax
5274dd:	89 45 fc             	mov    %eax,-0x4(%ebp)
5274e0:	8b 4d 08             	mov    0x8(%ebp),%ecx
5274e3:	ba 03 00 00 00       	mov    $0x3,%edx
5274e8:	8b 45 0c             	mov    0xc(%ebp),%eax
5274eb:	66 89 55 f4          	mov    %dx,-0xc(%ebp)
5274ef:	c7 45 e4 c0 12 50 00 	movl   $0x5012c0,-0x1c(%ebp)
5274f6:	c7 45 e8 f0 c7 53 00 	movl   $0x53c7f0,-0x18(%ebp)
5274fd:	89 45 f8             	mov    %eax,-0x8(%ebp)
527500:	85 c9                	test   %ecx,%ecx
527502:	74 11                	je     0x527515
527504:	51                   	push   %ecx
527505:	8d 45 e0             	lea    -0x20(%ebp),%eax
527508:	50                   	push   %eax
527509:	e8 a2 8a 03 00       	call   0x55ffb0
52750e:	0f b7 45 f4          	movzwl -0xc(%ebp),%eax
527512:	83 c4 08             	add    $0x8,%esp
527515:	8b 4d fc             	mov    -0x4(%ebp),%ecx
527518:	33 cd                	xor    %ebp,%ecx
52751a:	e8 bb 9f 0b 00       	call   0x5e14da
52751f:	8b e5                	mov    %ebp,%esp
527521:	5d                   	pop    %ebp
527522:	c3                   	ret
527523:	cc                   	int3
527524:	cc                   	int3
527525:	cc                   	int3
527526:	cc                   	int3
527527:	cc                   	int3
527528:	cc                   	int3
527529:	cc                   	int3
52752a:	cc                   	int3
52752b:	cc                   	int3
52752c:	cc                   	int3
52752d:	cc                   	int3
52752e:	cc                   	int3
52752f:	cc                   	int3
527530:	55                   	push   %ebp
527531:	8b ec                	mov    %esp,%ebp
527533:	8b 4d 08             	mov    0x8(%ebp),%ecx
527536:	8a 01                	mov    (%ecx),%al
527538:	3c ad                	cmp    $0xad,%al
52753a:	75 03                	jne    0x52753f
52753c:	8a 41 02             	mov    0x2(%ecx),%al
52753f:	3c ae                	cmp    $0xae,%al
527541:	75 0f                	jne    0x527552
527543:	8b 41 14             	mov    0x14(%ecx),%eax
527546:	8b 08                	mov    (%eax),%ecx
527548:	33 c0                	xor    %eax,%eax
52754a:	83 f9 01             	cmp    $0x1,%ecx
52754d:	0f 9f c0             	setg   %al
527550:	5d                   	pop    %ebp
527551:	c3                   	ret
527552:	3c 88                	cmp    $0x88,%al
527554:	75 12                	jne    0x527568
527556:	8b 41 14             	mov    0x14(%ecx),%eax
527559:	8b 40 1c             	mov    0x1c(%eax),%eax
52755c:	8b 08                	mov    (%eax),%ecx
52755e:	33 c0                	xor    %eax,%eax
527560:	83 f9 01             	cmp    $0x1,%ecx
527563:	0f 9f c0             	setg   %al
527566:	5d                   	pop    %ebp
527567:	c3                   	ret
527568:	b9 01 00 00 00       	mov    $0x1,%ecx
52756d:	33 c0                	xor    %eax,%eax
52756f:	3b c9                	cmp    %ecx,%ecx
527571:	0f 9f c0             	setg   %al
527574:	5d                   	pop    %ebp
527575:	c3                   	ret
527576:	cc                   	int3
527577:	cc                   	int3
527578:	cc                   	int3
527579:	cc                   	int3
52757a:	cc                   	int3
52757b:	cc                   	int3
52757c:	cc                   	int3
52757d:	cc                   	int3
52757e:	cc                   	int3
52757f:	cc                   	int3
527580:	55                   	push   %ebp
527581:	8b ec                	mov    %esp,%ebp
527583:	8b 45 08             	mov    0x8(%ebp),%eax
527586:	53                   	push   %ebx
527587:	57                   	push   %edi
527588:	8b 7d 0c             	mov    0xc(%ebp),%edi
52758b:	8b 18                	mov    (%eax),%ebx
52758d:	85 ff                	test   %edi,%edi
52758f:	75 1a                	jne    0x5275ab
527591:	57                   	push   %edi
527592:	6a 18                	push   $0x18
527594:	53                   	push   %ebx
527595:	e8 46 9e ff ff       	call   0x5213e0
52759a:	8b f8                	mov    %eax,%edi
52759c:	83 c4 0c             	add    $0xc,%esp
52759f:	85 ff                	test   %edi,%edi
5275a1:	74 4c                	je     0x5275ef
5275a3:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
5275a9:	eb 6b                	jmp    0x527616
5275ab:	8b 07                	mov    (%edi),%eax