4029fe:	8b 45 f8             	mov    -0x8(%ebp),%eax
402a01:	89 45 fc             	mov    %eax,-0x4(%ebp)
402a04:	33 c0                	xor    %eax,%eax
402a06:	5a                   	pop    %edx
402a07:	59                   	pop    %ecx
402a08:	59                   	pop    %ecx
402a09:	64 89 10             	mov    %edx,%fs:(%eax)
402a0c:	68 2c 2a 40 00       	push   $0x402a2c
402a11:	80 3d 45 10 46 00 00 	cmpb   $0x0,0x461045
402a18:	74 0a                	je     0x402a24
402a1a:	68 c4 15 46 00       	push   $0x4615c4
402a1f:	e8 4c e9 ff ff       	call   0x401370
402a24:	c3                   	ret
402a25:	e9 22 15 00 00       	jmp    0x403f4c
402a2a:	eb e5                	jmp    0x402a11
402a2c:	8b 45 fc             	mov    -0x4(%ebp),%eax
402a2f:	5e                   	pop    %esi
402a30:	5b                   	pop    %ebx
402a31:	59                   	pop    %ecx
402a32:	59                   	pop    %ecx
402a33:	5d                   	pop    %ebp
402a34:	c3                   	ret
402a35:	8d 40 00             	lea    0x0(%eax),%eax
402a38:	53                   	push   %ebx
402a39:	51                   	push   %ecx
402a3a:	8b d8                	mov    %eax,%ebx
402a3c:	85 db                	test   %ebx,%ebx
402a3e:	7e 1a                	jle    0x402a5a
402a40:	8b c3                	mov    %ebx,%eax
402a42:	ff 15 40 50 45 00    	call   *0x455040
402a48:	89 04 24             	mov    %eax,(%esp)
402a4b:	83 3c 24 00          	cmpl   $0x0,(%esp)
402a4f:	75 0e                	jne    0x402a5f
402a51:	b0 01                	mov    $0x1,%al
402a53:	e8 60 01 00 00       	call   0x402bb8
402a58:	eb 05                	jmp    0x402a5f
402a5a:	33 c0                	xor    %eax,%eax
402a5c:	89 04 24             	mov    %eax,(%esp)
402a5f:	8b 04 24             	mov    (%esp),%eax
402a62:	5a                   	pop    %edx
402a63:	5b                   	pop    %ebx
402a64:	c3                   	ret
402a65:	8d 40 00             	lea    0x0(%eax),%eax
402a68:	53                   	push   %ebx
402a69:	85 c0                	test   %eax,%eax
402a6b:	74 15                	je     0x402a82
402a6d:	ff 15 44 50 45 00    	call   *0x455044
402a73:	8b d8                	mov    %eax,%ebx
402a75:	85 db                	test   %ebx,%ebx
402a77:	74 0b                	je     0x402a84
402a79:	b0 02                	mov    $0x2,%al
402a7b:	e8 38 01 00 00       	call   0x402bb8
402a80:	eb 02                	jmp    0x402a84
402a82:	33 db                	xor    %ebx,%ebx
402a84:	8b c3                	mov    %ebx,%eax
402a86:	5b                   	pop    %ebx
402a87:	c3                   	ret
402a88:	8b 08                	mov    (%eax),%ecx
402a8a:	85 c9                	test   %ecx,%ecx
402a8c:	74 32                	je     0x402ac0
402a8e:	85 d2                	test   %edx,%edx
402a90:	74 18                	je     0x402aaa
402a92:	50                   	push   %eax
402a93:	89 c8                	mov    %ecx,%eax
402a95:	ff 15 48 50 45 00    	call   *0x455048
402a9b:	59                   	pop    %ecx
402a9c:	09 c0                	or     %eax,%eax
402a9e:	74 19                	je     0x402ab9
402aa0:	89 01                	mov    %eax,(%ecx)
402aa2:	c3                   	ret
402aa3:	b0 02                	mov    $0x2,%al
402aa5:	e9 0e 01 00 00       	jmp    0x402bb8
402aaa:	89 10                	mov    %edx,(%eax)
402aac:	89 c8                	mov    %ecx,%eax
402aae:	ff 15 44 50 45 00    	call   *0x455044
402ab4:	09 c0                	or     %eax,%eax
402ab6:	75 eb                	jne    0x402aa3
402ab8:	c3                   	ret
402ab9:	b0 01                	mov    $0x1,%al
402abb:	e9 f8 00 00 00       	jmp    0x402bb8
402ac0:	85 d2                	test   %edx,%edx
402ac2:	74 10                	je     0x402ad4
402ac4:	50                   	push   %eax
402ac5:	89 d0                	mov    %edx,%eax
402ac7:	ff 15 40 50 45 00    	call   *0x455040
402acd:	59                   	pop    %ecx
402ace:	09 c0                	or     %eax,%eax
402ad0:	74 e7                	je     0x402ab9
402ad2:	89 01                	mov    %eax,(%ecx)
402ad4:	c3                   	ret
402ad5:	8d 40 00             	lea    0x0(%eax),%eax
402ad8:	e8 e3 38 00 00       	call   0x4063c0
402add:	83 b8 00 00 00 00 00 	cmpl   $0x0,0x0(%eax)
402ae4:	74 0f                	je     0x402af5
402ae6:	e8 d5 38 00 00       	call   0x4063c0
402aeb:	8b 80 00 00 00 00    	mov    0x0(%eax),%eax
402af1:	8b 40 08             	mov    0x8(%eax),%eax
402af4:	c3                   	ret
402af5:	33 c0                	xor    %eax,%eax
402af7:	c3                   	ret
402af8:	51                   	push   %ecx
402af9:	e8 c2 38 00 00       	call   0x4063c0
402afe:	83 b8 00 00 00 00 00 	cmpl   $0x0,0x0(%eax)
402b05:	74 13                	je     0x402b1a
402b07:	e8 b4 38 00 00       	call   0x4063c0
402b0c:	8b 80 00 00 00 00    	mov    0x0(%eax),%eax
402b12:	8b 40 04             	mov    0x4(%eax),%eax
402b15:	89 04 24             	mov    %eax,(%esp)
402b18:	eb 05                	jmp    0x402b1f
402b1a:	33 c0                	xor    %eax,%eax
402b1c:	89 04 24             	mov    %eax,(%esp)
402b1f:	8b 04 24             	mov    (%esp),%eax
402b22:	5a                   	pop    %edx
402b23:	c3                   	ret
402b24:	51                   	push   %ecx
402b25:	e8 96 38 00 00       	call   0x4063c0
402b2a:	83 b8 00 00 00 00 00 	cmpl   $0x0,0x0(%eax)
402b31:	74 23                	je     0x402b56
402b33:	e8 88 38 00 00       	call   0x4063c0
402b38:	8b 80 00 00 00 00    	mov    0x0(%eax),%eax
402b3e:	8b 40 08             	mov    0x8(%eax),%eax
402b41:	89 04 24             	mov    %eax,(%esp)
402b44:	e8 77 38 00 00       	call   0x4063c0
402b49:	8b 80 00 00 00 00    	mov    0x0(%eax),%eax
402b4f:	33 d2                	xor    %edx,%edx
402b51:	89 50 08             	mov    %edx,0x8(%eax)
402b54:	eb 05                	jmp    0x402b5b
402b56:	33 c0                	xor    %eax,%eax
402b58:	89 04 24             	mov    %eax,(%esp)
402b5b:	8b 04 24             	mov    (%esp),%eax
402b5e:	5a                   	pop    %edx
402b5f:	c3                   	ret
402b60:	89 15 04 50 45 00    	mov    %edx,0x455004
402b66:	e8 ed 19 00 00       	call   0x404558
402b6b:	c3                   	ret
402b6c:	53                   	push   %ebx
402b6d:	56                   	push   %esi
402b6e:	8b f2                	mov    %edx,%esi
402b70:	8b d8                	mov    %eax,%ebx
402b72:	80 e3 7f             	and    $0x7f,%bl
402b75:	83 3d 08 10 46 00 00 	cmpl   $0x0,0x461008
402b7c:	74 0a                	je     0x402b88
402b7e:	8b d6                	mov    %esi,%edx
402b80:	8b c3                	mov    %ebx,%eax
402b82:	ff 15 08 10 46 00    	call   *0x461008
402b88:	84 db                	test   %bl,%bl
402b8a:	75 0d                	jne    0x402b99
402b8c:	e8 2f 38 00 00       	call   0x4063c0
402b91:	8b 98 04 00 00 00    	mov    0x4(%eax),%ebx
402b97:	eb 0f                	jmp    0x402ba8
402b99:	80 fb 18             	cmp    $0x18,%bl
402b9c:	77 0a                	ja     0x402ba8
402b9e:	33 c0                	xor    %eax,%eax
402ba0:	8a c3                	mov    %bl,%al
402ba2:	8a 98 4c 50 45 00    	mov    0x45504c(%eax),%bl
402ba8:	33 c0                	xor    %eax,%eax
402baa:	8a c3                	mov    %bl,%al
402bac:	8b d6                	mov    %esi,%edx
402bae:	e8 ad ff ff ff       	call   0x402b60
402bb3:	5e                   	pop    %esi
402bb4:	5b                   	pop    %ebx
402bb5:	c3                   	ret
402bb6:	8b c0                	mov    %eax,%eax
402bb8:	83 e0 7f             	and    $0x7f,%eax
402bbb:	8b 14 24             	mov    (%esp),%edx
402bbe:	e9 a9 ff ff ff       	jmp    0x402b6c
402bc3:	c3                   	ret
402bc4:	50                   	push   %eax
402bc5:	52                   	push   %edx
402bc6:	51                   	push   %ecx
402bc7:	e8 f4 37 00 00       	call   0x4063c0
402bcc:	83 b8 04 00 00 00 00 	cmpl   $0x0,0x4(%eax)
402bd3:	59                   	pop    %ecx
402bd4:	5a                   	pop    %edx
402bd5:	58                   	pop    %eax
402bd6:	75 01                	jne    0x402bd9
402bd8:	c3                   	ret
402bd9:	31 c0                	xor    %eax,%eax
402bdb:	e9 d8 ff ff ff       	jmp    0x402bb8
402be0:	c3                   	ret
402be1:	8d 40 00             	lea    0x0(%eax),%eax
402be4:	53                   	push   %ebx
402be5:	8b d8                	mov    %eax,%ebx
402be7:	e8 d4 37 00 00       	call   0x4063c0
402bec:	89 98 04 00 00 00    	mov    %ebx,0x4(%eax)
402bf2:	5b                   	pop    %ebx
402bf3:	c3                   	ret
402bf4:	56                   	push   %esi
402bf5:	57                   	push   %edi
402bf6:	89 c6                	mov    %eax,%esi
402bf8:	8b 7c 24 0c          	mov    0xc(%esp),%edi
402bfc:	31 c0                	xor    %eax,%eax
402bfe:	0a 06                	or     (%esi),%al
402c00:	74 2b                	je     0x402c2d
402c02:	85 d2                	test   %edx,%edx
402c04:	7e 18                	jle    0x402c1e
402c06:	39 c2                	cmp    %eax,%edx
402c08:	7f 1b                	jg     0x402c25
402c0a:	29 d0                	sub    %edx,%eax
402c0c:	40                   	inc    %eax
402c0d:	85 c9                	test   %ecx,%ecx
402c0f:	7c 14                	jl     0x402c25
402c11:	39 c1                	cmp    %eax,%ecx
402c13:	7f 14                	jg     0x402c29
402c15:	01 d6                	add    %edx,%esi
402c17:	88 0f                	mov    %cl,(%edi)
402c19:	47                   	inc    %edi
402c1a:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
402c1c:	eb 11                	jmp    0x402c2f
402c1e:	ba 01 00 00 00       	mov    $0x1,%edx
402c23:	eb e5                	jmp    0x402c0a
402c25:	31 c9                	xor    %ecx,%ecx
402c27:	eb ec                	jmp    0x402c15
402c29:	89 c1                	mov    %eax,%ecx
402c2b:	eb e8                	jmp    0x402c15
402c2d:	88 07                	mov    %al,(%edi)
402c2f:	5f                   	pop    %edi
402c30:	5e                   	pop    %esi
402c31:	c2 04 00             	ret    $0x4
402c34:	c3                   	ret
402c35:	8d 40 00             	lea    0x0(%eax),%eax
402c38:	53                   	push   %ebx
402c39:	e8 82 37 00 00       	call   0x4063c0
402c3e:	8b 98 04 00 00 00    	mov    0x4(%eax),%ebx
402c44:	e8 77 37 00 00       	call   0x4063c0
402c49:	33 d2                	xor    %edx,%edx
402c4b:	89 90 04 00 00 00    	mov    %edx,0x4(%eax)
402c51:	8b c3                	mov    %ebx,%eax
402c53:	5b                   	pop    %ebx
402c54:	c3                   	ret
402c55:	8d 40 00             	lea    0x0(%eax),%eax
402c58:	56                   	push   %esi
402c59:	57                   	push   %edi
402c5a:	89 c6                	mov    %eax,%esi
402c5c:	89 d7                	mov    %edx,%edi
402c5e:	89 c8                	mov    %ecx,%eax
402c60:	39 f7                	cmp    %esi,%edi
402c62:	77 13                	ja     0x402c77
402c64:	74 2f                	je     0x402c95
402c66:	c1 f9 02             	sar    $0x2,%ecx
402c69:	78 2a                	js     0x402c95
402c6b:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
402c6d:	89 c1                	mov    %eax,%ecx
402c6f:	83 e1 03             	and    $0x3,%ecx
402c72:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
402c74:	5f                   	pop    %edi
402c75:	5e                   	pop    %esi
402c76:	c3                   	ret
402c77:	8d 74 31 fc          	lea    -0x4(%ecx,%esi,1),%esi
402c7b:	8d 7c 39 fc          	lea    -0x4(%ecx,%edi,1),%edi
402c7f:	c1 f9 02             	sar    $0x2,%ecx
402c82:	78 11                	js     0x402c95
402c84:	fd                   	std
402c85:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
402c87:	89 c1                	mov    %eax,%ecx
402c89:	83 e1 03             	and    $0x3,%ecx
402c8c:	83 c6 03             	add    $0x3,%esi
402c8f:	83 c7 03             	add    $0x3,%edi
402c92:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
402c94:	fc                   	cld
402c95:	5f                   	pop    %edi
402c96:	5e                   	pop    %esi
402c97:	c3                   	ret
402c98:	83 c4 f8             	add    $0xfffffff8,%esp
402c9b:	54                   	push   %esp
402c9c:	e8 6b e6 ff ff       	call   0x40130c
402ca1:	85 c0                	test   %eax,%eax
402ca3:	74 0b                	je     0x402cb0
402ca5:	8b 04 24             	mov    (%esp),%eax
402ca8:	a3 08 50 45 00       	mov    %eax,0x455008
402cad:	59                   	pop    %ecx
402cae:	5a                   	pop    %edx
402caf:	c3                   	ret
402cb0:	e8 5f e6 ff ff       	call   0x401314
402cb5:	a3 08 50 45 00       	mov    %eax,0x455008
402cba:	59                   	pop    %ecx
402cbb:	5a                   	pop    %edx
402cbc:	c3                   	ret
402cbd:	8d 40 00             	lea    0x0(%eax),%eax
402cc0:	66 a3 24 50 45 00    	mov    %ax,0x455024
402cc6:	db e2                	fnclex
402cc8:	d9 2d 24 50 45 00    	fldcw  0x455024
402cce:	c3                   	ret
402ccf:	90                   	nop
402cd0:	6a 00                	push   $0x0
402cd2:	d9 3c 24             	fnstcw (%esp)
402cd5:	58                   	pop    %eax
402cd6:	c3                   	ret
402cd7:	90                   	nop
402cd8:	d9 ea                	fldl2e
402cda:	de c9                	fmulp  %st,%st(1)
402cdc:	d9 c0                	fld    %st(0)
402cde:	d9 fc                	frndint
402ce0:	dc e9                	fsubr  %st,%st(1)
402ce2:	d9 c9                	fxch   %st(1)
402ce4:	d9 f0                	f2xm1
402ce6:	d9 e8                	fld1
402ce8:	de c1                	faddp  %st,%st(1)
402cea:	d9 fd                	fscale
402cec:	dd d9                	fstp   %st(1)
402cee:	c3                   	ret
402cef:	90                   	nop
402cf0:	d9 c0                	fld    %st(0)
402cf2:	83 ec 04             	sub    $0x4,%esp
402cf5:	d9 3c 24             	fnstcw (%esp)
402cf8:	d9 7c 24 02          	fnstcw 0x2(%esp)
402cfc:	9b                   	fwait
402cfd:	66 81 4c 24 02 00 0f 	orw    $0xf00,0x2(%esp)
402d04:	d9 6c 24 02          	fldcw  0x2(%esp)
402d08:	d9 fc                	frndint
402d0a:	9b d9 2c 24          	fldcw  (%esp)
402d0e:	83 c4 04             	add    $0x4,%esp
402d11:	de e9                	fsubrp %st,%st(1)
402d13:	c3                   	ret
402d14:	83 ec 08             	sub    $0x8,%esp
402d17:	df 3c 24             	fistpll (%esp)
402d1a:	9b                   	fwait
402d1b:	58                   	pop    %eax
402d1c:	5a                   	pop    %edx
402d1d:	c3                   	ret
402d1e:	8b c0                	mov    %eax,%eax
402d20:	83 ec 0c             	sub    $0xc,%esp
402d23:	d9 3c 24             	fnstcw (%esp)
402d26:	d9 7c 24 02          	fnstcw 0x2(%esp)
402d2a:	9b                   	fwait
402d2b:	66 81 4c 24 02 00 0f 	orw    $0xf00,0x2(%esp)
402d32:	d9 6c 24 02          	fldcw  0x2(%esp)
402d36:	df 7c 24 04          	fistpll 0x4(%esp)
402d3a:	9b d9 2c 24          	fldcw  (%esp)
402d3e:	59                   	pop    %ecx
402d3f:	58                   	pop    %eax
402d40:	5a                   	pop    %edx
402d41:	c3                   	ret
402d42:	8b c0                	mov    %eax,%eax
402d44:	83 3d 28 10 46 00 00 	cmpl   $0x0,0x461028
402d4b:	74 06                	je     0x402d53
402d4d:	ff 15 28 10 46 00    	call   *0x461028
402d53:	b8 d2 00 00 00       	mov    $0xd2,%eax
402d58:	e9 07 18 00 00       	jmp    0x404564
402d5d:	c3                   	ret
402d5e:	8b c0                	mov    %eax,%eax
402d60:	53                   	push   %ebx
402d61:	66 8b 48 04          	mov    0x4(%eax),%cx
402d65:	66 81 e9 b1 d7       	sub    $0xd7b1,%cx
402d6a:	74 0f                	je     0x402d7b
402d6c:	49                   	dec    %ecx
402d6d:	66 83 e9 02          	sub    $0x2,%cx
402d71:	73 0c                	jae    0x402d7f
402d73:	8b da                	mov    %edx,%ebx
402d75:	ff d3                	call   *%ebx