423bf1:	8b ec                	mov    %esp,%ebp
423bf3:	8b 45 08             	mov    0x8(%ebp),%eax
423bf6:	85 c0                	test   %eax,%eax
423bf8:	74 1d                	je     0x423c17
423bfa:	8b 48 0c             	mov    0xc(%eax),%ecx
423bfd:	90                   	nop
423bfe:	8b c1                	mov    %ecx,%eax
423c00:	c1 e8 0d             	shr    $0xd,%eax
423c03:	a8 01                	test   $0x1,%al
423c05:	74 10                	je     0x423c17
423c07:	51                   	push   %ecx
423c08:	e8 12 00 00 00       	call   0x423c1f
423c0d:	59                   	pop    %ecx
423c0e:	84 c0                	test   %al,%al
423c10:	75 09                	jne    0x423c1b
423c12:	8b 45 0c             	mov    0xc(%ebp),%eax
423c15:	ff 00                	incl   (%eax)
423c17:	32 c0                	xor    %al,%al
423c19:	5d                   	pop    %ebp
423c1a:	c3                   	ret
423c1b:	b0 01                	mov    $0x1,%al
423c1d:	5d                   	pop    %ebp
423c1e:	c3                   	ret
423c1f:	8b ff                	mov    %edi,%edi
423c21:	55                   	push   %ebp
423c22:	8b ec                	mov    %esp,%ebp
423c24:	8b 4d 08             	mov    0x8(%ebp),%ecx
423c27:	8b c1                	mov    %ecx,%eax
423c29:	24 03                	and    $0x3,%al
423c2b:	3c 02                	cmp    $0x2,%al
423c2d:	75 09                	jne    0x423c38
423c2f:	f6 c1 c0             	test   $0xc0,%cl
423c32:	74 04                	je     0x423c38
423c34:	fe c8                	dec    %al
423c36:	5d                   	pop    %ebp
423c37:	c3                   	ret
423c38:	c1 e9 0b             	shr    $0xb,%ecx
423c3b:	80 e1 01             	and    $0x1,%cl
423c3e:	8a c1                	mov    %cl,%al
423c40:	5d                   	pop    %ebp
423c41:	c3                   	ret
423c42:	8b ff                	mov    %edi,%edi
423c44:	55                   	push   %ebp
423c45:	8b ec                	mov    %esp,%ebp
423c47:	8b 4d 08             	mov    0x8(%ebp),%ecx
423c4a:	53                   	push   %ebx
423c4b:	56                   	push   %esi
423c4c:	57                   	push   %edi
423c4d:	8d 71 0c             	lea    0xc(%ecx),%esi
423c50:	8b 16                	mov    (%esi),%edx
423c52:	90                   	nop
423c53:	8b c2                	mov    %edx,%eax
423c55:	24 03                	and    $0x3,%al
423c57:	3c 02                	cmp    $0x2,%al
423c59:	75 49                	jne    0x423ca4
423c5b:	f6 c2 c0             	test   $0xc0,%dl
423c5e:	74 44                	je     0x423ca4
423c60:	8b 39                	mov    (%ecx),%edi
423c62:	8b 59 04             	mov    0x4(%ecx),%ebx
423c65:	2b fb                	sub    %ebx,%edi
423c67:	89 19                	mov    %ebx,(%ecx)
423c69:	83 61 08 00          	andl   $0x0,0x8(%ecx)
423c6d:	85 ff                	test   %edi,%edi
423c6f:	7e 33                	jle    0x423ca4
423c71:	51                   	push   %ecx
423c72:	e8 c1 7a 00 00       	call   0x42b738
423c77:	ff 75 0c             	push   0xc(%ebp)
423c7a:	57                   	push   %edi
423c7b:	53                   	push   %ebx
423c7c:	50                   	push   %eax
423c7d:	e8 99 8d 00 00       	call   0x42ca1b
423c82:	83 c4 14             	add    $0x14,%esp
423c85:	3b f8                	cmp    %eax,%edi
423c87:	74 0b                	je     0x423c94
423c89:	6a 10                	push   $0x10
423c8b:	58                   	pop    %eax
423c8c:	f0 09 06             	lock or %eax,(%esi)
423c8f:	83 c8 ff             	or     $0xffffffff,%eax
423c92:	eb 12                	jmp    0x423ca6
423c94:	8b 06                	mov    (%esi),%eax
423c96:	90                   	nop
423c97:	c1 e8 02             	shr    $0x2,%eax
423c9a:	a8 01                	test   $0x1,%al
423c9c:	74 06                	je     0x423ca4
423c9e:	6a fd                	push   $0xfffffffd
423ca0:	58                   	pop    %eax
423ca1:	f0 21 06             	lock and %eax,(%esi)
423ca4:	33 c0                	xor    %eax,%eax
423ca6:	5f                   	pop    %edi
423ca7:	5e                   	pop    %esi
423ca8:	5b                   	pop    %ebx
423ca9:	5d                   	pop    %ebp
423caa:	c3                   	ret
423cab:	8b ff                	mov    %edi,%edi
423cad:	55                   	push   %ebp
423cae:	8b ec                	mov    %esp,%ebp
423cb0:	83 ec 28             	sub    $0x28,%esp
423cb3:	8d 4d d8             	lea    -0x28(%ebp),%ecx
423cb6:	56                   	push   %esi
423cb7:	57                   	push   %edi
423cb8:	33 f6                	xor    %esi,%esi
423cba:	56                   	push   %esi
423cbb:	e8 10 b8 ff ff       	call   0x41f4d0
423cc0:	8b 7d 08             	mov    0x8(%ebp),%edi
423cc3:	85 ff                	test   %edi,%edi
423cc5:	75 0b                	jne    0x423cd2
423cc7:	56                   	push   %esi
423cc8:	e8 d4 fe ff ff       	call   0x423ba1
423ccd:	59                   	pop    %ecx
423cce:	8b f0                	mov    %eax,%esi
423cd0:	eb 30                	jmp    0x423d02
423cd2:	8d 45 d8             	lea    -0x28(%ebp),%eax
423cd5:	50                   	push   %eax
423cd6:	57                   	push   %edi
423cd7:	e8 66 ff ff ff       	call   0x423c42
423cdc:	59                   	pop    %ecx
423cdd:	59                   	pop    %ecx
423cde:	85 c0                	test   %eax,%eax
423ce0:	75 1d                	jne    0x423cff
423ce2:	8b 47 0c             	mov    0xc(%edi),%eax
423ce5:	90                   	nop
423ce6:	c1 e8 0b             	shr    $0xb,%eax
423ce9:	a8 01                	test   $0x1,%al
423ceb:	74 15                	je     0x423d02
423ced:	57                   	push   %edi
423cee:	e8 45 7a 00 00       	call   0x42b738
423cf3:	50                   	push   %eax
423cf4:	e8 cc 84 00 00       	call   0x42c1c5
423cf9:	59                   	pop    %ecx
423cfa:	59                   	pop    %ecx
423cfb:	85 c0                	test   %eax,%eax
423cfd:	74 03                	je     0x423d02
423cff:	83 ce ff             	or     $0xffffffff,%esi
423d02:	8d 4d d8             	lea    -0x28(%ebp),%ecx
423d05:	e8 26 b8 ff ff       	call   0x41f530
423d0a:	5f                   	pop    %edi
423d0b:	8b c6                	mov    %esi,%eax
423d0d:	5e                   	pop    %esi
423d0e:	c9                   	leave
423d0f:	c3                   	ret
423d10:	6a 01                	push   $0x1
423d12:	e8 8a fe ff ff       	call   0x423ba1
423d17:	59                   	pop    %ecx
423d18:	c3                   	ret
423d19:	8b ff                	mov    %edi,%edi
423d1b:	55                   	push   %ebp
423d1c:	8b ec                	mov    %esp,%ebp
423d1e:	53                   	push   %ebx
423d1f:	57                   	push   %edi
423d20:	8b f9                	mov    %ecx,%edi
423d22:	8b 4d 08             	mov    0x8(%ebp),%ecx
423d25:	c6 47 0c 00          	movb   $0x0,0xc(%edi)
423d29:	8d 5f 04             	lea    0x4(%edi),%ebx
423d2c:	85 c9                	test   %ecx,%ecx
423d2e:	74 07                	je     0x423d37
423d30:	8b 01                	mov    (%ecx),%eax
423d32:	8b 49 04             	mov    0x4(%ecx),%ecx
423d35:	eb 14                	jmp    0x423d4b
423d37:	83 3d 80 6d 45 00 00 	cmpl   $0x0,0x456d80
423d3e:	75 12                	jne    0x423d52
423d40:	a1 68 52 45 00       	mov    0x455268,%eax
423d45:	8b 0d 6c 52 45 00    	mov    0x45526c,%ecx
423d4b:	89 03                	mov    %eax,(%ebx)
423d4d:	89 4b 04             	mov    %ecx,0x4(%ebx)
423d50:	eb 41                	jmp    0x423d93
423d52:	56                   	push   %esi
423d53:	e8 71 68 00 00       	call   0x42a5c9
423d58:	89 07                	mov    %eax,(%edi)
423d5a:	8d 77 08             	lea    0x8(%edi),%esi
423d5d:	53                   	push   %ebx
423d5e:	50                   	push   %eax
423d5f:	8b 48 4c             	mov    0x4c(%eax),%ecx
423d62:	89 0b                	mov    %ecx,(%ebx)
423d64:	8b 48 48             	mov    0x48(%eax),%ecx
423d67:	89 0e                	mov    %ecx,(%esi)
423d69:	e8 53 64 00 00       	call   0x42a1c1
423d6e:	56                   	push   %esi
423d6f:	ff 37                	push   (%edi)
423d71:	e8 a9 64 00 00       	call   0x42a21f
423d76:	8b 0f                	mov    (%edi),%ecx
423d78:	83 c4 10             	add    $0x10,%esp
423d7b:	8b 81 50 03 00 00    	mov    0x350(%ecx),%eax
423d81:	5e                   	pop    %esi
423d82:	a8 02                	test   $0x2,%al
423d84:	75 0d                	jne    0x423d93
423d86:	83 c8 02             	or     $0x2,%eax
423d89:	89 81 50 03 00 00    	mov    %eax,0x350(%ecx)
423d8f:	c6 47 0c 01          	movb   $0x1,0xc(%edi)
423d93:	8b c7                	mov    %edi,%eax
423d95:	5f                   	pop    %edi
423d96:	5b                   	pop    %ebx
423d97:	5d                   	pop    %ebp
423d98:	c2 04 00             	ret    $0x4
423d9b:	8b ff                	mov    %edi,%edi
423d9d:	55                   	push   %ebp
423d9e:	8b ec                	mov    %esp,%ebp
423da0:	83 ec 18             	sub    $0x18,%esp
423da3:	83 ca ff             	or     $0xffffffff,%edx
423da6:	53                   	push   %ebx
423da7:	8b 5d 08             	mov    0x8(%ebp),%ebx
423daa:	3b da                	cmp    %edx,%ebx
423dac:	0f 84 e2 00 00 00    	je     0x423e94
423db2:	ff 75 0c             	push   0xc(%ebp)
423db5:	8d 4d e8             	lea    -0x18(%ebp),%ecx
423db8:	e8 5c ff ff ff       	call   0x423d19
423dbd:	81 fb 00 01 00 00    	cmp    $0x100,%ebx
423dc3:	73 29                	jae    0x423dee
423dc5:	80 7d f4 00          	cmpb   $0x0,-0xc(%ebp)
423dc9:	8b 45 ec             	mov    -0x14(%ebp),%eax
423dcc:	0f b6 cb             	movzbl %bl,%ecx
423dcf:	8b 80 94 00 00 00    	mov    0x94(%eax),%eax
423dd5:	0f b6 14 08          	movzbl (%eax,%ecx,1),%edx
423dd9:	0f 84 b5 00 00 00    	je     0x423e94
423ddf:	8b 45 e8             	mov    -0x18(%ebp),%eax
423de2:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
423de9:	e9 a6 00 00 00       	jmp    0x423e94
423dee:	8b 55 ec             	mov    -0x14(%ebp),%edx
423df1:	33 c0                	xor    %eax,%eax
423df3:	88 45 fe             	mov    %al,-0x2(%ebp)
423df6:	83 7a 04 01          	cmpl   $0x1,0x4(%edx)
423dfa:	7e 27                	jle    0x423e23
423dfc:	8b c3                	mov    %ebx,%eax
423dfe:	c1 f8 08             	sar    $0x8,%eax
423e01:	89 45 f8             	mov    %eax,-0x8(%ebp)
423e04:	0f b6 c8             	movzbl %al,%ecx
423e07:	8b 02                	mov    (%edx),%eax
423e09:	57                   	push   %edi
423e0a:	33 ff                	xor    %edi,%edi
423e0c:	66 39 3c 48          	cmp    %di,(%eax,%ecx,2)
423e10:	5f                   	pop    %edi
423e11:	7d 10                	jge    0x423e23
423e13:	8b 45 f8             	mov    -0x8(%ebp),%eax
423e16:	33 c9                	xor    %ecx,%ecx
423e18:	6a 02                	push   $0x2
423e1a:	88 45 fc             	mov    %al,-0x4(%ebp)
423e1d:	88 5d fd             	mov    %bl,-0x3(%ebp)
423e20:	58                   	pop    %eax
423e21:	eb 19                	jmp    0x423e3c
423e23:	e8 08 fc ff ff       	call   0x423a30
423e28:	33 c9                	xor    %ecx,%ecx
423e2a:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
423e30:	33 c0                	xor    %eax,%eax
423e32:	8b 55 ec             	mov    -0x14(%ebp),%edx
423e35:	40                   	inc    %eax
423e36:	88 5d fc             	mov    %bl,-0x4(%ebp)
423e39:	88 4d fd             	mov    %cl,-0x3(%ebp)
423e3c:	6a 01                	push   $0x1
423e3e:	66 89 4d f8          	mov    %cx,-0x8(%ebp)
423e42:	88 4d fa             	mov    %cl,-0x6(%ebp)
423e45:	8d 4d f8             	lea    -0x8(%ebp),%ecx
423e48:	ff 72 08             	push   0x8(%edx)
423e4b:	6a 03                	push   $0x3
423e4d:	51                   	push   %ecx
423e4e:	50                   	push   %eax
423e4f:	8d 45 fc             	lea    -0x4(%ebp),%eax
423e52:	50                   	push   %eax
423e53:	68 00 01 00 00       	push   $0x100
423e58:	ff b2 a8 00 00 00    	push   0xa8(%edx)
423e5e:	8d 45 ec             	lea    -0x14(%ebp),%eax
423e61:	50                   	push   %eax
423e62:	e8 d0 90 00 00       	call   0x42cf37
423e67:	83 c4 24             	add    $0x24,%esp
423e6a:	85 c0                	test   %eax,%eax
423e6c:	75 04                	jne    0x423e72
423e6e:	8b d3                	mov    %ebx,%edx
423e70:	eb 12                	jmp    0x423e84
423e72:	0f b6 55 f8          	movzbl -0x8(%ebp),%edx
423e76:	83 f8 01             	cmp    $0x1,%eax
423e79:	74 09                	je     0x423e84
423e7b:	0f b6 45 f9          	movzbl -0x7(%ebp),%eax
423e7f:	c1 e2 08             	shl    $0x8,%edx
423e82:	0b d0                	or     %eax,%edx
423e84:	80 7d f4 00          	cmpb   $0x0,-0xc(%ebp)
423e88:	74 0a                	je     0x423e94
423e8a:	8b 4d e8             	mov    -0x18(%ebp),%ecx
423e8d:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
423e94:	8b c2                	mov    %edx,%eax
423e96:	5b                   	pop    %ebx
423e97:	c9                   	leave
423e98:	c3                   	ret
423e99:	8b ff                	mov    %edi,%edi
423e9b:	55                   	push   %ebp
423e9c:	8b ec                	mov    %esp,%ebp
423e9e:	83 3d 80 6d 45 00 00 	cmpl   $0x0,0x456d80
423ea5:	74 10                	je     0x423eb7
423ea7:	6a 00                	push   $0x0
423ea9:	ff 75 08             	push   0x8(%ebp)
423eac:	e8 ea fe ff ff       	call   0x423d9b
423eb1:	59                   	pop    %ecx
423eb2:	59                   	pop    %ecx
423eb3:	8b c8                	mov    %eax,%ecx
423eb5:	eb 0e                	jmp    0x423ec5
423eb7:	8b 4d 08             	mov    0x8(%ebp),%ecx
423eba:	8d 41 bf             	lea    -0x41(%ecx),%eax
423ebd:	83 f8 19             	cmp    $0x19,%eax
423ec0:	77 03                	ja     0x423ec5
423ec2:	83 c1 20             	add    $0x20,%ecx
423ec5:	8b c1                	mov    %ecx,%eax
423ec7:	5d                   	pop    %ebp
423ec8:	c3                   	ret
423ec9:	cc                   	int3
423eca:	cc                   	int3
423ecb:	cc                   	int3
423ecc:	cc                   	int3
423ecd:	cc                   	int3
423ece:	cc                   	int3
423ecf:	cc                   	int3
423ed0:	a1 c0 69 45 00       	mov    0x4569c0,%eax
423ed5:	56                   	push   %esi
423ed6:	6a 03                	push   $0x3
423ed8:	5e                   	pop    %esi
423ed9:	85 c0                	test   %eax,%eax
423edb:	75 07                	jne    0x423ee4
423edd:	b8 00 02 00 00       	mov    $0x200,%eax
423ee2:	eb 06                	jmp    0x423eea
423ee4:	3b c6                	cmp    %esi,%eax
423ee6:	7d 07                	jge    0x423eef
423ee8:	8b c6                	mov    %esi,%eax
423eea:	a3 c0 69 45 00       	mov    %eax,0x4569c0
423eef:	6a 04                	push   $0x4
423ef1:	50                   	push   %eax
423ef2:	e8 23 92 00 00       	call   0x42d11a
423ef7:	6a 00                	push   $0x0
423ef9:	a3 c4 69 45 00       	mov    %eax,0x4569c4
423efe:	e8 b7 69 00 00       	call   0x42a8ba
423f03:	83 c4 0c             	add    $0xc,%esp
423f06:	83 3d c4 69 45 00 00 	cmpl   $0x0,0x4569c4
423f0d:	75 2b                	jne    0x423f3a
423f0f:	6a 04                	push   $0x4
423f11:	56                   	push   %esi
423f12:	89 35 c0 69 45 00    	mov    %esi,0x4569c0
423f18:	e8 fd 91 00 00       	call   0x42d11a
423f1d:	6a 00                	push   $0x0
423f1f:	a3 c4 69 45 00       	mov    %eax,0x4569c4
423f24:	e8 91 69 00 00       	call   0x42a8ba
423f29:	83 c4 0c             	add    $0xc,%esp
423f2c:	83 3d c4 69 45 00 00 	cmpl   $0x0,0x4569c4
423f33:	75 05                	jne    0x423f3a
423f35:	83 c8 ff             	or     $0xffffffff,%eax
423f38:	5e                   	pop    %esi
423f39:	c3                   	ret
423f3a:	57                   	push   %edi
423f3b:	33 ff                	xor    %edi,%edi
423f3d:	be 88 50 45 00       	mov    $0x455088,%esi
423f42:	6a 00                	push   $0x0
423f44:	68 a0 0f 00 00       	push   $0xfa0
423f49:	8d 46 20             	lea    0x20(%esi),%eax
423f4c:	50                   	push   %eax
423f4d:	e8 bd 98 00 00       	call   0x42d80f
423f52:	a1 c4 69 45 00       	mov    0x4569c4,%eax