5b8eea:	8b 45 90             	mov    -0x70(%ebp),%eax
5b8eed:	85 c0                	test   %eax,%eax
5b8eef:	0f 8c d9 00 00 00    	jl     0x5b8fce
5b8ef5:	40                   	inc    %eax
5b8ef6:	89 45 88             	mov    %eax,-0x78(%ebp)
5b8ef9:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
5b8f00:	db 45 f4             	fildl  -0xc(%ebp)
5b8f03:	dc 4d e8             	fmull  -0x18(%ebp)
5b8f06:	dd 5d d8             	fstpl  -0x28(%ebp)
5b8f09:	9b dd 45 e8          	fldl   -0x18(%ebp)
5b8f0d:	d8 35 48 91 5b 00    	fdivs  0x5b9148
5b8f13:	dc 6d d8             	fsubrl -0x28(%ebp)
5b8f16:	e8 b1 9d e4 ff       	call   0x402ccc
5b8f1b:	03 c3                	add    %ebx,%eax
5b8f1d:	8b 55 9c             	mov    -0x64(%ebp),%edx
5b8f20:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5b8f23:	89 04 8a             	mov    %eax,(%edx,%ecx,4)
5b8f26:	8b 45 9c             	mov    -0x64(%ebp),%eax
5b8f29:	8b 55 f4             	mov    -0xc(%ebp),%edx
5b8f2c:	83 3c 90 00          	cmpl   $0x0,(%eax,%edx,4)
5b8f30:	7d 0b                	jge    0x5b8f3d
5b8f32:	8b 45 9c             	mov    -0x64(%ebp),%eax
5b8f35:	8b 55 f4             	mov    -0xc(%ebp),%edx
5b8f38:	33 c9                	xor    %ecx,%ecx
5b8f3a:	89 0c 90             	mov    %ecx,(%eax,%edx,4)
5b8f3d:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b8f40:	8b 10                	mov    (%eax),%edx
5b8f42:	ff 52 0c             	call   *0xc(%edx)
5b8f45:	8b 55 9c             	mov    -0x64(%ebp),%edx
5b8f48:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5b8f4b:	8b 14 8a             	mov    (%edx,%ecx,4),%edx
5b8f4e:	2b d3                	sub    %ebx,%edx
5b8f50:	3b c2                	cmp    %edx,%eax
5b8f52:	7d 12                	jge    0x5b8f66
5b8f54:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b8f57:	8b 10                	mov    (%eax),%edx
5b8f59:	ff 52 0c             	call   *0xc(%edx)
5b8f5c:	48                   	dec    %eax
5b8f5d:	8b 55 9c             	mov    -0x64(%ebp),%edx
5b8f60:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5b8f63:	89 04 8a             	mov    %eax,(%edx,%ecx,4)
5b8f66:	dd 45 e8             	fldl   -0x18(%ebp)
5b8f69:	d8 35 48 91 5b 00    	fdivs  0x5b9148
5b8f6f:	dc 45 d8             	faddl  -0x28(%ebp)
5b8f72:	e8 55 9d e4 ff       	call   0x402ccc
5b8f77:	03 c3                	add    %ebx,%eax
5b8f79:	8b 55 98             	mov    -0x68(%ebp),%edx
5b8f7c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5b8f7f:	89 04 8a             	mov    %eax,(%edx,%ecx,4)
5b8f82:	8b 45 98             	mov    -0x68(%ebp),%eax
5b8f85:	8b 55 f4             	mov    -0xc(%ebp),%edx
5b8f88:	83 3c 90 00          	cmpl   $0x0,(%eax,%edx,4)
5b8f8c:	7d 0b                	jge    0x5b8f99
5b8f8e:	8b 45 98             	mov    -0x68(%ebp),%eax
5b8f91:	8b 55 f4             	mov    -0xc(%ebp),%edx
5b8f94:	33 c9                	xor    %ecx,%ecx
5b8f96:	89 0c 90             	mov    %ecx,(%eax,%edx,4)
5b8f99:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b8f9c:	8b 10                	mov    (%eax),%edx
5b8f9e:	ff 52 0c             	call   *0xc(%edx)
5b8fa1:	8b 55 98             	mov    -0x68(%ebp),%edx
5b8fa4:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5b8fa7:	8b 14 8a             	mov    (%edx,%ecx,4),%edx
5b8faa:	2b d3                	sub    %ebx,%edx
5b8fac:	3b c2                	cmp    %edx,%eax
5b8fae:	7d 12                	jge    0x5b8fc2
5b8fb0:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b8fb3:	8b 10                	mov    (%eax),%edx
5b8fb5:	ff 52 0c             	call   *0xc(%edx)
5b8fb8:	48                   	dec    %eax
5b8fb9:	8b 55 98             	mov    -0x68(%ebp),%edx
5b8fbc:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5b8fbf:	89 04 8a             	mov    %eax,(%edx,%ecx,4)
5b8fc2:	ff 45 f4             	incl   -0xc(%ebp)
5b8fc5:	ff 4d 88             	decl   -0x78(%ebp)
5b8fc8:	0f 85 32 ff ff ff    	jne    0x5b8f00
5b8fce:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b8fd1:	8b 10                	mov    (%eax),%edx
5b8fd3:	ff 52 0c             	call   *0xc(%edx)
5b8fd6:	e8 d1 97 e4 ff       	call   0x4027ac
5b8fdb:	89 45 94             	mov    %eax,-0x6c(%ebp)
5b8fde:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b8fe1:	8b 10                	mov    (%eax),%edx
5b8fe3:	ff 52 0c             	call   *0xc(%edx)
5b8fe6:	48                   	dec    %eax
5b8fe7:	85 c0                	test   %eax,%eax
5b8fe9:	7c 34                	jl     0x5b901f
5b8feb:	40                   	inc    %eax
5b8fec:	89 45 88             	mov    %eax,-0x78(%ebp)
5b8fef:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
5b8ff6:	8b 45 f4             	mov    -0xc(%ebp),%eax
5b8ff9:	25 07 00 00 80       	and    $0x80000007,%eax
5b8ffe:	79 05                	jns    0x5b9005
5b9000:	48                   	dec    %eax
5b9001:	83 c8 f8             	or     $0xfffffff8,%eax
5b9004:	40                   	inc    %eax
5b9005:	8b 15 88 6d 6a 00    	mov    0x6a6d88,%edx
5b900b:	8a 04 02             	mov    (%edx,%eax,1),%al
5b900e:	8b 55 94             	mov    -0x6c(%ebp),%edx
5b9011:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5b9014:	88 04 0a             	mov    %al,(%edx,%ecx,1)
5b9017:	ff 45 f4             	incl   -0xc(%ebp)
5b901a:	ff 4d 88             	decl   -0x78(%ebp)
5b901d:	75 d7                	jne    0x5b8ff6
5b901f:	8b 45 8c             	mov    -0x74(%ebp),%eax
5b9022:	85 c0                	test   %eax,%eax
5b9024:	0f 8c ec 00 00 00    	jl     0x5b9116
5b902a:	40                   	inc    %eax
5b902b:	89 45 88             	mov    %eax,-0x78(%ebp)
5b902e:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
5b9035:	8b 55 f0             	mov    -0x10(%ebp),%edx
5b9038:	8b 45 08             	mov    0x8(%ebp),%eax
5b903b:	8b 08                	mov    (%eax),%ecx
5b903d:	ff 11                	call   *(%ecx)
5b903f:	89 45 cc             	mov    %eax,-0x34(%ebp)
5b9042:	8b 45 a4             	mov    -0x5c(%ebp),%eax
5b9045:	8b 55 f0             	mov    -0x10(%ebp),%edx
5b9048:	8b 04 90             	mov    (%eax,%edx,4),%eax
5b904b:	89 45 bc             	mov    %eax,-0x44(%ebp)
5b904e:	8b 45 a0             	mov    -0x60(%ebp),%eax
5b9051:	8b 55 f0             	mov    -0x10(%ebp),%edx
5b9054:	8b 04 90             	mov    (%eax,%edx,4),%eax
5b9057:	89 45 b8             	mov    %eax,-0x48(%ebp)
5b905a:	8b 45 90             	mov    -0x70(%ebp),%eax
5b905d:	85 c0                	test   %eax,%eax
5b905f:	0f 8c a5 00 00 00    	jl     0x5b910a
5b9065:	40                   	inc    %eax
5b9066:	89 45 84             	mov    %eax,-0x7c(%ebp)
5b9069:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
5b9070:	8b 45 9c             	mov    -0x64(%ebp),%eax
5b9073:	8b 55 f4             	mov    -0xc(%ebp),%edx
5b9076:	8b 04 90             	mov    (%eax,%edx,4),%eax
5b9079:	89 45 b4             	mov    %eax,-0x4c(%ebp)
5b907c:	8b 45 98             	mov    -0x68(%ebp),%eax
5b907f:	8b 55 f4             	mov    -0xc(%ebp),%edx
5b9082:	8b 04 90             	mov    (%eax,%edx,4),%eax
5b9085:	89 45 b0             	mov    %eax,-0x50(%ebp)
5b9088:	33 c0                	xor    %eax,%eax
5b908a:	89 45 c4             	mov    %eax,-0x3c(%ebp)
5b908d:	33 c0                	xor    %eax,%eax
5b908f:	89 45 c0             	mov    %eax,-0x40(%ebp)
5b9092:	8b 45 bc             	mov    -0x44(%ebp),%eax
5b9095:	8b 55 b8             	mov    -0x48(%ebp),%edx
5b9098:	2b d0                	sub    %eax,%edx
5b909a:	7c 47                	jl     0x5b90e3
5b909c:	42                   	inc    %edx
5b909d:	89 55 80             	mov    %edx,-0x80(%ebp)
5b90a0:	89 45 c8             	mov    %eax,-0x38(%ebp)
5b90a3:	8b 55 c8             	mov    -0x38(%ebp),%edx
5b90a6:	03 55 f8             	add    -0x8(%ebp),%edx
5b90a9:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b90ac:	8b 08                	mov    (%eax),%ecx
5b90ae:	ff 11                	call   *(%ecx)
5b90b0:	8b c8                	mov    %eax,%ecx
5b90b2:	8b 45 b4             	mov    -0x4c(%ebp),%eax
5b90b5:	8b 55 b0             	mov    -0x50(%ebp),%edx
5b90b8:	2b d0                	sub    %eax,%edx
5b90ba:	7c 1f                	jl     0x5b90db
5b90bc:	42                   	inc    %edx
5b90bd:	8b d8                	mov    %eax,%ebx
5b90bf:	c1 eb 03             	shr    $0x3,%ebx
5b90c2:	8a 1c 19             	mov    (%ecx,%ebx,1),%bl
5b90c5:	8b 75 94             	mov    -0x6c(%ebp),%esi
5b90c8:	22 1c 06             	and    (%esi,%eax,1),%bl
5b90cb:	74 07                	je     0x5b90d4
5b90cd:	81 45 c0 ff 00 00 00 	addl   $0xff,-0x40(%ebp)
5b90d4:	ff 45 c4             	incl   -0x3c(%ebp)
5b90d7:	40                   	inc    %eax
5b90d8:	4a                   	dec    %edx
5b90d9:	75 e2                	jne    0x5b90bd
5b90db:	ff 45 c8             	incl   -0x38(%ebp)
5b90de:	ff 4d 80             	decl   -0x80(%ebp)
5b90e1:	75 c0                	jne    0x5b90a3
5b90e3:	8b 4d cc             	mov    -0x34(%ebp),%ecx
5b90e6:	8b 45 c0             	mov    -0x40(%ebp),%eax
5b90e9:	99                   	cltd
5b90ea:	f7 7d c4             	idivl  -0x3c(%ebp)
5b90ed:	8b d8                	mov    %eax,%ebx
5b90ef:	88 59 02             	mov    %bl,0x2(%ecx)
5b90f2:	88 59 01             	mov    %bl,0x1(%ecx)
5b90f5:	8a 41 02             	mov    0x2(%ecx),%al
5b90f8:	88 01                	mov    %al,(%ecx)
5b90fa:	83 45 cc 03          	addl   $0x3,-0x34(%ebp)
5b90fe:	ff 45 f4             	incl   -0xc(%ebp)
5b9101:	ff 4d 84             	decl   -0x7c(%ebp)
5b9104:	0f 85 66 ff ff ff    	jne    0x5b9070
5b910a:	ff 45 f0             	incl   -0x10(%ebp)
5b910d:	ff 4d 88             	decl   -0x78(%ebp)
5b9110:	0f 85 1f ff ff ff    	jne    0x5b9035
5b9116:	8b 45 a4             	mov    -0x5c(%ebp),%eax
5b9119:	e8 ae 96 e4 ff       	call   0x4027cc
5b911e:	8b 45 a0             	mov    -0x60(%ebp),%eax
5b9121:	e8 a6 96 e4 ff       	call   0x4027cc
5b9126:	8b 45 9c             	mov    -0x64(%ebp),%eax
5b9129:	e8 9e 96 e4 ff       	call   0x4027cc
5b912e:	8b 45 98             	mov    -0x68(%ebp),%eax
5b9131:	e8 96 96 e4 ff       	call   0x4027cc
5b9136:	8b 45 94             	mov    -0x6c(%ebp),%eax
5b9139:	e8 8e 96 e4 ff       	call   0x4027cc
5b913e:	5e                   	pop    %esi
5b913f:	5b                   	pop    %ebx
5b9140:	8b e5                	mov    %ebp,%esp
5b9142:	5d                   	pop    %ebp
5b9143:	c2 0c 00             	ret    $0xc
5b9146:	00 00                	add    %al,(%eax)
5b9148:	00 00                	add    %al,(%eax)
5b914a:	00 40 55             	add    %al,0x55(%eax)
5b914d:	8b ec                	mov    %esp,%ebp
5b914f:	51                   	push   %ecx
5b9150:	53                   	push   %ebx
5b9151:	56                   	push   %esi
5b9152:	33 f6                	xor    %esi,%esi
5b9154:	8b 45 10             	mov    0x10(%ebp),%eax
5b9157:	8d 98 00 ff ff ff    	lea    -0x100(%eax),%ebx
5b915d:	89 75 fc             	mov    %esi,-0x4(%ebp)
5b9160:	db 45 fc             	fildl  -0x4(%ebp)
5b9163:	d8 35 a8 91 5b 00    	fdivs  0x5b91a8
5b9169:	83 c4 f4             	add    $0xfffffff4,%esp
5b916c:	db 3c 24             	fstpt  (%esp)
5b916f:	9b d9 05 ac 91 5b 00 	flds   0x5b91ac
5b9176:	dc 75 08             	fdivl  0x8(%ebp)
5b9179:	83 c4 f4             	add    $0xfffffff4,%esp
5b917c:	db 3c 24             	fstpt  (%esp)
5b917f:	9b                   	fwait
5b9180:	e8 9b 7a 03 00       	call   0x5f0c20
5b9185:	d8 0d a8 91 5b 00    	fmuls  0x5b91a8
5b918b:	e8 30 9b e4 ff       	call   0x402cc0
5b9190:	e8 9f 02 ff ff       	call   0x5a9434
5b9195:	88 03                	mov    %al,(%ebx)
5b9197:	46                   	inc    %esi
5b9198:	43                   	inc    %ebx
5b9199:	81 fe 00 01 00 00    	cmp    $0x100,%esi
5b919f:	75 bc                	jne    0x5b915d
5b91a1:	5e                   	pop    %esi
5b91a2:	5b                   	pop    %ebx
5b91a3:	59                   	pop    %ecx
5b91a4:	5d                   	pop    %ebp
5b91a5:	c2 08 00             	ret    $0x8
5b91a8:	00 00                	add    %al,(%eax)
5b91aa:	7f 43                	jg     0x5b91ef
5b91ac:	00 00                	add    %al,(%eax)
5b91ae:	80 3f 55             	cmpb   $0x55,(%edi)
5b91b1:	8b ec                	mov    %esp,%ebp
5b91b3:	81 c4 e0 fe ff ff    	add    $0xfffffee0,%esp
5b91b9:	56                   	push   %esi
5b91ba:	89 8d f4 fe ff ff    	mov    %ecx,-0x10c(%ebp)
5b91c0:	88 95 fb fe ff ff    	mov    %dl,-0x105(%ebp)
5b91c6:	89 85 fc fe ff ff    	mov    %eax,-0x104(%ebp)
5b91cc:	8b 85 fc fe ff ff    	mov    -0x104(%ebp),%eax
5b91d2:	8b 10                	mov    (%eax),%edx
5b91d4:	ff 52 08             	call   *0x8(%edx)
5b91d7:	89 85 e0 fe ff ff    	mov    %eax,-0x120(%ebp)
5b91dd:	db 85 e0 fe ff ff    	fildl  -0x120(%ebp)
5b91e3:	d8 3d 30 93 5b 00    	fdivrs 0x5b9330
5b91e9:	dd 9d e8 fe ff ff    	fstpl  -0x118(%ebp)
5b91ef:	9b                   	fwait
5b91f0:	55                   	push   %ebp
5b91f1:	ff 75 14             	push   0x14(%ebp)
5b91f4:	ff 75 10             	push   0x10(%ebp)
5b91f7:	e8 50 ff ff ff       	call   0x5b914c
5b91fc:	59                   	pop    %ecx
5b91fd:	8b 85 fc fe ff ff    	mov    -0x104(%ebp),%eax
5b9203:	8b 10                	mov    (%eax),%edx
5b9205:	ff 52 08             	call   *0x8(%edx)
5b9208:	48                   	dec    %eax
5b9209:	85 c0                	test   %eax,%eax
5b920b:	0f 8c 15 01 00 00    	jl     0x5b9326
5b9211:	40                   	inc    %eax
5b9212:	89 85 e4 fe ff ff    	mov    %eax,-0x11c(%ebp)
5b9218:	c7 85 f0 fe ff ff 00 	movl   $0x0,-0x110(%ebp)
5b921f:	00 00 00
5b9222:	8b 95 f0 fe ff ff    	mov    -0x110(%ebp),%edx
5b9228:	8b 85 fc fe ff ff    	mov    -0x104(%ebp),%eax
5b922e:	8b 08                	mov    (%eax),%ecx
5b9230:	ff 11                	call   *(%ecx)
5b9232:	8b f0                	mov    %eax,%esi
5b9234:	a0 34 93 5b 00       	mov    0x5b9334,%al
5b9239:	3a 85 fb fe ff ff    	cmp    -0x105(%ebp),%al
5b923f:	75 4c                	jne    0x5b928d
5b9241:	8b 85 fc fe ff ff    	mov    -0x104(%ebp),%eax
5b9247:	8b 10                	mov    (%eax),%edx
5b9249:	ff 52 0c             	call   *0xc(%edx)
5b924c:	8b d0                	mov    %eax,%edx
5b924e:	4a                   	dec    %edx
5b924f:	85 d2                	test   %edx,%edx
5b9251:	0f 8c 97 00 00 00    	jl     0x5b92ee
5b9257:	42                   	inc    %edx
5b9258:	8b c6                	mov    %esi,%eax
5b925a:	33 c9                	xor    %ecx,%ecx
5b925c:	8a 48 02             	mov    0x2(%eax),%cl
5b925f:	8a 8c 0d 00 ff ff ff 	mov    -0x100(%ebp,%ecx,1),%cl
5b9266:	88 48 02             	mov    %cl,0x2(%eax)
5b9269:	33 c9                	xor    %ecx,%ecx
5b926b:	8a 48 01             	mov    0x1(%eax),%cl
5b926e:	8a 8c 0d 00 ff ff ff 	mov    -0x100(%ebp,%ecx,1),%cl
5b9275:	88 48 01             	mov    %cl,0x1(%eax)
5b9278:	33 c9                	xor    %ecx,%ecx
5b927a:	8a 08                	mov    (%eax),%cl
5b927c:	8a 8c 0d 00 ff ff ff 	mov    -0x100(%ebp,%ecx,1),%cl
5b9283:	88 08                	mov    %cl,(%eax)
5b9285:	83 c6 03             	add    $0x3,%esi
5b9288:	4a                   	dec    %edx
5b9289:	75 cd                	jne    0x5b9258
5b928b:	eb 61                	jmp    0x5b92ee
5b928d:	8b 85 fc fe ff ff    	mov    -0x104(%ebp),%eax
5b9293:	8b 10                	mov    (%eax),%edx
5b9295:	ff 52 0c             	call   *0xc(%edx)
5b9298:	8b d0                	mov    %eax,%edx
5b929a:	4a                   	dec    %edx
5b929b:	85 d2                	test   %edx,%edx
5b929d:	7c 4f                	jl     0x5b92ee
5b929f:	42                   	inc    %edx
5b92a0:	8b c6                	mov    %esi,%eax
5b92a2:	f6 85 fb fe ff ff 01 	testb  $0x1,-0x105(%ebp)
5b92a9:	74 0f                	je     0x5b92ba
5b92ab:	33 c9                	xor    %ecx,%ecx
5b92ad:	8a 48 02             	mov    0x2(%eax),%cl
5b92b0:	8a 8c 0d 00 ff ff ff 	mov    -0x100(%ebp,%ecx,1),%cl
5b92b7:	88 48 02             	mov    %cl,0x2(%eax)
5b92ba:	f6 85 fb fe ff ff 02 	testb  $0x2,-0x105(%ebp)
5b92c1:	74 0f                	je     0x5b92d2
5b92c3:	33 c9                	xor    %ecx,%ecx
5b92c5:	8a 48 01             	mov    0x1(%eax),%cl
5b92c8:	8a 8c 0d 00 ff ff ff 	mov    -0x100(%ebp,%ecx,1),%cl
5b92cf:	88 48 01             	mov    %cl,0x1(%eax)
5b92d2:	f6 85 fb fe ff ff 04 	testb  $0x4,-0x105(%ebp)
5b92d9:	74 0d                	je     0x5b92e8
5b92db:	33 c9                	xor    %ecx,%ecx
5b92dd:	8a 08                	mov    (%eax),%cl
5b92df:	8a 8c 0d 00 ff ff ff 	mov    -0x100(%ebp,%ecx,1),%cl
5b92e6:	88 08                	mov    %cl,(%eax)
5b92e8:	83 c6 03             	add    $0x3,%esi
5b92eb:	4a                   	dec    %edx
5b92ec:	75 b2                	jne    0x5b92a0
5b92ee:	66 83 7d 0a 00       	cmpw   $0x0,0xa(%ebp)
5b92f3:	74 1f                	je     0x5b9314
5b92f5:	db 85 f0 fe ff ff    	fildl  -0x110(%ebp)
5b92fb:	dc 8d e8 fe ff ff    	fmull  -0x118(%ebp)
5b9301:	e8 c6 99 e4 ff       	call   0x402ccc
5b9306:	8b c8                	mov    %eax,%ecx
5b9308:	8b 95 f4 fe ff ff    	mov    -0x10c(%ebp),%edx
5b930e:	8b 45 0c             	mov    0xc(%ebp),%eax
5b9311:	ff 55 08             	call   *0x8(%ebp)
5b9314:	ff 85 f0 fe ff ff    	incl   -0x110(%ebp)
5b931a:	ff 8d e4 fe ff ff    	decl   -0x11c(%ebp)
5b9320:	0f 85 fc fe ff ff    	jne    0x5b9222
5b9326:	5e                   	pop    %esi
5b9327:	8b e5                	mov    %ebp,%esp
5b9329:	5d                   	pop    %ebp
5b932a:	c2 10 00             	ret    $0x10