4d885b:	83 e8 03             	sub    $0x3,%eax
4d885e:	0f 84 ff 00 00 00    	je     0x4d8963
4d8864:	83 e8 04             	sub    $0x4,%eax
4d8867:	74 79                	je     0x4d88e2
4d8869:	83 e8 10             	sub    $0x10,%eax
4d886c:	0f 85 15 02 00 00    	jne    0x4d8a87
4d8872:	c7 45 d4 02 00 00 00 	movl   $0x2,-0x2c(%ebp)
4d8879:	80 bd 4a ff ff ff 01 	cmpb   $0x1,-0xb6(%ebp)
4d8880:	75 1c                	jne    0x4d889e
4d8882:	8b 45 d4             	mov    -0x2c(%ebp),%eax
4d8885:	50                   	push   %eax
4d8886:	6a 03                	push   $0x3
4d8888:	8b c6                	mov    %esi,%eax
4d888a:	8b 10                	mov    (%eax),%edx
4d888c:	ff 52 0c             	call   *0xc(%edx)
4d888f:	8b c8                	mov    %eax,%ecx
4d8891:	8b 55 e8             	mov    -0x18(%ebp),%edx
4d8894:	8b 45 dc             	mov    -0x24(%ebp),%eax
4d8897:	e8 48 fb ff ff       	call   0x4d83e4
4d889c:	eb 24                	jmp    0x4d88c2
4d889e:	8b 5d d0             	mov    -0x30(%ebp),%ebx
4d88a1:	85 db                	test   %ebx,%ebx
4d88a3:	7c 19                	jl     0x4d88be
4d88a5:	43                   	inc    %ebx
4d88a6:	33 ff                	xor    %edi,%edi
4d88a8:	8d 04 7f             	lea    (%edi,%edi,2),%eax
4d88ab:	03 45 d4             	add    -0x2c(%ebp),%eax
4d88ae:	8b 55 e8             	mov    -0x18(%ebp),%edx
4d88b1:	8a 04 02             	mov    (%edx,%eax,1),%al
4d88b4:	8b 55 dc             	mov    -0x24(%ebp),%edx
4d88b7:	88 04 3a             	mov    %al,(%edx,%edi,1)
4d88ba:	47                   	inc    %edi
4d88bb:	4b                   	dec    %ebx
4d88bc:	75 ea                	jne    0x4d88a8
4d88be:	0f b7 45 8a          	movzwl -0x76(%ebp),%eax
4d88c2:	50                   	push   %eax
4d88c3:	8b 4d dc             	mov    -0x24(%ebp),%ecx
4d88c6:	8b 55 08             	mov    0x8(%ebp),%edx
4d88c9:	8b 52 28             	mov    0x28(%edx),%edx
4d88cc:	8b 45 fc             	mov    -0x4(%ebp),%eax
4d88cf:	e8 28 d6 11 00       	call   0x5f5efc
4d88d4:	ff 4d d4             	decl   -0x2c(%ebp)
4d88d7:	83 7d d4 ff          	cmpl   $0xffffffff,-0x2c(%ebp)
4d88db:	75 9c                	jne    0x4d8879
4d88dd:	e9 a5 01 00 00       	jmp    0x4d8a87
4d88e2:	8b 5d d0             	mov    -0x30(%ebp),%ebx
4d88e5:	85 db                	test   %ebx,%ebx
4d88e7:	7c 27                	jl     0x4d8910
4d88e9:	43                   	inc    %ebx
4d88ea:	33 ff                	xor    %edi,%edi
4d88ec:	8d 04 7f             	lea    (%edi,%edi,2),%eax
4d88ef:	8b 55 e8             	mov    -0x18(%ebp),%edx
4d88f2:	8a 4c 02 02          	mov    0x2(%edx,%eax,1),%cl
4d88f6:	c1 e1 10             	shl    $0x10,%ecx
4d88f9:	66 8b 0c 02          	mov    (%edx,%eax,1),%cx
4d88fd:	51                   	push   %ecx
4d88fe:	8b 45 f8             	mov    -0x8(%ebp),%eax
4d8901:	e8 9a 72 06 00       	call   0x53fba0
4d8906:	8b 55 d8             	mov    -0x28(%ebp),%edx
4d8909:	88 04 3a             	mov    %al,(%edx,%edi,1)
4d890c:	47                   	inc    %edi
4d890d:	4b                   	dec    %ebx
4d890e:	75 dc                	jne    0x4d88ec
4d8910:	80 bd 4a ff ff ff 01 	cmpb   $0x1,-0xb6(%ebp)
4d8917:	75 2f                	jne    0x4d8948
4d8919:	6a 00                	push   $0x0
4d891b:	6a 01                	push   $0x1
4d891d:	8b c6                	mov    %esi,%eax
4d891f:	8b 10                	mov    (%eax),%edx
4d8921:	ff 52 0c             	call   *0xc(%edx)
4d8924:	8b c8                	mov    %eax,%ecx
4d8926:	8b 55 d8             	mov    -0x28(%ebp),%edx
4d8929:	8b 45 dc             	mov    -0x24(%ebp),%eax
4d892c:	e8 b3 fa ff ff       	call   0x4d83e4
4d8931:	50                   	push   %eax
4d8932:	8b 4d dc             	mov    -0x24(%ebp),%ecx
4d8935:	8b 55 08             	mov    0x8(%ebp),%edx
4d8938:	8b 52 28             	mov    0x28(%edx),%edx
4d893b:	8b 45 fc             	mov    -0x4(%ebp),%eax
4d893e:	e8 b9 d5 11 00       	call   0x5f5efc
4d8943:	e9 3f 01 00 00       	jmp    0x4d8a87
4d8948:	0f b7 45 8a          	movzwl -0x76(%ebp),%eax
4d894c:	50                   	push   %eax
4d894d:	8b 4d d8             	mov    -0x28(%ebp),%ecx
4d8950:	8b 55 08             	mov    0x8(%ebp),%edx
4d8953:	8b 52 28             	mov    0x28(%edx),%edx
4d8956:	8b 45 fc             	mov    -0x4(%ebp),%eax
4d8959:	e8 9e d5 11 00       	call   0x5f5efc
4d895e:	e9 24 01 00 00       	jmp    0x4d8a87
4d8963:	33 ff                	xor    %edi,%edi
4d8965:	33 c0                	xor    %eax,%eax
4d8967:	89 45 e0             	mov    %eax,-0x20(%ebp)
4d896a:	eb 5e                	jmp    0x4d89ca
4d896c:	8d 04 7f             	lea    (%edi,%edi,2),%eax
4d896f:	8b 55 e8             	mov    -0x18(%ebp),%edx
4d8972:	8a 4c 02 02          	mov    0x2(%edx,%eax,1),%cl
4d8976:	c1 e1 10             	shl    $0x10,%ecx
4d8979:	66 8b 0c 02          	mov    (%edx,%eax,1),%cx
4d897d:	51                   	push   %ecx
4d897e:	8b 45 f8             	mov    -0x8(%ebp),%eax
4d8981:	e8 1a 72 06 00       	call   0x53fba0
4d8986:	c1 e0 04             	shl    $0x4,%eax
4d8989:	8b 55 d8             	mov    -0x28(%ebp),%edx
4d898c:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4d898f:	88 04 0a             	mov    %al,(%edx,%ecx,1)
4d8992:	47                   	inc    %edi
4d8993:	8b c6                	mov    %esi,%eax
4d8995:	8b 10                	mov    (%eax),%edx
4d8997:	ff 52 0c             	call   *0xc(%edx)
4d899a:	3b f8                	cmp    %eax,%edi
4d899c:	75 05                	jne    0x4d89a3
4d899e:	ff 45 e0             	incl   -0x20(%ebp)
4d89a1:	eb 32                	jmp    0x4d89d5
4d89a3:	8d 04 7f             	lea    (%edi,%edi,2),%eax
4d89a6:	8b 55 e8             	mov    -0x18(%ebp),%edx
4d89a9:	8a 4c 02 02          	mov    0x2(%edx,%eax,1),%cl
4d89ad:	c1 e1 10             	shl    $0x10,%ecx
4d89b0:	66 8b 0c 02          	mov    (%edx,%eax,1),%cx
4d89b4:	51                   	push   %ecx
4d89b5:	8b 45 f8             	mov    -0x8(%ebp),%eax
4d89b8:	e8 e3 71 06 00       	call   0x53fba0
4d89bd:	8b 55 d8             	mov    -0x28(%ebp),%edx
4d89c0:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4d89c3:	08 04 0a             	or     %al,(%edx,%ecx,1)
4d89c6:	47                   	inc    %edi
4d89c7:	ff 45 e0             	incl   -0x20(%ebp)
4d89ca:	8b c6                	mov    %esi,%eax
4d89cc:	8b 10                	mov    (%eax),%edx
4d89ce:	ff 52 0c             	call   *0xc(%edx)
4d89d1:	3b f8                	cmp    %eax,%edi
4d89d3:	7c 97                	jl     0x4d896c
4d89d5:	80 bd 4a ff ff ff 01 	cmpb   $0x1,-0xb6(%ebp)
4d89dc:	75 29                	jne    0x4d8a07
4d89de:	6a 00                	push   $0x0
4d89e0:	6a 01                	push   $0x1
4d89e2:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4d89e5:	8b 55 d8             	mov    -0x28(%ebp),%edx
4d89e8:	8b 45 dc             	mov    -0x24(%ebp),%eax
4d89eb:	e8 f4 f9 ff ff       	call   0x4d83e4
4d89f0:	50                   	push   %eax
4d89f1:	8b 4d dc             	mov    -0x24(%ebp),%ecx
4d89f4:	8b 55 08             	mov    0x8(%ebp),%edx
4d89f7:	8b 52 28             	mov    0x28(%edx),%edx
4d89fa:	8b 45 fc             	mov    -0x4(%ebp),%eax
4d89fd:	e8 fa d4 11 00       	call   0x5f5efc
4d8a02:	e9 80 00 00 00       	jmp    0x4d8a87
4d8a07:	0f b7 45 8a          	movzwl -0x76(%ebp),%eax
4d8a0b:	50                   	push   %eax
4d8a0c:	8b 4d d8             	mov    -0x28(%ebp),%ecx
4d8a0f:	8b 55 08             	mov    0x8(%ebp),%edx
4d8a12:	8b 52 28             	mov    0x28(%edx),%edx
4d8a15:	8b 45 fc             	mov    -0x4(%ebp),%eax
4d8a18:	e8 df d4 11 00       	call   0x5f5efc
4d8a1d:	eb 68                	jmp    0x4d8a87
4d8a1f:	8b c6                	mov    %esi,%eax
4d8a21:	8b 10                	mov    (%eax),%edx
4d8a23:	ff 52 0c             	call   *0xc(%edx)
4d8a26:	8b f8                	mov    %eax,%edi
4d8a28:	c1 ef 03             	shr    $0x3,%edi
4d8a2b:	8b c6                	mov    %esi,%eax
4d8a2d:	8b 10                	mov    (%eax),%edx
4d8a2f:	ff 52 0c             	call   *0xc(%edx)
4d8a32:	25 07 00 00 80       	and    $0x80000007,%eax
4d8a37:	79 05                	jns    0x4d8a3e
4d8a39:	48                   	dec    %eax
4d8a3a:	83 c8 f8             	or     $0xfffffff8,%eax
4d8a3d:	40                   	inc    %eax
4d8a3e:	85 c0                	test   %eax,%eax
4d8a40:	74 01                	je     0x4d8a43
4d8a42:	47                   	inc    %edi
4d8a43:	80 bd 4a ff ff ff 01 	cmpb   $0x1,-0xb6(%ebp)
4d8a4a:	75 25                	jne    0x4d8a71
4d8a4c:	6a 00                	push   $0x0
4d8a4e:	6a 01                	push   $0x1
4d8a50:	8b cf                	mov    %edi,%ecx
4d8a52:	8b 55 e8             	mov    -0x18(%ebp),%edx
4d8a55:	8b 45 dc             	mov    -0x24(%ebp),%eax
4d8a58:	e8 87 f9 ff ff       	call   0x4d83e4
4d8a5d:	50                   	push   %eax
4d8a5e:	8b 4d dc             	mov    -0x24(%ebp),%ecx
4d8a61:	8b 55 08             	mov    0x8(%ebp),%edx
4d8a64:	8b 52 28             	mov    0x28(%edx),%edx
4d8a67:	8b 45 fc             	mov    -0x4(%ebp),%eax
4d8a6a:	e8 8d d4 11 00       	call   0x5f5efc
4d8a6f:	eb 16                	jmp    0x4d8a87
4d8a71:	0f b7 45 8a          	movzwl -0x76(%ebp),%eax
4d8a75:	50                   	push   %eax
4d8a76:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4d8a79:	8b 55 08             	mov    0x8(%ebp),%edx
4d8a7c:	8b 52 28             	mov    0x28(%edx),%edx
4d8a7f:	8b 45 fc             	mov    -0x4(%ebp),%eax
4d8a82:	e8 75 d4 11 00       	call   0x5f5efc
4d8a87:	ff 45 e4             	incl   -0x1c(%ebp)
4d8a8a:	ff 4d c8             	decl   -0x38(%ebp)
4d8a8d:	0f 85 7b fd ff ff    	jne    0x4d880e
4d8a93:	8b 45 dc             	mov    -0x24(%ebp),%eax
4d8a96:	e8 31 9d f2 ff       	call   0x4027cc
4d8a9b:	8b 45 d8             	mov    -0x28(%ebp),%eax
4d8a9e:	e8 29 9d f2 ff       	call   0x4027cc
4d8aa3:	83 7d f4 08          	cmpl   $0x8,-0xc(%ebp)
4d8aa7:	75 38                	jne    0x4d8ae1
4d8aa9:	8b 45 08             	mov    0x8(%ebp),%eax
4d8aac:	8b 40 28             	mov    0x28(%eax),%eax
4d8aaf:	80 38 00             	cmpb   $0x0,(%eax)
4d8ab2:	75 2d                	jne    0x4d8ae1
4d8ab4:	c6 45 cf 0c          	movb   $0xc,-0x31(%ebp)
4d8ab8:	8d 55 cf             	lea    -0x31(%ebp),%edx
4d8abb:	b9 01 00 00 00       	mov    $0x1,%ecx
4d8ac0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4d8ac3:	8b 18                	mov    (%eax),%ebx
4d8ac5:	ff 53 0c             	call   *0xc(%ebx)
4d8ac8:	68 00 03 00 00       	push   $0x300
4d8acd:	8d 8d 48 fc ff ff    	lea    -0x3b8(%ebp),%ecx
4d8ad3:	8b 55 08             	mov    0x8(%ebp),%edx
4d8ad6:	8b 52 28             	mov    0x28(%edx),%edx
4d8ad9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4d8adc:	e8 1b d4 11 00       	call   0x5f5efc
4d8ae1:	80 7d f3 00          	cmpb   $0x0,-0xd(%ebp)
4d8ae5:	74 07                	je     0x4d8aee
4d8ae7:	8b c6                	mov    %esi,%eax
4d8ae9:	e8 8a af f2 ff       	call   0x403a78
4d8aee:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
4d8af2:	74 08                	je     0x4d8afc
4d8af4:	8b 45 f8             	mov    -0x8(%ebp),%eax
4d8af7:	e8 7c af f2 ff       	call   0x403a78
4d8afc:	5f                   	pop    %edi
4d8afd:	5e                   	pop    %esi
4d8afe:	5b                   	pop    %ebx
4d8aff:	8b e5                	mov    %ebp,%esp
4d8b01:	5d                   	pop    %ebp
4d8b02:	c2 04 00             	ret    $0x4
4d8b05:	00 00                	add    %al,(%eax)
4d8b07:	00 00                	add    %al,(%eax)
4d8b09:	00 c8                	add    %cl,%al
4d8b0b:	42                   	inc    %edx
4d8b0c:	53                   	push   %ebx
4d8b0d:	56                   	push   %esi
4d8b0e:	57                   	push   %edi
4d8b0f:	55                   	push   %ebp
4d8b10:	8b da                	mov    %edx,%ebx
4d8b12:	8b f8                	mov    %eax,%edi
4d8b14:	b8 00 10 00 00       	mov    $0x1000,%eax
4d8b19:	e8 8e 9c f2 ff       	call   0x4027ac
4d8b1e:	8b f0                	mov    %eax,%esi
4d8b20:	33 c0                	xor    %eax,%eax
4d8b22:	89 03                	mov    %eax,(%ebx)
4d8b24:	eb 1b                	jmp    0x4d8b41
4d8b26:	8b 03                	mov    (%ebx),%eax
4d8b28:	8d 14 86             	lea    (%esi,%eax,4),%edx
4d8b2b:	b9 04 00 00 00       	mov    $0x4,%ecx
4d8b30:	8b c7                	mov    %edi,%eax
4d8b32:	8b 28                	mov    (%eax),%ebp
4d8b34:	ff 55 08             	call   *0x8(%ebp)
4d8b37:	8b 03                	mov    (%ebx),%eax
4d8b39:	83 3c 86 00          	cmpl   $0x0,(%esi,%eax,4)
4d8b3d:	74 0a                	je     0x4d8b49
4d8b3f:	ff 03                	incl   (%ebx)
4d8b41:	81 3b 00 04 00 00    	cmpl   $0x400,(%ebx)
4d8b47:	7c dd                	jl     0x4d8b26
4d8b49:	8b c6                	mov    %esi,%eax
4d8b4b:	5d                   	pop    %ebp
4d8b4c:	5f                   	pop    %edi
4d8b4d:	5e                   	pop    %esi
4d8b4e:	5b                   	pop    %ebx
4d8b4f:	c3                   	ret
4d8b50:	53                   	push   %ebx
4d8b51:	56                   	push   %esi
4d8b52:	57                   	push   %edi
4d8b53:	55                   	push   %ebp
4d8b54:	83 c4 e8             	add    $0xffffffe8,%esp
4d8b57:	8b f0                	mov    %eax,%esi
4d8b59:	8b c6                	mov    %esi,%eax
4d8b5b:	e8 58 5b f4 ff       	call   0x41e6b8
4d8b60:	89 04 24             	mov    %eax,(%esp)
4d8b63:	89 54 24 04          	mov    %edx,0x4(%esp)
4d8b67:	8d 54 24 08          	lea    0x8(%esp),%edx
4d8b6b:	b9 04 00 00 00       	mov    $0x4,%ecx
4d8b70:	8b c6                	mov    %esi,%eax
4d8b72:	8b 18                	mov    (%eax),%ebx
4d8b74:	ff 53 08             	call   *0x8(%ebx)
4d8b77:	81 7c 24 08 b1 68 de 	cmpl   $0x3ade68b1,0x8(%esp)
4d8b7e:	3a
4d8b7f:	0f 94 c3             	sete   %bl
4d8b82:	84 db                	test   %bl,%bl
4d8b84:	74 4c                	je     0x4d8bd2
4d8b86:	8b c6                	mov    %esi,%eax
4d8b88:	e8 5f 5b f4 ff       	call   0x41e6ec
4d8b8d:	89 44 24 10          	mov    %eax,0x10(%esp)
4d8b91:	89 54 24 14          	mov    %edx,0x14(%esp)
4d8b95:	8d 54 24 0c          	lea    0xc(%esp),%edx
4d8b99:	8b c6                	mov    %esi,%eax
4d8b9b:	e8 6c ff ff ff       	call   0x4d8b0c
4d8ba0:	8b f8                	mov    %eax,%edi
4d8ba2:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4d8ba6:	49                   	dec    %ecx
4d8ba7:	85 c9                	test   %ecx,%ecx
4d8ba9:	7c 20                	jl     0x4d8bcb
4d8bab:	41                   	inc    %ecx
4d8bac:	33 ed                	xor    %ebp,%ebp
4d8bae:	8b 04 af             	mov    (%edi,%ebp,4),%eax
4d8bb1:	33 d2                	xor    %edx,%edx
4d8bb3:	3b 54 24 14          	cmp    0x14(%esp),%edx
4d8bb7:	75 08                	jne    0x4d8bc1
4d8bb9:	3b 44 24 10          	cmp    0x10(%esp),%eax
4d8bbd:	72 08                	jb     0x4d8bc7
4d8bbf:	eb 02                	jmp    0x4d8bc3
4d8bc1:	7c 04                	jl     0x4d8bc7
4d8bc3:	33 db                	xor    %ebx,%ebx
4d8bc5:	eb 04                	jmp    0x4d8bcb
4d8bc7:	45                   	inc    %ebp
4d8bc8:	49                   	dec    %ecx
4d8bc9:	75 e3                	jne    0x4d8bae
4d8bcb:	8b c7                	mov    %edi,%eax
4d8bcd:	e8 fa 9b f2 ff       	call   0x4027cc
4d8bd2:	ff 74 24 04          	push   0x4(%esp)
4d8bd6:	ff 74 24 04          	push   0x4(%esp)
4d8bda:	8b c6                	mov    %esi,%eax
4d8bdc:	e8 f7 5a f4 ff       	call   0x41e6d8
4d8be1:	8b c3                	mov    %ebx,%eax
4d8be3:	83 c4 18             	add    $0x18,%esp
4d8be6:	5d                   	pop    %ebp
4d8be7:	5f                   	pop    %edi
4d8be8:	5e                   	pop    %esi
4d8be9:	5b                   	pop    %ebx
4d8bea:	c3                   	ret
4d8beb:	90                   	nop
4d8bec:	53                   	push   %ebx
4d8bed:	56                   	push   %esi
4d8bee:	83 c4 ec             	add    $0xffffffec,%esp
4d8bf1:	8b d8                	mov    %eax,%ebx
4d8bf3:	8b c3                	mov    %ebx,%eax
4d8bf5:	e8 be 5a f4 ff       	call   0x41e6b8
4d8bfa:	89 44 24 08          	mov    %eax,0x8(%esp)
4d8bfe:	89 54 24 0c          	mov    %edx,0xc(%esp)
4d8c02:	8d 54 24 10          	lea    0x10(%esp),%edx
4d8c06:	b9 04 00 00 00       	mov    $0x4,%ecx
4d8c0b:	8b c3                	mov    %ebx,%eax
4d8c0d:	8b 30                	mov    (%eax),%esi
4d8c0f:	ff 56 08             	call   *0x8(%esi)
4d8c12:	8b d4                	mov    %esp,%edx
4d8c14:	8b c3                	mov    %ebx,%eax
4d8c16:	e8 f1 fe ff ff       	call   0x4d8b0c
4d8c1b:	e8 ac 9b f2 ff       	call   0x4027cc
4d8c20:	ff 74 24 0c          	push   0xc(%esp)
4d8c24:	ff 74 24 0c          	push   0xc(%esp)
4d8c28:	8b c3                	mov    %ebx,%eax
4d8c2a:	e8 a9 5a f4 ff       	call   0x41e6d8
4d8c2f:	8b 04 24             	mov    (%esp),%eax
4d8c32:	83 c4 14             	add    $0x14,%esp
4d8c35:	5e                   	pop    %esi