50bc09:	c1 f8 10             	sar    $0x10,%eax
50bc0c:	88 01                	mov    %al,(%ecx)
50bc0e:	ff 45 f8             	incl   -0x8(%ebp)
50bc11:	83 45 cc 04          	addl   $0x4,-0x34(%ebp)
50bc15:	83 45 d0 04          	addl   $0x4,-0x30(%ebp)
50bc19:	8b 45 fc             	mov    -0x4(%ebp),%eax
50bc1c:	8b 50 0c             	mov    0xc(%eax),%edx
50bc1f:	3b 55 f8             	cmp    -0x8(%ebp),%edx
50bc22:	0f 8f dd fe ff ff    	jg     0x50bb05
50bc28:	5e                   	pop    %esi
50bc29:	5b                   	pop    %ebx
50bc2a:	8b e5                	mov    %ebp,%esp
50bc2c:	5d                   	pop    %ebp
50bc2d:	c2 04 00             	ret    $0x4
50bc30:	53                   	push   %ebx
50bc31:	56                   	push   %esi
50bc32:	57                   	push   %edi
50bc33:	55                   	push   %ebp
50bc34:	83 c4 f8             	add    $0xfffffff8,%esp
50bc37:	8b d8                	mov    %eax,%ebx
50bc39:	8b c3                	mov    %ebx,%eax
50bc3b:	b9 34 00 00 00       	mov    $0x34,%ecx
50bc40:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
50bc47:	00
50bc48:	8b 70 04             	mov    0x4(%eax),%esi
50bc4b:	ba 01 00 00 00       	mov    $0x1,%edx
50bc50:	ff 16                	call   *(%esi)
50bc52:	89 04 24             	mov    %eax,(%esp)
50bc55:	8b 04 24             	mov    (%esp),%eax
50bc58:	89 83 5c 01 00 00    	mov    %eax,0x15c(%ebx)
50bc5e:	8b 14 24             	mov    (%esp),%edx
50bc61:	c7 02 90 b4 50 00    	movl   $0x50b490,(%edx)
50bc67:	8b 0c 24             	mov    (%esp),%ecx
50bc6a:	c7 41 04 e4 b4 50 00 	movl   $0x50b4e4,0x4(%ecx)
50bc71:	8b 04 24             	mov    (%esp),%eax
50bc74:	33 d2                	xor    %edx,%edx
50bc76:	89 50 08             	mov    %edx,0x8(%eax)
50bc79:	83 bb b4 00 00 00 00 	cmpl   $0x0,0xb4(%ebx)
50bc80:	74 0f                	je     0x50bc91
50bc82:	8b 0b                	mov    (%ebx),%ecx
50bc84:	8b c3                	mov    %ebx,%eax
50bc86:	c7 41 14 17 00 00 00 	movl   $0x17,0x14(%ecx)
50bc8d:	8b 10                	mov    (%eax),%edx
50bc8f:	ff 12                	call   *(%edx)
50bc91:	33 ed                	xor    %ebp,%ebp
50bc93:	8b 73 3c             	mov    0x3c(%ebx),%esi
50bc96:	8b 04 24             	mov    (%esp),%eax
50bc99:	8d 78 0c             	lea    0xc(%eax),%edi
50bc9c:	e9 e2 00 00 00       	jmp    0x50bd83
50bca1:	8b 46 08             	mov    0x8(%esi),%eax
50bca4:	3b 83 e0 00 00 00    	cmp    0xe0(%ebx),%eax
50bcaa:	75 34                	jne    0x50bce0
50bcac:	8b 56 0c             	mov    0xc(%esi),%edx
50bcaf:	3b 93 e4 00 00 00    	cmp    0xe4(%ebx),%edx
50bcb5:	75 29                	jne    0x50bce0
50bcb7:	83 bb b8 00 00 00 00 	cmpl   $0x0,0xb8(%ebx)
50bcbe:	74 15                	je     0x50bcd5
50bcc0:	c7 07 a0 ba 50 00    	movl   $0x50baa0,(%edi)
50bcc6:	8b 0c 24             	mov    (%esp),%ecx
50bcc9:	c7 41 08 01 00 00 00 	movl   $0x1,0x8(%ecx)
50bcd0:	e9 a7 00 00 00       	jmp    0x50bd7c
50bcd5:	c7 07 78 b6 50 00    	movl   $0x50b678,(%edi)
50bcdb:	e9 9c 00 00 00       	jmp    0x50bd7c
50bce0:	8b 46 08             	mov    0x8(%esi),%eax
50bce3:	03 c0                	add    %eax,%eax
50bce5:	3b 83 e0 00 00 00    	cmp    0xe0(%ebx),%eax
50bceb:	75 19                	jne    0x50bd06
50bced:	8b 56 0c             	mov    0xc(%esi),%edx
50bcf0:	3b 93 e4 00 00 00    	cmp    0xe4(%ebx),%edx
50bcf6:	75 0e                	jne    0x50bd06
50bcf8:	33 c9                	xor    %ecx,%ecx
50bcfa:	89 4c 24 04          	mov    %ecx,0x4(%esp)
50bcfe:	c7 07 c4 b6 50 00    	movl   $0x50b6c4,(%edi)
50bd04:	eb 76                	jmp    0x50bd7c
50bd06:	8b 46 08             	mov    0x8(%esi),%eax
50bd09:	03 c0                	add    %eax,%eax
50bd0b:	3b 83 e0 00 00 00    	cmp    0xe0(%ebx),%eax
50bd11:	75 30                	jne    0x50bd43
50bd13:	8b 56 0c             	mov    0xc(%esi),%edx
50bd16:	03 d2                	add    %edx,%edx
50bd18:	3b 93 e4 00 00 00    	cmp    0xe4(%ebx),%edx
50bd1e:	75 23                	jne    0x50bd43
50bd20:	83 bb b8 00 00 00 00 	cmpl   $0x0,0xb8(%ebx)
50bd27:	74 12                	je     0x50bd3b
50bd29:	c7 07 10 b8 50 00    	movl   $0x50b810,(%edi)
50bd2f:	8b 0c 24             	mov    (%esp),%ecx
50bd32:	c7 41 08 01 00 00 00 	movl   $0x1,0x8(%ecx)
50bd39:	eb 41                	jmp    0x50bd7c
50bd3b:	c7 07 58 b7 50 00    	movl   $0x50b758,(%edi)
50bd41:	eb 39                	jmp    0x50bd7c
50bd43:	8b 83 e0 00 00 00    	mov    0xe0(%ebx),%eax
50bd49:	99                   	cltd
50bd4a:	f7 7e 08             	idivl  0x8(%esi)
50bd4d:	85 d2                	test   %edx,%edx
50bd4f:	75 1c                	jne    0x50bd6d
50bd51:	8b 83 e4 00 00 00    	mov    0xe4(%ebx),%eax
50bd57:	99                   	cltd
50bd58:	f7 7e 0c             	idivl  0xc(%esi)
50bd5b:	85 d2                	test   %edx,%edx
50bd5d:	75 0e                	jne    0x50bd6d
50bd5f:	33 c9                	xor    %ecx,%ecx
50bd61:	89 4c 24 04          	mov    %ecx,0x4(%esp)
50bd65:	c7 07 68 b5 50 00    	movl   $0x50b568,(%edi)
50bd6b:	eb 0f                	jmp    0x50bd7c
50bd6d:	8b 03                	mov    (%ebx),%eax
50bd6f:	c7 40 14 25 00 00 00 	movl   $0x25,0x14(%eax)
50bd76:	8b c3                	mov    %ebx,%eax
50bd78:	8b 10                	mov    (%eax),%edx
50bd7a:	ff 12                	call   *(%edx)
50bd7c:	83 c7 04             	add    $0x4,%edi
50bd7f:	45                   	inc    %ebp
50bd80:	83 c6 54             	add    $0x54,%esi
50bd83:	3b 6b 34             	cmp    0x34(%ebx),%ebp
50bd86:	0f 8c 15 ff ff ff    	jl     0x50bca1
50bd8c:	83 bb b8 00 00 00 00 	cmpl   $0x0,0xb8(%ebx)
50bd93:	74 19                	je     0x50bdae
50bd95:	83 7c 24 04 00       	cmpl   $0x0,0x4(%esp)
50bd9a:	75 12                	jne    0x50bdae
50bd9c:	8b 0b                	mov    (%ebx),%ecx
50bd9e:	8b c3                	mov    %ebx,%eax
50bda0:	33 d2                	xor    %edx,%edx
50bda2:	c7 41 14 62 00 00 00 	movl   $0x62,0x14(%ecx)
50bda9:	8b 08                	mov    (%eax),%ecx
50bdab:	ff 51 04             	call   *0x4(%ecx)
50bdae:	59                   	pop    %ecx
50bdaf:	5a                   	pop    %edx
50bdb0:	5d                   	pop    %ebp
50bdb1:	5f                   	pop    %edi
50bdb2:	5e                   	pop    %esi
50bdb3:	5b                   	pop    %ebx
50bdb4:	c3                   	ret
50bdb5:	8d 40 00             	lea    0x0(%eax),%eax
50bdb8:	53                   	push   %ebx
50bdb9:	56                   	push   %esi
50bdba:	57                   	push   %edi
50bdbb:	83 c4 d8             	add    $0xffffffd8,%esp
50bdbe:	33 c9                	xor    %ecx,%ecx
50bdc0:	89 04 24             	mov    %eax,(%esp)
50bdc3:	8b 04 24             	mov    (%esp),%eax
50bdc6:	8b 90 60 01 00 00    	mov    0x160(%eax),%edx
50bdcc:	89 54 24 04          	mov    %edx,0x4(%esp)
50bdd0:	89 4c 24 08          	mov    %ecx,0x8(%esp)
50bdd4:	8b 04 24             	mov    (%esp),%eax
50bdd7:	8b 50 3c             	mov    0x3c(%eax),%edx
50bdda:	89 54 24 0c          	mov    %edx,0xc(%esp)
50bdde:	e9 6e 01 00 00       	jmp    0x50bf51
50bde3:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
50bde7:	8b 59 10             	mov    0x10(%ecx),%ebx
50bdea:	85 db                	test   %ebx,%ebx
50bdec:	7c 0f                	jl     0x50bdfd
50bdee:	83 fb 04             	cmp    $0x4,%ebx
50bdf1:	7d 0a                	jge    0x50bdfd
50bdf3:	8b 04 24             	mov    (%esp),%eax
50bdf6:	83 7c 98 40 00       	cmpl   $0x0,0x40(%eax,%ebx,4)
50bdfb:	75 16                	jne    0x50be13
50bdfd:	8b 14 24             	mov    (%esp),%edx
50be00:	8b 02                	mov    (%edx),%eax
50be02:	c7 40 14 33 00 00 00 	movl   $0x33,0x14(%eax)
50be09:	89 58 18             	mov    %ebx,0x18(%eax)
50be0c:	8b 04 24             	mov    (%esp),%eax
50be0f:	8b 10                	mov    (%eax),%edx
50be11:	ff 12                	call   *(%edx)
50be13:	8b 0c 24             	mov    (%esp),%ecx
50be16:	8b 44 99 40          	mov    0x40(%ecx,%ebx,4),%eax
50be1a:	89 44 24 10          	mov    %eax,0x10(%esp)
50be1e:	8b 14 24             	mov    (%esp),%edx
50be21:	8b 8a bc 00 00 00    	mov    0xbc(%edx),%ecx
50be27:	49                   	dec    %ecx
50be28:	74 08                	je     0x50be32
50be2a:	49                   	dec    %ecx
50be2b:	74 67                	je     0x50be94
50be2d:	e9 03 01 00 00       	jmp    0x50bf35
50be32:	8b 44 24 04          	mov    0x4(%esp),%eax
50be36:	83 7c 98 0c 00       	cmpl   $0x0,0xc(%eax,%ebx,4)
50be3b:	75 1a                	jne    0x50be57
50be3d:	8b 04 24             	mov    (%esp),%eax
50be40:	b9 00 01 00 00       	mov    $0x100,%ecx
50be45:	ba 01 00 00 00       	mov    $0x1,%edx
50be4a:	8b 70 04             	mov    0x4(%eax),%esi
50be4d:	ff 16                	call   *(%esi)
50be4f:	8b 54 24 04          	mov    0x4(%esp),%edx
50be53:	89 44 9a 0c          	mov    %eax,0xc(%edx,%ebx,4)
50be57:	8b 44 24 04          	mov    0x4(%esp),%eax
50be5b:	33 f6                	xor    %esi,%esi
50be5d:	ba 44 de 68 00       	mov    $0x68de44,%edx
50be62:	8b 44 98 0c          	mov    0xc(%eax,%ebx,4),%eax
50be66:	8b c8                	mov    %eax,%ecx
50be68:	8b 44 24 10          	mov    0x10(%esp),%eax
50be6c:	0f bf 3a             	movswl (%edx),%edi
50be6f:	0f b7 18             	movzwl (%eax),%ebx
50be72:	0f af df             	imul   %edi,%ebx
50be75:	81 c3 00 04 00 00    	add    $0x400,%ebx
50be7b:	83 c0 02             	add    $0x2,%eax
50be7e:	c1 fb 0b             	sar    $0xb,%ebx
50be81:	83 c2 02             	add    $0x2,%edx
50be84:	89 19                	mov    %ebx,(%ecx)
50be86:	83 c1 04             	add    $0x4,%ecx
50be89:	46                   	inc    %esi
50be8a:	83 fe 40             	cmp    $0x40,%esi
50be8d:	7c dd                	jl     0x50be6c
50be8f:	e9 b4 00 00 00       	jmp    0x50bf48
50be94:	8b 44 24 04          	mov    0x4(%esp),%eax
50be98:	83 7c 98 20 00       	cmpl   $0x0,0x20(%eax,%ebx,4)
50be9d:	75 1a                	jne    0x50beb9
50be9f:	8b 04 24             	mov    (%esp),%eax
50bea2:	b9 00 01 00 00       	mov    $0x100,%ecx
50bea7:	ba 01 00 00 00       	mov    $0x1,%edx
50beac:	8b 70 04             	mov    0x4(%eax),%esi
50beaf:	ff 16                	call   *(%esi)
50beb1:	8b 54 24 04          	mov    0x4(%esp),%edx
50beb5:	89 44 9a 20          	mov    %eax,0x20(%edx,%ebx,4)
50beb9:	8b 44 24 04          	mov    0x4(%esp),%eax
50bebd:	33 f6                	xor    %esi,%esi
50bebf:	8b 4c 98 20          	mov    0x20(%eax,%ebx,4),%ecx
50bec3:	33 c0                	xor    %eax,%eax
50bec5:	89 4c 24 14          	mov    %ecx,0x14(%esp)
50bec9:	89 44 24 18          	mov    %eax,0x18(%esp)
50becd:	c7 44 24 20 c4 de 68 	movl   $0x68dec4,0x20(%esp)
50bed4:	00
50bed5:	33 db                	xor    %ebx,%ebx
50bed7:	8b 44 24 14          	mov    0x14(%esp),%eax
50bedb:	8d 0c b0             	lea    (%eax,%esi,4),%ecx
50bede:	ba c4 de 68 00       	mov    $0x68dec4,%edx
50bee3:	8b 44 24 20          	mov    0x20(%esp),%eax
50bee7:	89 44 24 1c          	mov    %eax,0x1c(%esp)
50beeb:	8b 44 24 10          	mov    0x10(%esp),%eax
50beef:	8d 04 70             	lea    (%eax,%esi,2),%eax
50bef2:	0f b7 38             	movzwl (%eax),%edi
50bef5:	89 7c 24 24          	mov    %edi,0x24(%esp)
50bef9:	db 44 24 24          	fildl  0x24(%esp)
50befd:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
50bf01:	dc 0f                	fmull  (%edi)
50bf03:	dc 0a                	fmull  (%edx)
50bf05:	d8 0d 68 bf 50 00    	fmuls  0x50bf68
50bf0b:	d8 3d 6c bf 50 00    	fdivrs 0x50bf6c
50bf11:	d9 19                	fstps  (%ecx)
50bf13:	46                   	inc    %esi
50bf14:	83 c1 04             	add    $0x4,%ecx
50bf17:	83 c0 02             	add    $0x2,%eax
50bf1a:	43                   	inc    %ebx
50bf1b:	83 c2 08             	add    $0x8,%edx
50bf1e:	83 fb 08             	cmp    $0x8,%ebx
50bf21:	7c cf                	jl     0x50bef2
50bf23:	ff 44 24 18          	incl   0x18(%esp)
50bf27:	83 44 24 20 08       	addl   $0x8,0x20(%esp)
50bf2c:	83 7c 24 18 08       	cmpl   $0x8,0x18(%esp)
50bf31:	7c a2                	jl     0x50bed5
50bf33:	eb 13                	jmp    0x50bf48
50bf35:	8b 04 24             	mov    (%esp),%eax
50bf38:	8b 10                	mov    (%eax),%edx
50bf3a:	c7 42 14 2f 00 00 00 	movl   $0x2f,0x14(%edx)
50bf41:	8b 04 24             	mov    (%esp),%eax
50bf44:	8b 10                	mov    (%eax),%edx
50bf46:	ff 12                	call   *(%edx)
50bf48:	ff 44 24 08          	incl   0x8(%esp)
50bf4c:	83 44 24 0c 54       	addl   $0x54,0xc(%esp)
50bf51:	8b 0c 24             	mov    (%esp),%ecx
50bf54:	8b 41 34             	mov    0x34(%ecx),%eax
50bf57:	3b 44 24 08          	cmp    0x8(%esp),%eax
50bf5b:	0f 8f 82 fe ff ff    	jg     0x50bde3
50bf61:	83 c4 28             	add    $0x28,%esp
50bf64:	5f                   	pop    %edi
50bf65:	5e                   	pop    %esi
50bf66:	5b                   	pop    %ebx
50bf67:	c3                   	ret
50bf68:	00 00                	add    %al,(%eax)
50bf6a:	00 41 00             	add    %al,0x0(%ecx)
50bf6d:	00 80 3f 55 8b ec    	add    %al,-0x1374aac1(%eax)
50bf73:	81 c4 e4 fe ff ff    	add    $0xfffffee4,%esp
50bf79:	53                   	push   %ebx
50bf7a:	56                   	push   %esi
50bf7b:	57                   	push   %edi
50bf7c:	89 4d fc             	mov    %ecx,-0x4(%ebp)
50bf7f:	8b 80 60 01 00 00    	mov    0x160(%eax),%eax
50bf85:	8b 48 08             	mov    0x8(%eax),%ecx
50bf88:	89 4d f8             	mov    %ecx,-0x8(%ebp)
50bf8b:	8b 52 10             	mov    0x10(%edx),%edx
50bf8e:	8b 44 90 0c          	mov    0xc(%eax,%edx,4),%eax
50bf92:	33 d2                	xor    %edx,%edx
50bf94:	89 45 f4             	mov    %eax,-0xc(%ebp)
50bf97:	8b 45 10             	mov    0x10(%ebp),%eax
50bf9a:	c1 e0 02             	shl    $0x2,%eax
50bf9d:	01 45 fc             	add    %eax,-0x4(%ebp)
50bfa0:	89 55 f0             	mov    %edx,-0x10(%ebp)
50bfa3:	8b 4d f0             	mov    -0x10(%ebp),%ecx
50bfa6:	3b 4d 08             	cmp    0x8(%ebp),%ecx
50bfa9:	0f 83 0c 01 00 00    	jae    0x50c0bb
50bfaf:	8b 45 fc             	mov    -0x4(%ebp),%eax
50bfb2:	8d 95 e4 fe ff ff    	lea    -0x11c(%ebp),%edx
50bfb8:	8b c8                	mov    %eax,%ecx
50bfba:	33 db                	xor    %ebx,%ebx
50bfbc:	8b 01                	mov    (%ecx),%eax
50bfbe:	83 c1 04             	add    $0x4,%ecx
50bfc1:	03 45 0c             	add    0xc(%ebp),%eax
50bfc4:	43                   	inc    %ebx
50bfc5:	0f b6 30             	movzbl (%eax),%esi
50bfc8:	40                   	inc    %eax
50bfc9:	83 c6 80             	add    $0xffffff80,%esi
50bfcc:	89 32                	mov    %esi,(%edx)
50bfce:	83 c2 04             	add    $0x4,%edx
50bfd1:	0f b6 30             	movzbl (%eax),%esi
50bfd4:	40                   	inc    %eax
50bfd5:	83 c6 80             	add    $0xffffff80,%esi
50bfd8:	89 32                	mov    %esi,(%edx)
50bfda:	83 c2 04             	add    $0x4,%edx
50bfdd:	0f b6 30             	movzbl (%eax),%esi
50bfe0:	40                   	inc    %eax
50bfe1:	83 c6 80             	add    $0xffffff80,%esi
50bfe4:	89 32                	mov    %esi,(%edx)
50bfe6:	83 c2 04             	add    $0x4,%edx
50bfe9:	0f b6 30             	movzbl (%eax),%esi
50bfec:	40                   	inc    %eax
50bfed:	83 c6 80             	add    $0xffffff80,%esi
50bff0:	89 32                	mov    %esi,(%edx)
50bff2:	83 c2 04             	add    $0x4,%edx
50bff5:	0f b6 30             	movzbl (%eax),%esi
50bff8:	40                   	inc    %eax
50bff9:	83 c6 80             	add    $0xffffff80,%esi
50bffc:	89 32                	mov    %esi,(%edx)
50bffe:	83 c2 04             	add    $0x4,%edx
50c001:	0f b6 30             	movzbl (%eax),%esi
50c004:	40                   	inc    %eax
50c005:	83 c6 80             	add    $0xffffff80,%esi
50c008:	89 32                	mov    %esi,(%edx)
50c00a:	83 c2 04             	add    $0x4,%edx
50c00d:	0f b6 30             	movzbl (%eax),%esi
50c010:	40                   	inc    %eax
50c011:	83 c6 80             	add    $0xffffff80,%esi
50c014:	89 32                	mov    %esi,(%edx)
50c016:	83 c2 04             	add    $0x4,%edx
50c019:	0f b6 00             	movzbl (%eax),%eax
50c01c:	83 c0 80             	add    $0xffffff80,%eax
50c01f:	89 02                	mov    %eax,(%edx)
50c021:	83 c2 04             	add    $0x4,%edx
50c024:	83 fb 08             	cmp    $0x8,%ebx
50c027:	7c 93                	jl     0x50bfbc
50c029:	8d 85 e4 fe ff ff    	lea    -0x11c(%ebp),%eax
50c02f:	ff 55 f8             	call   *-0x8(%ebp)
50c032:	8b 45 f0             	mov    -0x10(%ebp),%eax
50c035:	c1 e0 07             	shl    $0x7,%eax
50c038:	03 45 14             	add    0x14(%ebp),%eax
50c03b:	33 d2                	xor    %edx,%edx
50c03d:	89 55 ec             	mov    %edx,-0x14(%ebp)
50c040:	8b c8                	mov    %eax,%ecx
50c042:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
50c045:	8d 85 e4 fe ff ff    	lea    -0x11c(%ebp),%eax
50c04b:	89 45 e8             	mov    %eax,-0x18(%ebp)
50c04e:	8b 55 f4             	mov    -0xc(%ebp),%edx
50c051:	8b f2                	mov    %edx,%esi
50c053:	8b 3e                	mov    (%esi),%edi