40660d:	99                   	cltd
40660e:	89 45 e8             	mov    %eax,-0x18(%ebp)
406611:	89 55 ec             	mov    %edx,-0x14(%ebp)
406614:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%ebp)
40661b:	56                   	push   %esi
40661c:	ff 75 0c             	push   0xc(%ebp)
40661f:	8d 45 e8             	lea    -0x18(%ebp),%eax
406622:	50                   	push   %eax
406623:	e8 4b 99 01 00       	call   0x41ff73
406628:	8b f0                	mov    %eax,%esi
40662a:	85 f6                	test   %esi,%esi
40662c:	79 0d                	jns    0x40663b
40662e:	68 fc ca 44 00       	push   $0x44cafc
406633:	56                   	push   %esi
406634:	e8 f6 9a 03 00       	call   0x44012f
406639:	59                   	pop    %ecx
40663a:	59                   	pop    %ecx
40663b:	8b c6                	mov    %esi,%eax
40663d:	5e                   	pop    %esi
40663e:	8b e5                	mov    %ebp,%esp
406640:	5d                   	pop    %ebp
406641:	c2 08 00             	ret    $0x8
406644:	55                   	push   %ebp
406645:	8b ec                	mov    %esp,%ebp
406647:	81 ec 0c 02 00 00    	sub    $0x20c,%esp
40664d:	a1 08 a0 46 00       	mov    0x46a008,%eax
406652:	33 c5                	xor    %ebp,%eax
406654:	89 45 fc             	mov    %eax,-0x4(%ebp)
406657:	56                   	push   %esi
406658:	8b 75 0c             	mov    0xc(%ebp),%esi
40665b:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
406661:	68 08 02 00 00       	push   $0x208
406666:	6a 00                	push   $0x0
406668:	50                   	push   %eax
406669:	e8 02 90 02 00       	call   0x42f670
40666e:	83 c4 0c             	add    $0xc,%esp
406671:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
406677:	50                   	push   %eax
406678:	68 04 01 00 00       	push   $0x104
40667d:	ff 15 18 b1 44 00    	call   *0x44b118
406683:	85 c0                	test   %eax,%eax
406685:	75 35                	jne    0x4066bc
406687:	ff 15 e8 b0 44 00    	call   *0x44b0e8
40668d:	0f b7 f0             	movzwl %ax,%esi
406690:	81 ce 00 00 07 80    	or     $0x80070000,%esi
406696:	85 c0                	test   %eax,%eax
406698:	0f 4e f0             	cmovle %eax,%esi
40669b:	b8 05 40 00 80       	mov    $0x80004005,%eax
4066a0:	85 f6                	test   %esi,%esi
4066a2:	0f 49 f0             	cmovns %eax,%esi
4066a5:	56                   	push   %esi
4066a6:	68 57 07 00 00       	push   $0x757
4066ab:	68 bc cc 44 00       	push   $0x44ccbc
4066b0:	e8 1e d1 ff ff       	call   0x4037d3
4066b5:	68 04 d8 44 00       	push   $0x44d804
4066ba:	eb 1a                	jmp    0x4066d6
4066bc:	6a 00                	push   $0x0
4066be:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
4066c4:	50                   	push   %eax
4066c5:	56                   	push   %esi
4066c6:	e8 29 9c 01 00       	call   0x4202f4
4066cb:	8b f0                	mov    %eax,%esi
4066cd:	85 f6                	test   %esi,%esi
4066cf:	79 0d                	jns    0x4066de
4066d1:	68 fc ca 44 00       	push   $0x44cafc
4066d6:	56                   	push   %esi
4066d7:	e8 53 9a 03 00       	call   0x44012f
4066dc:	59                   	pop    %ecx
4066dd:	59                   	pop    %ecx
4066de:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4066e1:	8b c6                	mov    %esi,%eax
4066e3:	33 cd                	xor    %ebp,%ecx
4066e5:	5e                   	pop    %esi
4066e6:	e8 4b 77 02 00       	call   0x42de36
4066eb:	8b e5                	mov    %ebp,%esp
4066ed:	5d                   	pop    %ebp
4066ee:	c2 08 00             	ret    $0x8
4066f1:	55                   	push   %ebp
4066f2:	8b ec                	mov    %esp,%ebp
4066f4:	56                   	push   %esi
4066f5:	6a 00                	push   $0x0
4066f7:	ff 75 08             	push   0x8(%ebp)
4066fa:	ff 75 0c             	push   0xc(%ebp)
4066fd:	e8 53 9d 01 00       	call   0x420455
406702:	8b f0                	mov    %eax,%esi
406704:	85 f6                	test   %esi,%esi
406706:	79 0d                	jns    0x406715
406708:	68 fc ca 44 00       	push   $0x44cafc
40670d:	56                   	push   %esi
40670e:	e8 1c 9a 03 00       	call   0x44012f
406713:	59                   	pop    %ecx
406714:	59                   	pop    %ecx
406715:	8b c6                	mov    %esi,%eax
406717:	5e                   	pop    %esi
406718:	5d                   	pop    %ebp
406719:	c2 08 00             	ret    $0x8
40671c:	55                   	push   %ebp
40671d:	8b ec                	mov    %esp,%ebp
40671f:	83 ec 18             	sub    $0x18,%esp
406722:	a1 08 a0 46 00       	mov    0x46a008,%eax
406727:	33 c5                	xor    %ebp,%eax
406729:	89 45 fc             	mov    %eax,-0x4(%ebp)
40672c:	53                   	push   %ebx
40672d:	8b 5d 0c             	mov    0xc(%ebp),%ebx
406730:	33 c0                	xor    %eax,%eax
406732:	56                   	push   %esi
406733:	57                   	push   %edi
406734:	8d 7d e8             	lea    -0x18(%ebp),%edi
406737:	ab                   	stos   %eax,%es:(%edi)
406738:	68 74 d7 44 00       	push   $0x44d774
40673d:	68 84 d7 44 00       	push   $0x44d784
406742:	ab                   	stos   %eax,%es:(%edi)
406743:	ab                   	stos   %eax,%es:(%edi)
406744:	ab                   	stos   %eax,%es:(%edi)
406745:	ab                   	stos   %eax,%es:(%edi)
406746:	ff 15 ec b0 44 00    	call   *0x44b0ec
40674c:	50                   	push   %eax
40674d:	ff 15 dc b0 44 00    	call   *0x44b0dc
406753:	85 c0                	test   %eax,%eax
406755:	75 35                	jne    0x40678c
406757:	ff 15 e8 b0 44 00    	call   *0x44b0e8
40675d:	0f b7 f0             	movzwl %ax,%esi
406760:	81 ce 00 00 07 80    	or     $0x80070000,%esi
406766:	85 c0                	test   %eax,%eax
406768:	0f 4e f0             	cmovle %eax,%esi
40676b:	b8 05 40 00 80       	mov    $0x80004005,%eax
406770:	85 f6                	test   %esi,%esi
406772:	0f 49 f0             	cmovns %eax,%esi
406775:	56                   	push   %esi
406776:	68 25 07 00 00       	push   $0x725
40677b:	68 bc cc 44 00       	push   $0x44ccbc
406780:	e8 4e d0 ff ff       	call   0x4037d3
406785:	68 8c d7 44 00       	push   $0x44d78c
40678a:	eb 3c                	jmp    0x4067c8
40678c:	8d 4d e8             	lea    -0x18(%ebp),%ecx
40678f:	c7 45 e8 14 00 00 00 	movl   $0x14,-0x18(%ebp)
406796:	51                   	push   %ecx
406797:	ff d0                	call   *%eax
406799:	8b f0                	mov    %eax,%esi
40679b:	85 f6                	test   %esi,%esi
40679d:	79 07                	jns    0x4067a6
40679f:	68 c4 d7 44 00       	push   $0x44d7c4
4067a4:	eb 22                	jmp    0x4067c8
4067a6:	0f b7 45 ec          	movzwl -0x14(%ebp),%eax
4067aa:	0f b7 4d f0          	movzwl -0x10(%ebp),%ecx
4067ae:	c1 e0 10             	shl    $0x10,%eax
4067b1:	0b c1                	or     %ecx,%eax
4067b3:	99                   	cltd
4067b4:	50                   	push   %eax
4067b5:	6a 00                	push   $0x0
4067b7:	53                   	push   %ebx
4067b8:	e8 98 9c 01 00       	call   0x420455
4067bd:	8b f0                	mov    %eax,%esi
4067bf:	85 f6                	test   %esi,%esi
4067c1:	79 0d                	jns    0x4067d0
4067c3:	68 fc ca 44 00       	push   $0x44cafc
4067c8:	56                   	push   %esi
4067c9:	e8 61 99 03 00       	call   0x44012f
4067ce:	59                   	pop    %ecx
4067cf:	59                   	pop    %ecx
4067d0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4067d3:	8b c6                	mov    %esi,%eax
4067d5:	5f                   	pop    %edi
4067d6:	5e                   	pop    %esi
4067d7:	33 cd                	xor    %ebp,%ecx
4067d9:	5b                   	pop    %ebx
4067da:	e8 57 76 02 00       	call   0x42de36
4067df:	8b e5                	mov    %ebp,%esp
4067e1:	5d                   	pop    %ebp
4067e2:	c2 08 00             	ret    $0x8
4067e5:	55                   	push   %ebp
4067e6:	8b ec                	mov    %esp,%ebp
4067e8:	81 ec 40 01 00 00    	sub    $0x140,%esp
4067ee:	a1 08 a0 46 00       	mov    0x46a008,%eax
4067f3:	33 c5                	xor    %ebp,%eax
4067f5:	89 45 fc             	mov    %eax,-0x4(%ebp)
4067f8:	53                   	push   %ebx
4067f9:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4067fc:	8d 85 e0 fe ff ff    	lea    -0x120(%ebp),%eax
406802:	56                   	push   %esi
406803:	57                   	push   %edi
406804:	33 f6                	xor    %esi,%esi
406806:	68 1c 01 00 00       	push   $0x11c
40680b:	56                   	push   %esi
40680c:	50                   	push   %eax
40680d:	89 b5 dc fe ff ff    	mov    %esi,-0x124(%ebp)
406813:	e8 58 8e 02 00       	call   0x42f670
406818:	83 c4 0c             	add    $0xc,%esp
40681b:	8d bd c0 fe ff ff    	lea    -0x140(%ebp),%edi
406821:	33 c0                	xor    %eax,%eax
406823:	6a 06                	push   $0x6
406825:	59                   	pop    %ecx
406826:	f3 ab                	rep stos %eax,%es:(%edi)
406828:	8d 85 dc fe ff ff    	lea    -0x124(%ebp),%eax
40682e:	50                   	push   %eax
40682f:	68 00 d7 44 00       	push   $0x44d700
406834:	56                   	push   %esi
406835:	ff 15 c4 b1 44 00    	call   *0x44b1c4
40683b:	85 c0                	test   %eax,%eax
40683d:	75 38                	jne    0x406877
40683f:	ff 15 e8 b0 44 00    	call   *0x44b0e8
406845:	0f b7 f0             	movzwl %ax,%esi
406848:	81 ce 00 00 07 80    	or     $0x80070000,%esi
40684e:	85 c0                	test   %eax,%eax
406850:	0f 4e f0             	cmovle %eax,%esi
406853:	b8 05 40 00 80       	mov    $0x80004005,%eax
406858:	85 f6                	test   %esi,%esi
40685a:	0f 49 f0             	cmovns %eax,%esi
40685d:	56                   	push   %esi
40685e:	68 5c 06 00 00       	push   $0x65c
406863:	68 bc cc 44 00       	push   $0x44ccbc
406868:	e8 66 cf ff ff       	call   0x4037d3
40686d:	68 0c d7 44 00       	push   $0x44d70c
406872:	e9 0f 01 00 00       	jmp    0x406986
406877:	68 24 d7 44 00       	push   $0x44d724
40687c:	ff b5 dc fe ff ff    	push   -0x124(%ebp)
406882:	ff 15 dc b0 44 00    	call   *0x44b0dc
406888:	85 c0                	test   %eax,%eax
40688a:	75 38                	jne    0x4068c4
40688c:	ff 15 e8 b0 44 00    	call   *0x44b0e8
406892:	0f b7 f0             	movzwl %ax,%esi
406895:	81 ce 00 00 07 80    	or     $0x80070000,%esi
40689b:	85 c0                	test   %eax,%eax
40689d:	0f 4e f0             	cmovle %eax,%esi
4068a0:	b8 05 40 00 80       	mov    $0x80004005,%eax
4068a5:	85 f6                	test   %esi,%esi
4068a7:	0f 49 f0             	cmovns %eax,%esi
4068aa:	56                   	push   %esi
4068ab:	68 62 06 00 00       	push   $0x662
4068b0:	68 bc cc 44 00       	push   $0x44ccbc
4068b5:	e8 19 cf ff ff       	call   0x4037d3
4068ba:	68 34 d7 44 00       	push   $0x44d734
4068bf:	e9 c2 00 00 00       	jmp    0x406986
4068c4:	8d 8d e0 fe ff ff    	lea    -0x120(%ebp),%ecx
4068ca:	c7 85 e0 fe ff ff 1c 	movl   $0x11c,-0x120(%ebp)
4068d1:	01 00 00
4068d4:	51                   	push   %ecx
4068d5:	ff d0                	call   *%eax
4068d7:	8b f0                	mov    %eax,%esi
4068d9:	85 f6                	test   %esi,%esi
4068db:	79 0a                	jns    0x4068e7
4068dd:	68 e0 b9 44 00       	push   $0x44b9e0
4068e2:	e9 9f 00 00 00       	jmp    0x406986
4068e7:	8b 45 08             	mov    0x8(%ebp),%eax
4068ea:	83 e8 01             	sub    $0x1,%eax
4068ed:	74 54                	je     0x406943
4068ef:	83 e8 01             	sub    $0x1,%eax
4068f2:	74 2c                	je     0x406920
4068f4:	83 e8 01             	sub    $0x1,%eax
4068f7:	75 75                	jne    0x40696e
4068f9:	66 8b 45 f4          	mov    -0xc(%ebp),%ax
4068fd:	33 c9                	xor    %ecx,%ecx
4068ff:	66 3b c8             	cmp    %ax,%cx
406902:	74 6a                	je     0x40696e
406904:	0f b7 c0             	movzwl %ax,%eax
406907:	99                   	cltd
406908:	89 85 c0 fe ff ff    	mov    %eax,-0x140(%ebp)
40690e:	89 95 c4 fe ff ff    	mov    %edx,-0x13c(%ebp)
406914:	c7 85 d0 fe ff ff 01 	movl   $0x1,-0x130(%ebp)
40691b:	00 00 00
40691e:	eb 4e                	jmp    0x40696e
406920:	83 a5 d8 fe ff ff 00 	andl   $0x0,-0x128(%ebp)
406927:	8d 85 d8 fe ff ff    	lea    -0x128(%ebp),%eax
40692d:	50                   	push   %eax
40692e:	ff 15 80 b1 44 00    	call   *0x44b180
406934:	50                   	push   %eax
406935:	e8 81 a0 03 00       	call   0x4409bb
40693a:	83 bd d8 fe ff ff 00 	cmpl   $0x0,-0x128(%ebp)
406941:	74 2b                	je     0x40696e
406943:	0f b7 85 e4 fe ff ff 	movzwl -0x11c(%ebp),%eax
40694a:	0f b7 8d e8 fe ff ff 	movzwl -0x118(%ebp),%ecx
406951:	c1 e0 10             	shl    $0x10,%eax
406954:	0b c1                	or     %ecx,%eax
406956:	c7 85 d0 fe ff ff 03 	movl   $0x3,-0x130(%ebp)
40695d:	00 00 00
406960:	83 a5 c0 fe ff ff 00 	andl   $0x0,-0x140(%ebp)
406967:	99                   	cltd
406968:	89 85 c4 fe ff ff    	mov    %eax,-0x13c(%ebp)
40696e:	53                   	push   %ebx
40696f:	8d 85 c0 fe ff ff    	lea    -0x140(%ebp),%eax
406975:	50                   	push   %eax
406976:	e8 f8 95 01 00       	call   0x41ff73
40697b:	8b f0                	mov    %eax,%esi
40697d:	85 f6                	test   %esi,%esi
40697f:	79 0d                	jns    0x40698e
406981:	68 fc ca 44 00       	push   $0x44cafc
406986:	56                   	push   %esi
406987:	e8 a3 97 03 00       	call   0x44012f
40698c:	59                   	pop    %ecx
40698d:	59                   	pop    %ecx
40698e:	83 bd dc fe ff ff 00 	cmpl   $0x0,-0x124(%ebp)
406995:	74 0c                	je     0x4069a3
406997:	ff b5 dc fe ff ff    	push   -0x124(%ebp)
40699d:	ff 15 b0 b1 44 00    	call   *0x44b1b0
4069a3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4069a6:	8b c6                	mov    %esi,%eax
4069a8:	5f                   	pop    %edi
4069a9:	5e                   	pop    %esi
4069aa:	33 cd                	xor    %ebp,%ecx
4069ac:	5b                   	pop    %ebx
4069ad:	e8 84 74 02 00       	call   0x42de36
4069b2:	8b e5                	mov    %ebp,%esp
4069b4:	5d                   	pop    %ebp
4069b5:	c2 08 00             	ret    $0x8
4069b8:	55                   	push   %ebp
4069b9:	8b ec                	mov    %esp,%ebp
4069bb:	81 ec 14 04 00 00    	sub    $0x414,%esp
4069c1:	a1 08 a0 46 00       	mov    0x46a008,%eax
4069c6:	33 c5                	xor    %ebp,%eax
4069c8:	89 45 fc             	mov    %eax,-0x4(%ebp)
4069cb:	56                   	push   %esi
4069cc:	8b 75 0c             	mov    0xc(%ebp),%esi
4069cf:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
4069d5:	57                   	push   %edi
4069d6:	bf 08 02 00 00       	mov    $0x208,%edi
4069db:	57                   	push   %edi
4069dc:	6a 00                	push   $0x0
4069de:	50                   	push   %eax
4069df:	e8 8c 8c 02 00       	call   0x42f670
4069e4:	57                   	push   %edi
4069e5:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
4069eb:	6a 00                	push   $0x0
4069ed:	50                   	push   %eax
4069ee:	e8 7d 8c 02 00       	call   0x42f670
4069f3:	83 c4 18             	add    $0x18,%esp
4069f6:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
4069fc:	bf 04 01 00 00       	mov    $0x104,%edi
406a01:	57                   	push   %edi
406a02:	50                   	push   %eax
406a03:	ff 15 c8 b1 44 00    	call   *0x44b1c8
406a09:	85 c0                	test   %eax,%eax
406a0b:	75 35                	jne    0x406a42
406a0d:	ff 15 e8 b0 44 00    	call   *0x44b0e8
406a13:	0f b7 f0             	movzwl %ax,%esi
406a16:	81 ce 00 00 07 80    	or     $0x80070000,%esi
406a1c:	85 c0                	test   %eax,%eax
406a1e:	0f 4e f0             	cmovle %eax,%esi
406a21:	b8 05 40 00 80       	mov    $0x80004005,%eax
406a26:	85 f6                	test   %esi,%esi
406a28:	0f 49 f0             	cmovns %eax,%esi
406a2b:	56                   	push   %esi
406a2c:	68 ae 07 00 00       	push   $0x7ae
406a31:	68 bc cc 44 00       	push   $0x44ccbc
406a36:	e8 98 cd ff ff       	call   0x4037d3
406a3b:	68 c4 d8 44 00       	push   $0x44d8c4
406a40:	eb 68                	jmp    0x406aaa
406a42:	57                   	push   %edi
406a43:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
406a49:	50                   	push   %eax
406a4a:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax