4046f2:	75 07                	jne    0x4046fb
4046f4:	50                   	push   %eax
4046f5:	e8 a4 10 00 00       	call   0x40579e
4046fa:	59                   	pop    %ecx
4046fb:	39 5f fc             	cmp    %ebx,-0x4(%edi)
4046fe:	74 12                	je     0x404712
404700:	8b 47 04             	mov    0x4(%edi),%eax
404703:	3b c3                	cmp    %ebx,%eax
404705:	74 0b                	je     0x404712
404707:	39 18                	cmp    %ebx,(%eax)
404709:	75 07                	jne    0x404712
40470b:	50                   	push   %eax
40470c:	e8 8d 10 00 00       	call   0x40579e
404711:	59                   	pop    %ecx
404712:	83 c7 10             	add    $0x10,%edi
404715:	ff 4d 08             	decl   0x8(%ebp)
404718:	75 c7                	jne    0x4046e1
40471a:	56                   	push   %esi
40471b:	e8 7e 10 00 00       	call   0x40579e
404720:	59                   	pop    %ecx
404721:	5f                   	pop    %edi
404722:	5e                   	pop    %esi
404723:	5b                   	pop    %ebx
404724:	5d                   	pop    %ebp
404725:	c3                   	ret
404726:	8b ff                	mov    %edi,%edi
404728:	55                   	push   %ebp
404729:	8b ec                	mov    %esp,%ebp
40472b:	53                   	push   %ebx
40472c:	56                   	push   %esi
40472d:	8b 35 5c 10 40 00    	mov    0x40105c,%esi
404733:	57                   	push   %edi
404734:	8b 7d 08             	mov    0x8(%ebp),%edi
404737:	57                   	push   %edi
404738:	ff d6                	call   *%esi
40473a:	8b 87 b0 00 00 00    	mov    0xb0(%edi),%eax
404740:	85 c0                	test   %eax,%eax
404742:	74 03                	je     0x404747
404744:	50                   	push   %eax
404745:	ff d6                	call   *%esi
404747:	8b 87 b8 00 00 00    	mov    0xb8(%edi),%eax
40474d:	85 c0                	test   %eax,%eax
40474f:	74 03                	je     0x404754
404751:	50                   	push   %eax
404752:	ff d6                	call   *%esi
404754:	8b 87 b4 00 00 00    	mov    0xb4(%edi),%eax
40475a:	85 c0                	test   %eax,%eax
40475c:	74 03                	je     0x404761
40475e:	50                   	push   %eax
40475f:	ff d6                	call   *%esi
404761:	8b 87 c0 00 00 00    	mov    0xc0(%edi),%eax
404767:	85 c0                	test   %eax,%eax
404769:	74 03                	je     0x40476e
40476b:	50                   	push   %eax
40476c:	ff d6                	call   *%esi
40476e:	8d 5f 50             	lea    0x50(%edi),%ebx
404771:	c7 45 08 06 00 00 00 	movl   $0x6,0x8(%ebp)
404778:	81 7b f8 50 b6 40 00 	cmpl   $0x40b650,-0x8(%ebx)
40477f:	74 09                	je     0x40478a
404781:	8b 03                	mov    (%ebx),%eax
404783:	85 c0                	test   %eax,%eax
404785:	74 03                	je     0x40478a
404787:	50                   	push   %eax
404788:	ff d6                	call   *%esi
40478a:	83 7b fc 00          	cmpl   $0x0,-0x4(%ebx)
40478e:	74 0a                	je     0x40479a
404790:	8b 43 04             	mov    0x4(%ebx),%eax
404793:	85 c0                	test   %eax,%eax
404795:	74 03                	je     0x40479a
404797:	50                   	push   %eax
404798:	ff d6                	call   *%esi
40479a:	83 c3 10             	add    $0x10,%ebx
40479d:	ff 4d 08             	decl   0x8(%ebp)
4047a0:	75 d6                	jne    0x404778
4047a2:	8b 87 d4 00 00 00    	mov    0xd4(%edi),%eax
4047a8:	05 b4 00 00 00       	add    $0xb4,%eax
4047ad:	50                   	push   %eax
4047ae:	ff d6                	call   *%esi
4047b0:	5f                   	pop    %edi
4047b1:	5e                   	pop    %esi
4047b2:	5b                   	pop    %ebx
4047b3:	5d                   	pop    %ebp
4047b4:	c3                   	ret
4047b5:	8b ff                	mov    %edi,%edi
4047b7:	55                   	push   %ebp
4047b8:	8b ec                	mov    %esp,%ebp
4047ba:	57                   	push   %edi
4047bb:	8b 7d 08             	mov    0x8(%ebp),%edi
4047be:	85 ff                	test   %edi,%edi
4047c0:	0f 84 83 00 00 00    	je     0x404849
4047c6:	53                   	push   %ebx
4047c7:	56                   	push   %esi
4047c8:	8b 35 cc 10 40 00    	mov    0x4010cc,%esi
4047ce:	57                   	push   %edi
4047cf:	ff d6                	call   *%esi
4047d1:	8b 87 b0 00 00 00    	mov    0xb0(%edi),%eax
4047d7:	85 c0                	test   %eax,%eax
4047d9:	74 03                	je     0x4047de
4047db:	50                   	push   %eax
4047dc:	ff d6                	call   *%esi
4047de:	8b 87 b8 00 00 00    	mov    0xb8(%edi),%eax
4047e4:	85 c0                	test   %eax,%eax
4047e6:	74 03                	je     0x4047eb
4047e8:	50                   	push   %eax
4047e9:	ff d6                	call   *%esi
4047eb:	8b 87 b4 00 00 00    	mov    0xb4(%edi),%eax
4047f1:	85 c0                	test   %eax,%eax
4047f3:	74 03                	je     0x4047f8
4047f5:	50                   	push   %eax
4047f6:	ff d6                	call   *%esi
4047f8:	8b 87 c0 00 00 00    	mov    0xc0(%edi),%eax
4047fe:	85 c0                	test   %eax,%eax
404800:	74 03                	je     0x404805
404802:	50                   	push   %eax
404803:	ff d6                	call   *%esi
404805:	8d 5f 50             	lea    0x50(%edi),%ebx
404808:	c7 45 08 06 00 00 00 	movl   $0x6,0x8(%ebp)
40480f:	81 7b f8 50 b6 40 00 	cmpl   $0x40b650,-0x8(%ebx)
404816:	74 09                	je     0x404821
404818:	8b 03                	mov    (%ebx),%eax
40481a:	85 c0                	test   %eax,%eax
40481c:	74 03                	je     0x404821
40481e:	50                   	push   %eax
40481f:	ff d6                	call   *%esi
404821:	83 7b fc 00          	cmpl   $0x0,-0x4(%ebx)
404825:	74 0a                	je     0x404831
404827:	8b 43 04             	mov    0x4(%ebx),%eax
40482a:	85 c0                	test   %eax,%eax
40482c:	74 03                	je     0x404831
40482e:	50                   	push   %eax
40482f:	ff d6                	call   *%esi
404831:	83 c3 10             	add    $0x10,%ebx
404834:	ff 4d 08             	decl   0x8(%ebp)
404837:	75 d6                	jne    0x40480f
404839:	8b 87 d4 00 00 00    	mov    0xd4(%edi),%eax
40483f:	05 b4 00 00 00       	add    $0xb4,%eax
404844:	50                   	push   %eax
404845:	ff d6                	call   *%esi
404847:	5e                   	pop    %esi
404848:	5b                   	pop    %ebx
404849:	8b c7                	mov    %edi,%eax
40484b:	5f                   	pop    %edi
40484c:	5d                   	pop    %ebp
40484d:	c3                   	ret
40484e:	85 ff                	test   %edi,%edi
404850:	74 37                	je     0x404889
404852:	85 c0                	test   %eax,%eax
404854:	74 33                	je     0x404889
404856:	56                   	push   %esi
404857:	8b 30                	mov    (%eax),%esi
404859:	3b f7                	cmp    %edi,%esi
40485b:	74 28                	je     0x404885
40485d:	57                   	push   %edi
40485e:	89 38                	mov    %edi,(%eax)
404860:	e8 c1 fe ff ff       	call   0x404726
404865:	59                   	pop    %ecx
404866:	85 f6                	test   %esi,%esi
404868:	74 1b                	je     0x404885
40486a:	56                   	push   %esi
40486b:	e8 45 ff ff ff       	call   0x4047b5
404870:	83 3e 00             	cmpl   $0x0,(%esi)
404873:	59                   	pop    %ecx
404874:	75 0f                	jne    0x404885
404876:	81 fe 58 b6 40 00    	cmp    $0x40b658,%esi
40487c:	74 07                	je     0x404885
40487e:	56                   	push   %esi
40487f:	e8 59 fd ff ff       	call   0x4045dd
404884:	59                   	pop    %ecx
404885:	8b c7                	mov    %edi,%eax
404887:	5e                   	pop    %esi
404888:	c3                   	ret
404889:	33 c0                	xor    %eax,%eax
40488b:	c3                   	ret
40488c:	6a 0c                	push   $0xc
40488e:	68 98 a5 40 00       	push   $0x40a598
404893:	e8 dc f3 ff ff       	call   0x403c74
404898:	e8 ce f0 ff ff       	call   0x40396b
40489d:	8b f0                	mov    %eax,%esi
40489f:	a1 4c b6 40 00       	mov    0x40b64c,%eax
4048a4:	85 46 70             	test   %eax,0x70(%esi)
4048a7:	74 22                	je     0x4048cb
4048a9:	83 7e 6c 00          	cmpl   $0x0,0x6c(%esi)
4048ad:	74 1c                	je     0x4048cb
4048af:	e8 b7 f0 ff ff       	call   0x40396b
4048b4:	8b 70 6c             	mov    0x6c(%eax),%esi
4048b7:	85 f6                	test   %esi,%esi
4048b9:	75 08                	jne    0x4048c3
4048bb:	6a 20                	push   $0x20
4048bd:	e8 75 e1 ff ff       	call   0x402a37
4048c2:	59                   	pop    %ecx
4048c3:	8b c6                	mov    %esi,%eax
4048c5:	e8 ef f3 ff ff       	call   0x403cb9
4048ca:	c3                   	ret
4048cb:	6a 0c                	push   $0xc
4048cd:	e8 39 05 00 00       	call   0x404e0b
4048d2:	59                   	pop    %ecx
4048d3:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4048d7:	8d 46 6c             	lea    0x6c(%esi),%eax
4048da:	8b 3d 30 b7 40 00    	mov    0x40b730,%edi
4048e0:	e8 69 ff ff ff       	call   0x40484e
4048e5:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4048e8:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4048ef:	e8 02 00 00 00       	call   0x4048f6
4048f4:	eb c1                	jmp    0x4048b7
4048f6:	6a 0c                	push   $0xc
4048f8:	e8 34 04 00 00       	call   0x404d31
4048fd:	59                   	pop    %ecx
4048fe:	8b 75 e4             	mov    -0x1c(%ebp),%esi
404901:	c3                   	ret
404902:	8b ff                	mov    %edi,%edi
404904:	55                   	push   %ebp
404905:	8b ec                	mov    %esp,%ebp
404907:	83 ec 18             	sub    $0x18,%esp
40490a:	53                   	push   %ebx
40490b:	ff 75 10             	push   0x10(%ebp)
40490e:	8d 4d e8             	lea    -0x18(%ebp),%ecx
404911:	e8 c0 dd ff ff       	call   0x4026d6
404916:	8b 5d 08             	mov    0x8(%ebp),%ebx
404919:	8d 43 01             	lea    0x1(%ebx),%eax
40491c:	3d 00 01 00 00       	cmp    $0x100,%eax
404921:	77 0f                	ja     0x404932
404923:	8b 45 e8             	mov    -0x18(%ebp),%eax
404926:	8b 80 c8 00 00 00    	mov    0xc8(%eax),%eax
40492c:	0f b7 04 58          	movzwl (%eax,%ebx,2),%eax
404930:	eb 75                	jmp    0x4049a7
404932:	89 5d 08             	mov    %ebx,0x8(%ebp)
404935:	c1 7d 08 08          	sarl   $0x8,0x8(%ebp)
404939:	8d 45 e8             	lea    -0x18(%ebp),%eax
40493c:	50                   	push   %eax
40493d:	8b 45 08             	mov    0x8(%ebp),%eax
404940:	25 ff 00 00 00       	and    $0xff,%eax
404945:	50                   	push   %eax
404946:	e8 e5 29 00 00       	call   0x407330
40494b:	59                   	pop    %ecx
40494c:	59                   	pop    %ecx
40494d:	85 c0                	test   %eax,%eax
40494f:	74 12                	je     0x404963
404951:	8a 45 08             	mov    0x8(%ebp),%al
404954:	6a 02                	push   $0x2
404956:	88 45 f8             	mov    %al,-0x8(%ebp)
404959:	88 5d f9             	mov    %bl,-0x7(%ebp)
40495c:	c6 45 fa 00          	movb   $0x0,-0x6(%ebp)
404960:	59                   	pop    %ecx
404961:	eb 0a                	jmp    0x40496d
404963:	33 c9                	xor    %ecx,%ecx
404965:	88 5d f8             	mov    %bl,-0x8(%ebp)
404968:	c6 45 f9 00          	movb   $0x0,-0x7(%ebp)
40496c:	41                   	inc    %ecx
40496d:	8b 45 e8             	mov    -0x18(%ebp),%eax
404970:	6a 01                	push   $0x1
404972:	ff 70 14             	push   0x14(%eax)
404975:	ff 70 04             	push   0x4(%eax)
404978:	8d 45 fc             	lea    -0x4(%ebp),%eax
40497b:	50                   	push   %eax
40497c:	51                   	push   %ecx
40497d:	8d 45 f8             	lea    -0x8(%ebp),%eax
404980:	50                   	push   %eax
404981:	8d 45 e8             	lea    -0x18(%ebp),%eax
404984:	6a 01                	push   $0x1
404986:	50                   	push   %eax
404987:	e8 d2 25 00 00       	call   0x406f5e
40498c:	83 c4 20             	add    $0x20,%esp
40498f:	85 c0                	test   %eax,%eax
404991:	75 10                	jne    0x4049a3
404993:	38 45 f4             	cmp    %al,-0xc(%ebp)
404996:	74 07                	je     0x40499f
404998:	8b 45 f0             	mov    -0x10(%ebp),%eax
40499b:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
40499f:	33 c0                	xor    %eax,%eax
4049a1:	eb 14                	jmp    0x4049b7
4049a3:	0f b7 45 fc          	movzwl -0x4(%ebp),%eax
4049a7:	23 45 0c             	and    0xc(%ebp),%eax
4049aa:	80 7d f4 00          	cmpb   $0x0,-0xc(%ebp)
4049ae:	74 07                	je     0x4049b7
4049b0:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4049b3:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
4049b7:	5b                   	pop    %ebx
4049b8:	c9                   	leave
4049b9:	c3                   	ret
4049ba:	8b ff                	mov    %edi,%edi
4049bc:	55                   	push   %ebp
4049bd:	8b ec                	mov    %esp,%ebp
4049bf:	8b 45 08             	mov    0x8(%ebp),%eax
4049c2:	a3 20 ce 45 00       	mov    %eax,0x45ce20
4049c7:	5d                   	pop    %ebp
4049c8:	c3                   	ret
4049c9:	8b ff                	mov    %edi,%edi
4049cb:	55                   	push   %ebp
4049cc:	8b ec                	mov    %esp,%ebp
4049ce:	81 ec 28 03 00 00    	sub    $0x328,%esp
4049d4:	a1 04 b0 40 00       	mov    0x40b004,%eax
4049d9:	33 c5                	xor    %ebp,%eax
4049db:	89 45 fc             	mov    %eax,-0x4(%ebp)
4049de:	83 a5 d8 fc ff ff 00 	andl   $0x0,-0x328(%ebp)
4049e5:	53                   	push   %ebx
4049e6:	6a 4c                	push   $0x4c
4049e8:	8d 85 dc fc ff ff    	lea    -0x324(%ebp),%eax
4049ee:	6a 00                	push   $0x0
4049f0:	50                   	push   %eax
4049f1:	e8 2a 1f 00 00       	call   0x406920
4049f6:	8d 85 d8 fc ff ff    	lea    -0x328(%ebp),%eax
4049fc:	89 85 28 fd ff ff    	mov    %eax,-0x2d8(%ebp)
404a02:	8d 85 30 fd ff ff    	lea    -0x2d0(%ebp),%eax
404a08:	83 c4 0c             	add    $0xc,%esp
404a0b:	89 85 2c fd ff ff    	mov    %eax,-0x2d4(%ebp)
404a11:	89 85 e0 fd ff ff    	mov    %eax,-0x220(%ebp)
404a17:	89 8d dc fd ff ff    	mov    %ecx,-0x224(%ebp)
404a1d:	89 95 d8 fd ff ff    	mov    %edx,-0x228(%ebp)
404a23:	89 9d d4 fd ff ff    	mov    %ebx,-0x22c(%ebp)
404a29:	89 b5 d0 fd ff ff    	mov    %esi,-0x230(%ebp)
404a2f:	89 bd cc fd ff ff    	mov    %edi,-0x234(%ebp)
404a35:	66 8c 95 f8 fd ff ff 	data16 mov %ss,-0x208(%ebp)
404a3c:	66 8c 8d ec fd ff ff 	data16 mov %cs,-0x214(%ebp)
404a43:	66 8c 9d c8 fd ff ff 	data16 mov %ds,-0x238(%ebp)
404a4a:	66 8c 85 c4 fd ff ff 	data16 mov %es,-0x23c(%ebp)
404a51:	66 8c a5 c0 fd ff ff 	data16 mov %fs,-0x240(%ebp)
404a58:	66 8c ad bc fd ff ff 	data16 mov %gs,-0x244(%ebp)
404a5f:	9c                   	pushf
404a60:	8f 85 f0 fd ff ff    	pop    -0x210(%ebp)
404a66:	8b 45 04             	mov    0x4(%ebp),%eax
404a69:	8d 4d 04             	lea    0x4(%ebp),%ecx
404a6c:	c7 85 30 fd ff ff 01 	movl   $0x10001,-0x2d0(%ebp)
404a73:	00 01 00
404a76:	89 85 e8 fd ff ff    	mov    %eax,-0x218(%ebp)
404a7c:	89 8d f4 fd ff ff    	mov    %ecx,-0x20c(%ebp)
404a82:	8b 49 fc             	mov    -0x4(%ecx),%ecx
404a85:	89 8d e4 fd ff ff    	mov    %ecx,-0x21c(%ebp)
404a8b:	c7 85 d8 fc ff ff 17 	movl   $0xc0000417,-0x328(%ebp)
404a92:	04 00 c0
404a95:	c7 85 dc fc ff ff 01 	movl   $0x1,-0x324(%ebp)
404a9c:	00 00 00
404a9f:	89 85 e4 fc ff ff    	mov    %eax,-0x31c(%ebp)
404aa5:	ff 15 80 10 40 00    	call   *0x401080
404aab:	6a 00                	push   $0x0
404aad:	8b d8                	mov    %eax,%ebx
404aaf:	ff 15 7c 10 40 00    	call   *0x40107c
404ab5:	8d 85 28 fd ff ff    	lea    -0x2d8(%ebp),%eax
404abb:	50                   	push   %eax
404abc:	ff 15 78 10 40 00    	call   *0x401078
404ac2:	85 c0                	test   %eax,%eax
404ac4:	75 0c                	jne    0x404ad2
404ac6:	85 db                	test   %ebx,%ebx
404ac8:	75 08                	jne    0x404ad2
404aca:	6a 02                	push   $0x2
404acc:	e8 21 f4 ff ff       	call   0x403ef2
404ad1:	59                   	pop    %ecx
404ad2:	68 17 04 00 c0       	push   $0xc0000417
404ad7:	ff 15 74 10 40 00    	call   *0x401074
404add:	50                   	push   %eax
404ade:	ff 15 70 10 40 00    	call   *0x401070