5b36fa:	7c 24                	jl     0x5b3720
5b36fc:	40                   	inc    %eax
5b36fd:	33 f6                	xor    %esi,%esi
5b36ff:	8b 55 d4             	mov    -0x2c(%ebp),%edx
5b3702:	8b 14 b2             	mov    (%edx,%esi,4),%edx
5b3705:	8d 14 52             	lea    (%edx,%edx,2),%edx
5b3708:	8b 4d cc             	mov    -0x34(%ebp),%ecx
5b370b:	8b 3c 51             	mov    (%ecx,%edx,2),%edi
5b370e:	89 3b                	mov    %edi,(%ebx)
5b3710:	66 8b 7c 51 04       	mov    0x4(%ecx,%edx,2),%di
5b3715:	66 89 7b 04          	mov    %di,0x4(%ebx)
5b3719:	83 c3 06             	add    $0x6,%ebx
5b371c:	46                   	inc    %esi
5b371d:	48                   	dec    %eax
5b371e:	75 df                	jne    0x5b36ff
5b3720:	66 83 7d 0a 00       	cmpw   $0x0,0xa(%ebp)
5b3725:	74 16                	je     0x5b373d
5b3727:	db 45 f0             	fildl  -0x10(%ebp)
5b372a:	dc 4d a8             	fmull  -0x58(%ebp)
5b372d:	e8 9a f5 e4 ff       	call   0x402ccc
5b3732:	8b c8                	mov    %eax,%ecx
5b3734:	8b 55 f4             	mov    -0xc(%ebp),%edx
5b3737:	8b 45 0c             	mov    0xc(%ebp),%eax
5b373a:	ff 55 08             	call   *0x8(%ebp)
5b373d:	ff 45 f0             	incl   -0x10(%ebp)
5b3740:	ff 4d a4             	decl   -0x5c(%ebp)
5b3743:	75 87                	jne    0x5b36cc
5b3745:	8b 45 d4             	mov    -0x2c(%ebp),%eax
5b3748:	e8 7f f0 e4 ff       	call   0x4027cc
5b374d:	8b 45 fc             	mov    -0x4(%ebp),%eax
5b3750:	8a 55 b7             	mov    -0x49(%ebp),%dl
5b3753:	88 50 04             	mov    %dl,0x4(%eax)
5b3756:	8b 45 f8             	mov    -0x8(%ebp),%eax
5b3759:	8a 55 b6             	mov    -0x4a(%ebp),%dl
5b375c:	88 50 04             	mov    %dl,0x4(%eax)
5b375f:	5f                   	pop    %edi
5b3760:	5e                   	pop    %esi
5b3761:	5b                   	pop    %ebx
5b3762:	8b e5                	mov    %ebp,%esp
5b3764:	5d                   	pop    %ebp
5b3765:	c2 08 00             	ret    $0x8
5b3768:	00 00                	add    %al,(%eax)
5b376a:	00 3f                	add    %bh,(%edi)
5b376c:	00 00                	add    %al,(%eax)
5b376e:	c8 42 01 00          	enter  $0x142,$0x0
5b3772:	00 00                	add    %al,(%eax)
5b3774:	02 00                	add    (%eax),%al
5b3776:	00 00                	add    %al,(%eax)
5b3778:	55                   	push   %ebp
5b3779:	8b ec                	mov    %esp,%ebp
5b377b:	83 c4 e8             	add    $0xffffffe8,%esp
5b377e:	53                   	push   %ebx
5b377f:	56                   	push   %esi
5b3780:	57                   	push   %edi
5b3781:	8b 5d 10             	mov    0x10(%ebp),%ebx
5b3784:	8b 75 0c             	mov    0xc(%ebp),%esi
5b3787:	6b f6 03             	imul   $0x3,%esi,%esi
5b378a:	83 c6 02             	add    $0x2,%esi
5b378d:	85 f6                	test   %esi,%esi
5b378f:	78 0a                	js     0x5b379b
5b3791:	c1 ee 02             	shr    $0x2,%esi
5b3794:	8b 3c b3             	mov    (%ebx,%esi,4),%edi
5b3797:	4e                   	dec    %esi
5b3798:	57                   	push   %edi
5b3799:	79 f9                	jns    0x5b3794
5b379b:	89 65 10             	mov    %esp,0x10(%ebp)
5b379e:	66 89 4d fe          	mov    %cx,-0x2(%ebp)
5b37a2:	8b da                	mov    %edx,%ebx
5b37a4:	8b f8                	mov    %eax,%edi
5b37a6:	8b 45 08             	mov    0x8(%ebp),%eax
5b37a9:	89 45 f0             	mov    %eax,-0x10(%ebp)
5b37ac:	0f b7 45 fe          	movzwl -0x2(%ebp),%eax
5b37b0:	83 f8 08             	cmp    $0x8,%eax
5b37b3:	7f 17                	jg     0x5b37cc
5b37b5:	0f 84 a5 02 00 00    	je     0x5b3a60
5b37bb:	48                   	dec    %eax
5b37bc:	74 25                	je     0x5b37e3
5b37be:	83 e8 03             	sub    $0x3,%eax
5b37c1:	0f 84 94 01 00 00    	je     0x5b395b
5b37c7:	e9 ca 04 00 00       	jmp    0x5b3c96
5b37cc:	83 e8 18             	sub    $0x18,%eax
5b37cf:	0f 84 6d 03 00 00    	je     0x5b3b42
5b37d5:	83 e8 08             	sub    $0x8,%eax
5b37d8:	0f 84 6f 04 00 00    	je     0x5b3c4d
5b37de:	e9 b3 04 00 00       	jmp    0x5b3c96
5b37e3:	66 8b 45 18          	mov    0x18(%ebp),%ax
5b37e7:	66 ff c8             	dec    %ax
5b37ea:	74 1f                	je     0x5b380b
5b37ec:	66 83 e8 03          	sub    $0x3,%ax
5b37f0:	74 31                	je     0x5b3823
5b37f2:	66 83 e8 04          	sub    $0x4,%ax
5b37f6:	0f 84 90 00 00 00    	je     0x5b388c
5b37fc:	66 83 e8 10          	sub    $0x10,%ax
5b3800:	0f 84 d3 00 00 00    	je     0x5b38d9
5b3806:	e9 8b 04 00 00       	jmp    0x5b3c96
5b380b:	0f b7 4d 14          	movzwl 0x14(%ebp),%ecx
5b380f:	83 c1 07             	add    $0x7,%ecx
5b3812:	c1 e9 03             	shr    $0x3,%ecx
5b3815:	8b d7                	mov    %edi,%edx
5b3817:	8b c3                	mov    %ebx,%eax
5b3819:	e8 a2 46 e5 ff       	call   0x407ec0
5b381e:	e9 73 04 00 00       	jmp    0x5b3c96
5b3823:	0f b7 45 14          	movzwl 0x14(%ebp),%eax
5b3827:	48                   	dec    %eax
5b3828:	85 c0                	test   %eax,%eax
5b382a:	0f 8c 66 04 00 00    	jl     0x5b3c96
5b3830:	40                   	inc    %eax
5b3831:	89 45 ec             	mov    %eax,-0x14(%ebp)
5b3834:	33 f6                	xor    %esi,%esi
5b3836:	8b c6                	mov    %esi,%eax
5b3838:	25 07 00 00 80       	and    $0x80000007,%eax
5b383d:	79 05                	jns    0x5b3844
5b383f:	48                   	dec    %eax
5b3840:	83 c8 f8             	or     $0xfffffff8,%eax
5b3843:	40                   	inc    %eax
5b3844:	b9 07 00 00 00       	mov    $0x7,%ecx
5b3849:	2b c8                	sub    %eax,%ecx
5b384b:	8b c6                	mov    %esi,%eax
5b384d:	c1 e8 03             	shr    $0x3,%eax
5b3850:	0f b6 04 07          	movzbl (%edi,%eax,1),%eax
5b3854:	d3 e8                	shr    %cl,%eax
5b3856:	24 01                	and    $0x1,%al
5b3858:	88 45 f7             	mov    %al,-0x9(%ebp)
5b385b:	8b c6                	mov    %esi,%eax
5b385d:	25 01 00 00 80       	and    $0x80000001,%eax
5b3862:	79 05                	jns    0x5b3869
5b3864:	48                   	dec    %eax
5b3865:	83 c8 fe             	or     $0xfffffffe,%eax
5b3868:	40                   	inc    %eax
5b3869:	ba 01 00 00 00       	mov    $0x1,%edx
5b386e:	2b d0                	sub    %eax,%edx
5b3870:	8b ca                	mov    %edx,%ecx
5b3872:	c1 e1 02             	shl    $0x2,%ecx
5b3875:	8a 45 f7             	mov    -0x9(%ebp),%al
5b3878:	d2 e0                	shl    %cl,%al
5b387a:	8b d6                	mov    %esi,%edx
5b387c:	d1 ea                	shr    $1,%edx
5b387e:	08 04 13             	or     %al,(%ebx,%edx,1)
5b3881:	46                   	inc    %esi
5b3882:	ff 4d ec             	decl   -0x14(%ebp)
5b3885:	75 af                	jne    0x5b3836
5b3887:	e9 0a 04 00 00       	jmp    0x5b3c96
5b388c:	0f b7 45 14          	movzwl 0x14(%ebp),%eax
5b3890:	48                   	dec    %eax
5b3891:	85 c0                	test   %eax,%eax
5b3893:	0f 8c fd 03 00 00    	jl     0x5b3c96
5b3899:	40                   	inc    %eax
5b389a:	89 45 ec             	mov    %eax,-0x14(%ebp)
5b389d:	33 f6                	xor    %esi,%esi
5b389f:	8b c3                	mov    %ebx,%eax
5b38a1:	8b d6                	mov    %esi,%edx
5b38a3:	81 e2 07 00 00 80    	and    $0x80000007,%edx
5b38a9:	79 05                	jns    0x5b38b0
5b38ab:	4a                   	dec    %edx
5b38ac:	83 ca f8             	or     $0xfffffff8,%edx
5b38af:	42                   	inc    %edx
5b38b0:	b9 07 00 00 00       	mov    $0x7,%ecx
5b38b5:	2b ca                	sub    %edx,%ecx
5b38b7:	8b d6                	mov    %esi,%edx
5b38b9:	c1 ea 03             	shr    $0x3,%edx
5b38bc:	0f b6 14 17          	movzbl (%edi,%edx,1),%edx
5b38c0:	d3 ea                	shr    %cl,%edx
5b38c2:	80 e2 01             	and    $0x1,%dl
5b38c5:	88 55 f7             	mov    %dl,-0x9(%ebp)
5b38c8:	8a 55 f7             	mov    -0x9(%ebp),%dl
5b38cb:	88 10                	mov    %dl,(%eax)
5b38cd:	46                   	inc    %esi
5b38ce:	40                   	inc    %eax
5b38cf:	ff 4d ec             	decl   -0x14(%ebp)
5b38d2:	75 cd                	jne    0x5b38a1
5b38d4:	e9 bd 03 00 00       	jmp    0x5b3c96
5b38d9:	33 c0                	xor    %eax,%eax
5b38db:	89 45 f8             	mov    %eax,-0x8(%ebp)
5b38de:	0f b7 45 14          	movzwl 0x14(%ebp),%eax
5b38e2:	48                   	dec    %eax
5b38e3:	85 c0                	test   %eax,%eax
5b38e5:	0f 8c ab 03 00 00    	jl     0x5b3c96
5b38eb:	40                   	inc    %eax
5b38ec:	89 45 ec             	mov    %eax,-0x14(%ebp)
5b38ef:	33 f6                	xor    %esi,%esi
5b38f1:	8b c6                	mov    %esi,%eax
5b38f3:	25 07 00 00 80       	and    $0x80000007,%eax
5b38f8:	79 05                	jns    0x5b38ff
5b38fa:	48                   	dec    %eax
5b38fb:	83 c8 f8             	or     $0xfffffff8,%eax
5b38fe:	40                   	inc    %eax
5b38ff:	b9 07 00 00 00       	mov    $0x7,%ecx
5b3904:	2b c8                	sub    %eax,%ecx
5b3906:	8b c6                	mov    %esi,%eax
5b3908:	c1 e8 03             	shr    $0x3,%eax
5b390b:	0f b6 04 07          	movzbl (%edi,%eax,1),%eax
5b390f:	d3 e8                	shr    %cl,%eax
5b3911:	24 01                	and    $0x1,%al
5b3913:	88 45 f7             	mov    %al,-0x9(%ebp)
5b3916:	33 c0                	xor    %eax,%eax
5b3918:	8a 45 f7             	mov    -0x9(%ebp),%al
5b391b:	8d 04 40             	lea    (%eax,%eax,2),%eax
5b391e:	8b 55 10             	mov    0x10(%ebp),%edx
5b3921:	8a 14 02             	mov    (%edx,%eax,1),%dl
5b3924:	52                   	push   %edx
5b3925:	8b 55 f8             	mov    -0x8(%ebp),%edx
5b3928:	59                   	pop    %ecx
5b3929:	88 0c 13             	mov    %cl,(%ebx,%edx,1)
5b392c:	8b 55 10             	mov    0x10(%ebp),%edx
5b392f:	8a 54 02 01          	mov    0x1(%edx,%eax,1),%dl
5b3933:	52                   	push   %edx
5b3934:	8b 55 f8             	mov    -0x8(%ebp),%edx
5b3937:	59                   	pop    %ecx
5b3938:	88 4c 13 01          	mov    %cl,0x1(%ebx,%edx,1)
5b393c:	8b 55 10             	mov    0x10(%ebp),%edx
5b393f:	8a 44 02 02          	mov    0x2(%edx,%eax,1),%al
5b3943:	50                   	push   %eax
5b3944:	8b 45 f8             	mov    -0x8(%ebp),%eax
5b3947:	5a                   	pop    %edx
5b3948:	88 54 03 02          	mov    %dl,0x2(%ebx,%eax,1)
5b394c:	83 45 f8 03          	addl   $0x3,-0x8(%ebp)
5b3950:	46                   	inc    %esi
5b3951:	ff 4d ec             	decl   -0x14(%ebp)
5b3954:	75 9b                	jne    0x5b38f1
5b3956:	e9 3b 03 00 00       	jmp    0x5b3c96
5b395b:	66 8b 45 18          	mov    0x18(%ebp),%ax
5b395f:	66 83 e8 04          	sub    $0x4,%ax
5b3963:	74 11                	je     0x5b3976
5b3965:	66 83 e8 04          	sub    $0x4,%ax
5b3969:	74 20                	je     0x5b398b
5b396b:	66 83 e8 10          	sub    $0x10,%ax
5b396f:	74 69                	je     0x5b39da
5b3971:	e9 20 03 00 00       	jmp    0x5b3c96
5b3976:	0f b7 4d 14          	movzwl 0x14(%ebp),%ecx
5b397a:	41                   	inc    %ecx
5b397b:	d1 e9                	shr    $1,%ecx
5b397d:	8b d7                	mov    %edi,%edx
5b397f:	8b c3                	mov    %ebx,%eax
5b3981:	e8 3a 45 e5 ff       	call   0x407ec0
5b3986:	e9 0b 03 00 00       	jmp    0x5b3c96
5b398b:	0f b7 45 14          	movzwl 0x14(%ebp),%eax
5b398f:	48                   	dec    %eax
5b3990:	85 c0                	test   %eax,%eax
5b3992:	0f 8c fe 02 00 00    	jl     0x5b3c96
5b3998:	40                   	inc    %eax
5b3999:	89 45 ec             	mov    %eax,-0x14(%ebp)
5b399c:	33 f6                	xor    %esi,%esi
5b399e:	8b c3                	mov    %ebx,%eax
5b39a0:	8b d6                	mov    %esi,%edx
5b39a2:	81 e2 01 00 00 80    	and    $0x80000001,%edx
5b39a8:	79 05                	jns    0x5b39af
5b39aa:	4a                   	dec    %edx
5b39ab:	83 ca fe             	or     $0xfffffffe,%edx
5b39ae:	42                   	inc    %edx
5b39af:	b9 01 00 00 00       	mov    $0x1,%ecx
5b39b4:	2b ca                	sub    %edx,%ecx
5b39b6:	c1 e1 02             	shl    $0x2,%ecx
5b39b9:	8b d6                	mov    %esi,%edx
5b39bb:	d1 ea                	shr    $1,%edx
5b39bd:	0f b6 14 17          	movzbl (%edi,%edx,1),%edx
5b39c1:	d3 ea                	shr    %cl,%edx
5b39c3:	80 e2 0f             	and    $0xf,%dl
5b39c6:	88 55 f7             	mov    %dl,-0x9(%ebp)
5b39c9:	8a 55 f7             	mov    -0x9(%ebp),%dl
5b39cc:	88 10                	mov    %dl,(%eax)
5b39ce:	46                   	inc    %esi
5b39cf:	40                   	inc    %eax
5b39d0:	ff 4d ec             	decl   -0x14(%ebp)
5b39d3:	75 cb                	jne    0x5b39a0
5b39d5:	e9 bc 02 00 00       	jmp    0x5b3c96
5b39da:	33 c0                	xor    %eax,%eax
5b39dc:	89 45 f8             	mov    %eax,-0x8(%ebp)
5b39df:	0f b7 45 14          	movzwl 0x14(%ebp),%eax
5b39e3:	48                   	dec    %eax
5b39e4:	85 c0                	test   %eax,%eax
5b39e6:	0f 8c aa 02 00 00    	jl     0x5b3c96
5b39ec:	40                   	inc    %eax
5b39ed:	89 45 ec             	mov    %eax,-0x14(%ebp)
5b39f0:	33 f6                	xor    %esi,%esi
5b39f2:	8b c6                	mov    %esi,%eax
5b39f4:	25 01 00 00 80       	and    $0x80000001,%eax
5b39f9:	79 05                	jns    0x5b3a00
5b39fb:	48                   	dec    %eax
5b39fc:	83 c8 fe             	or     $0xfffffffe,%eax
5b39ff:	40                   	inc    %eax
5b3a00:	ba 01 00 00 00       	mov    $0x1,%edx
5b3a05:	2b d0                	sub    %eax,%edx
5b3a07:	8b ca                	mov    %edx,%ecx
5b3a09:	c1 e1 02             	shl    $0x2,%ecx
5b3a0c:	8b c6                	mov    %esi,%eax
5b3a0e:	d1 e8                	shr    $1,%eax
5b3a10:	0f b6 04 07          	movzbl (%edi,%eax,1),%eax
5b3a14:	d3 e8                	shr    %cl,%eax
5b3a16:	24 0f                	and    $0xf,%al
5b3a18:	88 45 f7             	mov    %al,-0x9(%ebp)
5b3a1b:	33 c0                	xor    %eax,%eax
5b3a1d:	8a 45 f7             	mov    -0x9(%ebp),%al
5b3a20:	8d 04 40             	lea    (%eax,%eax,2),%eax
5b3a23:	8b 55 10             	mov    0x10(%ebp),%edx
5b3a26:	8a 14 02             	mov    (%edx,%eax,1),%dl
5b3a29:	52                   	push   %edx
5b3a2a:	8b 55 f8             	mov    -0x8(%ebp),%edx
5b3a2d:	59                   	pop    %ecx
5b3a2e:	88 0c 13             	mov    %cl,(%ebx,%edx,1)
5b3a31:	8b 55 10             	mov    0x10(%ebp),%edx
5b3a34:	8a 54 02 01          	mov    0x1(%edx,%eax,1),%dl
5b3a38:	52                   	push   %edx
5b3a39:	8b 55 f8             	mov    -0x8(%ebp),%edx
5b3a3c:	59                   	pop    %ecx
5b3a3d:	88 4c 13 01          	mov    %cl,0x1(%ebx,%edx,1)
5b3a41:	8b 55 10             	mov    0x10(%ebp),%edx
5b3a44:	8a 44 02 02          	mov    0x2(%edx,%eax,1),%al
5b3a48:	50                   	push   %eax
5b3a49:	8b 45 f8             	mov    -0x8(%ebp),%eax
5b3a4c:	5a                   	pop    %edx
5b3a4d:	88 54 03 02          	mov    %dl,0x2(%ebx,%eax,1)
5b3a51:	83 45 f8 03          	addl   $0x3,-0x8(%ebp)
5b3a55:	46                   	inc    %esi
5b3a56:	ff 4d ec             	decl   -0x14(%ebp)
5b3a59:	75 97                	jne    0x5b39f2
5b3a5b:	e9 36 02 00 00       	jmp    0x5b3c96
5b3a60:	66 8b 45 18          	mov    0x18(%ebp),%ax
5b3a64:	66 ff c8             	dec    %ax
5b3a67:	74 11                	je     0x5b3a7a
5b3a69:	66 83 e8 07          	sub    $0x7,%ax
5b3a6d:	74 65                	je     0x5b3ad4
5b3a6f:	66 83 e8 10          	sub    $0x10,%ax
5b3a73:	74 71                	je     0x5b3ae6
5b3a75:	e9 1c 02 00 00       	jmp    0x5b3c96
5b3a7a:	0f b7 55 14          	movzwl 0x14(%ebp),%edx
5b3a7e:	83 c2 07             	add    $0x7,%edx
5b3a81:	c1 ea 03             	shr    $0x3,%edx
5b3a84:	8b c3                	mov    %ebx,%eax
5b3a86:	e8 49 44 e5 ff       	call   0x407ed4
5b3a8b:	0f b7 45 14          	movzwl 0x14(%ebp),%eax
5b3a8f:	48                   	dec    %eax
5b3a90:	85 c0                	test   %eax,%eax
5b3a92:	0f 8c fe 01 00 00    	jl     0x5b3c96
5b3a98:	40                   	inc    %eax
5b3a99:	89 45 ec             	mov    %eax,-0x14(%ebp)
5b3a9c:	33 f6                	xor    %esi,%esi
5b3a9e:	8b c7                	mov    %edi,%eax
5b3aa0:	8a 10                	mov    (%eax),%dl
5b3aa2:	88 55 f7             	mov    %dl,-0x9(%ebp)
5b3aa5:	8b d6                	mov    %esi,%edx
5b3aa7:	81 e2 07 00 00 80    	and    $0x80000007,%edx
5b3aad:	79 05                	jns    0x5b3ab4
5b3aaf:	4a                   	dec    %edx
5b3ab0:	83 ca f8             	or     $0xfffffff8,%edx
5b3ab3:	42                   	inc    %edx
5b3ab4:	b9 07 00 00 00       	mov    $0x7,%ecx
5b3ab9:	2b ca                	sub    %edx,%ecx
5b3abb:	8a 55 f7             	mov    -0x9(%ebp),%dl
5b3abe:	d2 e2                	shl    %cl,%dl
5b3ac0:	8b ce                	mov    %esi,%ecx