428920:	50                   	push   %eax
428921:	8b 45 fc             	mov    -0x4(%ebp),%eax
428924:	50                   	push   %eax
428925:	57                   	push   %edi
428926:	e8 0d e2 fd ff       	call   0x406b38
42892b:	68 46 00 66 00       	push   $0x660046
428930:	56                   	push   %esi
428931:	53                   	push   %ebx
428932:	6a 00                	push   $0x0
428934:	6a 00                	push   $0x0
428936:	8b 45 f0             	mov    -0x10(%ebp),%eax
428939:	50                   	push   %eax
42893a:	8b 45 28             	mov    0x28(%ebp),%eax
42893d:	50                   	push   %eax
42893e:	8b 45 2c             	mov    0x2c(%ebp),%eax
428941:	50                   	push   %eax
428942:	8b 45 f8             	mov    -0x8(%ebp),%eax
428945:	50                   	push   %eax
428946:	8b 45 fc             	mov    -0x4(%ebp),%eax
428949:	50                   	push   %eax
42894a:	57                   	push   %edi
42894b:	e8 e8 e1 fd ff       	call   0x406b38
428950:	8b 45 e4             	mov    -0x1c(%ebp),%eax
428953:	50                   	push   %eax
428954:	57                   	push   %edi
428955:	e8 c6 e1 fd ff       	call   0x406b20
42895a:	8b 45 e0             	mov    -0x20(%ebp),%eax
42895d:	50                   	push   %eax
42895e:	57                   	push   %edi
42895f:	e8 84 e1 fd ff       	call   0x406ae8
428964:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
428968:	74 0d                	je     0x428977
42896a:	8b 45 e8             	mov    -0x18(%ebp),%eax
42896d:	50                   	push   %eax
42896e:	8b 45 f0             	mov    -0x10(%ebp),%eax
428971:	50                   	push   %eax
428972:	e8 61 e1 fd ff       	call   0x406ad8
428977:	8b 45 ec             	mov    -0x14(%ebp),%eax
42897a:	50                   	push   %eax
42897b:	e8 78 e0 fd ff       	call   0x4069f8
428980:	33 c0                	xor    %eax,%eax
428982:	5a                   	pop    %edx
428983:	59                   	pop    %ecx
428984:	59                   	pop    %ecx
428985:	64 89 10             	mov    %edx,%fs:(%eax)
428988:	68 b3 89 42 00       	push   $0x4289b3
42898d:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
428991:	74 0f                	je     0x4289a2
428993:	6a 00                	push   $0x0
428995:	8b 45 dc             	mov    -0x24(%ebp),%eax
428998:	50                   	push   %eax
428999:	8b 45 f0             	mov    -0x10(%ebp),%eax
42899c:	50                   	push   %eax
42899d:	e8 3e e1 fd ff       	call   0x406ae0
4289a2:	8b 45 f0             	mov    -0x10(%ebp),%eax
4289a5:	50                   	push   %eax
4289a6:	e8 45 e0 fd ff       	call   0x4069f0
4289ab:	c3                   	ret
4289ac:	e9 b7 b1 fd ff       	jmp    0x403b68
4289b1:	eb da                	jmp    0x42898d
4289b3:	8a 45 f7             	mov    -0x9(%ebp),%al
4289b6:	5f                   	pop    %edi
4289b7:	5e                   	pop    %esi
4289b8:	5b                   	pop    %ebx
4289b9:	8b e5                	mov    %ebp,%esp
4289bb:	5d                   	pop    %ebp
4289bc:	c2 28 00             	ret    $0x28
4289bf:	90                   	nop
4289c0:	53                   	push   %ebx
4289c1:	56                   	push   %esi
4289c2:	57                   	push   %edi
4289c3:	8b f0                	mov    %eax,%esi
4289c5:	8b fe                	mov    %esi,%edi
4289c7:	ba ff 00 00 00       	mov    $0xff,%edx
4289cc:	8d 04 97             	lea    (%edi,%edx,4),%eax
4289cf:	8d 0c 52             	lea    (%edx,%edx,2),%ecx
4289d2:	8d 0c 0e             	lea    (%esi,%ecx,1),%ecx
4289d5:	8a 59 02             	mov    0x2(%ecx),%bl
4289d8:	88 58 02             	mov    %bl,0x2(%eax)
4289db:	8a 59 01             	mov    0x1(%ecx),%bl
4289de:	88 58 01             	mov    %bl,0x1(%eax)
4289e1:	8a 09                	mov    (%ecx),%cl
4289e3:	88 08                	mov    %cl,(%eax)
4289e5:	c6 40 03 00          	movb   $0x0,0x3(%eax)
4289e9:	4a                   	dec    %edx
4289ea:	85 d2                	test   %edx,%edx
4289ec:	75 de                	jne    0x4289cc
4289ee:	c6 47 03 00          	movb   $0x0,0x3(%edi)
4289f2:	5f                   	pop    %edi
4289f3:	5e                   	pop    %esi
4289f4:	5b                   	pop    %ebx
4289f5:	c3                   	ret
4289f6:	8b c0                	mov    %eax,%eax
4289f8:	53                   	push   %ebx
4289f9:	56                   	push   %esi
4289fa:	57                   	push   %edi
4289fb:	83 c4 f8             	add    $0xfffffff8,%esp
4289fe:	89 14 24             	mov    %edx,(%esp)
428a01:	8b f0                	mov    %eax,%esi
428a03:	89 74 24 04          	mov    %esi,0x4(%esp)
428a07:	8b 3c 24             	mov    (%esp),%edi
428a0a:	8b 3f                	mov    (%edi),%edi
428a0c:	4f                   	dec    %edi
428a0d:	85 ff                	test   %edi,%edi
428a0f:	7e 26                	jle    0x428a37
428a11:	b9 01 00 00 00       	mov    $0x1,%ecx
428a16:	8b 44 24 04          	mov    0x4(%esp),%eax
428a1a:	8d 04 88             	lea    (%eax,%ecx,4),%eax
428a1d:	8d 14 49             	lea    (%ecx,%ecx,2),%edx
428a20:	8d 14 16             	lea    (%esi,%edx,1),%edx
428a23:	8a 58 02             	mov    0x2(%eax),%bl
428a26:	88 5a 02             	mov    %bl,0x2(%edx)
428a29:	8a 58 01             	mov    0x1(%eax),%bl
428a2c:	88 5a 01             	mov    %bl,0x1(%edx)
428a2f:	8a 00                	mov    (%eax),%al
428a31:	88 02                	mov    %al,(%edx)
428a33:	41                   	inc    %ecx
428a34:	4f                   	dec    %edi
428a35:	75 df                	jne    0x428a16
428a37:	8b 04 24             	mov    (%esp),%eax
428a3a:	81 38 00 01 00 00    	cmpl   $0x100,(%eax)
428a40:	7d 28                	jge    0x428a6a
428a42:	8b 04 24             	mov    (%esp),%eax
428a45:	ba 00 01 00 00       	mov    $0x100,%edx
428a4a:	2b 10                	sub    (%eax),%edx
428a4c:	8d 14 52             	lea    (%edx,%edx,2),%edx
428a4f:	8b 04 24             	mov    (%esp),%eax
428a52:	8b 00                	mov    (%eax),%eax
428a54:	8d 04 40             	lea    (%eax,%eax,2),%eax
428a57:	8d 04 06             	lea    (%esi,%eax,1),%eax
428a5a:	33 c9                	xor    %ecx,%ecx
428a5c:	e8 0b a3 fd ff       	call   0x402d6c
428a61:	8b 04 24             	mov    (%esp),%eax
428a64:	c7 00 00 01 00 00    	movl   $0x100,(%eax)
428a6a:	59                   	pop    %ecx
428a6b:	5a                   	pop    %edx
428a6c:	5f                   	pop    %edi
428a6d:	5e                   	pop    %esi
428a6e:	5b                   	pop    %ebx
428a6f:	c3                   	ret
428a70:	55                   	push   %ebp
428a71:	8b ec                	mov    %esp,%ebp
428a73:	83 c4 d4             	add    $0xffffffd4,%esp
428a76:	89 55 f8             	mov    %edx,-0x8(%ebp)
428a79:	89 45 fc             	mov    %eax,-0x4(%ebp)
428a7c:	8d 45 d4             	lea    -0x2c(%ebp),%eax
428a7f:	50                   	push   %eax
428a80:	e8 9b dd fd ff       	call   0x406820
428a85:	8b 55 fc             	mov    -0x4(%ebp),%edx
428a88:	8b 4d f8             	mov    -0x8(%ebp),%ecx
428a8b:	49                   	dec    %ecx
428a8c:	78 33                	js     0x428ac1
428a8e:	8d 45 d4             	lea    -0x2c(%ebp),%eax
428a91:	66 83 78 20 03       	cmpw   $0x3,0x20(%eax)
428a96:	74 10                	je     0x428aa8
428a98:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
428a9b:	0f c8                	bswap  %eax
428a9d:	c1 e8 08             	shr    $0x8,%eax
428aa0:	89 04 8a             	mov    %eax,(%edx,%ecx,4)
428aa3:	49                   	dec    %ecx
428aa4:	79 f2                	jns    0x428a98
428aa6:	eb 19                	jmp    0x428ac1
428aa8:	53                   	push   %ebx
428aa9:	31 db                	xor    %ebx,%ebx
428aab:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
428aae:	88 c7                	mov    %al,%bh
428ab0:	88 e3                	mov    %ah,%bl
428ab2:	c1 e8 10             	shr    $0x10,%eax
428ab5:	c1 e3 08             	shl    $0x8,%ebx
428ab8:	88 c3                	mov    %al,%bl
428aba:	89 1c 8a             	mov    %ebx,(%edx,%ecx,4)
428abd:	49                   	dec    %ecx
428abe:	79 e9                	jns    0x428aa9
428ac0:	5b                   	pop    %ebx
428ac1:	8b e5                	mov    %ebp,%esp
428ac3:	5d                   	pop    %ebp
428ac4:	c3                   	ret
428ac5:	8d 40 00             	lea    0x0(%eax),%eax
428ac8:	55                   	push   %ebp
428ac9:	8b ec                	mov    %esp,%ebp
428acb:	81 c4 f8 fb ff ff    	add    $0xfffffbf8,%esp
428ad1:	53                   	push   %ebx
428ad2:	66 c7 85 f8 fb ff ff 	movw   $0x300,-0x408(%ebp)
428ad9:	00 03
428adb:	66 c7 85 fa fb ff ff 	movw   $0x10,-0x406(%ebp)
428ae2:	10 00
428ae4:	8d 95 fc fb ff ff    	lea    -0x404(%ebp),%edx
428aea:	b9 40 00 00 00       	mov    $0x40,%ecx
428aef:	e8 80 9e fd ff       	call   0x402974
428af4:	6a 00                	push   $0x0
428af6:	e8 cd e1 fd ff       	call   0x406cc8
428afb:	89 45 fc             	mov    %eax,-0x4(%ebp)
428afe:	33 c0                	xor    %eax,%eax
428b00:	55                   	push   %ebp
428b01:	68 c5 8b 42 00       	push   $0x428bc5
428b06:	64 ff 30             	push   %fs:(%eax)
428b09:	64 89 20             	mov    %esp,%fs:(%eax)
428b0c:	6a 68                	push   $0x68
428b0e:	8b 45 fc             	mov    -0x4(%ebp),%eax
428b11:	50                   	push   %eax
428b12:	e8 29 df fd ff       	call   0x406a40
428b17:	8b d8                	mov    %eax,%ebx
428b19:	83 fb 10             	cmp    $0x10,%ebx
428b1c:	0f 8c 8a 00 00 00    	jl     0x428bac
428b22:	8d 85 fc fb ff ff    	lea    -0x404(%ebp),%eax
428b28:	50                   	push   %eax
428b29:	6a 08                	push   $0x8
428b2b:	6a 00                	push   $0x0
428b2d:	8b 45 fc             	mov    -0x4(%ebp),%eax
428b30:	50                   	push   %eax
428b31:	e8 32 df fd ff       	call   0x406a68
428b36:	81 bd 18 fc ff ff c0 	cmpl   $0xc0c0c0,-0x3e8(%ebp)
428b3d:	c0 c0 00
428b40:	75 4c                	jne    0x428b8e
428b42:	8d 85 18 fc ff ff    	lea    -0x3e8(%ebp),%eax
428b48:	50                   	push   %eax
428b49:	6a 01                	push   $0x1
428b4b:	8b c3                	mov    %ebx,%eax
428b4d:	83 e8 08             	sub    $0x8,%eax
428b50:	50                   	push   %eax
428b51:	8b 45 fc             	mov    -0x4(%ebp),%eax
428b54:	50                   	push   %eax
428b55:	e8 0e df fd ff       	call   0x406a68
428b5a:	0f b7 85 fa fb ff ff 	movzwl -0x406(%ebp),%eax
428b61:	8d 84 85 e0 fb ff ff 	lea    -0x420(%ebp,%eax,4),%eax
428b68:	50                   	push   %eax
428b69:	6a 07                	push   $0x7
428b6b:	83 eb 07             	sub    $0x7,%ebx
428b6e:	53                   	push   %ebx
428b6f:	8b 45 fc             	mov    -0x4(%ebp),%eax
428b72:	50                   	push   %eax
428b73:	e8 f0 de fd ff       	call   0x406a68
428b78:	8d 85 1c fc ff ff    	lea    -0x3e4(%ebp),%eax
428b7e:	50                   	push   %eax
428b7f:	6a 01                	push   $0x1
428b81:	6a 07                	push   $0x7
428b83:	8b 45 fc             	mov    -0x4(%ebp),%eax
428b86:	50                   	push   %eax
428b87:	e8 dc de fd ff       	call   0x406a68
428b8c:	eb 1e                	jmp    0x428bac
428b8e:	0f b7 85 fa fb ff ff 	movzwl -0x406(%ebp),%eax
428b95:	8d 84 85 dc fb ff ff 	lea    -0x424(%ebp,%eax,4),%eax
428b9c:	50                   	push   %eax
428b9d:	6a 08                	push   $0x8
428b9f:	83 eb 08             	sub    $0x8,%ebx
428ba2:	53                   	push   %ebx
428ba3:	8b 45 fc             	mov    -0x4(%ebp),%eax
428ba6:	50                   	push   %eax
428ba7:	e8 bc de fd ff       	call   0x406a68
428bac:	33 c0                	xor    %eax,%eax
428bae:	5a                   	pop    %edx
428baf:	59                   	pop    %ecx
428bb0:	59                   	pop    %ecx
428bb1:	64 89 10             	mov    %edx,%fs:(%eax)
428bb4:	68 cc 8b 42 00       	push   $0x428bcc
428bb9:	8b 45 fc             	mov    -0x4(%ebp),%eax
428bbc:	50                   	push   %eax
428bbd:	6a 00                	push   $0x0
428bbf:	e8 54 e3 fd ff       	call   0x406f18
428bc4:	c3                   	ret
428bc5:	e9 9e af fd ff       	jmp    0x403b68
428bca:	eb ed                	jmp    0x428bb9
428bcc:	8d 85 f8 fb ff ff    	lea    -0x408(%ebp),%eax
428bd2:	50                   	push   %eax
428bd3:	e8 00 de fd ff       	call   0x4069d8
428bd8:	5b                   	pop    %ebx
428bd9:	8b e5                	mov    %ebp,%esp
428bdb:	5d                   	pop    %ebp
428bdc:	c3                   	ret
428bdd:	8d 40 00             	lea    0x0(%eax),%eax
428be0:	55                   	push   %ebp
428be1:	8b ec                	mov    %esp,%ebp
428be3:	83 c4 f8             	add    $0xfffffff8,%esp
428be6:	53                   	push   %ebx
428be7:	8b d8                	mov    %eax,%ebx
428be9:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
428bed:	83 3d 90 c8 49 00 00 	cmpl   $0x0,0x49c890
428bf4:	74 77                	je     0x428c6d
428bf6:	6a 00                	push   $0x0
428bf8:	e8 cb e0 fd ff       	call   0x406cc8
428bfd:	89 45 f8             	mov    %eax,-0x8(%ebp)
428c00:	33 d2                	xor    %edx,%edx
428c02:	55                   	push   %ebp
428c03:	68 66 8c 42 00       	push   $0x428c66
428c08:	64 ff 32             	push   %fs:(%edx)
428c0b:	64 89 22             	mov    %esp,%fs:(%edx)
428c0e:	6a 68                	push   $0x68
428c10:	8b 45 f8             	mov    -0x8(%ebp),%eax
428c13:	50                   	push   %eax
428c14:	e8 27 de fd ff       	call   0x406a40
428c19:	83 f8 10             	cmp    $0x10,%eax
428c1c:	7c 2f                	jl     0x428c4d
428c1e:	8d 43 04             	lea    0x4(%ebx),%eax
428c21:	50                   	push   %eax
428c22:	6a 08                	push   $0x8
428c24:	6a 00                	push   $0x0
428c26:	a1 90 c8 49 00       	mov    0x49c890,%eax
428c2b:	50                   	push   %eax
428c2c:	e8 1f de fd ff       	call   0x406a50
428c31:	0f b7 43 02          	movzwl 0x2(%ebx),%eax
428c35:	8d 44 83 e4          	lea    -0x1c(%ebx,%eax,4),%eax
428c39:	50                   	push   %eax
428c3a:	6a 08                	push   $0x8
428c3c:	6a 08                	push   $0x8
428c3e:	a1 90 c8 49 00       	mov    0x49c890,%eax
428c43:	50                   	push   %eax
428c44:	e8 07 de fd ff       	call   0x406a50
428c49:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
428c4d:	33 c0                	xor    %eax,%eax
428c4f:	5a                   	pop    %edx
428c50:	59                   	pop    %ecx
428c51:	59                   	pop    %ecx
428c52:	64 89 10             	mov    %edx,%fs:(%eax)
428c55:	68 6d 8c 42 00       	push   $0x428c6d
428c5a:	8b 45 f8             	mov    -0x8(%ebp),%eax
428c5d:	50                   	push   %eax
428c5e:	6a 00                	push   $0x0
428c60:	e8 b3 e2 fd ff       	call   0x406f18
428c65:	c3                   	ret
428c66:	e9 fd ae fd ff       	jmp    0x403b68
428c6b:	eb ed                	jmp    0x428c5a
428c6d:	8a 45 ff             	mov    -0x1(%ebp),%al
428c70:	5b                   	pop    %ebx
428c71:	59                   	pop    %ecx
428c72:	59                   	pop    %ecx
428c73:	5d                   	pop    %ebp
428c74:	c3                   	ret
428c75:	8d 40 00             	lea    0x0(%eax),%eax
428c78:	53                   	push   %ebx
428c79:	56                   	push   %esi
428c7a:	57                   	push   %edi
428c7b:	81 c4 fc fb ff ff    	add    $0xfffffbfc,%esp
428c81:	8b f8                	mov    %eax,%edi
428c83:	33 f6                	xor    %esi,%esi
428c85:	66 c7 04 24 00 03    	movw   $0x300,(%esp)
428c8b:	85 ff                	test   %edi,%edi
428c8d:	74 38                	je     0x428cc7
428c8f:	6a 00                	push   $0x0
428c91:	e8 1a dd fd ff       	call   0x4069b0
428c96:	8b d8                	mov    %eax,%ebx
428c98:	57                   	push   %edi
428c99:	53                   	push   %ebx
428c9a:	e8 39 de fd ff       	call   0x406ad8
428c9f:	8b f8                	mov    %eax,%edi
428ca1:	8d 44 24 04          	lea    0x4(%esp),%eax
428ca5:	50                   	push   %eax
428ca6:	68 00 01 00 00       	push   $0x100
428cab:	6a 00                	push   $0x0
428cad:	53                   	push   %ebx
428cae:	e8 7d dd fd ff       	call   0x406a30