4c359c:	5a                   	pop    %edx
4c359d:	5e                   	pop    %esi
4c359e:	5b                   	pop    %ebx
4c359f:	c3                   	ret
4c35a0:	55                   	push   %ebp
4c35a1:	8b ec                	mov    %esp,%ebp
4c35a3:	83 c4 c8             	add    $0xffffffc8,%esp
4c35a6:	53                   	push   %ebx
4c35a7:	56                   	push   %esi
4c35a8:	57                   	push   %edi
4c35a9:	8b d9                	mov    %ecx,%ebx
4c35ab:	89 55 f8             	mov    %edx,-0x8(%ebp)
4c35ae:	89 45 fc             	mov    %eax,-0x4(%ebp)
4c35b1:	8b 75 0c             	mov    0xc(%ebp),%esi
4c35b4:	8b c3                	mov    %ebx,%eax
4c35b6:	e8 1d 40 f6 ff       	call   0x4275d8
4c35bb:	e8 a8 49 f4 ff       	call   0x407f68
4c35c0:	25 ff 00 00 00       	and    $0xff,%eax
4c35c5:	89 45 e8             	mov    %eax,-0x18(%ebp)
4c35c8:	8b c3                	mov    %ebx,%eax
4c35ca:	e8 09 40 f6 ff       	call   0x4275d8
4c35cf:	e8 98 49 f4 ff       	call   0x407f6c
4c35d4:	25 ff 00 00 00       	and    $0xff,%eax
4c35d9:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4c35dc:	8b c3                	mov    %ebx,%eax
4c35de:	e8 f5 3f f6 ff       	call   0x4275d8
4c35e3:	e8 88 49 f4 ff       	call   0x407f70
4c35e8:	25 ff 00 00 00       	and    $0xff,%eax
4c35ed:	89 45 e0             	mov    %eax,-0x20(%ebp)
4c35f0:	8b c6                	mov    %esi,%eax
4c35f2:	e8 e1 3f f6 ff       	call   0x4275d8
4c35f7:	e8 6c 49 f4 ff       	call   0x407f68
4c35fc:	25 ff 00 00 00       	and    $0xff,%eax
4c3601:	89 45 f4             	mov    %eax,-0xc(%ebp)
4c3604:	8b c6                	mov    %esi,%eax
4c3606:	e8 cd 3f f6 ff       	call   0x4275d8
4c360b:	e8 5c 49 f4 ff       	call   0x407f6c
4c3610:	25 ff 00 00 00       	and    $0xff,%eax
4c3615:	89 45 f0             	mov    %eax,-0x10(%ebp)
4c3618:	8b c6                	mov    %esi,%eax
4c361a:	e8 b9 3f f6 ff       	call   0x4275d8
4c361f:	e8 4c 49 f4 ff       	call   0x407f70
4c3624:	25 ff 00 00 00       	and    $0xff,%eax
4c3629:	89 45 ec             	mov    %eax,-0x14(%ebp)
4c362c:	8b 45 e8             	mov    -0x18(%ebp),%eax
4c362f:	2b 45 f4             	sub    -0xc(%ebp),%eax
4c3632:	8b d0                	mov    %eax,%edx
4c3634:	c1 e0 04             	shl    $0x4,%eax
4c3637:	2b c2                	sub    %edx,%eax
4c3639:	b9 09 00 00 00       	mov    $0x9,%ecx
4c363e:	99                   	cltd
4c363f:	f7 f9                	idiv   %ecx
4c3641:	03 45 f4             	add    -0xc(%ebp),%eax
4c3644:	89 45 dc             	mov    %eax,-0x24(%ebp)
4c3647:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4c364a:	2b 45 f0             	sub    -0x10(%ebp),%eax
4c364d:	8b d0                	mov    %eax,%edx
4c364f:	c1 e0 04             	shl    $0x4,%eax
4c3652:	2b c2                	sub    %edx,%eax
4c3654:	b9 09 00 00 00       	mov    $0x9,%ecx
4c3659:	99                   	cltd
4c365a:	f7 f9                	idiv   %ecx
4c365c:	03 45 f0             	add    -0x10(%ebp),%eax
4c365f:	89 45 d8             	mov    %eax,-0x28(%ebp)
4c3662:	8b 45 e0             	mov    -0x20(%ebp),%eax
4c3665:	2b 45 ec             	sub    -0x14(%ebp),%eax
4c3668:	8b d0                	mov    %eax,%edx
4c366a:	c1 e0 04             	shl    $0x4,%eax
4c366d:	2b c2                	sub    %edx,%eax
4c366f:	b9 09 00 00 00       	mov    $0x9,%ecx
4c3674:	99                   	cltd
4c3675:	f7 f9                	idiv   %ecx
4c3677:	03 45 ec             	add    -0x14(%ebp),%eax
4c367a:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4c367d:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
4c3681:	7d 07                	jge    0x4c368a
4c3683:	33 c0                	xor    %eax,%eax
4c3685:	89 45 dc             	mov    %eax,-0x24(%ebp)
4c3688:	eb 10                	jmp    0x4c369a
4c368a:	81 7d dc ff 00 00 00 	cmpl   $0xff,-0x24(%ebp)
4c3691:	7e 07                	jle    0x4c369a
4c3693:	c7 45 dc ff 00 00 00 	movl   $0xff,-0x24(%ebp)
4c369a:	83 7d d8 00          	cmpl   $0x0,-0x28(%ebp)
4c369e:	7d 07                	jge    0x4c36a7
4c36a0:	33 c0                	xor    %eax,%eax
4c36a2:	89 45 d8             	mov    %eax,-0x28(%ebp)
4c36a5:	eb 10                	jmp    0x4c36b7
4c36a7:	81 7d d8 ff 00 00 00 	cmpl   $0xff,-0x28(%ebp)
4c36ae:	7e 07                	jle    0x4c36b7
4c36b0:	c7 45 d8 ff 00 00 00 	movl   $0xff,-0x28(%ebp)
4c36b7:	83 7d d4 00          	cmpl   $0x0,-0x2c(%ebp)
4c36bb:	7d 07                	jge    0x4c36c4
4c36bd:	33 c0                	xor    %eax,%eax
4c36bf:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4c36c2:	eb 10                	jmp    0x4c36d4
4c36c4:	81 7d d4 ff 00 00 00 	cmpl   $0xff,-0x2c(%ebp)
4c36cb:	7e 07                	jle    0x4c36d4
4c36cd:	c7 45 d4 ff 00 00 00 	movl   $0xff,-0x2c(%ebp)
4c36d4:	80 7d 08 01          	cmpb   $0x1,0x8(%ebp)
4c36d8:	0f 85 31 01 00 00    	jne    0x4c380f
4c36de:	ba 01 00 00 00       	mov    $0x1,%edx
4c36e3:	a1 c4 b2 6a 00       	mov    0x6ab2c4,%eax
4c36e8:	8b 08                	mov    (%eax),%ecx
4c36ea:	ff 51 40             	call   *0x40(%ecx)
4c36ed:	8b 55 f8             	mov    -0x8(%ebp),%edx
4c36f0:	8b 52 0c             	mov    0xc(%edx),%edx
4c36f3:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c36f6:	2b 50 04             	sub    0x4(%eax),%edx
4c36f9:	4a                   	dec    %edx
4c36fa:	a1 c4 b2 6a 00       	mov    0x6ab2c4,%eax
4c36ff:	8b 08                	mov    (%eax),%ecx
4c3701:	ff 51 34             	call   *0x34(%ecx)
4c3704:	a1 c4 b2 6a 00       	mov    0x6ab2c4,%eax
4c3709:	8b 10                	mov    (%eax),%edx
4c370b:	ff 52 20             	call   *0x20(%edx)
4c370e:	89 45 d0             	mov    %eax,-0x30(%ebp)
4c3711:	8b 7d d0             	mov    -0x30(%ebp),%edi
4c3714:	d1 ff                	sar    $1,%edi
4c3716:	79 03                	jns    0x4c371b
4c3718:	83 d7 00             	adc    $0x0,%edi
4c371b:	8b f7                	mov    %edi,%esi
4c371d:	4e                   	dec    %esi
4c371e:	85 f6                	test   %esi,%esi
4c3720:	7c 59                	jl     0x4c377b
4c3722:	46                   	inc    %esi
4c3723:	33 db                	xor    %ebx,%ebx
4c3725:	8b d3                	mov    %ebx,%edx
4c3727:	a1 c4 b2 6a 00       	mov    0x6ab2c4,%eax
4c372c:	e8 d7 a1 f6 ff       	call   0x42d908
4c3731:	89 45 cc             	mov    %eax,-0x34(%ebp)
4c3734:	8b 45 e8             	mov    -0x18(%ebp),%eax
4c3737:	2b 45 f4             	sub    -0xc(%ebp),%eax
4c373a:	f7 eb                	imul   %ebx
4c373c:	99                   	cltd
4c373d:	f7 ff                	idiv   %edi
4c373f:	02 45 f4             	add    -0xc(%ebp),%al
4c3742:	88 45 cb             	mov    %al,-0x35(%ebp)
4c3745:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4c3748:	2b 45 f0             	sub    -0x10(%ebp),%eax
4c374b:	f7 eb                	imul   %ebx
4c374d:	99                   	cltd
4c374e:	f7 ff                	idiv   %edi
4c3750:	02 45 f0             	add    -0x10(%ebp),%al
4c3753:	88 45 ca             	mov    %al,-0x36(%ebp)
4c3756:	8b 45 e0             	mov    -0x20(%ebp),%eax
4c3759:	2b 45 ec             	sub    -0x14(%ebp),%eax
4c375c:	f7 eb                	imul   %ebx
4c375e:	99                   	cltd
4c375f:	f7 ff                	idiv   %edi
4c3761:	02 45 ec             	add    -0x14(%ebp),%al
4c3764:	88 45 c9             	mov    %al,-0x37(%ebp)
4c3767:	8b 45 cc             	mov    -0x34(%ebp),%eax
4c376a:	66 8b 55 c9          	mov    -0x37(%ebp),%dx
4c376e:	66 89 10             	mov    %dx,(%eax)
4c3771:	8a 55 cb             	mov    -0x35(%ebp),%dl
4c3774:	88 50 02             	mov    %dl,0x2(%eax)
4c3777:	43                   	inc    %ebx
4c3778:	4e                   	dec    %esi
4c3779:	75 aa                	jne    0x4c3725
4c377b:	8b 45 e8             	mov    -0x18(%ebp),%eax
4c377e:	3b 45 f4             	cmp    -0xc(%ebp),%eax
4c3781:	7e 12                	jle    0x4c3795
4c3783:	8b 45 e8             	mov    -0x18(%ebp),%eax
4c3786:	89 45 dc             	mov    %eax,-0x24(%ebp)
4c3789:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4c378c:	89 45 d8             	mov    %eax,-0x28(%ebp)
4c378f:	8b 45 e0             	mov    -0x20(%ebp),%eax
4c3792:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4c3795:	8b df                	mov    %edi,%ebx
4c3797:	8b 75 d0             	mov    -0x30(%ebp),%esi
4c379a:	4e                   	dec    %esi
4c379b:	2b f3                	sub    %ebx,%esi
4c379d:	7c 5a                	jl     0x4c37f9
4c379f:	46                   	inc    %esi
4c37a0:	8b d3                	mov    %ebx,%edx
4c37a2:	a1 c4 b2 6a 00       	mov    0x6ab2c4,%eax
4c37a7:	e8 5c a1 f6 ff       	call   0x42d908
4c37ac:	89 45 cc             	mov    %eax,-0x34(%ebp)
4c37af:	8b 45 e8             	mov    -0x18(%ebp),%eax
4c37b2:	2b 45 dc             	sub    -0x24(%ebp),%eax
4c37b5:	f7 eb                	imul   %ebx
4c37b7:	99                   	cltd
4c37b8:	f7 7d d0             	idivl  -0x30(%ebp)
4c37bb:	02 45 dc             	add    -0x24(%ebp),%al
4c37be:	88 45 cb             	mov    %al,-0x35(%ebp)
4c37c1:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4c37c4:	2b 45 d8             	sub    -0x28(%ebp),%eax
4c37c7:	f7 eb                	imul   %ebx
4c37c9:	99                   	cltd
4c37ca:	f7 7d d0             	idivl  -0x30(%ebp)
4c37cd:	02 45 d8             	add    -0x28(%ebp),%al
4c37d0:	88 45 ca             	mov    %al,-0x36(%ebp)
4c37d3:	8b 45 e0             	mov    -0x20(%ebp),%eax
4c37d6:	2b 45 d4             	sub    -0x2c(%ebp),%eax
4c37d9:	f7 eb                	imul   %ebx
4c37db:	99                   	cltd
4c37dc:	f7 7d d0             	idivl  -0x30(%ebp)
4c37df:	02 45 d4             	add    -0x2c(%ebp),%al
4c37e2:	88 45 c9             	mov    %al,-0x37(%ebp)
4c37e5:	8b 45 cc             	mov    -0x34(%ebp),%eax
4c37e8:	66 8b 55 c9          	mov    -0x37(%ebp),%dx
4c37ec:	66 89 10             	mov    %dx,(%eax)
4c37ef:	8a 55 cb             	mov    -0x35(%ebp),%dl
4c37f2:	88 50 02             	mov    %dl,0x2(%eax)
4c37f5:	43                   	inc    %ebx
4c37f6:	4e                   	dec    %esi
4c37f7:	75 a7                	jne    0x4c37a0
4c37f9:	8b 55 f8             	mov    -0x8(%ebp),%edx
4c37fc:	8b 0d c4 b2 6a 00    	mov    0x6ab2c4,%ecx
4c3802:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c3805:	e8 1a 51 f6 ff       	call   0x428924
4c380a:	e9 26 01 00 00       	jmp    0x4c3935
4c380f:	8b 55 f8             	mov    -0x8(%ebp),%edx
4c3812:	8b 52 08             	mov    0x8(%edx),%edx
4c3815:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c3818:	2b 10                	sub    (%eax),%edx
4c381a:	4a                   	dec    %edx
4c381b:	a1 c4 b2 6a 00       	mov    0x6ab2c4,%eax
4c3820:	8b 08                	mov    (%eax),%ecx
4c3822:	ff 51 40             	call   *0x40(%ecx)
4c3825:	ba 01 00 00 00       	mov    $0x1,%edx
4c382a:	a1 c4 b2 6a 00       	mov    0x6ab2c4,%eax
4c382f:	8b 08                	mov    (%eax),%ecx
4c3831:	ff 51 34             	call   *0x34(%ecx)
4c3834:	a1 c4 b2 6a 00       	mov    0x6ab2c4,%eax
4c3839:	8b 10                	mov    (%eax),%edx
4c383b:	ff 52 2c             	call   *0x2c(%edx)
4c383e:	89 45 d0             	mov    %eax,-0x30(%ebp)
4c3841:	8b 7d d0             	mov    -0x30(%ebp),%edi
4c3844:	d1 ff                	sar    $1,%edi
4c3846:	79 03                	jns    0x4c384b
4c3848:	83 d7 00             	adc    $0x0,%edi
4c384b:	33 d2                	xor    %edx,%edx
4c384d:	a1 c4 b2 6a 00       	mov    0x6ab2c4,%eax
4c3852:	e8 b1 a0 f6 ff       	call   0x42d908
4c3857:	89 45 cc             	mov    %eax,-0x34(%ebp)
4c385a:	8b f7                	mov    %edi,%esi
4c385c:	4e                   	dec    %esi
4c385d:	85 f6                	test   %esi,%esi
4c385f:	7c 4f                	jl     0x4c38b0
4c3861:	46                   	inc    %esi
4c3862:	33 db                	xor    %ebx,%ebx
4c3864:	8b 45 e8             	mov    -0x18(%ebp),%eax
4c3867:	2b 45 f4             	sub    -0xc(%ebp),%eax
4c386a:	f7 eb                	imul   %ebx
4c386c:	99                   	cltd
4c386d:	f7 ff                	idiv   %edi
4c386f:	02 45 f4             	add    -0xc(%ebp),%al
4c3872:	88 45 cb             	mov    %al,-0x35(%ebp)
4c3875:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4c3878:	2b 45 f0             	sub    -0x10(%ebp),%eax
4c387b:	f7 eb                	imul   %ebx
4c387d:	99                   	cltd
4c387e:	f7 ff                	idiv   %edi
4c3880:	02 45 f0             	add    -0x10(%ebp),%al
4c3883:	88 45 ca             	mov    %al,-0x36(%ebp)
4c3886:	8b 45 e0             	mov    -0x20(%ebp),%eax
4c3889:	2b 45 ec             	sub    -0x14(%ebp),%eax
4c388c:	f7 eb                	imul   %ebx
4c388e:	99                   	cltd
4c388f:	f7 ff                	idiv   %edi
4c3891:	02 45 ec             	add    -0x14(%ebp),%al
4c3894:	88 45 c9             	mov    %al,-0x37(%ebp)
4c3897:	8d 04 5b             	lea    (%ebx,%ebx,2),%eax
4c389a:	8b 55 cc             	mov    -0x34(%ebp),%edx
4c389d:	66 8b 4d c9          	mov    -0x37(%ebp),%cx
4c38a1:	66 89 0c 02          	mov    %cx,(%edx,%eax,1)
4c38a5:	8a 4d cb             	mov    -0x35(%ebp),%cl
4c38a8:	88 4c 02 02          	mov    %cl,0x2(%edx,%eax,1)
4c38ac:	43                   	inc    %ebx
4c38ad:	4e                   	dec    %esi
4c38ae:	75 b4                	jne    0x4c3864
4c38b0:	8b 45 e8             	mov    -0x18(%ebp),%eax
4c38b3:	3b 45 f4             	cmp    -0xc(%ebp),%eax
4c38b6:	7e 12                	jle    0x4c38ca
4c38b8:	8b 45 e8             	mov    -0x18(%ebp),%eax
4c38bb:	89 45 dc             	mov    %eax,-0x24(%ebp)
4c38be:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4c38c1:	89 45 d8             	mov    %eax,-0x28(%ebp)
4c38c4:	8b 45 e0             	mov    -0x20(%ebp),%eax
4c38c7:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4c38ca:	8b df                	mov    %edi,%ebx
4c38cc:	8b 75 d0             	mov    -0x30(%ebp),%esi
4c38cf:	4e                   	dec    %esi
4c38d0:	2b f3                	sub    %ebx,%esi
4c38d2:	7c 50                	jl     0x4c3924
4c38d4:	46                   	inc    %esi
4c38d5:	8b 45 dc             	mov    -0x24(%ebp),%eax
4c38d8:	2b 45 e8             	sub    -0x18(%ebp),%eax
4c38db:	f7 eb                	imul   %ebx
4c38dd:	99                   	cltd
4c38de:	f7 7d d0             	idivl  -0x30(%ebp)
4c38e1:	02 45 e8             	add    -0x18(%ebp),%al
4c38e4:	88 45 cb             	mov    %al,-0x35(%ebp)
4c38e7:	8b 45 d8             	mov    -0x28(%ebp),%eax
4c38ea:	2b 45 e4             	sub    -0x1c(%ebp),%eax
4c38ed:	f7 eb                	imul   %ebx
4c38ef:	99                   	cltd
4c38f0:	f7 7d d0             	idivl  -0x30(%ebp)
4c38f3:	02 45 e4             	add    -0x1c(%ebp),%al
4c38f6:	88 45 ca             	mov    %al,-0x36(%ebp)
4c38f9:	8b 45 d4             	mov    -0x2c(%ebp),%eax
4c38fc:	2b 45 e0             	sub    -0x20(%ebp),%eax
4c38ff:	f7 eb                	imul   %ebx
4c3901:	99                   	cltd
4c3902:	f7 7d d0             	idivl  -0x30(%ebp)
4c3905:	02 45 e0             	add    -0x20(%ebp),%al
4c3908:	88 45 c9             	mov    %al,-0x37(%ebp)
4c390b:	8d 04 5b             	lea    (%ebx,%ebx,2),%eax
4c390e:	8b 55 cc             	mov    -0x34(%ebp),%edx
4c3911:	66 8b 4d c9          	mov    -0x37(%ebp),%cx
4c3915:	66 89 0c 02          	mov    %cx,(%edx,%eax,1)
4c3919:	8a 4d cb             	mov    -0x35(%ebp),%cl
4c391c:	88 4c 02 02          	mov    %cl,0x2(%edx,%eax,1)
4c3920:	43                   	inc    %ebx
4c3921:	4e                   	dec    %esi
4c3922:	75 b1                	jne    0x4c38d5
4c3924:	8b 55 f8             	mov    -0x8(%ebp),%edx
4c3927:	8b 0d c4 b2 6a 00    	mov    0x6ab2c4,%ecx
4c392d:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c3930:	e8 ef 4f f6 ff       	call   0x428924
4c3935:	5f                   	pop    %edi
4c3936:	5e                   	pop    %esi
4c3937:	5b                   	pop    %ebx
4c3938:	8b e5                	mov    %ebp,%esp
4c393a:	5d                   	pop    %ebp
4c393b:	c2 08 00             	ret    $0x8
4c393e:	8b c0                	mov    %eax,%eax
4c3940:	55                   	push   %ebp
4c3941:	8b ec                	mov    %esp,%ebp
4c3943:	83 c4 cc             	add    $0xffffffcc,%esp
4c3946:	53                   	push   %ebx
4c3947:	56                   	push   %esi
4c3948:	57                   	push   %edi
4c3949:	8b d9                	mov    %ecx,%ebx
4c394b:	8b f2                	mov    %edx,%esi
4c394d:	89 45 fc             	mov    %eax,-0x4(%ebp)
4c3950:	8b 7d 0c             	mov    0xc(%ebp),%edi
4c3953:	8b c3                	mov    %ebx,%eax
4c3955:	e8 7e 3c f6 ff       	call   0x4275d8
4c395a:	e8 09 46 f4 ff       	call   0x407f68
4c395f:	25 ff 00 00 00       	and    $0xff,%eax
4c3964:	89 45 f8             	mov    %eax,-0x8(%ebp)
4c3967:	8b c3                	mov    %ebx,%eax
4c3969:	e8 6a 3c f6 ff       	call   0x4275d8
4c396e:	e8 f9 45 f4 ff       	call   0x407f6c
4c3973:	25 ff 00 00 00       	and    $0xff,%eax
4c3978:	89 45 f0             	mov    %eax,-0x10(%ebp)
4c397b:	8b c3                	mov    %ebx,%eax
4c397d:	e8 56 3c f6 ff       	call   0x4275d8