5b6224:	db 3c 24             	fstpt  (%esp)
5b6227:	9b                   	fwait
5b6228:	e8 83 30 ff ff       	call   0x5a92b0
5b622d:	2b c3                	sub    %ebx,%eax
5b622f:	0f 8c 84 00 00 00    	jl     0x5b62b9
5b6235:	40                   	inc    %eax
5b6236:	89 85 64 ff ff ff    	mov    %eax,-0x9c(%ebp)
5b623c:	89 9d 5c ff ff ff    	mov    %ebx,-0xa4(%ebp)
5b6242:	db 85 5c ff ff ff    	fildl  -0xa4(%ebp)
5b6248:	dc 6d c8             	fsubrl -0x38(%ebp)
5b624b:	dc 75 b8             	fdivl  -0x48(%ebp)
5b624e:	83 c4 f8             	add    $0xfffffff8,%esp
5b6251:	dd 1c 24             	fstpl  (%esp)
5b6254:	9b                   	fwait
5b6255:	ff 55 f0             	call   *-0x10(%ebp)
5b6258:	d8 0d 54 69 5b 00    	fmuls  0x5b6954
5b625e:	dc 75 b8             	fdivl  -0x48(%ebp)
5b6261:	e8 5a ca e4 ff       	call   0x402cc0
5b6266:	85 c0                	test   %eax,%eax
5b6268:	74 46                	je     0x5b62b0
5b626a:	85 db                	test   %ebx,%ebx
5b626c:	7d 06                	jge    0x5b6274
5b626e:	8b d3                	mov    %ebx,%edx
5b6270:	f7 da                	neg    %edx
5b6272:	eb 12                	jmp    0x5b6286
5b6274:	3b 5d 90             	cmp    -0x70(%ebp),%ebx
5b6277:	7c 0b                	jl     0x5b6284
5b6279:	8b 55 90             	mov    -0x70(%ebp),%edx
5b627c:	2b d3                	sub    %ebx,%edx
5b627e:	03 55 90             	add    -0x70(%ebp),%edx
5b6281:	4a                   	dec    %edx
5b6282:	eb 02                	jmp    0x5b6286
5b6284:	8b d3                	mov    %ebx,%edx
5b6286:	8b 4d b0             	mov    -0x50(%ebp),%ecx
5b6289:	8b 0c f1             	mov    (%ecx,%esi,8),%ecx
5b628c:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
5b628f:	8b 4d b0             	mov    -0x50(%ebp),%ecx
5b6292:	ff 04 f1             	incl   (%ecx,%esi,8)
5b6295:	8b 4d b0             	mov    -0x50(%ebp),%ecx
5b6298:	8b 4c f1 04          	mov    0x4(%ecx,%esi,8),%ecx
5b629c:	8b 7d d4             	mov    -0x2c(%ebp),%edi
5b629f:	89 14 f9             	mov    %edx,(%ecx,%edi,8)
5b62a2:	8b 55 b0             	mov    -0x50(%ebp),%edx
5b62a5:	8b 54 f2 04          	mov    0x4(%edx,%esi,8),%edx
5b62a9:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
5b62ac:	89 44 ca 04          	mov    %eax,0x4(%edx,%ecx,8)
5b62b0:	43                   	inc    %ebx
5b62b1:	ff 8d 64 ff ff ff    	decl   -0x9c(%ebp)
5b62b7:	75 83                	jne    0x5b623c
5b62b9:	46                   	inc    %esi
5b62ba:	ff 8d 68 ff ff ff    	decl   -0x98(%ebp)
5b62c0:	0f 85 fd fe ff ff    	jne    0x5b61c3
5b62c6:	e9 0e 01 00 00       	jmp    0x5b63d9
5b62cb:	8b 45 88             	mov    -0x78(%ebp),%eax
5b62ce:	48                   	dec    %eax
5b62cf:	85 c0                	test   %eax,%eax
5b62d1:	0f 8c 02 01 00 00    	jl     0x5b63d9
5b62d7:	40                   	inc    %eax
5b62d8:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
5b62de:	33 f6                	xor    %esi,%esi
5b62e0:	8b 45 b0             	mov    -0x50(%ebp),%eax
5b62e3:	33 d2                	xor    %edx,%edx
5b62e5:	89 14 f0             	mov    %edx,(%eax,%esi,8)
5b62e8:	6a 00                	push   $0x0
5b62ea:	6a 08                	push   $0x8
5b62ec:	dd 45 e8             	fldl   -0x18(%ebp)
5b62ef:	d8 0d 50 69 5b 00    	fmuls  0x5b6950
5b62f5:	d8 05 4c 69 5b 00    	fadds  0x5b694c
5b62fb:	e8 cc c9 e4 ff       	call   0x402ccc
5b6300:	e8 7f f7 e4 ff       	call   0x405a84
5b6305:	e8 a2 c4 e4 ff       	call   0x4027ac
5b630a:	8b 55 b0             	mov    -0x50(%ebp),%edx
5b630d:	89 44 f2 04          	mov    %eax,0x4(%edx,%esi,8)
5b6311:	89 b5 5c ff ff ff    	mov    %esi,-0xa4(%ebp)
5b6317:	db 85 5c ff ff ff    	fildl  -0xa4(%ebp)
5b631d:	dc 75 e0             	fdivl  -0x20(%ebp)
5b6320:	dd 5d c8             	fstpl  -0x38(%ebp)
5b6323:	9b dd 45 c8          	fldl   -0x38(%ebp)
5b6327:	dc 65 e8             	fsubl  -0x18(%ebp)
5b632a:	83 c4 f4             	add    $0xfffffff4,%esp
5b632d:	db 3c 24             	fstpt  (%esp)
5b6330:	9b                   	fwait
5b6331:	e8 aa 2f ff ff       	call   0x5a92e0
5b6336:	8b d8                	mov    %eax,%ebx
5b6338:	dd 45 c8             	fldl   -0x38(%ebp)
5b633b:	dc 45 e8             	faddl  -0x18(%ebp)
5b633e:	83 c4 f4             	add    $0xfffffff4,%esp
5b6341:	db 3c 24             	fstpt  (%esp)
5b6344:	9b                   	fwait
5b6345:	e8 66 2f ff ff       	call   0x5a92b0
5b634a:	2b c3                	sub    %ebx,%eax
5b634c:	7c 7e                	jl     0x5b63cc
5b634e:	40                   	inc    %eax
5b634f:	89 85 64 ff ff ff    	mov    %eax,-0x9c(%ebp)
5b6355:	89 9d 5c ff ff ff    	mov    %ebx,-0xa4(%ebp)
5b635b:	db 85 5c ff ff ff    	fildl  -0xa4(%ebp)
5b6361:	dc 6d c8             	fsubrl -0x38(%ebp)
5b6364:	83 c4 f8             	add    $0xfffffff8,%esp
5b6367:	dd 1c 24             	fstpl  (%esp)
5b636a:	9b                   	fwait
5b636b:	ff 55 f0             	call   *-0x10(%ebp)
5b636e:	d8 0d 54 69 5b 00    	fmuls  0x5b6954
5b6374:	e8 47 c9 e4 ff       	call   0x402cc0
5b6379:	85 c0                	test   %eax,%eax
5b637b:	74 46                	je     0x5b63c3
5b637d:	85 db                	test   %ebx,%ebx
5b637f:	7d 06                	jge    0x5b6387
5b6381:	8b d3                	mov    %ebx,%edx
5b6383:	f7 da                	neg    %edx
5b6385:	eb 12                	jmp    0x5b6399
5b6387:	3b 5d 90             	cmp    -0x70(%ebp),%ebx
5b638a:	7c 0b                	jl     0x5b6397
5b638c:	8b 55 90             	mov    -0x70(%ebp),%edx
5b638f:	2b d3                	sub    %ebx,%edx
5b6391:	03 55 90             	add    -0x70(%ebp),%edx
5b6394:	4a                   	dec    %edx
5b6395:	eb 02                	jmp    0x5b6399
5b6397:	8b d3                	mov    %ebx,%edx
5b6399:	8b 4d b0             	mov    -0x50(%ebp),%ecx
5b639c:	8b 0c f1             	mov    (%ecx,%esi,8),%ecx
5b639f:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
5b63a2:	8b 4d b0             	mov    -0x50(%ebp),%ecx
5b63a5:	ff 04 f1             	incl   (%ecx,%esi,8)
5b63a8:	8b 4d b0             	mov    -0x50(%ebp),%ecx
5b63ab:	8b 4c f1 04          	mov    0x4(%ecx,%esi,8),%ecx
5b63af:	8b 7d d4             	mov    -0x2c(%ebp),%edi
5b63b2:	89 14 f9             	mov    %edx,(%ecx,%edi,8)
5b63b5:	8b 55 b0             	mov    -0x50(%ebp),%edx
5b63b8:	8b 54 f2 04          	mov    0x4(%edx,%esi,8),%edx
5b63bc:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
5b63bf:	89 44 ca 04          	mov    %eax,0x4(%edx,%ecx,8)
5b63c3:	43                   	inc    %ebx
5b63c4:	ff 8d 64 ff ff ff    	decl   -0x9c(%ebp)
5b63ca:	75 89                	jne    0x5b6355
5b63cc:	46                   	inc    %esi
5b63cd:	ff 8d 68 ff ff ff    	decl   -0x98(%ebp)
5b63d3:	0f 85 07 ff ff ff    	jne    0x5b62e0
5b63d9:	8b 45 8c             	mov    -0x74(%ebp),%eax
5b63dc:	48                   	dec    %eax
5b63dd:	85 c0                	test   %eax,%eax
5b63df:	0f 8c 04 01 00 00    	jl     0x5b64e9
5b63e5:	40                   	inc    %eax
5b63e6:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
5b63ec:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
5b63f3:	8b 55 d4             	mov    -0x2c(%ebp),%edx
5b63f6:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b63f9:	8b 08                	mov    (%eax),%ecx
5b63fb:	ff 11                	call   *(%ecx)
5b63fd:	89 45 a4             	mov    %eax,-0x5c(%ebp)
5b6400:	8b 55 d4             	mov    -0x2c(%ebp),%edx
5b6403:	8b 45 b4             	mov    -0x4c(%ebp),%eax
5b6406:	e8 09 e3 03 00       	call   0x5f4714
5b640b:	89 45 9c             	mov    %eax,-0x64(%ebp)
5b640e:	8b 45 88             	mov    -0x78(%ebp),%eax
5b6411:	48                   	dec    %eax
5b6412:	85 c0                	test   %eax,%eax
5b6414:	0f 8c c0 00 00 00    	jl     0x5b64da
5b641a:	40                   	inc    %eax
5b641b:	89 85 64 ff ff ff    	mov    %eax,-0x9c(%ebp)
5b6421:	33 f6                	xor    %esi,%esi
5b6423:	33 c0                	xor    %eax,%eax
5b6425:	89 45 a8             	mov    %eax,-0x58(%ebp)
5b6428:	33 c0                	xor    %eax,%eax
5b642a:	89 45 ac             	mov    %eax,-0x54(%ebp)
5b642d:	8b 45 b0             	mov    -0x50(%ebp),%eax
5b6430:	8b 04 f0             	mov    (%eax,%esi,8),%eax
5b6433:	48                   	dec    %eax
5b6434:	85 c0                	test   %eax,%eax
5b6436:	7c 6a                	jl     0x5b64a2
5b6438:	40                   	inc    %eax
5b6439:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
5b643f:	33 db                	xor    %ebx,%ebx
5b6441:	8b 45 b0             	mov    -0x50(%ebp),%eax
5b6444:	8b 44 f0 04          	mov    0x4(%eax,%esi,8),%eax
5b6448:	8b 04 d8             	mov    (%eax,%ebx,8),%eax
5b644b:	3b 45 90             	cmp    -0x70(%ebp),%eax
5b644e:	7c 06                	jl     0x5b6456
5b6450:	8b 45 90             	mov    -0x70(%ebp),%eax
5b6453:	48                   	dec    %eax
5b6454:	eb 06                	jmp    0x5b645c
5b6456:	85 c0                	test   %eax,%eax
5b6458:	7d 02                	jge    0x5b645c
5b645a:	33 c0                	xor    %eax,%eax
5b645c:	8b d0                	mov    %eax,%edx
5b645e:	c1 ea 03             	shr    $0x3,%edx
5b6461:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
5b6464:	8a 14 11             	mov    (%ecx,%edx,1),%dl
5b6467:	83 e0 07             	and    $0x7,%eax
5b646a:	8b 0d 88 6d 6a 00    	mov    0x6a6d88,%ecx
5b6470:	22 14 01             	and    (%ecx,%eax,1),%dl
5b6473:	75 04                	jne    0x5b6479
5b6475:	33 d2                	xor    %edx,%edx
5b6477:	eb 02                	jmp    0x5b647b
5b6479:	b2 ff                	mov    $0xff,%dl
5b647b:	8b 45 b0             	mov    -0x50(%ebp),%eax
5b647e:	8b 44 f0 04          	mov    0x4(%eax,%esi,8),%eax
5b6482:	8b 44 d8 04          	mov    0x4(%eax,%ebx,8),%eax
5b6486:	01 45 ac             	add    %eax,-0x54(%ebp)
5b6489:	85 c0                	test   %eax,%eax
5b648b:	74 0c                	je     0x5b6499
5b648d:	81 e2 ff 00 00 00    	and    $0xff,%edx
5b6493:	0f af d0             	imul   %eax,%edx
5b6496:	01 55 a8             	add    %edx,-0x58(%ebp)
5b6499:	43                   	inc    %ebx
5b649a:	ff 8d 60 ff ff ff    	decl   -0xa0(%ebp)
5b64a0:	75 9f                	jne    0x5b6441
5b64a2:	83 7d ac 00          	cmpl   $0x0,-0x54(%ebp)
5b64a6:	75 0f                	jne    0x5b64b7
5b64a8:	8b 45 a8             	mov    -0x58(%ebp),%eax
5b64ab:	c1 e8 08             	shr    $0x8,%eax
5b64ae:	e8 81 2f ff ff       	call   0x5a9434
5b64b3:	8b d0                	mov    %eax,%edx
5b64b5:	eb 0e                	jmp    0x5b64c5
5b64b7:	8b 45 a8             	mov    -0x58(%ebp),%eax
5b64ba:	99                   	cltd
5b64bb:	f7 7d ac             	idivl  -0x54(%ebp)
5b64be:	e8 71 2f ff ff       	call   0x5a9434
5b64c3:	8b d0                	mov    %eax,%edx
5b64c5:	8b 45 9c             	mov    -0x64(%ebp),%eax
5b64c8:	88 10                	mov    %dl,(%eax)
5b64ca:	ff 45 9c             	incl   -0x64(%ebp)
5b64cd:	46                   	inc    %esi
5b64ce:	ff 8d 64 ff ff ff    	decl   -0x9c(%ebp)
5b64d4:	0f 85 49 ff ff ff    	jne    0x5b6423
5b64da:	ff 45 d4             	incl   -0x2c(%ebp)
5b64dd:	ff 8d 68 ff ff ff    	decl   -0x98(%ebp)
5b64e3:	0f 85 0a ff ff ff    	jne    0x5b63f3
5b64e9:	8b 45 88             	mov    -0x78(%ebp),%eax
5b64ec:	48                   	dec    %eax
5b64ed:	85 c0                	test   %eax,%eax
5b64ef:	7c 1e                	jl     0x5b650f
5b64f1:	40                   	inc    %eax
5b64f2:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
5b64f8:	33 f6                	xor    %esi,%esi
5b64fa:	8b 45 b0             	mov    -0x50(%ebp),%eax
5b64fd:	8b 44 f0 04          	mov    0x4(%eax,%esi,8),%eax
5b6501:	e8 c6 c2 e4 ff       	call   0x4027cc
5b6506:	46                   	inc    %esi
5b6507:	ff 8d 68 ff ff ff    	decl   -0x98(%ebp)
5b650d:	75 eb                	jne    0x5b64fa
5b650f:	8b 45 b0             	mov    -0x50(%ebp),%eax
5b6512:	e8 b5 c2 e4 ff       	call   0x4027cc
5b6517:	8b 45 84             	mov    -0x7c(%ebp),%eax
5b651a:	c1 e0 03             	shl    $0x3,%eax
5b651d:	e8 8a c2 e4 ff       	call   0x4027ac
5b6522:	89 45 b0             	mov    %eax,-0x50(%ebp)
5b6525:	dd 45 d8             	fldl   -0x28(%ebp)
5b6528:	d8 1d 4c 69 5b 00    	fcomps 0x5b694c
5b652e:	df e0                	fnstsw %ax
5b6530:	9e                   	sahf
5b6531:	0f 83 34 01 00 00    	jae    0x5b666b
5b6537:	dd 45 e8             	fldl   -0x18(%ebp)
5b653a:	dc 75 d8             	fdivl  -0x28(%ebp)
5b653d:	dd 5d c0             	fstpl  -0x40(%ebp)
5b6540:	9b d9 05 4c 69 5b 00 	flds   0x5b694c
5b6547:	dc 75 d8             	fdivl  -0x28(%ebp)
5b654a:	dd 5d b8             	fstpl  -0x48(%ebp)
5b654d:	9b                   	fwait
5b654e:	8b 45 84             	mov    -0x7c(%ebp),%eax
5b6551:	48                   	dec    %eax
5b6552:	85 c0                	test   %eax,%eax
5b6554:	0f 8c 1f 02 00 00    	jl     0x5b6779
5b655a:	40                   	inc    %eax
5b655b:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
5b6561:	33 f6                	xor    %esi,%esi
5b6563:	8b 45 b0             	mov    -0x50(%ebp),%eax
5b6566:	33 d2                	xor    %edx,%edx
5b6568:	89 14 f0             	mov    %edx,(%eax,%esi,8)
5b656b:	6a 00                	push   $0x0
5b656d:	6a 08                	push   $0x8
5b656f:	dd 45 c0             	fldl   -0x40(%ebp)
5b6572:	d8 0d 50 69 5b 00    	fmuls  0x5b6950
5b6578:	d8 05 4c 69 5b 00    	fadds  0x5b694c
5b657e:	e8 49 c7 e4 ff       	call   0x402ccc
5b6583:	e8 fc f4 e4 ff       	call   0x405a84
5b6588:	e8 1f c2 e4 ff       	call   0x4027ac
5b658d:	8b 55 b0             	mov    -0x50(%ebp),%edx
5b6590:	89 44 f2 04          	mov    %eax,0x4(%edx,%esi,8)
5b6594:	89 b5 5c ff ff ff    	mov    %esi,-0xa4(%ebp)
5b659a:	db 85 5c ff ff ff    	fildl  -0xa4(%ebp)
5b65a0:	dc 75 d8             	fdivl  -0x28(%ebp)
5b65a3:	dd 5d c8             	fstpl  -0x38(%ebp)
5b65a6:	9b dd 45 c8          	fldl   -0x38(%ebp)
5b65aa:	dc 65 c0             	fsubl  -0x40(%ebp)
5b65ad:	83 c4 f4             	add    $0xfffffff4,%esp
5b65b0:	db 3c 24             	fstpt  (%esp)
5b65b3:	9b                   	fwait
5b65b4:	e8 27 2d ff ff       	call   0x5a92e0
5b65b9:	8b d8                	mov    %eax,%ebx
5b65bb:	dd 45 c8             	fldl   -0x38(%ebp)
5b65be:	dc 45 c0             	faddl  -0x40(%ebp)
5b65c1:	83 c4 f4             	add    $0xfffffff4,%esp
5b65c4:	db 3c 24             	fstpt  (%esp)
5b65c7:	9b                   	fwait
5b65c8:	e8 e3 2c ff ff       	call   0x5a92b0
5b65cd:	2b c3                	sub    %ebx,%eax
5b65cf:	0f 8c 84 00 00 00    	jl     0x5b6659
5b65d5:	40                   	inc    %eax
5b65d6:	89 85 64 ff ff ff    	mov    %eax,-0x9c(%ebp)
5b65dc:	89 9d 5c ff ff ff    	mov    %ebx,-0xa4(%ebp)
5b65e2:	db 85 5c ff ff ff    	fildl  -0xa4(%ebp)
5b65e8:	dc 6d c8             	fsubrl -0x38(%ebp)
5b65eb:	dc 75 b8             	fdivl  -0x48(%ebp)
5b65ee:	83 c4 f8             	add    $0xfffffff8,%esp
5b65f1:	dd 1c 24             	fstpl  (%esp)
5b65f4:	9b                   	fwait
5b65f5:	ff 55 f0             	call   *-0x10(%ebp)
5b65f8:	d8 0d 54 69 5b 00    	fmuls  0x5b6954
5b65fe:	dc 75 b8             	fdivl  -0x48(%ebp)
5b6601:	e8 ba c6 e4 ff       	call   0x402cc0
5b6606:	85 c0                	test   %eax,%eax
5b6608:	74 46                	je     0x5b6650
5b660a:	85 db                	test   %ebx,%ebx
5b660c:	7d 06                	jge    0x5b6614
5b660e:	8b d3                	mov    %ebx,%edx
5b6610:	f7 da                	neg    %edx
5b6612:	eb 12                	jmp    0x5b6626
5b6614:	3b 5d 8c             	cmp    -0x74(%ebp),%ebx
5b6617:	7c 0b                	jl     0x5b6624
5b6619:	8b 55 8c             	mov    -0x74(%ebp),%edx
5b661c:	2b d3                	sub    %ebx,%edx
5b661e:	03 55 8c             	add    -0x74(%ebp),%edx
5b6621:	4a                   	dec    %edx
5b6622:	eb 02                	jmp    0x5b6626
5b6624:	8b d3                	mov    %ebx,%edx
5b6626:	8b 4d b0             	mov    -0x50(%ebp),%ecx
5b6629:	8b 0c f1             	mov    (%ecx,%esi,8),%ecx
5b662c:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
5b662f:	8b 4d b0             	mov    -0x50(%ebp),%ecx
5b6632:	ff 04 f1             	incl   (%ecx,%esi,8)
5b6635:	8b 4d b0             	mov    -0x50(%ebp),%ecx
5b6638:	8b 4c f1 04          	mov    0x4(%ecx,%esi,8),%ecx
5b663c:	8b 7d d4             	mov    -0x2c(%ebp),%edi
5b663f:	89 14 f9             	mov    %edx,(%ecx,%edi,8)
5b6642:	8b 55 b0             	mov    -0x50(%ebp),%edx
5b6645:	8b 54 f2 04          	mov    0x4(%edx,%esi,8),%edx
5b6649:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
5b664c:	89 44 ca 04          	mov    %eax,0x4(%edx,%ecx,8)
5b6650:	43                   	inc    %ebx
5b6651:	ff 8d 64 ff ff ff    	decl   -0x9c(%ebp)
5b6657:	75 83                	jne    0x5b65dc
5b6659:	46                   	inc    %esi
5b665a:	ff 8d 68 ff ff ff    	decl   -0x98(%ebp)
5b6660:	0f 85 fd fe ff ff    	jne    0x5b6563
5b6666:	e9 0e 01 00 00       	jmp    0x5b6779
5b666b:	8b 45 84             	mov    -0x7c(%ebp),%eax
5b666e:	48                   	dec    %eax
5b666f:	85 c0                	test   %eax,%eax
5b6671:	0f 8c 02 01 00 00    	jl     0x5b6779
5b6677:	40                   	inc    %eax