404474:	00 00 00
404477:	ff b0 98 04 00 00    	push   0x498(%eax)
40447d:	ff 15 98 b1 44 00    	call   *0x44b198
404483:	8b f8                	mov    %eax,%edi
404485:	85 ff                	test   %edi,%edi
404487:	74 3d                	je     0x4044c6
404489:	83 ff ff             	cmp    $0xffffffff,%edi
40448c:	74 38                	je     0x4044c6
40448e:	ff 75 08             	push   0x8(%ebp)
404491:	8d 45 f8             	lea    -0x8(%ebp),%eax
404494:	50                   	push   %eax
404495:	8d 45 fc             	lea    -0x4(%ebp),%eax
404498:	50                   	push   %eax
404499:	e8 a3 b3 03 00       	call   0x43f841
40449e:	8b f0                	mov    %eax,%esi
4044a0:	85 f6                	test   %esi,%esi
4044a2:	78 27                	js     0x4044cb
4044a4:	8d 45 f4             	lea    -0xc(%ebp),%eax
4044a7:	50                   	push   %eax
4044a8:	53                   	push   %ebx
4044a9:	53                   	push   %ebx
4044aa:	ff 75 f8             	push   -0x8(%ebp)
4044ad:	ff 75 fc             	push   -0x4(%ebp)
4044b0:	68 01 00 00 f0       	push   $0xf0000001
4044b5:	57                   	push   %edi
4044b6:	e8 ca 0c 01 00       	call   0x415185
4044bb:	8b f0                	mov    %eax,%esi
4044bd:	85 f6                	test   %esi,%esi
4044bf:	78 0a                	js     0x4044cb
4044c1:	8b 75 f4             	mov    -0xc(%ebp),%esi
4044c4:	eb 05                	jmp    0x4044cb
4044c6:	be e9 00 07 80       	mov    $0x800700e9,%esi
4044cb:	5f                   	pop    %edi
4044cc:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
4044cf:	74 08                	je     0x4044d9
4044d1:	ff 75 fc             	push   -0x4(%ebp)
4044d4:	e8 c0 f4 ff ff       	call   0x403999
4044d9:	89 1d 54 aa 46 00    	mov    %ebx,0x46aa54
4044df:	8b c6                	mov    %esi,%eax
4044e1:	5e                   	pop    %esi
4044e2:	5b                   	pop    %ebx
4044e3:	8b e5                	mov    %ebp,%esp
4044e5:	5d                   	pop    %ebp
4044e6:	c2 08 00             	ret    $0x8
4044e9:	55                   	push   %ebp
4044ea:	8b ec                	mov    %esp,%ebp
4044ec:	83 ec 18             	sub    $0x18,%esp
4044ef:	a1 08 a0 46 00       	mov    0x46a008,%eax
4044f4:	33 c5                	xor    %ebp,%eax
4044f6:	89 45 fc             	mov    %eax,-0x4(%ebp)
4044f9:	53                   	push   %ebx
4044fa:	56                   	push   %esi
4044fb:	57                   	push   %edi
4044fc:	33 c0                	xor    %eax,%eax
4044fe:	8d 7d ec             	lea    -0x14(%ebp),%edi
404501:	ab                   	stos   %eax,%es:(%edi)
404502:	33 db                	xor    %ebx,%ebx
404504:	89 5d e8             	mov    %ebx,-0x18(%ebp)
404507:	ab                   	stos   %eax,%es:(%edi)
404508:	ab                   	stos   %eax,%es:(%edi)
404509:	ab                   	stos   %eax,%es:(%edi)
40450a:	8d 45 e8             	lea    -0x18(%ebp),%eax
40450d:	50                   	push   %eax
40450e:	6a 20                	push   $0x20
404510:	8b fb                	mov    %ebx,%edi
404512:	ff 15 80 b1 44 00    	call   *0x44b180
404518:	50                   	push   %eax
404519:	ff 15 08 b0 44 00    	call   *0x44b008
40451f:	85 c0                	test   %eax,%eax
404521:	75 38                	jne    0x40455b
404523:	ff 15 e8 b0 44 00    	call   *0x44b0e8
404529:	0f b7 f0             	movzwl %ax,%esi
40452c:	81 ce 00 00 07 80    	or     $0x80070000,%esi
404532:	85 c0                	test   %eax,%eax
404534:	0f 4e f0             	cmovle %eax,%esi
404537:	b8 05 40 00 80       	mov    $0x80004005,%eax
40453c:	85 f6                	test   %esi,%esi
40453e:	0f 49 f0             	cmovns %eax,%esi
404541:	56                   	push   %esi
404542:	68 56 03 00 00       	push   $0x356
404547:	68 d4 b9 44 00       	push   $0x44b9d4
40454c:	e8 82 f2 ff ff       	call   0x4037d3
404551:	68 78 c0 44 00       	push   $0x44c078
404556:	e9 0c 01 00 00       	jmp    0x404667
40455b:	8d 45 f0             	lea    -0x10(%ebp),%eax
40455e:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
404565:	50                   	push   %eax
404566:	68 98 c0 44 00       	push   $0x44c098
40456b:	53                   	push   %ebx
40456c:	c7 45 f8 02 00 00 00 	movl   $0x2,-0x8(%ebp)
404573:	ff 15 10 b0 44 00    	call   *0x44b010
404579:	85 c0                	test   %eax,%eax
40457b:	75 38                	jne    0x4045b5
40457d:	ff 15 e8 b0 44 00    	call   *0x44b0e8
404583:	0f b7 f0             	movzwl %ax,%esi
404586:	81 ce 00 00 07 80    	or     $0x80070000,%esi
40458c:	85 c0                	test   %eax,%eax
40458e:	0f 4e f0             	cmovle %eax,%esi
404591:	b8 05 40 00 80       	mov    $0x80004005,%eax
404596:	85 f6                	test   %esi,%esi
404598:	0f 49 f0             	cmovns %eax,%esi
40459b:	56                   	push   %esi
40459c:	68 5d 03 00 00       	push   $0x35d
4045a1:	68 d4 b9 44 00       	push   $0x44b9d4
4045a6:	e8 28 f2 ff ff       	call   0x4037d3
4045ab:	68 c0 c0 44 00       	push   $0x44c0c0
4045b0:	e9 b2 00 00 00       	jmp    0x404667
4045b5:	53                   	push   %ebx
4045b6:	53                   	push   %ebx
4045b7:	6a 10                	push   $0x10
4045b9:	8d 45 ec             	lea    -0x14(%ebp),%eax
4045bc:	50                   	push   %eax
4045bd:	53                   	push   %ebx
4045be:	ff 75 e8             	push   -0x18(%ebp)
4045c1:	ff 15 0c b0 44 00    	call   *0x44b00c
4045c7:	85 c0                	test   %eax,%eax
4045c9:	75 35                	jne    0x404600
4045cb:	ff 15 e8 b0 44 00    	call   *0x44b0e8
4045d1:	0f b7 f0             	movzwl %ax,%esi
4045d4:	81 ce 00 00 07 80    	or     $0x80070000,%esi
4045da:	85 c0                	test   %eax,%eax
4045dc:	0f 4e f0             	cmovle %eax,%esi
4045df:	b8 05 40 00 80       	mov    $0x80004005,%eax
4045e4:	85 f6                	test   %esi,%esi
4045e6:	0f 49 f0             	cmovns %eax,%esi
4045e9:	56                   	push   %esi
4045ea:	68 62 03 00 00       	push   $0x362
4045ef:	68 d4 b9 44 00       	push   $0x44b9d4
4045f4:	e8 da f1 ff ff       	call   0x4037d3
4045f9:	68 e8 c0 44 00       	push   $0x44c0e8
4045fe:	eb 67                	jmp    0x404667
404600:	68 e8 03 00 00       	push   $0x3e8
404605:	8b f3                	mov    %ebx,%esi
404607:	ff 15 08 b1 44 00    	call   *0x44b108
40460d:	68 02 00 04 80       	push   $0x80040002
404612:	6a 01                	push   $0x1
404614:	53                   	push   %ebx
404615:	53                   	push   %ebx
404616:	53                   	push   %ebx
404617:	53                   	push   %ebx
404618:	ff 15 5c aa 46 00    	call   *0x46aa5c
40461e:	85 c0                	test   %eax,%eax
404620:	75 14                	jne    0x404636
404622:	ff 15 e8 b0 44 00    	call   *0x44b0e8
404628:	0f b7 f0             	movzwl %ax,%esi
40462b:	81 ce 00 00 07 80    	or     $0x80070000,%esi
404631:	85 c0                	test   %eax,%eax
404633:	0f 4e f0             	cmovle %eax,%esi
404636:	8b c7                	mov    %edi,%eax
404638:	47                   	inc    %edi
404639:	83 f8 0a             	cmp    $0xa,%eax
40463c:	73 10                	jae    0x40464e
40463e:	81 fe f7 04 07 80    	cmp    $0x800704f7,%esi
404644:	74 ba                	je     0x404600
404646:	81 fe 15 00 07 80    	cmp    $0x80070015,%esi
40464c:	74 b2                	je     0x404600
40464e:	85 f6                	test   %esi,%esi
404650:	79 1d                	jns    0x40466f
404652:	56                   	push   %esi
404653:	68 76 03 00 00       	push   $0x376
404658:	68 d4 b9 44 00       	push   $0x44b9d4
40465d:	e8 71 f1 ff ff       	call   0x4037d3
404662:	68 1c c1 44 00       	push   $0x44c11c
404667:	56                   	push   %esi
404668:	e8 c2 ba 03 00       	call   0x44012f
40466d:	59                   	pop    %ecx
40466e:	59                   	pop    %ecx
40466f:	39 5d e8             	cmp    %ebx,-0x18(%ebp)
404672:	74 09                	je     0x40467d
404674:	ff 75 e8             	push   -0x18(%ebp)
404677:	ff 15 d4 b0 44 00    	call   *0x44b0d4
40467d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
404680:	8b c6                	mov    %esi,%eax
404682:	5f                   	pop    %edi
404683:	5e                   	pop    %esi
404684:	33 cd                	xor    %ebp,%ecx
404686:	5b                   	pop    %ebx
404687:	e8 aa 97 02 00       	call   0x42de36
40468c:	8b e5                	mov    %ebp,%esp
40468e:	5d                   	pop    %ebp
40468f:	c3                   	ret
404690:	55                   	push   %ebp
404691:	8b ec                	mov    %esp,%ebp
404693:	83 ec 20             	sub    $0x20,%esp
404696:	53                   	push   %ebx
404697:	56                   	push   %esi
404698:	57                   	push   %edi
404699:	6a 07                	push   $0x7
40469b:	59                   	pop    %ecx
40469c:	33 c0                	xor    %eax,%eax
40469e:	8d 7d e0             	lea    -0x20(%ebp),%edi
4046a1:	33 db                	xor    %ebx,%ebx
4046a3:	53                   	push   %ebx
4046a4:	f3 ab                	rep stos %eax,%es:(%edi)
4046a6:	b8 00 04 00 00       	mov    $0x400,%eax
4046ab:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4046ae:	50                   	push   %eax
4046af:	50                   	push   %eax
4046b0:	53                   	push   %ebx
4046b1:	8d 45 e0             	lea    -0x20(%ebp),%eax
4046b4:	50                   	push   %eax
4046b5:	ff 15 60 b3 44 00    	call   *0x44b360
4046bb:	ff 15 84 b1 44 00    	call   *0x44b184
4046c1:	8b 7d 08             	mov    0x8(%ebp),%edi
4046c4:	8d 4d fc             	lea    -0x4(%ebp),%ecx
4046c7:	51                   	push   %ecx
4046c8:	50                   	push   %eax
4046c9:	57                   	push   %edi
4046ca:	e8 82 b5 01 00       	call   0x41fc51
4046cf:	8b f0                	mov    %eax,%esi
4046d1:	85 f6                	test   %esi,%esi
4046d3:	79 10                	jns    0x4046e5
4046d5:	68 ec bf 44 00       	push   $0x44bfec
4046da:	56                   	push   %esi
4046db:	e8 4f ba 03 00       	call   0x44012f
4046e0:	e9 de 00 00 00       	jmp    0x4047c3
4046e5:	8d 47 1c             	lea    0x1c(%edi),%eax
4046e8:	50                   	push   %eax
4046e9:	ff 75 fc             	push   -0x4(%ebp)
4046ec:	8d 87 b8 00 00 00    	lea    0xb8(%edi),%eax
4046f2:	50                   	push   %eax
4046f3:	e8 c8 8e 00 00       	call   0x40d5c0
4046f8:	8b f0                	mov    %eax,%esi
4046fa:	85 f6                	test   %esi,%esi
4046fc:	79 07                	jns    0x404705
4046fe:	68 0c c0 44 00       	push   $0x44c00c
404703:	eb d5                	jmp    0x4046da
404705:	8b 87 c8 00 00 00    	mov    0xc8(%edi),%eax
40470b:	50                   	push   %eax
40470c:	8b 08                	mov    (%eax),%ecx
40470e:	ff 51 0c             	call   *0xc(%ecx)
404711:	8b f0                	mov    %eax,%esi
404713:	85 f6                	test   %esi,%esi
404715:	79 0f                	jns    0x404726
404717:	68 20 c0 44 00       	push   $0x44c020
40471c:	56                   	push   %esi
40471d:	e8 0d ba 03 00       	call   0x44012f
404722:	59                   	pop    %ecx
404723:	59                   	pop    %ecx
404724:	eb 32                	jmp    0x404758
404726:	53                   	push   %ebx
404727:	53                   	push   %ebx
404728:	53                   	push   %ebx
404729:	8b 1d 4c b3 44 00    	mov    0x44b34c,%ebx
40472f:	eb 14                	jmp    0x404745
404731:	83 f8 ff             	cmp    $0xffffffff,%eax
404734:	74 54                	je     0x40478a
404736:	8d 45 e0             	lea    -0x20(%ebp),%eax
404739:	50                   	push   %eax
40473a:	57                   	push   %edi
40473b:	e8 8d fc ff ff       	call   0x4043cd
404740:	33 c0                	xor    %eax,%eax
404742:	50                   	push   %eax
404743:	50                   	push   %eax
404744:	50                   	push   %eax
404745:	8d 45 e0             	lea    -0x20(%ebp),%eax
404748:	50                   	push   %eax
404749:	ff d3                	call   *%ebx
40474b:	85 c0                	test   %eax,%eax
40474d:	75 e2                	jne    0x404731
40474f:	8b 45 e8             	mov    -0x18(%ebp),%eax
404752:	89 87 f8 00 00 00    	mov    %eax,0xf8(%edi)
404758:	8b 87 c8 00 00 00    	mov    0xc8(%edi),%eax
40475e:	50                   	push   %eax
40475f:	8b 08                	mov    (%eax),%ecx
404761:	ff 51 10             	call   *0x10(%ecx)
404764:	83 f8 66             	cmp    $0x66,%eax
404767:	75 40                	jne    0x4047a9
404769:	ff 77 18             	push   0x18(%edi)
40476c:	e8 bf f4 00 00       	call   0x413c30
404771:	50                   	push   %eax
404772:	68 04 00 00 20       	push   $0x20000004
404777:	6a 02                	push   $0x2
404779:	e8 91 0d 00 00       	call   0x40550f
40477e:	83 c4 0c             	add    $0xc,%esp
404781:	c7 47 18 01 00 00 00 	movl   $0x1,0x18(%edi)
404788:	eb 3b                	jmp    0x4047c5
40478a:	be ff ff 00 80       	mov    $0x8000ffff,%esi
40478f:	56                   	push   %esi
404790:	68 cd 02 00 00       	push   $0x2cd
404795:	68 d4 b9 44 00       	push   $0x44b9d4
40479a:	e8 34 f0 ff ff       	call   0x4037d3
40479f:	68 4c c0 44 00       	push   $0x44c04c
4047a4:	e9 73 ff ff ff       	jmp    0x40471c
4047a9:	83 f8 68             	cmp    $0x68,%eax
4047ac:	75 17                	jne    0x4047c5
4047ae:	68 06 00 00 20       	push   $0x20000006
4047b3:	6a 02                	push   $0x2
4047b5:	e8 55 0d 00 00       	call   0x40550f
4047ba:	8b 45 0c             	mov    0xc(%ebp),%eax
4047bd:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
4047c3:	59                   	pop    %ecx
4047c4:	59                   	pop    %ecx
4047c5:	8d 87 b8 00 00 00    	lea    0xb8(%edi),%eax
4047cb:	50                   	push   %eax
4047cc:	e8 fe 8f 00 00       	call   0x40d7cf
4047d1:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4047d4:	85 c9                	test   %ecx,%ecx
4047d6:	74 06                	je     0x4047de
4047d8:	8b 01                	mov    (%ecx),%eax
4047da:	51                   	push   %ecx
4047db:	ff 50 08             	call   *0x8(%eax)
4047de:	5f                   	pop    %edi
4047df:	8b c6                	mov    %esi,%eax
4047e1:	5e                   	pop    %esi
4047e2:	5b                   	pop    %ebx
4047e3:	8b e5                	mov    %ebp,%esp
4047e5:	5d                   	pop    %ebp
4047e6:	c2 08 00             	ret    $0x8
4047e9:	55                   	push   %ebp
4047ea:	8b ec                	mov    %esp,%ebp
4047ec:	51                   	push   %ecx
4047ed:	51                   	push   %ecx
4047ee:	53                   	push   %ebx
4047ef:	56                   	push   %esi
4047f0:	57                   	push   %edi
4047f1:	8b 7d 10             	mov    0x10(%ebp),%edi
4047f4:	33 db                	xor    %ebx,%ebx
4047f6:	6a 01                	push   $0x1
4047f8:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4047fb:	89 5d f8             	mov    %ebx,-0x8(%ebp)
4047fe:	8d 87 a0 04 00 00    	lea    0x4a0(%edi),%eax
404804:	50                   	push   %eax
404805:	e8 29 01 01 00       	call   0x414933
40480a:	8b f0                	mov    %eax,%esi
40480c:	85 f6                	test   %esi,%esi
40480e:	79 0a                	jns    0x40481a
404810:	68 18 be 44 00       	push   $0x44be18
404815:	e9 27 01 00 00       	jmp    0x404941
40481a:	ff 15 78 b2 44 00    	call   *0x44b278
404820:	89 87 98 04 00 00    	mov    %eax,0x498(%edi)
404826:	83 f8 ff             	cmp    $0xffffffff,%eax
404829:	75 38                	jne    0x404863
40482b:	ff 15 e8 b0 44 00    	call   *0x44b0e8
404831:	0f b7 f0             	movzwl %ax,%esi
404834:	81 ce 00 00 07 80    	or     $0x80070000,%esi
40483a:	85 c0                	test   %eax,%eax
40483c:	0f 4e f0             	cmovle %eax,%esi
40483f:	b8 05 40 00 80       	mov    $0x80004005,%eax
404844:	85 f6                	test   %esi,%esi
404846:	0f 49 f0             	cmovns %eax,%esi
404849:	56                   	push   %esi
40484a:	68 4c 02 00 00       	push   $0x24c
40484f:	68 d4 b9 44 00       	push   $0x44b9d4
404854:	e8 7a ef ff ff       	call   0x4037d3
404859:	68 44 be 44 00       	push   $0x44be44
40485e:	e9 de 00 00 00       	jmp    0x404941
404863:	ff b7 b0 04 00 00    	push   0x4b0(%edi)
404869:	50                   	push   %eax
40486a:	ff 15 9c b1 44 00    	call   *0x44b19c