402901:	8b d8                	mov    %eax,%ebx
402903:	e8 9c 3b 00 00       	call   0x4064a4
402908:	89 98 04 00 00 00    	mov    %ebx,0x4(%eax)
40290e:	5b                   	pop    %ebx
40290f:	c3                   	ret
402910:	56                   	push   %esi
402911:	57                   	push   %edi
402912:	89 c6                	mov    %eax,%esi
402914:	8b 7c 24 0c          	mov    0xc(%esp),%edi
402918:	31 c0                	xor    %eax,%eax
40291a:	0a 06                	or     (%esi),%al
40291c:	74 2b                	je     0x402949
40291e:	85 d2                	test   %edx,%edx
402920:	7e 18                	jle    0x40293a
402922:	39 c2                	cmp    %eax,%edx
402924:	7f 1b                	jg     0x402941
402926:	29 d0                	sub    %edx,%eax
402928:	40                   	inc    %eax
402929:	85 c9                	test   %ecx,%ecx
40292b:	7c 14                	jl     0x402941
40292d:	39 c1                	cmp    %eax,%ecx
40292f:	7f 14                	jg     0x402945
402931:	01 d6                	add    %edx,%esi
402933:	88 0f                	mov    %cl,(%edi)
402935:	47                   	inc    %edi
402936:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
402938:	eb 11                	jmp    0x40294b
40293a:	ba 01 00 00 00       	mov    $0x1,%edx
40293f:	eb e5                	jmp    0x402926
402941:	31 c9                	xor    %ecx,%ecx
402943:	eb ec                	jmp    0x402931
402945:	89 c1                	mov    %eax,%ecx
402947:	eb e8                	jmp    0x402931
402949:	88 07                	mov    %al,(%edi)
40294b:	5f                   	pop    %edi
40294c:	5e                   	pop    %esi
40294d:	c2 04 00             	ret    $0x4
402950:	c3                   	ret
402951:	8d 40 00             	lea    0x0(%eax),%eax
402954:	53                   	push   %ebx
402955:	e8 4a 3b 00 00       	call   0x4064a4
40295a:	8b 98 04 00 00 00    	mov    0x4(%eax),%ebx
402960:	e8 3f 3b 00 00       	call   0x4064a4
402965:	33 d2                	xor    %edx,%edx
402967:	89 90 04 00 00 00    	mov    %edx,0x4(%eax)
40296d:	8b c3                	mov    %ebx,%eax
40296f:	5b                   	pop    %ebx
402970:	c3                   	ret
402971:	8d 40 00             	lea    0x0(%eax),%eax
402974:	56                   	push   %esi
402975:	57                   	push   %edi
402976:	89 c6                	mov    %eax,%esi
402978:	89 d7                	mov    %edx,%edi
40297a:	89 c8                	mov    %ecx,%eax
40297c:	39 f7                	cmp    %esi,%edi
40297e:	77 13                	ja     0x402993
402980:	74 2f                	je     0x4029b1
402982:	c1 f9 02             	sar    $0x2,%ecx
402985:	78 2a                	js     0x4029b1
402987:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
402989:	89 c1                	mov    %eax,%ecx
40298b:	83 e1 03             	and    $0x3,%ecx
40298e:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
402990:	5f                   	pop    %edi
402991:	5e                   	pop    %esi
402992:	c3                   	ret
402993:	8d 74 31 fc          	lea    -0x4(%ecx,%esi,1),%esi
402997:	8d 7c 39 fc          	lea    -0x4(%ecx,%edi,1),%edi
40299b:	c1 f9 02             	sar    $0x2,%ecx
40299e:	78 11                	js     0x4029b1
4029a0:	fd                   	std
4029a1:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4029a3:	89 c1                	mov    %eax,%ecx
4029a5:	83 e1 03             	and    $0x3,%ecx
4029a8:	83 c6 03             	add    $0x3,%esi
4029ab:	83 c7 03             	add    $0x3,%edi
4029ae:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
4029b0:	fc                   	cld
4029b1:	5f                   	pop    %edi
4029b2:	5e                   	pop    %esi
4029b3:	c3                   	ret
4029b4:	53                   	push   %ebx
4029b5:	56                   	push   %esi
4029b6:	57                   	push   %edi
4029b7:	55                   	push   %ebp
4029b8:	8b f2                	mov    %edx,%esi
4029ba:	8b d8                	mov    %eax,%ebx
4029bc:	eb 08                	jmp    0x4029c6
4029be:	53                   	push   %ebx
4029bf:	e8 14 e9 ff ff       	call   0x4012d8
4029c4:	8b d8                	mov    %eax,%ebx
4029c6:	8a 03                	mov    (%ebx),%al
4029c8:	84 c0                	test   %al,%al
4029ca:	74 04                	je     0x4029d0
4029cc:	3c 20                	cmp    $0x20,%al
4029ce:	76 ee                	jbe    0x4029be
4029d0:	80 3b 22             	cmpb   $0x22,(%ebx)
4029d3:	75 0b                	jne    0x4029e0
4029d5:	80 7b 01 22          	cmpb   $0x22,0x1(%ebx)
4029d9:	75 05                	jne    0x4029e0
4029db:	83 c3 02             	add    $0x2,%ebx
4029de:	eb e6                	jmp    0x4029c6
4029e0:	33 ed                	xor    %ebp,%ebp
4029e2:	8b fb                	mov    %ebx,%edi
4029e4:	eb 43                	jmp    0x402a29
4029e6:	3c 22                	cmp    $0x22,%al
4029e8:	75 31                	jne    0x402a1b
4029ea:	53                   	push   %ebx
4029eb:	e8 e8 e8 ff ff       	call   0x4012d8
4029f0:	8b d8                	mov    %eax,%ebx
4029f2:	eb 0e                	jmp    0x402a02
4029f4:	53                   	push   %ebx
4029f5:	e8 de e8 ff ff       	call   0x4012d8
4029fa:	8b d0                	mov    %eax,%edx
4029fc:	2b d3                	sub    %ebx,%edx
4029fe:	03 ea                	add    %edx,%ebp
402a00:	8b d8                	mov    %eax,%ebx
402a02:	8a 03                	mov    (%ebx),%al
402a04:	84 c0                	test   %al,%al
402a06:	74 04                	je     0x402a0c
402a08:	3c 22                	cmp    $0x22,%al
402a0a:	75 e8                	jne    0x4029f4
402a0c:	80 3b 00             	cmpb   $0x0,(%ebx)
402a0f:	74 18                	je     0x402a29
402a11:	53                   	push   %ebx
402a12:	e8 c1 e8 ff ff       	call   0x4012d8
402a17:	8b d8                	mov    %eax,%ebx
402a19:	eb 0e                	jmp    0x402a29
402a1b:	53                   	push   %ebx
402a1c:	e8 b7 e8 ff ff       	call   0x4012d8
402a21:	8b d0                	mov    %eax,%edx
402a23:	2b d3                	sub    %ebx,%edx
402a25:	03 ea                	add    %edx,%ebp
402a27:	8b d8                	mov    %eax,%ebx
402a29:	8a 03                	mov    (%ebx),%al
402a2b:	3c 20                	cmp    $0x20,%al
402a2d:	77 b7                	ja     0x4029e6
402a2f:	8b c6                	mov    %esi,%eax
402a31:	8b d5                	mov    %ebp,%edx
402a33:	e8 78 1d 00 00       	call   0x4047b0
402a38:	8b df                	mov    %edi,%ebx
402a3a:	8b 3e                	mov    (%esi),%edi
402a3c:	33 f6                	xor    %esi,%esi
402a3e:	eb 51                	jmp    0x402a91
402a40:	3c 22                	cmp    $0x22,%al
402a42:	75 38                	jne    0x402a7c
402a44:	53                   	push   %ebx
402a45:	e8 8e e8 ff ff       	call   0x4012d8
402a4a:	8b d8                	mov    %eax,%ebx
402a4c:	eb 15                	jmp    0x402a63
402a4e:	53                   	push   %ebx
402a4f:	e8 84 e8 ff ff       	call   0x4012d8
402a54:	3b c3                	cmp    %ebx,%eax
402a56:	76 0b                	jbe    0x402a63
402a58:	8a 13                	mov    (%ebx),%dl
402a5a:	88 14 37             	mov    %dl,(%edi,%esi,1)
402a5d:	43                   	inc    %ebx
402a5e:	46                   	inc    %esi
402a5f:	3b c3                	cmp    %ebx,%eax
402a61:	77 f5                	ja     0x402a58
402a63:	8a 03                	mov    (%ebx),%al
402a65:	84 c0                	test   %al,%al
402a67:	74 04                	je     0x402a6d
402a69:	3c 22                	cmp    $0x22,%al
402a6b:	75 e1                	jne    0x402a4e
402a6d:	80 3b 00             	cmpb   $0x0,(%ebx)
402a70:	74 1f                	je     0x402a91
402a72:	53                   	push   %ebx
402a73:	e8 60 e8 ff ff       	call   0x4012d8
402a78:	8b d8                	mov    %eax,%ebx
402a7a:	eb 15                	jmp    0x402a91
402a7c:	53                   	push   %ebx
402a7d:	e8 56 e8 ff ff       	call   0x4012d8
402a82:	3b c3                	cmp    %ebx,%eax
402a84:	76 0b                	jbe    0x402a91
402a86:	8a 13                	mov    (%ebx),%dl
402a88:	88 14 37             	mov    %dl,(%edi,%esi,1)
402a8b:	43                   	inc    %ebx
402a8c:	46                   	inc    %esi
402a8d:	3b c3                	cmp    %ebx,%eax
402a8f:	77 f5                	ja     0x402a86
402a91:	8a 03                	mov    (%ebx),%al
402a93:	3c 20                	cmp    $0x20,%al
402a95:	77 a9                	ja     0x402a40
402a97:	8b c3                	mov    %ebx,%eax
402a99:	5d                   	pop    %ebp
402a9a:	5f                   	pop    %edi
402a9b:	5e                   	pop    %esi
402a9c:	5b                   	pop    %ebx
402a9d:	c3                   	ret
402a9e:	8b c0                	mov    %eax,%eax
402aa0:	53                   	push   %ebx
402aa1:	56                   	push   %esi
402aa2:	57                   	push   %edi
402aa3:	81 c4 f8 fe ff ff    	add    $0xfffffef8,%esp
402aa9:	8b da                	mov    %edx,%ebx
402aab:	8b f0                	mov    %eax,%esi
402aad:	8b c3                	mov    %ebx,%eax
402aaf:	e8 b0 16 00 00       	call   0x404164
402ab4:	85 f6                	test   %esi,%esi
402ab6:	75 1e                	jne    0x402ad6
402ab8:	68 05 01 00 00       	push   $0x105
402abd:	8d 44 24 04          	lea    0x4(%esp),%eax
402ac1:	50                   	push   %eax
402ac2:	6a 00                	push   $0x0
402ac4:	e8 4f e8 ff ff       	call   0x401318
402ac9:	8b c8                	mov    %eax,%ecx
402acb:	8b d4                	mov    %esp,%edx
402acd:	8b c3                	mov    %ebx,%eax
402acf:	e8 80 17 00 00       	call   0x404254
402ad4:	eb 1e                	jmp    0x402af4
402ad6:	e8 2d e8 ff ff       	call   0x401308
402adb:	8b f8                	mov    %eax,%edi
402add:	8b d3                	mov    %ebx,%edx
402adf:	8b c7                	mov    %edi,%eax
402ae1:	e8 ce fe ff ff       	call   0x4029b4
402ae6:	8b f8                	mov    %eax,%edi
402ae8:	85 f6                	test   %esi,%esi
402aea:	74 08                	je     0x402af4
402aec:	83 3b 00             	cmpl   $0x0,(%ebx)
402aef:	74 03                	je     0x402af4
402af1:	4e                   	dec    %esi
402af2:	eb e9                	jmp    0x402add
402af4:	81 c4 08 01 00 00    	add    $0x108,%esp
402afa:	5f                   	pop    %edi
402afb:	5e                   	pop    %esi
402afc:	5b                   	pop    %ebx
402afd:	c3                   	ret
402afe:	8b c0                	mov    %eax,%eax
402b00:	88 10                	mov    %dl,(%eax)
402b02:	c3                   	ret
402b03:	90                   	nop
402b04:	3c 61                	cmp    $0x61,%al
402b06:	72 06                	jb     0x402b0e
402b08:	3c 7a                	cmp    $0x7a,%al
402b0a:	77 02                	ja     0x402b0e
402b0c:	2c 20                	sub    $0x20,%al
402b0e:	c3                   	ret
402b0f:	90                   	nop
402b10:	66 a3 20 d0 48 00    	mov    %ax,0x48d020
402b16:	db e2                	fnclex
402b18:	d9 2d 20 d0 48 00    	fldcw  0x48d020
402b1e:	c3                   	ret
402b1f:	90                   	nop
402b20:	6a 00                	push   $0x0
402b22:	d9 3c 24             	fnstcw (%esp)
402b25:	58                   	pop    %eax
402b26:	c3                   	ret
402b27:	90                   	nop
402b28:	83 ec 08             	sub    $0x8,%esp
402b2b:	df 3c 24             	fistpll (%esp)
402b2e:	9b                   	fwait
402b2f:	58                   	pop    %eax
402b30:	5a                   	pop    %edx
402b31:	c3                   	ret
402b32:	8b c0                	mov    %eax,%eax
402b34:	83 ec 0c             	sub    $0xc,%esp
402b37:	d9 3c 24             	fnstcw (%esp)
402b3a:	d9 7c 24 02          	fnstcw 0x2(%esp)
402b3e:	9b                   	fwait
402b3f:	66 81 4c 24 02 00 0f 	orw    $0xf00,0x2(%esp)
402b46:	d9 6c 24 02          	fldcw  0x2(%esp)
402b4a:	df 7c 24 04          	fistpll 0x4(%esp)
402b4e:	9b d9 2c 24          	fldcw  (%esp)
402b52:	59                   	pop    %ecx
402b53:	58                   	pop    %eax
402b54:	5a                   	pop    %edx
402b55:	c3                   	ret
402b56:	8b c0                	mov    %eax,%eax
402b58:	83 3d 2c c0 49 00 00 	cmpl   $0x0,0x49c02c
402b5f:	74 06                	je     0x402b67
402b61:	ff 15 2c c0 49 00    	call   *0x49c02c
402b67:	b8 d2 00 00 00       	mov    $0xd2,%eax
402b6c:	e9 e7 15 00 00       	jmp    0x404158
402b71:	c3                   	ret
402b72:	8b c0                	mov    %eax,%eax
402b74:	53                   	push   %ebx
402b75:	66 8b 48 04          	mov    0x4(%eax),%cx
402b79:	66 81 e9 b1 d7       	sub    $0xd7b1,%cx
402b7e:	74 0f                	je     0x402b8f
402b80:	49                   	dec    %ecx
402b81:	66 83 e9 02          	sub    $0x2,%cx
402b85:	73 0c                	jae    0x402b93
402b87:	8b da                	mov    %edx,%ebx
402b89:	ff d3                	call   *%ebx
402b8b:	8b d8                	mov    %eax,%ebx
402b8d:	eb 1b                	jmp    0x402baa
402b8f:	33 db                	xor    %ebx,%ebx
402b91:	eb 17                	jmp    0x402baa
402b93:	3d 1c c2 49 00       	cmp    $0x49c21c,%eax
402b98:	74 07                	je     0x402ba1
402b9a:	3d e8 c3 49 00       	cmp    $0x49c3e8,%eax
402b9f:	75 04                	jne    0x402ba5
402ba1:	33 db                	xor    %ebx,%ebx
402ba3:	eb 05                	jmp    0x402baa
402ba5:	bb 67 00 00 00       	mov    $0x67,%ebx
402baa:	85 db                	test   %ebx,%ebx
402bac:	74 07                	je     0x402bb5
402bae:	8b c3                	mov    %ebx,%eax
402bb0:	e8 4b fd ff ff       	call   0x402900
402bb5:	8b c3                	mov    %ebx,%eax
402bb7:	5b                   	pop    %ebx
402bb8:	c3                   	ret
402bb9:	8d 40 00             	lea    0x0(%eax),%eax
402bbc:	8b 50 1c             	mov    0x1c(%eax),%edx
402bbf:	e8 b0 ff ff ff       	call   0x402b74
402bc4:	c3                   	ret
402bc5:	8d 40 00             	lea    0x0(%eax),%eax
402bc8:	53                   	push   %ebx
402bc9:	56                   	push   %esi
402bca:	8b d8                	mov    %eax,%ebx
402bcc:	33 f6                	xor    %esi,%esi
402bce:	66 8b 43 04          	mov    0x4(%ebx),%ax
402bd2:	66 3d b1 d7          	cmp    $0xd7b1,%ax
402bd6:	72 2f                	jb     0x402c07
402bd8:	66 3d b3 d7          	cmp    $0xd7b3,%ax
402bdc:	77 29                	ja     0x402c07
402bde:	66 25 b2 d7          	and    $0xd7b2,%ax
402be2:	66 3d b2 d7          	cmp    $0xd7b2,%ax
402be6:	75 07                	jne    0x402bef
402be8:	8b c3                	mov    %ebx,%eax
402bea:	ff 53 1c             	call   *0x1c(%ebx)
402bed:	8b f0                	mov    %eax,%esi
402bef:	85 f6                	test   %esi,%esi
402bf1:	75 07                	jne    0x402bfa
402bf3:	8b c3                	mov    %ebx,%eax
402bf5:	ff 53 24             	call   *0x24(%ebx)
402bf8:	8b f0                	mov    %eax,%esi
402bfa:	85 f6                	test   %esi,%esi
402bfc:	74 1b                	je     0x402c19
402bfe:	8b c6                	mov    %esi,%eax
402c00:	e8 fb fc ff ff       	call   0x402900
402c05:	eb 12                	jmp    0x402c19
402c07:	81 fb 50 c0 49 00    	cmp    $0x49c050,%ebx
402c0d:	74 0a                	je     0x402c19
402c0f:	b8 67 00 00 00       	mov    $0x67,%eax
402c14:	e8 e7 fc ff ff       	call   0x402900
402c19:	8b c6                	mov    %esi,%eax
402c1b:	5e                   	pop    %esi
402c1c:	5b                   	pop    %ebx
402c1d:	c3                   	ret
402c1e:	8b c0                	mov    %eax,%eax
402c20:	56                   	push   %esi
402c21:	57                   	push   %edi
402c22:	89 c7                	mov    %eax,%edi
402c24:	31 c0                	xor    %eax,%eax
402c26:	8a 07                	mov    (%edi),%al
402c28:	89 d6                	mov    %edx,%esi
402c2a:	31 d2                	xor    %edx,%edx
402c2c:	8a 16                	mov    (%esi),%dl