44b3ce:	89 7b 0c             	mov    %edi,0xc(%ebx)
44b3d1:	eb 35                	jmp    0x44b408
44b3d3:	8d 4d 0c             	lea    0xc(%ebp),%ecx
44b3d6:	e8 f5 78 fc ff       	call   0x412cd0
44b3db:	51                   	push   %ecx
44b3dc:	51                   	push   %ecx
44b3dd:	8b cf                	mov    %edi,%ecx
44b3df:	dd 1c 24             	fstpl  (%esp)
44b3e2:	e8 e9 78 fc ff       	call   0x412cd0
44b3e7:	51                   	push   %ecx
44b3e8:	51                   	push   %ecx
44b3e9:	dd 1c 24             	fstpl  (%esp)
44b3ec:	e8 cf 7d fd ff       	call   0x4231c0
44b3f1:	83 c4 10             	add    $0x10,%esp
44b3f4:	dd 5d f8             	fstpl  -0x8(%ebp)
44b3f7:	8b cb                	mov    %ebx,%ecx
44b3f9:	e8 22 78 fc ff       	call   0x412c20
44b3fe:	dd 45 f8             	fldl   -0x8(%ebp)
44b401:	c7 43 0c 03 00 00 00 	movl   $0x3,0xc(%ebx)
44b408:	dd 1b                	fstpl  (%ebx)
44b40a:	8b cb                	mov    %ebx,%ecx
44b40c:	e8 6d 00 00 00       	call   0x44b47e
44b411:	a9 00 00 ff ff       	test   $0xffff0000,%eax
44b416:	74 55                	je     0x44b46d
44b418:	8b 45 08             	mov    0x8(%ebp),%eax
44b41b:	0f b7 c0             	movzwl %ax,%eax
44b41e:	85 c0                	test   %eax,%eax
44b420:	75 4b                	jne    0x44b46d
44b422:	66 85 f6             	test   %si,%si
44b425:	75 46                	jne    0x44b46d
44b427:	8b cb                	mov    %ebx,%ecx
44b429:	e8 a2 78 fc ff       	call   0x412cd0
44b42e:	dc 1d 08 6a 4b 00    	fcompl 0x4b6a08
44b434:	df e0                	fnstsw %ax
44b436:	f6 c4 05             	test   $0x5,%ah
44b439:	7a 32                	jp     0x44b46d
44b43b:	8b cb                	mov    %ebx,%ecx
44b43d:	e8 8e 78 fc ff       	call   0x412cd0
44b442:	dc 1d 18 6a 4b 00    	fcompl 0x4b6a18
44b448:	df e0                	fnstsw %ax
44b44a:	f6 c4 41             	test   $0x41,%ah
44b44d:	75 1e                	jne    0x44b46d
44b44f:	8b cb                	mov    %ebx,%ecx
44b451:	e8 3d 1b fc ff       	call   0x40cf93
44b456:	8b cb                	mov    %ebx,%ecx
44b458:	8b f0                	mov    %eax,%esi
44b45a:	8b fa                	mov    %edx,%edi
44b45c:	e8 bf 77 fc ff       	call   0x412c20
44b461:	c7 43 0c 02 00 00 00 	movl   $0x2,0xc(%ebx)
44b468:	89 33                	mov    %esi,(%ebx)
44b46a:	89 7b 04             	mov    %edi,0x4(%ebx)
44b46d:	8d 4d 0c             	lea    0xc(%ebp),%ecx
44b470:	e8 ab 77 fc ff       	call   0x412c20
44b475:	5f                   	pop    %edi
44b476:	5e                   	pop    %esi
44b477:	8b c3                	mov    %ebx,%eax
44b479:	5b                   	pop    %ebx
44b47a:	c9                   	leave
44b47b:	c2 14 00             	ret    $0x14
44b47e:	55                   	push   %ebp
44b47f:	8b ec                	mov    %esp,%ebp
44b481:	51                   	push   %ecx
44b482:	51                   	push   %ecx
44b483:	56                   	push   %esi
44b484:	57                   	push   %edi
44b485:	8b f9                	mov    %ecx,%edi
44b487:	33 f6                	xor    %esi,%esi
44b489:	83 7f 0c 03          	cmpl   $0x3,0xc(%edi)
44b48d:	75 3d                	jne    0x44b4cc
44b48f:	dd 07                	fldl   (%edi)
44b491:	51                   	push   %ecx
44b492:	51                   	push   %ecx
44b493:	dd 1c 24             	fstpl  (%esp)
44b496:	e8 bf 7b fd ff       	call   0x42305a
44b49b:	8b f0                	mov    %eax,%esi
44b49d:	59                   	pop    %ecx
44b49e:	59                   	pop    %ecx
44b49f:	f7 c6 f8 01 00 00    	test   $0x1f8,%esi
44b4a5:	74 7b                	je     0x44b522
44b4a7:	dd 07                	fldl   (%edi)
44b4a9:	e8 58 64 02 00       	call   0x471906
44b4ae:	8b c8                	mov    %eax,%ecx
44b4b0:	89 4d f8             	mov    %ecx,-0x8(%ebp)
44b4b3:	89 55 fc             	mov    %edx,-0x4(%ebp)
44b4b6:	df 6d f8             	fildll -0x8(%ebp)
44b4b9:	dd 5d f8             	fstpl  -0x8(%ebp)
44b4bc:	dd 45 f8             	fldl   -0x8(%ebp)
44b4bf:	dd 07                	fldl   (%edi)
44b4c1:	da e9                	fucompp
44b4c3:	df e0                	fnstsw %ax
44b4c5:	f6 c4 44             	test   $0x44,%ah
44b4c8:	7a 58                	jp     0x44b522
44b4ca:	eb 18                	jmp    0x44b4e4
44b4cc:	83 7f 0c 01          	cmpl   $0x1,0xc(%edi)
44b4d0:	75 07                	jne    0x44b4d9
44b4d2:	8b 07                	mov    (%edi),%eax
44b4d4:	99                   	cltd
44b4d5:	8b c8                	mov    %eax,%ecx
44b4d7:	eb 0b                	jmp    0x44b4e4
44b4d9:	83 7f 0c 02          	cmpl   $0x2,0xc(%edi)
44b4dd:	75 43                	jne    0x44b522
44b4df:	8b 0f                	mov    (%edi),%ecx
44b4e1:	8b 57 04             	mov    0x4(%edi),%edx
44b4e4:	8b c1                	mov    %ecx,%eax
44b4e6:	0b c2                	or     %edx,%eax
44b4e8:	74 32                	je     0x44b51c
44b4ea:	8b c1                	mov    %ecx,%eax
44b4ec:	83 e0 01             	and    $0x1,%eax
44b4ef:	83 c8 00             	or     $0x0,%eax
44b4f2:	74 08                	je     0x44b4fc
44b4f4:	81 ce 00 00 10 00    	or     $0x100000,%esi
44b4fa:	eb 06                	jmp    0x44b502
44b4fc:	81 ce 00 00 20 00    	or     $0x200000,%esi
44b502:	85 d2                	test   %edx,%edx
44b504:	7f 0e                	jg     0x44b514
44b506:	7c 04                	jl     0x44b50c
44b508:	85 c9                	test   %ecx,%ecx
44b50a:	73 08                	jae    0x44b514
44b50c:	81 ce 00 00 01 00    	or     $0x10000,%esi
44b512:	eb 0e                	jmp    0x44b522
44b514:	81 ce 00 00 02 00    	or     $0x20000,%esi
44b51a:	eb 06                	jmp    0x44b522
44b51c:	81 ce 00 00 04 00    	or     $0x40000,%esi
44b522:	5f                   	pop    %edi
44b523:	8b c6                	mov    %esi,%eax
44b525:	5e                   	pop    %esi
44b526:	c9                   	leave
44b527:	c3                   	ret
44b528:	83 79 0c 08          	cmpl   $0x8,0xc(%ecx)
44b52c:	75 1c                	jne    0x44b54a
44b52e:	8b 01                	mov    (%ecx),%eax
44b530:	85 c0                	test   %eax,%eax
44b532:	74 16                	je     0x44b54a
44b534:	0f b7 08             	movzwl (%eax),%ecx
44b537:	83 f9 09             	cmp    $0x9,%ecx
44b53a:	75 09                	jne    0x44b545
44b53c:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
44b540:	74 08                	je     0x44b54a
44b542:	b0 01                	mov    $0x1,%al
44b544:	c3                   	ret
44b545:	83 f9 0d             	cmp    $0xd,%ecx
44b548:	74 f2                	je     0x44b53c
44b54a:	32 c0                	xor    %al,%al
44b54c:	c3                   	ret
44b54d:	83 79 0c 0a          	cmpl   $0xa,0xc(%ecx)
44b551:	75 05                	jne    0x44b558
44b553:	8b 01                	mov    (%ecx),%eax
44b555:	8b 00                	mov    (%eax),%eax
44b557:	c3                   	ret
44b558:	33 c0                	xor    %eax,%eax
44b55a:	c3                   	ret
44b55b:	56                   	push   %esi
44b55c:	8b f1                	mov    %ecx,%esi
44b55e:	83 7e 0c 0b          	cmpl   $0xb,0xc(%esi)
44b562:	74 05                	je     0x44b569
44b564:	e8 6c ef ff ff       	call   0x44a4d5
44b569:	8b ce                	mov    %esi,%ecx
44b56b:	e8 69 f1 ff ff       	call   0x44a6d9
44b570:	8b 06                	mov    (%esi),%eax
44b572:	5e                   	pop    %esi
44b573:	8b 40 04             	mov    0x4(%eax),%eax
44b576:	c3                   	ret
44b577:	8b 41 0c             	mov    0xc(%ecx),%eax
44b57a:	85 c0                	test   %eax,%eax
44b57c:	7e 1d                	jle    0x44b59b
44b57e:	83 f8 04             	cmp    $0x4,%eax
44b581:	7e 13                	jle    0x44b596
44b583:	83 f8 07             	cmp    $0x7,%eax
44b586:	74 0b                	je     0x44b593
44b588:	83 f8 08             	cmp    $0x8,%eax
44b58b:	75 0e                	jne    0x44b59b
44b58d:	8b 01                	mov    (%ecx),%eax
44b58f:	8b 40 08             	mov    0x8(%eax),%eax
44b592:	c3                   	ret
44b593:	8b 01                	mov    (%ecx),%eax
44b595:	c3                   	ret
44b596:	e9 f8 19 fc ff       	jmp    0x40cf93
44b59b:	33 c0                	xor    %eax,%eax
44b59d:	c3                   	ret
44b59e:	8b 41 0c             	mov    0xc(%ecx),%eax
44b5a1:	83 f8 07             	cmp    $0x7,%eax
44b5a4:	7f 24                	jg     0x44b5ca
44b5a6:	74 1e                	je     0x44b5c6
44b5a8:	48                   	dec    %eax
44b5a9:	74 1b                	je     0x44b5c6
44b5ab:	48                   	dec    %eax
44b5ac:	74 14                	je     0x44b5c2
44b5ae:	48                   	dec    %eax
44b5af:	74 11                	je     0x44b5c2
44b5b1:	48                   	dec    %eax
44b5b2:	75 22                	jne    0x44b5d6
44b5b4:	8b 41 08             	mov    0x8(%ecx),%eax
44b5b7:	8b 40 04             	mov    0x4(%eax),%eax
44b5ba:	8d 04 45 02 00 00 00 	lea    0x2(,%eax,2),%eax
44b5c1:	c3                   	ret
44b5c2:	6a 08                	push   $0x8
44b5c4:	eb 02                	jmp    0x44b5c8
44b5c6:	6a 04                	push   $0x4
44b5c8:	58                   	pop    %eax
44b5c9:	c3                   	ret
44b5ca:	83 e8 09             	sub    $0x9,%eax
44b5cd:	74 15                	je     0x44b5e4
44b5cf:	48                   	dec    %eax
44b5d0:	48                   	dec    %eax
44b5d1:	74 0c                	je     0x44b5df
44b5d3:	48                   	dec    %eax
44b5d4:	74 03                	je     0x44b5d9
44b5d6:	33 c0                	xor    %eax,%eax
44b5d8:	c3                   	ret
44b5d9:	8b 01                	mov    (%ecx),%eax
44b5db:	8b 40 0c             	mov    0xc(%eax),%eax
44b5de:	c3                   	ret
44b5df:	8b 01                	mov    (%ecx),%eax
44b5e1:	8b 00                	mov    (%eax),%eax
44b5e3:	c3                   	ret
44b5e4:	33 c0                	xor    %eax,%eax
44b5e6:	40                   	inc    %eax
44b5e7:	c3                   	ret
44b5e8:	ff 0d e0 f7 4b 00    	decl   0x4bf7e0
44b5ee:	75 05                	jne    0x44b5f5
44b5f0:	e8 d7 00 00 00       	call   0x44b6cc
44b5f5:	a1 10 33 4c 00       	mov    0x4c3310,%eax
44b5fa:	8b 08                	mov    (%eax),%ecx
44b5fc:	83 c0 04             	add    $0x4,%eax
44b5ff:	a3 10 33 4c 00       	mov    %eax,0x4c3310
44b604:	8b c1                	mov    %ecx,%eax
44b606:	c1 e8 0b             	shr    $0xb,%eax
44b609:	33 c8                	xor    %eax,%ecx
44b60b:	8b c1                	mov    %ecx,%eax
44b60d:	25 ad 58 3a ff       	and    $0xff3a58ad,%eax
44b612:	c1 e0 07             	shl    $0x7,%eax
44b615:	33 c8                	xor    %eax,%ecx
44b617:	8b c1                	mov    %ecx,%eax
44b619:	25 8c df ff ff       	and    $0xffffdf8c,%eax
44b61e:	c1 e0 0f             	shl    $0xf,%eax
44b621:	33 c8                	xor    %eax,%ecx
44b623:	8b c1                	mov    %ecx,%eax
44b625:	c1 e8 12             	shr    $0x12,%eax
44b628:	33 c1                	xor    %ecx,%eax
44b62a:	d1 e8                	shr    $1,%eax
44b62c:	c3                   	ret
44b62d:	55                   	push   %ebp
44b62e:	8b ec                	mov    %esp,%ebp
44b630:	51                   	push   %ecx
44b631:	51                   	push   %ecx
44b632:	ff 0d e0 f7 4b 00    	decl   0x4bf7e0
44b638:	75 05                	jne    0x44b63f
44b63a:	e8 8d 00 00 00       	call   0x44b6cc
44b63f:	a1 10 33 4c 00       	mov    0x4c3310,%eax
44b644:	8b 08                	mov    (%eax),%ecx
44b646:	83 c0 04             	add    $0x4,%eax
44b649:	a3 10 33 4c 00       	mov    %eax,0x4c3310
44b64e:	8b c1                	mov    %ecx,%eax
44b650:	c1 e8 0b             	shr    $0xb,%eax
44b653:	33 c8                	xor    %eax,%ecx
44b655:	8b c1                	mov    %ecx,%eax
44b657:	25 ad 58 3a ff       	and    $0xff3a58ad,%eax
44b65c:	c1 e0 07             	shl    $0x7,%eax
44b65f:	33 c8                	xor    %eax,%ecx
44b661:	8b c1                	mov    %ecx,%eax
44b663:	25 8c df ff ff       	and    $0xffffdf8c,%eax
44b668:	c1 e0 0f             	shl    $0xf,%eax
44b66b:	33 c8                	xor    %eax,%ecx
44b66d:	8b c1                	mov    %ecx,%eax
44b66f:	c1 e8 12             	shr    $0x12,%eax
44b672:	33 c1                	xor    %ecx,%eax
44b674:	89 45 fc             	mov    %eax,-0x4(%ebp)
44b677:	db 45 fc             	fildl  -0x4(%ebp)
44b67a:	79 06                	jns    0x44b682
44b67c:	dc 05 00 6a 4b 00    	faddl  0x4b6a00
44b682:	dd 5d f8             	fstpl  -0x8(%ebp)
44b685:	dd 45 f8             	fldl   -0x8(%ebp)
44b688:	dc 0d d0 69 4b 00    	fmull  0x4b69d0
44b68e:	c9                   	leave
44b68f:	c3                   	ret
44b690:	56                   	push   %esi
44b691:	33 f6                	xor    %esi,%esi
44b693:	46                   	inc    %esi
44b694:	89 0d 18 33 4c 00    	mov    %ecx,0x4c3318
44b69a:	8b d6                	mov    %esi,%edx
44b69c:	b9 18 33 4c 00       	mov    $0x4c3318,%ecx
44b6a1:	8b 01                	mov    (%ecx),%eax
44b6a3:	c1 e8 1e             	shr    $0x1e,%eax
44b6a6:	33 01                	xor    (%ecx),%eax
44b6a8:	83 c1 04             	add    $0x4,%ecx
44b6ab:	69 c0 65 89 07 6c    	imul   $0x6c078965,%eax,%eax
44b6b1:	03 c2                	add    %edx,%eax
44b6b3:	89 01                	mov    %eax,(%ecx)
44b6b5:	42                   	inc    %edx
44b6b6:	81 f9 d4 3c 4c 00    	cmp    $0x4c3cd4,%ecx
44b6bc:	7c e3                	jl     0x44b6a1
44b6be:	89 35 e0 f7 4b 00    	mov    %esi,0x4bf7e0
44b6c4:	89 35 04 33 4c 00    	mov    %esi,0x4c3304
44b6ca:	5e                   	pop    %esi
44b6cb:	c3                   	ret
44b6cc:	83 3d 04 33 4c 00 00 	cmpl   $0x0,0x4c3304
44b6d3:	53                   	push   %ebx
44b6d4:	56                   	push   %esi
44b6d5:	57                   	push   %edi
44b6d6:	be 18 33 4c 00       	mov    $0x4c3318,%esi
44b6db:	75 0f                	jne    0x44b6ec
44b6dd:	6a 00                	push   $0x0
44b6df:	e8 66 7d fd ff       	call   0x42344a
44b6e4:	59                   	pop    %ecx
44b6e5:	8b c8                	mov    %eax,%ecx
44b6e7:	e8 a4 ff ff ff       	call   0x44b690
44b6ec:	c7 05 e0 f7 4b 00 70 	movl   $0x270,0x4bf7e0
44b6f3:	02 00 00
44b6f6:	89 35 10 33 4c 00    	mov    %esi,0x4c3310
44b6fc:	bf e3 00 00 00       	mov    $0xe3,%edi
44b701:	bb df b0 08 99       	mov    $0x9908b0df,%ebx
44b706:	8d 56 04             	lea    0x4(%esi),%edx
44b709:	8a 02                	mov    (%edx),%al
44b70b:	24 01                	and    $0x1,%al
44b70d:	0f b6 c8             	movzbl %al,%ecx
44b710:	8b 06                	mov    (%esi),%eax
44b712:	f7 d9                	neg    %ecx
44b714:	1b c9                	sbb    %ecx,%ecx
44b716:	33 02                	xor    (%edx),%eax
44b718:	23 cb                	and    %ebx,%ecx
44b71a:	25 fe ff ff 7f       	and    $0x7ffffffe,%eax
44b71f:	33 06                	xor    (%esi),%eax
44b721:	d1 e8                	shr    $1,%eax
44b723:	33 86 34 06 00 00    	xor    0x634(%esi),%eax
44b729:	33 c1                	xor    %ecx,%eax
44b72b:	89 06                	mov    %eax,(%esi)
44b72d:	8b f2                	mov    %edx,%esi
44b72f:	4f                   	dec    %edi
44b730:	75 d4                	jne    0x44b706
44b732:	bf 8c 01 00 00       	mov    $0x18c,%edi
44b737:	8d 56 04             	lea    0x4(%esi),%edx
44b73a:	8a 02                	mov    (%edx),%al
44b73c:	24 01                	and    $0x1,%al
44b73e:	0f b6 c8             	movzbl %al,%ecx
44b741:	8b 06                	mov    (%esi),%eax
44b743:	f7 d9                	neg    %ecx
44b745:	1b c9                	sbb    %ecx,%ecx
44b747:	33 02                	xor    (%edx),%eax
44b749:	23 cb                	and    %ebx,%ecx
44b74b:	25 fe ff ff 7f       	and    $0x7ffffffe,%eax
44b750:	33 06                	xor    (%esi),%eax
44b752:	d1 e8                	shr    $1,%eax
44b754:	33 86 74 fc ff ff    	xor    -0x38c(%esi),%eax
44b75a:	33 c1                	xor    %ecx,%eax
44b75c:	89 06                	mov    %eax,(%esi)
44b75e:	8d 32                	lea    (%edx),%esi
44b760:	4f                   	dec    %edi
44b761:	75 d4                	jne    0x44b737
44b763:	8b 0d 18 33 4c 00    	mov    0x4c3318,%ecx
44b769:	8a c1                	mov    %cl,%al