622c7c:	74 07                	je     0x622c85
622c7e:	8b 10                	mov    (%eax),%edx
622c80:	e8 47 fb dd ff       	call   0x4027cc
622c85:	ba 14 00 00 00       	mov    $0x14,%edx
622c8a:	8b c3                	mov    %ebx,%eax
622c8c:	e8 3b fb dd ff       	call   0x4027cc
622c91:	5b                   	pop    %ebx
622c92:	c3                   	ret
622c93:	90                   	nop
622c94:	53                   	push   %ebx
622c95:	56                   	push   %esi
622c96:	84 d2                	test   %dl,%dl
622c98:	74 08                	je     0x622ca2
622c9a:	83 c4 f0             	add    $0xfffffff0,%esp
622c9d:	e8 3a 11 de ff       	call   0x403ddc
622ca2:	8b da                	mov    %edx,%ebx
622ca4:	8b f0                	mov    %eax,%esi
622ca6:	33 d2                	xor    %edx,%edx
622ca8:	8b c6                	mov    %esi,%eax
622caa:	e8 99 0d de ff       	call   0x403a48
622caf:	b2 01                	mov    $0x1,%dl
622cb1:	a1 24 94 41 00       	mov    0x419424,%eax
622cb6:	e8 8d 0d de ff       	call   0x403a48
622cbb:	89 46 04             	mov    %eax,0x4(%esi)
622cbe:	8b c6                	mov    %esi,%eax
622cc0:	84 db                	test   %bl,%bl
622cc2:	74 0f                	je     0x622cd3
622cc4:	e8 6b 11 de ff       	call   0x403e34
622cc9:	64 8f 05 00 00 00 00 	pop    %fs:0x0
622cd0:	83 c4 0c             	add    $0xc,%esp
622cd3:	8b c6                	mov    %esi,%eax
622cd5:	5e                   	pop    %esi
622cd6:	5b                   	pop    %ebx
622cd7:	c3                   	ret
622cd8:	53                   	push   %ebx
622cd9:	56                   	push   %esi
622cda:	e8 65 11 de ff       	call   0x403e44
622cdf:	8b da                	mov    %edx,%ebx
622ce1:	8b f0                	mov    %eax,%esi
622ce3:	8b c6                	mov    %esi,%eax
622ce5:	e8 96 00 00 00       	call   0x622d80
622cea:	8b 46 04             	mov    0x4(%esi),%eax
622ced:	e8 86 0d de ff       	call   0x403a78
622cf2:	8b d3                	mov    %ebx,%edx
622cf4:	80 e2 fc             	and    $0xfc,%dl
622cf7:	8b c6                	mov    %esi,%eax
622cf9:	e8 6a 0d de ff       	call   0x403a68
622cfe:	84 db                	test   %bl,%bl
622d00:	7e 07                	jle    0x622d09
622d02:	8b c6                	mov    %esi,%eax
622d04:	e8 23 11 de ff       	call   0x403e2c
622d09:	5e                   	pop    %esi
622d0a:	5b                   	pop    %ebx
622d0b:	c3                   	ret
622d0c:	8b 40 04             	mov    0x4(%eax),%eax
622d0f:	e8 ac 90 df ff       	call   0x41bdc0
622d14:	c3                   	ret
622d15:	8d 40 00             	lea    0x0(%eax),%eax
622d18:	8b 40 04             	mov    0x4(%eax),%eax
622d1b:	8b 40 08             	mov    0x8(%eax),%eax
622d1e:	c3                   	ret
622d1f:	90                   	nop
622d20:	53                   	push   %ebx
622d21:	56                   	push   %esi
622d22:	57                   	push   %edi
622d23:	55                   	push   %ebp
622d24:	83 c4 ec             	add    $0xffffffec,%esp
622d27:	8b f1                	mov    %ecx,%esi
622d29:	8b da                	mov    %edx,%ebx
622d2b:	8b f8                	mov    %eax,%edi
622d2d:	8b ec                	mov    %esp,%ebp
622d2f:	8b c5                	mov    %ebp,%eax
622d31:	ba 14 00 00 00       	mov    $0x14,%edx
622d36:	e8 99 51 de ff       	call   0x407ed4
622d3b:	33 c0                	xor    %eax,%eax
622d3d:	89 45 04             	mov    %eax,0x4(%ebp)
622d40:	c7 45 08 01 00 00 00 	movl   $0x1,0x8(%ebp)
622d47:	c7 45 0c ff ff ff ff 	movl   $0xffffffff,0xc(%ebp)
622d4e:	c7 45 10 01 00 00 00 	movl   $0x1,0x10(%ebp)
622d55:	85 f6                	test   %esi,%esi
622d57:	7c 1f                	jl     0x622d78
622d59:	46                   	inc    %esi
622d5a:	66 8b 03             	mov    (%ebx),%ax
622d5d:	66 89 45 00          	mov    %ax,0x0(%ebp)
622d61:	8b c5                	mov    %ebp,%eax
622d63:	e8 c4 fe ff ff       	call   0x622c2c
622d68:	8b d0                	mov    %eax,%edx
622d6a:	8b 47 04             	mov    0x4(%edi),%eax
622d6d:	e8 a2 8e df ff       	call   0x41bc14
622d72:	83 c3 02             	add    $0x2,%ebx
622d75:	4e                   	dec    %esi
622d76:	75 e2                	jne    0x622d5a
622d78:	83 c4 14             	add    $0x14,%esp
622d7b:	5d                   	pop    %ebp
622d7c:	5f                   	pop    %edi
622d7d:	5e                   	pop    %esi
622d7e:	5b                   	pop    %ebx
622d7f:	c3                   	ret
622d80:	53                   	push   %ebx
622d81:	56                   	push   %esi
622d82:	57                   	push   %edi
622d83:	8b f8                	mov    %eax,%edi
622d85:	8b 47 04             	mov    0x4(%edi),%eax
622d88:	8b 58 08             	mov    0x8(%eax),%ebx
622d8b:	4b                   	dec    %ebx
622d8c:	85 db                	test   %ebx,%ebx
622d8e:	7c 15                	jl     0x622da5
622d90:	43                   	inc    %ebx
622d91:	33 f6                	xor    %esi,%esi
622d93:	8b d6                	mov    %esi,%edx
622d95:	8b c7                	mov    %edi,%eax
622d97:	e8 70 ff ff ff       	call   0x622d0c
622d9c:	e8 d3 fe ff ff       	call   0x622c74
622da1:	46                   	inc    %esi
622da2:	4b                   	dec    %ebx
622da3:	75 ee                	jne    0x622d93
622da5:	8b 47 04             	mov    0x4(%edi),%eax
622da8:	8b 10                	mov    (%eax),%edx
622daa:	ff 52 08             	call   *0x8(%edx)
622dad:	5f                   	pop    %edi
622dae:	5e                   	pop    %esi
622daf:	5b                   	pop    %ebx
622db0:	c3                   	ret
622db1:	8d 40 00             	lea    0x0(%eax),%eax
622db4:	53                   	push   %ebx
622db5:	8b d8                	mov    %eax,%ebx
622db7:	6a 00                	push   $0x0
622db9:	8b cb                	mov    %ebx,%ecx
622dbb:	b2 01                	mov    $0x1,%dl
622dbd:	a1 a4 2b 62 00       	mov    0x622ba4,%eax
622dc2:	e8 95 00 00 00       	call   0x622e5c
622dc7:	5b                   	pop    %ebx
622dc8:	c3                   	ret
622dc9:	8d 40 00             	lea    0x0(%eax),%eax
622dcc:	66 8b 00             	mov    (%eax),%ax
622dcf:	66 3b 02             	cmp    (%edx),%ax
622dd2:	0f 94 c0             	sete   %al
622dd5:	c3                   	ret
622dd6:	8b c0                	mov    %eax,%eax
622dd8:	8b 40 10             	mov    0x10(%eax),%eax
622ddb:	23 42 10             	and    0x10(%edx),%eax
622dde:	0f 95 c0             	setne  %al
622de1:	c3                   	ret
622de2:	8b c0                	mov    %eax,%eax
622de4:	53                   	push   %ebx
622de5:	56                   	push   %esi
622de6:	57                   	push   %edi
622de7:	55                   	push   %ebp
622de8:	51                   	push   %ecx
622de9:	8b ea                	mov    %edx,%ebp
622deb:	8b f8                	mov    %eax,%edi
622ded:	83 7d 08 01          	cmpl   $0x1,0x8(%ebp)
622df1:	74 07                	je     0x622dfa
622df3:	b8 64 00 04 80       	mov    $0x80040064,%eax
622df8:	eb 5b                	jmp    0x622e55
622dfa:	c6 04 24 00          	movb   $0x0,(%esp)
622dfe:	8b c7                	mov    %edi,%eax
622e00:	e8 13 ff ff ff       	call   0x622d18
622e05:	8b f0                	mov    %eax,%esi
622e07:	4e                   	dec    %esi
622e08:	85 f6                	test   %esi,%esi
622e0a:	7c 37                	jl     0x622e43
622e0c:	46                   	inc    %esi
622e0d:	33 db                	xor    %ebx,%ebx
622e0f:	8b d3                	mov    %ebx,%edx
622e11:	8b c7                	mov    %edi,%eax
622e13:	e8 f4 fe ff ff       	call   0x622d0c
622e18:	8b d5                	mov    %ebp,%edx
622e1a:	e8 ad ff ff ff       	call   0x622dcc
622e1f:	84 c0                	test   %al,%al
622e21:	74 1c                	je     0x622e3f
622e23:	c6 04 24 01          	movb   $0x1,(%esp)
622e27:	8b d3                	mov    %ebx,%edx
622e29:	8b c7                	mov    %edi,%eax
622e2b:	e8 dc fe ff ff       	call   0x622d0c
622e30:	8b d5                	mov    %ebp,%edx
622e32:	e8 a1 ff ff ff       	call   0x622dd8
622e37:	84 c0                	test   %al,%al
622e39:	74 04                	je     0x622e3f
622e3b:	33 c0                	xor    %eax,%eax
622e3d:	eb 16                	jmp    0x622e55
622e3f:	43                   	inc    %ebx
622e40:	4e                   	dec    %esi
622e41:	75 cc                	jne    0x622e0f
622e43:	80 3c 24 00          	cmpb   $0x0,(%esp)
622e47:	74 07                	je     0x622e50
622e49:	b8 69 00 04 80       	mov    $0x80040069,%eax
622e4e:	eb 05                	jmp    0x622e55
622e50:	b8 64 00 04 80       	mov    $0x80040064,%eax
622e55:	5a                   	pop    %edx
622e56:	5d                   	pop    %ebp
622e57:	5f                   	pop    %edi
622e58:	5e                   	pop    %esi
622e59:	5b                   	pop    %ebx
622e5a:	c3                   	ret
622e5b:	90                   	nop
622e5c:	55                   	push   %ebp
622e5d:	8b ec                	mov    %esp,%ebp
622e5f:	53                   	push   %ebx
622e60:	56                   	push   %esi
622e61:	57                   	push   %edi
622e62:	84 d2                	test   %dl,%dl
622e64:	74 08                	je     0x622e6e
622e66:	83 c4 f0             	add    $0xfffffff0,%esp
622e69:	e8 6e 0f de ff       	call   0x403ddc
622e6e:	8b f1                	mov    %ecx,%esi
622e70:	8b da                	mov    %edx,%ebx
622e72:	8b f8                	mov    %eax,%edi
622e74:	33 d2                	xor    %edx,%edx
622e76:	8b c7                	mov    %edi,%eax
622e78:	e8 cb 0b de ff       	call   0x403a48
622e7d:	89 77 08             	mov    %esi,0x8(%edi)
622e80:	8b 45 08             	mov    0x8(%ebp),%eax
622e83:	89 47 0c             	mov    %eax,0xc(%edi)
622e86:	8b c7                	mov    %edi,%eax
622e88:	84 db                	test   %bl,%bl
622e8a:	74 0f                	je     0x622e9b
622e8c:	e8 a3 0f de ff       	call   0x403e34
622e91:	64 8f 05 00 00 00 00 	pop    %fs:0x0
622e98:	83 c4 0c             	add    $0xc,%esp
622e9b:	8b c7                	mov    %edi,%eax
622e9d:	5f                   	pop    %edi
622e9e:	5e                   	pop    %esi
622e9f:	5b                   	pop    %ebx
622ea0:	5d                   	pop    %ebp
622ea1:	c2 04 00             	ret    $0x4
622ea4:	53                   	push   %ebx
622ea5:	56                   	push   %esi
622ea6:	e8 99 0f de ff       	call   0x403e44
622eab:	8b da                	mov    %edx,%ebx
622ead:	8b f0                	mov    %eax,%esi
622eaf:	8b d3                	mov    %ebx,%edx
622eb1:	80 e2 fc             	and    $0xfc,%dl
622eb4:	8b c6                	mov    %esi,%eax
622eb6:	e8 ad 0b de ff       	call   0x403a68
622ebb:	84 db                	test   %bl,%bl
622ebd:	7e 07                	jle    0x622ec6
622ebf:	8b c6                	mov    %esi,%eax
622ec1:	e8 66 0f de ff       	call   0x403e2c
622ec6:	5e                   	pop    %esi
622ec7:	5b                   	pop    %ebx
622ec8:	c3                   	ret
622ec9:	8d 40 00             	lea    0x0(%eax),%eax
622ecc:	55                   	push   %ebp
622ecd:	8b ec                	mov    %esp,%ebp
622ecf:	53                   	push   %ebx
622ed0:	56                   	push   %esi
622ed1:	57                   	push   %edi
622ed2:	8b 7d 10             	mov    0x10(%ebp),%edi
622ed5:	8b 75 0c             	mov    0xc(%ebp),%esi
622ed8:	8b 5d 08             	mov    0x8(%ebp),%ebx
622edb:	68 18 2f 62 00       	push   $0x622f18
622ee0:	56                   	push   %esi
622ee1:	e8 d2 5d df ff       	call   0x418cb8
622ee6:	84 c0                	test   %al,%al
622ee8:	75 0f                	jne    0x622ef9
622eea:	68 28 2f 62 00       	push   $0x622f28
622eef:	56                   	push   %esi
622ef0:	e8 c3 5d df ff       	call   0x418cb8
622ef5:	84 c0                	test   %al,%al
622ef7:	74 0c                	je     0x622f05
622ef9:	89 1f                	mov    %ebx,(%edi)
622efb:	53                   	push   %ebx
622efc:	8b 03                	mov    (%ebx),%eax
622efe:	ff 50 04             	call   *0x4(%eax)
622f01:	33 c0                	xor    %eax,%eax
622f03:	eb 09                	jmp    0x622f0e
622f05:	33 c0                	xor    %eax,%eax
622f07:	89 07                	mov    %eax,(%edi)
622f09:	b8 02 40 00 80       	mov    $0x80004002,%eax
622f0e:	5f                   	pop    %edi
622f0f:	5e                   	pop    %esi
622f10:	5b                   	pop    %ebx
622f11:	5d                   	pop    %ebp
622f12:	c2 0c 00             	ret    $0xc
622f1d:	00 00                	add    %al,(%eax)
622f1f:	00 c0                	add    %al,%al
622f21:	00 00                	add    %al,(%eax)
622f23:	00 00                	add    %al,(%eax)
622f25:	00 00                	add    %al,(%eax)
622f27:	46                   	inc    %esi
622f28:	03 01                	add    (%ecx),%eax
622f2a:	00 00                	add    %al,(%eax)
622f2c:	00 00                	add    %al,(%eax)
622f2e:	00 00                	add    %al,(%eax)
622f30:	c0 00 00             	rolb   $0x0,(%eax)
622f33:	00 00                	add    %al,(%eax)
622f35:	00 00                	add    %al,(%eax)
622f37:	46                   	inc    %esi
622f38:	55                   	push   %ebp
622f39:	8b ec                	mov    %esp,%ebp
622f3b:	8b 45 08             	mov    0x8(%ebp),%eax
622f3e:	ff 40 04             	incl   0x4(%eax)
622f41:	8b 40 04             	mov    0x4(%eax),%eax
622f44:	5d                   	pop    %ebp
622f45:	c2 04 00             	ret    $0x4
622f48:	55                   	push   %ebp
622f49:	8b ec                	mov    %esp,%ebp
622f4b:	53                   	push   %ebx
622f4c:	8b 45 08             	mov    0x8(%ebp),%eax
622f4f:	ff 48 04             	decl   0x4(%eax)
622f52:	8b 50 04             	mov    0x4(%eax),%edx
622f55:	8b da                	mov    %edx,%ebx
622f57:	85 d2                	test   %edx,%edx
622f59:	75 05                	jne    0x622f60
622f5b:	e8 18 0b de ff       	call   0x403a78
622f60:	8b c3                	mov    %ebx,%eax
622f62:	5b                   	pop    %ebx
622f63:	5d                   	pop    %ebp
622f64:	c2 04 00             	ret    $0x4
622f67:	90                   	nop
622f68:	55                   	push   %ebp
622f69:	8b ec                	mov    %esp,%ebp
622f6b:	53                   	push   %ebx
622f6c:	56                   	push   %esi
622f6d:	57                   	push   %edi
622f6e:	8b 7d 0c             	mov    0xc(%ebp),%edi
622f71:	8b 5d 08             	mov    0x8(%ebp),%ebx
622f74:	33 f6                	xor    %esi,%esi
622f76:	eb 23                	jmp    0x622f9b
622f78:	8b 53 0c             	mov    0xc(%ebx),%edx
622f7b:	8b 43 08             	mov    0x8(%ebx),%eax
622f7e:	e8 89 fd ff ff       	call   0x622d0c
622f83:	8d 14 b6             	lea    (%esi,%esi,4),%edx
622f86:	8b 4d 10             	mov    0x10(%ebp),%ecx
622f89:	56                   	push   %esi
622f8a:	57                   	push   %edi
622f8b:	8b f0                	mov    %eax,%esi
622f8d:	8d 3c 91             	lea    (%ecx,%edx,4),%edi
622f90:	a5                   	movsl  %ds:(%esi),%es:(%edi)
622f91:	a5                   	movsl  %ds:(%esi),%es:(%edi)
622f92:	a5                   	movsl  %ds:(%esi),%es:(%edi)
622f93:	a5                   	movsl  %ds:(%esi),%es:(%edi)
622f94:	a5                   	movsl  %ds:(%esi),%es:(%edi)
622f95:	5f                   	pop    %edi
622f96:	5e                   	pop    %esi
622f97:	ff 43 0c             	incl   0xc(%ebx)
622f9a:	46                   	inc    %esi
622f9b:	3b fe                	cmp    %esi,%edi
622f9d:	7e 0d                	jle    0x622fac
622f9f:	8b 43 08             	mov    0x8(%ebx),%eax
622fa2:	e8 71 fd ff ff       	call   0x622d18
622fa7:	3b 43 0c             	cmp    0xc(%ebx),%eax
622faa:	7f cc                	jg     0x622f78
622fac:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
622fb0:	74 05                	je     0x622fb7
622fb2:	8b 45 14             	mov    0x14(%ebp),%eax
622fb5:	89 30                	mov    %esi,(%eax)
622fb7:	3b fe                	cmp    %esi,%edi
622fb9:	75 04                	jne    0x622fbf