422976:	8b d8                	mov    %eax,%ebx
422978:	74 14                	je     0x42298e
42297a:	ff 76 4c             	push   0x4c(%esi)
42297d:	68 b4 33 40 00       	push   $0x4033b4
422982:	57                   	push   %edi
422983:	53                   	push   %ebx
422984:	e8 de 06 00 00       	call   0x423067
422989:	83 c4 10             	add    $0x10,%esp
42298c:	8b d8                	mov    %eax,%ebx
42298e:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
422994:	50                   	push   %eax
422995:	ff 76 04             	push   0x4(%esi)
422998:	ff 15 f4 a1 44 00    	call   *0x44a1f4
42299e:	50                   	push   %eax
42299f:	ff 76 24             	push   0x24(%esi)
4229a2:	ff b5 f8 fd ff ff    	push   -0x208(%ebp)
4229a8:	68 d0 33 40 00       	push   $0x4033d0
4229ad:	57                   	push   %edi
4229ae:	53                   	push   %ebx
4229af:	e8 b3 06 00 00       	call   0x423067
4229b4:	33 c9                	xor    %ecx,%ecx
4229b6:	83 c4 20             	add    $0x20,%esp
4229b9:	39 4e 0c             	cmp    %ecx,0xc(%esi)
4229bc:	75 0e                	jne    0x4229cc
4229be:	39 4e 28             	cmp    %ecx,0x28(%esi)
4229c1:	75 09                	jne    0x4229cc
4229c3:	39 4e 18             	cmp    %ecx,0x18(%esi)
4229c6:	0f 84 85 00 00 00    	je     0x422a51
4229cc:	68 04 34 40 00       	push   $0x403404
4229d1:	57                   	push   %edi
4229d2:	50                   	push   %eax
4229d3:	e8 8f 06 00 00       	call   0x423067
4229d8:	83 c4 0c             	add    $0xc,%esp
4229db:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
4229df:	74 12                	je     0x4229f3
4229e1:	ff 76 0c             	push   0xc(%esi)
4229e4:	68 10 34 40 00       	push   $0x403410
4229e9:	57                   	push   %edi
4229ea:	50                   	push   %eax
4229eb:	e8 77 06 00 00       	call   0x423067
4229f0:	83 c4 10             	add    $0x10,%esp
4229f3:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
4229f7:	74 12                	je     0x422a0b
4229f9:	ff 76 28             	push   0x28(%esi)
4229fc:	68 28 34 40 00       	push   $0x403428
422a01:	57                   	push   %edi
422a02:	50                   	push   %eax
422a03:	e8 5f 06 00 00       	call   0x423067
422a08:	83 c4 10             	add    $0x10,%esp
422a0b:	83 7e 14 00          	cmpl   $0x0,0x14(%esi)
422a0f:	74 17                	je     0x422a28
422a11:	ff 76 14             	push   0x14(%esi)
422a14:	ff 76 18             	push   0x18(%esi)
422a17:	68 50 34 40 00       	push   $0x403450
422a1c:	57                   	push   %edi
422a1d:	50                   	push   %eax
422a1e:	e8 44 06 00 00       	call   0x423067
422a23:	83 c4 14             	add    $0x14,%esp
422a26:	eb 29                	jmp    0x422a51
422a28:	83 7e 18 00          	cmpl   $0x0,0x18(%esi)
422a2c:	74 14                	je     0x422a42
422a2e:	ff 76 18             	push   0x18(%esi)
422a31:	68 68 34 40 00       	push   $0x403468
422a36:	57                   	push   %edi
422a37:	50                   	push   %eax
422a38:	e8 2a 06 00 00       	call   0x423067
422a3d:	83 c4 10             	add    $0x10,%esp
422a40:	eb 0f                	jmp    0x422a51
422a42:	68 78 34 40 00       	push   $0x403478
422a47:	57                   	push   %edi
422a48:	50                   	push   %eax
422a49:	e8 19 06 00 00       	call   0x423067
422a4e:	83 c4 0c             	add    $0xc,%esp
422a51:	5f                   	pop    %edi
422a52:	8b 4d fc             	mov    -0x4(%ebp),%ecx
422a55:	33 c0                	xor    %eax,%eax
422a57:	5e                   	pop    %esi
422a58:	33 cd                	xor    %ebp,%ecx
422a5a:	5b                   	pop    %ebx
422a5b:	e8 d0 40 ff ff       	call   0x416b30
422a60:	c9                   	leave
422a61:	c2 04 00             	ret    $0x4
422a64:	8b ff                	mov    %edi,%edi
422a66:	55                   	push   %ebp
422a67:	8b ec                	mov    %esp,%ebp
422a69:	56                   	push   %esi
422a6a:	57                   	push   %edi
422a6b:	8b f2                	mov    %edx,%esi
422a6d:	8b f9                	mov    %ecx,%edi
422a6f:	ff 15 80 a0 44 00    	call   *0x44a080
422a75:	85 c0                	test   %eax,%eax
422a77:	75 1d                	jne    0x422a96
422a79:	68 9c 02 07 80       	push   $0x8007029c
422a7e:	6a 02                	push   $0x2
422a80:	ff 75 14             	push   0x14(%ebp)
422a83:	8b d6                	mov    %esi,%edx
422a85:	8b cf                	mov    %edi,%ecx
422a87:	50                   	push   %eax
422a88:	50                   	push   %eax
422a89:	ff 75 08             	push   0x8(%ebp)
422a8c:	e8 cd 09 00 00       	call   0x42345e
422a91:	b8 9c 02 00 00       	mov    $0x29c,%eax
422a96:	5f                   	pop    %edi
422a97:	5e                   	pop    %esi
422a98:	5d                   	pop    %ebp
422a99:	c2 10 00             	ret    $0x10
422a9c:	8b ff                	mov    %edi,%edi
422a9e:	55                   	push   %ebp
422a9f:	8b ec                	mov    %esp,%ebp
422aa1:	ff 75 04             	push   0x4(%ebp)
422aa4:	33 d2                	xor    %edx,%edx
422aa6:	51                   	push   %ecx
422aa7:	51                   	push   %ecx
422aa8:	6a 00                	push   $0x0
422aaa:	33 c9                	xor    %ecx,%ecx
422aac:	e8 b3 ff ff ff       	call   0x422a64
422ab1:	85 c0                	test   %eax,%eax
422ab3:	7e 08                	jle    0x422abd
422ab5:	0f b7 c0             	movzwl %ax,%eax
422ab8:	0d 00 00 07 80       	or     $0x80070000,%eax
422abd:	5d                   	pop    %ebp
422abe:	c3                   	ret
422abf:	8b ff                	mov    %edi,%edi
422ac1:	55                   	push   %ebp
422ac2:	8b ec                	mov    %esp,%ebp
422ac4:	51                   	push   %ecx
422ac5:	56                   	push   %esi
422ac6:	8b 35 48 e5 42 00    	mov    0x42e548,%esi
422acc:	57                   	push   %edi
422acd:	ff 15 f4 a1 44 00    	call   *0x44a1f4
422ad3:	6a 0a                	push   $0xa
422ad5:	5f                   	pop    %edi
422ad6:	8b c8                	mov    %eax,%ecx
422ad8:	33 d2                	xor    %edx,%edx
422ada:	f7 f7                	div    %edi
422adc:	5f                   	pop    %edi
422add:	8b 04 96             	mov    (%esi,%edx,4),%eax
422ae0:	5e                   	pop    %esi
422ae1:	eb 07                	jmp    0x422aea
422ae3:	39 08                	cmp    %ecx,(%eax)
422ae5:	74 0b                	je     0x422af2
422ae7:	8b 40 04             	mov    0x4(%eax),%eax
422aea:	85 c0                	test   %eax,%eax
422aec:	75 f5                	jne    0x422ae3
422aee:	c9                   	leave
422aef:	c2 04 00             	ret    $0x4
422af2:	83 c0 08             	add    $0x8,%eax
422af5:	eb f7                	jmp    0x422aee
422af7:	8b ff                	mov    %edi,%edi
422af9:	56                   	push   %esi
422afa:	57                   	push   %edi
422afb:	8b f1                	mov    %ecx,%esi
422afd:	ff 15 f4 a1 44 00    	call   *0x44a1f4
422b03:	6a 0a                	push   $0xa
422b05:	5f                   	pop    %edi
422b06:	8b c8                	mov    %eax,%ecx
422b08:	33 d2                	xor    %edx,%edx
422b0a:	f7 f7                	div    %edi
422b0c:	5f                   	pop    %edi
422b0d:	8b 04 96             	mov    (%esi,%edx,4),%eax
422b10:	5e                   	pop    %esi
422b11:	eb 07                	jmp    0x422b1a
422b13:	39 08                	cmp    %ecx,(%eax)
422b15:	74 0a                	je     0x422b21
422b17:	8b 40 04             	mov    0x4(%eax),%eax
422b1a:	85 c0                	test   %eax,%eax
422b1c:	75 f5                	jne    0x422b13
422b1e:	c2 04 00             	ret    $0x4
422b21:	83 c0 08             	add    $0x8,%eax
422b24:	eb f8                	jmp    0x422b1e
422b26:	8b ff                	mov    %edi,%edi
422b28:	55                   	push   %ebp
422b29:	8b ec                	mov    %esp,%ebp
422b2b:	81 ec 0c 01 00 00    	sub    $0x10c,%esp
422b31:	a1 b4 e0 42 00       	mov    0x42e0b4,%eax
422b36:	33 c5                	xor    %ebp,%eax
422b38:	89 45 fc             	mov    %eax,-0x4(%ebp)
422b3b:	53                   	push   %ebx
422b3c:	8b 5d 10             	mov    0x10(%ebp),%ebx
422b3f:	33 c0                	xor    %eax,%eax
422b41:	56                   	push   %esi
422b42:	8b 75 08             	mov    0x8(%ebp),%esi
422b45:	89 85 f4 fe ff ff    	mov    %eax,-0x10c(%ebp)
422b4b:	57                   	push   %edi
422b4c:	8b 7d 0c             	mov    0xc(%ebp),%edi
422b4f:	85 f6                	test   %esi,%esi
422b51:	74 25                	je     0x422b78
422b53:	8d 85 f4 fe ff ff    	lea    -0x10c(%ebp),%eax
422b59:	50                   	push   %eax
422b5a:	56                   	push   %esi
422b5b:	6a 06                	push   $0x6
422b5d:	ff 15 78 a1 44 00    	call   *0x44a178
422b63:	85 c0                	test   %eax,%eax
422b65:	75 0b                	jne    0x422b72
422b67:	8b cf                	mov    %edi,%ecx
422b69:	e8 04 51 ff ff       	call   0x417c72
422b6e:	32 c0                	xor    %al,%al
422b70:	eb 6b                	jmp    0x422bdd
422b72:	8b 85 f4 fe ff ff    	mov    -0x10c(%ebp),%eax
422b78:	85 ff                	test   %edi,%edi
422b7a:	74 0c                	je     0x422b88
422b7c:	85 f6                	test   %esi,%esi
422b7e:	74 04                	je     0x422b84
422b80:	2b f0                	sub    %eax,%esi
422b82:	eb 02                	jmp    0x422b86
422b84:	33 f6                	xor    %esi,%esi
422b86:	89 37                	mov    %esi,(%edi)
422b88:	85 db                	test   %ebx,%ebx
422b8a:	74 4f                	je     0x422bdb
422b8c:	68 04 01 00 00       	push   $0x104
422b91:	8d 8d f8 fe ff ff    	lea    -0x108(%ebp),%ecx
422b97:	51                   	push   %ecx
422b98:	50                   	push   %eax
422b99:	ff 15 6c a1 44 00    	call   *0x44a16c
422b9f:	85 c0                	test   %eax,%eax
422ba1:	74 cb                	je     0x422b6e
422ba3:	8d 8d f8 fe ff ff    	lea    -0x108(%ebp),%ecx
422ba9:	8d 51 01             	lea    0x1(%ecx),%edx
422bac:	8a 01                	mov    (%ecx),%al
422bae:	41                   	inc    %ecx
422baf:	84 c0                	test   %al,%al
422bb1:	75 f9                	jne    0x422bac
422bb3:	2b ca                	sub    %edx,%ecx
422bb5:	8d 85 f8 fe ff ff    	lea    -0x108(%ebp),%eax
422bbb:	03 c1                	add    %ecx,%eax
422bbd:	eb 07                	jmp    0x422bc6
422bbf:	80 78 ff 5c          	cmpb   $0x5c,-0x1(%eax)
422bc3:	74 0b                	je     0x422bd0
422bc5:	48                   	dec    %eax
422bc6:	8d 8d f8 fe ff ff    	lea    -0x108(%ebp),%ecx
422bcc:	3b c1                	cmp    %ecx,%eax
422bce:	77 ef                	ja     0x422bbf
422bd0:	8b 55 14             	mov    0x14(%ebp),%edx
422bd3:	8b cb                	mov    %ebx,%ecx
422bd5:	50                   	push   %eax
422bd6:	e8 35 0b 00 00       	call   0x423710
422bdb:	b0 01                	mov    $0x1,%al
422bdd:	8b 4d fc             	mov    -0x4(%ebp),%ecx
422be0:	5f                   	pop    %edi
422be1:	5e                   	pop    %esi
422be2:	33 cd                	xor    %ebp,%ecx
422be4:	5b                   	pop    %ebx
422be5:	e8 46 3f ff ff       	call   0x416b30
422bea:	c9                   	leave
422beb:	c2 10 00             	ret    $0x10
422bee:	8b ff                	mov    %edi,%edi
422bf0:	55                   	push   %ebp
422bf1:	8b ec                	mov    %esp,%ebp
422bf3:	51                   	push   %ecx
422bf4:	56                   	push   %esi
422bf5:	8b 35 44 e5 42 00    	mov    0x42e544,%esi
422bfb:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
422bff:	75 1e                	jne    0x422c1f
422c01:	8b 0e                	mov    (%esi),%ecx
422c03:	8d 55 fc             	lea    -0x4(%ebp),%edx
422c06:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
422c0a:	e8 6f f7 ff ff       	call   0x42237e
422c0f:	85 c0                	test   %eax,%eax
422c11:	78 0c                	js     0x422c1f
422c13:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
422c17:	75 06                	jne    0x422c1f
422c19:	8b 45 fc             	mov    -0x4(%ebp),%eax
422c1c:	89 46 04             	mov    %eax,0x4(%esi)
422c1f:	8b 46 04             	mov    0x4(%esi),%eax
422c22:	5e                   	pop    %esi
422c23:	8d 48 10             	lea    0x10(%eax),%ecx
422c26:	f7 d8                	neg    %eax
422c28:	1b c0                	sbb    %eax,%eax
422c2a:	23 c1                	and    %ecx,%eax
422c2c:	c9                   	leave
422c2d:	c3                   	ret
422c2e:	8b ff                	mov    %edi,%edi
422c30:	55                   	push   %ebp
422c31:	8b ec                	mov    %esp,%ebp
422c33:	51                   	push   %ecx
422c34:	53                   	push   %ebx
422c35:	8b 5d 08             	mov    0x8(%ebp),%ebx
422c38:	32 c0                	xor    %al,%al
422c3a:	56                   	push   %esi
422c3b:	57                   	push   %edi
422c3c:	8b f2                	mov    %edx,%esi
422c3e:	8b f9                	mov    %ecx,%edi
422c40:	89 7d fc             	mov    %edi,-0x4(%ebp)
422c43:	c6 03 00             	movb   $0x0,(%ebx)
422c46:	85 f6                	test   %esi,%esi
422c48:	0f 84 91 00 00 00    	je     0x422cdf
422c4e:	ff 75 0c             	push   0xc(%ebp)
422c51:	8b 56 08             	mov    0x8(%esi),%edx
422c54:	53                   	push   %ebx
422c55:	e8 d4 ff ff ff       	call   0x422c2e
422c5a:	8b 56 10             	mov    0x10(%esi),%edx
422c5d:	85 d2                	test   %edx,%edx
422c5f:	74 7e                	je     0x422cdf
422c61:	83 3a 00             	cmpl   $0x0,(%edx)
422c64:	75 0e                	jne    0x422c74
422c66:	33 c0                	xor    %eax,%eax
422c68:	40                   	inc    %eax
422c69:	f0 0f c1 05 f0 e0 42 	lock xadd %eax,0x42e0f0
422c70:	00
422c71:	40                   	inc    %eax
422c72:	89 02                	mov    %eax,(%edx)
422c74:	83 7f 2c 00          	cmpl   $0x0,0x2c(%edi)
422c78:	75 0b                	jne    0x422c85
422c7a:	8b f2                	mov    %edx,%esi
422c7c:	8d 7f 2c             	lea    0x2c(%edi),%edi
422c7f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
422c80:	a5                   	movsl  %ds:(%esi),%es:(%edi)
422c81:	a5                   	movsl  %ds:(%esi),%es:(%edi)
422c82:	8b 7d fc             	mov    -0x4(%ebp),%edi
422c85:	83 c7 38             	add    $0x38,%edi
422c88:	8b f2                	mov    %edx,%esi
422c8a:	8b cb                	mov    %ebx,%ecx
422c8c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
422c8d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
422c8e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
422c8f:	8b 75 0c             	mov    0xc(%ebp),%esi
422c92:	8d 79 01             	lea    0x1(%ecx),%edi
422c95:	03 f3                	add    %ebx,%esi
422c97:	8a 01                	mov    (%ecx),%al
422c99:	41                   	inc    %ecx
422c9a:	84 c0                	test   %al,%al
422c9c:	75 f9                	jne    0x422c97
422c9e:	2b cf                	sub    %edi,%ecx
422ca0:	8b c6                	mov    %esi,%eax
422ca2:	03 d9                	add    %ecx,%ebx
422ca4:	2b c3                	sub    %ebx,%eax
422ca6:	83 f8 02             	cmp    $0x2,%eax
422ca9:	7e 32                	jle    0x422cdd
422cab:	c6 03 5c             	movb   $0x5c,(%ebx)
422cae:	43                   	inc    %ebx
422caf:	8b 4a 04             	mov    0x4(%edx),%ecx
422cb2:	8d 79 01             	lea    0x1(%ecx),%edi
422cb5:	8a 01                	mov    (%ecx),%al
422cb7:	41                   	inc    %ecx
422cb8:	84 c0                	test   %al,%al
422cba:	75 f9                	jne    0x422cb5
422cbc:	2b cf                	sub    %edi,%ecx
422cbe:	2b f3                	sub    %ebx,%esi
422cc0:	8d 79 01             	lea    0x1(%ecx),%edi
422cc3:	3b fe                	cmp    %esi,%edi
422cc5:	72 02                	jb     0x422cc9
422cc7:	8b fe                	mov    %esi,%edi
422cc9:	57                   	push   %edi
422cca:	ff 72 04             	push   0x4(%edx)
422ccd:	56                   	push   %esi
422cce:	53                   	push   %ebx
422ccf:	ff 15 e8 a3 44 00    	call   *0x44a3e8
422cd5:	83 c4 10             	add    $0x10,%esp
422cd8:	c6 44 1f ff 00       	movb   $0x0,-0x1(%edi,%ebx,1)
422cdd:	b0 01                	mov    $0x1,%al