601c6b:	85 c9                	test   %ecx,%ecx
601c6d:	75 24                	jne    0x601c93
601c6f:	6a 04                	push   $0x4
601c71:	8d 7e 04             	lea    0x4(%esi),%edi
601c74:	57                   	push   %edi
601c75:	53                   	push   %ebx
601c76:	e8 1b 4b ff ff       	call   0x5f6796
601c7b:	6a 00                	push   $0x0
601c7d:	89 45 fc             	mov    %eax,-0x4(%ebp)
601c80:	e8 a3 2b 00 00       	call   0x604828
601c85:	8b 4d fc             	mov    -0x4(%ebp),%ecx
601c88:	83 c4 10             	add    $0x10,%esp
601c8b:	85 c9                	test   %ecx,%ecx
601c8d:	0f 84 80 00 00 00    	je     0x601d13
601c93:	8d 04 b1             	lea    (%ecx,%esi,4),%eax
601c96:	8b d9                	mov    %ecx,%ebx
601c98:	89 45 fc             	mov    %eax,-0x4(%ebp)
601c9b:	8d 34 b9             	lea    (%ecx,%edi,4),%esi
601c9e:	a1 d4 89 72 00       	mov    0x7289d4,%eax
601ca3:	8b 7d fc             	mov    -0x4(%ebp),%edi
601ca6:	8b cf                	mov    %edi,%ecx
601ca8:	89 45 f4             	mov    %eax,-0xc(%ebp)
601cab:	8b c6                	mov    %esi,%eax
601cad:	2b c7                	sub    %edi,%eax
601caf:	83 c0 03             	add    $0x3,%eax
601cb2:	c1 e8 02             	shr    $0x2,%eax
601cb5:	3b f7                	cmp    %edi,%esi
601cb7:	1b d2                	sbb    %edx,%edx
601cb9:	f7 d2                	not    %edx
601cbb:	23 d0                	and    %eax,%edx
601cbd:	74 12                	je     0x601cd1
601cbf:	8b 7d f4             	mov    -0xc(%ebp),%edi
601cc2:	33 c0                	xor    %eax,%eax
601cc4:	40                   	inc    %eax
601cc5:	89 39                	mov    %edi,(%ecx)
601cc7:	8d 49 04             	lea    0x4(%ecx),%ecx
601cca:	3b c2                	cmp    %edx,%eax
601ccc:	75 f6                	jne    0x601cc4
601cce:	8b 7d fc             	mov    -0x4(%ebp),%edi
601cd1:	8b 45 f8             	mov    -0x8(%ebp),%eax
601cd4:	8b 40 04             	mov    0x4(%eax),%eax
601cd7:	ff 30                	push   (%eax)
601cd9:	e8 ae a5 ff ff       	call   0x5fc28c
601cde:	53                   	push   %ebx
601cdf:	89 07                	mov    %eax,(%edi)
601ce1:	e8 a6 a5 ff ff       	call   0x5fc28c
601ce6:	8b 5d f8             	mov    -0x8(%ebp),%ebx
601ce9:	8b 0b                	mov    (%ebx),%ecx
601ceb:	8b 09                	mov    (%ecx),%ecx
601ced:	89 01                	mov    %eax,(%ecx)
601cef:	8d 47 04             	lea    0x4(%edi),%eax
601cf2:	50                   	push   %eax
601cf3:	e8 94 a5 ff ff       	call   0x5fc28c
601cf8:	8b 0b                	mov    (%ebx),%ecx
601cfa:	56                   	push   %esi
601cfb:	8b 09                	mov    (%ecx),%ecx
601cfd:	89 41 04             	mov    %eax,0x4(%ecx)
601d00:	e8 87 a5 ff ff       	call   0x5fc28c
601d05:	8b 0b                	mov    (%ebx),%ecx
601d07:	83 c4 10             	add    $0x10,%esp
601d0a:	8b 09                	mov    (%ecx),%ecx
601d0c:	89 41 08             	mov    %eax,0x8(%ecx)
601d0f:	33 c0                	xor    %eax,%eax
601d11:	eb 03                	jmp    0x601d16
601d13:	83 c8 ff             	or     $0xffffffff,%eax
601d16:	5f                   	pop    %edi
601d17:	5e                   	pop    %esi
601d18:	5b                   	pop    %ebx
601d19:	c9                   	leave
601d1a:	c3                   	ret
601d1b:	8b ff                	mov    %edi,%edi
601d1d:	55                   	push   %ebp
601d1e:	8b ec                	mov    %esp,%ebp
601d20:	83 ec 14             	sub    $0x14,%esp
601d23:	53                   	push   %ebx
601d24:	8b d9                	mov    %ecx,%ebx
601d26:	57                   	push   %edi
601d27:	89 5d ec             	mov    %ebx,-0x14(%ebp)
601d2a:	8b 03                	mov    (%ebx),%eax
601d2c:	8b 38                	mov    (%eax),%edi
601d2e:	85 ff                	test   %edi,%edi
601d30:	75 08                	jne    0x601d3a
601d32:	83 c8 ff             	or     $0xffffffff,%eax
601d35:	e9 b7 00 00 00       	jmp    0x601df1
601d3a:	8b 15 d4 89 72 00    	mov    0x7289d4,%edx
601d40:	8b ca                	mov    %edx,%ecx
601d42:	56                   	push   %esi
601d43:	8b 37                	mov    (%edi),%esi
601d45:	83 e1 1f             	and    $0x1f,%ecx
601d48:	8b 7f 04             	mov    0x4(%edi),%edi
601d4b:	33 f2                	xor    %edx,%esi
601d4d:	33 fa                	xor    %edx,%edi
601d4f:	d3 ce                	ror    %cl,%esi
601d51:	d3 cf                	ror    %cl,%edi
601d53:	85 f6                	test   %esi,%esi
601d55:	0f 84 93 00 00 00    	je     0x601dee
601d5b:	83 fe ff             	cmp    $0xffffffff,%esi
601d5e:	0f 84 8a 00 00 00    	je     0x601dee
601d64:	89 55 fc             	mov    %edx,-0x4(%ebp)
601d67:	89 7d f4             	mov    %edi,-0xc(%ebp)
601d6a:	89 75 f8             	mov    %esi,-0x8(%ebp)
601d6d:	83 ef 04             	sub    $0x4,%edi
601d70:	3b fe                	cmp    %esi,%edi
601d72:	72 54                	jb     0x601dc8
601d74:	8b 07                	mov    (%edi),%eax
601d76:	3b 45 fc             	cmp    -0x4(%ebp),%eax
601d79:	74 f2                	je     0x601d6d
601d7b:	33 c2                	xor    %edx,%eax
601d7d:	8b 55 fc             	mov    -0x4(%ebp),%edx
601d80:	d3 c8                	ror    %cl,%eax
601d82:	8b c8                	mov    %eax,%ecx
601d84:	89 17                	mov    %edx,(%edi)
601d86:	89 45 f0             	mov    %eax,-0x10(%ebp)
601d89:	ff 15 e0 24 68 00    	call   *0x6824e0
601d8f:	ff 55 f0             	call   *-0x10(%ebp)
601d92:	8b 03                	mov    (%ebx),%eax
601d94:	8b 15 d4 89 72 00    	mov    0x7289d4,%edx
601d9a:	8b ca                	mov    %edx,%ecx
601d9c:	83 e1 1f             	and    $0x1f,%ecx
601d9f:	8b 00                	mov    (%eax),%eax
601da1:	8b 18                	mov    (%eax),%ebx
601da3:	8b 40 04             	mov    0x4(%eax),%eax
601da6:	33 da                	xor    %edx,%ebx
601da8:	d3 cb                	ror    %cl,%ebx
601daa:	33 c2                	xor    %edx,%eax
601dac:	d3 c8                	ror    %cl,%eax
601dae:	3b 5d f8             	cmp    -0x8(%ebp),%ebx
601db1:	89 5d f0             	mov    %ebx,-0x10(%ebp)
601db4:	8b 5d ec             	mov    -0x14(%ebp),%ebx
601db7:	75 05                	jne    0x601dbe
601db9:	3b 45 f4             	cmp    -0xc(%ebp),%eax
601dbc:	74 af                	je     0x601d6d
601dbe:	8b 75 f0             	mov    -0x10(%ebp),%esi
601dc1:	8b f8                	mov    %eax,%edi
601dc3:	89 45 f4             	mov    %eax,-0xc(%ebp)
601dc6:	eb a2                	jmp    0x601d6a
601dc8:	83 fe ff             	cmp    $0xffffffff,%esi
601dcb:	74 0d                	je     0x601dda
601dcd:	56                   	push   %esi
601dce:	e8 55 2a 00 00       	call   0x604828
601dd3:	8b 15 d4 89 72 00    	mov    0x7289d4,%edx
601dd9:	59                   	pop    %ecx
601dda:	8b 03                	mov    (%ebx),%eax
601ddc:	8b 00                	mov    (%eax),%eax
601dde:	89 10                	mov    %edx,(%eax)
601de0:	8b 03                	mov    (%ebx),%eax
601de2:	8b 00                	mov    (%eax),%eax
601de4:	89 50 04             	mov    %edx,0x4(%eax)
601de7:	8b 03                	mov    (%ebx),%eax
601de9:	8b 00                	mov    (%eax),%eax
601deb:	89 50 08             	mov    %edx,0x8(%eax)
601dee:	33 c0                	xor    %eax,%eax
601df0:	5e                   	pop    %esi
601df1:	5f                   	pop    %edi
601df2:	5b                   	pop    %ebx
601df3:	c9                   	leave
601df4:	c3                   	ret
601df5:	8b ff                	mov    %edi,%edi
601df7:	55                   	push   %ebp
601df8:	8b ec                	mov    %esp,%ebp
601dfa:	ff 75 08             	push   0x8(%ebp)
601dfd:	68 84 10 73 00       	push   $0x731084
601e02:	e8 5a 00 00 00       	call   0x601e61
601e07:	59                   	pop    %ecx
601e08:	59                   	pop    %ecx
601e09:	5d                   	pop    %ebp
601e0a:	c3                   	ret
601e0b:	8b ff                	mov    %edi,%edi
601e0d:	55                   	push   %ebp
601e0e:	8b ec                	mov    %esp,%ebp
601e10:	83 ec 10             	sub    $0x10,%esp
601e13:	6a 02                	push   $0x2
601e15:	8d 45 08             	lea    0x8(%ebp),%eax
601e18:	89 45 f4             	mov    %eax,-0xc(%ebp)
601e1b:	8d 4d ff             	lea    -0x1(%ebp),%ecx
601e1e:	58                   	pop    %eax
601e1f:	89 45 f8             	mov    %eax,-0x8(%ebp)
601e22:	89 45 f0             	mov    %eax,-0x10(%ebp)
601e25:	8d 45 f8             	lea    -0x8(%ebp),%eax
601e28:	50                   	push   %eax
601e29:	8d 45 f4             	lea    -0xc(%ebp),%eax
601e2c:	50                   	push   %eax
601e2d:	8d 45 f0             	lea    -0x10(%ebp),%eax
601e30:	50                   	push   %eax
601e31:	e8 06 fd ff ff       	call   0x601b3c
601e36:	c9                   	leave
601e37:	c3                   	ret
601e38:	8b ff                	mov    %edi,%edi
601e3a:	55                   	push   %ebp
601e3b:	8b ec                	mov    %esp,%ebp
601e3d:	8b 4d 08             	mov    0x8(%ebp),%ecx
601e40:	85 c9                	test   %ecx,%ecx
601e42:	75 05                	jne    0x601e49
601e44:	83 c8 ff             	or     $0xffffffff,%eax
601e47:	5d                   	pop    %ebp
601e48:	c3                   	ret
601e49:	8b 01                	mov    (%ecx),%eax
601e4b:	3b 41 08             	cmp    0x8(%ecx),%eax
601e4e:	75 0d                	jne    0x601e5d
601e50:	a1 d4 89 72 00       	mov    0x7289d4,%eax
601e55:	89 01                	mov    %eax,(%ecx)
601e57:	89 41 04             	mov    %eax,0x4(%ecx)
601e5a:	89 41 08             	mov    %eax,0x8(%ecx)
601e5d:	33 c0                	xor    %eax,%eax
601e5f:	5d                   	pop    %ebp
601e60:	c3                   	ret
601e61:	8b ff                	mov    %edi,%edi
601e63:	55                   	push   %ebp
601e64:	8b ec                	mov    %esp,%ebp
601e66:	83 ec 14             	sub    $0x14,%esp
601e69:	8d 45 08             	lea    0x8(%ebp),%eax
601e6c:	89 45 ec             	mov    %eax,-0x14(%ebp)
601e6f:	8d 4d ff             	lea    -0x1(%ebp),%ecx
601e72:	6a 02                	push   $0x2
601e74:	8d 45 0c             	lea    0xc(%ebp),%eax
601e77:	89 45 f0             	mov    %eax,-0x10(%ebp)
601e7a:	58                   	pop    %eax
601e7b:	89 45 f8             	mov    %eax,-0x8(%ebp)
601e7e:	89 45 f4             	mov    %eax,-0xc(%ebp)
601e81:	8d 45 f8             	lea    -0x8(%ebp),%eax
601e84:	50                   	push   %eax
601e85:	8d 45 ec             	lea    -0x14(%ebp),%eax
601e88:	50                   	push   %eax
601e89:	8d 45 f4             	lea    -0xc(%ebp),%eax
601e8c:	50                   	push   %eax
601e8d:	e8 05 fd ff ff       	call   0x601b97
601e92:	c9                   	leave
601e93:	c3                   	ret
601e94:	cc                   	int3
601e95:	cc                   	int3
601e96:	cc                   	int3
601e97:	cc                   	int3
601e98:	cc                   	int3
601e99:	cc                   	int3
601e9a:	cc                   	int3
601e9b:	cc                   	int3
601e9c:	cc                   	int3
601e9d:	cc                   	int3
601e9e:	cc                   	int3
601e9f:	cc                   	int3
601ea0:	c7 05 b4 10 73 00 80 	movl   $0x728b80,0x7310b4
601ea7:	8b 72 00
601eaa:	b0 01                	mov    $0x1,%al
601eac:	c3                   	ret
601ead:	cc                   	int3
601eae:	cc                   	int3
601eaf:	cc                   	int3
601eb0:	68 84 10 73 00       	push   $0x731084
601eb5:	e8 7e ff ff ff       	call   0x601e38
601eba:	c7 04 24 90 10 73 00 	movl   $0x731090,(%esp)
601ec1:	e8 72 ff ff ff       	call   0x601e38
601ec6:	59                   	pop    %ecx
601ec7:	b0 01                	mov    $0x1,%al
601ec9:	c3                   	ret
601eca:	cc                   	int3
601ecb:	cc                   	int3
601ecc:	cc                   	int3
601ecd:	cc                   	int3
601ece:	cc                   	int3
601ecf:	cc                   	int3
601ed0:	e8 2b fc ff ff       	call   0x601b00
601ed5:	b0 01                	mov    $0x1,%al
601ed7:	c3                   	ret
601ed8:	cc                   	int3
601ed9:	cc                   	int3
601eda:	cc                   	int3
601edb:	cc                   	int3
601edc:	cc                   	int3
601edd:	cc                   	int3
601ede:	cc                   	int3
601edf:	cc                   	int3
601ee0:	8b ff                	mov    %edi,%edi
601ee2:	56                   	push   %esi
601ee3:	8b 35 d4 89 72 00    	mov    0x7289d4,%esi
601ee9:	56                   	push   %esi
601eea:	e8 bd af fe ff       	call   0x5eceac
601eef:	56                   	push   %esi
601ef0:	e8 c4 f2 ff ff       	call   0x6011b9
601ef5:	56                   	push   %esi
601ef6:	e8 f1 a7 ff ff       	call   0x5fc6ec
601efb:	56                   	push   %esi
601efc:	e8 f0 08 00 00       	call   0x6027f1
601f01:	56                   	push   %esi
601f02:	e8 8a a5 ff ff       	call   0x5fc491
601f07:	83 c4 14             	add    $0x14,%esp
601f0a:	b0 01                	mov    $0x1,%al
601f0c:	5e                   	pop    %esi
601f0d:	c3                   	ret
601f0e:	cc                   	int3
601f0f:	cc                   	int3
601f10:	6a 00                	push   $0x0
601f12:	e8 87 3d fe ff       	call   0x5e5c9e
601f17:	59                   	pop    %ecx
601f18:	c3                   	ret
601f19:	cc                   	int3
601f1a:	cc                   	int3
601f1b:	cc                   	int3
601f1c:	cc                   	int3
601f1d:	cc                   	int3
601f1e:	cc                   	int3
601f1f:	cc                   	int3
601f20:	8b ff                	mov    %edi,%edi
601f22:	55                   	push   %ebp
601f23:	8b ec                	mov    %esp,%ebp
601f25:	51                   	push   %ecx
601f26:	68 98 14 73 00       	push   $0x731498
601f2b:	8d 4d ff             	lea    -0x1(%ebp),%ecx
601f2e:	e8 5d 00 00 00       	call   0x601f90
601f33:	b0 01                	mov    $0x1,%al
601f35:	c9                   	leave
601f36:	c3                   	ret
601f37:	cc                   	int3
601f38:	cc                   	int3
601f39:	cc                   	int3
601f3a:	cc                   	int3
601f3b:	cc                   	int3
601f3c:	cc                   	int3
601f3d:	cc                   	int3
601f3e:	cc                   	int3
601f3f:	cc                   	int3
601f40:	8b ff                	mov    %edi,%edi
601f42:	56                   	push   %esi
601f43:	ff 35 cc 12 73 00    	push   0x7312cc
601f49:	e8 da 28 00 00       	call   0x604828
601f4e:	ff 35 d0 12 73 00    	push   0x7312d0
601f54:	33 f6                	xor    %esi,%esi
601f56:	89 35 cc 12 73 00    	mov    %esi,0x7312cc
601f5c:	e8 c7 28 00 00       	call   0x604828
601f61:	ff 35 ac 14 73 00    	push   0x7314ac
601f67:	89 35 d0 12 73 00    	mov    %esi,0x7312d0
601f6d:	e8 b6 28 00 00       	call   0x604828
601f72:	ff 35 b0 14 73 00    	push   0x7314b0
601f78:	89 35 ac 14 73 00    	mov    %esi,0x7314ac
601f7e:	e8 a5 28 00 00       	call   0x604828
601f83:	83 c4 10             	add    $0x10,%esp
601f86:	89 35 b0 14 73 00    	mov    %esi,0x7314b0
601f8c:	b0 01                	mov    $0x1,%al
601f8e:	5e                   	pop    %esi
601f8f:	c3                   	ret
601f90:	8b ff                	mov    %edi,%edi
601f92:	55                   	push   %ebp
601f93:	8b ec                	mov    %esp,%ebp
601f95:	56                   	push   %esi
601f96:	8b 75 08             	mov    0x8(%ebp),%esi
601f99:	83 c9 ff             	or     $0xffffffff,%ecx
601f9c:	8b 06                	mov    (%esi),%eax
601f9e:	f0 0f c1 08          	lock xadd %ecx,(%eax)
601fa2:	75 15                	jne    0x601fb9
601fa4:	57                   	push   %edi
601fa5:	bf 40 8e 72 00       	mov    $0x728e40,%edi