558a0f:	8b 00                	mov    (%eax),%eax
558a11:	e8 4a bd 09 00       	call   0x5f4760
558a16:	84 c0                	test   %al,%al
558a18:	74 11                	je     0x558a2b
558a1a:	8b 45 0c             	mov    0xc(%ebp),%eax
558a1d:	8b 00                	mov    (%eax),%eax
558a1f:	e8 54 b0 ea ff       	call   0x403a78
558a24:	8b 45 0c             	mov    0xc(%ebp),%eax
558a27:	33 d2                	xor    %edx,%edx
558a29:	89 10                	mov    %edx,(%eax)
558a2b:	5f                   	pop    %edi
558a2c:	5e                   	pop    %esi
558a2d:	5b                   	pop    %ebx
558a2e:	8b e5                	mov    %ebp,%esp
558a30:	5d                   	pop    %ebp
558a31:	c2 10 00             	ret    $0x10
558a34:	00 00                	add    %al,(%eax)
558a36:	c8 42 55 8b          	enter  $0x5542,$0x8b
558a3a:	ec                   	in     (%dx),%al
558a3b:	53                   	push   %ebx
558a3c:	56                   	push   %esi
558a3d:	8b 5d 08             	mov    0x8(%ebp),%ebx
558a40:	83 c3 ee             	add    $0xffffffee,%ebx
558a43:	8b 75 08             	mov    0x8(%ebp),%esi
558a46:	8b 76 e8             	mov    -0x18(%esi),%esi
558a49:	8b 06                	mov    (%esi),%eax
558a4b:	8b 80 38 01 00 00    	mov    0x138(%eax),%eax
558a51:	e8 ca c0 ea ff       	call   0x404b20
558a56:	40                   	inc    %eax
558a57:	88 03                	mov    %al,(%ebx)
558a59:	8b 45 08             	mov    0x8(%ebp),%eax
558a5c:	8a 40 e4             	mov    -0x1c(%eax),%al
558a5f:	88 43 10             	mov    %al,0x10(%ebx)
558a62:	c6 43 11 00          	movb   $0x0,0x11(%ebx)
558a66:	8b 45 08             	mov    0x8(%ebp),%eax
558a69:	8b 40 e4             	mov    -0x1c(%eax),%eax
558a6c:	83 f8 08             	cmp    $0x8,%eax
558a6f:	7f 0f                	jg     0x558a80
558a71:	74 52                	je     0x558ac5
558a73:	48                   	dec    %eax
558a74:	74 21                	je     0x558a97
558a76:	83 e8 03             	sub    $0x3,%eax
558a79:	74 4a                	je     0x558ac5
558a7b:	e9 20 01 00 00       	jmp    0x558ba0
558a80:	83 e8 18             	sub    $0x18,%eax
558a83:	0f 84 bf 00 00 00    	je     0x558b48
558a89:	83 e8 08             	sub    $0x8,%eax
558a8c:	0f 84 e1 00 00 00    	je     0x558b73
558a92:	e9 09 01 00 00       	jmp    0x558ba0
558a97:	c6 43 01 00          	movb   $0x0,0x1(%ebx)
558a9b:	8b 06                	mov    (%esi),%eax
558a9d:	80 b8 34 01 00 00 00 	cmpb   $0x0,0x134(%eax)
558aa4:	74 06                	je     0x558aac
558aa6:	c6 43 02 0b          	movb   $0xb,0x2(%ebx)
558aaa:	eb 04                	jmp    0x558ab0
558aac:	c6 43 02 03          	movb   $0x3,0x2(%ebx)
558ab0:	66 c7 43 03 00 00    	movw   $0x0,0x3(%ebx)
558ab6:	66 c7 43 05 00 00    	movw   $0x0,0x5(%ebx)
558abc:	c6 43 07 00          	movb   $0x0,0x7(%ebx)
558ac0:	e9 db 00 00 00       	jmp    0x558ba0
558ac5:	8b 45 08             	mov    0x8(%ebp),%eax
558ac8:	83 78 e4 08          	cmpl   $0x8,-0x1c(%eax)
558acc:	75 44                	jne    0x558b12
558ace:	8b 06                	mov    (%esi),%eax
558ad0:	80 b8 60 01 00 00 00 	cmpb   $0x0,0x160(%eax)
558ad7:	74 39                	je     0x558b12
558ad9:	c6 43 01 00          	movb   $0x0,0x1(%ebx)
558add:	8b 06                	mov    (%esi),%eax
558adf:	80 b8 34 01 00 00 00 	cmpb   $0x0,0x134(%eax)
558ae6:	74 06                	je     0x558aee
558ae8:	c6 43 02 0b          	movb   $0xb,0x2(%ebx)
558aec:	eb 04                	jmp    0x558af2
558aee:	c6 43 02 03          	movb   $0x3,0x2(%ebx)
558af2:	66 c7 43 03 00 00    	movw   $0x0,0x3(%ebx)
558af8:	8b 45 08             	mov    0x8(%ebp),%eax
558afb:	8b 48 e4             	mov    -0x1c(%eax),%ecx
558afe:	66 b8 01 00          	mov    $0x1,%ax
558b02:	66 d3 e0             	shl    %cl,%ax
558b05:	66 89 43 05          	mov    %ax,0x5(%ebx)
558b09:	c6 43 07 18          	movb   $0x18,0x7(%ebx)
558b0d:	e9 8e 00 00 00       	jmp    0x558ba0
558b12:	c6 43 01 01          	movb   $0x1,0x1(%ebx)
558b16:	8b 06                	mov    (%esi),%eax
558b18:	80 b8 34 01 00 00 00 	cmpb   $0x0,0x134(%eax)
558b1f:	74 06                	je     0x558b27
558b21:	c6 43 02 09          	movb   $0x9,0x2(%ebx)
558b25:	eb 04                	jmp    0x558b2b
558b27:	c6 43 02 01          	movb   $0x1,0x2(%ebx)
558b2b:	66 c7 43 03 00 00    	movw   $0x0,0x3(%ebx)
558b31:	8b 45 08             	mov    0x8(%ebp),%eax
558b34:	8b 48 e4             	mov    -0x1c(%eax),%ecx
558b37:	66 b8 01 00          	mov    $0x1,%ax
558b3b:	66 d3 e0             	shl    %cl,%ax
558b3e:	66 89 43 05          	mov    %ax,0x5(%ebx)
558b42:	c6 43 07 18          	movb   $0x18,0x7(%ebx)
558b46:	eb 58                	jmp    0x558ba0
558b48:	c6 43 01 00          	movb   $0x0,0x1(%ebx)
558b4c:	8b 06                	mov    (%esi),%eax
558b4e:	80 b8 34 01 00 00 00 	cmpb   $0x0,0x134(%eax)
558b55:	74 06                	je     0x558b5d
558b57:	c6 43 02 0a          	movb   $0xa,0x2(%ebx)
558b5b:	eb 04                	jmp    0x558b61
558b5d:	c6 43 02 02          	movb   $0x2,0x2(%ebx)
558b61:	66 c7 43 03 00 00    	movw   $0x0,0x3(%ebx)
558b67:	66 c7 43 05 00 00    	movw   $0x0,0x5(%ebx)
558b6d:	c6 43 07 00          	movb   $0x0,0x7(%ebx)
558b71:	eb 2d                	jmp    0x558ba0
558b73:	c6 43 01 00          	movb   $0x0,0x1(%ebx)
558b77:	8b 06                	mov    (%esi),%eax
558b79:	80 b8 34 01 00 00 00 	cmpb   $0x0,0x134(%eax)
558b80:	74 06                	je     0x558b88
558b82:	c6 43 02 0a          	movb   $0xa,0x2(%ebx)
558b86:	eb 04                	jmp    0x558b8c
558b88:	c6 43 02 02          	movb   $0x2,0x2(%ebx)
558b8c:	66 c7 43 03 00 00    	movw   $0x0,0x3(%ebx)
558b92:	66 c7 43 05 00 00    	movw   $0x0,0x5(%ebx)
558b98:	c6 43 07 00          	movb   $0x0,0x7(%ebx)
558b9c:	80 4b 11 08          	orb    $0x8,0x11(%ebx)
558ba0:	8b 06                	mov    (%esi),%eax
558ba2:	66 8b 80 2c 01 00 00 	mov    0x12c(%eax),%ax
558ba9:	66 89 43 08          	mov    %ax,0x8(%ebx)
558bad:	8b 06                	mov    (%esi),%eax
558baf:	66 8b 80 30 01 00 00 	mov    0x130(%eax),%ax
558bb6:	66 89 43 0a          	mov    %ax,0xa(%ebx)
558bba:	8b 45 08             	mov    0x8(%ebp),%eax
558bbd:	66 8b 40 e0          	mov    -0x20(%eax),%ax
558bc1:	66 89 43 0c          	mov    %ax,0xc(%ebx)
558bc5:	8b 45 08             	mov    0x8(%ebp),%eax
558bc8:	66 8b 40 dc          	mov    -0x24(%eax),%ax
558bcc:	66 89 43 0e          	mov    %ax,0xe(%ebx)
558bd0:	80 4b 11 20          	orb    $0x20,0x11(%ebx)
558bd4:	6a 12                	push   $0x12
558bd6:	8b cb                	mov    %ebx,%ecx
558bd8:	8b 45 08             	mov    0x8(%ebp),%eax
558bdb:	8b 50 0c             	mov    0xc(%eax),%edx
558bde:	8b 52 28             	mov    0x28(%edx),%edx
558be1:	8b 45 08             	mov    0x8(%ebp),%eax
558be4:	8b 40 d8             	mov    -0x28(%eax),%eax
558be7:	e8 10 d3 09 00       	call   0x5f5efc
558bec:	8b 06                	mov    (%esi),%eax
558bee:	8b 80 38 01 00 00    	mov    0x138(%eax),%eax
558bf4:	e8 27 bf ea ff       	call   0x404b20
558bf9:	40                   	inc    %eax
558bfa:	50                   	push   %eax
558bfb:	8b 06                	mov    (%esi),%eax
558bfd:	8b 80 38 01 00 00    	mov    0x138(%eax),%eax
558c03:	e8 10 c1 ea ff       	call   0x404d18
558c08:	8b c8                	mov    %eax,%ecx
558c0a:	8b 45 08             	mov    0x8(%ebp),%eax
558c0d:	8b 50 0c             	mov    0xc(%eax),%edx
558c10:	8b 52 28             	mov    0x28(%edx),%edx
558c13:	8b 45 08             	mov    0x8(%ebp),%eax
558c16:	8b 40 d8             	mov    -0x28(%eax),%eax
558c19:	e8 de d2 09 00       	call   0x5f5efc
558c1e:	80 7b 01 01          	cmpb   $0x1,0x1(%ebx)
558c22:	75 31                	jne    0x558c55
558c24:	8b 45 08             	mov    0x8(%ebp),%eax
558c27:	8b 48 e4             	mov    -0x1c(%eax),%ecx
558c2a:	b8 01 00 00 00       	mov    $0x1,%eax
558c2f:	d3 e0                	shl    %cl,%eax
558c31:	8d 04 40             	lea    (%eax,%eax,2),%eax
558c34:	50                   	push   %eax
558c35:	8b 45 08             	mov    0x8(%ebp),%eax
558c38:	8b 40 d4             	mov    -0x2c(%eax),%eax
558c3b:	8d 88 00 20 00 00    	lea    0x2000(%eax),%ecx
558c41:	8b 45 08             	mov    0x8(%ebp),%eax
558c44:	8b 50 0c             	mov    0xc(%eax),%edx
558c47:	8b 52 28             	mov    0x28(%edx),%edx
558c4a:	8b 45 08             	mov    0x8(%ebp),%eax
558c4d:	8b 40 d8             	mov    -0x28(%eax),%eax
558c50:	e8 a7 d2 09 00       	call   0x5f5efc
558c55:	5e                   	pop    %esi
558c56:	5b                   	pop    %ebx
558c57:	5d                   	pop    %ebp
558c58:	c3                   	ret
558c59:	8d 40 00             	lea    0x0(%eax),%eax
558c5c:	55                   	push   %ebp
558c5d:	8b ec                	mov    %esp,%ebp
558c5f:	83 c4 f8             	add    $0xfffffff8,%esp
558c62:	53                   	push   %ebx
558c63:	56                   	push   %esi
558c64:	57                   	push   %edi
558c65:	8b 45 08             	mov    0x8(%ebp),%eax
558c68:	8b 40 e0             	mov    -0x20(%eax),%eax
558c6b:	48                   	dec    %eax
558c6c:	85 c0                	test   %eax,%eax
558c6e:	7c 50                	jl     0x558cc0
558c70:	40                   	inc    %eax
558c71:	89 45 fc             	mov    %eax,-0x4(%ebp)
558c74:	33 ff                	xor    %edi,%edi
558c76:	8b 45 08             	mov    0x8(%ebp),%eax
558c79:	8b 58 d4             	mov    -0x2c(%eax),%ebx
558c7c:	8b 83 08 24 00 00    	mov    0x2408(%ebx),%eax
558c82:	0f b6 04 38          	movzbl (%eax,%edi,1),%eax
558c86:	8d 04 40             	lea    (%eax,%eax,2),%eax
558c89:	8d b4 03 00 20 00 00 	lea    0x2000(%ebx,%eax,1),%esi
558c90:	8d 45 f8             	lea    -0x8(%ebp),%eax
558c93:	50                   	push   %eax
558c94:	8a 0e                	mov    (%esi),%cl
558c96:	8a 56 01             	mov    0x1(%esi),%dl
558c99:	8a 46 02             	mov    0x2(%esi),%al
558c9c:	e8 6f 06 05 00       	call   0x5a9310
558ca1:	8a 45 fa             	mov    -0x6(%ebp),%al
558ca4:	c1 e0 10             	shl    $0x10,%eax
558ca7:	66 8b 45 f8          	mov    -0x8(%ebp),%ax
558cab:	50                   	push   %eax
558cac:	e8 73 06 05 00       	call   0x5a9324
558cb1:	8b 93 08 24 00 00    	mov    0x2408(%ebx),%edx
558cb7:	88 04 3a             	mov    %al,(%edx,%edi,1)
558cba:	47                   	inc    %edi
558cbb:	ff 4d fc             	decl   -0x4(%ebp)
558cbe:	75 b6                	jne    0x558c76
558cc0:	5f                   	pop    %edi
558cc1:	5e                   	pop    %esi
558cc2:	5b                   	pop    %ebx
558cc3:	59                   	pop    %ecx
558cc4:	59                   	pop    %ecx
558cc5:	5d                   	pop    %ebp
558cc6:	c3                   	ret
558cc7:	90                   	nop
558cc8:	55                   	push   %ebp
558cc9:	8b ec                	mov    %esp,%ebp
558ccb:	83 c4 f4             	add    $0xfffffff4,%esp
558cce:	53                   	push   %ebx
558ccf:	56                   	push   %esi
558cd0:	57                   	push   %edi
558cd1:	8b 45 08             	mov    0x8(%ebp),%eax
558cd4:	8b 78 d4             	mov    -0x2c(%eax),%edi
558cd7:	8b 87 10 24 00 00    	mov    0x2410(%edi),%eax
558cdd:	89 45 f4             	mov    %eax,-0xc(%ebp)
558ce0:	33 f6                	xor    %esi,%esi
558ce2:	8b 45 08             	mov    0x8(%ebp),%eax
558ce5:	8b 40 e4             	mov    -0x1c(%eax),%eax
558ce8:	83 e8 08             	sub    $0x8,%eax
558ceb:	74 0e                	je     0x558cfb
558ced:	83 e8 10             	sub    $0x10,%eax
558cf0:	0f 84 be 00 00 00    	je     0x558db4
558cf6:	e9 d7 01 00 00       	jmp    0x558ed2
558cfb:	8b 45 08             	mov    0x8(%ebp),%eax
558cfe:	8b 40 e0             	mov    -0x20(%eax),%eax
558d01:	89 45 fc             	mov    %eax,-0x4(%ebp)
558d04:	8b 87 08 24 00 00    	mov    0x2408(%edi),%eax
558d0a:	8a 04 30             	mov    (%eax,%esi,1),%al
558d0d:	46                   	inc    %esi
558d0e:	b3 01                	mov    $0x1,%bl
558d10:	eb 02                	jmp    0x558d14
558d12:	46                   	inc    %esi
558d13:	43                   	inc    %ebx
558d14:	3b 75 fc             	cmp    -0x4(%ebp),%esi
558d17:	7d 10                	jge    0x558d29
558d19:	8b 97 08 24 00 00    	mov    0x2408(%edi),%edx
558d1f:	3a 04 32             	cmp    (%edx,%esi,1),%al
558d22:	75 05                	jne    0x558d29
558d24:	80 fb 80             	cmp    $0x80,%bl
558d27:	72 e9                	jb     0x558d12
558d29:	80 fb 01             	cmp    $0x1,%bl
558d2c:	76 16                	jbe    0x558d44
558d2e:	4b                   	dec    %ebx
558d2f:	80 cb 80             	or     $0x80,%bl
558d32:	8b 55 f4             	mov    -0xc(%ebp),%edx
558d35:	88 1a                	mov    %bl,(%edx)
558d37:	ff 45 f4             	incl   -0xc(%ebp)
558d3a:	8b 55 f4             	mov    -0xc(%ebp),%edx
558d3d:	88 02                	mov    %al,(%edx)
558d3f:	ff 45 f4             	incl   -0xc(%ebp)
558d42:	eb 62                	jmp    0x558da6
558d44:	4e                   	dec    %esi
558d45:	33 db                	xor    %ebx,%ebx
558d47:	eb 02                	jmp    0x558d4b
558d49:	46                   	inc    %esi
558d4a:	43                   	inc    %ebx
558d4b:	8b 45 fc             	mov    -0x4(%ebp),%eax
558d4e:	48                   	dec    %eax
558d4f:	3b f0                	cmp    %eax,%esi
558d51:	7d 1a                	jge    0x558d6d
558d53:	8b 87 08 24 00 00    	mov    0x2408(%edi),%eax
558d59:	8a 04 30             	mov    (%eax,%esi,1),%al
558d5c:	8b 97 08 24 00 00    	mov    0x2408(%edi),%edx
558d62:	3a 44 32 01          	cmp    0x1(%edx,%esi,1),%al
558d66:	74 05                	je     0x558d6d
558d68:	80 fb 7f             	cmp    $0x7f,%bl
558d6b:	72 dc                	jb     0x558d49
558d6d:	8b 45 fc             	mov    -0x4(%ebp),%eax
558d70:	48                   	dec    %eax
558d71:	3b f0                	cmp    %eax,%esi
558d73:	75 02                	jne    0x558d77
558d75:	46                   	inc    %esi
558d76:	43                   	inc    %ebx
558d77:	8b c3                	mov    %ebx,%eax
558d79:	48                   	dec    %eax
558d7a:	8b 55 f4             	mov    -0xc(%ebp),%edx
558d7d:	88 02                	mov    %al,(%edx)
558d7f:	ff 45 f4             	incl   -0xc(%ebp)
558d82:	33 c0                	xor    %eax,%eax
558d84:	8a c3                	mov    %bl,%al
558d86:	8b d6                	mov    %esi,%edx
558d88:	2b d0                	sub    %eax,%edx
558d8a:	8b 87 08 24 00 00    	mov    0x2408(%edi),%eax
558d90:	8d 14 10             	lea    (%eax,%edx,1),%edx
558d93:	33 c9                	xor    %ecx,%ecx
558d95:	8a cb                	mov    %bl,%cl
558d97:	8b 45 f4             	mov    -0xc(%ebp),%eax
558d9a:	e8 21 f1 ea ff       	call   0x407ec0
558d9f:	33 c0                	xor    %eax,%eax
558da1:	8a c3                	mov    %bl,%al
558da3:	01 45 f4             	add    %eax,-0xc(%ebp)
558da6:	3b 75 fc             	cmp    -0x4(%ebp),%esi
558da9:	0f 8c 55 ff ff ff    	jl     0x558d04
558daf:	e9 1e 01 00 00       	jmp    0x558ed2
558db4:	8b 45 08             	mov    0x8(%ebp),%eax
558db7:	8b 40 e0             	mov    -0x20(%eax),%eax
558dba:	8d 04 40             	lea    (%eax,%eax,2),%eax
558dbd:	89 45 fc             	mov    %eax,-0x4(%ebp)
558dc0:	8b 87 08 24 00 00    	mov    0x2408(%edi),%eax
558dc6:	03 c6                	add    %esi,%eax
558dc8:	66 8b 10             	mov    (%eax),%dx
558dcb:	66 89 55 f9          	mov    %dx,-0x7(%ebp)
558dcf:	8a 50 02             	mov    0x2(%eax),%dl
558dd2:	88 55 fb             	mov    %dl,-0x5(%ebp)
558dd5:	83 c6 03             	add    $0x3,%esi
558dd8:	b3 01                	mov    $0x1,%bl
558dda:	eb 04                	jmp    0x558de0
558ddc:	83 c6 03             	add    $0x3,%esi
558ddf:	43                   	inc    %ebx
558de0:	3b 75 fc             	cmp    -0x4(%ebp),%esi
558de3:	7d 2b                	jge    0x558e10
558de5:	8a 45 fb             	mov    -0x5(%ebp),%al
558de8:	c1 e0 10             	shl    $0x10,%eax
558deb:	66 8b 45 f9          	mov    -0x7(%ebp),%ax
558def:	50                   	push   %eax
558df0:	8b 87 08 24 00 00    	mov    0x2408(%edi),%eax
558df6:	03 c6                	add    %esi,%eax
558df8:	8a 50 02             	mov    0x2(%eax),%dl
558dfb:	c1 e2 10             	shl    $0x10,%edx
558dfe:	66 8b 10             	mov    (%eax),%dx
558e01:	52                   	push   %edx
558e02:	e8 4d 06 05 00       	call   0x5a9454
558e07:	84 c0                	test   %al,%al
558e09:	74 05                	je     0x558e10
558e0b:	80 fb 80             	cmp    $0x80,%bl
558e0e:	72 cc                	jb     0x558ddc
558e10:	80 fb 01             	cmp    $0x1,%bl
558e13:	76 25                	jbe    0x558e3a
558e15:	4b                   	dec    %ebx
558e16:	80 cb 80             	or     $0x80,%bl
558e19:	8b 45 f4             	mov    -0xc(%ebp),%eax
558e1c:	88 18                	mov    %bl,(%eax)
558e1e:	ff 45 f4             	incl   -0xc(%ebp)
558e21:	8b 45 f4             	mov    -0xc(%ebp),%eax
558e24:	66 8b 55 f9          	mov    -0x7(%ebp),%dx