545959:	8a 14 32             	mov    (%edx,%esi,1),%dl
54595c:	88 14 01             	mov    %dl,(%ecx,%eax,1)
54595f:	8b 83 14 02 00 00    	mov    0x214(%ebx),%eax
545965:	8b 4d a8             	mov    -0x58(%ebp),%ecx
545968:	8b d6                	mov    %esi,%edx
54596a:	88 14 08             	mov    %dl,(%eax,%ecx,1)
54596d:	8a 45 a8             	mov    -0x58(%ebp),%al
545970:	8b 8b 18 02 00 00    	mov    0x218(%ebx),%ecx
545976:	88 04 31             	mov    %al,(%ecx,%esi,1)
545979:	8b 45 10             	mov    0x10(%ebp),%eax
54597c:	3b f0                	cmp    %eax,%esi
54597e:	7e 13                	jle    0x545993
545980:	8b 55 ac             	mov    -0x54(%ebp),%edx
545983:	8b 0a                	mov    (%edx),%ecx
545985:	89 4d ac             	mov    %ecx,-0x54(%ebp)
545988:	8b 45 ac             	mov    -0x54(%ebp),%eax
54598b:	85 c0                	test   %eax,%eax
54598d:	0f 85 90 fe ff ff    	jne    0x545823
545993:	8b 55 10             	mov    0x10(%ebp),%edx
545996:	3b f2                	cmp    %edx,%esi
545998:	7e 11                	jle    0x5459ab
54599a:	ff 45 c0             	incl   -0x40(%ebp)
54599d:	8b 4d c0             	mov    -0x40(%ebp),%ecx
5459a0:	8b 45 bc             	mov    -0x44(%ebp),%eax
5459a3:	3b c8                	cmp    %eax,%ecx
5459a5:	0f 8e 50 fe ff ff    	jle    0x5457fb
5459ab:	33 d2                	xor    %edx,%edx
5459ad:	89 55 c0             	mov    %edx,-0x40(%ebp)
5459b0:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
5459b3:	8b 45 c0             	mov    -0x40(%ebp),%eax
5459b6:	8b 14 81             	mov    (%ecx,%eax,4),%edx
5459b9:	85 d2                	test   %edx,%edx
5459bb:	74 22                	je     0x5459df
5459bd:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
5459c0:	8b 45 c0             	mov    -0x40(%ebp),%eax
5459c3:	8b 04 81             	mov    (%ecx,%eax,4),%eax
5459c6:	85 c0                	test   %eax,%eax
5459c8:	74 15                	je     0x5459df
5459ca:	8b 10                	mov    (%eax),%edx
5459cc:	89 55 b8             	mov    %edx,-0x48(%ebp)
5459cf:	8b d0                	mov    %eax,%edx
5459d1:	8b c3                	mov    %ebx,%eax
5459d3:	e8 04 54 00 00       	call   0x54addc
5459d8:	8b 45 b8             	mov    -0x48(%ebp),%eax
5459db:	85 c0                	test   %eax,%eax
5459dd:	75 eb                	jne    0x5459ca
5459df:	8b 55 b4             	mov    -0x4c(%ebp),%edx
5459e2:	8b 4d c0             	mov    -0x40(%ebp),%ecx
5459e5:	33 c0                	xor    %eax,%eax
5459e7:	89 04 8a             	mov    %eax,(%edx,%ecx,4)
5459ea:	ff 45 c0             	incl   -0x40(%ebp)
5459ed:	8b 55 c0             	mov    -0x40(%ebp),%edx
5459f0:	81 fa 01 03 00 00    	cmp    $0x301,%edx
5459f6:	7c b8                	jl     0x5459b0
5459f8:	83 45 bc 60          	addl   $0x60,-0x44(%ebp)
5459fc:	8b 4d 10             	mov    0x10(%ebp),%ecx
5459ff:	3b f1                	cmp    %ecx,%esi
545a01:	0f 8f e3 fc ff ff    	jg     0x5456ea
545a07:	8b 55 b4             	mov    -0x4c(%ebp),%edx
545a0a:	8b c3                	mov    %ebx,%eax
545a0c:	e8 cb 53 00 00       	call   0x54addc
545a11:	8b 93 18 02 00 00    	mov    0x218(%ebx),%edx
545a17:	8b c3                	mov    %ebx,%eax
545a19:	e8 be 53 00 00       	call   0x54addc
545a1e:	8b 93 14 02 00 00    	mov    0x214(%ebx),%edx
545a24:	8b c3                	mov    %ebx,%eax
545a26:	e8 b1 53 00 00       	call   0x54addc
545a2b:	33 c9                	xor    %ecx,%ecx
545a2d:	33 c0                	xor    %eax,%eax
545a2f:	89 8b 18 02 00 00    	mov    %ecx,0x218(%ebx)
545a35:	89 83 14 02 00 00    	mov    %eax,0x214(%ebx)
545a3b:	8b 55 10             	mov    0x10(%ebp),%edx
545a3e:	89 55 f8             	mov    %edx,-0x8(%ebp)
545a41:	8b 8b d4 00 00 00    	mov    0xd4(%ebx),%ecx
545a47:	85 c9                	test   %ecx,%ecx
545a49:	75 09                	jne    0x545a54
545a4b:	8b 45 fc             	mov    -0x4(%ebp),%eax
545a4e:	89 83 d4 00 00 00    	mov    %eax,0xd4(%ebx)
545a54:	66 8b 55 f8          	mov    -0x8(%ebp),%dx
545a58:	66 89 93 d8 00 00 00 	mov    %dx,0xd8(%ebx)
545a5f:	8b 4d 08             	mov    0x8(%ebp),%ecx
545a62:	85 c9                	test   %ecx,%ecx
545a64:	0f 84 01 02 00 00    	je     0x545c6b
545a6a:	c7 45 98 0f 00 00 00 	movl   $0xf,-0x68(%ebp)
545a71:	c7 45 94 20 00 00 00 	movl   $0x20,-0x6c(%ebp)
545a78:	c7 45 90 20 00 00 00 	movl   $0x20,-0x70(%ebp)
545a7f:	c7 45 8c 20 00 00 00 	movl   $0x20,-0x74(%ebp)
545a86:	8b 4d 98             	mov    -0x68(%ebp),%ecx
545a89:	b8 01 00 00 00       	mov    $0x1,%eax
545a8e:	d3 e0                	shl    %cl,%eax
545a90:	89 45 88             	mov    %eax,-0x78(%ebp)
545a93:	8b c3                	mov    %ebx,%eax
545a95:	8b 55 88             	mov    -0x78(%ebp),%edx
545a98:	e8 cb 52 00 00       	call   0x54ad68
545a9d:	89 83 ac 01 00 00    	mov    %eax,0x1ac(%ebx)
545aa3:	8b 55 88             	mov    -0x78(%ebp),%edx
545aa6:	52                   	push   %edx
545aa7:	6a 00                	push   $0x0
545aa9:	8b 8b ac 01 00 00    	mov    0x1ac(%ebx),%ecx
545aaf:	51                   	push   %ecx
545ab0:	e8 6f 08 fe ff       	call   0x526324
545ab5:	83 c4 0c             	add    $0xc,%esp
545ab8:	8b 55 88             	mov    -0x78(%ebp),%edx
545abb:	8b c3                	mov    %ebx,%eax
545abd:	e8 a6 52 00 00       	call   0x54ad68
545ac2:	89 45 9c             	mov    %eax,-0x64(%ebp)
545ac5:	8b 4d 88             	mov    -0x78(%ebp),%ecx
545ac8:	51                   	push   %ecx
545ac9:	68 ff 00 00 00       	push   $0xff
545ace:	8b 45 9c             	mov    -0x64(%ebp),%eax
545ad1:	50                   	push   %eax
545ad2:	e8 4d 08 fe ff       	call   0x526324
545ad7:	83 c4 0c             	add    $0xc,%esp
545ada:	33 d2                	xor    %edx,%edx
545adc:	89 55 a0             	mov    %edx,-0x60(%ebp)
545adf:	8b 4d a0             	mov    -0x60(%ebp),%ecx
545ae2:	8b 45 f8             	mov    -0x8(%ebp),%eax
545ae5:	3b c8                	cmp    %eax,%ecx
545ae7:	0f 8d 74 01 00 00    	jge    0x545c61
545aed:	8b 55 a0             	mov    -0x60(%ebp),%edx
545af0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
545af3:	33 c0                	xor    %eax,%eax
545af5:	8d 14 52             	lea    (%edx,%edx,2),%edx
545af8:	8a 04 11             	mov    (%ecx,%edx,1),%al
545afb:	c1 f8 03             	sar    $0x3,%eax
545afe:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
545b04:	33 c0                	xor    %eax,%eax
545b06:	8b 55 a0             	mov    -0x60(%ebp),%edx
545b09:	8b 4d fc             	mov    -0x4(%ebp),%ecx
545b0c:	8d 14 52             	lea    (%edx,%edx,2),%edx
545b0f:	8a 44 11 01          	mov    0x1(%ecx,%edx,1),%al
545b13:	c1 f8 03             	sar    $0x3,%eax
545b16:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
545b1c:	33 c0                	xor    %eax,%eax
545b1e:	8b 55 a0             	mov    -0x60(%ebp),%edx
545b21:	8b 4d fc             	mov    -0x4(%ebp),%ecx
545b24:	8d 14 52             	lea    (%edx,%edx,2),%edx
545b27:	8a 44 11 02          	mov    0x2(%ecx,%edx,1),%al
545b2b:	33 d2                	xor    %edx,%edx
545b2d:	c1 f8 03             	sar    $0x3,%eax
545b30:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
545b36:	89 55 84             	mov    %edx,-0x7c(%ebp)
545b39:	8b 4d 84             	mov    -0x7c(%ebp),%ecx
545b3c:	8b 45 94             	mov    -0x6c(%ebp),%eax
545b3f:	3b c8                	cmp    %eax,%ecx
545b41:	0f 8d 09 01 00 00    	jge    0x545c50
545b47:	8b 45 84             	mov    -0x7c(%ebp),%eax
545b4a:	8b 95 7c ff ff ff    	mov    -0x84(%ebp),%edx
545b50:	2b c2                	sub    %edx,%eax
545b52:	33 c9                	xor    %ecx,%ecx
545b54:	99                   	cltd
545b55:	33 c2                	xor    %edx,%eax
545b57:	2b c2                	sub    %edx,%eax
545b59:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
545b5f:	8b 45 84             	mov    -0x7c(%ebp),%eax
545b62:	c1 e0 0a             	shl    $0xa,%eax
545b65:	89 85 6c ff ff ff    	mov    %eax,-0x94(%ebp)
545b6b:	89 4d 80             	mov    %ecx,-0x80(%ebp)
545b6e:	8b 45 80             	mov    -0x80(%ebp),%eax
545b71:	8b 55 90             	mov    -0x70(%ebp),%edx
545b74:	3b c2                	cmp    %edx,%eax
545b76:	0f 8d c3 00 00 00    	jge    0x545c3f
545b7c:	8b 45 80             	mov    -0x80(%ebp),%eax
545b7f:	8b 95 78 ff ff ff    	mov    -0x88(%ebp),%edx
545b85:	2b c2                	sub    %edx,%eax
545b87:	99                   	cltd
545b88:	33 c2                	xor    %edx,%eax
545b8a:	2b c2                	sub    %edx,%eax
545b8c:	8b 8d 70 ff ff ff    	mov    -0x90(%ebp),%ecx
545b92:	03 c8                	add    %eax,%ecx
545b94:	89 8d 68 ff ff ff    	mov    %ecx,-0x98(%ebp)
545b9a:	8b 95 70 ff ff ff    	mov    -0x90(%ebp),%edx
545ba0:	3b c2                	cmp    %edx,%eax
545ba2:	7d 08                	jge    0x545bac
545ba4:	8b 8d 70 ff ff ff    	mov    -0x90(%ebp),%ecx
545baa:	eb 02                	jmp    0x545bae
545bac:	8b c8                	mov    %eax,%ecx
545bae:	89 8d 64 ff ff ff    	mov    %ecx,-0x9c(%ebp)
545bb4:	8b 45 80             	mov    -0x80(%ebp),%eax
545bb7:	c1 e0 05             	shl    $0x5,%eax
545bba:	8b 95 6c ff ff ff    	mov    -0x94(%ebp),%edx
545bc0:	0b c2                	or     %edx,%eax
545bc2:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
545bc8:	33 c9                	xor    %ecx,%ecx
545bca:	8b 45 8c             	mov    -0x74(%ebp),%eax
545bcd:	3b c8                	cmp    %eax,%ecx
545bcf:	7d 5d                	jge    0x545c2e
545bd1:	8b c1                	mov    %ecx,%eax
545bd3:	8b 95 74 ff ff ff    	mov    -0x8c(%ebp),%edx
545bd9:	2b c2                	sub    %edx,%eax
545bdb:	8b b5 60 ff ff ff    	mov    -0xa0(%ebp),%esi
545be1:	99                   	cltd
545be2:	33 c2                	xor    %edx,%eax
545be4:	0b f1                	or     %ecx,%esi
545be6:	2b c2                	sub    %edx,%eax
545be8:	8b 95 64 ff ff ff    	mov    -0x9c(%ebp),%edx
545bee:	3b c2                	cmp    %edx,%eax
545bf0:	7d 08                	jge    0x545bfa
545bf2:	8b 95 64 ff ff ff    	mov    -0x9c(%ebp),%edx
545bf8:	eb 02                	jmp    0x545bfc
545bfa:	8b d0                	mov    %eax,%edx
545bfc:	8b bd 68 ff ff ff    	mov    -0x98(%ebp),%edi
545c02:	03 d7                	add    %edi,%edx
545c04:	03 c2                	add    %edx,%eax
545c06:	8b 55 9c             	mov    -0x64(%ebp),%edx
545c09:	0f b6 14 32          	movzbl (%edx,%esi,1),%edx
545c0d:	3b c2                	cmp    %edx,%eax
545c0f:	7d 15                	jge    0x545c26
545c11:	8b 55 9c             	mov    -0x64(%ebp),%edx
545c14:	03 d6                	add    %esi,%edx
545c16:	52                   	push   %edx
545c17:	5a                   	pop    %edx
545c18:	88 02                	mov    %al,(%edx)
545c1a:	8b 83 ac 01 00 00    	mov    0x1ac(%ebx),%eax
545c20:	8a 55 a0             	mov    -0x60(%ebp),%dl
545c23:	88 14 30             	mov    %dl,(%eax,%esi,1)
545c26:	41                   	inc    %ecx
545c27:	8b 45 8c             	mov    -0x74(%ebp),%eax
545c2a:	3b c8                	cmp    %eax,%ecx
545c2c:	7c a3                	jl     0x545bd1
545c2e:	ff 45 80             	incl   -0x80(%ebp)
545c31:	8b 4d 80             	mov    -0x80(%ebp),%ecx
545c34:	8b 45 90             	mov    -0x70(%ebp),%eax
545c37:	3b c8                	cmp    %eax,%ecx
545c39:	0f 8c 3d ff ff ff    	jl     0x545b7c
545c3f:	ff 45 84             	incl   -0x7c(%ebp)
545c42:	8b 55 84             	mov    -0x7c(%ebp),%edx
545c45:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
545c48:	3b d1                	cmp    %ecx,%edx
545c4a:	0f 8c f7 fe ff ff    	jl     0x545b47
545c50:	ff 45 a0             	incl   -0x60(%ebp)
545c53:	8b 45 a0             	mov    -0x60(%ebp),%eax
545c56:	8b 55 f8             	mov    -0x8(%ebp),%edx
545c59:	3b c2                	cmp    %edx,%eax
545c5b:	0f 8c 8c fe ff ff    	jl     0x545aed
545c61:	8b 55 9c             	mov    -0x64(%ebp),%edx
545c64:	8b c3                	mov    %ebx,%eax
545c66:	e8 71 51 00 00       	call   0x54addc
545c6b:	5f                   	pop    %edi
545c6c:	5e                   	pop    %esi
545c6d:	5b                   	pop    %ebx
545c6e:	8b e5                	mov    %ebp,%esp
545c70:	5d                   	pop    %ebp
545c71:	c2 0c 00             	ret    $0xc
545c74:	55                   	push   %ebp
545c75:	8b ec                	mov    %esp,%ebp
545c77:	53                   	push   %ebx
545c78:	8b d8                	mov    %eax,%ebx
545c7a:	dd 45 10             	fldl   0x10(%ebp)
545c7d:	dc 4d 08             	fmull  0x8(%ebp)
545c80:	d8 25 d4 5c 54 00    	fsubs  0x545cd4
545c86:	83 c4 f8             	add    $0xfffffff8,%esp
545c89:	dd 1c 24             	fstpl  (%esp)
545c8c:	e8 83 07 fe ff       	call   0x526414
545c91:	83 c4 08             	add    $0x8,%esp
545c94:	dc 1d d8 5c 54 00    	fcompl 0x545cd8
545c9a:	df e0                	fnstsw %ax
545c9c:	9e                   	sahf
545c9d:	77 14                	ja     0x545cb3
545c9f:	f6 83 e6 00 00 00 04 	testb  $0x4,0xe6(%ebx)
545ca6:	75 0b                	jne    0x545cb3
545ca8:	8a 93 e6 00 00 00    	mov    0xe6(%ebx),%dl
545cae:	80 fa 03             	cmp    $0x3,%dl
545cb1:	75 07                	jne    0x545cba
545cb3:	81 4b 30 00 20 00 00 	orl    $0x2000,0x30(%ebx)
545cba:	dd 45 08             	fldl   0x8(%ebp)
545cbd:	d9 9b 1c 01 00 00    	fstps  0x11c(%ebx)
545cc3:	dd 45 10             	fldl   0x10(%ebp)
545cc6:	d9 9b 20 01 00 00    	fstps  0x120(%ebx)
545ccc:	5b                   	pop    %ebx
545ccd:	5d                   	pop    %ebp
545cce:	c2 10 00             	ret    $0x10
545cd1:	00 00                	add    %al,(%eax)
545cd3:	00 00                	add    %al,(%eax)
545cd5:	00 80 3f 9a 99 99    	add    %al,-0x666665c1(%eax)
545cdb:	99                   	cltd
545cdc:	99                   	cltd
545cdd:	99                   	cltd
545cde:	a9 3f 81 48 30       	test   $0x3048813f,%eax
545ce3:	00 10                	add    %dl,(%eax)
545ce5:	00 00                	add    %al,(%eax)
545ce7:	c3                   	ret
545ce8:	81 48 30 00 10 00 00 	orl    $0x1000,0x30(%eax)
545cef:	c3                   	ret
545cf0:	81 48 30 00 10 00 00 	orl    $0x1000,0x30(%eax)
545cf7:	c3                   	ret
545cf8:	81 48 30 00 10 00 00 	orl    $0x1000,0x30(%eax)
545cff:	c3                   	ret
545d00:	81 48 30 00 40 00 00 	orl    $0x4000,0x30(%eax)
545d07:	c3                   	ret
545d08:	55                   	push   %ebp
545d09:	8b ec                	mov    %esp,%ebp
545d0b:	53                   	push   %ebx
545d0c:	56                   	push   %esi
545d0d:	57                   	push   %edi
545d0e:	8b fa                	mov    %edx,%edi
545d10:	8b f0                	mov    %eax,%esi
545d12:	dd 45 10             	fldl   0x10(%ebp)
545d15:	d8 0d 50 5d 54 00    	fmuls  0x545d50
545d1b:	d8 05 54 5d 54 00    	fadds  0x545d54
545d21:	e8 f2 07 fe ff       	call   0x526518
545d26:	8b d8                	mov    %eax,%ebx
545d28:	dd 45 08             	fldl   0x8(%ebp)
545d2b:	d8 0d 50 5d 54 00    	fmuls  0x545d50
545d31:	d8 05 54 5d 54 00    	fadds  0x545d54
545d37:	e8 dc 07 fe ff       	call   0x526518
545d3c:	50                   	push   %eax
545d3d:	8b cb                	mov    %ebx,%ecx
545d3f:	8b d7                	mov    %edi,%edx
545d41:	8b c6                	mov    %esi,%eax
545d43:	e8 10 00 00 00       	call   0x545d58
545d48:	5f                   	pop    %edi
545d49:	5e                   	pop    %esi
545d4a:	5b                   	pop    %ebx
545d4b:	5d                   	pop    %ebp
545d4c:	c2 10 00             	ret    $0x10
545d4f:	00 00                	add    %al,(%eax)
545d51:	50                   	push   %eax
545d52:	c3                   	ret
545d53:	47                   	inc    %edi
545d54:	00 00                	add    %al,(%eax)
545d56:	00 3f                	add    %bh,(%edi)
545d58:	55                   	push   %ebp
545d59:	8b ec                	mov    %esp,%ebp
545d5b:	53                   	push   %ebx
545d5c:	56                   	push   %esi
545d5d:	8b d8                	mov    %eax,%ebx
545d5f:	8b 75 08             	mov    0x8(%ebp),%esi
545d62:	4a                   	dec    %edx
545d63:	74 08                	je     0x545d6d
545d65:	4a                   	dec    %edx
545d66:	74 0e                	je     0x545d76
545d68:	4a                   	dec    %edx
545d69:	74 14                	je     0x545d7f
545d6b:	eb 19                	jmp    0x545d86
545d6d:	81 4b 30 00 00 60 00 	orl    $0x600000,0x30(%ebx)
545d74:	eb 10                	jmp    0x545d86
545d76:	81 4b 30 00 00 40 00 	orl    $0x400000,0x30(%ebx)
545d7d:	eb 07                	jmp    0x545d86
545d7f:	81 4b 30 00 00 20 00 	orl    $0x200000,0x30(%ebx)
545d86:	8a 83 e6 00 00 00    	mov    0xe6(%ebx),%al
545d8c:	3c 03                	cmp    $0x3,%al
545d8e:	75 07                	jne    0x545d97
545d90:	81 4b 30 00 10 00 00 	orl    $0x1000,0x30(%ebx)
545d97:	85 c9                	test   %ecx,%ecx
545d99:	7c 04                	jl     0x545d9f
545d9b:	85 f6                	test   %esi,%esi
545d9d:	7d 0a                	jge    0x545da9
545d9f:	66 b9 38 1b          	mov    $0x1b38,%cx
545da3:	66 b8 8a 5b          	mov    $0x5b8a,%ax