48a79e:	7c 51                	jl     0x48a7f1
48a7a0:	3b c8                	cmp    %eax,%ecx
48a7a2:	7f 4d                	jg     0x48a7f1
48a7a4:	3b ca                	cmp    %edx,%ecx
48a7a6:	7e 1b                	jle    0x48a7c3
48a7a8:	3b c8                	cmp    %eax,%ecx
48a7aa:	7d 17                	jge    0x48a7c3
48a7ac:	33 c0                	xor    %eax,%eax
48a7ae:	40                   	inc    %eax
48a7af:	5e                   	pop    %esi
48a7b0:	5b                   	pop    %ebx
48a7b1:	c9                   	leave
48a7b2:	c3                   	ret
48a7b3:	3b c8                	cmp    %eax,%ecx
48a7b5:	7c f5                	jl     0x48a7ac
48a7b7:	3b ca                	cmp    %edx,%ecx
48a7b9:	7f f1                	jg     0x48a7ac
48a7bb:	3b c8                	cmp    %eax,%ecx
48a7bd:	7e 04                	jle    0x48a7c3
48a7bf:	3b ca                	cmp    %edx,%ecx
48a7c1:	7c 2e                	jl     0x48a7f1
48a7c3:	6b 43 08 3c          	imul   $0x3c,0x8(%ebx),%eax
48a7c7:	03 43 04             	add    0x4(%ebx),%eax
48a7ca:	6b c0 3c             	imul   $0x3c,%eax,%eax
48a7cd:	03 03                	add    (%ebx),%eax
48a7cf:	69 f0 e8 03 00 00    	imul   $0x3e8,%eax,%esi
48a7d5:	33 c0                	xor    %eax,%eax
48a7d7:	3b ca                	cmp    %edx,%ecx
48a7d9:	75 0b                	jne    0x48a7e6
48a7db:	3b 35 70 45 4c 00    	cmp    0x4c4570,%esi
48a7e1:	0f 9d c0             	setge  %al
48a7e4:	eb c9                	jmp    0x48a7af
48a7e6:	3b 35 7c 45 4c 00    	cmp    0x4c457c,%esi
48a7ec:	0f 9c c0             	setl   %al
48a7ef:	eb be                	jmp    0x48a7af
48a7f1:	33 c0                	xor    %eax,%eax
48a7f3:	eb ba                	jmp    0x48a7af
48a7f5:	56                   	push   %esi
48a7f6:	56                   	push   %esi
48a7f7:	56                   	push   %esi
48a7f8:	56                   	push   %esi
48a7f9:	56                   	push   %esi
48a7fa:	e8 4f ee fe ff       	call   0x47964e
48a7ff:	cc                   	int3
48a800:	8b ff                	mov    %edi,%edi
48a802:	55                   	push   %ebp
48a803:	8b ec                	mov    %esp,%ebp
48a805:	51                   	push   %ecx
48a806:	51                   	push   %ecx
48a807:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
48a80b:	53                   	push   %ebx
48a80c:	8b 5d 10             	mov    0x10(%ebp),%ebx
48a80f:	56                   	push   %esi
48a810:	53                   	push   %ebx
48a811:	e8 9c 5a ff ff       	call   0x4802b2
48a816:	83 7d 0c 01          	cmpl   $0x1,0xc(%ebp)
48a81a:	8b 75 14             	mov    0x14(%ebp),%esi
48a81d:	59                   	pop    %ecx
48a81e:	88 45 ff             	mov    %al,-0x1(%ebp)
48a821:	75 6c                	jne    0x48a88f
48a823:	8d 1c b5 4c 41 4a 00 	lea    0x4a414c(,%esi,4),%ebx
48a82a:	57                   	push   %edi
48a82b:	8d 3c b5 80 41 4a 00 	lea    0x4a4180(,%esi,4),%edi
48a832:	84 c0                	test   %al,%al
48a834:	74 05                	je     0x48a83b
48a836:	8b 77 fc             	mov    -0x4(%edi),%esi
48a839:	eb 03                	jmp    0x48a83e
48a83b:	8b 73 fc             	mov    -0x4(%ebx),%esi
48a83e:	ff 75 10             	push   0x10(%ebp)
48a841:	46                   	inc    %esi
48a842:	e8 22 73 ff ff       	call   0x481b69
48a847:	59                   	pop    %ecx
48a848:	69 4d 10 6d 01 00 00 	imul   $0x16d,0x10(%ebp),%ecx
48a84f:	03 c6                	add    %esi,%eax
48a851:	6a 07                	push   $0x7
48a853:	81 c1 36 9c ff ff    	add    $0xffff9c36,%ecx
48a859:	03 c1                	add    %ecx,%eax
48a85b:	59                   	pop    %ecx
48a85c:	99                   	cltd
48a85d:	f7 f9                	idiv   %ecx
48a85f:	6b 4d 18 07          	imul   $0x7,0x18(%ebp),%ecx
48a863:	2b ca                	sub    %edx,%ecx
48a865:	03 f1                	add    %ecx,%esi
48a867:	03 75 1c             	add    0x1c(%ebp),%esi
48a86a:	3b 55 1c             	cmp    0x1c(%ebp),%edx
48a86d:	7f 03                	jg     0x48a872
48a86f:	83 c6 f9             	add    $0xfffffff9,%esi
48a872:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
48a876:	75 02                	jne    0x48a87a
48a878:	8b fb                	mov    %ebx,%edi
48a87a:	83 7d 18 05          	cmpl   $0x5,0x18(%ebp)
48a87e:	8b 07                	mov    (%edi),%eax
48a880:	8b 5d 10             	mov    0x10(%ebp),%ebx
48a883:	5f                   	pop    %edi
48a884:	75 20                	jne    0x48a8a6
48a886:	3b f0                	cmp    %eax,%esi
48a888:	7e 1c                	jle    0x48a8a6
48a88a:	83 ee 07             	sub    $0x7,%esi
48a88d:	eb 17                	jmp    0x48a8a6
48a88f:	84 c0                	test   %al,%al
48a891:	74 09                	je     0x48a89c
48a893:	8b 34 b5 7c 41 4a 00 	mov    0x4a417c(,%esi,4),%esi
48a89a:	eb 07                	jmp    0x48a8a3
48a89c:	8b 34 b5 48 41 4a 00 	mov    0x4a4148(,%esi,4),%esi
48a8a3:	03 75 20             	add    0x20(%ebp),%esi
48a8a6:	6b 45 24 3c          	imul   $0x3c,0x24(%ebp),%eax
48a8aa:	03 45 28             	add    0x28(%ebp),%eax
48a8ad:	6b c0 3c             	imul   $0x3c,%eax,%eax
48a8b0:	03 45 2c             	add    0x2c(%ebp),%eax
48a8b3:	69 c8 e8 03 00 00    	imul   $0x3e8,%eax,%ecx
48a8b9:	8b 45 30             	mov    0x30(%ebp),%eax
48a8bc:	03 c1                	add    %ecx,%eax
48a8be:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
48a8c2:	75 15                	jne    0x48a8d9
48a8c4:	89 35 6c 45 4c 00    	mov    %esi,0x4c456c
48a8ca:	a3 70 45 4c 00       	mov    %eax,0x4c4570
48a8cf:	89 1d 68 45 4c 00    	mov    %ebx,0x4c4568
48a8d5:	5e                   	pop    %esi
48a8d6:	5b                   	pop    %ebx
48a8d7:	c9                   	leave
48a8d8:	c3                   	ret
48a8d9:	a3 7c 45 4c 00       	mov    %eax,0x4c457c
48a8de:	8d 45 f8             	lea    -0x8(%ebp),%eax
48a8e1:	50                   	push   %eax
48a8e2:	89 35 78 45 4c 00    	mov    %esi,0x4c4578
48a8e8:	e8 62 fc ff ff       	call   0x48a54f
48a8ed:	59                   	pop    %ecx
48a8ee:	85 c0                	test   %eax,%eax
48a8f0:	75 41                	jne    0x48a933
48a8f2:	69 4d f8 e8 03 00 00 	imul   $0x3e8,-0x8(%ebp),%ecx
48a8f9:	a1 7c 45 4c 00       	mov    0x4c457c,%eax
48a8fe:	03 c1                	add    %ecx,%eax
48a900:	a3 7c 45 4c 00       	mov    %eax,0x4c457c
48a905:	79 0d                	jns    0x48a914
48a907:	05 00 5c 26 05       	add    $0x5265c00,%eax
48a90c:	ff 0d 78 45 4c 00    	decl   0x4c4578
48a912:	eb 12                	jmp    0x48a926
48a914:	3d 00 5c 26 05       	cmp    $0x5265c00,%eax
48a919:	7c 10                	jl     0x48a92b
48a91b:	05 00 a4 d9 fa       	add    $0xfad9a400,%eax
48a920:	ff 05 78 45 4c 00    	incl   0x4c4578
48a926:	a3 7c 45 4c 00       	mov    %eax,0x4c457c
48a92b:	89 1d 74 45 4c 00    	mov    %ebx,0x4c4574
48a931:	eb a2                	jmp    0x48a8d5
48a933:	6a 00                	push   $0x0
48a935:	6a 00                	push   $0x0
48a937:	6a 00                	push   $0x0
48a939:	6a 00                	push   $0x0
48a93b:	6a 00                	push   $0x0
48a93d:	e8 0c ed fe ff       	call   0x47964e
48a942:	cc                   	int3
48a943:	8b ff                	mov    %edi,%edi
48a945:	55                   	push   %ebp
48a946:	8b ec                	mov    %esp,%ebp
48a948:	51                   	push   %ecx
48a949:	51                   	push   %ecx
48a94a:	57                   	push   %edi
48a94b:	bf f0 40 4a 00       	mov    $0x4a40f0,%edi
48a950:	8d 45 fc             	lea    -0x4(%ebp),%eax
48a953:	57                   	push   %edi
48a954:	68 00 01 00 00       	push   $0x100
48a959:	ff 75 08             	push   0x8(%ebp)
48a95c:	50                   	push   %eax
48a95d:	e8 ac 8d 00 00       	call   0x49370e
48a962:	83 c4 10             	add    $0x10,%esp
48a965:	85 c0                	test   %eax,%eax
48a967:	75 05                	jne    0x48a96e
48a969:	8b 45 08             	mov    0x8(%ebp),%eax
48a96c:	eb 49                	jmp    0x48a9b7
48a96e:	83 f8 22             	cmp    $0x22,%eax
48a971:	74 04                	je     0x48a977
48a973:	33 c0                	xor    %eax,%eax
48a975:	eb 40                	jmp    0x48a9b7
48a977:	8b 45 fc             	mov    -0x4(%ebp),%eax
48a97a:	03 c0                	add    %eax,%eax
48a97c:	56                   	push   %esi
48a97d:	50                   	push   %eax
48a97e:	e8 af ae ff ff       	call   0x485832
48a983:	8b f0                	mov    %eax,%esi
48a985:	59                   	pop    %ecx
48a986:	85 f6                	test   %esi,%esi
48a988:	75 0a                	jne    0x48a994
48a98a:	50                   	push   %eax
48a98b:	e8 68 ae ff ff       	call   0x4857f8
48a990:	33 c0                	xor    %eax,%eax
48a992:	eb 21                	jmp    0x48a9b5
48a994:	57                   	push   %edi
48a995:	ff 75 fc             	push   -0x4(%ebp)
48a998:	8d 45 f8             	lea    -0x8(%ebp),%eax
48a99b:	56                   	push   %esi
48a99c:	50                   	push   %eax
48a99d:	e8 6c 8d 00 00       	call   0x49370e
48a9a2:	83 c4 10             	add    $0x10,%esp
48a9a5:	85 c0                	test   %eax,%eax
48a9a7:	74 03                	je     0x48a9ac
48a9a9:	56                   	push   %esi
48a9aa:	eb df                	jmp    0x48a98b
48a9ac:	6a 00                	push   $0x0
48a9ae:	e8 45 ae ff ff       	call   0x4857f8
48a9b3:	8b c6                	mov    %esi,%eax
48a9b5:	59                   	pop    %ecx
48a9b6:	5e                   	pop    %esi
48a9b7:	5f                   	pop    %edi
48a9b8:	c9                   	leave
48a9b9:	c3                   	ret
48a9ba:	8b ff                	mov    %edi,%edi
48a9bc:	55                   	push   %ebp
48a9bd:	8b ec                	mov    %esp,%ebp
48a9bf:	ff 75 14             	push   0x14(%ebp)
48a9c2:	ff 75 08             	push   0x8(%ebp)
48a9c5:	6a 40                	push   $0x40
48a9c7:	ff 75 0c             	push   0xc(%ebp)
48a9ca:	e8 3f 55 ff ff       	call   0x47ff0e
48a9cf:	83 c4 10             	add    $0x10,%esp
48a9d2:	85 c0                	test   %eax,%eax
48a9d4:	75 1e                	jne    0x48a9f4
48a9d6:	50                   	push   %eax
48a9d7:	50                   	push   %eax
48a9d8:	6a 3f                	push   $0x3f
48a9da:	ff 75 10             	push   0x10(%ebp)
48a9dd:	ff 75 14             	push   0x14(%ebp)
48a9e0:	ff 75 0c             	push   0xc(%ebp)
48a9e3:	50                   	push   %eax
48a9e4:	e8 be fb ff ff       	call   0x48a5a7
48a9e9:	50                   	push   %eax
48a9ea:	e8 1b 43 00 00       	call   0x48ed0a
48a9ef:	83 c4 20             	add    $0x20,%esp
48a9f2:	5d                   	pop    %ebp
48a9f3:	c3                   	ret
48a9f4:	33 c0                	xor    %eax,%eax
48a9f6:	50                   	push   %eax
48a9f7:	50                   	push   %eax
48a9f8:	50                   	push   %eax
48a9f9:	50                   	push   %eax
48a9fa:	50                   	push   %eax
48a9fb:	e8 4e ec fe ff       	call   0x47964e
48aa00:	cc                   	int3
48aa01:	8b ff                	mov    %edi,%edi
48aa03:	55                   	push   %ebp
48aa04:	8b ec                	mov    %esp,%ebp
48aa06:	83 ec 1c             	sub    $0x1c,%esp
48aa09:	53                   	push   %ebx
48aa0a:	56                   	push   %esi
48aa0b:	57                   	push   %edi
48aa0c:	e8 06 fb ff ff       	call   0x48a517
48aa11:	8b d8                	mov    %eax,%ebx
48aa13:	89 5d f0             	mov    %ebx,-0x10(%ebp)
48aa16:	e8 02 fb ff ff       	call   0x48a51d
48aa1b:	89 45 ec             	mov    %eax,-0x14(%ebp)
48aa1e:	33 f6                	xor    %esi,%esi
48aa20:	8d 45 fc             	lea    -0x4(%ebp),%eax
48aa23:	89 75 e8             	mov    %esi,-0x18(%ebp)
48aa26:	50                   	push   %eax
48aa27:	89 75 fc             	mov    %esi,-0x4(%ebp)
48aa2a:	89 75 f8             	mov    %esi,-0x8(%ebp)
48aa2d:	e8 49 fb ff ff       	call   0x48a57b
48aa32:	59                   	pop    %ecx
48aa33:	85 c0                	test   %eax,%eax
48aa35:	0f 85 4d 02 00 00    	jne    0x48ac88
48aa3b:	8d 45 f8             	lea    -0x8(%ebp),%eax
48aa3e:	50                   	push   %eax
48aa3f:	e8 df fa ff ff       	call   0x48a523
48aa44:	59                   	pop    %ecx
48aa45:	85 c0                	test   %eax,%eax
48aa47:	0f 85 3b 02 00 00    	jne    0x48ac88
48aa4d:	a1 04 8b 4c 00       	mov    0x4c8b04,%eax
48aa52:	8b 7d 08             	mov    0x8(%ebp),%edi
48aa55:	85 c0                	test   %eax,%eax
48aa57:	74 31                	je     0x48aa8a
48aa59:	8b cf                	mov    %edi,%ecx
48aa5b:	66 8b 11             	mov    (%ecx),%dx
48aa5e:	66 3b 10             	cmp    (%eax),%dx
48aa61:	75 1e                	jne    0x48aa81
48aa63:	66 85 d2             	test   %dx,%dx
48aa66:	74 15                	je     0x48aa7d
48aa68:	66 8b 51 02          	mov    0x2(%ecx),%dx
48aa6c:	66 3b 50 02          	cmp    0x2(%eax),%dx
48aa70:	75 0f                	jne    0x48aa81
48aa72:	83 c1 04             	add    $0x4,%ecx
48aa75:	83 c0 04             	add    $0x4,%eax
48aa78:	66 85 d2             	test   %dx,%dx
48aa7b:	75 de                	jne    0x48aa5b
48aa7d:	8b c6                	mov    %esi,%eax
48aa7f:	eb 05                	jmp    0x48aa86
48aa81:	1b c0                	sbb    %eax,%eax
48aa83:	83 c8 01             	or     $0x1,%eax
48aa86:	85 c0                	test   %eax,%eax
48aa88:	74 31                	je     0x48aabb
48aa8a:	8b cf                	mov    %edi,%ecx
48aa8c:	8d 51 02             	lea    0x2(%ecx),%edx
48aa8f:	66 8b 01             	mov    (%ecx),%ax
48aa92:	83 c1 02             	add    $0x2,%ecx
48aa95:	66 3b c6             	cmp    %si,%ax
48aa98:	75 f5                	jne    0x48aa8f
48aa9a:	2b ca                	sub    %edx,%ecx
48aa9c:	d1 f9                	sar    $1,%ecx
48aa9e:	8d 04 4d 02 00 00 00 	lea    0x2(,%ecx,2),%eax
48aaa5:	50                   	push   %eax
48aaa6:	e8 87 ad ff ff       	call   0x485832
48aaab:	8b f0                	mov    %eax,%esi
48aaad:	59                   	pop    %ecx
48aaae:	85 f6                	test   %esi,%esi
48aab0:	75 0e                	jne    0x48aac0
48aab2:	33 c0                	xor    %eax,%eax
48aab4:	50                   	push   %eax
48aab5:	e8 3e ad ff ff       	call   0x4857f8
48aaba:	59                   	pop    %ecx
48aabb:	5f                   	pop    %edi
48aabc:	5e                   	pop    %esi
48aabd:	5b                   	pop    %ebx
48aabe:	c9                   	leave
48aabf:	c3                   	ret
48aac0:	ff 35 04 8b 4c 00    	push   0x4c8b04
48aac6:	e8 2d ad ff ff       	call   0x4857f8
48aacb:	59                   	pop    %ecx
48aacc:	8b cf                	mov    %edi,%ecx
48aace:	89 35 04 8b 4c 00    	mov    %esi,0x4c8b04
48aad4:	8d 51 02             	lea    0x2(%ecx),%edx
48aad7:	66 8b 01             	mov    (%ecx),%ax
48aada:	83 c1 02             	add    $0x2,%ecx
48aadd:	66 3b 45 e8          	cmp    -0x18(%ebp),%ax
48aae1:	75 f4                	jne    0x48aad7
48aae3:	2b ca                	sub    %edx,%ecx
48aae5:	d1 f9                	sar    $1,%ecx
48aae7:	57                   	push   %edi
48aae8:	8d 41 01             	lea    0x1(%ecx),%eax
48aaeb:	50                   	push   %eax
48aaec:	56                   	push   %esi
48aaed:	e8 ab eb fe ff       	call   0x47969d
48aaf2:	83 c4 0c             	add    $0xc,%esp
48aaf5:	85 c0                	test   %eax,%eax
48aaf7:	0f 85 89 01 00 00    	jne    0x48ac86
48aafd:	8b 75 ec             	mov    -0x14(%ebp),%esi
48ab00:	68 80 00 00 00       	push   $0x80
48ab05:	50                   	push   %eax
48ab06:	ff 36                	push   (%esi)
48ab08:	e8 a3 10 fe ff       	call   0x46bbb0
48ab0d:	68 80 00 00 00       	push   $0x80
48ab12:	33 c0                	xor    %eax,%eax
48ab14:	50                   	push   %eax
48ab15:	ff 76 04             	push   0x4(%esi)
48ab18:	e8 93 10 fe ff       	call   0x46bbb0
48ab1d:	6a 40                	push   $0x40
48ab1f:	33 c0                	xor    %eax,%eax
48ab21:	50                   	push   %eax
48ab22:	ff 33                	push   (%ebx)
48ab24:	e8 87 10 fe ff       	call   0x46bbb0
48ab29:	6a 40                	push   $0x40
48ab2b:	33 c0                	xor    %eax,%eax
48ab2d:	50                   	push   %eax