404379:	8d 4d ec             	lea    -0x14(%ebp),%ecx
40437c:	ff 15 30 22 41 00    	call   *0x412230
404382:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
404386:	8d 4d e8             	lea    -0x18(%ebp),%ecx
404389:	ff 15 30 22 41 00    	call   *0x412230
40438f:	e8 65 af 00 00       	call   0x40f2f9
404394:	c2 04 00             	ret    $0x4
404397:	68 0e 00 07 80       	push   $0x8007000e
40439c:	ff 15 74 20 41 00    	call   *0x412074
4043a2:	e8 4d 54 00 00       	call   0x4097f4
4043a7:	b8 6e 43 40 00       	mov    $0x40436e,%eax
4043ac:	c3                   	ret
4043ad:	6a 0c                	push   $0xc
4043af:	b8 d9 f6 40 00       	mov    $0x40f6d9,%eax
4043b4:	e8 96 af 00 00       	call   0x40f34f
4043b9:	8b f1                	mov    %ecx,%esi
4043bb:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4043be:	ff 15 f8 21 41 00    	call   *0x4121f8
4043c4:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4043c8:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
4043cc:	51                   	push   %ecx
4043cd:	b9 8d 13 00 00       	mov    $0x138d,%ecx
4043d2:	e8 7a 56 00 00       	call   0x409a51
4043d7:	50                   	push   %eax
4043d8:	6a 04                	push   $0x4
4043da:	8b 55 08             	mov    0x8(%ebp),%edx
4043dd:	8b 8e 80 00 00 00    	mov    0x80(%esi),%ecx
4043e3:	e8 02 4f 00 00       	call   0x4092ea
4043e8:	51                   	push   %ecx
4043e9:	68 98 16 40 00       	push   $0x401698
4043ee:	6a 03                	push   $0x3
4043f0:	8b 55 08             	mov    0x8(%ebp),%edx
4043f3:	8b 8e 80 00 00 00    	mov    0x80(%esi),%ecx
4043f9:	e8 ec 4e 00 00       	call   0x4092ea
4043fe:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
404402:	51                   	push   %ecx
404403:	8d 45 e8             	lea    -0x18(%ebp),%eax
404406:	50                   	push   %eax
404407:	ba f4 13 40 00       	mov    $0x4013f4,%edx
40440c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40440f:	e8 9d 38 00 00       	call   0x407cb1
404414:	85 c0                	test   %eax,%eax
404416:	0f 84 a6 00 00 00    	je     0x4044c2
40441c:	ff 75 e8             	push   -0x18(%ebp)
40441f:	68 48 15 40 00       	push   $0x401548
404424:	8d 45 ec             	lea    -0x14(%ebp),%eax
404427:	50                   	push   %eax
404428:	ff 15 04 22 41 00    	call   *0x412204
40442e:	59                   	pop    %ecx
40442f:	59                   	pop    %ecx
404430:	ff 75 ec             	push   -0x14(%ebp)
404433:	6a 04                	push   $0x4
404435:	8b 55 08             	mov    0x8(%ebp),%edx
404438:	8b 8e 80 00 00 00    	mov    0x80(%esi),%ecx
40443e:	e8 a7 4e 00 00       	call   0x4092ea
404443:	8b 86 d8 00 00 00    	mov    0xd8(%esi),%eax
404449:	83 f8 01             	cmp    $0x1,%eax
40444c:	74 0c                	je     0x40445a
40444e:	85 c0                	test   %eax,%eax
404450:	75 6c                	jne    0x4044be
404452:	39 86 98 00 00 00    	cmp    %eax,0x98(%esi)
404458:	74 64                	je     0x4044be
40445a:	6a 41                	push   $0x41
40445c:	8d 4d ec             	lea    -0x14(%ebp),%ecx
40445f:	ff 15 34 22 41 00    	call   *0x412234
404465:	85 c0                	test   %eax,%eax
404467:	74 20                	je     0x404489
404469:	8b be cc 00 00 00    	mov    0xcc(%esi),%edi
40446f:	85 ff                	test   %edi,%edi
404471:	74 16                	je     0x404489
404473:	50                   	push   %eax
404474:	ff 75 e8             	push   -0x18(%ebp)
404477:	ff b6 98 00 00 00    	push   0x98(%esi)
40447d:	8b cf                	mov    %edi,%ecx
40447f:	ff 15 20 23 41 00    	call   *0x412320
404485:	ff d7                	call   *%edi
404487:	eb 02                	jmp    0x40448b
404489:	32 c0                	xor    %al,%al
40448b:	84 c0                	test   %al,%al
40448d:	74 33                	je     0x4044c2
40448f:	6a ff                	push   $0xffffffff
404491:	8d 4d ec             	lea    -0x14(%ebp),%ecx
404494:	ff 15 40 22 41 00    	call   *0x412240
40449a:	8d 4d ec             	lea    -0x14(%ebp),%ecx
40449d:	ff 15 38 22 41 00    	call   *0x412238
4044a3:	8b 40 04             	mov    0x4(%eax),%eax
4044a6:	85 c0                	test   %eax,%eax
4044a8:	74 14                	je     0x4044be
4044aa:	51                   	push   %ecx
4044ab:	ff 75 ec             	push   -0x14(%ebp)
4044ae:	6a 03                	push   $0x3
4044b0:	8b 55 08             	mov    0x8(%ebp),%edx
4044b3:	8b 8e 80 00 00 00    	mov    0x80(%esi),%ecx
4044b9:	e8 2c 4e 00 00       	call   0x4092ea
4044be:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4044c2:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4044c6:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4044c9:	ff 15 30 22 41 00    	call   *0x412230
4044cf:	e8 25 ae 00 00       	call   0x40f2f9
4044d4:	c2 08 00             	ret    $0x8
4044d7:	68 0e 00 07 80       	push   $0x8007000e
4044dc:	ff 15 74 20 41 00    	call   *0x412074
4044e2:	e8 0d 53 00 00       	call   0x4097f4
4044e7:	b8 be 44 40 00       	mov    $0x4044be,%eax
4044ec:	c3                   	ret
4044ed:	68 9c 00 00 00       	push   $0x9c
4044f2:	b8 fd f6 40 00       	mov    $0x40f6fd,%eax
4044f7:	e8 89 ae 00 00       	call   0x40f385
4044fc:	8b d9                	mov    %ecx,%ebx
4044fe:	8b 75 0c             	mov    0xc(%ebp),%esi
404501:	8d 4d 80             	lea    -0x80(%ebp),%ecx
404504:	ff 15 f8 21 41 00    	call   *0x4121f8
40450a:	33 d2                	xor    %edx,%edx
40450c:	89 55 fc             	mov    %edx,-0x4(%ebp)
40450f:	89 95 78 ff ff ff    	mov    %edx,-0x88(%ebp)
404515:	89 95 7c ff ff ff    	mov    %edx,-0x84(%ebp)
40451b:	89 95 70 ff ff ff    	mov    %edx,-0x90(%ebp)
404521:	89 95 74 ff ff ff    	mov    %edx,-0x8c(%ebp)
404527:	6a 08                	push   $0x8
404529:	59                   	pop    %ecx
40452a:	33 c0                	xor    %eax,%eax
40452c:	8d 7d c8             	lea    -0x38(%ebp),%edi
40452f:	f3 ab                	rep stos %eax,%es:(%edi)
404531:	aa                   	stos   %al,%es:(%edi)
404532:	6a 42                	push   $0x42
404534:	52                   	push   %edx
404535:	8d 45 84             	lea    -0x7c(%ebp),%eax
404538:	50                   	push   %eax
404539:	e8 86 ae 00 00       	call   0x40f3c4
40453e:	83 c4 0c             	add    $0xc,%esp
404541:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
404545:	51                   	push   %ecx
404546:	b9 8d 13 00 00       	mov    $0x138d,%ecx
40454b:	e8 01 55 00 00       	call   0x409a51
404550:	50                   	push   %eax
404551:	6a 05                	push   $0x5
404553:	8b 55 08             	mov    0x8(%ebp),%edx
404556:	8b 8b 80 00 00 00    	mov    0x80(%ebx),%ecx
40455c:	e8 89 4d 00 00       	call   0x4092ea
404561:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
404567:	50                   	push   %eax
404568:	ba 38 14 40 00       	mov    $0x401438,%edx
40456d:	8b ce                	mov    %esi,%ecx
40456f:	e8 05 38 00 00       	call   0x407d79
404574:	85 c0                	test   %eax,%eax
404576:	0f 84 12 01 00 00    	je     0x40468e
40457c:	8b 85 78 ff ff ff    	mov    -0x88(%ebp),%eax
404582:	8b 8d 7c ff ff ff    	mov    -0x84(%ebp),%ecx
404588:	0f ac c8 0a          	shrd   $0xa,%ecx,%eax
40458c:	c1 e9 0a             	shr    $0xa,%ecx
40458f:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
404595:	89 8d 7c ff ff ff    	mov    %ecx,-0x84(%ebp)
40459b:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
4045a1:	89 8d 74 ff ff ff    	mov    %ecx,-0x8c(%ebp)
4045a7:	8d 45 c8             	lea    -0x38(%ebp),%eax
4045aa:	50                   	push   %eax
4045ab:	6a 21                	push   $0x21
4045ad:	6a 0a                	push   $0xa
4045af:	8d 85 70 ff ff ff    	lea    -0x90(%ebp),%eax
4045b5:	50                   	push   %eax
4045b6:	ff 15 04 23 41 00    	call   *0x412304
4045bc:	85 c0                	test   %eax,%eax
4045be:	0f 88 ca 00 00 00    	js     0x40468e
4045c4:	8d 45 c8             	lea    -0x38(%ebp),%eax
4045c7:	50                   	push   %eax
4045c8:	8d 4d 80             	lea    -0x80(%ebp),%ecx
4045cb:	ff 15 1c 22 41 00    	call   *0x41221c
4045d1:	33 ff                	xor    %edi,%edi
4045d3:	89 bd 58 ff ff ff    	mov    %edi,-0xa8(%ebp)
4045d9:	89 bd 5c ff ff ff    	mov    %edi,-0xa4(%ebp)
4045df:	89 bd 6c ff ff ff    	mov    %edi,-0x94(%ebp)
4045e5:	8b 43 64             	mov    0x64(%ebx),%eax
4045e8:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
4045ee:	8d 73 6c             	lea    0x6c(%ebx),%esi
4045f1:	8b ce                	mov    %esi,%ecx
4045f3:	ff 15 38 22 41 00    	call   *0x412238
4045f9:	8b 40 04             	mov    0x4(%eax),%eax
4045fc:	50                   	push   %eax
4045fd:	8b ce                	mov    %esi,%ecx
4045ff:	ff 15 18 22 41 00    	call   *0x412218
404605:	89 85 64 ff ff ff    	mov    %eax,-0x9c(%ebp)
40460b:	8b ce                	mov    %esi,%ecx
40460d:	ff 15 38 22 41 00    	call   *0x412238
404613:	8b 40 04             	mov    0x4(%eax),%eax
404616:	50                   	push   %eax
404617:	8b ce                	mov    %esi,%ecx
404619:	ff 15 18 22 41 00    	call   *0x412218
40461f:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
404625:	6a 21                	push   $0x21
404627:	8d 45 84             	lea    -0x7c(%ebp),%eax
40462a:	50                   	push   %eax
40462b:	8d 85 58 ff ff ff    	lea    -0xa8(%ebp),%eax
404631:	50                   	push   %eax
404632:	ff 75 80             	push   -0x80(%ebp)
404635:	57                   	push   %edi
404636:	68 00 04 00 00       	push   $0x400
40463b:	ff 15 40 20 41 00    	call   *0x412040
404641:	8d 45 84             	lea    -0x7c(%ebp),%eax
404644:	50                   	push   %eax
404645:	b9 fd 00 00 00       	mov    $0xfd,%ecx
40464a:	e8 02 54 00 00       	call   0x409a51
40464f:	50                   	push   %eax
404650:	8d 45 80             	lea    -0x80(%ebp),%eax
404653:	50                   	push   %eax
404654:	ff 15 04 22 41 00    	call   *0x412204
40465a:	59                   	pop    %ecx
40465b:	59                   	pop    %ecx
40465c:	ff 75 80             	push   -0x80(%ebp)
40465f:	6a 05                	push   $0x5
404661:	8b 55 08             	mov    0x8(%ebp),%edx
404664:	8b 8b 80 00 00 00    	mov    0x80(%ebx),%ecx
40466a:	e8 7b 4c 00 00       	call   0x4092ea
40466f:	89 7d fc             	mov    %edi,-0x4(%ebp)
404672:	eb 1a                	jmp    0x40468e
404674:	68 0e 00 07 80       	push   $0x8007000e
404679:	ff 15 74 20 41 00    	call   *0x412074
40467f:	e8 70 51 00 00       	call   0x4097f4
404684:	b8 8a 46 40 00       	mov    $0x40468a,%eax
404689:	c3                   	ret
40468a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40468e:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
404692:	8d 4d 80             	lea    -0x80(%ebp),%ecx
404695:	ff 15 30 22 41 00    	call   *0x412230
40469b:	e8 6d ac 00 00       	call   0x40f30d
4046a0:	c2 08 00             	ret    $0x8
4046a3:	6a 70                	push   $0x70
4046a5:	b8 47 f7 40 00       	mov    $0x40f747,%eax
4046aa:	e8 d6 ac 00 00       	call   0x40f385
4046af:	8b f9                	mov    %ecx,%edi
4046b1:	89 7d bc             	mov    %edi,-0x44(%ebp)
4046b4:	89 7d 90             	mov    %edi,-0x70(%ebp)
4046b7:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
4046ba:	ff 15 f8 21 41 00    	call   *0x4121f8
4046c0:	33 db                	xor    %ebx,%ebx
4046c2:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4046c5:	8d 4d b8             	lea    -0x48(%ebp),%ecx
4046c8:	ff 15 f8 21 41 00    	call   *0x4121f8
4046ce:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4046d2:	89 5d a8             	mov    %ebx,-0x58(%ebp)
4046d5:	89 5d ac             	mov    %ebx,-0x54(%ebp)
4046d8:	89 5d c0             	mov    %ebx,-0x40(%ebp)
4046db:	39 5f 44             	cmp    %ebx,0x44(%edi)
4046de:	0f 84 87 02 00 00    	je     0x40496b
4046e4:	e8 91 43 00 00       	call   0x408a7a
4046e9:	8b c8                	mov    %eax,%ecx
4046eb:	89 4d b0             	mov    %ecx,-0x50(%ebp)
4046ee:	85 c9                	test   %ecx,%ecx
4046f0:	75 15                	jne    0x404707
4046f2:	68 0e 00 07 80       	push   $0x8007000e
4046f7:	ff 15 74 20 41 00    	call   *0x412074
4046fd:	e8 f2 50 00 00       	call   0x4097f4
404702:	e9 64 02 00 00       	jmp    0x40496b
404707:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
40470b:	39 9f ac 00 00 00    	cmp    %ebx,0xac(%edi)
404711:	74 3e                	je     0x404751
404713:	8b f3                	mov    %ebx,%esi
404715:	89 75 a4             	mov    %esi,-0x5c(%ebp)
404718:	3b b7 a8 00 00 00    	cmp    0xa8(%edi),%esi
40471e:	0f 83 0e 02 00 00    	jae    0x404932
404724:	6b d6 2c             	imul   $0x2c,%esi,%edx
404727:	8b 87 84 00 00 00    	mov    0x84(%edi),%eax
40472d:	8b bf ac 00 00 00    	mov    0xac(%edi),%edi
404733:	3b 44 3a 24          	cmp    0x24(%edx,%edi,1),%eax
404737:	8b 7d bc             	mov    -0x44(%ebp),%edi
40473a:	75 12                	jne    0x40474e
40473c:	51                   	push   %ecx
40473d:	8b 87 ac 00 00 00    	mov    0xac(%edi),%eax
404743:	8b 14 02             	mov    (%edx,%eax,1),%edx
404746:	e8 b4 43 00 00       	call   0x408aff
40474b:	8b 4d b0             	mov    -0x50(%ebp),%ecx
40474e:	46                   	inc    %esi
40474f:	eb c4                	jmp    0x404715
404751:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
404755:	8b c3                	mov    %ebx,%eax
404757:	89 45 a0             	mov    %eax,-0x60(%ebp)
40475a:	83 f8 0a             	cmp    $0xa,%eax
40475d:	73 07                	jae    0x404766
40475f:	89 5c 85 c4          	mov    %ebx,-0x3c(%ebp,%eax,4)
404763:	40                   	inc    %eax
404764:	eb f1                	jmp    0x404757
404766:	ff b7 84 00 00 00    	push   0x84(%edi)
40476c:	68 50 15 40 00       	push   $0x401550
404771:	8d 45 b4             	lea    -0x4c(%ebp),%eax
404774:	50                   	push   %eax
404775:	ff 15 04 22 41 00    	call   *0x412204
40477b:	83 c4 0c             	add    $0xc,%esp
40477e:	ff 75 b4             	push   -0x4c(%ebp)
404781:	8d 4d 98             	lea    -0x68(%ebp),%ecx
404784:	e8 50 12 00 00       	call   0x4059d9
404789:	8b f0                	mov    %eax,%esi
40478b:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
40478f:	68 e0 15 40 00       	push   $0x4015e0
404794:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
404797:	e8 3d 12 00 00       	call   0x4059d9
40479c:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
4047a0:	8b 0e                	mov    (%esi),%ecx
4047a2:	85 c9                	test   %ecx,%ecx
4047a4:	74 04                	je     0x4047aa
4047a6:	8b 11                	mov    (%ecx),%edx
4047a8:	eb 02                	jmp    0x4047ac
4047aa:	8b d3                	mov    %ebx,%edx
4047ac:	8b 00                	mov    (%eax),%eax
4047ae:	85 c0                	test   %eax,%eax
4047b0:	74 04                	je     0x4047b6
4047b2:	8b 08                	mov    (%eax),%ecx
4047b4:	eb 02                	jmp    0x4047b8
4047b6:	8b cb                	mov    %ebx,%ecx
4047b8:	8b 47 04             	mov    0x4(%edi),%eax
4047bb:	8b 30                	mov    (%eax),%esi
4047bd:	8d 7d c0             	lea    -0x40(%ebp),%edi
4047c0:	57                   	push   %edi
4047c1:	53                   	push   %ebx
4047c2:	6a 30                	push   $0x30
4047c4:	52                   	push   %edx
4047c5:	51                   	push   %ecx
4047c6:	50                   	push   %eax
4047c7:	8b 4e 50             	mov    0x50(%esi),%ecx
4047ca:	ff 15 20 23 41 00    	call   *0x412320
4047d0:	ff 56 50             	call   *0x50(%esi)
4047d3:	8b f0                	mov    %eax,%esi
4047d5:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
4047d9:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
4047dc:	e8 6e 11 00 00       	call   0x40594f
4047e1:	8b 7d bc             	mov    -0x44(%ebp),%edi
4047e4:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
4047e8:	8d 4d 98             	lea    -0x68(%ebp),%ecx
4047eb:	e8 5f 11 00 00       	call   0x40594f
4047f0:	85 f6                	test   %esi,%esi
4047f2:	0f 88 94 01 00 00    	js     0x40498c
4047f8:	8b 57 0c             	mov    0xc(%edi),%edx
4047fb:	8b 4d c0             	mov    -0x40(%ebp),%ecx
4047fe:	e8 c6 2d 00 00       	call   0x4075c9
404803:	85 c0                	test   %eax,%eax
404805:	79 07                	jns    0x40480e
404807:	8b c8                	mov    %eax,%ecx
404809:	e9 80 01 00 00       	jmp    0x40498e
40480e:	8b 45 c0             	mov    -0x40(%ebp),%eax
404811:	8b 30                	mov    (%eax),%esi
404813:	8d 4d a8             	lea    -0x58(%ebp),%ecx
404816:	51                   	push   %ecx
404817:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
40481a:	51                   	push   %ecx
40481b:	6a 0a                	push   $0xa
40481d:	6a ff                	push   $0xffffffff
40481f:	50                   	push   %eax
404820:	8b 4e 10             	mov    0x10(%esi),%ecx
404823:	ff 15 20 23 41 00    	call   *0x412320
404829:	ff 56 10             	call   *0x10(%esi)
40482c:	83 f8 01             	cmp    $0x1,%eax
40482f:	75 08                	jne    0x404839