5b8253:	ff 11                	call   *(%ecx)
5b8255:	89 45 bc             	mov    %eax,-0x44(%ebp)
5b8258:	8b 45 f8             	mov    -0x8(%ebp),%eax
5b825b:	8b 10                	mov    (%eax),%edx
5b825d:	ff 52 14             	call   *0x14(%edx)
5b8260:	8b d0                	mov    %eax,%edx
5b8262:	8b 45 bc             	mov    -0x44(%ebp),%eax
5b8265:	b9 ff 00 00 00       	mov    $0xff,%ecx
5b826a:	e8 d1 af e4 ff       	call   0x403240
5b826f:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
5b8273:	7e 25                	jle    0x5b829a
5b8275:	8b 45 f0             	mov    -0x10(%ebp),%eax
5b8278:	48                   	dec    %eax
5b8279:	89 45 a4             	mov    %eax,-0x5c(%ebp)
5b827c:	db 45 a4             	fildl  -0x5c(%ebp)
5b827f:	dc 4d d0             	fmull  -0x30(%ebp)
5b8282:	e8 45 aa e4 ff       	call   0x402ccc
5b8287:	89 45 e0             	mov    %eax,-0x20(%ebp)
5b828a:	db 45 f0             	fildl  -0x10(%ebp)
5b828d:	dc 4d d0             	fmull  -0x30(%ebp)
5b8290:	e8 37 aa e4 ff       	call   0x402ccc
5b8295:	89 45 e8             	mov    %eax,-0x18(%ebp)
5b8298:	eb 0a                	jmp    0x5b82a4
5b829a:	33 c0                	xor    %eax,%eax
5b829c:	89 45 e0             	mov    %eax,-0x20(%ebp)
5b829f:	33 c0                	xor    %eax,%eax
5b82a1:	89 45 e8             	mov    %eax,-0x18(%ebp)
5b82a4:	8b 45 f8             	mov    -0x8(%ebp),%eax
5b82a7:	8b 10                	mov    (%eax),%edx
5b82a9:	ff 52 0c             	call   *0xc(%edx)
5b82ac:	48                   	dec    %eax
5b82ad:	85 c0                	test   %eax,%eax
5b82af:	0f 8c 9c 00 00 00    	jl     0x5b8351
5b82b5:	40                   	inc    %eax
5b82b6:	89 45 ac             	mov    %eax,-0x54(%ebp)
5b82b9:	33 db                	xor    %ebx,%ebx
5b82bb:	85 db                	test   %ebx,%ebx
5b82bd:	7e 15                	jle    0x5b82d4
5b82bf:	8b 45 b4             	mov    -0x4c(%ebp),%eax
5b82c2:	8b 44 98 fc          	mov    -0x4(%eax,%ebx,4),%eax
5b82c6:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5b82c9:	8b 45 b4             	mov    -0x4c(%ebp),%eax
5b82cc:	8b 04 98             	mov    (%eax,%ebx,4),%eax
5b82cf:	89 45 ec             	mov    %eax,-0x14(%ebp)
5b82d2:	eb 0a                	jmp    0x5b82de
5b82d4:	33 c0                	xor    %eax,%eax
5b82d6:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5b82d9:	33 c0                	xor    %eax,%eax
5b82db:	89 45 ec             	mov    %eax,-0x14(%ebp)
5b82de:	8b 45 e0             	mov    -0x20(%ebp),%eax
5b82e1:	8b 55 e8             	mov    -0x18(%ebp),%edx
5b82e4:	2b d0                	sub    %eax,%edx
5b82e6:	7c 5f                	jl     0x5b8347
5b82e8:	42                   	inc    %edx
5b82e9:	89 55 a8             	mov    %edx,-0x58(%ebp)
5b82ec:	89 45 b8             	mov    %eax,-0x48(%ebp)
5b82ef:	8b 55 b8             	mov    -0x48(%ebp),%edx
5b82f2:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b82f5:	8b 08                	mov    (%eax),%ecx
5b82f7:	ff 11                	call   *(%ecx)
5b82f9:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5b82fc:	8d 14 52             	lea    (%edx,%edx,2),%edx
5b82ff:	03 c2                	add    %edx,%eax
5b8301:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5b8304:	8b 4d ec             	mov    -0x14(%ebp),%ecx
5b8307:	2b ca                	sub    %edx,%ecx
5b8309:	7c 34                	jl     0x5b833f
5b830b:	41                   	inc    %ecx
5b830c:	87 d1                	xchg   %edx,%ecx
5b830e:	80 78 02 80          	cmpb   $0x80,0x2(%eax)
5b8312:	73 25                	jae    0x5b8339
5b8314:	80 78 01 80          	cmpb   $0x80,0x1(%eax)
5b8318:	73 1f                	jae    0x5b8339
5b831a:	80 38 80             	cmpb   $0x80,(%eax)
5b831d:	73 1a                	jae    0x5b8339
5b831f:	8b f3                	mov    %ebx,%esi
5b8321:	c1 ee 03             	shr    $0x3,%esi
5b8324:	03 75 bc             	add    -0x44(%ebp),%esi
5b8327:	8b cb                	mov    %ebx,%ecx
5b8329:	83 e1 07             	and    $0x7,%ecx
5b832c:	8b 3d 88 6d 6a 00    	mov    0x6a6d88,%edi
5b8332:	8a 0c 0f             	mov    (%edi,%ecx,1),%cl
5b8335:	f6 d1                	not    %cl
5b8337:	20 0e                	and    %cl,(%esi)
5b8339:	83 c0 03             	add    $0x3,%eax
5b833c:	4a                   	dec    %edx
5b833d:	75 cf                	jne    0x5b830e
5b833f:	ff 45 b8             	incl   -0x48(%ebp)
5b8342:	ff 4d a8             	decl   -0x58(%ebp)
5b8345:	75 a8                	jne    0x5b82ef
5b8347:	43                   	inc    %ebx
5b8348:	ff 4d ac             	decl   -0x54(%ebp)
5b834b:	0f 85 6a ff ff ff    	jne    0x5b82bb
5b8351:	66 83 7d 0e 00       	cmpw   $0x0,0xe(%ebp)
5b8356:	74 16                	je     0x5b836e
5b8358:	db 45 f0             	fildl  -0x10(%ebp)
5b835b:	dc 4d c0             	fmull  -0x40(%ebp)
5b835e:	e8 69 a9 e4 ff       	call   0x402ccc
5b8363:	8b c8                	mov    %eax,%ecx
5b8365:	8b 55 08             	mov    0x8(%ebp),%edx
5b8368:	8b 45 10             	mov    0x10(%ebp),%eax
5b836b:	ff 55 0c             	call   *0xc(%ebp)
5b836e:	ff 45 f0             	incl   -0x10(%ebp)
5b8371:	ff 4d b0             	decl   -0x50(%ebp)
5b8374:	0f 85 d1 fe ff ff    	jne    0x5b824b
5b837a:	8b 45 b4             	mov    -0x4c(%ebp),%eax
5b837d:	e8 4a a4 e4 ff       	call   0x4027cc
5b8382:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b8385:	8a 55 cf             	mov    -0x31(%ebp),%dl
5b8388:	88 50 04             	mov    %dl,0x4(%eax)
5b838b:	8b 45 f8             	mov    -0x8(%ebp),%eax
5b838e:	8a 55 ce             	mov    -0x32(%ebp),%dl
5b8391:	88 50 04             	mov    %dl,0x4(%eax)
5b8394:	5f                   	pop    %edi
5b8395:	5e                   	pop    %esi
5b8396:	5b                   	pop    %ebx
5b8397:	8b e5                	mov    %ebp,%esp
5b8399:	5d                   	pop    %ebp
5b839a:	c2 0c 00             	ret    $0xc
5b839d:	00 00                	add    %al,(%eax)
5b839f:	00 00                	add    %al,(%eax)
5b83a1:	00 00                	add    %al,(%eax)
5b83a3:	3f                   	aas
5b83a4:	00 00                	add    %al,(%eax)
5b83a6:	c8 42 01 00          	enter  $0x142,$0x0
5b83aa:	00 00                	add    %al,(%eax)
5b83ac:	02 00                	add    (%eax),%al
5b83ae:	00 00                	add    %al,(%eax)
5b83b0:	55                   	push   %ebp
5b83b1:	8b ec                	mov    %esp,%ebp
5b83b3:	81 c4 7c ff ff ff    	add    $0xffffff7c,%esp
5b83b9:	53                   	push   %ebx
5b83ba:	56                   	push   %esi
5b83bb:	57                   	push   %edi
5b83bc:	89 4d f4             	mov    %ecx,-0xc(%ebp)
5b83bf:	89 55 f8             	mov    %edx,-0x8(%ebp)
5b83c2:	89 45 fc             	mov    %eax,-0x4(%ebp)
5b83c5:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b83c8:	8b 10                	mov    (%eax),%edx
5b83ca:	ff 52 0c             	call   *0xc(%edx)
5b83cd:	89 45 bc             	mov    %eax,-0x44(%ebp)
5b83d0:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b83d3:	8b 10                	mov    (%eax),%edx
5b83d5:	ff 52 08             	call   *0x8(%edx)
5b83d8:	89 45 b8             	mov    %eax,-0x48(%ebp)
5b83db:	8b 45 f8             	mov    -0x8(%ebp),%eax
5b83de:	8b 10                	mov    (%eax),%edx
5b83e0:	ff 52 0c             	call   *0xc(%edx)
5b83e3:	89 45 b4             	mov    %eax,-0x4c(%ebp)
5b83e6:	8b 45 f8             	mov    -0x8(%ebp),%eax
5b83e9:	8b 10                	mov    (%eax),%edx
5b83eb:	ff 52 08             	call   *0x8(%edx)
5b83ee:	89 45 b0             	mov    %eax,-0x50(%ebp)
5b83f1:	db 45 b4             	fildl  -0x4c(%ebp)
5b83f4:	db 45 bc             	fildl  -0x44(%ebp)
5b83f7:	de f9                	fdivrp %st,%st(1)
5b83f9:	dd 5d e8             	fstpl  -0x18(%ebp)
5b83fc:	9b db 45 b0          	fildl  -0x50(%ebp)
5b8400:	db 45 b8             	fildl  -0x48(%ebp)
5b8403:	de f9                	fdivrp %st,%st(1)
5b8405:	dd 5d e0             	fstpl  -0x20(%ebp)
5b8408:	9b dd 45 e8          	fldl   -0x18(%ebp)
5b840c:	d8 1d 54 87 5b 00    	fcomps 0x5b8754
5b8412:	df e0                	fnstsw %ax
5b8414:	9e                   	sahf
5b8415:	75 1e                	jne    0x5b8435
5b8417:	dd 45 e0             	fldl   -0x20(%ebp)
5b841a:	d8 1d 54 87 5b 00    	fcomps 0x5b8754
5b8420:	df e0                	fnstsw %ax
5b8422:	9e                   	sahf
5b8423:	75 10                	jne    0x5b8435
5b8425:	8b 55 fc             	mov    -0x4(%ebp),%edx
5b8428:	8b 45 f8             	mov    -0x8(%ebp),%eax
5b842b:	8b 08                	mov    (%eax),%ecx
5b842d:	ff 51 28             	call   *0x28(%ecx)
5b8430:	e9 15 03 00 00       	jmp    0x5b874a
5b8435:	dd 45 e8             	fldl   -0x18(%ebp)
5b8438:	d8 1d 54 87 5b 00    	fcomps 0x5b8754
5b843e:	df e0                	fnstsw %ax
5b8440:	9e                   	sahf
5b8441:	73 37                	jae    0x5b847a
5b8443:	dd 45 e0             	fldl   -0x20(%ebp)
5b8446:	d8 1d 54 87 5b 00    	fcomps 0x5b8754
5b844c:	df e0                	fnstsw %ax
5b844e:	9e                   	sahf
5b844f:	73 29                	jae    0x5b847a
5b8451:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b8454:	8b 10                	mov    (%eax),%edx
5b8456:	ff 52 0c             	call   *0xc(%edx)
5b8459:	48                   	dec    %eax
5b845a:	50                   	push   %eax
5b845b:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b845e:	8b 10                	mov    (%eax),%edx
5b8460:	ff 52 08             	call   *0x8(%edx)
5b8463:	48                   	dec    %eax
5b8464:	50                   	push   %eax
5b8465:	8b 45 f8             	mov    -0x8(%ebp),%eax
5b8468:	50                   	push   %eax
5b8469:	33 c9                	xor    %ecx,%ecx
5b846b:	33 d2                	xor    %edx,%edx
5b846d:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b8470:	e8 77 08 00 00       	call   0x5b8cec
5b8475:	e9 d0 02 00 00       	jmp    0x5b874a
5b847a:	8b 45 b4             	mov    -0x4c(%ebp),%eax
5b847d:	c1 e0 02             	shl    $0x2,%eax
5b8480:	e8 27 a3 e4 ff       	call   0x4027ac
5b8485:	89 45 94             	mov    %eax,-0x6c(%ebp)
5b8488:	8b 45 b4             	mov    -0x4c(%ebp),%eax
5b848b:	c1 e0 02             	shl    $0x2,%eax
5b848e:	e8 19 a3 e4 ff       	call   0x4027ac
5b8493:	89 45 90             	mov    %eax,-0x70(%ebp)
5b8496:	8b 45 b4             	mov    -0x4c(%ebp),%eax
5b8499:	48                   	dec    %eax
5b849a:	85 c0                	test   %eax,%eax
5b849c:	7c 52                	jl     0x5b84f0
5b849e:	40                   	inc    %eax
5b849f:	89 45 84             	mov    %eax,-0x7c(%ebp)
5b84a2:	33 db                	xor    %ebx,%ebx
5b84a4:	89 9d 7c ff ff ff    	mov    %ebx,-0x84(%ebp)
5b84aa:	db 85 7c ff ff ff    	fildl  -0x84(%ebp)
5b84b0:	dc 75 e8             	fdivl  -0x18(%ebp)
5b84b3:	dd 5d d0             	fstpl  -0x30(%ebp)
5b84b6:	9b dd 45 d0          	fldl   -0x30(%ebp)
5b84ba:	e8 0d a8 e4 ff       	call   0x402ccc
5b84bf:	8b f0                	mov    %eax,%esi
5b84c1:	8b 45 90             	mov    -0x70(%ebp),%eax
5b84c4:	89 34 98             	mov    %esi,(%eax,%ebx,4)
5b84c7:	8b 45 90             	mov    -0x70(%ebp),%eax
5b84ca:	89 b5 7c ff ff ff    	mov    %esi,-0x84(%ebp)
5b84d0:	db 85 7c ff ff ff    	fildl  -0x84(%ebp)
5b84d6:	dc 6d d0             	fsubrl -0x30(%ebp)
5b84d9:	d8 0d 58 87 5b 00    	fmuls  0x5b8758
5b84df:	e8 e8 a7 e4 ff       	call   0x402ccc
5b84e4:	8b 55 94             	mov    -0x6c(%ebp),%edx
5b84e7:	89 04 9a             	mov    %eax,(%edx,%ebx,4)
5b84ea:	43                   	inc    %ebx
5b84eb:	ff 4d 84             	decl   -0x7c(%ebp)
5b84ee:	75 b4                	jne    0x5b84a4
5b84f0:	8b 45 b8             	mov    -0x48(%ebp),%eax
5b84f3:	50                   	push   %eax
5b84f4:	6a 18                	push   $0x18
5b84f6:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
5b84f9:	b2 01                	mov    $0x1,%dl
5b84fb:	a1 00 01 5f 00       	mov    0x5f0100,%eax
5b8500:	e8 7b dc 03 00       	call   0x5f6180
5b8505:	89 45 98             	mov    %eax,-0x68(%ebp)
5b8508:	8b 45 b8             	mov    -0x48(%ebp),%eax
5b850b:	03 45 b0             	add    -0x50(%ebp),%eax
5b850e:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
5b8514:	db 85 7c ff ff ff    	fildl  -0x84(%ebp)
5b851a:	d8 05 5c 87 5b 00    	fadds  0x5b875c
5b8520:	d8 3d 60 87 5b 00    	fdivrs 0x5b8760
5b8526:	dd 5d 88             	fstpl  -0x78(%ebp)
5b8529:	9b                   	fwait
5b852a:	8b 45 b8             	mov    -0x48(%ebp),%eax
5b852d:	48                   	dec    %eax
5b852e:	85 c0                	test   %eax,%eax
5b8530:	0f 8c fe 00 00 00    	jl     0x5b8634
5b8536:	40                   	inc    %eax
5b8537:	89 45 84             	mov    %eax,-0x7c(%ebp)
5b853a:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
5b8541:	8b 55 cc             	mov    -0x34(%ebp),%edx
5b8544:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b8547:	8b 08                	mov    (%eax),%ecx
5b8549:	ff 11                	call   *(%ecx)
5b854b:	89 45 ac             	mov    %eax,-0x54(%ebp)
5b854e:	8b 55 cc             	mov    -0x34(%ebp),%edx
5b8551:	8b 45 98             	mov    -0x68(%ebp),%eax
5b8554:	e8 cb dc 03 00       	call   0x5f6224
5b8559:	89 45 a4             	mov    %eax,-0x5c(%ebp)
5b855c:	8b 45 b4             	mov    -0x4c(%ebp),%eax
5b855f:	48                   	dec    %eax
5b8560:	85 c0                	test   %eax,%eax
5b8562:	0f 8c a3 00 00 00    	jl     0x5b860b
5b8568:	40                   	inc    %eax
5b8569:	89 45 80             	mov    %eax,-0x80(%ebp)
5b856c:	33 db                	xor    %ebx,%ebx
5b856e:	8b 45 90             	mov    -0x70(%ebp),%eax
5b8571:	8b 34 98             	mov    (%eax,%ebx,4),%esi
5b8574:	8b 45 94             	mov    -0x6c(%ebp),%eax
5b8577:	8b 04 98             	mov    (%eax,%ebx,4),%eax
5b857a:	89 45 c8             	mov    %eax,-0x38(%ebp)
5b857d:	8b 55 bc             	mov    -0x44(%ebp),%edx
5b8580:	4a                   	dec    %edx
5b8581:	8d 46 01             	lea    0x1(%esi),%eax
5b8584:	e8 93 0e ff ff       	call   0x5a941c
5b8589:	8b d0                	mov    %eax,%edx
5b858b:	c1 ea 03             	shr    $0x3,%edx
5b858e:	8b 4d ac             	mov    -0x54(%ebp),%ecx
5b8591:	8a 14 11             	mov    (%ecx,%edx,1),%dl
5b8594:	83 e0 07             	and    $0x7,%eax
5b8597:	8b 0d 88 6d 6a 00    	mov    0x6a6d88,%ecx
5b859d:	22 14 01             	and    (%ecx,%eax,1),%dl
5b85a0:	33 c0                	xor    %eax,%eax
5b85a2:	8a c2                	mov    %dl,%al
5b85a4:	85 c0                	test   %eax,%eax
5b85a6:	74 07                	je     0x5b85af
5b85a8:	b8 ff 00 00 00       	mov    $0xff,%eax
5b85ad:	eb 02                	jmp    0x5b85b1
5b85af:	33 c0                	xor    %eax,%eax
5b85b1:	8b d6                	mov    %esi,%edx
5b85b3:	c1 ea 03             	shr    $0x3,%edx
5b85b6:	8b 4d ac             	mov    -0x54(%ebp),%ecx
5b85b9:	8a 14 11             	mov    (%ecx,%edx,1),%dl
5b85bc:	83 e6 07             	and    $0x7,%esi
5b85bf:	8b 0d 88 6d 6a 00    	mov    0x6a6d88,%ecx
5b85c5:	22 14 31             	and    (%ecx,%esi,1),%dl
5b85c8:	8b fa                	mov    %edx,%edi
5b85ca:	81 e7 ff 00 00 00    	and    $0xff,%edi
5b85d0:	85 ff                	test   %edi,%edi
5b85d2:	74 07                	je     0x5b85db
5b85d4:	bf ff 00 00 00       	mov    $0xff,%edi
5b85d9:	eb 02                	jmp    0x5b85dd
5b85db:	33 ff                	xor    %edi,%edi
5b85dd:	8d 14 5b             	lea    (%ebx,%ebx,2),%edx
5b85e0:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
5b85e3:	8d 34 11             	lea    (%ecx,%edx,1),%esi
5b85e6:	8b d7                	mov    %edi,%edx
5b85e8:	2b c7                	sub    %edi,%eax
5b85ea:	0f af 45 c8          	imul   -0x38(%ebp),%eax
5b85ee:	c1 e8 11             	shr    $0x11,%eax
5b85f1:	02 d0                	add    %al,%dl
5b85f3:	88 56 02             	mov    %dl,0x2(%esi)
5b85f6:	8a 46 02             	mov    0x2(%esi),%al
5b85f9:	88 06                	mov    %al,(%esi)
5b85fb:	8a 46 02             	mov    0x2(%esi),%al
5b85fe:	88 46 01             	mov    %al,0x1(%esi)
5b8601:	43                   	inc    %ebx
5b8602:	ff 4d 80             	decl   -0x80(%ebp)
5b8605:	0f 85 63 ff ff ff    	jne    0x5b856e
5b860b:	66 83 7d 0a 00       	cmpw   $0x0,0xa(%ebp)
5b8610:	74 16                	je     0x5b8628
5b8612:	db 45 cc             	fildl  -0x34(%ebp)
5b8615:	dc 4d 88             	fmull  -0x78(%ebp)
5b8618:	e8 af a6 e4 ff       	call   0x402ccc
5b861d:	8b c8                	mov    %eax,%ecx
5b861f:	8b 55 f4             	mov    -0xc(%ebp),%edx
5b8622:	8b 45 0c             	mov    0xc(%ebp),%eax
5b8625:	ff 55 08             	call   *0x8(%ebp)
5b8628:	ff 45 cc             	incl   -0x34(%ebp)
5b862b:	ff 4d 84             	decl   -0x7c(%ebp)
5b862e:	0f 85 0d ff ff ff    	jne    0x5b8541
5b8634:	8b 45 b0             	mov    -0x50(%ebp),%eax
5b8637:	48                   	dec    %eax
5b8638:	85 c0                	test   %eax,%eax
5b863a:	0f 8c f2 00 00 00    	jl     0x5b8732
5b8640:	40                   	inc    %eax
5b8641:	89 45 84             	mov    %eax,-0x7c(%ebp)
5b8644:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
5b864b:	db 45 cc             	fildl  -0x34(%ebp)