422c21:	8b 55 b0             	mov    -0x50(%ebp),%edx
422c24:	8b cb                	mov    %ebx,%ecx
422c26:	e8 33 16 00 00       	call   0x42425e
422c2b:	84 c0                	test   %al,%al
422c2d:	75 3e                	jne    0x422c6d
422c2f:	8b 75 b0             	mov    -0x50(%ebp),%esi
422c32:	8b 7d 9c             	mov    -0x64(%ebp),%edi
422c35:	80 7b 04 00          	cmpb   $0x0,0x4(%ebx)
422c39:	75 07                	jne    0x422c42
422c3b:	8b cb                	mov    %ebx,%ecx
422c3d:	e8 84 12 00 00       	call   0x423ec6
422c42:	8b 45 ac             	mov    -0x54(%ebp),%eax
422c45:	66 39 43 06          	cmp    %ax,0x6(%ebx)
422c49:	75 19                	jne    0x422c64
422c4b:	8b cb                	mov    %ebx,%ecx
422c4d:	c6 45 b7 01          	movb   $0x1,-0x49(%ebp)
422c51:	4f                   	dec    %edi
422c52:	e8 fb 0e 00 00       	call   0x423b52
422c57:	8b d6                	mov    %esi,%edx
422c59:	8b cb                	mov    %ebx,%ecx
422c5b:	e8 fe 15 00 00       	call   0x42425e
422c60:	84 c0                	test   %al,%al
422c62:	74 d1                	je     0x422c35
422c64:	8b 75 a8             	mov    -0x58(%ebp),%esi
422c67:	89 7d 9c             	mov    %edi,-0x64(%ebp)
422c6a:	8b 7d a4             	mov    -0x5c(%ebp),%edi
422c6d:	8b 45 9c             	mov    -0x64(%ebp),%eax
422c70:	85 c0                	test   %eax,%eax
422c72:	79 6d                	jns    0x422ce1
422c74:	c6 07 30             	movb   $0x30,(%edi)
422c77:	47                   	inc    %edi
422c78:	40                   	inc    %eax
422c79:	89 45 9c             	mov    %eax,-0x64(%ebp)
422c7c:	eb 63                	jmp    0x422ce1
422c7e:	80 7b 04 00          	cmpb   $0x0,0x4(%ebx)
422c82:	75 07                	jne    0x422c8b
422c84:	8b cb                	mov    %ebx,%ecx
422c86:	e8 3b 12 00 00       	call   0x423ec6
422c8b:	0f b7 43 06          	movzwl 0x6(%ebx),%eax
422c8f:	8b 4d ac             	mov    -0x54(%ebp),%ecx
422c92:	66 3b c8             	cmp    %ax,%cx
422c95:	77 58                	ja     0x422cef
422c97:	80 7b 04 00          	cmpb   $0x0,0x4(%ebx)
422c9b:	75 0e                	jne    0x422cab
422c9d:	8b cb                	mov    %ebx,%ecx
422c9f:	e8 22 12 00 00       	call   0x423ec6
422ca4:	0f b7 43 06          	movzwl 0x6(%ebx),%eax
422ca8:	8b 4d ac             	mov    -0x54(%ebp),%ecx
422cab:	0f b7 c9             	movzwl %cx,%ecx
422cae:	83 c1 09             	add    $0x9,%ecx
422cb1:	0f b7 c0             	movzwl %ax,%eax
422cb4:	3b c1                	cmp    %ecx,%eax
422cb6:	77 37                	ja     0x422cef
422cb8:	83 fe 24             	cmp    $0x24,%esi
422cbb:	7d 19                	jge    0x422cd6
422cbd:	80 7b 04 00          	cmpb   $0x0,0x4(%ebx)
422cc1:	75 07                	jne    0x422cca
422cc3:	8b cb                	mov    %ebx,%ecx
422cc5:	e8 fc 11 00 00       	call   0x423ec6
422cca:	8a 43 06             	mov    0x6(%ebx),%al
422ccd:	2a 45 ac             	sub    -0x54(%ebp),%al
422cd0:	04 30                	add    $0x30,%al
422cd2:	88 07                	mov    %al,(%edi)
422cd4:	47                   	inc    %edi
422cd5:	46                   	inc    %esi
422cd6:	8b cb                	mov    %ebx,%ecx
422cd8:	c6 45 b7 01          	movb   $0x1,-0x49(%ebp)
422cdc:	e8 71 0e 00 00       	call   0x423b52
422ce1:	8b 55 b0             	mov    -0x50(%ebp),%edx
422ce4:	8b cb                	mov    %ebx,%ecx
422ce6:	e8 73 15 00 00       	call   0x42425e
422ceb:	84 c0                	test   %al,%al
422ced:	74 8f                	je     0x422c7e
422cef:	8a 45 b7             	mov    -0x49(%ebp),%al
422cf2:	84 c0                	test   %al,%al
422cf4:	0f 84 8e 01 00 00    	je     0x422e88
422cfa:	8b 55 b0             	mov    -0x50(%ebp),%edx
422cfd:	8b cb                	mov    %ebx,%ecx
422cff:	e8 5a 15 00 00       	call   0x42425e
422d04:	84 c0                	test   %al,%al
422d06:	0f 85 79 01 00 00    	jne    0x422e85
422d0c:	38 43 04             	cmp    %al,0x4(%ebx)
422d0f:	75 07                	jne    0x422d18
422d11:	8b cb                	mov    %ebx,%ecx
422d13:	e8 ae 11 00 00       	call   0x423ec6
422d18:	ff 75 98             	push   -0x68(%ebp)
422d1b:	0f b7 73 06          	movzwl 0x6(%ebx),%esi
422d1f:	b1 65                	mov    $0x65,%cl
422d21:	e8 e5 1a 00 00       	call   0x42480b
422d26:	59                   	pop    %ecx
422d27:	66 3b f0             	cmp    %ax,%si
422d2a:	74 25                	je     0x422d51
422d2c:	80 7b 04 00          	cmpb   $0x0,0x4(%ebx)
422d30:	75 07                	jne    0x422d39
422d32:	8b cb                	mov    %ebx,%ecx
422d34:	e8 8d 11 00 00       	call   0x423ec6
422d39:	ff 75 98             	push   -0x68(%ebp)
422d3c:	0f b7 73 06          	movzwl 0x6(%ebx),%esi
422d40:	b1 45                	mov    $0x45,%cl
422d42:	e8 c4 1a 00 00       	call   0x42480b
422d47:	59                   	pop    %ecx
422d48:	66 3b f0             	cmp    %ax,%si
422d4b:	0f 85 34 01 00 00    	jne    0x422e85
422d51:	c6 07 65             	movb   $0x65,(%edi)
422d54:	8b cb                	mov    %ebx,%ecx
422d56:	47                   	inc    %edi
422d57:	e8 f6 0d 00 00       	call   0x423b52
422d5c:	8b 55 b0             	mov    -0x50(%ebp),%edx
422d5f:	33 f6                	xor    %esi,%esi
422d61:	8b cb                	mov    %ebx,%ecx
422d63:	c6 45 b7 00          	movb   $0x0,-0x49(%ebp)
422d67:	89 75 a0             	mov    %esi,-0x60(%ebp)
422d6a:	e8 ef 14 00 00       	call   0x42425e
422d6f:	84 c0                	test   %al,%al
422d71:	75 54                	jne    0x422dc7
422d73:	38 43 04             	cmp    %al,0x4(%ebx)
422d76:	75 07                	jne    0x422d7f
422d78:	8b cb                	mov    %ebx,%ecx
422d7a:	e8 47 11 00 00       	call   0x423ec6
422d7f:	ff 75 98             	push   -0x68(%ebp)
422d82:	0f b7 73 06          	movzwl 0x6(%ebx),%esi
422d86:	b1 2b                	mov    $0x2b,%cl
422d88:	e8 7e 1a 00 00       	call   0x42480b
422d8d:	59                   	pop    %ecx
422d8e:	66 3b f0             	cmp    %ax,%si
422d91:	75 05                	jne    0x422d98
422d93:	c6 07 2b             	movb   $0x2b,(%edi)
422d96:	eb 24                	jmp    0x422dbc
422d98:	80 7b 04 00          	cmpb   $0x0,0x4(%ebx)
422d9c:	75 07                	jne    0x422da5
422d9e:	8b cb                	mov    %ebx,%ecx
422da0:	e8 21 11 00 00       	call   0x423ec6
422da5:	ff 75 98             	push   -0x68(%ebp)
422da8:	0f b7 73 06          	movzwl 0x6(%ebx),%esi
422dac:	b1 2d                	mov    $0x2d,%cl
422dae:	e8 58 1a 00 00       	call   0x42480b
422db3:	59                   	pop    %ecx
422db4:	66 3b f0             	cmp    %ax,%si
422db7:	75 0b                	jne    0x422dc4
422db9:	c6 07 2d             	movb   $0x2d,(%edi)
422dbc:	8b cb                	mov    %ebx,%ecx
422dbe:	47                   	inc    %edi
422dbf:	e8 8e 0d 00 00       	call   0x423b52
422dc4:	8b 75 a0             	mov    -0x60(%ebp),%esi
422dc7:	8b 55 b0             	mov    -0x50(%ebp),%edx
422dca:	8b cb                	mov    %ebx,%ecx
422dcc:	e8 8d 14 00 00       	call   0x42425e
422dd1:	84 c0                	test   %al,%al
422dd3:	75 3e                	jne    0x422e13
422dd5:	8b 75 b0             	mov    -0x50(%ebp),%esi
422dd8:	80 7b 04 00          	cmpb   $0x0,0x4(%ebx)
422ddc:	75 07                	jne    0x422de5
422dde:	8b cb                	mov    %ebx,%ecx
422de0:	e8 e1 10 00 00       	call   0x423ec6
422de5:	8b 45 ac             	mov    -0x54(%ebp),%eax
422de8:	66 39 43 06          	cmp    %ax,0x6(%ebx)
422dec:	75 18                	jne    0x422e06
422dee:	8b cb                	mov    %ebx,%ecx
422df0:	c6 45 b7 01          	movb   $0x1,-0x49(%ebp)
422df4:	e8 59 0d 00 00       	call   0x423b52
422df9:	8b d6                	mov    %esi,%edx
422dfb:	8b cb                	mov    %ebx,%ecx
422dfd:	e8 5c 14 00 00       	call   0x42425e
422e02:	84 c0                	test   %al,%al
422e04:	74 d2                	je     0x422dd8
422e06:	80 7d b7 00          	cmpb   $0x0,-0x49(%ebp)
422e0a:	8b 75 a0             	mov    -0x60(%ebp),%esi
422e0d:	74 04                	je     0x422e13
422e0f:	c6 07 30             	movb   $0x30,(%edi)
422e12:	47                   	inc    %edi
422e13:	8b 55 b0             	mov    -0x50(%ebp),%edx
422e16:	8b cb                	mov    %ebx,%ecx
422e18:	e8 41 14 00 00       	call   0x42425e
422e1d:	84 c0                	test   %al,%al
422e1f:	75 64                	jne    0x422e85
422e21:	38 43 04             	cmp    %al,0x4(%ebx)
422e24:	75 07                	jne    0x422e2d
422e26:	8b cb                	mov    %ebx,%ecx
422e28:	e8 99 10 00 00       	call   0x423ec6
422e2d:	0f b7 43 06          	movzwl 0x6(%ebx),%eax
422e31:	8b 4d ac             	mov    -0x54(%ebp),%ecx
422e34:	66 3b c8             	cmp    %ax,%cx
422e37:	77 4c                	ja     0x422e85
422e39:	80 7b 04 00          	cmpb   $0x0,0x4(%ebx)
422e3d:	75 0e                	jne    0x422e4d
422e3f:	8b cb                	mov    %ebx,%ecx
422e41:	e8 80 10 00 00       	call   0x423ec6
422e46:	0f b7 43 06          	movzwl 0x6(%ebx),%eax
422e4a:	8b 4d ac             	mov    -0x54(%ebp),%ecx
422e4d:	0f b7 c9             	movzwl %cx,%ecx
422e50:	83 c1 09             	add    $0x9,%ecx
422e53:	0f b7 c0             	movzwl %ax,%eax
422e56:	3b c1                	cmp    %ecx,%eax
422e58:	77 2b                	ja     0x422e85
422e5a:	83 fe 08             	cmp    $0x8,%esi
422e5d:	7d 19                	jge    0x422e78
422e5f:	80 7b 04 00          	cmpb   $0x0,0x4(%ebx)
422e63:	75 07                	jne    0x422e6c
422e65:	8b cb                	mov    %ebx,%ecx
422e67:	e8 5a 10 00 00       	call   0x423ec6
422e6c:	8a 43 06             	mov    0x6(%ebx),%al
422e6f:	2a 45 ac             	sub    -0x54(%ebp),%al
422e72:	04 30                	add    $0x30,%al
422e74:	88 07                	mov    %al,(%edi)
422e76:	47                   	inc    %edi
422e77:	46                   	inc    %esi
422e78:	8b cb                	mov    %ebx,%ecx
422e7a:	c6 45 b7 01          	movb   $0x1,-0x49(%ebp)
422e7e:	e8 cf 0c 00 00       	call   0x423b52
422e83:	eb 8e                	jmp    0x422e13
422e85:	8a 45 b7             	mov    -0x49(%ebp),%al
422e88:	80 7d b6 00          	cmpb   $0x0,-0x4a(%ebp)
422e8c:	75 04                	jne    0x422e92
422e8e:	84 c0                	test   %al,%al
422e90:	75 03                	jne    0x422e95
422e92:	8b 7d 94             	mov    -0x6c(%ebp),%edi
422e95:	6a 00                	push   $0x0
422e97:	6a 01                	push   $0x1
422e99:	8d 4d b8             	lea    -0x48(%ebp),%ecx
422e9c:	c6 07 00             	movb   $0x0,(%edi)
422e9f:	e8 15 94 ff ff       	call   0x41c2b9
422ea4:	8b 45 9c             	mov    -0x64(%ebp),%eax
422ea7:	e8 09 d6 06 00       	call   0x4904b5
422eac:	c3                   	ret
422ead:	6a 60                	push   $0x60
422eaf:	b8 45 1c 49 00       	mov    $0x491c45,%eax
422eb4:	e8 4d d6 06 00       	call   0x490506
422eb9:	89 55 98             	mov    %edx,-0x68(%ebp)
422ebc:	8b d9                	mov    %ecx,%ebx
422ebe:	8b 45 08             	mov    0x8(%ebp),%eax
422ec1:	8b 4d 14             	mov    0x14(%ebp),%ecx
422ec4:	89 45 9c             	mov    %eax,-0x64(%ebp)
422ec7:	8b 45 0c             	mov    0xc(%ebp),%eax
422eca:	89 45 a4             	mov    %eax,-0x5c(%ebp)
422ecd:	e8 c1 13 00 00       	call   0x424293
422ed2:	8b f8                	mov    %eax,%edi
422ed4:	8d 45 b8             	lea    -0x48(%ebp),%eax
422ed7:	50                   	push   %eax
422ed8:	8b 0f                	mov    (%edi),%ecx
422eda:	8b 71 0c             	mov    0xc(%ecx),%esi
422edd:	8b ce                	mov    %esi,%ecx
422edf:	ff 15 2c 81 4a 00    	call   *0x4a812c
422ee5:	8b cf                	mov    %edi,%ecx
422ee7:	ff d6                	call   *%esi
422ee9:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
422eed:	8b 07                	mov    (%edi),%eax
422eef:	8b 70 08             	mov    0x8(%eax),%esi
422ef2:	8b ce                	mov    %esi,%ecx
422ef4:	ff 15 2c 81 4a 00    	call   *0x4a812c
422efa:	8b cf                	mov    %edi,%ecx
422efc:	ff d6                	call   *%esi
422efe:	0f b7 c0             	movzwl %ax,%eax
422f01:	b1 30                	mov    $0x30,%cl
422f03:	89 45 b0             	mov    %eax,-0x50(%ebp)
422f06:	8d 43 08             	lea    0x8(%ebx),%eax
422f09:	50                   	push   %eax
422f0a:	89 45 a8             	mov    %eax,-0x58(%ebp)
422f0d:	e8 f9 18 00 00       	call   0x42480b
422f12:	8b 5d 9c             	mov    -0x64(%ebp),%ebx
422f15:	8b 7d 98             	mov    -0x68(%ebp),%edi
422f18:	8b 55 a4             	mov    -0x5c(%ebp),%edx
422f1b:	59                   	pop    %ecx
422f1c:	0f b7 c0             	movzwl %ax,%eax
422f1f:	8b cb                	mov    %ebx,%ecx
422f21:	89 45 94             	mov    %eax,-0x6c(%ebp)
422f24:	89 7d ac             	mov    %edi,-0x54(%ebp)
422f27:	e8 32 13 00 00       	call   0x42425e
422f2c:	84 c0                	test   %al,%al
422f2e:	75 56                	jne    0x422f86
422f30:	38 43 04             	cmp    %al,0x4(%ebx)
422f33:	75 07                	jne    0x422f3c
422f35:	8b cb                	mov    %ebx,%ecx
422f37:	e8 8a 0f 00 00       	call   0x423ec6
422f3c:	ff 75 a8             	push   -0x58(%ebp)
422f3f:	0f b7 73 06          	movzwl 0x6(%ebx),%esi
422f43:	b1 2b                	mov    $0x2b,%cl
422f45:	e8 c1 18 00 00       	call   0x42480b
422f4a:	59                   	pop    %ecx
422f4b:	66 3b f0             	cmp    %ax,%si
422f4e:	75 05                	jne    0x422f55
422f50:	c6 07 2b             	movb   $0x2b,(%edi)
422f53:	eb 24                	jmp    0x422f79
422f55:	80 7b 04 00          	cmpb   $0x0,0x4(%ebx)
422f59:	75 07                	jne    0x422f62
422f5b:	8b cb                	mov    %ebx,%ecx
422f5d:	e8 64 0f 00 00       	call   0x423ec6
422f62:	ff 75 a8             	push   -0x58(%ebp)
422f65:	0f b7 73 06          	movzwl 0x6(%ebx),%esi
422f69:	b1 2d                	mov    $0x2d,%cl
422f6b:	e8 9b 18 00 00       	call   0x42480b
422f70:	59                   	pop    %ecx
422f71:	66 3b f0             	cmp    %ax,%si
422f74:	75 10                	jne    0x422f86
422f76:	c6 07 2d             	movb   $0x2d,(%edi)
422f79:	8d 47 01             	lea    0x1(%edi),%eax
422f7c:	8b cb                	mov    %ebx,%ecx
422f7e:	89 45 ac             	mov    %eax,-0x54(%ebp)
422f81:	e8 cc 0b 00 00       	call   0x423b52
422f86:	8b 7d 10             	mov    0x10(%ebp),%edi
422f89:	6a 0a                	push   $0xa
422f8b:	81 e7 00 0e 00 00    	and    $0xe00,%edi
422f91:	5e                   	pop    %esi
422f92:	89 75 9c             	mov    %esi,-0x64(%ebp)
422f95:	81 ff 00 04 00 00    	cmp    $0x400,%edi
422f9b:	75 04                	jne    0x422fa1
422f9d:	6a 08                	push   $0x8
422f9f:	eb 0a                	jmp    0x422fab
422fa1:	81 ff 00 08 00 00    	cmp    $0x800,%edi
422fa7:	75 05                	jne    0x422fae
422fa9:	6a 10                	push   $0x10
422fab:	5f                   	pop    %edi
422fac:	eb 06                	jmp    0x422fb4
422fae:	f7 df                	neg    %edi
422fb0:	1b ff                	sbb    %edi,%edi
422fb2:	23 fe                	and    %esi,%edi
422fb4:	8b 55 a4             	mov    -0x5c(%ebp),%edx
422fb7:	32 c0                	xor    %al,%al
422fb9:	8b cb                	mov    %ebx,%ecx
422fbb:	88 45 b7             	mov    %al,-0x49(%ebp)
422fbe:	88 45 a0             	mov    %al,-0x60(%ebp)
422fc1:	88 45 b5             	mov    %al,-0x4b(%ebp)
422fc4:	e8 95 12 00 00       	call   0x42425e
422fc9:	84 c0                	test   %al,%al
422fcb:	0f 85 9f 00 00 00    	jne    0x423070
422fd1:	38 43 04             	cmp    %al,0x4(%ebx)
422fd4:	75 07                	jne    0x422fdd
422fd6:	8b cb                	mov    %ebx,%ecx
422fd8:	e8 e9 0e 00 00       	call   0x423ec6
422fdd:	0f b7 43 06          	movzwl 0x6(%ebx),%eax
422fe1:	66 3b 45 94          	cmp    -0x6c(%ebp),%ax
422fe5:	0f 85 85 00 00 00    	jne    0x423070
422feb:	b0 01                	mov    $0x1,%al
422fed:	8b cb                	mov    %ebx,%ecx
422fef:	88 45 b7             	mov    %al,-0x49(%ebp)
422ff2:	88 45 a0             	mov    %al,-0x60(%ebp)
422ff5:	e8 58 0b 00 00       	call   0x423b52
422ffa:	8b 55 a4             	mov    -0x5c(%ebp),%edx
422ffd:	8b cb                	mov    %ebx,%ecx
422fff:	e8 5a 12 00 00       	call   0x42425e
423004:	84 c0                	test   %al,%al
423006:	75 61                	jne    0x423069
423008:	38 43 04             	cmp    %al,0x4(%ebx)
42300b:	75 07                	jne    0x423014
42300d:	8b cb                	mov    %ebx,%ecx
42300f:	e8 b2 0e 00 00       	call   0x423ec6
423014:	ff 75 a8             	push   -0x58(%ebp)
423017:	0f b7 73 06          	movzwl 0x6(%ebx),%esi
42301b:	b1 78                	mov    $0x78,%cl
42301d:	e8 e9 17 00 00       	call   0x42480b
423022:	59                   	pop    %ecx