40532b:	8d 45 d0             	lea    -0x30(%ebp),%eax
40532e:	50                   	push   %eax
40532f:	b8 07 10 00 00       	mov    $0x1007,%eax
405334:	2b c7                	sub    %edi,%eax
405336:	53                   	push   %ebx
405337:	50                   	push   %eax
405338:	ff 75 fc             	push   -0x4(%ebp)
40533b:	ff d6                	call   *%esi
40533d:	53                   	push   %ebx
40533e:	ff 75 d4             	push   -0x2c(%ebp)
405341:	68 13 10 00 00       	push   $0x1013
405346:	ff 75 fc             	push   -0x4(%ebp)
405349:	ff d6                	call   *%esi
40534b:	3b fb                	cmp    %ebx,%edi
40534d:	74 09                	je     0x405358
40534f:	8b 45 08             	mov    0x8(%ebp),%eax
405352:	88 98 78 a0 42 00    	mov    %bl,0x42a078(%eax)
405358:	5f                   	pop    %edi
405359:	5e                   	pop    %esi
40535a:	5b                   	pop    %ebx
40535b:	c9                   	leave
40535c:	c2 08 00             	ret    $0x8
40535f:	56                   	push   %esi
405360:	8b 35 68 f4 42 00    	mov    0x42f468,%esi
405366:	57                   	push   %edi
405367:	8b 3d 6c f4 42 00    	mov    0x42f46c,%edi
40536d:	6a 00                	push   $0x0
40536f:	ff 15 84 82 40 00    	call   *0x408284
405375:	09 05 f8 f4 42 00    	or     %eax,0x42f4f8
40537b:	6a 00                	push   $0x0
40537d:	e8 be ee ff ff       	call   0x404240
405382:	85 ff                	test   %edi,%edi
405384:	74 2b                	je     0x4053b1
405386:	83 c6 0c             	add    $0xc,%esi
405389:	4f                   	dec    %edi
40538a:	f6 46 fc 01          	testb  $0x1,-0x4(%esi)
40538e:	74 0f                	je     0x40539f
405390:	ff 74 24 0c          	push   0xc(%esp)
405394:	ff 36                	push   (%esi)
405396:	e8 ee bf ff ff       	call   0x401389
40539b:	85 c0                	test   %eax,%eax
40539d:	75 0c                	jne    0x4053ab
40539f:	81 c6 18 04 00 00    	add    $0x418,%esi
4053a5:	85 ff                	test   %edi,%edi
4053a7:	75 e0                	jne    0x405389
4053a9:	eb 06                	jmp    0x4053b1
4053ab:	ff 05 cc f4 42 00    	incl   0x42f4cc
4053b1:	68 04 04 00 00       	push   $0x404
4053b6:	e8 85 ee ff ff       	call   0x404240
4053bb:	ff 15 80 82 40 00    	call   *0x408280
4053c1:	a1 cc f4 42 00       	mov    0x42f4cc,%eax
4053c6:	5f                   	pop    %edi
4053c7:	5e                   	pop    %esi
4053c8:	c2 04 00             	ret    $0x4
4053cb:	55                   	push   %ebp
4053cc:	8b ec                	mov    %esp,%ebp
4053ce:	83 ec 3c             	sub    $0x3c,%esp
4053d1:	a1 04 ec 42 00       	mov    0x42ec04,%eax
4053d6:	53                   	push   %ebx
4053d7:	56                   	push   %esi
4053d8:	57                   	push   %edi
4053d9:	8b 7d 0c             	mov    0xc(%ebp),%edi
4053dc:	33 db                	xor    %ebx,%ebx
4053de:	81 ff 10 01 00 00    	cmp    $0x110,%edi
4053e4:	89 45 fc             	mov    %eax,-0x4(%ebp)
4053e7:	0f 85 89 01 00 00    	jne    0x405576
4053ed:	83 4d d4 ff          	orl    $0xffffffff,-0x2c(%ebp)
4053f1:	83 4d e0 ff          	orl    $0xffffffff,-0x20(%ebp)
4053f5:	6a 02                	push   $0x2
4053f7:	33 c0                	xor    %eax,%eax
4053f9:	5e                   	pop    %esi
4053fa:	8d 7d e4             	lea    -0x1c(%ebp),%edi
4053fd:	89 75 cc             	mov    %esi,-0x34(%ebp)
405400:	89 5d d0             	mov    %ebx,-0x30(%ebp)
405403:	89 5d d8             	mov    %ebx,-0x28(%ebp)
405406:	89 5d dc             	mov    %ebx,-0x24(%ebp)
405409:	ab                   	stos   %eax,%es:(%edi)
40540a:	ab                   	stos   %eax,%es:(%edi)
40540b:	a1 34 f4 42 00       	mov    0x42f434,%eax
405410:	8b 3d d0 81 40 00    	mov    0x4081d0,%edi
405416:	68 03 04 00 00       	push   $0x403
40541b:	8b 48 5c             	mov    0x5c(%eax),%ecx
40541e:	8b 40 60             	mov    0x60(%eax),%eax
405421:	ff 75 08             	push   0x8(%ebp)
405424:	89 4d 10             	mov    %ecx,0x10(%ebp)
405427:	89 45 0c             	mov    %eax,0xc(%ebp)
40542a:	ff d7                	call   *%edi
40542c:	68 ee 03 00 00       	push   $0x3ee
405431:	a3 f0 eb 42 00       	mov    %eax,0x42ebf0
405436:	ff 75 08             	push   0x8(%ebp)
405439:	ff d7                	call   *%edi
40543b:	68 f8 03 00 00       	push   $0x3f8
405440:	a3 e8 eb 42 00       	mov    %eax,0x42ebe8
405445:	ff 75 08             	push   0x8(%ebp)
405448:	ff d7                	call   *%edi
40544a:	ff 35 f0 eb 42 00    	push   0x42ebf0
405450:	a3 04 ec 42 00       	mov    %eax,0x42ec04
405455:	89 45 fc             	mov    %eax,-0x4(%ebp)
405458:	e8 cc ed ff ff       	call   0x404229
40545d:	6a 04                	push   $0x4
40545f:	e8 b6 f6 ff ff       	call   0x404b1a
405464:	a3 f4 eb 42 00       	mov    %eax,0x42ebf4
405469:	8d 45 ec             	lea    -0x14(%ebp),%eax
40546c:	50                   	push   %eax
40546d:	89 1d 0c ec 42 00    	mov    %ebx,0x42ec0c
405473:	ff 75 fc             	push   -0x4(%ebp)
405476:	ff 15 0c 82 40 00    	call   *0x40820c
40547c:	56                   	push   %esi
40547d:	ff 15 d4 81 40 00    	call   *0x4081d4
405483:	8b 4d f4             	mov    -0xc(%ebp),%ecx
405486:	8b 35 00 82 40 00    	mov    0x408200,%esi
40548c:	2b c8                	sub    %eax,%ecx
40548e:	8d 45 cc             	lea    -0x34(%ebp),%eax
405491:	50                   	push   %eax
405492:	53                   	push   %ebx
405493:	68 1b 10 00 00       	push   $0x101b
405498:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
40549b:	ff 75 fc             	push   -0x4(%ebp)
40549e:	ff d6                	call   *%esi
4054a0:	b8 00 40 00 00       	mov    $0x4000,%eax
4054a5:	50                   	push   %eax
4054a6:	50                   	push   %eax
4054a7:	68 36 10 00 00       	push   $0x1036
4054ac:	ff 75 fc             	push   -0x4(%ebp)
4054af:	ff d6                	call   *%esi
4054b1:	39 5d 10             	cmp    %ebx,0x10(%ebp)
4054b4:	7c 1c                	jl     0x4054d2
4054b6:	ff 75 10             	push   0x10(%ebp)
4054b9:	53                   	push   %ebx
4054ba:	68 01 10 00 00       	push   $0x1001
4054bf:	ff 75 fc             	push   -0x4(%ebp)
4054c2:	ff d6                	call   *%esi
4054c4:	ff 75 10             	push   0x10(%ebp)
4054c7:	53                   	push   %ebx
4054c8:	68 26 10 00 00       	push   $0x1026
4054cd:	ff 75 fc             	push   -0x4(%ebp)
4054d0:	ff d6                	call   *%esi
4054d2:	39 5d 0c             	cmp    %ebx,0xc(%ebp)
4054d5:	7c 0e                	jl     0x4054e5
4054d7:	ff 75 0c             	push   0xc(%ebp)
4054da:	53                   	push   %ebx
4054db:	68 24 10 00 00       	push   $0x1024
4054e0:	ff 75 fc             	push   -0x4(%ebp)
4054e3:	ff d6                	call   *%esi
4054e5:	8b 45 14             	mov    0x14(%ebp),%eax
4054e8:	ff 70 30             	push   0x30(%eax)
4054eb:	6a 1b                	push   $0x1b
4054ed:	ff 75 08             	push   0x8(%ebp)
4054f0:	e8 ff ec ff ff       	call   0x4041f4
4054f5:	f6 05 3c f4 42 00 03 	testb  $0x3,0x42f43c
4054fc:	74 34                	je     0x405532
4054fe:	53                   	push   %ebx
4054ff:	ff 35 f0 eb 42 00    	push   0x42ebf0
405505:	ff 15 48 82 40 00    	call   *0x408248
40550b:	f6 05 3c f4 42 00 02 	testb  $0x2,0x42f43c
405512:	75 0d                	jne    0x405521
405514:	6a 08                	push   $0x8
405516:	ff 75 fc             	push   -0x4(%ebp)
405519:	ff 15 48 82 40 00    	call   *0x408248
40551f:	eb 06                	jmp    0x405527
405521:	89 1d f0 eb 42 00    	mov    %ebx,0x42ebf0
405527:	ff 35 e8 eb 42 00    	push   0x42ebe8
40552d:	e8 f7 ec ff ff       	call   0x404229
405532:	68 ec 03 00 00       	push   $0x3ec
405537:	ff 75 08             	push   0x8(%ebp)
40553a:	ff d7                	call   *%edi
40553c:	68 00 00 30 75       	push   $0x75300000
405541:	8b f8                	mov    %eax,%edi
405543:	53                   	push   %ebx
405544:	68 01 04 00 00       	push   $0x401
405549:	57                   	push   %edi
40554a:	ff d6                	call   *%esi
40554c:	f6 05 3c f4 42 00 04 	testb  $0x4,0x42f43c
405553:	0f 84 f3 01 00 00    	je     0x40574c
405559:	ff 75 0c             	push   0xc(%ebp)
40555c:	53                   	push   %ebx
40555d:	68 09 04 00 00       	push   $0x409
405562:	57                   	push   %edi
405563:	ff d6                	call   *%esi
405565:	ff 75 10             	push   0x10(%ebp)
405568:	53                   	push   %ebx
405569:	68 01 20 00 00       	push   $0x2001
40556e:	57                   	push   %edi
40556f:	ff d6                	call   *%esi
405571:	e9 d6 01 00 00       	jmp    0x40574c
405576:	81 ff 05 04 00 00    	cmp    $0x405,%edi
40557c:	75 28                	jne    0x4055a6
40557e:	8d 45 0c             	lea    0xc(%ebp),%eax
405581:	50                   	push   %eax
405582:	53                   	push   %ebx
405583:	68 ec 03 00 00       	push   $0x3ec
405588:	ff 75 08             	push   0x8(%ebp)
40558b:	ff 15 d0 81 40 00    	call   *0x4081d0
405591:	50                   	push   %eax
405592:	68 5f 53 40 00       	push   $0x40535f
405597:	53                   	push   %ebx
405598:	53                   	push   %ebx
405599:	ff 15 bc 80 40 00    	call   *0x4080bc
40559f:	50                   	push   %eax
4055a0:	ff 15 14 81 40 00    	call   *0x408114
4055a6:	8b 35 48 82 40 00    	mov    0x408248,%esi
4055ac:	81 ff 11 01 00 00    	cmp    $0x111,%edi
4055b2:	75 20                	jne    0x4055d4
4055b4:	66 81 7d 10 03 04    	cmpw   $0x403,0x10(%ebp)
4055ba:	75 39                	jne    0x4055f5
4055bc:	53                   	push   %ebx
4055bd:	ff 35 f0 eb 42 00    	push   0x42ebf0
4055c3:	ff d6                	call   *%esi
4055c5:	6a 08                	push   $0x8
4055c7:	ff 75 fc             	push   -0x4(%ebp)
4055ca:	ff d6                	call   *%esi
4055cc:	ff 75 fc             	push   -0x4(%ebp)
4055cf:	e8 55 ec ff ff       	call   0x404229
4055d4:	81 ff 04 04 00 00    	cmp    $0x404,%edi
4055da:	75 53                	jne    0x40562f
4055dc:	39 1d ec eb 42 00    	cmp    %ebx,0x42ebec
4055e2:	74 24                	je     0x405608
4055e4:	6a 78                	push   $0x78
4055e6:	c7 05 68 9c 42 00 02 	movl   $0x2,0x429c68
4055ed:	00 00 00
4055f0:	e8 d8 eb ff ff       	call   0x4041cd
4055f5:	ff 75 14             	push   0x14(%ebp)
4055f8:	ff 75 10             	push   0x10(%ebp)
4055fb:	57                   	push   %edi
4055fc:	e8 5a ec ff ff       	call   0x40425b
405601:	5f                   	pop    %edi
405602:	5e                   	pop    %esi
405603:	5b                   	pop    %ebx
405604:	c9                   	leave
405605:	c2 10 00             	ret    $0x10
405608:	6a 08                	push   $0x8
40560a:	ff 35 28 f4 42 00    	push   0x42f428
405610:	ff d6                	call   *%esi
405612:	39 1d cc f4 42 00    	cmp    %ebx,0x42f4cc
405618:	75 0e                	jne    0x405628
40561a:	a1 70 a0 42 00       	mov    0x42a070,%eax
40561f:	53                   	push   %ebx
405620:	ff 70 34             	push   0x34(%eax)
405623:	e8 65 fc ff ff       	call   0x40528d
405628:	6a 01                	push   $0x1
40562a:	e8 9e eb ff ff       	call   0x4041cd
40562f:	83 ff 7b             	cmp    $0x7b,%edi
405632:	75 c1                	jne    0x4055f5
405634:	8b 45 fc             	mov    -0x4(%ebp),%eax
405637:	39 45 10             	cmp    %eax,0x10(%ebp)
40563a:	75 b9                	jne    0x4055f5
40563c:	53                   	push   %ebx
40563d:	53                   	push   %ebx
40563e:	68 04 10 00 00       	push   $0x1004
405643:	50                   	push   %eax
405644:	ff 15 00 82 40 00    	call   *0x408200
40564a:	3b c3                	cmp    %ebx,%eax
40564c:	89 45 10             	mov    %eax,0x10(%ebp)
40564f:	0f 8e f7 00 00 00    	jle    0x40574c
405655:	ff 15 64 82 40 00    	call   *0x408264
40565b:	6a e1                	push   $0xffffffe1
40565d:	53                   	push   %ebx
40565e:	8b f0                	mov    %eax,%esi
405660:	e8 23 0b 00 00       	call   0x406188
405665:	50                   	push   %eax
405666:	6a 01                	push   $0x1
405668:	53                   	push   %ebx
405669:	56                   	push   %esi
40566a:	ff 15 5c 82 40 00    	call   *0x40825c
405670:	8b 4d 14             	mov    0x14(%ebp),%ecx
405673:	0f bf 45 14          	movswl 0x14(%ebp),%eax
405677:	c1 e9 10             	shr    $0x10,%ecx
40567a:	83 7d 14 ff          	cmpl   $0xffffffff,0x14(%ebp)
40567e:	0f bf c9             	movswl %cx,%ecx
405681:	75 13                	jne    0x405696
405683:	8d 45 ec             	lea    -0x14(%ebp),%eax
405686:	50                   	push   %eax
405687:	ff 75 fc             	push   -0x4(%ebp)
40568a:	ff 15 cc 81 40 00    	call   *0x4081cc
405690:	8b 45 ec             	mov    -0x14(%ebp),%eax
405693:	8b 4d f0             	mov    -0x10(%ebp),%ecx
405696:	53                   	push   %ebx
405697:	ff 75 08             	push   0x8(%ebp)
40569a:	53                   	push   %ebx
40569b:	51                   	push   %ecx
40569c:	50                   	push   %eax
40569d:	68 80 01 00 00       	push   $0x180
4056a2:	56                   	push   %esi
4056a3:	ff 15 60 82 40 00    	call   *0x408260
4056a9:	83 f8 01             	cmp    $0x1,%eax
4056ac:	0f 85 9a 00 00 00    	jne    0x40574c
4056b2:	8b 45 10             	mov    0x10(%ebp),%eax
4056b5:	33 f6                	xor    %esi,%esi
4056b7:	46                   	inc    %esi
4056b8:	89 5d cc             	mov    %ebx,-0x34(%ebp)
4056bb:	c7 45 d8 98 a8 42 00 	movl   $0x42a898,-0x28(%ebp)
4056c2:	c7 45 dc 00 10 00 00 	movl   $0x1000,-0x24(%ebp)
4056c9:	89 45 08             	mov    %eax,0x8(%ebp)
4056cc:	bf 2d 10 00 00       	mov    $0x102d,%edi
4056d1:	ff 4d 08             	decl   0x8(%ebp)
4056d4:	8d 45 c4             	lea    -0x3c(%ebp),%eax
4056d7:	50                   	push   %eax
4056d8:	ff 75 08             	push   0x8(%ebp)
4056db:	57                   	push   %edi
4056dc:	ff 75 fc             	push   -0x4(%ebp)
4056df:	ff 15 00 82 40 00    	call   *0x408200
4056e5:	39 5d 08             	cmp    %ebx,0x8(%ebp)
4056e8:	8d 74 06 02          	lea    0x2(%esi,%eax,1),%esi
4056ec:	75 e3                	jne    0x4056d1
4056ee:	53                   	push   %ebx
4056ef:	ff 15 c4 81 40 00    	call   *0x4081c4
4056f5:	ff 15 c0 81 40 00    	call   *0x4081c0
4056fb:	56                   	push   %esi
4056fc:	6a 42                	push   $0x42
4056fe:	ff 15 58 81 40 00    	call   *0x408158
405704:	50                   	push   %eax
405705:	89 45 08             	mov    %eax,0x8(%ebp)
405708:	ff 15 b8 80 40 00    	call   *0x4080b8
40570e:	8b f0                	mov    %eax,%esi
405710:	8d 45 c4             	lea    -0x3c(%ebp),%eax
405713:	89 75 d8             	mov    %esi,-0x28(%ebp)
405716:	50                   	push   %eax
405717:	53                   	push   %ebx
405718:	57                   	push   %edi
405719:	ff 75 fc             	push   -0x4(%ebp)
40571c:	ff 15 00 82 40 00    	call   *0x408200
405722:	03 f0                	add    %eax,%esi
405724:	c6 06 0d             	movb   $0xd,(%esi)
405727:	46                   	inc    %esi
405728:	c6 06 0a             	movb   $0xa,(%esi)
40572b:	46                   	inc    %esi
40572c:	43                   	inc    %ebx
40572d:	3b 5d 10             	cmp    0x10(%ebp),%ebx
405730:	7c de                	jl     0x405710
405732:	ff 75 08             	push   0x8(%ebp)
405735:	ff 15 1c 81 40 00    	call   *0x40811c
40573b:	ff 75 08             	push   0x8(%ebp)
40573e:	6a 01                	push   $0x1
405740:	ff 15 bc 81 40 00    	call   *0x4081bc
405746:	ff 15 b8 81 40 00    	call   *0x4081b8
40574c:	33 c0                	xor    %eax,%eax
40574e:	e9 ae fe ff ff       	jmp    0x405601
405753:	55                   	push   %ebp
405754:	8b ec                	mov    %esp,%ebp
405756:	83 ec 20             	sub    $0x20,%esp
405759:	b8 7c 83 40 00       	mov    $0x40837c,%eax
40575e:	80 65 e1 00          	andb   $0x0,-0x1f(%ebp)
405762:	89 45 e4             	mov    %eax,-0x1c(%ebp)
405765:	89 45 e8             	mov    %eax,-0x18(%ebp)
405768:	8d 45 e0             	lea    -0x20(%ebp),%eax
40576b:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
40576f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
405773:	89 45 f8             	mov    %eax,-0x8(%ebp)
405776:	8d 45 f4             	lea    -0xc(%ebp),%eax
405779:	56                   	push   %esi