44390c:	55                   	push   %ebp
44390d:	8b ec                	mov    %esp,%ebp
44390f:	81 ec 28 01 00 00    	sub    $0x128,%esp
443915:	53                   	push   %ebx
443916:	56                   	push   %esi
443917:	57                   	push   %edi
443918:	8b 7d 08             	mov    0x8(%ebp),%edi
44391b:	8b f1                	mov    %ecx,%esi
44391d:	0f b7 47 08          	movzwl 0x8(%edi),%eax
443921:	83 7e 20 00          	cmpl   $0x0,0x20(%esi)
443925:	8a 1f                	mov    (%edi),%bl
443927:	8a 7f 07             	mov    0x7(%edi),%bh
44392a:	88 5d f8             	mov    %bl,-0x8(%ebp)
44392d:	88 7d fc             	mov    %bh,-0x4(%ebp)
443930:	89 45 f4             	mov    %eax,-0xc(%ebp)
443933:	0f 84 be 00 00 00    	je     0x4439f7
443939:	80 fb 14             	cmp    $0x14,%bl
44393c:	0f 84 b5 00 00 00    	je     0x4439f7
443942:	80 fb 90             	cmp    $0x90,%bl
443945:	0f 84 ac 00 00 00    	je     0x4439f7
44394b:	80 fb 91             	cmp    $0x91,%bl
44394e:	0f 84 a3 00 00 00    	je     0x4439f7
443954:	8b cf                	mov    %edi,%ecx
443956:	e8 af f4 ff ff       	call   0x442e0a
44395b:	84 c0                	test   %al,%al
44395d:	74 7f                	je     0x4439de
44395f:	8d 85 d8 fe ff ff    	lea    -0x128(%ebp),%eax
443965:	50                   	push   %eax
443966:	ff 15 e0 d5 48 00    	call   *0x48d5e0
44396c:	85 c0                	test   %eax,%eax
44396e:	74 18                	je     0x443988
443970:	0f b6 c3             	movzbl %bl,%eax
443973:	80 8c 05 d8 fe ff ff 	orb    $0x80,-0x128(%ebp,%eax,1)
44397a:	80
44397b:	8d 85 d8 fe ff ff    	lea    -0x128(%ebp),%eax
443981:	50                   	push   %eax
443982:	ff 15 dc d5 48 00    	call   *0x48d5dc
443988:	8b 4d 08             	mov    0x8(%ebp),%ecx
44398b:	0f b6 ff             	movzbl %bh,%edi
44398e:	c1 e7 10             	shl    $0x10,%edi
443991:	83 cf 01             	or     $0x1,%edi
443994:	e8 b1 f3 ff ff       	call   0x442d4a
443999:	3c 01                	cmp    $0x1,%al
44399b:	75 06                	jne    0x4439a3
44399d:	81 cf 00 00 00 01    	or     $0x1000000,%edi
4439a3:	80 7e 17 00          	cmpb   $0x0,0x17(%esi)
4439a7:	75 0b                	jne    0x4439b4
4439a9:	80 7e 1d 00          	cmpb   $0x0,0x1d(%esi)
4439ad:	75 05                	jne    0x4439b4
4439af:	80 fb 12             	cmp    $0x12,%bl
4439b2:	75 1e                	jne    0x4439d2
4439b4:	80 7e 16 00          	cmpb   $0x0,0x16(%esi)
4439b8:	75 18                	jne    0x4439d2
4439ba:	80 7e 1c 00          	cmpb   $0x0,0x1c(%esi)
4439be:	75 12                	jne    0x4439d2
4439c0:	81 cf 00 00 00 20    	or     $0x20000000,%edi
4439c6:	0f b6 c3             	movzbl %bl,%eax
4439c9:	57                   	push   %edi
4439ca:	50                   	push   %eax
4439cb:	68 04 01 00 00       	push   $0x104
4439d0:	eb 1a                	jmp    0x4439ec
4439d2:	0f b6 c3             	movzbl %bl,%eax
4439d5:	57                   	push   %edi
4439d6:	50                   	push   %eax
4439d7:	68 00 01 00 00       	push   $0x100
4439dc:	eb 0e                	jmp    0x4439ec
4439de:	8b 45 f4             	mov    -0xc(%ebp),%eax
4439e1:	0f b7 c0             	movzwl %ax,%eax
4439e4:	6a 01                	push   $0x1
4439e6:	50                   	push   %eax
4439e7:	68 02 01 00 00       	push   $0x102
4439ec:	ff 76 20             	push   0x20(%esi)
4439ef:	ff 15 78 d6 48 00    	call   *0x48d678
4439f5:	eb 5c                	jmp    0x443a53
4439f7:	8b cf                	mov    %edi,%ecx
4439f9:	e8 0c f4 ff ff       	call   0x442e0a
4439fe:	84 c0                	test   %al,%al
443a00:	74 21                	je     0x443a23
443a02:	8b cf                	mov    %edi,%ecx
443a04:	e8 41 f3 ff ff       	call   0x442d4a
443a09:	51                   	push   %ecx
443a0a:	8b ce                	mov    %esi,%ecx
443a0c:	3c 01                	cmp    $0x1,%al
443a0e:	75 04                	jne    0x443a14
443a10:	6a 01                	push   $0x1
443a12:	eb 02                	jmp    0x443a16
443a14:	6a 00                	push   $0x0
443a16:	ff 75 fc             	push   -0x4(%ebp)
443a19:	ff 75 f8             	push   -0x8(%ebp)
443a1c:	e8 fb 06 00 00       	call   0x44411c
443a21:	eb 30                	jmp    0x443a53
443a23:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
443a27:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
443a2b:	33 c0                	xor    %eax,%eax
443a2d:	66 89 45 dc          	mov    %ax,-0x24(%ebp)
443a31:	0f b7 47 08          	movzwl 0x8(%edi),%eax
443a35:	66 89 45 de          	mov    %ax,-0x22(%ebp)
443a39:	6a 1c                	push   $0x1c
443a3b:	33 c9                	xor    %ecx,%ecx
443a3d:	8d 45 d8             	lea    -0x28(%ebp),%eax
443a40:	41                   	inc    %ecx
443a41:	50                   	push   %eax
443a42:	51                   	push   %ecx
443a43:	89 4d d8             	mov    %ecx,-0x28(%ebp)
443a46:	c7 45 e0 04 00 00 00 	movl   $0x4,-0x20(%ebp)
443a4d:	ff 15 d4 d5 48 00    	call   *0x48d5d4
443a53:	8b ce                	mov    %esi,%ecx
443a55:	e8 c2 f0 ff ff       	call   0x442b1c
443a5a:	5f                   	pop    %edi
443a5b:	5e                   	pop    %esi
443a5c:	5b                   	pop    %ebx
443a5d:	c9                   	leave
443a5e:	c2 04 00             	ret    $0x4
443a61:	55                   	push   %ebp
443a62:	8b ec                	mov    %esp,%ebp
443a64:	81 ec 24 01 00 00    	sub    $0x124,%esp
443a6a:	53                   	push   %ebx
443a6b:	56                   	push   %esi
443a6c:	57                   	push   %edi
443a6d:	8b 7d 08             	mov    0x8(%ebp),%edi
443a70:	8b f1                	mov    %ecx,%esi
443a72:	8a 1f                	mov    (%edi),%bl
443a74:	83 7e 20 00          	cmpl   $0x0,0x20(%esi)
443a78:	8a 7f 07             	mov    0x7(%edi),%bh
443a7b:	88 5d fc             	mov    %bl,-0x4(%ebp)
443a7e:	88 7d f8             	mov    %bh,-0x8(%ebp)
443a81:	0f 84 b5 00 00 00    	je     0x443b3c
443a87:	80 fb 14             	cmp    $0x14,%bl
443a8a:	0f 84 ac 00 00 00    	je     0x443b3c
443a90:	80 fb 90             	cmp    $0x90,%bl
443a93:	0f 84 a3 00 00 00    	je     0x443b3c
443a99:	80 fb 91             	cmp    $0x91,%bl
443a9c:	0f 84 9a 00 00 00    	je     0x443b3c
443aa2:	8b cf                	mov    %edi,%ecx
443aa4:	e8 61 f3 ff ff       	call   0x442e0a
443aa9:	84 c0                	test   %al,%al
443aab:	0f 84 e7 00 00 00    	je     0x443b98
443ab1:	8d 85 dc fe ff ff    	lea    -0x124(%ebp),%eax
443ab7:	50                   	push   %eax
443ab8:	ff 15 e0 d5 48 00    	call   *0x48d5e0
443abe:	85 c0                	test   %eax,%eax
443ac0:	74 18                	je     0x443ada
443ac2:	0f b6 c3             	movzbl %bl,%eax
443ac5:	80 b4 05 dc fe ff ff 	xorb   $0x80,-0x124(%ebp,%eax,1)
443acc:	80
443acd:	8d 85 dc fe ff ff    	lea    -0x124(%ebp),%eax
443ad3:	50                   	push   %eax
443ad4:	ff 15 dc d5 48 00    	call   *0x48d5dc
443ada:	8b 4d 08             	mov    0x8(%ebp),%ecx
443add:	0f b6 ff             	movzbl %bh,%edi
443ae0:	c1 e7 10             	shl    $0x10,%edi
443ae3:	81 cf 01 00 00 c0    	or     $0xc0000001,%edi
443ae9:	e8 5c f2 ff ff       	call   0x442d4a
443aee:	3c 01                	cmp    $0x1,%al
443af0:	75 06                	jne    0x443af8
443af2:	81 cf 00 00 00 01    	or     $0x1000000,%edi
443af8:	80 7e 17 00          	cmpb   $0x0,0x17(%esi)
443afc:	75 0b                	jne    0x443b09
443afe:	80 7e 1d 00          	cmpb   $0x0,0x1d(%esi)
443b02:	75 05                	jne    0x443b09
443b04:	80 fb 12             	cmp    $0x12,%bl
443b07:	75 1e                	jne    0x443b27
443b09:	80 7e 16 00          	cmpb   $0x0,0x16(%esi)
443b0d:	75 18                	jne    0x443b27
443b0f:	80 7e 1c 00          	cmpb   $0x0,0x1c(%esi)
443b13:	75 12                	jne    0x443b27
443b15:	81 cf 00 00 00 20    	or     $0x20000000,%edi
443b1b:	0f b6 c3             	movzbl %bl,%eax
443b1e:	57                   	push   %edi
443b1f:	50                   	push   %eax
443b20:	68 05 01 00 00       	push   $0x105
443b25:	eb 0a                	jmp    0x443b31
443b27:	0f b6 c3             	movzbl %bl,%eax
443b2a:	57                   	push   %edi
443b2b:	50                   	push   %eax
443b2c:	68 01 01 00 00       	push   $0x101
443b31:	ff 76 20             	push   0x20(%esi)
443b34:	ff 15 78 d6 48 00    	call   *0x48d678
443b3a:	eb 5c                	jmp    0x443b98
443b3c:	8b cf                	mov    %edi,%ecx
443b3e:	e8 c7 f2 ff ff       	call   0x442e0a
443b43:	84 c0                	test   %al,%al
443b45:	74 21                	je     0x443b68
443b47:	8b cf                	mov    %edi,%ecx
443b49:	e8 fc f1 ff ff       	call   0x442d4a
443b4e:	51                   	push   %ecx
443b4f:	8b ce                	mov    %esi,%ecx
443b51:	3c 01                	cmp    $0x1,%al
443b53:	75 04                	jne    0x443b59
443b55:	6a 03                	push   $0x3
443b57:	eb 02                	jmp    0x443b5b
443b59:	6a 02                	push   $0x2
443b5b:	ff 75 f8             	push   -0x8(%ebp)
443b5e:	ff 75 fc             	push   -0x4(%ebp)
443b61:	e8 b6 05 00 00       	call   0x44411c
443b66:	eb 30                	jmp    0x443b98
443b68:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
443b6c:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
443b70:	33 c0                	xor    %eax,%eax
443b72:	66 89 45 e0          	mov    %ax,-0x20(%ebp)
443b76:	0f b7 47 08          	movzwl 0x8(%edi),%eax
443b7a:	66 89 45 e2          	mov    %ax,-0x1e(%ebp)
443b7e:	6a 1c                	push   $0x1c
443b80:	33 c9                	xor    %ecx,%ecx
443b82:	8d 45 dc             	lea    -0x24(%ebp),%eax
443b85:	41                   	inc    %ecx
443b86:	50                   	push   %eax
443b87:	51                   	push   %ecx
443b88:	89 4d dc             	mov    %ecx,-0x24(%ebp)
443b8b:	c7 45 e4 06 00 00 00 	movl   $0x6,-0x1c(%ebp)
443b92:	ff 15 d4 d5 48 00    	call   *0x48d5d4
443b98:	8b ce                	mov    %esi,%ecx
443b9a:	e8 64 ef ff ff       	call   0x442b03
443b9f:	5f                   	pop    %edi
443ba0:	5e                   	pop    %esi
443ba1:	5b                   	pop    %ebx
443ba2:	c9                   	leave
443ba3:	c2 04 00             	ret    $0x4
443ba6:	55                   	push   %ebp
443ba7:	8b ec                	mov    %esp,%ebp
443ba9:	56                   	push   %esi
443baa:	ff 75 08             	push   0x8(%ebp)
443bad:	8b f1                	mov    %ecx,%esi
443baf:	e8 58 fd ff ff       	call   0x44390c
443bb4:	ff 75 08             	push   0x8(%ebp)
443bb7:	8b ce                	mov    %esi,%ecx
443bb9:	e8 a3 fe ff ff       	call   0x443a61
443bbe:	5e                   	pop    %esi
443bbf:	5d                   	pop    %ebp
443bc0:	c2 04 00             	ret    $0x4
443bc3:	55                   	push   %ebp
443bc4:	8b ec                	mov    %esp,%ebp
443bc6:	81 ec 00 01 00 00    	sub    $0x100,%esp
443bcc:	56                   	push   %esi
443bcd:	8b 75 08             	mov    0x8(%ebp),%esi
443bd0:	57                   	push   %edi
443bd1:	80 3e 00             	cmpb   $0x0,(%esi)
443bd4:	8b f9                	mov    %ecx,%edi
443bd6:	75 1c                	jne    0x443bf4
443bd8:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
443bdc:	75 16                	jne    0x443bf4
443bde:	80 7e 02 00          	cmpb   $0x0,0x2(%esi)
443be2:	75 10                	jne    0x443bf4
443be4:	80 7e 03 00          	cmpb   $0x0,0x3(%esi)
443be8:	75 0a                	jne    0x443bf4
443bea:	80 7e 04 00          	cmpb   $0x0,0x4(%esi)
443bee:	0f 84 ae 01 00 00    	je     0x443da2
443bf4:	83 7f 20 00          	cmpl   $0x0,0x20(%edi)
443bf8:	53                   	push   %ebx
443bf9:	0f 84 2b 01 00 00    	je     0x443d2a
443bff:	ff 77 20             	push   0x20(%edi)
443c02:	ff 15 68 d6 48 00    	call   *0x48d668
443c08:	85 c0                	test   %eax,%eax
443c0a:	0f 84 1a 01 00 00    	je     0x443d2a
443c10:	8d 85 00 ff ff ff    	lea    -0x100(%ebp),%eax
443c16:	50                   	push   %eax
443c17:	ff 15 e0 d5 48 00    	call   *0x48d5e0
443c1d:	85 c0                	test   %eax,%eax
443c1f:	74 5d                	je     0x443c7e
443c21:	80 3e 00             	cmpb   $0x0,(%esi)
443c24:	8a 85 10 ff ff ff    	mov    -0xf0(%ebp),%al
443c2a:	b9 80 00 00 00       	mov    $0x80,%ecx
443c2f:	74 0b                	je     0x443c3c
443c31:	0a c1                	or     %cl,%al
443c33:	08 4d a0             	or     %cl,-0x60(%ebp)
443c36:	88 85 10 ff ff ff    	mov    %al,-0xf0(%ebp)
443c3c:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
443c40:	74 0b                	je     0x443c4d
443c42:	0a c1                	or     %cl,%al
443c44:	08 4d a1             	or     %cl,-0x5f(%ebp)
443c47:	88 85 10 ff ff ff    	mov    %al,-0xf0(%ebp)
443c4d:	80 7e 02 00          	cmpb   $0x0,0x2(%esi)
443c51:	74 06                	je     0x443c59
443c53:	08 8d 11 ff ff ff    	or     %cl,-0xef(%ebp)
443c59:	80 7e 03 00          	cmpb   $0x0,0x3(%esi)
443c5d:	74 06                	je     0x443c65
443c5f:	08 8d 12 ff ff ff    	or     %cl,-0xee(%ebp)
443c65:	80 7e 04 00          	cmpb   $0x0,0x4(%esi)
443c69:	74 06                	je     0x443c71
443c6b:	08 8d 5b ff ff ff    	or     %cl,-0xa5(%ebp)
443c71:	8d 85 00 ff ff ff    	lea    -0x100(%ebp),%eax
443c77:	50                   	push   %eax
443c78:	ff 15 dc d5 48 00    	call   *0x48d5dc
443c7e:	80 3e 00             	cmpb   $0x0,(%esi)
443c81:	8b 1d 78 d6 48 00    	mov    0x48d678,%ebx
443c87:	75 06                	jne    0x443c8f
443c89:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
443c8d:	74 17                	je     0x443ca6
443c8f:	0f b6 47 26          	movzbl 0x26(%edi),%eax
443c93:	c1 e0 10             	shl    $0x10,%eax
443c96:	83 c8 01             	or     $0x1,%eax
443c99:	50                   	push   %eax
443c9a:	6a 10                	push   $0x10
443c9c:	68 00 01 00 00       	push   $0x100
443ca1:	ff 77 20             	push   0x20(%edi)
443ca4:	ff d3                	call   *%ebx
443ca6:	80 7e 02 00          	cmpb   $0x0,0x2(%esi)
443caa:	74 17                	je     0x443cc3
443cac:	0f b6 47 24          	movzbl 0x24(%edi),%eax
443cb0:	c1 e0 10             	shl    $0x10,%eax
443cb3:	83 c8 01             	or     $0x1,%eax
443cb6:	50                   	push   %eax
443cb7:	6a 11                	push   $0x11
443cb9:	68 00 01 00 00       	push   $0x100
443cbe:	ff 77 20             	push   0x20(%edi)
443cc1:	ff d3                	call   *%ebx
443cc3:	8a 46 03             	mov    0x3(%esi),%al
443cc6:	84 c0                	test   %al,%al
443cc8:	74 3d                	je     0x443d07
443cca:	80 7e 02 00          	cmpb   $0x0,0x2(%esi)
443cce:	75 1c                	jne    0x443cec
443cd0:	80 7f 1c 00          	cmpb   $0x0,0x1c(%edi)
443cd4:	75 16                	jne    0x443cec
443cd6:	0f b6 47 25          	movzbl 0x25(%edi),%eax
443cda:	c1 e0 10             	shl    $0x10,%eax
443cdd:	0d 01 00 00 20       	or     $0x20000001,%eax
443ce2:	50                   	push   %eax
443ce3:	6a 12                	push   $0x12
443ce5:	68 04 01 00 00       	push   $0x104
443cea:	eb 16                	jmp    0x443d02
443cec:	84 c0                	test   %al,%al
443cee:	74 17                	je     0x443d07
443cf0:	0f b6 47 25          	movzbl 0x25(%edi),%eax
443cf4:	c1 e0 10             	shl    $0x10,%eax
443cf7:	83 c8 01             	or     $0x1,%eax
443cfa:	50                   	push   %eax
443cfb:	6a 12                	push   $0x12
443cfd:	68 00 01 00 00       	push   $0x100
443d02:	ff 77 20             	push   0x20(%edi)
443d05:	ff d3                	call   *%ebx
443d07:	80 7e 04 00          	cmpb   $0x0,0x4(%esi)
443d0b:	0f 84 89 00 00 00    	je     0x443d9a
443d11:	0f b6 47 29          	movzbl 0x29(%edi),%eax
443d15:	c1 e0 10             	shl    $0x10,%eax
443d18:	83 c8 01             	or     $0x1,%eax
443d1b:	50                   	push   %eax
443d1c:	6a 5b                	push   $0x5b
443d1e:	68 00 01 00 00       	push   $0x100
443d23:	ff 77 20             	push   0x20(%edi)
443d26:	ff d3                	call   *%ebx
443d28:	eb 70                	jmp    0x443d9a
443d2a:	33 db                	xor    %ebx,%ebx
443d2c:	38 1e                	cmp    %bl,(%esi)
443d2e:	74 13                	je     0x443d43
443d30:	0f b6 47 27          	movzbl 0x27(%edi),%eax
443d34:	51                   	push   %ecx
443d35:	53                   	push   %ebx
443d36:	50                   	push   %eax
443d37:	68 a0 00 00 00       	push   $0xa0
443d3c:	8b cf                	mov    %edi,%ecx