42830b:	8b f8                	mov    %eax,%edi
42830d:	59                   	pop    %ecx
42830e:	59                   	pop    %ecx
42830f:	85 f6                	test   %esi,%esi
428311:	7e 15                	jle    0x428328
428313:	3b fe                	cmp    %esi,%edi
428315:	7d da                	jge    0x4282f1
428317:	53                   	push   %ebx
428318:	56                   	push   %esi
428319:	ff 75 0c             	push   0xc(%ebp)
42831c:	e8 67 a7 fe ff       	call   0x412a88
428321:	83 c4 0c             	add    $0xc,%esp
428324:	85 c0                	test   %eax,%eax
428326:	75 05                	jne    0x42832d
428328:	8d 47 01             	lea    0x1(%edi),%eax
42832b:	eb c6                	jmp    0x4282f3
42832d:	33 c0                	xor    %eax,%eax
42832f:	50                   	push   %eax
428330:	50                   	push   %eax
428331:	50                   	push   %eax
428332:	50                   	push   %eax
428333:	50                   	push   %eax
428334:	e8 e2 50 fe ff       	call   0x40d41b
428339:	cc                   	int3
42833a:	8b ff                	mov    %edi,%edi
42833c:	55                   	push   %ebp
42833d:	8b ec                	mov    %esp,%ebp
42833f:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
428343:	74 1d                	je     0x428362
428345:	ff 75 08             	push   0x8(%ebp)
428348:	e8 fa fe ff ff       	call   0x428247
42834d:	59                   	pop    %ecx
42834e:	85 c0                	test   %eax,%eax
428350:	78 10                	js     0x428362
428352:	3d e4 00 00 00       	cmp    $0xe4,%eax
428357:	73 09                	jae    0x428362
428359:	8b 04 c5 48 57 43 00 	mov    0x435748(,%eax,8),%eax
428360:	5d                   	pop    %ebp
428361:	c3                   	ret
428362:	33 c0                	xor    %eax,%eax
428364:	5d                   	pop    %ebp
428365:	c3                   	ret
428366:	8b ff                	mov    %edi,%edi
428368:	55                   	push   %ebp
428369:	8b ec                	mov    %esp,%ebp
42836b:	51                   	push   %ecx
42836c:	51                   	push   %ecx
42836d:	56                   	push   %esi
42836e:	57                   	push   %edi
42836f:	e8 35 19 ff ff       	call   0x419ca9
428374:	8b f8                	mov    %eax,%edi
428376:	85 ff                	test   %edi,%edi
428378:	74 60                	je     0x4283da
42837a:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
42837e:	74 5a                	je     0x4283da
428380:	8b 75 08             	mov    0x8(%ebp),%esi
428383:	33 d2                	xor    %edx,%edx
428385:	89 55 fc             	mov    %edx,-0x4(%ebp)
428388:	8d 4e 02             	lea    0x2(%esi),%ecx
42838b:	66 8b 06             	mov    (%esi),%ax
42838e:	83 c6 02             	add    $0x2,%esi
428391:	66 3b c2             	cmp    %dx,%ax
428394:	75 f5                	jne    0x42838b
428396:	2b f1                	sub    %ecx,%esi
428398:	d1 fe                	sar    $1,%esi
42839a:	eb 38                	jmp    0x4283d4
42839c:	8b ca                	mov    %edx,%ecx
42839e:	8d 41 02             	lea    0x2(%ecx),%eax
4283a1:	89 45 f8             	mov    %eax,-0x8(%ebp)
4283a4:	66 8b 01             	mov    (%ecx),%ax
4283a7:	83 c1 02             	add    $0x2,%ecx
4283aa:	66 3b 45 fc          	cmp    -0x4(%ebp),%ax
4283ae:	75 f4                	jne    0x4283a4
4283b0:	2b 4d f8             	sub    -0x8(%ebp),%ecx
4283b3:	d1 f9                	sar    $1,%ecx
4283b5:	3b ce                	cmp    %esi,%ecx
4283b7:	76 18                	jbe    0x4283d1
4283b9:	66 83 3c 72 3d       	cmpw   $0x3d,(%edx,%esi,2)
4283be:	75 11                	jne    0x4283d1
4283c0:	56                   	push   %esi
4283c1:	ff 75 08             	push   0x8(%ebp)
4283c4:	52                   	push   %edx
4283c5:	e8 a9 24 00 00       	call   0x42a873
4283ca:	83 c4 0c             	add    $0xc,%esp
4283cd:	85 c0                	test   %eax,%eax
4283cf:	74 0f                	je     0x4283e0
4283d1:	83 c7 04             	add    $0x4,%edi
4283d4:	8b 17                	mov    (%edi),%edx
4283d6:	85 d2                	test   %edx,%edx
4283d8:	75 c2                	jne    0x42839c
4283da:	33 c0                	xor    %eax,%eax
4283dc:	5f                   	pop    %edi
4283dd:	5e                   	pop    %esi
4283de:	c9                   	leave
4283df:	c3                   	ret
4283e0:	8b 07                	mov    (%edi),%eax
4283e2:	8d 04 70             	lea    (%eax,%esi,2),%eax
4283e5:	83 c0 02             	add    $0x2,%eax
4283e8:	eb f2                	jmp    0x4283dc
4283ea:	6a 0c                	push   $0xc
4283ec:	68 00 b1 43 00       	push   $0x43b100
4283f1:	e8 da 20 fe ff       	call   0x40a4d0
4283f6:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
4283fa:	6a 0b                	push   $0xb
4283fc:	e8 81 af ff ff       	call   0x423382
428401:	59                   	pop    %ecx
428402:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
428406:	ff 75 14             	push   0x14(%ebp)
428409:	ff 75 10             	push   0x10(%ebp)
42840c:	ff 75 0c             	push   0xc(%ebp)
42840f:	ff 75 08             	push   0x8(%ebp)
428412:	e8 32 00 00 00       	call   0x428449
428417:	83 c4 10             	add    $0x10,%esp
42841a:	8b f0                	mov    %eax,%esi
42841c:	89 75 e4             	mov    %esi,-0x1c(%ebp)
42841f:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
428426:	e8 15 00 00 00       	call   0x428440
42842b:	8b c6                	mov    %esi,%eax
42842d:	8b 4d f0             	mov    -0x10(%ebp),%ecx
428430:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
428437:	59                   	pop    %ecx
428438:	5f                   	pop    %edi
428439:	5e                   	pop    %esi
42843a:	5b                   	pop    %ebx
42843b:	c9                   	leave
42843c:	c3                   	ret
42843d:	8b 75 e4             	mov    -0x1c(%ebp),%esi
428440:	6a 0b                	push   $0xb
428442:	e8 83 af ff ff       	call   0x4233ca
428447:	59                   	pop    %ecx
428448:	c3                   	ret
428449:	8b ff                	mov    %edi,%edi
42844b:	55                   	push   %ebp
42844c:	8b ec                	mov    %esp,%ebp
42844e:	51                   	push   %ecx
42844f:	51                   	push   %ecx
428450:	56                   	push   %esi
428451:	57                   	push   %edi
428452:	8b 7d 08             	mov    0x8(%ebp),%edi
428455:	85 ff                	test   %edi,%edi
428457:	75 13                	jne    0x42846c
428459:	e8 13 42 ff ff       	call   0x41c671
42845e:	6a 16                	push   $0x16
428460:	5e                   	pop    %esi
428461:	89 30                	mov    %esi,(%eax)
428463:	e8 86 4f fe ff       	call   0x40d3ee
428468:	8b c6                	mov    %esi,%eax
42846a:	eb 7a                	jmp    0x4284e6
42846c:	8b 75 10             	mov    0x10(%ebp),%esi
42846f:	33 c0                	xor    %eax,%eax
428471:	53                   	push   %ebx
428472:	8b 5d 0c             	mov    0xc(%ebp),%ebx
428475:	89 45 fc             	mov    %eax,-0x4(%ebp)
428478:	89 07                	mov    %eax,(%edi)
42847a:	85 db                	test   %ebx,%ebx
42847c:	74 3f                	je     0x4284bd
42847e:	85 f6                	test   %esi,%esi
428480:	74 3f                	je     0x4284c1
428482:	66 89 03             	mov    %ax,(%ebx)
428485:	ff 75 14             	push   0x14(%ebp)
428488:	e8 d9 fe ff ff       	call   0x428366
42848d:	8b d0                	mov    %eax,%edx
42848f:	59                   	pop    %ecx
428490:	85 d2                	test   %edx,%edx
428492:	74 4f                	je     0x4284e3
428494:	8b ca                	mov    %edx,%ecx
428496:	8d 41 02             	lea    0x2(%ecx),%eax
428499:	89 45 f8             	mov    %eax,-0x8(%ebp)
42849c:	66 8b 01             	mov    (%ecx),%ax
42849f:	83 c1 02             	add    $0x2,%ecx
4284a2:	66 3b 45 fc          	cmp    -0x4(%ebp),%ax
4284a6:	75 f4                	jne    0x42849c
4284a8:	2b 4d f8             	sub    -0x8(%ebp),%ecx
4284ab:	d1 f9                	sar    $1,%ecx
4284ad:	41                   	inc    %ecx
4284ae:	89 0f                	mov    %ecx,(%edi)
4284b0:	85 f6                	test   %esi,%esi
4284b2:	74 2f                	je     0x4284e3
4284b4:	3b ce                	cmp    %esi,%ecx
4284b6:	76 1c                	jbe    0x4284d4
4284b8:	6a 22                	push   $0x22
4284ba:	58                   	pop    %eax
4284bb:	eb 28                	jmp    0x4284e5
4284bd:	85 f6                	test   %esi,%esi
4284bf:	74 c4                	je     0x428485
4284c1:	e8 ab 41 ff ff       	call   0x41c671
4284c6:	6a 16                	push   $0x16
4284c8:	5e                   	pop    %esi
4284c9:	89 30                	mov    %esi,(%eax)
4284cb:	e8 1e 4f fe ff       	call   0x40d3ee
4284d0:	8b c6                	mov    %esi,%eax
4284d2:	eb 11                	jmp    0x4284e5
4284d4:	52                   	push   %edx
4284d5:	56                   	push   %esi
4284d6:	53                   	push   %ebx
4284d7:	e8 ac a5 fe ff       	call   0x412a88
4284dc:	83 c4 0c             	add    $0xc,%esp
4284df:	85 c0                	test   %eax,%eax
4284e1:	75 07                	jne    0x4284ea
4284e3:	33 c0                	xor    %eax,%eax
4284e5:	5b                   	pop    %ebx
4284e6:	5f                   	pop    %edi
4284e7:	5e                   	pop    %esi
4284e8:	c9                   	leave
4284e9:	c3                   	ret
4284ea:	33 c0                	xor    %eax,%eax
4284ec:	50                   	push   %eax
4284ed:	50                   	push   %eax
4284ee:	50                   	push   %eax
4284ef:	50                   	push   %eax
4284f0:	50                   	push   %eax
4284f1:	e8 25 4f fe ff       	call   0x40d41b
4284f6:	cc                   	int3
4284f7:	8b ff                	mov    %edi,%edi
4284f9:	55                   	push   %ebp
4284fa:	8b ec                	mov    %esp,%ebp
4284fc:	5d                   	pop    %ebp
4284fd:	e9 e8 fe ff ff       	jmp    0x4283ea
428502:	8b ff                	mov    %edi,%edi
428504:	55                   	push   %ebp
428505:	8b ec                	mov    %esp,%ebp
428507:	8b 4d 10             	mov    0x10(%ebp),%ecx
42850a:	85 c9                	test   %ecx,%ecx
42850c:	75 04                	jne    0x428512
42850e:	33 c0                	xor    %eax,%eax
428510:	5d                   	pop    %ebp
428511:	c3                   	ret
428512:	53                   	push   %ebx
428513:	8b 5d 0c             	mov    0xc(%ebp),%ebx
428516:	56                   	push   %esi
428517:	57                   	push   %edi
428518:	8b 7d 08             	mov    0x8(%ebp),%edi
42851b:	0f b7 17             	movzwl (%edi),%edx
42851e:	8d 7f 02             	lea    0x2(%edi),%edi
428521:	8d 42 bf             	lea    -0x41(%edx),%eax
428524:	83 f8 19             	cmp    $0x19,%eax
428527:	77 03                	ja     0x42852c
428529:	83 c2 20             	add    $0x20,%edx
42852c:	0f b7 33             	movzwl (%ebx),%esi
42852f:	83 c3 02             	add    $0x2,%ebx
428532:	8d 46 bf             	lea    -0x41(%esi),%eax
428535:	83 f8 19             	cmp    $0x19,%eax
428538:	77 03                	ja     0x42853d
42853a:	83 c6 20             	add    $0x20,%esi
42853d:	8b c2                	mov    %edx,%eax
42853f:	2b c6                	sub    %esi,%eax
428541:	75 09                	jne    0x42854c
428543:	85 d2                	test   %edx,%edx
428545:	74 05                	je     0x42854c
428547:	83 e9 01             	sub    $0x1,%ecx
42854a:	75 cf                	jne    0x42851b
42854c:	5f                   	pop    %edi
42854d:	5e                   	pop    %esi
42854e:	5b                   	pop    %ebx
42854f:	5d                   	pop    %ebp
428550:	c3                   	ret
428551:	8b ff                	mov    %edi,%edi
428553:	55                   	push   %ebp
428554:	8b ec                	mov    %esp,%ebp
428556:	83 3d b8 f7 43 00 00 	cmpl   $0x0,0x43f7b8
42855d:	75 29                	jne    0x428588
42855f:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
428563:	75 17                	jne    0x42857c
428565:	e8 07 41 ff ff       	call   0x41c671
42856a:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
428570:	e8 79 4e fe ff       	call   0x40d3ee
428575:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
42857a:	5d                   	pop    %ebp
42857b:	c3                   	ret
42857c:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
428580:	74 e3                	je     0x428565
428582:	5d                   	pop    %ebp
428583:	e9 7a ff ff ff       	jmp    0x428502
428588:	6a 00                	push   $0x0
42858a:	ff 75 10             	push   0x10(%ebp)
42858d:	ff 75 0c             	push   0xc(%ebp)
428590:	ff 75 08             	push   0x8(%ebp)
428593:	e8 05 00 00 00       	call   0x42859d
428598:	83 c4 10             	add    $0x10,%esp
42859b:	5d                   	pop    %ebp
42859c:	c3                   	ret
42859d:	8b ff                	mov    %edi,%edi
42859f:	55                   	push   %ebp
4285a0:	8b ec                	mov    %esp,%ebp
4285a2:	83 ec 14             	sub    $0x14,%esp
4285a5:	57                   	push   %edi
4285a6:	8b 7d 08             	mov    0x8(%ebp),%edi
4285a9:	85 ff                	test   %edi,%edi
4285ab:	75 1a                	jne    0x4285c7
4285ad:	e8 bf 40 ff ff       	call   0x41c671
4285b2:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4285b8:	e8 31 4e fe ff       	call   0x40d3ee
4285bd:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
4285c2:	e9 a6 00 00 00       	jmp    0x42866d
4285c7:	53                   	push   %ebx
4285c8:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4285cb:	85 db                	test   %ebx,%ebx
4285cd:	75 1a                	jne    0x4285e9
4285cf:	e8 9d 40 ff ff       	call   0x41c671
4285d4:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4285da:	e8 0f 4e fe ff       	call   0x40d3ee
4285df:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
4285e4:	e9 83 00 00 00       	jmp    0x42866c
4285e9:	56                   	push   %esi
4285ea:	8b 75 10             	mov    0x10(%ebp),%esi
4285ed:	85 f6                	test   %esi,%esi
4285ef:	75 04                	jne    0x4285f5
4285f1:	33 c0                	xor    %eax,%eax
4285f3:	eb 76                	jmp    0x42866b
4285f5:	ff 75 14             	push   0x14(%ebp)
4285f8:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4285fb:	e8 f4 ab fe ff       	call   0x4131f4
428600:	8b 45 f0             	mov    -0x10(%ebp),%eax
428603:	83 b8 a8 00 00 00 00 	cmpl   $0x0,0xa8(%eax)
42860a:	75 0f                	jne    0x42861b
42860c:	56                   	push   %esi
42860d:	53                   	push   %ebx
42860e:	57                   	push   %edi
42860f:	e8 ee fe ff ff       	call   0x428502
428614:	83 c4 0c             	add    $0xc,%esp
428617:	8b c8                	mov    %eax,%ecx
428619:	eb 3e                	jmp    0x428659
42861b:	0f b7 07             	movzwl (%edi),%eax
42861e:	8d 4d f0             	lea    -0x10(%ebp),%ecx
428621:	51                   	push   %ecx
428622:	50                   	push   %eax
428623:	8d 7f 02             	lea    0x2(%edi),%edi
428626:	e8 cb 00 ff ff       	call   0x4186f6
42862b:	0f b7 c0             	movzwl %ax,%eax
42862e:	8d 4d f0             	lea    -0x10(%ebp),%ecx
428631:	89 45 fc             	mov    %eax,-0x4(%ebp)
428634:	0f b7 03             	movzwl (%ebx),%eax
428637:	8d 5b 02             	lea    0x2(%ebx),%ebx
42863a:	51                   	push   %ecx
42863b:	50                   	push   %eax
42863c:	e8 b5 00 ff ff       	call   0x4186f6
428641:	8b 55 fc             	mov    -0x4(%ebp),%edx
428644:	83 c4 10             	add    $0x10,%esp
428647:	0f b7 c0             	movzwl %ax,%eax
42864a:	8b ca                	mov    %edx,%ecx
42864c:	2b c8                	sub    %eax,%ecx
42864e:	75 09                	jne    0x428659
428650:	85 d2                	test   %edx,%edx
428652:	74 05                	je     0x428659
428654:	83 ee 01             	sub    $0x1,%esi
428657:	75 c2                	jne    0x42861b
428659:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
42865d:	74 0a                	je     0x428669
42865f:	8b 45 ec             	mov    -0x14(%ebp),%eax
428662:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)