410a63:	3b 05 1c 38 42 00    	cmp    0x42381c,%eax
410a69:	74 07                	je     0x410a72
410a6b:	50                   	push   %eax
410a6c:	e8 b3 8d ff ff       	call   0x409824
410a71:	59                   	pop    %ecx
410a72:	5e                   	pop    %esi
410a73:	5d                   	pop    %ebp
410a74:	c3                   	ret
410a75:	8b ff                	mov    %edi,%edi
410a77:	55                   	push   %ebp
410a78:	8b ec                	mov    %esp,%ebp
410a7a:	56                   	push   %esi
410a7b:	8b 75 08             	mov    0x8(%ebp),%esi
410a7e:	85 f6                	test   %esi,%esi
410a80:	74 59                	je     0x410adb
410a82:	8b 06                	mov    (%esi),%eax
410a84:	3b 05 d0 37 42 00    	cmp    0x4237d0,%eax
410a8a:	74 07                	je     0x410a93
410a8c:	50                   	push   %eax
410a8d:	e8 92 8d ff ff       	call   0x409824
410a92:	59                   	pop    %ecx
410a93:	8b 46 04             	mov    0x4(%esi),%eax
410a96:	3b 05 d4 37 42 00    	cmp    0x4237d4,%eax
410a9c:	74 07                	je     0x410aa5
410a9e:	50                   	push   %eax
410a9f:	e8 80 8d ff ff       	call   0x409824
410aa4:	59                   	pop    %ecx
410aa5:	8b 46 08             	mov    0x8(%esi),%eax
410aa8:	3b 05 d8 37 42 00    	cmp    0x4237d8,%eax
410aae:	74 07                	je     0x410ab7
410ab0:	50                   	push   %eax
410ab1:	e8 6e 8d ff ff       	call   0x409824
410ab6:	59                   	pop    %ecx
410ab7:	8b 46 30             	mov    0x30(%esi),%eax
410aba:	3b 05 00 38 42 00    	cmp    0x423800,%eax
410ac0:	74 07                	je     0x410ac9
410ac2:	50                   	push   %eax
410ac3:	e8 5c 8d ff ff       	call   0x409824
410ac8:	59                   	pop    %ecx
410ac9:	8b 46 34             	mov    0x34(%esi),%eax
410acc:	3b 05 04 38 42 00    	cmp    0x423804,%eax
410ad2:	74 07                	je     0x410adb
410ad4:	50                   	push   %eax
410ad5:	e8 4a 8d ff ff       	call   0x409824
410ada:	59                   	pop    %ecx
410adb:	5e                   	pop    %esi
410adc:	5d                   	pop    %ebp
410add:	c3                   	ret
410ade:	8b ff                	mov    %edi,%edi
410ae0:	55                   	push   %ebp
410ae1:	8b ec                	mov    %esp,%ebp
410ae3:	8b 45 0c             	mov    0xc(%ebp),%eax
410ae6:	53                   	push   %ebx
410ae7:	56                   	push   %esi
410ae8:	8b 75 08             	mov    0x8(%ebp),%esi
410aeb:	57                   	push   %edi
410aec:	33 ff                	xor    %edi,%edi
410aee:	8d 04 86             	lea    (%esi,%eax,4),%eax
410af1:	8b c8                	mov    %eax,%ecx
410af3:	2b ce                	sub    %esi,%ecx
410af5:	83 c1 03             	add    $0x3,%ecx
410af8:	c1 e9 02             	shr    $0x2,%ecx
410afb:	3b c6                	cmp    %esi,%eax
410afd:	1b db                	sbb    %ebx,%ebx
410aff:	f7 d3                	not    %ebx
410b01:	23 d9                	and    %ecx,%ebx
410b03:	74 10                	je     0x410b15
410b05:	ff 36                	push   (%esi)
410b07:	e8 18 8d ff ff       	call   0x409824
410b0c:	47                   	inc    %edi
410b0d:	8d 76 04             	lea    0x4(%esi),%esi
410b10:	59                   	pop    %ecx
410b11:	3b fb                	cmp    %ebx,%edi
410b13:	75 f0                	jne    0x410b05
410b15:	5f                   	pop    %edi
410b16:	5e                   	pop    %esi
410b17:	5b                   	pop    %ebx
410b18:	5d                   	pop    %ebp
410b19:	c3                   	ret
410b1a:	8b ff                	mov    %edi,%edi
410b1c:	55                   	push   %ebp
410b1d:	8b ec                	mov    %esp,%ebp
410b1f:	56                   	push   %esi
410b20:	8b 75 08             	mov    0x8(%ebp),%esi
410b23:	85 f6                	test   %esi,%esi
410b25:	0f 84 d0 00 00 00    	je     0x410bfb
410b2b:	6a 07                	push   $0x7
410b2d:	56                   	push   %esi
410b2e:	e8 ab ff ff ff       	call   0x410ade
410b33:	8d 46 1c             	lea    0x1c(%esi),%eax
410b36:	6a 07                	push   $0x7
410b38:	50                   	push   %eax
410b39:	e8 a0 ff ff ff       	call   0x410ade
410b3e:	8d 46 38             	lea    0x38(%esi),%eax
410b41:	6a 0c                	push   $0xc
410b43:	50                   	push   %eax
410b44:	e8 95 ff ff ff       	call   0x410ade
410b49:	8d 46 68             	lea    0x68(%esi),%eax
410b4c:	6a 0c                	push   $0xc
410b4e:	50                   	push   %eax
410b4f:	e8 8a ff ff ff       	call   0x410ade
410b54:	8d 86 98 00 00 00    	lea    0x98(%esi),%eax
410b5a:	6a 02                	push   $0x2
410b5c:	50                   	push   %eax
410b5d:	e8 7c ff ff ff       	call   0x410ade
410b62:	ff b6 a0 00 00 00    	push   0xa0(%esi)
410b68:	e8 b7 8c ff ff       	call   0x409824
410b6d:	ff b6 a4 00 00 00    	push   0xa4(%esi)
410b73:	e8 ac 8c ff ff       	call   0x409824
410b78:	ff b6 a8 00 00 00    	push   0xa8(%esi)
410b7e:	e8 a1 8c ff ff       	call   0x409824
410b83:	8d 86 b4 00 00 00    	lea    0xb4(%esi),%eax
410b89:	6a 07                	push   $0x7
410b8b:	50                   	push   %eax
410b8c:	e8 4d ff ff ff       	call   0x410ade
410b91:	8d 86 d0 00 00 00    	lea    0xd0(%esi),%eax
410b97:	6a 07                	push   $0x7
410b99:	50                   	push   %eax
410b9a:	e8 3f ff ff ff       	call   0x410ade
410b9f:	83 c4 44             	add    $0x44,%esp
410ba2:	8d 86 ec 00 00 00    	lea    0xec(%esi),%eax
410ba8:	6a 0c                	push   $0xc
410baa:	50                   	push   %eax
410bab:	e8 2e ff ff ff       	call   0x410ade
410bb0:	8d 86 1c 01 00 00    	lea    0x11c(%esi),%eax
410bb6:	6a 0c                	push   $0xc
410bb8:	50                   	push   %eax
410bb9:	e8 20 ff ff ff       	call   0x410ade
410bbe:	8d 86 4c 01 00 00    	lea    0x14c(%esi),%eax
410bc4:	6a 02                	push   $0x2
410bc6:	50                   	push   %eax
410bc7:	e8 12 ff ff ff       	call   0x410ade
410bcc:	ff b6 54 01 00 00    	push   0x154(%esi)
410bd2:	e8 4d 8c ff ff       	call   0x409824
410bd7:	ff b6 58 01 00 00    	push   0x158(%esi)
410bdd:	e8 42 8c ff ff       	call   0x409824
410be2:	ff b6 5c 01 00 00    	push   0x15c(%esi)
410be8:	e8 37 8c ff ff       	call   0x409824
410bed:	ff b6 60 01 00 00    	push   0x160(%esi)
410bf3:	e8 2c 8c ff ff       	call   0x409824
410bf8:	83 c4 28             	add    $0x28,%esp
410bfb:	5e                   	pop    %esi
410bfc:	5d                   	pop    %ebp
410bfd:	c3                   	ret
410bfe:	8b ff                	mov    %edi,%edi
410c00:	55                   	push   %ebp
410c01:	8b ec                	mov    %esp,%ebp
410c03:	8b 45 10             	mov    0x10(%ebp),%eax
410c06:	85 c0                	test   %eax,%eax
410c08:	75 02                	jne    0x410c0c
410c0a:	5d                   	pop    %ebp
410c0b:	c3                   	ret
410c0c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
410c0f:	8b 55 08             	mov    0x8(%ebp),%edx
410c12:	56                   	push   %esi
410c13:	83 e8 01             	sub    $0x1,%eax
410c16:	74 15                	je     0x410c2d
410c18:	0f b7 32             	movzwl (%edx),%esi
410c1b:	66 85 f6             	test   %si,%si
410c1e:	74 0d                	je     0x410c2d
410c20:	66 3b 31             	cmp    (%ecx),%si
410c23:	75 08                	jne    0x410c2d
410c25:	83 c2 02             	add    $0x2,%edx
410c28:	83 c1 02             	add    $0x2,%ecx
410c2b:	eb e6                	jmp    0x410c13
410c2d:	0f b7 02             	movzwl (%edx),%eax
410c30:	0f b7 09             	movzwl (%ecx),%ecx
410c33:	2b c1                	sub    %ecx,%eax
410c35:	5e                   	pop    %esi
410c36:	5d                   	pop    %ebp
410c37:	c3                   	ret
410c38:	8b ff                	mov    %edi,%edi
410c3a:	55                   	push   %ebp
410c3b:	8b ec                	mov    %esp,%ebp
410c3d:	83 ec 18             	sub    $0x18,%esp
410c40:	a1 0c 30 42 00       	mov    0x42300c,%eax
410c45:	33 c5                	xor    %ebp,%eax
410c47:	89 45 fc             	mov    %eax,-0x4(%ebp)
410c4a:	53                   	push   %ebx
410c4b:	56                   	push   %esi
410c4c:	57                   	push   %edi
410c4d:	ff 75 08             	push   0x8(%ebp)
410c50:	8d 4d e8             	lea    -0x18(%ebp),%ecx
410c53:	e8 59 4a ff ff       	call   0x4056b1
410c58:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
410c5b:	85 c9                	test   %ecx,%ecx
410c5d:	75 0b                	jne    0x410c6a
410c5f:	8b 45 ec             	mov    -0x14(%ebp),%eax
410c62:	8b 40 08             	mov    0x8(%eax),%eax
410c65:	8b c8                	mov    %eax,%ecx
410c67:	89 45 1c             	mov    %eax,0x1c(%ebp)
410c6a:	33 c0                	xor    %eax,%eax
410c6c:	33 ff                	xor    %edi,%edi
410c6e:	39 45 20             	cmp    %eax,0x20(%ebp)
410c71:	57                   	push   %edi
410c72:	57                   	push   %edi
410c73:	ff 75 14             	push   0x14(%ebp)
410c76:	0f 95 c0             	setne  %al
410c79:	ff 75 10             	push   0x10(%ebp)
410c7c:	8d 04 c5 01 00 00 00 	lea    0x1(,%eax,8),%eax
410c83:	50                   	push   %eax
410c84:	51                   	push   %ecx
410c85:	ff 15 2c b1 41 00    	call   *0x41b12c
410c8b:	89 45 f8             	mov    %eax,-0x8(%ebp)
410c8e:	85 c0                	test   %eax,%eax
410c90:	0f 84 99 00 00 00    	je     0x410d2f
410c96:	8d 1c 00             	lea    (%eax,%eax,1),%ebx
410c99:	8d 4b 08             	lea    0x8(%ebx),%ecx
410c9c:	3b d9                	cmp    %ecx,%ebx
410c9e:	1b c0                	sbb    %eax,%eax
410ca0:	85 c1                	test   %eax,%ecx
410ca2:	74 4a                	je     0x410cee
410ca4:	8d 4b 08             	lea    0x8(%ebx),%ecx
410ca7:	3b d9                	cmp    %ecx,%ebx
410ca9:	1b c0                	sbb    %eax,%eax
410cab:	23 c1                	and    %ecx,%eax
410cad:	8d 4b 08             	lea    0x8(%ebx),%ecx
410cb0:	3d 00 04 00 00       	cmp    $0x400,%eax
410cb5:	77 19                	ja     0x410cd0
410cb7:	3b d9                	cmp    %ecx,%ebx
410cb9:	1b c0                	sbb    %eax,%eax
410cbb:	23 c1                	and    %ecx,%eax
410cbd:	e8 0e 77 00 00       	call   0x4183d0
410cc2:	8b f4                	mov    %esp,%esi
410cc4:	85 f6                	test   %esi,%esi
410cc6:	74 60                	je     0x410d28
410cc8:	c7 06 cc cc 00 00    	movl   $0xcccc,(%esi)
410cce:	eb 19                	jmp    0x410ce9
410cd0:	3b d9                	cmp    %ecx,%ebx
410cd2:	1b c0                	sbb    %eax,%eax
410cd4:	23 c1                	and    %ecx,%eax
410cd6:	50                   	push   %eax
410cd7:	e8 82 8b ff ff       	call   0x40985e
410cdc:	8b f0                	mov    %eax,%esi
410cde:	59                   	pop    %ecx
410cdf:	85 f6                	test   %esi,%esi
410ce1:	74 45                	je     0x410d28
410ce3:	c7 06 dd dd 00 00    	movl   $0xdddd,(%esi)
410ce9:	83 c6 08             	add    $0x8,%esi
410cec:	eb 02                	jmp    0x410cf0
410cee:	8b f7                	mov    %edi,%esi
410cf0:	85 f6                	test   %esi,%esi
410cf2:	74 34                	je     0x410d28
410cf4:	53                   	push   %ebx
410cf5:	57                   	push   %edi
410cf6:	56                   	push   %esi
410cf7:	e8 64 3d ff ff       	call   0x404a60
410cfc:	83 c4 0c             	add    $0xc,%esp
410cff:	ff 75 f8             	push   -0x8(%ebp)
410d02:	56                   	push   %esi
410d03:	ff 75 14             	push   0x14(%ebp)
410d06:	ff 75 10             	push   0x10(%ebp)
410d09:	6a 01                	push   $0x1
410d0b:	ff 75 1c             	push   0x1c(%ebp)
410d0e:	ff 15 2c b1 41 00    	call   *0x41b12c
410d14:	85 c0                	test   %eax,%eax
410d16:	74 10                	je     0x410d28
410d18:	ff 75 18             	push   0x18(%ebp)
410d1b:	50                   	push   %eax
410d1c:	56                   	push   %esi
410d1d:	ff 75 0c             	push   0xc(%ebp)
410d20:	ff 15 ec b0 41 00    	call   *0x41b0ec
410d26:	8b f8                	mov    %eax,%edi
410d28:	56                   	push   %esi
410d29:	e8 27 00 00 00       	call   0x410d55
410d2e:	59                   	pop    %ecx
410d2f:	80 7d f4 00          	cmpb   $0x0,-0xc(%ebp)
410d33:	74 0a                	je     0x410d3f
410d35:	8b 45 e8             	mov    -0x18(%ebp),%eax
410d38:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
410d3f:	8b c7                	mov    %edi,%eax
410d41:	8d 65 dc             	lea    -0x24(%ebp),%esp
410d44:	5f                   	pop    %edi
410d45:	5e                   	pop    %esi
410d46:	5b                   	pop    %ebx
410d47:	8b 4d fc             	mov    -0x4(%ebp),%ecx
410d4a:	33 cd                	xor    %ebp,%ecx
410d4c:	e8 05 22 ff ff       	call   0x402f56
410d51:	8b e5                	mov    %ebp,%esp
410d53:	5d                   	pop    %ebp
410d54:	c3                   	ret
410d55:	8b ff                	mov    %edi,%edi
410d57:	55                   	push   %ebp
410d58:	8b ec                	mov    %esp,%ebp
410d5a:	8b 45 08             	mov    0x8(%ebp),%eax
410d5d:	85 c0                	test   %eax,%eax
410d5f:	74 12                	je     0x410d73
410d61:	83 e8 08             	sub    $0x8,%eax
410d64:	81 38 dd dd 00 00    	cmpl   $0xdddd,(%eax)
410d6a:	75 07                	jne    0x410d73
410d6c:	50                   	push   %eax
410d6d:	e8 b2 8a ff ff       	call   0x409824
410d72:	59                   	pop    %ecx
410d73:	5d                   	pop    %ebp
410d74:	c3                   	ret
410d75:	8b ff                	mov    %edi,%edi
410d77:	55                   	push   %ebp
410d78:	8b ec                	mov    %esp,%ebp
410d7a:	8b 45 08             	mov    0x8(%ebp),%eax
410d7d:	f0 ff 40 0c          	lock incl 0xc(%eax)
410d81:	8b 48 7c             	mov    0x7c(%eax),%ecx
410d84:	85 c9                	test   %ecx,%ecx
410d86:	74 03                	je     0x410d8b
410d88:	f0 ff 01             	lock incl (%ecx)
410d8b:	8b 88 84 00 00 00    	mov    0x84(%eax),%ecx
410d91:	85 c9                	test   %ecx,%ecx
410d93:	74 03                	je     0x410d98
410d95:	f0 ff 01             	lock incl (%ecx)
410d98:	8b 88 80 00 00 00    	mov    0x80(%eax),%ecx
410d9e:	85 c9                	test   %ecx,%ecx
410da0:	74 03                	je     0x410da5
410da2:	f0 ff 01             	lock incl (%ecx)
410da5:	8b 88 8c 00 00 00    	mov    0x8c(%eax),%ecx
410dab:	85 c9                	test   %ecx,%ecx
410dad:	74 03                	je     0x410db2
410daf:	f0 ff 01             	lock incl (%ecx)
410db2:	56                   	push   %esi
410db3:	6a 06                	push   $0x6
410db5:	8d 48 28             	lea    0x28(%eax),%ecx
410db8:	5e                   	pop    %esi
410db9:	81 79 f8 c8 31 42 00 	cmpl   $0x4231c8,-0x8(%ecx)
410dc0:	74 09                	je     0x410dcb
410dc2:	8b 11                	mov    (%ecx),%edx
410dc4:	85 d2                	test   %edx,%edx
410dc6:	74 03                	je     0x410dcb
410dc8:	f0 ff 02             	lock incl (%edx)
410dcb:	83 79 f4 00          	cmpl   $0x0,-0xc(%ecx)
410dcf:	74 0a                	je     0x410ddb
410dd1:	8b 51 fc             	mov    -0x4(%ecx),%edx
410dd4:	85 d2                	test   %edx,%edx
410dd6:	74 03                	je     0x410ddb
410dd8:	f0 ff 02             	lock incl (%edx)
410ddb:	83 c1 10             	add    $0x10,%ecx
410dde:	83 ee 01             	sub    $0x1,%esi
410de1:	75 d6                	jne    0x410db9
410de3:	ff b0 9c 00 00 00    	push   0x9c(%eax)
410de9:	e8 4e 01 00 00       	call   0x410f3c
410dee:	59                   	pop    %ecx
410def:	5e                   	pop    %esi
410df0:	5d                   	pop    %ebp
410df1:	c3                   	ret
410df2:	8b ff                	mov    %edi,%edi
410df4:	55                   	push   %ebp
410df5:	8b ec                	mov    %esp,%ebp
410df7:	51                   	push   %ecx
410df8:	53                   	push   %ebx
410df9:	56                   	push   %esi
410dfa:	8b 75 08             	mov    0x8(%ebp),%esi
410dfd:	57                   	push   %edi
410dfe:	8b 86 88 00 00 00    	mov    0x88(%esi),%eax