419bc3:	e8 6b fe ff ff       	call   0x419a33
419bc8:	8b ce                	mov    %esi,%ecx
419bca:	e8 08 ff ff ff       	call   0x419ad7
419bcf:	89 78 04             	mov    %edi,0x4(%eax)
419bd2:	8b 4e 04             	mov    0x4(%esi),%ecx
419bd5:	8b 55 08             	mov    0x8(%ebp),%edx
419bd8:	8b 0c 91             	mov    (%ecx,%edx,4),%ecx
419bdb:	89 08                	mov    %ecx,(%eax)
419bdd:	8b 4e 04             	mov    0x4(%esi),%ecx
419be0:	8b 55 08             	mov    0x8(%ebp),%edx
419be3:	89 04 91             	mov    %eax,(%ecx,%edx,4)
419be6:	5f                   	pop    %edi
419be7:	83 c0 08             	add    $0x8,%eax
419bea:	5e                   	pop    %esi
419beb:	5d                   	pop    %ebp
419bec:	c2 04 00             	ret    $0x4
419bef:	56                   	push   %esi
419bf0:	8b 71 04             	mov    0x4(%ecx),%esi
419bf3:	85 f6                	test   %esi,%esi
419bf5:	57                   	push   %edi
419bf6:	74 32                	je     0x419c2a
419bf8:	8b 7c 24 0c          	mov    0xc(%esp),%edi
419bfc:	33 d2                	xor    %edx,%edx
419bfe:	8b c7                	mov    %edi,%eax
419c00:	c1 e8 04             	shr    $0x4,%eax
419c03:	f7 71 08             	divl   0x8(%ecx)
419c06:	8b 04 96             	mov    (%esi,%edx,4),%eax
419c09:	8d 14 96             	lea    (%esi,%edx,4),%edx
419c0c:	85 c0                	test   %eax,%eax
419c0e:	74 1a                	je     0x419c2a
419c10:	39 78 04             	cmp    %edi,0x4(%eax)
419c13:	74 06                	je     0x419c1b
419c15:	8b d0                	mov    %eax,%edx
419c17:	8b 00                	mov    (%eax),%eax
419c19:	eb f1                	jmp    0x419c0c
419c1b:	8b 30                	mov    (%eax),%esi
419c1d:	50                   	push   %eax
419c1e:	89 32                	mov    %esi,(%edx)
419c20:	e8 fc fe ff ff       	call   0x419b21
419c25:	6a 01                	push   $0x1
419c27:	58                   	pop    %eax
419c28:	eb 02                	jmp    0x419c2c
419c2a:	33 c0                	xor    %eax,%eax
419c2c:	5f                   	pop    %edi
419c2d:	5e                   	pop    %esi
419c2e:	c2 04 00             	ret    $0x4
419c31:	8b 44 24 04          	mov    0x4(%esp),%eax
419c35:	53                   	push   %ebx
419c36:	56                   	push   %esi
419c37:	57                   	push   %edi
419c38:	8b 30                	mov    (%eax),%esi
419c3a:	83 fe ff             	cmp    $0xffffffff,%esi
419c3d:	75 1a                	jne    0x419c59
419c3f:	8b 51 08             	mov    0x8(%ecx),%edx
419c42:	33 ff                	xor    %edi,%edi
419c44:	85 d2                	test   %edx,%edx
419c46:	76 11                	jbe    0x419c59
419c48:	8b 41 04             	mov    0x4(%ecx),%eax
419c4b:	8b 30                	mov    (%eax),%esi
419c4d:	85 f6                	test   %esi,%esi
419c4f:	75 08                	jne    0x419c59
419c51:	47                   	inc    %edi
419c52:	83 c0 04             	add    $0x4,%eax
419c55:	3b fa                	cmp    %edx,%edi
419c57:	72 f2                	jb     0x419c4b
419c59:	8b 3e                	mov    (%esi),%edi
419c5b:	85 ff                	test   %edi,%edi
419c5d:	75 26                	jne    0x419c85
419c5f:	8b 46 04             	mov    0x4(%esi),%eax
419c62:	8b 59 08             	mov    0x8(%ecx),%ebx
419c65:	c1 e8 04             	shr    $0x4,%eax
419c68:	33 d2                	xor    %edx,%edx
419c6a:	f7 f3                	div    %ebx
419c6c:	42                   	inc    %edx
419c6d:	3b d3                	cmp    %ebx,%edx
419c6f:	73 14                	jae    0x419c85
419c71:	8b 41 04             	mov    0x4(%ecx),%eax
419c74:	8d 04 90             	lea    (%eax,%edx,4),%eax
419c77:	8b 38                	mov    (%eax),%edi
419c79:	85 ff                	test   %edi,%edi
419c7b:	75 08                	jne    0x419c85
419c7d:	42                   	inc    %edx
419c7e:	83 c0 04             	add    $0x4,%eax
419c81:	3b d3                	cmp    %ebx,%edx
419c83:	72 f2                	jb     0x419c77
419c85:	8b 44 24 10          	mov    0x10(%esp),%eax
419c89:	8b 4c 24 14          	mov    0x14(%esp),%ecx
419c8d:	89 38                	mov    %edi,(%eax)
419c8f:	8b 46 04             	mov    0x4(%esi),%eax
419c92:	89 01                	mov    %eax,(%ecx)
419c94:	8b 4c 24 18          	mov    0x18(%esp),%ecx
419c98:	8b 46 08             	mov    0x8(%esi),%eax
419c9b:	5f                   	pop    %edi
419c9c:	5e                   	pop    %esi
419c9d:	89 01                	mov    %eax,(%ecx)
419c9f:	5b                   	pop    %ebx
419ca0:	c2 0c 00             	ret    $0xc
419ca3:	53                   	push   %ebx
419ca4:	56                   	push   %esi
419ca5:	8b f1                	mov    %ecx,%esi
419ca7:	57                   	push   %edi
419ca8:	8b 46 04             	mov    0x4(%esi),%eax
419cab:	85 c0                	test   %eax,%eax
419cad:	74 0b                	je     0x419cba
419caf:	50                   	push   %eax
419cb0:	e8 88 30 00 00       	call   0x41cd3d
419cb5:	83 66 04 00          	andl   $0x0,0x4(%esi)
419cb9:	59                   	pop    %ecx
419cba:	83 7c 24 14 00       	cmpl   $0x0,0x14(%esp)
419cbf:	8b 5c 24 10          	mov    0x10(%esp),%ebx
419cc3:	74 1b                	je     0x419ce0
419cc5:	8b fb                	mov    %ebx,%edi
419cc7:	c1 e7 02             	shl    $0x2,%edi
419cca:	57                   	push   %edi
419ccb:	e8 31 30 00 00       	call   0x41cd01
419cd0:	59                   	pop    %ecx
419cd1:	89 46 04             	mov    %eax,0x4(%esi)
419cd4:	57                   	push   %edi
419cd5:	6a 00                	push   $0x0
419cd7:	50                   	push   %eax
419cd8:	e8 33 27 ff ff       	call   0x40c410
419cdd:	83 c4 0c             	add    $0xc,%esp
419ce0:	89 5e 08             	mov    %ebx,0x8(%esi)
419ce3:	5f                   	pop    %edi
419ce4:	5e                   	pop    %esi
419ce5:	5b                   	pop    %ebx
419ce6:	c2 08 00             	ret    $0x8
419ce9:	56                   	push   %esi
419cea:	8b f1                	mov    %ecx,%esi
419cec:	57                   	push   %edi
419ced:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
419cf1:	75 2e                	jne    0x419d21
419cf3:	6a 10                	push   $0x10
419cf5:	8d 46 14             	lea    0x14(%esi),%eax
419cf8:	ff 76 18             	push   0x18(%esi)
419cfb:	50                   	push   %eax
419cfc:	e8 b9 fc ff ff       	call   0x4199ba
419d01:	8b 4e 18             	mov    0x18(%esi),%ecx
419d04:	8b d1                	mov    %ecx,%edx
419d06:	c1 e2 04             	shl    $0x4,%edx
419d09:	49                   	dec    %ecx
419d0a:	85 c9                	test   %ecx,%ecx
419d0c:	8d 44 02 f4          	lea    -0xc(%edx,%eax,1),%eax
419d10:	7c 0f                	jl     0x419d21
419d12:	41                   	inc    %ecx
419d13:	8b 56 10             	mov    0x10(%esi),%edx
419d16:	89 10                	mov    %edx,(%eax)
419d18:	89 46 10             	mov    %eax,0x10(%esi)
419d1b:	83 e8 10             	sub    $0x10,%eax
419d1e:	49                   	dec    %ecx
419d1f:	75 f2                	jne    0x419d13
419d21:	8b 7e 10             	mov    0x10(%esi),%edi
419d24:	6a 04                	push   $0x4
419d26:	8b 07                	mov    (%edi),%eax
419d28:	ff 46 0c             	incl   0xc(%esi)
419d2b:	89 46 10             	mov    %eax,0x10(%esi)
419d2e:	e8 53 4c 00 00       	call   0x41e986
419d33:	50                   	push   %eax
419d34:	8d 47 08             	lea    0x8(%edi),%eax
419d37:	50                   	push   %eax
419d38:	e8 33 20 ff ff       	call   0x40bd70
419d3d:	83 67 0c 00          	andl   $0x0,0xc(%edi)
419d41:	83 c4 0c             	add    $0xc,%esp
419d44:	8b c7                	mov    %edi,%eax
419d46:	5f                   	pop    %edi
419d47:	5e                   	pop    %esi
419d48:	c3                   	ret
419d49:	56                   	push   %esi
419d4a:	57                   	push   %edi
419d4b:	8b 7c 24 0c          	mov    0xc(%esp),%edi
419d4f:	33 c0                	xor    %eax,%eax
419d51:	8b f7                	mov    %edi,%esi
419d53:	8a 17                	mov    (%edi),%dl
419d55:	84 d2                	test   %dl,%dl
419d57:	74 0e                	je     0x419d67
419d59:	6b c0 21             	imul   $0x21,%eax,%eax
419d5c:	0f be d2             	movsbl %dl,%edx
419d5f:	03 c2                	add    %edx,%eax
419d61:	8a 56 01             	mov    0x1(%esi),%dl
419d64:	46                   	inc    %esi
419d65:	eb ee                	jmp    0x419d55
419d67:	33 d2                	xor    %edx,%edx
419d69:	f7 71 08             	divl   0x8(%ecx)
419d6c:	8b 44 24 10          	mov    0x10(%esp),%eax
419d70:	89 10                	mov    %edx,(%eax)
419d72:	8b 41 04             	mov    0x4(%ecx),%eax
419d75:	85 c0                	test   %eax,%eax
419d77:	74 23                	je     0x419d9c
419d79:	8b 34 90             	mov    (%eax,%edx,4),%esi
419d7c:	85 f6                	test   %esi,%esi
419d7e:	74 1c                	je     0x419d9c
419d80:	57                   	push   %edi
419d81:	ff 76 08             	push   0x8(%esi)
419d84:	e8 47 29 ff ff       	call   0x40c6d0
419d89:	f7 d8                	neg    %eax
419d8b:	1b c0                	sbb    %eax,%eax
419d8d:	59                   	pop    %ecx
419d8e:	40                   	inc    %eax
419d8f:	59                   	pop    %ecx
419d90:	84 c0                	test   %al,%al
419d92:	75 04                	jne    0x419d98
419d94:	8b 36                	mov    (%esi),%esi
419d96:	eb e4                	jmp    0x419d7c
419d98:	8b c6                	mov    %esi,%eax
419d9a:	eb 02                	jmp    0x419d9e
419d9c:	33 c0                	xor    %eax,%eax
419d9e:	5f                   	pop    %edi
419d9f:	5e                   	pop    %esi
419da0:	c2 08 00             	ret    $0x8
419da3:	55                   	push   %ebp
419da4:	8b ec                	mov    %esp,%ebp
419da6:	8d 45 08             	lea    0x8(%ebp),%eax
419da9:	50                   	push   %eax
419daa:	ff 75 08             	push   0x8(%ebp)
419dad:	e8 97 ff ff ff       	call   0x419d49
419db2:	85 c0                	test   %eax,%eax
419db4:	74 0b                	je     0x419dc1
419db6:	8b 4d 0c             	mov    0xc(%ebp),%ecx
419db9:	8b 40 0c             	mov    0xc(%eax),%eax
419dbc:	6a 01                	push   $0x1
419dbe:	89 01                	mov    %eax,(%ecx)
419dc0:	58                   	pop    %eax
419dc1:	5d                   	pop    %ebp
419dc2:	c2 08 00             	ret    $0x8
419dc5:	55                   	push   %ebp
419dc6:	8b ec                	mov    %esp,%ebp
419dc8:	8d 45 08             	lea    0x8(%ebp),%eax
419dcb:	50                   	push   %eax
419dcc:	ff 75 08             	push   0x8(%ebp)
419dcf:	e8 75 ff ff ff       	call   0x419d49
419dd4:	85 c0                	test   %eax,%eax
419dd6:	74 0b                	je     0x419de3
419dd8:	8b 4d 0c             	mov    0xc(%ebp),%ecx
419ddb:	8b 40 08             	mov    0x8(%eax),%eax
419dde:	6a 01                	push   $0x1
419de0:	89 01                	mov    %eax,(%ecx)
419de2:	58                   	pop    %eax
419de3:	5d                   	pop    %ebp
419de4:	c2 08 00             	ret    $0x8
419de7:	55                   	push   %ebp
419de8:	8b ec                	mov    %esp,%ebp
419dea:	51                   	push   %ecx
419deb:	56                   	push   %esi
419dec:	8d 45 fc             	lea    -0x4(%ebp),%eax
419def:	57                   	push   %edi
419df0:	50                   	push   %eax
419df1:	ff 75 08             	push   0x8(%ebp)
419df4:	8b f9                	mov    %ecx,%edi
419df6:	e8 4e ff ff ff       	call   0x419d49
419dfb:	8b f0                	mov    %eax,%esi
419dfd:	85 f6                	test   %esi,%esi
419dff:	75 3f                	jne    0x419e40
419e01:	39 47 04             	cmp    %eax,0x4(%edi)
419e04:	75 0c                	jne    0x419e12
419e06:	6a 01                	push   $0x1
419e08:	8b cf                	mov    %edi,%ecx
419e0a:	ff 77 08             	push   0x8(%edi)
419e0d:	e8 91 fe ff ff       	call   0x419ca3
419e12:	8b cf                	mov    %edi,%ecx
419e14:	e8 d0 fe ff ff       	call   0x419ce9
419e19:	ff 75 08             	push   0x8(%ebp)
419e1c:	8b f0                	mov    %eax,%esi
419e1e:	8b 45 fc             	mov    -0x4(%ebp),%eax
419e21:	8d 4e 08             	lea    0x8(%esi),%ecx
419e24:	89 46 04             	mov    %eax,0x4(%esi)
419e27:	e8 ca 4c 00 00       	call   0x41eaf6
419e2c:	8b 47 04             	mov    0x4(%edi),%eax
419e2f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
419e32:	8b 04 88             	mov    (%eax,%ecx,4),%eax
419e35:	89 06                	mov    %eax,(%esi)
419e37:	8b 47 04             	mov    0x4(%edi),%eax
419e3a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
419e3d:	89 34 88             	mov    %esi,(%eax,%ecx,4)
419e40:	8d 46 0c             	lea    0xc(%esi),%eax
419e43:	5f                   	pop    %edi
419e44:	5e                   	pop    %esi
419e45:	c9                   	leave
419e46:	c2 04 00             	ret    $0x4
419e49:	e9 00 00 00 00       	jmp    0x419e4e
419e4e:	68 40 9d 42 00       	push   $0x429d40
419e53:	ff 15 30 99 43 00    	call   *0x439930
419e59:	a3 9c 6a 43 00       	mov    %eax,0x436a9c
419e5e:	c3                   	ret
419e5f:	e8 05 00 00 00       	call   0x419e69
419e64:	e9 0d 00 00 00       	jmp    0x419e76
419e69:	6a 00                	push   $0x0
419e6b:	b9 a0 69 43 00       	mov    $0x4369a0,%ecx
419e70:	e8 28 01 00 00       	call   0x419f9d
419e75:	c3                   	ret
419e76:	68 82 9e 41 00       	push   $0x419e82
419e7b:	e8 60 1e ff ff       	call   0x40bce0
419e80:	59                   	pop    %ecx
419e81:	c3                   	ret
419e82:	f6 05 98 51 43 00 01 	testb  $0x1,0x435198
419e89:	75 11                	jne    0x419e9c
419e8b:	80 0d 98 51 43 00 01 	orb    $0x1,0x435198
419e92:	b9 a0 69 43 00       	mov    $0x4369a0,%ecx
419e97:	e9 05 0b 00 00       	jmp    0x41a9a1
419e9c:	c3                   	ret
419e9d:	e8 05 00 00 00       	call   0x419ea7
419ea2:	e9 0d 00 00 00       	jmp    0x419eb4
419ea7:	6a 01                	push   $0x1
419ea9:	b9 60 6a 43 00       	mov    $0x436a60,%ecx
419eae:	e8 ea 00 00 00       	call   0x419f9d
419eb3:	c3                   	ret
419eb4:	68 c0 9e 41 00       	push   $0x419ec0
419eb9:	e8 22 1e ff ff       	call   0x40bce0
419ebe:	59                   	pop    %ecx
419ebf:	c3                   	ret
419ec0:	f6 05 98 51 43 00 02 	testb  $0x2,0x435198
419ec7:	75 11                	jne    0x419eda
419ec9:	80 0d 98 51 43 00 02 	orb    $0x2,0x435198
419ed0:	b9 60 6a 43 00       	mov    $0x436a60,%ecx
419ed5:	e9 c7 0a 00 00       	jmp    0x41a9a1
419eda:	c3                   	ret
419edb:	e8 05 00 00 00       	call   0x419ee5
419ee0:	e9 0d 00 00 00       	jmp    0x419ef2
419ee5:	6a ff                	push   $0xffffffff
419ee7:	b9 e0 69 43 00       	mov    $0x4369e0,%ecx
419eec:	e8 ac 00 00 00       	call   0x419f9d
419ef1:	c3                   	ret
419ef2:	68 fe 9e 41 00       	push   $0x419efe
419ef7:	e8 e4 1d ff ff       	call   0x40bce0
419efc:	59                   	pop    %ecx
419efd:	c3                   	ret
419efe:	f6 05 98 51 43 00 04 	testb  $0x4,0x435198
419f05:	75 11                	jne    0x419f18
419f07:	80 0d 98 51 43 00 04 	orb    $0x4,0x435198
419f0e:	b9 e0 69 43 00       	mov    $0x4369e0,%ecx
419f13:	e9 89 0a 00 00       	jmp    0x41a9a1
419f18:	c3                   	ret
419f19:	e8 05 00 00 00       	call   0x419f23
419f1e:	e9 0d 00 00 00       	jmp    0x419f30
419f23:	6a fe                	push   $0xfffffffe
419f25:	b9 20 6a 43 00       	mov    $0x436a20,%ecx
419f2a:	e8 6e 00 00 00       	call   0x419f9d
419f2f:	c3                   	ret
419f30:	68 3c 9f 41 00       	push   $0x419f3c
419f35:	e8 a6 1d ff ff       	call   0x40bce0
419f3a:	59                   	pop    %ecx
419f3b:	c3                   	ret
419f3c:	f6 05 98 51 43 00 08 	testb  $0x8,0x435198
419f43:	75 11                	jne    0x419f56
419f45:	80 0d 98 51 43 00 08 	orb    $0x8,0x435198
419f4c:	b9 20 6a 43 00       	mov    $0x436a20,%ecx
419f51:	e9 4b 0a 00 00       	jmp    0x41a9a1
419f56:	c3                   	ret
419f57:	56                   	push   %esi
419f58:	8b f1                	mov    %ecx,%esi
419f5a:	e8 8a 39 00 00       	call   0x41d8e9