4516a7:	55                   	push   %ebp
4516a8:	83 c4 f4             	add    $0xfffffff4,%esp
4516ab:	8b ea                	mov    %edx,%ebp
4516ad:	8b f8                	mov    %eax,%edi
4516af:	8b 87 2c 03 00 00    	mov    0x32c(%edi),%eax
4516b5:	85 c0                	test   %eax,%eax
4516b7:	74 40                	je     0x4516f9
4516b9:	8b 70 08             	mov    0x8(%eax),%esi
4516bc:	4e                   	dec    %esi
4516bd:	85 f6                	test   %esi,%esi
4516bf:	7c 38                	jl     0x4516f9
4516c1:	46                   	inc    %esi
4516c2:	33 db                	xor    %ebx,%ebx
4516c4:	8b d3                	mov    %ebx,%edx
4516c6:	8b 87 2c 03 00 00    	mov    0x32c(%edi),%eax
4516cc:	e8 9f 64 fc ff       	call   0x417b70
4516d1:	e8 36 05 ff ff       	call   0x441c0c
4516d6:	84 c0                	test   %al,%al
4516d8:	74 1b                	je     0x4516f5
4516da:	8b d3                	mov    %ebx,%edx
4516dc:	8b 87 2c 03 00 00    	mov    0x32c(%edi),%eax
4516e2:	e8 89 64 fc ff       	call   0x417b70
4516e7:	50                   	push   %eax
4516e8:	8b c7                	mov    %edi,%eax
4516ea:	e8 05 e6 ff ff       	call   0x44fcf4
4516ef:	5a                   	pop    %edx
4516f0:	e8 1b 63 fc ff       	call   0x417a10
4516f5:	43                   	inc    %ebx
4516f6:	4e                   	dec    %esi
4516f7:	75 cb                	jne    0x4516c4
4516f9:	83 bf 40 03 00 00 00 	cmpl   $0x0,0x340(%edi)
451700:	74 43                	je     0x451745
451702:	8b 87 40 03 00 00    	mov    0x340(%edi),%eax
451708:	e8 e7 e5 ff ff       	call   0x44fcf4
45170d:	8b d7                	mov    %edi,%edx
45170f:	e8 b8 64 fc ff       	call   0x417bcc
451714:	85 c0                	test   %eax,%eax
451716:	0f 8d 8f 00 00 00    	jge    0x4517ab
45171c:	8b 87 40 03 00 00    	mov    0x340(%edi),%eax
451722:	e8 a5 e5 ff ff       	call   0x44fccc
451727:	8b d7                	mov    %edi,%edx
451729:	e8 9e 64 fc ff       	call   0x417bcc
45172e:	40                   	inc    %eax
45172f:	7e 7a                	jle    0x4517ab
451731:	8b 87 40 03 00 00    	mov    0x340(%edi),%eax
451737:	e8 b8 e5 ff ff       	call   0x44fcf4
45173c:	8b d7                	mov    %edi,%edx
45173e:	e8 cd 62 fc ff       	call   0x417a10
451743:	eb 66                	jmp    0x4517ab
451745:	8b c7                	mov    %edi,%eax
451747:	66 be a8 ff          	mov    $0xffa8,%si
45174b:	e8 a0 23 fb ff       	call   0x403af0
451750:	8b d8                	mov    %eax,%ebx
451752:	85 db                	test   %ebx,%ebx
451754:	74 4d                	je     0x4517a3
451756:	a1 80 15 47 00       	mov    0x471580,%eax
45175b:	3b 58 30             	cmp    0x30(%eax),%ebx
45175e:	74 43                	je     0x4517a3
451760:	8b d7                	mov    %edi,%edx
451762:	a1 80 15 47 00       	mov    0x471580,%eax
451767:	e8 90 61 00 00       	call   0x4578fc
45176c:	89 04 24             	mov    %eax,(%esp)
45176f:	8b 87 b4 01 00 00    	mov    0x1b4(%edi),%eax
451775:	89 44 24 04          	mov    %eax,0x4(%esp)
451779:	83 bf 44 03 00 00 00 	cmpl   $0x0,0x344(%edi)
451780:	0f 95 c0             	setne  %al
451783:	88 44 24 08          	mov    %al,0x8(%esp)
451787:	a1 80 15 47 00       	mov    0x471580,%eax
45178c:	8b 80 c8 00 00 00    	mov    0xc8(%eax),%eax
451792:	50                   	push   %eax
451793:	8d 44 24 04          	lea    0x4(%esp),%eax
451797:	50                   	push   %eax
451798:	68 48 b0 00 00       	push   $0xb048
45179d:	53                   	push   %ebx
45179e:	e8 ad 59 fb ff       	call   0x407150
4517a3:	33 c0                	xor    %eax,%eax
4517a5:	89 87 44 03 00 00    	mov    %eax,0x344(%edi)
4517ab:	a1 98 d5 46 00       	mov    0x46d598,%eax
4517b0:	80 38 00             	cmpb   $0x0,(%eax)
4517b3:	74 16                	je     0x4517cb
4517b5:	6a 00                	push   $0x0
4517b7:	6a 01                	push   $0x1
4517b9:	68 80 00 00 00       	push   $0x80
4517be:	8b c7                	mov    %edi,%eax
4517c0:	e8 eb 00 ff ff       	call   0x4418b0
4517c5:	50                   	push   %eax
4517c6:	e8 85 59 fb ff       	call   0x407150
4517cb:	83 bf 90 02 00 00 00 	cmpl   $0x0,0x290(%edi)
4517d2:	74 25                	je     0x4517f9
4517d4:	80 bf 77 02 00 00 01 	cmpb   $0x1,0x277(%edi)
4517db:	74 1c                	je     0x4517f9
4517dd:	6a 00                	push   $0x0
4517df:	8b c7                	mov    %edi,%eax
4517e1:	e8 ca 00 ff ff       	call   0x4418b0
4517e6:	50                   	push   %eax
4517e7:	e8 ac 59 fb ff       	call   0x407198
4517ec:	33 d2                	xor    %edx,%edx
4517ee:	8b 87 90 02 00 00    	mov    0x290(%edi),%eax
4517f4:	e8 a7 17 fe ff       	call   0x432fa0
4517f9:	8b d5                	mov    %ebp,%edx
4517fb:	8b c7                	mov    %edi,%eax
4517fd:	e8 6a f2 fe ff       	call   0x440a6c
451802:	83 c4 0c             	add    $0xc,%esp
451805:	5d                   	pop    %ebp
451806:	5f                   	pop    %edi
451807:	5e                   	pop    %esi
451808:	5b                   	pop    %ebx
451809:	c3                   	ret
45180a:	8b c0                	mov    %eax,%eax
45180c:	53                   	push   %ebx
45180d:	56                   	push   %esi
45180e:	8b f2                	mov    %edx,%esi
451810:	8b d8                	mov    %eax,%ebx
451812:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
451816:	75 1c                	jne    0x451834
451818:	83 bb 90 02 00 00 00 	cmpl   $0x0,0x290(%ebx)
45181f:	74 13                	je     0x451834
451821:	0f b7 56 04          	movzwl 0x4(%esi),%edx
451825:	8b 83 90 02 00 00    	mov    0x290(%ebx),%eax
45182b:	e8 6c 0f fe ff       	call   0x43279c
451830:	84 c0                	test   %al,%al
451832:	75 09                	jne    0x45183d
451834:	8b d6                	mov    %esi,%edx
451836:	8b c3                	mov    %ebx,%eax
451838:	e8 43 e1 fe ff       	call   0x43f980
45183d:	5e                   	pop    %esi
45183e:	5b                   	pop    %ebx
45183f:	c3                   	ret
451840:	8b 88 90 02 00 00    	mov    0x290(%eax),%ecx
451846:	85 c9                	test   %ecx,%ecx
451848:	74 0a                	je     0x451854
45184a:	8b 52 04             	mov    0x4(%edx),%edx
45184d:	8b c1                	mov    %ecx,%eax
45184f:	e8 64 0f fe ff       	call   0x4327b8
451854:	c3                   	ret
451855:	8d 40 00             	lea    0x0(%eax),%eax
451858:	53                   	push   %ebx
451859:	56                   	push   %esi
45185a:	8b f2                	mov    %edx,%esi
45185c:	8b d8                	mov    %eax,%ebx
45185e:	8b 83 90 02 00 00    	mov    0x290(%ebx),%eax
451864:	85 c0                	test   %eax,%eax
451866:	74 19                	je     0x451881
451868:	8b d6                	mov    %esi,%edx
45186a:	e8 fd 19 fe ff       	call   0x43326c
45186f:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
451873:	75 15                	jne    0x45188a
451875:	8b d6                	mov    %esi,%edx
451877:	8b c3                	mov    %ebx,%eax
451879:	8b 08                	mov    (%eax),%ecx
45187b:	ff 51 f0             	call   *-0x10(%ecx)
45187e:	5e                   	pop    %esi
45187f:	5b                   	pop    %ebx
451880:	c3                   	ret
451881:	8b d6                	mov    %esi,%edx
451883:	8b c3                	mov    %ebx,%eax
451885:	8b 08                	mov    (%eax),%ecx
451887:	ff 51 f0             	call   *-0x10(%ecx)
45188a:	5e                   	pop    %esi
45188b:	5b                   	pop    %ebx
45188c:	c3                   	ret
45188d:	8d 40 00             	lea    0x0(%eax),%eax
451890:	55                   	push   %ebp
451891:	8b ec                	mov    %esp,%ebp
451893:	6a 00                	push   $0x0
451895:	53                   	push   %ebx
451896:	56                   	push   %esi
451897:	57                   	push   %edi
451898:	8b f8                	mov    %eax,%edi
45189a:	33 c0                	xor    %eax,%eax
45189c:	55                   	push   %ebp
45189d:	68 2b 19 45 00       	push   $0x45192b
4518a2:	64 ff 30             	push   %fs:(%eax)
4518a5:	64 89 20             	mov    %esp,%fs:(%eax)
4518a8:	83 bf 90 02 00 00 00 	cmpl   $0x0,0x290(%edi)
4518af:	74 64                	je     0x451915
4518b1:	33 f6                	xor    %esi,%esi
4518b3:	66 81 7a 06 ff ff    	cmpw   $0xffff,0x6(%edx)
4518b9:	75 07                	jne    0x4518c2
4518bb:	66 83 7a 04 00       	cmpw   $0x0,0x4(%edx)
4518c0:	74 29                	je     0x4518eb
4518c2:	33 db                	xor    %ebx,%ebx
4518c4:	0f b7 42 04          	movzwl 0x4(%edx),%eax
4518c8:	f6 42 06 10          	testb  $0x10,0x6(%edx)
4518cc:	74 0c                	je     0x4518da
4518ce:	b3 01                	mov    $0x1,%bl
4518d0:	50                   	push   %eax
4518d1:	8b 42 08             	mov    0x8(%edx),%eax
4518d4:	50                   	push   %eax
4518d5:	e8 b6 56 fb ff       	call   0x406f90
4518da:	8b cb                	mov    %ebx,%ecx
4518dc:	8b d0                	mov    %eax,%edx
4518de:	8b 87 90 02 00 00    	mov    0x290(%edi),%eax
4518e4:	e8 13 0e fe ff       	call   0x4326fc
4518e9:	8b f0                	mov    %eax,%esi
4518eb:	85 f6                	test   %esi,%esi
4518ed:	74 1a                	je     0x451909
4518ef:	8d 55 fc             	lea    -0x4(%ebp),%edx
4518f2:	8b 46 58             	mov    0x58(%esi),%eax
4518f5:	e8 b6 52 fe ff       	call   0x436bb0
4518fa:	8b 55 fc             	mov    -0x4(%ebp),%edx
4518fd:	a1 80 15 47 00       	mov    0x471580,%eax
451902:	e8 ed 55 00 00       	call   0x456ef4
451907:	eb 0c                	jmp    0x451915
451909:	33 d2                	xor    %edx,%edx
45190b:	a1 80 15 47 00       	mov    0x471580,%eax
451910:	e8 df 55 00 00       	call   0x456ef4
451915:	33 c0                	xor    %eax,%eax
451917:	5a                   	pop    %edx
451918:	59                   	pop    %ecx
451919:	59                   	pop    %ecx
45191a:	64 89 10             	mov    %edx,%fs:(%eax)
45191d:	68 32 19 45 00       	push   $0x451932
451922:	8d 45 fc             	lea    -0x4(%ebp),%eax
451925:	e8 f6 2d fb ff       	call   0x404720
45192a:	c3                   	ret
45192b:	e9 58 27 fb ff       	jmp    0x404088
451930:	eb f0                	jmp    0x451922
451932:	5f                   	pop    %edi
451933:	5e                   	pop    %esi
451934:	5b                   	pop    %ebx
451935:	59                   	pop    %ecx
451936:	5d                   	pop    %ebp
451937:	c3                   	ret
451938:	80 b8 77 02 00 00 02 	cmpb   $0x2,0x277(%eax)
45193f:	75 06                	jne    0x451947
451941:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
451945:	74 0d                	je     0x451954
451947:	66 83 7a 04 00       	cmpw   $0x0,0x4(%edx)
45194c:	0f 95 c2             	setne  %dl
45194f:	e8 80 f6 ff ff       	call   0x450fd4
451954:	c3                   	ret
451955:	8d 40 00             	lea    0x0(%eax),%eax
451958:	53                   	push   %ebx
451959:	8b d8                	mov    %eax,%ebx
45195b:	f6 43 1c 10          	testb  $0x10,0x1c(%ebx)
45195f:	75 0c                	jne    0x45196d
451961:	f6 43 55 20          	testb  $0x20,0x55(%ebx)
451965:	75 06                	jne    0x45196d
451967:	88 93 73 02 00 00    	mov    %dl,0x273(%ebx)
45196d:	80 fa 01             	cmp    $0x1,%dl
451970:	74 07                	je     0x451979
451972:	8b c3                	mov    %ebx,%eax
451974:	8b 10                	mov    (%eax),%edx
451976:	ff 52 5c             	call   *0x5c(%edx)
451979:	83 bb ac 02 00 00 00 	cmpl   $0x0,0x2ac(%ebx)
451980:	74 0b                	je     0x45198d
451982:	8b 83 ac 02 00 00    	mov    0x2ac(%ebx),%eax
451988:	8b 10                	mov    (%eax),%edx
45198a:	ff 52 10             	call   *0x10(%edx)
45198d:	5b                   	pop    %ebx
45198e:	c3                   	ret
45198f:	90                   	nop
451990:	e8 4b 0e 00 00       	call   0x4527e0
451995:	c3                   	ret
451996:	8b c0                	mov    %eax,%eax
451998:	53                   	push   %ebx
451999:	56                   	push   %esi
45199a:	8b f2                	mov    %edx,%esi
45199c:	8b d8                	mov    %eax,%ebx
45199e:	8b c3                	mov    %ebx,%eax
4519a0:	8b 10                	mov    (%eax),%edx
4519a2:	ff 92 f4 00 00 00    	call   *0xf4(%edx)
4519a8:	83 e0 7f             	and    $0x7f,%eax
4519ab:	89 46 0c             	mov    %eax,0xc(%esi)
4519ae:	5e                   	pop    %esi
4519af:	5b                   	pop    %ebx
4519b0:	c3                   	ret
4519b1:	8d 40 00             	lea    0x0(%eax),%eax
4519b4:	53                   	push   %ebx
4519b5:	56                   	push   %esi
4519b6:	8b da                	mov    %edx,%ebx
4519b8:	33 d2                	xor    %edx,%edx
4519ba:	89 53 0c             	mov    %edx,0xc(%ebx)
4519bd:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
4519c1:	75 1e                	jne    0x4519e1
4519c3:	80 b8 77 02 00 00 01 	cmpb   $0x1,0x277(%eax)
4519ca:	74 15                	je     0x4519e1
4519cc:	83 b8 90 02 00 00 00 	cmpl   $0x0,0x290(%eax)
4519d3:	74 0c                	je     0x4519e1
4519d5:	8b 90 90 02 00 00    	mov    0x290(%eax),%edx
4519db:	80 7a 5c 00          	cmpb   $0x0,0x5c(%edx)
4519df:	74 26                	je     0x451a07
4519e1:	8b 73 08             	mov    0x8(%ebx),%esi
4519e4:	33 d2                	xor    %edx,%edx
4519e6:	e8 4d f6 ff ff       	call   0x451038
4519eb:	0f b7 4e 08          	movzwl 0x8(%esi),%ecx
4519ef:	8b 56 04             	mov    0x4(%esi),%edx
4519f2:	b8 17 b0 00 00       	mov    $0xb017,%eax
4519f7:	e8 8c 4f fe ff       	call   0x436988
4519fc:	85 c0                	test   %eax,%eax
4519fe:	74 07                	je     0x451a07
451a00:	c7 43 0c 01 00 00 00 	movl   $0x1,0xc(%ebx)
451a07:	5e                   	pop    %esi
451a08:	5b                   	pop    %ebx
451a09:	c3                   	ret
451a0a:	8b c0                	mov    %eax,%eax
451a0c:	53                   	push   %ebx
451a0d:	56                   	push   %esi
451a0e:	8b f2                	mov    %edx,%esi
451a10:	8b d8                	mov    %eax,%ebx
451a12:	8b 46 04             	mov    0x4(%esi),%eax
451a15:	25 f0 ff 00 00       	and    $0xfff0,%eax
451a1a:	3d 20 f0 00 00       	cmp    $0xf020,%eax
451a1f:	75 18                	jne    0x451a39
451a21:	a1 80 15 47 00       	mov    0x471580,%eax
451a26:	3b 58 44             	cmp    0x44(%eax),%ebx
451a29:	75 0e                	jne    0x451a39
451a2b:	8b d6                	mov    %esi,%edx
451a2d:	a1 80 15 47 00       	mov    0x471580,%eax
451a32:	e8 39 3b 00 00       	call   0x455570
451a37:	eb 2d                	jmp    0x451a66
451a39:	8b 46 04             	mov    0x4(%esi),%eax
451a3c:	25 f0 ff 00 00       	and    $0xfff0,%eax
451a41:	3d 10 f0 00 00       	cmp    $0xf010,%eax
451a46:	75 15                	jne    0x451a5d
451a48:	f6 43 1c 10          	testb  $0x10,0x1c(%ebx)
451a4c:	75 0f                	jne    0x451a5d
451a4e:	80 7b 5b 00          	cmpb   $0x0,0x5b(%ebx)
451a52:	74 09                	je     0x451a5d
451a54:	80 bb 73 02 00 00 01 	cmpb   $0x1,0x273(%ebx)
451a5b:	75 09                	jne    0x451a66
451a5d:	8b d6                	mov    %esi,%edx
451a5f:	8b c3                	mov    %ebx,%eax
451a61:	e8 e6 ee fe ff       	call   0x44094c
451a66:	8b 46 04             	mov    0x4(%esi),%eax
451a69:	25 f0 ff 00 00       	and    $0xfff0,%eax
451a6e:	3d 20 f0 00 00       	cmp    $0xf020,%eax
451a73:	74 07                	je     0x451a7c
451a75:	3d 20 f1 00 00       	cmp    $0xf120,%eax
451a7a:	75 13                	jne    0x451a8f
451a7c:	f6 43 1c 10          	testb  $0x10,0x1c(%ebx)
451a80:	75 0d                	jne    0x451a8f
451a82:	80 7b 5b 00          	cmpb   $0x0,0x5b(%ebx)
451a86:	74 07                	je     0x451a8f
451a88:	8b c3                	mov    %ebx,%eax
451a8a:	8b 10                	mov    (%eax),%edx
451a8c:	ff 52 5c             	call   *0x5c(%edx)
451a8f:	5e                   	pop    %esi
451a90:	5b                   	pop    %ebx
451a91:	c3                   	ret
451a92:	8b c0                	mov    %eax,%eax
451a94:	53                   	push   %ebx
451a95:	56                   	push   %esi
451a96:	8b f2                	mov    %edx,%esi
451a98:	8b d8                	mov    %eax,%ebx
451a9a:	8b 46 08             	mov    0x8(%esi),%eax
451a9d:	48                   	dec    %eax
451a9e:	74 07                	je     0x451aa7
451aa0:	83 e8 02             	sub    $0x2,%eax