5b01fe:	34 c3                	xor    $0xc3,%al
5b0200:	c3                   	ret
5b0201:	bd 0f 1e d3 e0       	mov    $0xe0d31e0f,%ebp
5b0206:	2e e5 04             	cs in  $0x4,%eax
5b0209:	40                   	inc    %eax
5b020a:	00 00                	add    %al,(%eax)
5b020c:	00 40 1c             	add    %al,0x1c(%eax)
5b020f:	46                   	inc    %esi
5b0210:	00 00                	add    %al,(%eax)
5b0212:	00 40 00             	add    %al,0x0(%eax)
5b0215:	00 00                	add    %al,(%eax)
5b0217:	3f                   	aas
5b0218:	00 00                	add    %al,(%eax)
5b021a:	c8 42 00 00          	enter  $0x42,$0x0
5b021e:	00 00                	add    %al,(%eax)
5b0220:	55                   	push   %ebp
5b0221:	8b ec                	mov    %esp,%ebp
5b0223:	81 c4 6c ff ff ff    	add    $0xffffff6c,%esp
5b0229:	53                   	push   %ebx
5b022a:	56                   	push   %esi
5b022b:	57                   	push   %edi
5b022c:	89 55 f8             	mov    %edx,-0x8(%ebp)
5b022f:	89 45 fc             	mov    %eax,-0x4(%ebp)
5b0232:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b0235:	8b 10                	mov    (%eax),%edx
5b0237:	ff 52 10             	call   *0x10(%edx)
5b023a:	3c 03                	cmp    $0x3,%al
5b023c:	74 10                	je     0x5b024e
5b023e:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b0241:	8b 10                	mov    (%eax),%edx
5b0243:	ff 52 10             	call   *0x10(%edx)
5b0246:	3c 02                	cmp    $0x2,%al
5b0248:	0f 85 90 04 00 00    	jne    0x5b06de
5b024e:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b0251:	8b 10                	mov    (%eax),%edx
5b0253:	ff 52 08             	call   *0x8(%edx)
5b0256:	89 45 e0             	mov    %eax,-0x20(%ebp)
5b0259:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b025c:	8b 10                	mov    (%eax),%edx
5b025e:	ff 52 0c             	call   *0xc(%edx)
5b0261:	89 45 dc             	mov    %eax,-0x24(%ebp)
5b0264:	b2 01                	mov    $0x1,%dl
5b0266:	a1 18 ff 5e 00       	mov    0x5eff18,%eax
5b026b:	e8 34 73 04 00       	call   0x5f75a4
5b0270:	89 45 f4             	mov    %eax,-0xc(%ebp)
5b0273:	33 d2                	xor    %edx,%edx
5b0275:	8b 45 f4             	mov    -0xc(%ebp),%eax
5b0278:	e8 0b c3 04 00       	call   0x5fc588
5b027d:	dd 45 08             	fldl   0x8(%ebp)
5b0280:	d8 1d e8 06 5b 00    	fcomps 0x5b06e8
5b0286:	df e0                	fnstsw %ax
5b0288:	9e                   	sahf
5b0289:	74 3c                	je     0x5b02c7
5b028b:	dd 45 08             	fldl   0x8(%ebp)
5b028e:	d8 1d ec 06 5b 00    	fcomps 0x5b06ec
5b0294:	df e0                	fnstsw %ax
5b0296:	9e                   	sahf
5b0297:	74 2e                	je     0x5b02c7
5b0299:	dd 45 08             	fldl   0x8(%ebp)
5b029c:	d8 1d f0 06 5b 00    	fcomps 0x5b06f0
5b02a2:	df e0                	fnstsw %ax
5b02a4:	9e                   	sahf
5b02a5:	74 20                	je     0x5b02c7
5b02a7:	dd 45 08             	fldl   0x8(%ebp)
5b02aa:	d8 1d f4 06 5b 00    	fcomps 0x5b06f4
5b02b0:	df e0                	fnstsw %ax
5b02b2:	9e                   	sahf
5b02b3:	74 12                	je     0x5b02c7
5b02b5:	dd 45 08             	fldl   0x8(%ebp)
5b02b8:	d8 1d f8 06 5b 00    	fcomps 0x5b06f8
5b02be:	df e0                	fnstsw %ax
5b02c0:	9e                   	sahf
5b02c1:	0f 85 a8 01 00 00    	jne    0x5b046f
5b02c7:	dd 45 08             	fldl   0x8(%ebp)
5b02ca:	d8 1d e8 06 5b 00    	fcomps 0x5b06e8
5b02d0:	df e0                	fnstsw %ax
5b02d2:	9e                   	sahf
5b02d3:	75 78                	jne    0x5b034d
5b02d5:	8b 45 e0             	mov    -0x20(%ebp),%eax
5b02d8:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5b02db:	8b 45 dc             	mov    -0x24(%ebp),%eax
5b02de:	89 45 e8             	mov    %eax,-0x18(%ebp)
5b02e1:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b02e4:	8b 10                	mov    (%eax),%edx
5b02e6:	ff 52 10             	call   *0x10(%edx)
5b02e9:	50                   	push   %eax
5b02ea:	8b 4d e8             	mov    -0x18(%ebp),%ecx
5b02ed:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5b02f0:	8b 45 f4             	mov    -0xc(%ebp),%eax
5b02f3:	8b 18                	mov    (%eax),%ebx
5b02f5:	ff 53 24             	call   *0x24(%ebx)
5b02f8:	8b 45 dc             	mov    -0x24(%ebp),%eax
5b02fb:	48                   	dec    %eax
5b02fc:	85 c0                	test   %eax,%eax
5b02fe:	0f 8c c7 03 00 00    	jl     0x5b06cb
5b0304:	40                   	inc    %eax
5b0305:	89 45 84             	mov    %eax,-0x7c(%ebp)
5b0308:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
5b030f:	8b 55 dc             	mov    -0x24(%ebp),%edx
5b0312:	2b 55 d4             	sub    -0x2c(%ebp),%edx
5b0315:	4a                   	dec    %edx
5b0316:	8b 45 f4             	mov    -0xc(%ebp),%eax
5b0319:	8b 08                	mov    (%eax),%ecx
5b031b:	ff 11                	call   *(%ecx)
5b031d:	8b f0                	mov    %eax,%esi
5b031f:	8b 5d e0             	mov    -0x20(%ebp),%ebx
5b0322:	4b                   	dec    %ebx
5b0323:	85 db                	test   %ebx,%ebx
5b0325:	7c 19                	jl     0x5b0340
5b0327:	43                   	inc    %ebx
5b0328:	33 ff                	xor    %edi,%edi
5b032a:	8b d7                	mov    %edi,%edx
5b032c:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b032f:	8b 08                	mov    (%eax),%ecx
5b0331:	ff 11                	call   *(%ecx)
5b0333:	8b 55 d4             	mov    -0x2c(%ebp),%edx
5b0336:	8a 04 10             	mov    (%eax,%edx,1),%al
5b0339:	88 06                	mov    %al,(%esi)
5b033b:	46                   	inc    %esi
5b033c:	47                   	inc    %edi
5b033d:	4b                   	dec    %ebx
5b033e:	75 ea                	jne    0x5b032a
5b0340:	ff 45 d4             	incl   -0x2c(%ebp)
5b0343:	ff 4d 84             	decl   -0x7c(%ebp)
5b0346:	75 c7                	jne    0x5b030f
5b0348:	e9 7e 03 00 00       	jmp    0x5b06cb
5b034d:	dd 45 08             	fldl   0x8(%ebp)
5b0350:	d8 1d ec 06 5b 00    	fcomps 0x5b06ec
5b0356:	df e0                	fnstsw %ax
5b0358:	9e                   	sahf
5b0359:	74 0e                	je     0x5b0369
5b035b:	dd 45 08             	fldl   0x8(%ebp)
5b035e:	d8 1d f0 06 5b 00    	fcomps 0x5b06f0
5b0364:	df e0                	fnstsw %ax
5b0366:	9e                   	sahf
5b0367:	75 78                	jne    0x5b03e1
5b0369:	8b 45 e0             	mov    -0x20(%ebp),%eax
5b036c:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5b036f:	8b 45 dc             	mov    -0x24(%ebp),%eax
5b0372:	89 45 e8             	mov    %eax,-0x18(%ebp)
5b0375:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b0378:	8b 10                	mov    (%eax),%edx
5b037a:	ff 52 10             	call   *0x10(%edx)
5b037d:	50                   	push   %eax
5b037e:	8b 4d e8             	mov    -0x18(%ebp),%ecx
5b0381:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5b0384:	8b 45 f4             	mov    -0xc(%ebp),%eax
5b0387:	8b 18                	mov    (%eax),%ebx
5b0389:	ff 53 24             	call   *0x24(%ebx)
5b038c:	8b 45 dc             	mov    -0x24(%ebp),%eax
5b038f:	48                   	dec    %eax
5b0390:	85 c0                	test   %eax,%eax
5b0392:	0f 8c 33 03 00 00    	jl     0x5b06cb
5b0398:	40                   	inc    %eax
5b0399:	89 45 84             	mov    %eax,-0x7c(%ebp)
5b039c:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
5b03a3:	8b 55 d4             	mov    -0x2c(%ebp),%edx
5b03a6:	8b 45 f4             	mov    -0xc(%ebp),%eax
5b03a9:	8b 08                	mov    (%eax),%ecx
5b03ab:	ff 11                	call   *(%ecx)
5b03ad:	8b f0                	mov    %eax,%esi
5b03af:	8b 5d e0             	mov    -0x20(%ebp),%ebx
5b03b2:	4b                   	dec    %ebx
5b03b3:	85 db                	test   %ebx,%ebx
5b03b5:	7c 1d                	jl     0x5b03d4
5b03b7:	43                   	inc    %ebx
5b03b8:	33 ff                	xor    %edi,%edi
5b03ba:	8b 55 e0             	mov    -0x20(%ebp),%edx
5b03bd:	2b d7                	sub    %edi,%edx
5b03bf:	4a                   	dec    %edx
5b03c0:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b03c3:	8b 08                	mov    (%eax),%ecx
5b03c5:	ff 11                	call   *(%ecx)
5b03c7:	8b 55 d4             	mov    -0x2c(%ebp),%edx
5b03ca:	8a 04 10             	mov    (%eax,%edx,1),%al
5b03cd:	88 06                	mov    %al,(%esi)
5b03cf:	46                   	inc    %esi
5b03d0:	47                   	inc    %edi
5b03d1:	4b                   	dec    %ebx
5b03d2:	75 e6                	jne    0x5b03ba
5b03d4:	ff 45 d4             	incl   -0x2c(%ebp)
5b03d7:	ff 4d 84             	decl   -0x7c(%ebp)
5b03da:	75 c7                	jne    0x5b03a3
5b03dc:	e9 ea 02 00 00       	jmp    0x5b06cb
5b03e1:	dd 45 08             	fldl   0x8(%ebp)
5b03e4:	d8 1d f4 06 5b 00    	fcomps 0x5b06f4
5b03ea:	df e0                	fnstsw %ax
5b03ec:	9e                   	sahf
5b03ed:	74 12                	je     0x5b0401
5b03ef:	dd 45 08             	fldl   0x8(%ebp)
5b03f2:	d8 1d f8 06 5b 00    	fcomps 0x5b06f8
5b03f8:	df e0                	fnstsw %ax
5b03fa:	9e                   	sahf
5b03fb:	0f 85 ca 02 00 00    	jne    0x5b06cb
5b0401:	8b 45 dc             	mov    -0x24(%ebp),%eax
5b0404:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5b0407:	8b 45 e0             	mov    -0x20(%ebp),%eax
5b040a:	89 45 e8             	mov    %eax,-0x18(%ebp)
5b040d:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b0410:	8b 10                	mov    (%eax),%edx
5b0412:	ff 52 10             	call   *0x10(%edx)
5b0415:	50                   	push   %eax
5b0416:	8b 4d e8             	mov    -0x18(%ebp),%ecx
5b0419:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5b041c:	8b 45 f4             	mov    -0xc(%ebp),%eax
5b041f:	8b 18                	mov    (%eax),%ebx
5b0421:	ff 53 24             	call   *0x24(%ebx)
5b0424:	8b 45 e8             	mov    -0x18(%ebp),%eax
5b0427:	48                   	dec    %eax
5b0428:	85 c0                	test   %eax,%eax
5b042a:	0f 8c 9b 02 00 00    	jl     0x5b06cb
5b0430:	40                   	inc    %eax
5b0431:	89 45 84             	mov    %eax,-0x7c(%ebp)
5b0434:	33 ff                	xor    %edi,%edi
5b0436:	8b d7                	mov    %edi,%edx
5b0438:	8b 45 f4             	mov    -0xc(%ebp),%eax
5b043b:	8b 08                	mov    (%eax),%ecx
5b043d:	ff 11                	call   *(%ecx)
5b043f:	8b f0                	mov    %eax,%esi
5b0441:	8b 55 e8             	mov    -0x18(%ebp),%edx
5b0444:	2b d7                	sub    %edi,%edx
5b0446:	4a                   	dec    %edx
5b0447:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b044a:	8b 08                	mov    (%eax),%ecx
5b044c:	ff 11                	call   *(%ecx)
5b044e:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5b0451:	4a                   	dec    %edx
5b0452:	03 c2                	add    %edx,%eax
5b0454:	8b da                	mov    %edx,%ebx
5b0456:	85 db                	test   %ebx,%ebx
5b0458:	7c 0a                	jl     0x5b0464
5b045a:	43                   	inc    %ebx
5b045b:	8a 10                	mov    (%eax),%dl
5b045d:	88 16                	mov    %dl,(%esi)
5b045f:	46                   	inc    %esi
5b0460:	48                   	dec    %eax
5b0461:	4b                   	dec    %ebx
5b0462:	75 f7                	jne    0x5b045b
5b0464:	47                   	inc    %edi
5b0465:	ff 4d 84             	decl   -0x7c(%ebp)
5b0468:	75 cc                	jne    0x5b0436
5b046a:	e9 5c 02 00 00       	jmp    0x5b06cb
5b046f:	dd 45 08             	fldl   0x8(%ebp)
5b0472:	d9 e0                	fchs
5b0474:	db 2d fc 06 5b 00    	fldt   0x5b06fc
5b047a:	de f9                	fdivrp %st,%st(1)
5b047c:	dd 5d a0             	fstpl  -0x60(%ebp)
5b047f:	9b dd 45 a0          	fldl   -0x60(%ebp)
5b0483:	e8 bc 27 e5 ff       	call   0x402c44
5b0488:	d8 0d 08 07 5b 00    	fmuls  0x5b0708
5b048e:	e8 39 28 e5 ff       	call   0x402ccc
5b0493:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
5b0499:	89 55 80             	mov    %edx,-0x80(%ebp)
5b049c:	df ad 7c ff ff ff    	fildll -0x84(%ebp)
5b04a2:	d8 35 08 07 5b 00    	fdivs  0x5b0708
5b04a8:	dd 5d 98             	fstpl  -0x68(%ebp)
5b04ab:	9b dd 45 a0          	fldl   -0x60(%ebp)
5b04af:	e8 d8 27 e5 ff       	call   0x402c8c
5b04b4:	d8 0d 08 07 5b 00    	fmuls  0x5b0708
5b04ba:	e8 0d 28 e5 ff       	call   0x402ccc
5b04bf:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
5b04c5:	89 55 80             	mov    %edx,-0x80(%ebp)
5b04c8:	df ad 7c ff ff ff    	fildll -0x84(%ebp)
5b04ce:	d8 35 08 07 5b 00    	fdivs  0x5b0708
5b04d4:	dd 5d 90             	fstpl  -0x70(%ebp)
5b04d7:	9b db 45 dc          	fildl  -0x24(%ebp)
5b04db:	dc 4d 98             	fmull  -0x68(%ebp)
5b04de:	d9 e1                	fabs
5b04e0:	db bd 70 ff ff ff    	fstpt  -0x90(%ebp)
5b04e6:	9b db 45 e0          	fildl  -0x20(%ebp)
5b04ea:	dc 4d 90             	fmull  -0x70(%ebp)
5b04ed:	d9 e1                	fabs
5b04ef:	db ad 70 ff ff ff    	fldt   -0x90(%ebp)
5b04f5:	de c1                	faddp  %st,%st(1)
5b04f7:	e8 d0 27 e5 ff       	call   0x402ccc
5b04fc:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5b04ff:	8b 45 dc             	mov    -0x24(%ebp),%eax
5b0502:	f7 d8                	neg    %eax
5b0504:	89 85 6c ff ff ff    	mov    %eax,-0x94(%ebp)
5b050a:	db 85 6c ff ff ff    	fildl  -0x94(%ebp)
5b0510:	dc 4d 90             	fmull  -0x70(%ebp)
5b0513:	d9 e1                	fabs
5b0515:	db bd 70 ff ff ff    	fstpt  -0x90(%ebp)
5b051b:	9b db 45 e0          	fildl  -0x20(%ebp)
5b051f:	dc 4d 98             	fmull  -0x68(%ebp)
5b0522:	d9 e1                	fabs
5b0524:	db ad 70 ff ff ff    	fldt   -0x90(%ebp)
5b052a:	de c1                	faddp  %st,%st(1)
5b052c:	e8 9b 27 e5 ff       	call   0x402ccc
5b0531:	89 45 e8             	mov    %eax,-0x18(%ebp)
5b0534:	db 45 e8             	fildl  -0x18(%ebp)
5b0537:	d8 35 0c 07 5b 00    	fdivs  0x5b070c
5b053d:	d8 25 10 07 5b 00    	fsubs  0x5b0710
5b0543:	dd 5d c0             	fstpl  -0x40(%ebp)
5b0546:	9b db 45 e4          	fildl  -0x1c(%ebp)
5b054a:	d8 35 0c 07 5b 00    	fdivs  0x5b070c
5b0550:	d8 25 10 07 5b 00    	fsubs  0x5b0710
5b0556:	dd 5d b8             	fstpl  -0x48(%ebp)
5b0559:	9b db 45 dc          	fildl  -0x24(%ebp)
5b055d:	d8 35 0c 07 5b 00    	fdivs  0x5b070c
5b0563:	d8 25 10 07 5b 00    	fsubs  0x5b0710
5b0569:	dd 5d a8             	fstpl  -0x58(%ebp)
5b056c:	9b db 45 e0          	fildl  -0x20(%ebp)
5b0570:	d8 35 0c 07 5b 00    	fdivs  0x5b070c
5b0576:	d8 25 10 07 5b 00    	fsubs  0x5b0710
5b057c:	dd 5d b0             	fstpl  -0x50(%ebp)
5b057f:	9b                   	fwait
5b0580:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b0583:	8b 10                	mov    (%eax),%edx
5b0585:	ff 52 10             	call   *0x10(%edx)
5b0588:	50                   	push   %eax
5b0589:	8b 4d e8             	mov    -0x18(%ebp),%ecx
5b058c:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5b058f:	8b 45 f4             	mov    -0xc(%ebp),%eax
5b0592:	8b 18                	mov    (%eax),%ebx
5b0594:	ff 53 24             	call   *0x24(%ebx)
5b0597:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5b059a:	c1 e0 02             	shl    $0x2,%eax
5b059d:	e8 0a 22 e5 ff       	call   0x4027ac
5b05a2:	89 45 8c             	mov    %eax,-0x74(%ebp)
5b05a5:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5b05a8:	c1 e0 02             	shl    $0x2,%eax
5b05ab:	e8 fc 21 e5 ff       	call   0x4027ac
5b05b0:	89 45 88             	mov    %eax,-0x78(%ebp)
5b05b3:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5b05b6:	48                   	dec    %eax
5b05b7:	85 c0                	test   %eax,%eax
5b05b9:	7c 4c                	jl     0x5b0607
5b05bb:	40                   	inc    %eax
5b05bc:	89 45 84             	mov    %eax,-0x7c(%ebp)
5b05bf:	33 ff                	xor    %edi,%edi
5b05c1:	89 bd 6c ff ff ff    	mov    %edi,-0x94(%ebp)
5b05c7:	db 85 6c ff ff ff    	fildl  -0x94(%ebp)
5b05cd:	dc 65 b8             	fsubl  -0x48(%ebp)
5b05d0:	dc 4d 98             	fmull  -0x68(%ebp)
5b05d3:	e8 f4 26 e5 ff       	call   0x402ccc
5b05d8:	8b 55 8c             	mov    -0x74(%ebp),%edx
5b05db:	89 04 ba             	mov    %eax,(%edx,%edi,4)
5b05de:	89 bd 6c ff ff ff    	mov    %edi,-0x94(%ebp)
5b05e4:	db 85 6c ff ff ff    	fildl  -0x94(%ebp)
5b05ea:	dc 65 b8             	fsubl  -0x48(%ebp)
5b05ed:	d8 2d 14 07 5b 00    	fsubrs 0x5b0714
5b05f3:	dc 4d 90             	fmull  -0x70(%ebp)
5b05f6:	e8 d1 26 e5 ff       	call   0x402ccc
5b05fb:	8b 55 88             	mov    -0x78(%ebp),%edx
5b05fe:	89 04 ba             	mov    %eax,(%edx,%edi,4)
5b0601:	47                   	inc    %edi
5b0602:	ff 4d 84             	decl   -0x7c(%ebp)
5b0605:	75 ba                	jne    0x5b05c1
5b0607:	8b 45 e8             	mov    -0x18(%ebp),%eax