428385:	5e                   	pop    %esi
428386:	5b                   	pop    %ebx
428387:	c3                   	ret
428388:	55                   	push   %ebp
428389:	8b ec                	mov    %esp,%ebp
42838b:	83 c4 a8             	add    $0xffffffa8,%esp
42838e:	53                   	push   %ebx
42838f:	56                   	push   %esi
428390:	8b da                	mov    %edx,%ebx
428392:	89 45 fc             	mov    %eax,-0x4(%ebp)
428395:	85 db                	test   %ebx,%ebx
428397:	74 15                	je     0x4283ae
428399:	8b c3                	mov    %ebx,%eax
42839b:	8b 15 fc 1e 42 00    	mov    0x421efc,%edx
4283a1:	e8 da b6 fd ff       	call   0x403a80
4283a6:	84 c0                	test   %al,%al
4283a8:	0f 84 c3 00 00 00    	je     0x428471
4283ae:	8b 45 fc             	mov    -0x4(%ebp),%eax
4283b1:	e8 b2 06 00 00       	call   0x428a68
4283b6:	68 68 13 47 00       	push   $0x471368
4283bb:	e8 80 e5 fd ff       	call   0x406940
4283c0:	33 c0                	xor    %eax,%eax
4283c2:	55                   	push   %ebp
4283c3:	68 4a 84 42 00       	push   $0x42844a
4283c8:	64 ff 30             	push   %fs:(%eax)
4283cb:	64 89 20             	mov    %esp,%fs:(%eax)
4283ce:	85 db                	test   %ebx,%ebx
4283d0:	74 3d                	je     0x42840f
4283d2:	8b f3                	mov    %ebx,%esi
4283d4:	8b 46 28             	mov    0x28(%esi),%eax
4283d7:	e8 60 f4 ff ff       	call   0x42783c
4283dc:	8b 45 fc             	mov    -0x4(%ebp),%eax
4283df:	8b 40 28             	mov    0x28(%eax),%eax
4283e2:	e8 59 f4 ff ff       	call   0x427840
4283e7:	8b 46 28             	mov    0x28(%esi),%eax
4283ea:	8b 55 fc             	mov    -0x4(%ebp),%edx
4283ed:	89 42 28             	mov    %eax,0x28(%edx)
4283f0:	0f b6 46 21          	movzbl 0x21(%esi),%eax
4283f4:	8b 55 fc             	mov    -0x4(%ebp),%edx
4283f7:	88 42 21             	mov    %al,0x21(%edx)
4283fa:	8b 46 34             	mov    0x34(%esi),%eax
4283fd:	8b 55 fc             	mov    -0x4(%ebp),%edx
428400:	89 42 34             	mov    %eax,0x34(%edx)
428403:	0f b6 46 38          	movzbl 0x38(%esi),%eax
428407:	8b 55 fc             	mov    -0x4(%ebp),%edx
42840a:	88 42 38             	mov    %al,0x38(%edx)
42840d:	eb 23                	jmp    0x428432
42840f:	8d 45 a8             	lea    -0x58(%ebp),%eax
428412:	33 c9                	xor    %ecx,%ecx
428414:	ba 54 00 00 00       	mov    $0x54,%edx
428419:	e8 12 ae fd ff       	call   0x403230
42841e:	8d 45 a8             	lea    -0x58(%ebp),%eax
428421:	50                   	push   %eax
428422:	6a 00                	push   $0x0
428424:	6a 00                	push   $0x0
428426:	33 c9                	xor    %ecx,%ecx
428428:	33 d2                	xor    %edx,%edx
42842a:	8b 45 fc             	mov    -0x4(%ebp),%eax
42842d:	e8 a6 08 00 00       	call   0x428cd8
428432:	33 c0                	xor    %eax,%eax
428434:	5a                   	pop    %edx
428435:	59                   	pop    %ecx
428436:	59                   	pop    %ecx
428437:	64 89 10             	mov    %edx,%fs:(%eax)
42843a:	68 51 84 42 00       	push   $0x428451
42843f:	68 68 13 47 00       	push   $0x471368
428444:	e8 07 e6 fd ff       	call   0x406a50
428449:	c3                   	ret
42844a:	e9 39 bc fd ff       	jmp    0x404088
42844f:	eb ee                	jmp    0x42843f
428451:	8b 45 fc             	mov    -0x4(%ebp),%eax
428454:	8b 10                	mov    (%eax),%edx
428456:	ff 52 24             	call   *0x24(%edx)
428459:	85 c0                	test   %eax,%eax
42845b:	0f 95 c0             	setne  %al
42845e:	8b 55 fc             	mov    -0x4(%ebp),%edx
428461:	88 42 22             	mov    %al,0x22(%edx)
428464:	8b 55 fc             	mov    -0x4(%ebp),%edx
428467:	8b 45 fc             	mov    -0x4(%ebp),%eax
42846a:	8b 08                	mov    (%eax),%ecx
42846c:	ff 51 10             	call   *0x10(%ecx)
42846f:	eb 0a                	jmp    0x42847b
428471:	8b d3                	mov    %ebx,%edx
428473:	8b 45 fc             	mov    -0x4(%ebp),%eax
428476:	e8 9d fc fe ff       	call   0x418118
42847b:	5e                   	pop    %esi
42847c:	5b                   	pop    %ebx
42847d:	8b e5                	mov    %ebp,%esp
42847f:	5d                   	pop    %ebp
428480:	c3                   	ret
428481:	8d 40 00             	lea    0x0(%eax),%eax
428484:	55                   	push   %ebp
428485:	8b ec                	mov    %esp,%ebp
428487:	83 c4 a4             	add    $0xffffffa4,%esp
42848a:	53                   	push   %ebx
42848b:	56                   	push   %esi
42848c:	57                   	push   %edi
42848d:	8b 75 08             	mov    0x8(%ebp),%esi
428490:	8d 7d a4             	lea    -0x5c(%ebp),%edi
428493:	51                   	push   %ecx
428494:	b9 15 00 00 00       	mov    $0x15,%ecx
428499:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
42849b:	59                   	pop    %ecx
42849c:	8b f1                	mov    %ecx,%esi
42849e:	8b fa                	mov    %edx,%edi
4284a0:	8b d8                	mov    %eax,%ebx
4284a2:	8b c3                	mov    %ebx,%eax
4284a4:	e8 bf 05 00 00       	call   0x428a68
4284a9:	33 c0                	xor    %eax,%eax
4284ab:	89 45 fc             	mov    %eax,-0x4(%ebp)
4284ae:	33 c0                	xor    %eax,%eax
4284b0:	89 45 f8             	mov    %eax,-0x8(%ebp)
4284b3:	33 c0                	xor    %eax,%eax
4284b5:	55                   	push   %ebp
4284b6:	68 14 85 42 00       	push   $0x428514
4284bb:	64 ff 30             	push   %fs:(%eax)
4284be:	64 89 20             	mov    %esp,%fs:(%eax)
4284c1:	3b 35 4c 13 47 00    	cmp    0x47134c,%esi
4284c7:	75 05                	jne    0x4284ce
4284c9:	89 75 f8             	mov    %esi,-0x8(%ebp)
4284cc:	eb 0a                	jmp    0x4284d8
4284ce:	8b c6                	mov    %esi,%eax
4284d0:	e8 9f fb ff ff       	call   0x428074
4284d5:	89 45 f8             	mov    %eax,-0x8(%ebp)
4284d8:	8d 45 a4             	lea    -0x5c(%ebp),%eax
4284db:	50                   	push   %eax
4284dc:	8b 43 2c             	mov    0x2c(%ebx),%eax
4284df:	50                   	push   %eax
4284e0:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4284e3:	8b d6                	mov    %esi,%edx
4284e5:	8b c7                	mov    %edi,%eax
4284e7:	e8 24 f5 ff ff       	call   0x427a10
4284ec:	89 45 fc             	mov    %eax,-0x4(%ebp)
4284ef:	8d 45 a4             	lea    -0x5c(%ebp),%eax
4284f2:	50                   	push   %eax
4284f3:	8b 43 28             	mov    0x28(%ebx),%eax
4284f6:	0f b6 40 70          	movzbl 0x70(%eax),%eax
4284fa:	50                   	push   %eax
4284fb:	6a 00                	push   $0x0
4284fd:	8b 4d f8             	mov    -0x8(%ebp),%ecx
428500:	8b 55 fc             	mov    -0x4(%ebp),%edx
428503:	8b c3                	mov    %ebx,%eax
428505:	e8 ce 07 00 00       	call   0x428cd8
42850a:	33 c0                	xor    %eax,%eax
42850c:	5a                   	pop    %edx
42850d:	59                   	pop    %ecx
42850e:	59                   	pop    %ecx
42850f:	64 89 10             	mov    %edx,%fs:(%eax)
428512:	eb 26                	jmp    0x42853a
428514:	e9 bb b8 fd ff       	jmp    0x403dd4
428519:	8b 45 f8             	mov    -0x8(%ebp),%eax
42851c:	e8 ff 9b ff ff       	call   0x422120
428521:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
428525:	74 09                	je     0x428530
428527:	8b 45 fc             	mov    -0x4(%ebp),%eax
42852a:	50                   	push   %eax
42852b:	e8 60 e6 fd ff       	call   0x406b90
428530:	e8 5b bc fd ff       	call   0x404190
428535:	e8 aa bc fd ff       	call   0x4041e4
42853a:	5f                   	pop    %edi
42853b:	5e                   	pop    %esi
42853c:	5b                   	pop    %ebx
42853d:	8b e5                	mov    %ebp,%esp
42853f:	5d                   	pop    %ebp
428540:	c2 04 00             	ret    $0x4
428543:	90                   	nop
428544:	53                   	push   %ebx
428545:	8b d8                	mov    %eax,%ebx
428547:	8b c3                	mov    %ebx,%eax
428549:	e8 ea 02 00 00       	call   0x428838
42854e:	8b 43 28             	mov    0x28(%ebx),%eax
428551:	33 d2                	xor    %edx,%edx
428553:	89 50 50             	mov    %edx,0x50(%eax)
428556:	33 d2                	xor    %edx,%edx
428558:	89 50 54             	mov    %edx,0x54(%eax)
42855b:	83 c0 6c             	add    $0x6c,%eax
42855e:	e8 e9 57 fe ff       	call   0x40dd4c
428563:	5b                   	pop    %ebx
428564:	c3                   	ret
428565:	8d 40 00             	lea    0x0(%eax),%eax
428568:	c6 40 31 00          	movb   $0x0,0x31(%eax)
42856c:	e8 13 cf ff ff       	call   0x425484
428571:	c3                   	ret
428572:	8b c0                	mov    %eax,%eax
428574:	53                   	push   %ebx
428575:	56                   	push   %esi
428576:	57                   	push   %edi
428577:	83 c4 ac             	add    $0xffffffac,%esp
42857a:	8b d8                	mov    %eax,%ebx
42857c:	b2 01                	mov    $0x1,%dl
42857e:	a1 ec 5e 41 00       	mov    0x415eec,%eax
428583:	e8 3c b3 fd ff       	call   0x4038c4
428588:	8b f0                	mov    %eax,%esi
42858a:	8b d6                	mov    %esi,%edx
42858c:	8b c3                	mov    %ebx,%eax
42858e:	8b 08                	mov    (%eax),%ecx
428590:	ff 51 58             	call   *0x58(%ecx)
428593:	8b c6                	mov    %esi,%eax
428595:	8b 10                	mov    (%eax),%edx
428597:	ff 12                	call   *(%edx)
428599:	52                   	push   %edx
42859a:	50                   	push   %eax
42859b:	8b c6                	mov    %esi,%eax
42859d:	e8 ce 14 ff ff       	call   0x419a70
4285a2:	8b 43 28             	mov    0x28(%ebx),%eax
4285a5:	56                   	push   %esi
4285a6:	8d 70 18             	lea    0x18(%eax),%esi
4285a9:	8d 7c 24 04          	lea    0x4(%esp),%edi
4285ad:	b9 15 00 00 00       	mov    $0x15,%ecx
4285b2:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4285b4:	5e                   	pop    %esi
4285b5:	33 c0                	xor    %eax,%eax
4285b7:	89 44 24 14          	mov    %eax,0x14(%esp)
4285bb:	8b c3                	mov    %ebx,%eax
4285bd:	e8 a6 04 00 00       	call   0x428a68
4285c2:	8d 43 2c             	lea    0x2c(%ebx),%eax
4285c5:	e8 82 57 fe ff       	call   0x40dd4c
4285ca:	54                   	push   %esp
4285cb:	8b 43 28             	mov    0x28(%ebx),%eax
4285ce:	0f b6 40 70          	movzbl 0x70(%eax),%eax
4285d2:	50                   	push   %eax
4285d3:	56                   	push   %esi
4285d4:	33 c9                	xor    %ecx,%ecx
4285d6:	33 d2                	xor    %edx,%edx
4285d8:	8b c3                	mov    %ebx,%eax
4285da:	e8 f9 06 00 00       	call   0x428cd8
4285df:	83 c4 54             	add    $0x54,%esp
4285e2:	5f                   	pop    %edi
4285e3:	5e                   	pop    %esi
4285e4:	5b                   	pop    %ebx
4285e5:	c3                   	ret
4285e6:	8b c0                	mov    %eax,%eax
4285e8:	55                   	push   %ebp
4285e9:	8b ec                	mov    %esp,%ebp
4285eb:	83 c4 e4             	add    $0xffffffe4,%esp
4285ee:	53                   	push   %ebx
4285ef:	56                   	push   %esi
4285f0:	57                   	push   %edi
4285f1:	8b f9                	mov    %ecx,%edi
4285f3:	89 55 fc             	mov    %edx,-0x4(%ebp)
4285f6:	8b d8                	mov    %eax,%ebx
4285f8:	8b 73 28             	mov    0x28(%ebx),%esi
4285fb:	0f b6 15 34 88 42 00 	movzbl 0x428834,%edx
428602:	8b 45 fc             	mov    -0x4(%ebp),%eax
428605:	e8 7e b9 ff ff       	call   0x423f88
42860a:	8b c3                	mov    %ebx,%eax
42860c:	e8 67 05 00 00       	call   0x428b78
428611:	33 c0                	xor    %eax,%eax
428613:	89 45 f8             	mov    %eax,-0x8(%ebp)
428616:	c6 45 f7 00          	movb   $0x0,-0x9(%ebp)
42861a:	8b 46 10             	mov    0x10(%esi),%eax
42861d:	85 c0                	test   %eax,%eax
42861f:	74 22                	je     0x428643
428621:	6a ff                	push   $0xffffffff
428623:	50                   	push   %eax
428624:	8b 45 fc             	mov    -0x4(%ebp),%eax
428627:	8b 40 04             	mov    0x4(%eax),%eax
42862a:	50                   	push   %eax
42862b:	e8 80 e6 fd ff       	call   0x406cb0
428630:	89 45 f8             	mov    %eax,-0x8(%ebp)
428633:	8b 45 fc             	mov    -0x4(%ebp),%eax
428636:	8b 40 04             	mov    0x4(%eax),%eax
428639:	50                   	push   %eax
42863a:	e8 49 e6 fd ff       	call   0x406c88
42863f:	c6 45 f7 01          	movb   $0x1,-0x9(%ebp)
428643:	6a 0c                	push   $0xc
428645:	8b 45 fc             	mov    -0x4(%ebp),%eax
428648:	8b 40 04             	mov    0x4(%eax),%eax
42864b:	50                   	push   %eax
42864c:	e8 87 e5 fd ff       	call   0x406bd8
428651:	50                   	push   %eax
428652:	6a 0e                	push   $0xe
428654:	8b 45 fc             	mov    -0x4(%ebp),%eax
428657:	8b 40 04             	mov    0x4(%eax),%eax
42865a:	50                   	push   %eax
42865b:	e8 78 e5 fd ff       	call   0x406bd8
428660:	8b d0                	mov    %eax,%edx
428662:	58                   	pop    %eax
428663:	f7 ea                	imul   %edx
428665:	83 f8 08             	cmp    $0x8,%eax
428668:	7f 0f                	jg     0x428679
42866a:	0f b7 56 2a          	movzwl 0x2a(%esi),%edx
42866e:	0f b7 4e 28          	movzwl 0x28(%esi),%ecx
428672:	0f af d1             	imul   %ecx,%edx
428675:	3b c2                	cmp    %edx,%eax
428677:	7c 04                	jl     0x42867d
428679:	33 c0                	xor    %eax,%eax
42867b:	eb 02                	jmp    0x42867f
42867d:	b0 01                	mov    $0x1,%al
42867f:	84 c0                	test   %al,%al
428681:	74 38                	je     0x4286bb
428683:	8d 45 ef             	lea    -0x11(%ebp),%eax
428686:	50                   	push   %eax
428687:	8b 45 fc             	mov    -0x4(%ebp),%eax
42868a:	8b 40 04             	mov    0x4(%eax),%eax
42868d:	50                   	push   %eax
42868e:	e8 15 e5 fd ff       	call   0x406ba8
428693:	6a 04                	push   $0x4
428695:	8b 45 fc             	mov    -0x4(%ebp),%eax
428698:	8b 40 04             	mov    0x4(%eax),%eax
42869b:	50                   	push   %eax
42869c:	e8 57 e6 fd ff       	call   0x406cf8
4286a1:	8d 45 ef             	lea    -0x11(%ebp),%eax
4286a4:	50                   	push   %eax
4286a5:	8b 45 f3             	mov    -0xd(%ebp),%eax
4286a8:	50                   	push   %eax
4286a9:	8b 45 ef             	mov    -0x11(%ebp),%eax
4286ac:	50                   	push   %eax
4286ad:	8b 45 fc             	mov    -0x4(%ebp),%eax
4286b0:	8b 40 04             	mov    0x4(%eax),%eax
4286b3:	50                   	push   %eax
4286b4:	e8 0f e6 fd ff       	call   0x406cc8
4286b9:	eb 1b                	jmp    0x4286d6
4286bb:	8b c3                	mov    %ebx,%eax
4286bd:	e8 b2 02 00 00       	call   0x428974
4286c2:	84 c0                	test   %al,%al
4286c4:	75 10                	jne    0x4286d6
4286c6:	6a 03                	push   $0x3
4286c8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4286cb:	e8 dc b7 ff ff       	call   0x423eac
4286d0:	50                   	push   %eax
4286d1:	e8 22 e6 fd ff       	call   0x406cf8
4286d6:	33 c0                	xor    %eax,%eax
4286d8:	55                   	push   %ebp
4286d9:	68 26 88 42 00       	push   $0x428826
4286de:	64 ff 30             	push   %fs:(%eax)
4286e1:	64 89 20             	mov    %esp,%fs:(%eax)
4286e4:	8b c3                	mov    %ebx,%eax
4286e6:	8b 10                	mov    (%eax),%edx
4286e8:	ff 52 28             	call   *0x28(%edx)
4286eb:	84 c0                	test   %al,%al
4286ed:	74 07                	je     0x4286f6
4286ef:	8b c3                	mov    %ebx,%eax
4286f1:	e8 22 04 00 00       	call   0x428b18
4286f6:	8b c3                	mov    %ebx,%eax
4286f8:	e8 bb 01 00 00       	call   0x4288b8
4286fd:	0f b6 15 34 88 42 00 	movzbl 0x428834,%edx
428704:	e8 7f b8 ff ff       	call   0x423f88
428709:	8b c3                	mov    %ebx,%eax
42870b:	8b 10                	mov    (%eax),%edx
42870d:	ff 52 28             	call   *0x28(%edx)
428710:	84 c0                	test   %al,%al
428712:	0f 84 aa 00 00 00    	je     0x4287c2
428718:	33 c0                	xor    %eax,%eax
42871a:	89 45 e4             	mov    %eax,-0x1c(%ebp)
42871d:	33 c0                	xor    %eax,%eax
42871f:	89 45 e8             	mov    %eax,-0x18(%ebp)
428722:	33 c0                	xor    %eax,%eax
428724:	55                   	push   %ebp
428725:	68 bb 87 42 00       	push   $0x4287bb