521193:	79 03                	jns    0x521198
521195:	83 d0 00             	adc    $0x0,%eax
521198:	89 45 f8             	mov    %eax,-0x8(%ebp)
52119b:	db 45 f8             	fildl  -0x8(%ebp)
52119e:	e8 1d 1b ee ff       	call   0x402cc0
5211a3:	8b d0                	mov    %eax,%edx
5211a5:	8b c7                	mov    %edi,%eax
5211a7:	59                   	pop    %ecx
5211a8:	e8 b7 85 0b 00       	call   0x5d9764
5211ad:	66 83 3b 35          	cmpw   $0x35,(%ebx)
5211b1:	74 06                	je     0x5211b9
5211b3:	66 83 3b 65          	cmpw   $0x65,(%ebx)
5211b7:	75 55                	jne    0x52120e
5211b9:	8b be b0 05 00 00    	mov    0x5b0(%esi),%edi
5211bf:	dd 87 a0 03 00 00    	fldl   0x3a0(%edi)
5211c5:	d8 1d d8 13 52 00    	fcomps 0x5213d8
5211cb:	df e0                	fnstsw %ax
5211cd:	9e                   	sahf
5211ce:	74 3e                	je     0x52120e
5211d0:	68 00 40 7f 40       	push   $0x407f4000
5211d5:	6a 00                	push   $0x0
5211d7:	6a 01                	push   $0x1
5211d9:	8b 47 4c             	mov    0x4c(%edi),%eax
5211dc:	d1 f8                	sar    $1,%eax
5211de:	79 03                	jns    0x5211e3
5211e0:	83 d0 00             	adc    $0x0,%eax
5211e3:	89 45 fc             	mov    %eax,-0x4(%ebp)
5211e6:	db 45 fc             	fildl  -0x4(%ebp)
5211e9:	e8 d2 1a ee ff       	call   0x402cc0
5211ee:	50                   	push   %eax
5211ef:	8b 47 48             	mov    0x48(%edi),%eax
5211f2:	d1 f8                	sar    $1,%eax
5211f4:	79 03                	jns    0x5211f9
5211f6:	83 d0 00             	adc    $0x0,%eax
5211f9:	89 45 f8             	mov    %eax,-0x8(%ebp)
5211fc:	db 45 f8             	fildl  -0x8(%ebp)
5211ff:	e8 bc 1a ee ff       	call   0x402cc0
521204:	8b d0                	mov    %eax,%edx
521206:	8b c7                	mov    %edi,%eax
521208:	59                   	pop    %ecx
521209:	e8 56 85 0b 00       	call   0x5d9764
52120e:	66 83 3b 36          	cmpw   $0x36,(%ebx)
521212:	74 06                	je     0x52121a
521214:	66 83 3b 66          	cmpw   $0x66,(%ebx)
521218:	75 55                	jne    0x52126f
52121a:	8b be b0 05 00 00    	mov    0x5b0(%esi),%edi
521220:	dd 87 a0 03 00 00    	fldl   0x3a0(%edi)
521226:	d8 1d dc 13 52 00    	fcomps 0x5213dc
52122c:	df e0                	fnstsw %ax
52122e:	9e                   	sahf
52122f:	74 3e                	je     0x52126f
521231:	68 00 c0 82 40       	push   $0x4082c000
521236:	6a 00                	push   $0x0
521238:	6a 01                	push   $0x1
52123a:	8b 47 4c             	mov    0x4c(%edi),%eax
52123d:	d1 f8                	sar    $1,%eax
52123f:	79 03                	jns    0x521244
521241:	83 d0 00             	adc    $0x0,%eax
521244:	89 45 fc             	mov    %eax,-0x4(%ebp)
521247:	db 45 fc             	fildl  -0x4(%ebp)
52124a:	e8 71 1a ee ff       	call   0x402cc0
52124f:	50                   	push   %eax
521250:	8b 47 48             	mov    0x48(%edi),%eax
521253:	d1 f8                	sar    $1,%eax
521255:	79 03                	jns    0x52125a
521257:	83 d0 00             	adc    $0x0,%eax
52125a:	89 45 f8             	mov    %eax,-0x8(%ebp)
52125d:	db 45 f8             	fildl  -0x8(%ebp)
521260:	e8 5b 1a ee ff       	call   0x402cc0
521265:	8b d0                	mov    %eax,%edx
521267:	8b c7                	mov    %edi,%eax
521269:	59                   	pop    %ecx
52126a:	e8 f5 84 0b 00       	call   0x5d9764
52126f:	66 83 3b 37          	cmpw   $0x37,(%ebx)
521273:	74 06                	je     0x52127b
521275:	66 83 3b 67          	cmpw   $0x67,(%ebx)
521279:	75 55                	jne    0x5212d0
52127b:	8b be b0 05 00 00    	mov    0x5b0(%esi),%edi
521281:	dd 87 a0 03 00 00    	fldl   0x3a0(%edi)
521287:	d8 1d e0 13 52 00    	fcomps 0x5213e0
52128d:	df e0                	fnstsw %ax
52128f:	9e                   	sahf
521290:	74 3e                	je     0x5212d0
521292:	68 00 e0 85 40       	push   $0x4085e000
521297:	6a 00                	push   $0x0
521299:	6a 01                	push   $0x1
52129b:	8b 47 4c             	mov    0x4c(%edi),%eax
52129e:	d1 f8                	sar    $1,%eax
5212a0:	79 03                	jns    0x5212a5
5212a2:	83 d0 00             	adc    $0x0,%eax
5212a5:	89 45 fc             	mov    %eax,-0x4(%ebp)
5212a8:	db 45 fc             	fildl  -0x4(%ebp)
5212ab:	e8 10 1a ee ff       	call   0x402cc0
5212b0:	50                   	push   %eax
5212b1:	8b 47 48             	mov    0x48(%edi),%eax
5212b4:	d1 f8                	sar    $1,%eax
5212b6:	79 03                	jns    0x5212bb
5212b8:	83 d0 00             	adc    $0x0,%eax
5212bb:	89 45 f8             	mov    %eax,-0x8(%ebp)
5212be:	db 45 f8             	fildl  -0x8(%ebp)
5212c1:	e8 fa 19 ee ff       	call   0x402cc0
5212c6:	8b d0                	mov    %eax,%edx
5212c8:	8b c7                	mov    %edi,%eax
5212ca:	59                   	pop    %ecx
5212cb:	e8 94 84 0b 00       	call   0x5d9764
5212d0:	66 83 3b 38          	cmpw   $0x38,(%ebx)
5212d4:	74 06                	je     0x5212dc
5212d6:	66 83 3b 68          	cmpw   $0x68,(%ebx)
5212da:	75 55                	jne    0x521331
5212dc:	8b be b0 05 00 00    	mov    0x5b0(%esi),%edi
5212e2:	dd 87 a0 03 00 00    	fldl   0x3a0(%edi)
5212e8:	d8 1d e4 13 52 00    	fcomps 0x5213e4
5212ee:	df e0                	fnstsw %ax
5212f0:	9e                   	sahf
5212f1:	74 3e                	je     0x521331
5212f3:	68 00 00 89 40       	push   $0x40890000
5212f8:	6a 00                	push   $0x0
5212fa:	6a 01                	push   $0x1
5212fc:	8b 47 4c             	mov    0x4c(%edi),%eax
5212ff:	d1 f8                	sar    $1,%eax
521301:	79 03                	jns    0x521306
521303:	83 d0 00             	adc    $0x0,%eax
521306:	89 45 fc             	mov    %eax,-0x4(%ebp)
521309:	db 45 fc             	fildl  -0x4(%ebp)
52130c:	e8 af 19 ee ff       	call   0x402cc0
521311:	50                   	push   %eax
521312:	8b 47 48             	mov    0x48(%edi),%eax
521315:	d1 f8                	sar    $1,%eax
521317:	79 03                	jns    0x52131c
521319:	83 d0 00             	adc    $0x0,%eax
52131c:	89 45 f8             	mov    %eax,-0x8(%ebp)
52131f:	db 45 f8             	fildl  -0x8(%ebp)
521322:	e8 99 19 ee ff       	call   0x402cc0
521327:	8b d0                	mov    %eax,%edx
521329:	8b c7                	mov    %edi,%eax
52132b:	59                   	pop    %ecx
52132c:	e8 33 84 0b 00       	call   0x5d9764
521331:	66 83 3b 39          	cmpw   $0x39,(%ebx)
521335:	74 06                	je     0x52133d
521337:	66 83 3b 69          	cmpw   $0x69,(%ebx)
52133b:	75 55                	jne    0x521392
52133d:	8b be b0 05 00 00    	mov    0x5b0(%esi),%edi
521343:	dd 87 a0 03 00 00    	fldl   0x3a0(%edi)
521349:	d8 1d e8 13 52 00    	fcomps 0x5213e8
52134f:	df e0                	fnstsw %ax
521351:	9e                   	sahf
521352:	74 3e                	je     0x521392
521354:	68 00 20 8c 40       	push   $0x408c2000
521359:	6a 00                	push   $0x0
52135b:	6a 01                	push   $0x1
52135d:	8b 47 4c             	mov    0x4c(%edi),%eax
521360:	d1 f8                	sar    $1,%eax
521362:	79 03                	jns    0x521367
521364:	83 d0 00             	adc    $0x0,%eax
521367:	89 45 fc             	mov    %eax,-0x4(%ebp)
52136a:	db 45 fc             	fildl  -0x4(%ebp)
52136d:	e8 4e 19 ee ff       	call   0x402cc0
521372:	50                   	push   %eax
521373:	8b 47 48             	mov    0x48(%edi),%eax
521376:	d1 f8                	sar    $1,%eax
521378:	79 03                	jns    0x52137d
52137a:	83 d0 00             	adc    $0x0,%eax
52137d:	89 45 f8             	mov    %eax,-0x8(%ebp)
521380:	db 45 f8             	fildl  -0x8(%ebp)
521383:	e8 38 19 ee ff       	call   0x402cc0
521388:	8b d0                	mov    %eax,%edx
52138a:	8b c7                	mov    %edi,%eax
52138c:	59                   	pop    %ecx
52138d:	e8 d2 83 0b 00       	call   0x5d9764
521392:	66 83 3b 30          	cmpw   $0x30,(%ebx)
521396:	74 06                	je     0x52139e
521398:	66 83 3b 60          	cmpw   $0x60,(%ebx)
52139c:	75 09                	jne    0x5213a7
52139e:	33 d2                	xor    %edx,%edx
5213a0:	8b c6                	mov    %esi,%eax
5213a2:	e8 ed f3 ff ff       	call   0x520794
5213a7:	33 c0                	xor    %eax,%eax
5213a9:	5a                   	pop    %edx
5213aa:	59                   	pop    %ecx
5213ab:	59                   	pop    %ecx
5213ac:	64 89 10             	mov    %edx,%fs:(%eax)
5213af:	eb 0a                	jmp    0x5213bb
5213b1:	e9 a2 2b ee ff       	jmp    0x403f58
5213b6:	e8 05 2f ee ff       	call   0x4042c0
5213bb:	5f                   	pop    %edi
5213bc:	5e                   	pop    %esi
5213bd:	5b                   	pop    %ebx
5213be:	59                   	pop    %ecx
5213bf:	59                   	pop    %ecx
5213c0:	5d                   	pop    %ebp
5213c1:	c2 04 00             	ret    $0x4
5213c4:	00 00                	add    %al,(%eax)
5213c6:	00 00                	add    %al,(%eax)
5213c8:	00 00                	add    %al,(%eax)
5213ca:	c8 42 00 00          	enter  $0x42,$0x0
5213ce:	48                   	dec    %eax
5213cf:	43                   	inc    %ebx
5213d0:	00 00                	add    %al,(%eax)
5213d2:	96                   	xchg   %eax,%esi
5213d3:	43                   	inc    %ebx
5213d4:	00 00                	add    %al,(%eax)
5213d6:	c8 43 00 00          	enter  $0x43,$0x0
5213da:	fa                   	cli
5213db:	43                   	inc    %ebx
5213dc:	00 00                	add    %al,(%eax)
5213de:	16                   	push   %ss
5213df:	44                   	inc    %esp
5213e0:	00 00                	add    %al,(%eax)
5213e2:	2f                   	das
5213e3:	44                   	inc    %esp
5213e4:	00 00                	add    %al,(%eax)
5213e6:	48                   	dec    %eax
5213e7:	44                   	inc    %esp
5213e8:	00 00                	add    %al,(%eax)
5213ea:	61                   	popa
5213eb:	44                   	inc    %esp
5213ec:	55                   	push   %ebp
5213ed:	8b ec                	mov    %esp,%ebp
5213ef:	53                   	push   %ebx
5213f0:	8a 5d 08             	mov    0x8(%ebp),%bl
5213f3:	53                   	push   %ebx
5213f4:	e8 af fb ff ff       	call   0x520fa8
5213f9:	5b                   	pop    %ebx
5213fa:	5d                   	pop    %ebp
5213fb:	c2 04 00             	ret    $0x4
5213fe:	8b c0                	mov    %eax,%eax
521400:	33 d2                	xor    %edx,%edx
521402:	e8 31 00 00 00       	call   0x521438
521407:	c3                   	ret
521408:	33 d2                	xor    %edx,%edx
52140a:	e8 29 00 00 00       	call   0x521438
52140f:	c3                   	ret
521410:	55                   	push   %ebp
521411:	8b ec                	mov    %esp,%ebp
521413:	80 f9 02             	cmp    $0x2,%cl
521416:	75 07                	jne    0x52141f
521418:	33 d2                	xor    %edx,%edx
52141a:	e8 19 00 00 00       	call   0x521438
52141f:	5d                   	pop    %ebp
521420:	c2 0c 00             	ret    $0xc
521423:	90                   	nop
521424:	55                   	push   %ebp
521425:	8b ec                	mov    %esp,%ebp
521427:	80 f9 02             	cmp    $0x2,%cl
52142a:	75 07                	jne    0x521433
52142c:	33 d2                	xor    %edx,%edx
52142e:	e8 05 00 00 00       	call   0x521438
521433:	5d                   	pop    %ebp
521434:	c2 0c 00             	ret    $0xc
521437:	90                   	nop
521438:	55                   	push   %ebp
521439:	8b ec                	mov    %esp,%ebp
52143b:	51                   	push   %ecx
52143c:	53                   	push   %ebx
52143d:	56                   	push   %esi
52143e:	57                   	push   %edi
52143f:	8b d8                	mov    %eax,%ebx
521441:	33 c0                	xor    %eax,%eax
521443:	55                   	push   %ebp
521444:	68 5e 16 52 00       	push   $0x52165e
521449:	64 ff 30             	push   %fs:(%eax)
52144c:	64 89 20             	mov    %esp,%fs:(%eax)
52144f:	8b 83 3c 03 00 00    	mov    0x33c(%ebx),%eax
521455:	8b 10                	mov    (%eax),%edx
521457:	ff 52 50             	call   *0x50(%edx)
52145a:	84 c0                	test   %al,%al
52145c:	74 09                	je     0x521467
52145e:	33 d2                	xor    %edx,%edx
521460:	8b c3                	mov    %ebx,%eax
521462:	e8 cd db ff ff       	call   0x51f034
521467:	8b cb                	mov    %ebx,%ecx
521469:	b2 01                	mov    $0x1,%dl
52146b:	a1 48 96 4f 00       	mov    0x4f9648,%eax
521470:	e8 c7 0f f4 ff       	call   0x46243c
521475:	89 45 fc             	mov    %eax,-0x4(%ebp)
521478:	8b b3 b0 05 00 00    	mov    0x5b0(%ebx),%esi
52147e:	8b 56 48             	mov    0x48(%esi),%edx
521481:	d1 fa                	sar    $1,%edx
521483:	79 03                	jns    0x521488
521485:	83 d2 00             	adc    $0x0,%edx
521488:	8b c6                	mov    %esi,%eax
52148a:	e8 21 7d 0b 00       	call   0x5d91b0
52148f:	8b 55 fc             	mov    -0x4(%ebp),%edx
521492:	89 82 60 03 00 00    	mov    %eax,0x360(%edx)
521498:	8b b3 b0 05 00 00    	mov    0x5b0(%ebx),%esi
52149e:	8b 56 4c             	mov    0x4c(%esi),%edx
5214a1:	d1 fa                	sar    $1,%edx
5214a3:	79 03                	jns    0x5214a8
5214a5:	83 d2 00             	adc    $0x0,%edx
5214a8:	8b c6                	mov    %esi,%eax
5214aa:	e8 4d 7d 0b 00       	call   0x5d91fc
5214af:	8b 55 fc             	mov    -0x4(%ebp),%edx
5214b2:	89 82 64 03 00 00    	mov    %eax,0x364(%edx)
5214b8:	68 00 00 59 40       	push   $0x40590000
5214bd:	6a 00                	push   $0x0
5214bf:	8b 83 b0 05 00 00    	mov    0x5b0(%ebx),%eax
5214c5:	ff b0 a4 03 00 00    	push   0x3a4(%eax)
5214cb:	ff b0 a0 03 00 00    	push   0x3a0(%eax)
5214d1:	e8 42 e5 f0 ff       	call   0x42fa18
5214d6:	8b 45 fc             	mov    -0x4(%ebp),%eax
5214d9:	dd 98 68 03 00 00    	fstpl  0x368(%eax)
5214df:	9b                   	fwait
5214e0:	8b 83 b0 05 00 00    	mov    0x5b0(%ebx),%eax
5214e6:	8b 10                	mov    (%eax),%edx
5214e8:	ff 92 d0 00 00 00    	call   *0xd0(%edx)
5214ee:	8b d0                	mov    %eax,%edx
5214f0:	8b 45 fc             	mov    -0x4(%ebp),%eax
5214f3:	8b 80 08 03 00 00    	mov    0x308(%eax),%eax
5214f9:	e8 a6 13 0c 00       	call   0x5e28a4
5214fe:	8b 83 b8 05 00 00    	mov    0x5b8(%ebx),%eax
521504:	8b 10                	mov    (%eax),%edx
521506:	ff 92 d0 00 00 00    	call   *0xd0(%edx)
52150c:	8b d0                	mov    %eax,%edx
52150e:	8b 45 fc             	mov    -0x4(%ebp),%eax
521511:	8b 80 0c 03 00 00    	mov    0x30c(%eax),%eax
521517:	e8 88 13 0c 00       	call   0x5e28a4
52151c:	8b 83 b8 05 00 00    	mov    0x5b8(%ebx),%eax
521522:	8b 10                	mov    (%eax),%edx
521524:	ff 92 d0 00 00 00    	call   *0xd0(%edx)
52152a:	8b d0                	mov    %eax,%edx
52152c:	8b 45 fc             	mov    -0x4(%ebp),%eax
52152f:	8b 80 04 03 00 00    	mov    0x304(%eax),%eax
521535:	e8 6a 13 0c 00       	call   0x5e28a4
52153a:	8b 45 fc             	mov    -0x4(%ebp),%eax
52153d:	8b 93 c0 05 00 00    	mov    0x5c0(%ebx),%edx
521543:	89 90 50 03 00 00    	mov    %edx,0x350(%eax)
521549:	8b 93 c4 05 00 00    	mov    0x5c4(%ebx),%edx
52154f:	89 90 54 03 00 00    	mov    %edx,0x354(%eax)
521555:	8b 45 fc             	mov    -0x4(%ebp),%eax
521558:	8b 93 c8 05 00 00    	mov    0x5c8(%ebx),%edx
52155e:	89 90 58 03 00 00    	mov    %edx,0x358(%eax)
521564:	8b 93 cc 05 00 00    	mov    0x5cc(%ebx),%edx
52156a:	89 90 5c 03 00 00    	mov    %edx,0x35c(%eax)
521570:	8b 83 b0 05 00 00    	mov    0x5b0(%ebx),%eax
521576:	66 8b 15 70 16 52 00 	mov    0x521670,%dx
52157d:	8b 08                	mov    (%eax),%ecx
52157f:	ff 91 04 01 00 00    	call   *0x104(%ecx)
521585:	8b 83 b8 05 00 00    	mov    0x5b8(%ebx),%eax
52158b:	66 8b 15 70 16 52 00 	mov    0x521670,%dx
521592:	8b 08                	mov    (%eax),%ecx
521594:	ff 91 04 01 00 00    	call   *0x104(%ecx)
52159a:	8b 83 b4 05 00 00    	mov    0x5b4(%ebx),%eax
5215a0:	66 8b 15 70 16 52 00 	mov    0x521670,%dx
5215a7:	8b 08                	mov    (%eax),%ecx
5215a9:	ff 91 04 01 00 00    	call   *0x104(%ecx)
5215af:	8b 83 90 05 00 00    	mov    0x590(%ebx),%eax
5215b5:	33 d2                	xor    %edx,%edx
5215b7:	8b 08                	mov    (%eax),%ecx
5215b9:	ff 51 64             	call   *0x64(%ecx)
5215bc:	8b 83 94 05 00 00    	mov    0x594(%ebx),%eax