5900e7:	52                   	push   %edx
5900e8:	50                   	push   %eax
5900e9:	8b c7                	mov    %edi,%eax
5900eb:	99                   	cltd
5900ec:	03 04 24             	add    (%esp),%eax
5900ef:	13 54 24 04          	adc    0x4(%esp),%edx
5900f3:	83 c4 08             	add    $0x8,%esp
5900f6:	83 c0 01             	add    $0x1,%eax
5900f9:	83 d2 00             	adc    $0x0,%edx
5900fc:	52                   	push   %edx
5900fd:	50                   	push   %eax
5900fe:	8b 43 04             	mov    0x4(%ebx),%eax
590101:	e8 d2 e5 e8 ff       	call   0x41e6d8
590106:	8d 53 4a             	lea    0x4a(%ebx),%edx
590109:	8b 43 04             	mov    0x4(%ebx),%eax
59010c:	b9 40 00 00 00       	mov    $0x40,%ecx
590111:	8b 28                	mov    (%eax),%ebp
590113:	ff 55 08             	call   *0x8(%ebp)
590116:	81 fe 2a 10 00 00    	cmp    $0x102a,%esi
59011c:	75 4c                	jne    0x59016a
59011e:	8d 47 0e             	lea    0xe(%edi),%eax
590121:	99                   	cltd
590122:	52                   	push   %edx
590123:	50                   	push   %eax
590124:	8b 43 04             	mov    0x4(%ebx),%eax
590127:	e8 ac e5 e8 ff       	call   0x41e6d8
59012c:	8b 53 04             	mov    0x4(%ebx),%edx
59012f:	8b c3                	mov    %ebx,%eax
590131:	e8 1e 8a ff ff       	call   0x588b54
590136:	0f b7 c0             	movzwl %ax,%eax
590139:	89 44 24 10          	mov    %eax,0x10(%esp)
59013d:	ba 64 05 59 00       	mov    $0x590564,%edx
590142:	8d 43 4a             	lea    0x4a(%ebx),%eax
590145:	e8 62 88 ff ff       	call   0x5889ac
59014a:	85 c0                	test   %eax,%eax
59014c:	74 11                	je     0x59015f
59014e:	ba 7c 05 59 00       	mov    $0x59057c,%edx
590153:	8d 43 4a             	lea    0x4a(%ebx),%eax
590156:	e8 51 88 ff ff       	call   0x5889ac
59015b:	85 c0                	test   %eax,%eax
59015d:	75 0b                	jne    0x59016a
59015f:	83 7c 24 10 06       	cmpl   $0x6,0x10(%esp)
590164:	75 04                	jne    0x59016a
590166:	ff 44 24 10          	incl   0x10(%esp)
59016a:	81 fe 2c 10 00 00    	cmp    $0x102c,%esi
590170:	0f 85 bf 00 00 00    	jne    0x590235
590176:	ba 94 05 59 00       	mov    $0x590594,%edx
59017b:	8d 43 4a             	lea    0x4a(%ebx),%eax
59017e:	e8 29 88 ff ff       	call   0x5889ac
590183:	85 c0                	test   %eax,%eax
590185:	74 11                	je     0x590198
590187:	ba a8 05 59 00       	mov    $0x5905a8,%edx
59018c:	8d 43 4a             	lea    0x4a(%ebx),%eax
59018f:	e8 18 88 ff ff       	call   0x5889ac
590194:	85 c0                	test   %eax,%eax
590196:	75 60                	jne    0x5901f8
590198:	8d 47 78             	lea    0x78(%edi),%eax
59019b:	99                   	cltd
59019c:	52                   	push   %edx
59019d:	50                   	push   %eax
59019e:	8b 43 04             	mov    0x4(%ebx),%eax
5901a1:	e8 32 e5 e8 ff       	call   0x41e6d8
5901a6:	8b 53 04             	mov    0x4(%ebx),%edx
5901a9:	8b c3                	mov    %ebx,%eax
5901ab:	e8 a4 89 ff ff       	call   0x588b54
5901b0:	c1 e0 04             	shl    $0x4,%eax
5901b3:	66 89 83 42 01 00 00 	mov    %ax,0x142(%ebx)
5901ba:	8b 53 04             	mov    0x4(%ebx),%edx
5901bd:	8b c3                	mov    %ebx,%eax
5901bf:	e8 90 89 ff ff       	call   0x588b54
5901c4:	c1 e0 04             	shl    $0x4,%eax
5901c7:	66 89 83 40 01 00 00 	mov    %ax,0x140(%ebx)
5901ce:	8b 53 04             	mov    0x4(%ebx),%edx
5901d1:	8b c3                	mov    %ebx,%eax
5901d3:	e8 7c 89 ff ff       	call   0x588b54
5901d8:	c1 e0 04             	shl    $0x4,%eax
5901db:	66 89 83 50 01 00 00 	mov    %ax,0x150(%ebx)
5901e2:	8b 53 04             	mov    0x4(%ebx),%edx
5901e5:	8b c3                	mov    %ebx,%eax
5901e7:	e8 68 89 ff ff       	call   0x588b54
5901ec:	c1 e0 04             	shl    $0x4,%eax
5901ef:	66 89 83 52 01 00 00 	mov    %ax,0x152(%ebx)
5901f6:	eb 3d                	jmp    0x590235
5901f8:	8d 47 64             	lea    0x64(%edi),%eax
5901fb:	99                   	cltd
5901fc:	52                   	push   %edx
5901fd:	50                   	push   %eax
5901fe:	8b 43 04             	mov    0x4(%ebx),%eax
590201:	e8 d2 e4 e8 ff       	call   0x41e6d8
590206:	83 7c 24 10 06       	cmpl   $0x6,0x10(%esp)
59020b:	75 18                	jne    0x590225
59020d:	8b 53 04             	mov    0x4(%ebx),%edx
590210:	8b c3                	mov    %ebx,%eax
590212:	e8 95 89 ff ff       	call   0x588bac
590217:	85 c0                	test   %eax,%eax
590219:	75 0a                	jne    0x590225
59021b:	c7 44 24 10 0f 00 00 	movl   $0xf,0x10(%esp)
590222:	00
590223:	eb 10                	jmp    0x590235
590225:	8d 47 64             	lea    0x64(%edi),%eax
590228:	99                   	cltd
590229:	52                   	push   %edx
59022a:	50                   	push   %eax
59022b:	8b 43 04             	mov    0x4(%ebx),%eax
59022e:	e8 a5 e4 e8 ff       	call   0x41e6d8
590233:	eb 2c                	jmp    0x590261
590235:	83 fe 32             	cmp    $0x32,%esi
590238:	0f 85 f8 00 00 00    	jne    0x590336
59023e:	ba c4 05 59 00       	mov    $0x5905c4,%edx
590243:	8d 43 4a             	lea    0x4a(%ebx),%eax
590246:	e8 61 87 ff ff       	call   0x5889ac
59024b:	85 c0                	test   %eax,%eax
59024d:	0f 85 a1 00 00 00    	jne    0x5902f4
590253:	8d 47 48             	lea    0x48(%edi),%eax
590256:	99                   	cltd
590257:	52                   	push   %edx
590258:	50                   	push   %eax
590259:	8b 43 04             	mov    0x4(%ebx),%eax
59025c:	e8 77 e4 e8 ff       	call   0x41e6d8
590261:	8b 53 04             	mov    0x4(%ebx),%edx
590264:	8b c3                	mov    %ebx,%eax
590266:	e8 e9 88 ff ff       	call   0x588b54
59026b:	0f b7 c0             	movzwl %ax,%eax
59026e:	89 44 24 18          	mov    %eax,0x18(%esp)
590272:	db 44 24 18          	fildl  0x18(%esp)
590276:	d9 9b ec 01 00 00    	fstps  0x1ec(%ebx)
59027c:	9b d9 83 ec 01 00 00 	flds   0x1ec(%ebx)
590283:	d8 1d d4 05 59 00    	fcomps 0x5905d4
590289:	df e0                	fnstsw %ax
59028b:	9e                   	sahf
59028c:	74 22                	je     0x5902b0
59028e:	8b 53 04             	mov    0x4(%ebx),%edx
590291:	8b c3                	mov    %ebx,%eax
590293:	e8 bc 88 ff ff       	call   0x588b54
590298:	0f b7 c0             	movzwl %ax,%eax
59029b:	89 44 24 18          	mov    %eax,0x18(%esp)
59029f:	db 44 24 18          	fildl  0x18(%esp)
5902a3:	d8 b3 ec 01 00 00    	fdivs  0x1ec(%ebx)
5902a9:	d9 9b ec 01 00 00    	fstps  0x1ec(%ebx)
5902af:	9b                   	fwait
5902b0:	8b 53 04             	mov    0x4(%ebx),%edx
5902b3:	8b c3                	mov    %ebx,%eax
5902b5:	e8 9a 88 ff ff       	call   0x588b54
5902ba:	0f b7 c0             	movzwl %ax,%eax
5902bd:	89 44 24 18          	mov    %eax,0x18(%esp)
5902c1:	db 44 24 18          	fildl  0x18(%esp)
5902c5:	d9 9b f0 01 00 00    	fstps  0x1f0(%ebx)
5902cb:	9b                   	fwait
5902cc:	8b 53 04             	mov    0x4(%ebx),%edx
5902cf:	8b c3                	mov    %ebx,%eax
5902d1:	e8 7e 88 ff ff       	call   0x588b54
5902d6:	0f b7 c0             	movzwl %ax,%eax
5902d9:	85 c0                	test   %eax,%eax
5902db:	74 59                	je     0x590336
5902dd:	89 44 24 18          	mov    %eax,0x18(%esp)
5902e1:	db 44 24 18          	fildl  0x18(%esp)
5902e5:	d8 bb f0 01 00 00    	fdivrs 0x1f0(%ebx)
5902eb:	d9 9b f0 01 00 00    	fstps  0x1f0(%ebx)
5902f1:	9b                   	fwait
5902f2:	eb 42                	jmp    0x590336
5902f4:	83 7c 24 10 06       	cmpl   $0x6,0x10(%esp)
5902f9:	0f 9c c0             	setl   %al
5902fc:	8b 54 24 10          	mov    0x10(%esp),%edx
590300:	8b 14 95 98 48 6a 00 	mov    0x6a4898(,%edx,4),%edx
590307:	c1 e2 03             	shl    $0x3,%edx
59030a:	33 c9                	xor    %ecx,%ecx
59030c:	e8 f7 45 07 00       	call   0x604908
590311:	8d 57 50             	lea    0x50(%edi),%edx
590314:	03 c2                	add    %edx,%eax
590316:	99                   	cltd
590317:	52                   	push   %edx
590318:	50                   	push   %eax
590319:	8b 43 04             	mov    0x4(%ebx),%eax
59031c:	e8 b7 e3 e8 ff       	call   0x41e6d8
590321:	d9 83 ec 01 00 00    	flds   0x1ec(%ebx)
590327:	d8 1d d4 05 59 00    	fcomps 0x5905d4
59032d:	df e0                	fnstsw %ax
59032f:	9e                   	sahf
590330:	0f 84 2b ff ff ff    	je     0x590261
590336:	81 fe a9 10 00 00    	cmp    $0x10a9,%esi
59033c:	0f 85 b3 00 00 00    	jne    0x5903f5
590342:	ba d8 05 59 00       	mov    $0x5905d8,%edx
590347:	8d 43 4a             	lea    0x4a(%ebx),%eax
59034a:	e8 5d 86 ff ff       	call   0x5889ac
59034f:	85 c0                	test   %eax,%eax
590351:	75 0f                	jne    0x590362
590353:	8b 44 24 10          	mov    0x10(%esp),%eax
590357:	8b 04 85 b0 48 6a 00 	mov    0x6a48b0(,%eax,4),%eax
59035e:	89 44 24 10          	mov    %eax,0x10(%esp)
590362:	8d 47 02             	lea    0x2(%edi),%eax
590365:	8b 54 24 10          	mov    0x10(%esp),%edx
590369:	c1 e2 03             	shl    $0x3,%edx
59036c:	03 c2                	add    %edx,%eax
59036e:	99                   	cltd
59036f:	52                   	push   %edx
590370:	50                   	push   %eax
590371:	8b 43 04             	mov    0x4(%ebx),%eax
590374:	e8 5f e3 e8 ff       	call   0x41e6d8
590379:	8b 53 04             	mov    0x4(%ebx),%edx
59037c:	8b c3                	mov    %ebx,%eax
59037e:	e8 d1 87 ff ff       	call   0x588b54
590383:	0f b7 c0             	movzwl %ax,%eax
590386:	89 44 24 18          	mov    %eax,0x18(%esp)
59038a:	db 44 24 18          	fildl  0x18(%esp)
59038e:	d9 9b ec 01 00 00    	fstps  0x1ec(%ebx)
590394:	9b                   	fwait
590395:	8b 53 04             	mov    0x4(%ebx),%edx
590398:	8b c3                	mov    %ebx,%eax
59039a:	e8 b5 87 ff ff       	call   0x588b54
59039f:	0f b7 c0             	movzwl %ax,%eax
5903a2:	89 44 24 18          	mov    %eax,0x18(%esp)
5903a6:	db 44 24 18          	fildl  0x18(%esp)
5903aa:	d8 bb ec 01 00 00    	fdivrs 0x1ec(%ebx)
5903b0:	d9 9b ec 01 00 00    	fstps  0x1ec(%ebx)
5903b6:	9b                   	fwait
5903b7:	8b 53 04             	mov    0x4(%ebx),%edx
5903ba:	8b c3                	mov    %ebx,%eax
5903bc:	e8 93 87 ff ff       	call   0x588b54
5903c1:	0f b7 c0             	movzwl %ax,%eax
5903c4:	89 44 24 18          	mov    %eax,0x18(%esp)
5903c8:	db 44 24 18          	fildl  0x18(%esp)
5903cc:	d9 9b f0 01 00 00    	fstps  0x1f0(%ebx)
5903d2:	9b                   	fwait
5903d3:	8b 53 04             	mov    0x4(%ebx),%edx
5903d6:	8b c3                	mov    %ebx,%eax
5903d8:	e8 77 87 ff ff       	call   0x588b54
5903dd:	0f b7 c0             	movzwl %ax,%eax
5903e0:	89 44 24 18          	mov    %eax,0x18(%esp)
5903e4:	db 44 24 18          	fildl  0x18(%esp)
5903e8:	d8 b3 f0 01 00 00    	fdivs  0x1f0(%ebx)
5903ee:	d9 9b f0 01 00 00    	fstps  0x1f0(%ebx)
5903f4:	9b                   	fwait
5903f5:	81 fe 30 10 00 00    	cmp    $0x1030,%esi
5903fb:	75 1b                	jne    0x590418
5903fd:	83 7c 24 10 0e       	cmpl   $0xe,0x10(%esp)
590402:	7e 14                	jle    0x590418
590404:	8b c7                	mov    %edi,%eax
590406:	99                   	cltd
590407:	52                   	push   %edx
590408:	50                   	push   %eax
590409:	8b 43 04             	mov    0x4(%ebx),%eax
59040c:	e8 c7 e2 e8 ff       	call   0x41e6d8
590411:	8b c3                	mov    %ebx,%eax
590413:	e8 f8 fa ff ff       	call   0x58ff10
590418:	81 fe 31 10 00 00    	cmp    $0x1031,%esi
59041e:	75 34                	jne    0x590454
590420:	8d 47 02             	lea    0x2(%edi),%eax
590423:	99                   	cltd
590424:	52                   	push   %edx
590425:	50                   	push   %eax
590426:	8b 43 04             	mov    0x4(%ebx),%eax
590429:	e8 aa e2 e8 ff       	call   0x41e6d8
59042e:	8b 53 04             	mov    0x4(%ebx),%edx
590431:	8b c3                	mov    %ebx,%eax
590433:	e8 1c 87 ff ff       	call   0x588b54
590438:	0f b7 c0             	movzwl %ax,%eax
59043b:	89 83 ec 00 00 00    	mov    %eax,0xec(%ebx)
590441:	8b 53 04             	mov    0x4(%ebx),%edx
590444:	8b c3                	mov    %ebx,%eax
590446:	e8 09 87 ff ff       	call   0x588b54
59044b:	0f b7 c0             	movzwl %ax,%eax
59044e:	89 83 e8 00 00 00    	mov    %eax,0xe8(%ebx)
590454:	81 fe 0e 18 00 00    	cmp    $0x180e,%esi
59045a:	75 1d                	jne    0x590479
59045c:	8b c7                	mov    %edi,%eax
59045e:	99                   	cltd
59045f:	52                   	push   %edx
590460:	50                   	push   %eax
590461:	8b 43 04             	mov    0x4(%ebx),%eax
590464:	e8 6f e2 e8 ff       	call   0x41e6d8
590469:	8b 53 04             	mov    0x4(%ebx),%edx
59046c:	8b c3                	mov    %ebx,%eax
59046e:	e8 39 87 ff ff       	call   0x588bac
590473:	89 83 cc 00 00 00    	mov    %eax,0xcc(%ebx)
590479:	81 fe 0e 58 00 00    	cmp    $0x580e,%esi
59047f:	75 0a                	jne    0x59048b
590481:	8b 44 24 08          	mov    0x8(%esp),%eax
590485:	89 83 cc 00 00 00    	mov    %eax,0xcc(%ebx)
59048b:	81 fe 10 18 00 00    	cmp    $0x1810,%esi
590491:	75 49                	jne    0x5904dc
590493:	8d 47 0c             	lea    0xc(%edi),%eax
590496:	99                   	cltd
590497:	52                   	push   %edx
590498:	50                   	push   %eax
590499:	8b 43 04             	mov    0x4(%ebx),%eax
59049c:	e8 37 e2 e8 ff       	call   0x41e6d8
5904a1:	8b 53 04             	mov    0x4(%ebx),%edx
5904a4:	8b c3                	mov    %ebx,%eax
5904a6:	e8 01 87 ff ff       	call   0x588bac
5904ab:	83 e8 5a             	sub    $0x5a,%eax
5904ae:	74 22                	je     0x5904d2
5904b0:	83 e8 5a             	sub    $0x5a,%eax
5904b3:	74 11                	je     0x5904c6
5904b5:	83 e8 5a             	sub    $0x5a,%eax
5904b8:	75 22                	jne    0x5904dc
5904ba:	c7 83 2c 01 00 00 05 	movl   $0x5,0x12c(%ebx)
5904c1:	00 00 00
5904c4:	eb 16                	jmp    0x5904dc
5904c6:	c7 83 2c 01 00 00 03 	movl   $0x3,0x12c(%ebx)
5904cd:	00 00 00
5904d0:	eb 0a                	jmp    0x5904dc
5904d2:	c7 83 2c 01 00 00 06 	movl   $0x6,0x12c(%ebx)
5904d9:	00 00 00
5904dc:	81 fe 35 18 00 00    	cmp    $0x1835,%esi
5904e2:	75 20                	jne    0x590504
5904e4:	8b c7                	mov    %edi,%eax
5904e6:	99                   	cltd
5904e7:	52                   	push   %edx
5904e8:	50                   	push   %eax
5904e9:	8b 43 04             	mov    0x4(%ebx),%eax
5904ec:	e8 e7 e1 e8 ff       	call   0x41e6d8
5904f1:	8b 53 04             	mov    0x4(%ebx),%edx
5904f4:	8b c3                	mov    %ebx,%eax
5904f6:	e8 b1 86 ff ff       	call   0x588bac
5904fb:	8b d0                	mov    %eax,%edx
5904fd:	8b c3                	mov    %ebx,%eax
5904ff:	e8 e8 8d ff ff       	call   0x5892ec
590504:	8b c6                	mov    %esi,%eax
590506:	c1 e8 08             	shr    $0x8,%eax
590509:	83 f8 28             	cmp    $0x28,%eax
59050c:	74 05                	je     0x590513
59050e:	83 f8 30             	cmp    $0x30,%eax
590511:	75 0d                	jne    0x590520
590513:	8b c3                	mov    %ebx,%eax
590515:	8b 4c 24 08          	mov    0x8(%esp),%ecx
590519:	8b d7                	mov    %edi,%edx
59051b:	e8 fc fa ff ff       	call   0x59001c
590520:	8b 44 24 0c          	mov    0xc(%esp),%eax
590524:	99                   	cltd
590525:	52                   	push   %edx
590526:	50                   	push   %eax
590527:	8b 43 04             	mov    0x4(%ebx),%eax
59052a:	e8 a9 e1 e8 ff       	call   0x41e6d8
59052f:	ff 4c 24 14          	decl   0x14(%esp)
590533:	0f 85 49 fb ff ff    	jne    0x590082
590539:	83 7c 24 10 00       	cmpl   $0x0,0x10(%esp)
59053e:	75 1b                	jne    0x59055b
590540:	ba c4 05 59 00       	mov    $0x5905c4,%edx
590545:	8d 43 4a             	lea    0x4a(%ebx),%eax
590548:	e8 5f 84 ff ff       	call   0x5889ac
59054d:	85 c0                	test   %eax,%eax
59054f:	75 0a                	jne    0x59055b
590551:	c7 83 ec 01 00 00 00 	movl   $0xbf800000,0x1ec(%ebx)
590558:	00 80 bf
59055b:	83 c4 1c             	add    $0x1c,%esp
59055e:	5d                   	pop    %ebp
59055f:	5f                   	pop    %edi
590560:	5e                   	pop    %esi
590561:	5b                   	pop    %ebx
590562:	c3                   	ret