5b71c4:	89 45 ac             	mov    %eax,-0x54(%ebp)
5b71c7:	dd 45 c0             	fldl   -0x40(%ebp)
5b71ca:	dc 45 e8             	faddl  -0x18(%ebp)
5b71cd:	83 c4 f4             	add    $0xfffffff4,%esp
5b71d0:	db 3c 24             	fstpt  (%esp)
5b71d3:	9b                   	fwait
5b71d4:	e8 d7 20 ff ff       	call   0x5a92b0
5b71d9:	89 45 a8             	mov    %eax,-0x58(%ebp)
5b71dc:	8b 5d ac             	mov    -0x54(%ebp),%ebx
5b71df:	8b 45 a8             	mov    -0x58(%ebp),%eax
5b71e2:	2b c3                	sub    %ebx,%eax
5b71e4:	7c 7e                	jl     0x5b7264
5b71e6:	40                   	inc    %eax
5b71e7:	89 85 54 ff ff ff    	mov    %eax,-0xac(%ebp)
5b71ed:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
5b71f3:	db 85 34 ff ff ff    	fildl  -0xcc(%ebp)
5b71f9:	dc 6d c0             	fsubrl -0x40(%ebp)
5b71fc:	83 c4 f8             	add    $0xfffffff8,%esp
5b71ff:	dd 1c 24             	fstpl  (%esp)
5b7202:	9b                   	fwait
5b7203:	ff 55 f0             	call   *-0x10(%ebp)
5b7206:	d8 0d f4 74 5b 00    	fmuls  0x5b74f4
5b720c:	e8 af ba e4 ff       	call   0x402cc0
5b7211:	85 c0                	test   %eax,%eax
5b7213:	74 46                	je     0x5b725b
5b7215:	85 db                	test   %ebx,%ebx
5b7217:	7d 06                	jge    0x5b721f
5b7219:	8b d3                	mov    %ebx,%edx
5b721b:	f7 da                	neg    %edx
5b721d:	eb 12                	jmp    0x5b7231
5b721f:	3b 5d 84             	cmp    -0x7c(%ebp),%ebx
5b7222:	7c 0b                	jl     0x5b722f
5b7224:	8b 55 84             	mov    -0x7c(%ebp),%edx
5b7227:	2b d3                	sub    %ebx,%edx
5b7229:	03 55 84             	add    -0x7c(%ebp),%edx
5b722c:	4a                   	dec    %edx
5b722d:	eb 02                	jmp    0x5b7231
5b722f:	8b d3                	mov    %ebx,%edx
5b7231:	8b 4d a0             	mov    -0x60(%ebp),%ecx
5b7234:	8b 0c f1             	mov    (%ecx,%esi,8),%ecx
5b7237:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
5b723a:	8b 4d a0             	mov    -0x60(%ebp),%ecx
5b723d:	ff 04 f1             	incl   (%ecx,%esi,8)
5b7240:	8b 4d a0             	mov    -0x60(%ebp),%ecx
5b7243:	8b 4c f1 04          	mov    0x4(%ecx,%esi,8),%ecx
5b7247:	8b 7d d4             	mov    -0x2c(%ebp),%edi
5b724a:	89 14 f9             	mov    %edx,(%ecx,%edi,8)
5b724d:	8b 55 a0             	mov    -0x60(%ebp),%edx
5b7250:	8b 54 f2 04          	mov    0x4(%edx,%esi,8),%edx
5b7254:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
5b7257:	89 44 ca 04          	mov    %eax,0x4(%edx,%ecx,8)
5b725b:	43                   	inc    %ebx
5b725c:	ff 8d 54 ff ff ff    	decl   -0xac(%ebp)
5b7262:	75 89                	jne    0x5b71ed
5b7264:	46                   	inc    %esi
5b7265:	ff 8d 58 ff ff ff    	decl   -0xa8(%ebp)
5b726b:	0f 85 fd fe ff ff    	jne    0x5b716e
5b7271:	33 d2                	xor    %edx,%edx
5b7273:	8b 45 a4             	mov    -0x5c(%ebp),%eax
5b7276:	e8 a9 ef 03 00       	call   0x5f6224
5b727b:	89 45 98             	mov    %eax,-0x68(%ebp)
5b727e:	8b 45 a4             	mov    -0x5c(%ebp),%eax
5b7281:	8b 40 10             	mov    0x10(%eax),%eax
5b7284:	f7 d8                	neg    %eax
5b7286:	89 45 8c             	mov    %eax,-0x74(%ebp)
5b7289:	33 c0                	xor    %eax,%eax
5b728b:	89 85 5c ff ff ff    	mov    %eax,-0xa4(%ebp)
5b7291:	33 d2                	xor    %edx,%edx
5b7293:	8b 45 a4             	mov    -0x5c(%ebp),%eax
5b7296:	e8 89 ef 03 00       	call   0x5f6224
5b729b:	89 45 d0             	mov    %eax,-0x30(%ebp)
5b729e:	8b 45 a4             	mov    -0x5c(%ebp),%eax
5b72a1:	8b 50 08             	mov    0x8(%eax),%edx
5b72a4:	4a                   	dec    %edx
5b72a5:	8b 45 a4             	mov    -0x5c(%ebp),%eax
5b72a8:	e8 77 ef 03 00       	call   0x5f6224
5b72ad:	89 45 cc             	mov    %eax,-0x34(%ebp)
5b72b0:	8b 45 d0             	mov    -0x30(%ebp),%eax
5b72b3:	3b 45 cc             	cmp    -0x34(%ebp),%eax
5b72b6:	7e 0b                	jle    0x5b72c3
5b72b8:	8d 55 cc             	lea    -0x34(%ebp),%edx
5b72bb:	8d 45 d0             	lea    -0x30(%ebp),%eax
5b72be:	e8 85 21 ff ff       	call   0x5a9448
5b72c3:	8b 45 8c             	mov    -0x74(%ebp),%eax
5b72c6:	99                   	cltd
5b72c7:	33 c2                	xor    %edx,%eax
5b72c9:	2b c2                	sub    %edx,%eax
5b72cb:	48                   	dec    %eax
5b72cc:	01 45 cc             	add    %eax,-0x34(%ebp)
5b72cf:	8b 45 80             	mov    -0x80(%ebp),%eax
5b72d2:	48                   	dec    %eax
5b72d3:	85 c0                	test   %eax,%eax
5b72d5:	0f 8c b1 01 00 00    	jl     0x5b748c
5b72db:	40                   	inc    %eax
5b72dc:	89 85 58 ff ff ff    	mov    %eax,-0xa8(%ebp)
5b72e2:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
5b72e9:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
5b72ef:	48                   	dec    %eax
5b72f0:	85 c0                	test   %eax,%eax
5b72f2:	0f 8c 48 01 00 00    	jl     0x5b7440
5b72f8:	40                   	inc    %eax
5b72f9:	89 85 54 ff ff ff    	mov    %eax,-0xac(%ebp)
5b72ff:	33 f6                	xor    %esi,%esi
5b7301:	8b d6                	mov    %esi,%edx
5b7303:	8b 45 f8             	mov    -0x8(%ebp),%eax
5b7306:	8b 08                	mov    (%eax),%ecx
5b7308:	ff 11                	call   *(%ecx)
5b730a:	89 45 90             	mov    %eax,-0x70(%ebp)
5b730d:	8b 85 5c ff ff ff    	mov    -0xa4(%ebp),%eax
5b7313:	8d 04 40             	lea    (%eax,%eax,2),%eax
5b7316:	01 45 90             	add    %eax,-0x70(%ebp)
5b7319:	33 c0                	xor    %eax,%eax
5b731b:	89 85 6c ff ff ff    	mov    %eax,-0x94(%ebp)
5b7321:	33 c0                	xor    %eax,%eax
5b7323:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
5b7329:	33 c0                	xor    %eax,%eax
5b732b:	89 85 64 ff ff ff    	mov    %eax,-0x9c(%ebp)
5b7331:	33 c0                	xor    %eax,%eax
5b7333:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
5b7339:	8b 45 a0             	mov    -0x60(%ebp),%eax
5b733c:	8b 04 f0             	mov    (%eax,%esi,8),%eax
5b733f:	48                   	dec    %eax
5b7340:	85 c0                	test   %eax,%eax
5b7342:	7c 6e                	jl     0x5b73b2
5b7344:	40                   	inc    %eax
5b7345:	89 85 50 ff ff ff    	mov    %eax,-0xb0(%ebp)
5b734b:	33 db                	xor    %ebx,%ebx
5b734d:	8b 45 a0             	mov    -0x60(%ebp),%eax
5b7350:	8b 44 f0 04          	mov    0x4(%eax,%esi,8),%eax
5b7354:	8b 14 d8             	mov    (%eax,%ebx,8),%edx
5b7357:	0f af 55 8c          	imul   -0x74(%ebp),%edx
5b735b:	03 55 98             	add    -0x68(%ebp),%edx
5b735e:	3b 55 d0             	cmp    -0x30(%ebp),%edx
5b7361:	7d 05                	jge    0x5b7368
5b7363:	8b 55 d0             	mov    -0x30(%ebp),%edx
5b7366:	eb 08                	jmp    0x5b7370
5b7368:	3b 55 cc             	cmp    -0x34(%ebp),%edx
5b736b:	7e 03                	jle    0x5b7370
5b736d:	8b 55 cc             	mov    -0x34(%ebp),%edx
5b7370:	8b 45 a0             	mov    -0x60(%ebp),%eax
5b7373:	8b 44 f0 04          	mov    0x4(%eax,%esi,8),%eax
5b7377:	8b 44 d8 04          	mov    0x4(%eax,%ebx,8),%eax
5b737b:	01 85 60 ff ff ff    	add    %eax,-0xa0(%ebp)
5b7381:	33 c9                	xor    %ecx,%ecx
5b7383:	8a 4a 02             	mov    0x2(%edx),%cl
5b7386:	0f af c8             	imul   %eax,%ecx
5b7389:	01 8d 6c ff ff ff    	add    %ecx,-0x94(%ebp)
5b738f:	33 c9                	xor    %ecx,%ecx
5b7391:	8a 4a 01             	mov    0x1(%edx),%cl
5b7394:	0f af c8             	imul   %eax,%ecx
5b7397:	01 8d 68 ff ff ff    	add    %ecx,-0x98(%ebp)
5b739d:	0f b6 12             	movzbl (%edx),%edx
5b73a0:	0f af d0             	imul   %eax,%edx
5b73a3:	01 95 64 ff ff ff    	add    %edx,-0x9c(%ebp)
5b73a9:	43                   	inc    %ebx
5b73aa:	ff 8d 50 ff ff ff    	decl   -0xb0(%ebp)
5b73b0:	75 9b                	jne    0x5b734d
5b73b2:	83 bd 60 ff ff ff 00 	cmpl   $0x0,-0xa0(%ebp)
5b73b9:	75 37                	jne    0x5b73f2
5b73bb:	8b 5d 90             	mov    -0x70(%ebp),%ebx
5b73be:	8b 85 6c ff ff ff    	mov    -0x94(%ebp),%eax
5b73c4:	c1 e8 08             	shr    $0x8,%eax
5b73c7:	e8 68 20 ff ff       	call   0x5a9434
5b73cc:	88 43 02             	mov    %al,0x2(%ebx)
5b73cf:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
5b73d5:	c1 e8 08             	shr    $0x8,%eax
5b73d8:	e8 57 20 ff ff       	call   0x5a9434
5b73dd:	88 43 01             	mov    %al,0x1(%ebx)
5b73e0:	8b 85 64 ff ff ff    	mov    -0x9c(%ebp),%eax
5b73e6:	c1 e8 08             	shr    $0x8,%eax
5b73e9:	e8 46 20 ff ff       	call   0x5a9434
5b73ee:	88 03                	mov    %al,(%ebx)
5b73f0:	eb 41                	jmp    0x5b7433
5b73f2:	8b 5d 90             	mov    -0x70(%ebp),%ebx
5b73f5:	8b 85 6c ff ff ff    	mov    -0x94(%ebp),%eax
5b73fb:	99                   	cltd
5b73fc:	f7 bd 60 ff ff ff    	idivl  -0xa0(%ebp)
5b7402:	e8 2d 20 ff ff       	call   0x5a9434
5b7407:	88 43 02             	mov    %al,0x2(%ebx)
5b740a:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
5b7410:	99                   	cltd
5b7411:	f7 bd 60 ff ff ff    	idivl  -0xa0(%ebp)
5b7417:	e8 18 20 ff ff       	call   0x5a9434
5b741c:	88 43 01             	mov    %al,0x1(%ebx)
5b741f:	8b 85 64 ff ff ff    	mov    -0x9c(%ebp),%eax
5b7425:	99                   	cltd
5b7426:	f7 bd 60 ff ff ff    	idivl  -0xa0(%ebp)
5b742c:	e8 03 20 ff ff       	call   0x5a9434
5b7431:	88 03                	mov    %al,(%ebx)
5b7433:	46                   	inc    %esi
5b7434:	ff 8d 54 ff ff ff    	decl   -0xac(%ebp)
5b743a:	0f 85 c1 fe ff ff    	jne    0x5b7301
5b7440:	ff 45 d0             	incl   -0x30(%ebp)
5b7443:	83 45 98 03          	addl   $0x3,-0x68(%ebp)
5b7447:	ff 85 5c ff ff ff    	incl   -0xa4(%ebp)
5b744d:	66 83 7d 0e 00       	cmpw   $0x0,0xe(%ebp)
5b7452:	74 29                	je     0x5b747d
5b7454:	8b 45 d4             	mov    -0x2c(%ebp),%eax
5b7457:	03 45 84             	add    -0x7c(%ebp),%eax
5b745a:	40                   	inc    %eax
5b745b:	89 85 34 ff ff ff    	mov    %eax,-0xcc(%ebp)
5b7461:	db 85 34 ff ff ff    	fildl  -0xcc(%ebp)
5b7467:	dc 8d 70 ff ff ff    	fmull  -0x90(%ebp)
5b746d:	e8 5a b8 e4 ff       	call   0x402ccc
5b7472:	8b c8                	mov    %eax,%ecx
5b7474:	8b 55 08             	mov    0x8(%ebp),%edx
5b7477:	8b 45 10             	mov    0x10(%ebp),%eax
5b747a:	ff 55 0c             	call   *0xc(%ebp)
5b747d:	ff 45 d4             	incl   -0x2c(%ebp)
5b7480:	ff 8d 58 ff ff ff    	decl   -0xa8(%ebp)
5b7486:	0f 85 5d fe ff ff    	jne    0x5b72e9
5b748c:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
5b7492:	48                   	dec    %eax
5b7493:	85 c0                	test   %eax,%eax
5b7495:	7c 1e                	jl     0x5b74b5
5b7497:	40                   	inc    %eax
5b7498:	89 85 58 ff ff ff    	mov    %eax,-0xa8(%ebp)
5b749e:	33 f6                	xor    %esi,%esi
5b74a0:	8b 45 a0             	mov    -0x60(%ebp),%eax
5b74a3:	8b 44 f0 04          	mov    0x4(%eax,%esi,8),%eax
5b74a7:	e8 20 b3 e4 ff       	call   0x4027cc
5b74ac:	46                   	inc    %esi
5b74ad:	ff 8d 58 ff ff ff    	decl   -0xa8(%ebp)
5b74b3:	75 eb                	jne    0x5b74a0
5b74b5:	8b 45 a0             	mov    -0x60(%ebp),%eax
5b74b8:	e8 0f b3 e4 ff       	call   0x4027cc
5b74bd:	33 c0                	xor    %eax,%eax
5b74bf:	5a                   	pop    %edx
5b74c0:	59                   	pop    %ecx
5b74c1:	59                   	pop    %ecx
5b74c2:	64 89 10             	mov    %edx,%fs:(%eax)
5b74c5:	68 da 74 5b 00       	push   $0x5b74da
5b74ca:	8b 45 a4             	mov    -0x5c(%ebp),%eax
5b74cd:	e8 a6 c5 e4 ff       	call   0x403a78
5b74d2:	c3                   	ret
5b74d3:	e9 34 cd e4 ff       	jmp    0x40420c
5b74d8:	eb f0                	jmp    0x5b74ca
5b74da:	5f                   	pop    %edi
5b74db:	5e                   	pop    %esi
5b74dc:	5b                   	pop    %ebx
5b74dd:	8b e5                	mov    %ebp,%esp
5b74df:	5d                   	pop    %ebp
5b74e0:	c2 0c 00             	ret    $0xc
5b74e3:	00 00                	add    %al,(%eax)
5b74e5:	00 00                	add    %al,(%eax)
5b74e7:	3f                   	aas
5b74e8:	00 00                	add    %al,(%eax)
5b74ea:	c8 42 00 00          	enter  $0x42,$0x0
5b74ee:	80 3f 00             	cmpb   $0x0,(%edi)
5b74f1:	00 00                	add    %al,(%eax)
5b74f3:	40                   	inc    %eax
5b74f4:	00 00                	add    %al,(%eax)
5b74f6:	80 43 55 8b          	addb   $0x8b,0x55(%ebx)
5b74fa:	ec                   	in     (%dx),%al
5b74fb:	81 c4 6c ff ff ff    	add    $0xffffff6c,%esp
5b7501:	53                   	push   %ebx
5b7502:	56                   	push   %esi
5b7503:	57                   	push   %edi
5b7504:	89 4d f4             	mov    %ecx,-0xc(%ebp)
5b7507:	89 55 f8             	mov    %edx,-0x8(%ebp)
5b750a:	89 45 fc             	mov    %eax,-0x4(%ebp)
5b750d:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b7510:	8b 10                	mov    (%eax),%edx
5b7512:	ff 52 0c             	call   *0xc(%edx)
5b7515:	89 45 a8             	mov    %eax,-0x58(%ebp)
5b7518:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b751b:	8b 10                	mov    (%eax),%edx
5b751d:	ff 52 08             	call   *0x8(%edx)
5b7520:	89 45 a4             	mov    %eax,-0x5c(%ebp)
5b7523:	8b 45 f8             	mov    -0x8(%ebp),%eax
5b7526:	8b 10                	mov    (%eax),%edx
5b7528:	ff 52 0c             	call   *0xc(%edx)
5b752b:	89 45 a0             	mov    %eax,-0x60(%ebp)
5b752e:	8b 45 f8             	mov    -0x8(%ebp),%eax
5b7531:	8b 10                	mov    (%eax),%edx
5b7533:	ff 52 08             	call   *0x8(%edx)
5b7536:	89 45 9c             	mov    %eax,-0x64(%ebp)
5b7539:	db 45 a0             	fildl  -0x60(%ebp)
5b753c:	db 45 a8             	fildl  -0x58(%ebp)
5b753f:	de f9                	fdivrp %st,%st(1)
5b7541:	dd 5d e8             	fstpl  -0x18(%ebp)
5b7544:	9b db 45 9c          	fildl  -0x64(%ebp)
5b7548:	db 45 a4             	fildl  -0x5c(%ebp)
5b754b:	de f9                	fdivrp %st,%st(1)
5b754d:	dd 5d e0             	fstpl  -0x20(%ebp)
5b7550:	9b dd 45 e8          	fldl   -0x18(%ebp)
5b7554:	d8 1d 7c 7b 5b 00    	fcomps 0x5b7b7c
5b755a:	df e0                	fnstsw %ax
5b755c:	9e                   	sahf
5b755d:	75 1e                	jne    0x5b757d
5b755f:	dd 45 e0             	fldl   -0x20(%ebp)
5b7562:	d8 1d 7c 7b 5b 00    	fcomps 0x5b7b7c
5b7568:	df e0                	fnstsw %ax
5b756a:	9e                   	sahf
5b756b:	75 10                	jne    0x5b757d
5b756d:	8b 55 fc             	mov    -0x4(%ebp),%edx
5b7570:	8b 45 f8             	mov    -0x8(%ebp),%eax
5b7573:	8b 08                	mov    (%eax),%ecx
5b7575:	ff 51 28             	call   *0x28(%ecx)
5b7578:	e9 f3 05 00 00       	jmp    0x5b7b70
5b757d:	8b 45 a0             	mov    -0x60(%ebp),%eax
5b7580:	c1 e0 02             	shl    $0x2,%eax
5b7583:	e8 24 b2 e4 ff       	call   0x4027ac
5b7588:	89 45 88             	mov    %eax,-0x78(%ebp)
5b758b:	8b 45 a0             	mov    -0x60(%ebp),%eax
5b758e:	c1 e0 02             	shl    $0x2,%eax
5b7591:	e8 16 b2 e4 ff       	call   0x4027ac
5b7596:	89 45 84             	mov    %eax,-0x7c(%ebp)
5b7599:	8b 45 a0             	mov    -0x60(%ebp),%eax
5b759c:	c1 e0 02             	shl    $0x2,%eax
5b759f:	e8 08 b2 e4 ff       	call   0x4027ac
5b75a4:	89 45 80             	mov    %eax,-0x80(%ebp)
5b75a7:	8b 45 a0             	mov    -0x60(%ebp),%eax
5b75aa:	48                   	dec    %eax
5b75ab:	85 c0                	test   %eax,%eax
5b75ad:	7c 7b                	jl     0x5b762a
5b75af:	40                   	inc    %eax
5b75b0:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
5b75b6:	33 db                	xor    %ebx,%ebx
5b75b8:	89 9d 6c ff ff ff    	mov    %ebx,-0x94(%ebp)
5b75be:	db 85 6c ff ff ff    	fildl  -0x94(%ebp)
5b75c4:	dc 75 e8             	fdivl  -0x18(%ebp)
5b75c7:	dd 5d d0             	fstpl  -0x30(%ebp)
5b75ca:	9b dd 45 d0          	fldl   -0x30(%ebp)
5b75ce:	e8 f9 b6 e4 ff       	call   0x402ccc
5b75d3:	8b 55 84             	mov    -0x7c(%ebp),%edx
5b75d6:	89 04 9a             	mov    %eax,(%edx,%ebx,4)
5b75d9:	8b 45 84             	mov    -0x7c(%ebp),%eax
5b75dc:	db 04 98             	fildl  (%eax,%ebx,4)
5b75df:	dc 6d d0             	fsubrl -0x30(%ebp)
5b75e2:	d8 0d 80 7b 5b 00    	fmuls  0x5b7b80
5b75e8:	e8 df b6 e4 ff       	call   0x402ccc
5b75ed:	8b 55 88             	mov    -0x78(%ebp),%edx
5b75f0:	89 04 9a             	mov    %eax,(%edx,%ebx,4)
5b75f3:	8b 55 a0             	mov    -0x60(%ebp),%edx
5b75f6:	4a                   	dec    %edx
5b75f7:	8d 43 01             	lea    0x1(%ebx),%eax
5b75fa:	e8 1d 1e ff ff       	call   0x5a941c
5b75ff:	89 85 6c ff ff ff    	mov    %eax,-0x94(%ebp)
5b7605:	db 85 6c ff ff ff    	fildl  -0x94(%ebp)
5b760b:	dc 75 e8             	fdivl  -0x18(%ebp)
5b760e:	db 2d 84 7b 5b 00    	fldt   0x5b7b84
5b7614:	de c1                	faddp  %st,%st(1)
5b7616:	e8 b1 b6 e4 ff       	call   0x402ccc
5b761b:	8b 55 80             	mov    -0x80(%ebp),%edx
5b761e:	89 04 9a             	mov    %eax,(%edx,%ebx,4)
5b7621:	43                   	inc    %ebx
5b7622:	ff 8d 74 ff ff ff    	decl   -0x8c(%ebp)
5b7628:	75 8e                	jne    0x5b75b8
5b762a:	8b 45 a4             	mov    -0x5c(%ebp),%eax