ab2b0f:	cc                   	int3
ab2b10:	cc                   	int3
ab2b11:	cc                   	int3
ab2b12:	cc                   	int3
ab2b13:	cc                   	int3
ab2b14:	cc                   	int3
ab2b15:	cc                   	int3
ab2b16:	cc                   	int3
ab2b17:	cc                   	int3
ab2b18:	cc                   	int3
ab2b19:	cc                   	int3
ab2b1a:	cc                   	int3
ab2b1b:	cc                   	int3
ab2b1c:	cc                   	int3
ab2b1d:	cc                   	int3
ab2b1e:	cc                   	int3
ab2b1f:	cc                   	int3
ab2b20:	cc                   	int3
ab2b21:	cc                   	int3
ab2b22:	cc                   	int3
ab2b23:	cc                   	int3
ab2b24:	cc                   	int3
ab2b25:	cc                   	int3
ab2b26:	cc                   	int3
ab2b27:	cc                   	int3
ab2b28:	8b ff                	mov    %edi,%edi
ab2b2a:	55                   	push   %ebp
ab2b2b:	8b ec                	mov    %esp,%ebp
ab2b2d:	8b 55 10             	mov    0x10(%ebp),%edx
ab2b30:	66 8b 45 18          	mov    0x18(%ebp),%ax
ab2b34:	8b 0a                	mov    (%edx),%ecx
ab2b36:	66 89 01             	mov    %ax,(%ecx)
ab2b39:	8b 45 14             	mov    0x14(%ebp),%eax
ab2b3c:	83 02 02             	addl   $0x2,(%edx)
ab2b3f:	ff 08                	decl   (%eax)
ab2b41:	b0 01                	mov    $0x1,%al
ab2b43:	5d                   	pop    %ebp
ab2b44:	c2 14 00             	ret    $0x14
ab2b47:	cc                   	int3
ab2b48:	cc                   	int3
ab2b49:	cc                   	int3
ab2b4a:	cc                   	int3
ab2b4b:	cc                   	int3
ab2b4c:	cc                   	int3
ab2b4d:	cc                   	int3
ab2b4e:	8b ff                	mov    %edi,%edi
ab2b50:	55                   	push   %ebp
ab2b51:	8b ec                	mov    %esp,%ebp
ab2b53:	51                   	push   %ecx
ab2b54:	53                   	push   %ebx
ab2b55:	56                   	push   %esi
ab2b56:	33 db                	xor    %ebx,%ebx
ab2b58:	8d 45 fc             	lea    -0x4(%ebp),%eax
ab2b5b:	83 7d 0c ff          	cmpl   $0xffffffff,0xc(%ebp)
ab2b5f:	57                   	push   %edi
ab2b60:	ff 75 18             	push   0x18(%ebp)
ab2b63:	89 5d fc             	mov    %ebx,-0x4(%ebp)
ab2b66:	75 2c                	jne    0xab2b94
ab2b68:	8b 75 10             	mov    0x10(%ebp),%esi
ab2b6b:	6a 05                	push   $0x5
ab2b6d:	ff 36                	push   (%esi)
ab2b6f:	50                   	push   %eax
ab2b70:	e8 ed d9 97 ff       	call   0x430562
ab2b75:	83 c4 10             	add    $0x10,%esp
ab2b78:	85 c0                	test   %eax,%eax
ab2b7a:	74 0c                	je     0xab2b88
ab2b7c:	83 f8 16             	cmp    $0x16,%eax
ab2b7f:	74 4a                	je     0xab2bcb
ab2b81:	83 f8 22             	cmp    $0x22,%eax
ab2b84:	75 3a                	jne    0xab2bc0
ab2b86:	eb 43                	jmp    0xab2bcb
ab2b88:	8b 45 14             	mov    0x14(%ebp),%eax
ab2b8b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
ab2b8e:	01 0e                	add    %ecx,(%esi)
ab2b90:	29 08                	sub    %ecx,(%eax)
ab2b92:	eb 2c                	jmp    0xab2bc0
ab2b94:	8b 75 14             	mov    0x14(%ebp),%esi
ab2b97:	8b 7d 10             	mov    0x10(%ebp),%edi
ab2b9a:	ff 36                	push   (%esi)
ab2b9c:	ff 37                	push   (%edi)
ab2b9e:	50                   	push   %eax
ab2b9f:	e8 be d9 97 ff       	call   0x430562
ab2ba4:	83 c4 10             	add    $0x10,%esp
ab2ba7:	83 f8 22             	cmp    $0x22,%eax
ab2baa:	75 09                	jne    0xab2bb5
ab2bac:	8b 45 08             	mov    0x8(%ebp),%eax
ab2baf:	88 18                	mov    %bl,(%eax)
ab2bb1:	32 c0                	xor    %al,%al
ab2bb3:	eb 0d                	jmp    0xab2bc2
ab2bb5:	8b 45 fc             	mov    -0x4(%ebp),%eax
ab2bb8:	85 c0                	test   %eax,%eax
ab2bba:	7e 04                	jle    0xab2bc0
ab2bbc:	01 07                	add    %eax,(%edi)
ab2bbe:	29 06                	sub    %eax,(%esi)
ab2bc0:	b0 01                	mov    $0x1,%al
ab2bc2:	5f                   	pop    %edi
ab2bc3:	5e                   	pop    %esi
ab2bc4:	5b                   	pop    %ebx
ab2bc5:	8b e5                	mov    %ebp,%esp
ab2bc7:	5d                   	pop    %ebp
ab2bc8:	c2 14 00             	ret    $0x14
ab2bcb:	53                   	push   %ebx
ab2bcc:	53                   	push   %ebx
ab2bcd:	53                   	push   %ebx
ab2bce:	53                   	push   %ebx
ab2bcf:	53                   	push   %ebx
ab2bd0:	e8 83 38 98 ff       	call   0x436458
ab2bd5:	cc                   	int3
ab2bd6:	cc                   	int3
ab2bd7:	cc                   	int3
ab2bd8:	cc                   	int3
ab2bd9:	cc                   	int3
ab2bda:	cc                   	int3
ab2bdb:	cc                   	int3
ab2bdc:	cc                   	int3
ab2bdd:	cc                   	int3
ab2bde:	cc                   	int3
ab2bdf:	cc                   	int3
ab2be0:	cc                   	int3
ab2be1:	cc                   	int3
ab2be2:	cc                   	int3
ab2be3:	cc                   	int3
ab2be4:	cc                   	int3
ab2be5:	cc                   	int3
ab2be6:	cc                   	int3
ab2be7:	cc                   	int3
ab2be8:	cc                   	int3
ab2be9:	cc                   	int3
ab2bea:	cc                   	int3
ab2beb:	cc                   	int3
ab2bec:	cc                   	int3
ab2bed:	cc                   	int3
ab2bee:	cc                   	int3
ab2bef:	cc                   	int3
ab2bf0:	cc                   	int3
ab2bf1:	cc                   	int3
ab2bf2:	cc                   	int3
ab2bf3:	cc                   	int3
ab2bf4:	cc                   	int3
ab2bf5:	cc                   	int3
ab2bf6:	cc                   	int3
ab2bf7:	cc                   	int3
ab2bf8:	8b ff                	mov    %edi,%edi
ab2bfa:	55                   	push   %ebp
ab2bfb:	8b ec                	mov    %esp,%ebp
ab2bfd:	8b 55 10             	mov    0x10(%ebp),%edx
ab2c00:	66 8b 45 18          	mov    0x18(%ebp),%ax
ab2c04:	8b 0a                	mov    (%edx),%ecx
ab2c06:	66 89 01             	mov    %ax,(%ecx)
ab2c09:	8b 45 14             	mov    0x14(%ebp),%eax
ab2c0c:	83 02 02             	addl   $0x2,(%edx)
ab2c0f:	ff 08                	decl   (%eax)
ab2c11:	b0 01                	mov    $0x1,%al
ab2c13:	5d                   	pop    %ebp
ab2c14:	c2 14 00             	ret    $0x14
ab2c17:	cc                   	int3
ab2c18:	cc                   	int3
ab2c19:	cc                   	int3
ab2c1a:	cc                   	int3
ab2c1b:	cc                   	int3
ab2c1c:	cc                   	int3
ab2c1d:	cc                   	int3
ab2c1e:	8b ff                	mov    %edi,%edi
ab2c20:	55                   	push   %ebp
ab2c21:	8b ec                	mov    %esp,%ebp
ab2c23:	83 41 64 04          	addl   $0x4,0x64(%ecx)
ab2c27:	8b 41 64             	mov    0x64(%ecx),%eax
ab2c2a:	56                   	push   %esi
ab2c2b:	8b 70 fc             	mov    -0x4(%eax),%esi
ab2c2e:	85 f6                	test   %esi,%esi
ab2c30:	75 14                	jne    0xab2c46
ab2c32:	e8 38 bc 98 ff       	call   0x43e86f
ab2c37:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
ab2c3d:	e8 b6 c6 96 ff       	call   0x41f2f8
ab2c42:	32 c0                	xor    %al,%al
ab2c44:	eb 4a                	jmp    0xab2c90
ab2c46:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
ab2c4a:	74 03                	je     0xab2c4f
ab2c4c:	ff 41 68             	incl   0x68(%ecx)
ab2c4f:	83 c1 10             	add    $0x10,%ecx
ab2c52:	e8 e2 fc 97 ff       	call   0x432939
ab2c57:	83 e8 01             	sub    $0x1,%eax
ab2c5a:	74 2d                	je     0xab2c89
ab2c5c:	83 e8 01             	sub    $0x1,%eax
ab2c5f:	74 1f                	je     0xab2c80
ab2c61:	48                   	dec    %eax
ab2c62:	83 e8 01             	sub    $0x1,%eax
ab2c65:	74 12                	je     0xab2c79
ab2c67:	83 e8 04             	sub    $0x4,%eax
ab2c6a:	75 d6                	jne    0xab2c42
ab2c6c:	8b 45 08             	mov    0x8(%ebp),%eax
ab2c6f:	89 06                	mov    %eax,(%esi)
ab2c71:	8b 45 0c             	mov    0xc(%ebp),%eax
ab2c74:	89 46 04             	mov    %eax,0x4(%esi)
ab2c77:	eb 15                	jmp    0xab2c8e
ab2c79:	8b 45 08             	mov    0x8(%ebp),%eax
ab2c7c:	89 06                	mov    %eax,(%esi)
ab2c7e:	eb 0e                	jmp    0xab2c8e
ab2c80:	66 8b 45 08          	mov    0x8(%ebp),%ax
ab2c84:	66 89 06             	mov    %ax,(%esi)
ab2c87:	eb 05                	jmp    0xab2c8e
ab2c89:	8a 45 08             	mov    0x8(%ebp),%al
ab2c8c:	88 06                	mov    %al,(%esi)
ab2c8e:	b0 01                	mov    $0x1,%al
ab2c90:	5e                   	pop    %esi
ab2c91:	5d                   	pop    %ebp
ab2c92:	c2 0c 00             	ret    $0xc
ab2c95:	cc                   	int3
ab2c96:	cc                   	int3
ab2c97:	cc                   	int3
ab2c98:	cc                   	int3
ab2c99:	cc                   	int3
ab2c9a:	cc                   	int3
ab2c9b:	cc                   	int3
ab2c9c:	cc                   	int3
ab2c9d:	cc                   	int3
ab2c9e:	cc                   	int3
ab2c9f:	cc                   	int3
ab2ca0:	cc                   	int3
ab2ca1:	cc                   	int3
ab2ca2:	cc                   	int3
ab2ca3:	cc                   	int3
ab2ca4:	cc                   	int3
ab2ca5:	cc                   	int3
ab2ca6:	cc                   	int3
ab2ca7:	cc                   	int3
ab2ca8:	cc                   	int3
ab2ca9:	cc                   	int3
ab2caa:	cc                   	int3
ab2cab:	cc                   	int3
ab2cac:	cc                   	int3
ab2cad:	cc                   	int3
ab2cae:	cc                   	int3
ab2caf:	cc                   	int3
ab2cb0:	cc                   	int3
ab2cb1:	cc                   	int3
ab2cb2:	8b ff                	mov    %edi,%edi
ab2cb4:	55                   	push   %ebp
ab2cb5:	8b ec                	mov    %esp,%ebp
ab2cb7:	83 41 6c 04          	addl   $0x4,0x6c(%ecx)
ab2cbb:	8b 41 6c             	mov    0x6c(%ecx),%eax
ab2cbe:	56                   	push   %esi
ab2cbf:	8b 70 fc             	mov    -0x4(%eax),%esi
ab2cc2:	85 f6                	test   %esi,%esi
ab2cc4:	75 14                	jne    0xab2cda
ab2cc6:	e8 a4 bb 98 ff       	call   0x43e86f
ab2ccb:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
ab2cd1:	e8 22 c6 96 ff       	call   0x41f2f8
ab2cd6:	32 c0                	xor    %al,%al
ab2cd8:	eb 4a                	jmp    0xab2d24
ab2cda:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
ab2cde:	74 03                	je     0xab2ce3
ab2ce0:	ff 41 70             	incl   0x70(%ecx)
ab2ce3:	83 c1 18             	add    $0x18,%ecx
ab2ce6:	e8 4e fc 97 ff       	call   0x432939
ab2ceb:	83 e8 01             	sub    $0x1,%eax
ab2cee:	74 2d                	je     0xab2d1d
ab2cf0:	83 e8 01             	sub    $0x1,%eax
ab2cf3:	74 1f                	je     0xab2d14
ab2cf5:	48                   	dec    %eax
ab2cf6:	83 e8 01             	sub    $0x1,%eax
ab2cf9:	74 12                	je     0xab2d0d
ab2cfb:	83 e8 04             	sub    $0x4,%eax
ab2cfe:	75 d6                	jne    0xab2cd6
ab2d00:	8b 45 08             	mov    0x8(%ebp),%eax
ab2d03:	89 06                	mov    %eax,(%esi)
ab2d05:	8b 45 0c             	mov    0xc(%ebp),%eax
ab2d08:	89 46 04             	mov    %eax,0x4(%esi)
ab2d0b:	eb 15                	jmp    0xab2d22
ab2d0d:	8b 45 08             	mov    0x8(%ebp),%eax
ab2d10:	89 06                	mov    %eax,(%esi)
ab2d12:	eb 0e                	jmp    0xab2d22
ab2d14:	66 8b 45 08          	mov    0x8(%ebp),%ax
ab2d18:	66 89 06             	mov    %ax,(%esi)
ab2d1b:	eb 05                	jmp    0xab2d22
ab2d1d:	8a 45 08             	mov    0x8(%ebp),%al
ab2d20:	88 06                	mov    %al,(%esi)
ab2d22:	b0 01                	mov    $0x1,%al
ab2d24:	5e                   	pop    %esi
ab2d25:	5d                   	pop    %ebp
ab2d26:	c2 0c 00             	ret    $0xc
ab2d29:	cc                   	int3
ab2d2a:	cc                   	int3
ab2d2b:	cc                   	int3
ab2d2c:	cc                   	int3
ab2d2d:	cc                   	int3
ab2d2e:	cc                   	int3
ab2d2f:	cc                   	int3
ab2d30:	cc                   	int3
ab2d31:	cc                   	int3
ab2d32:	cc                   	int3
ab2d33:	cc                   	int3
ab2d34:	cc                   	int3
ab2d35:	cc                   	int3
ab2d36:	cc                   	int3
ab2d37:	cc                   	int3
ab2d38:	cc                   	int3
ab2d39:	cc                   	int3
ab2d3a:	cc                   	int3
ab2d3b:	cc                   	int3
ab2d3c:	cc                   	int3
ab2d3d:	cc                   	int3
ab2d3e:	cc                   	int3
ab2d3f:	cc                   	int3
ab2d40:	cc                   	int3
ab2d41:	cc                   	int3
ab2d42:	cc                   	int3
ab2d43:	cc                   	int3
ab2d44:	cc                   	int3
ab2d45:	cc                   	int3
ab2d46:	8b ff                	mov    %edi,%edi
ab2d48:	55                   	push   %ebp
ab2d49:	8b ec                	mov    %esp,%ebp
ab2d4b:	83 41 4c 04          	addl   $0x4,0x4c(%ecx)
ab2d4f:	8b 41 4c             	mov    0x4c(%ecx),%eax
ab2d52:	56                   	push   %esi
ab2d53:	8b 70 fc             	mov    -0x4(%eax),%esi
ab2d56:	85 f6                	test   %esi,%esi
ab2d58:	75 14                	jne    0xab2d6e
ab2d5a:	e8 10 bb 98 ff       	call   0x43e86f
ab2d5f:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
ab2d65:	e8 8e c5 96 ff       	call   0x41f2f8
ab2d6a:	32 c0                	xor    %al,%al
ab2d6c:	eb 4a                	jmp    0xab2db8
ab2d6e:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
ab2d72:	74 03                	je     0xab2d77
ab2d74:	ff 41 50             	incl   0x50(%ecx)
ab2d77:	83 c1 10             	add    $0x10,%ecx
ab2d7a:	e8 27 19 95 ff       	call   0x4046a6
ab2d7f:	83 e8 01             	sub    $0x1,%eax
ab2d82:	74 2d                	je     0xab2db1
ab2d84:	83 e8 01             	sub    $0x1,%eax
ab2d87:	74 1f                	je     0xab2da8
ab2d89:	48                   	dec    %eax
ab2d8a:	83 e8 01             	sub    $0x1,%eax
ab2d8d:	74 12                	je     0xab2da1
ab2d8f:	83 e8 04             	sub    $0x4,%eax
ab2d92:	75 d6                	jne    0xab2d6a
ab2d94:	8b 45 08             	mov    0x8(%ebp),%eax
ab2d97:	89 06                	mov    %eax,(%esi)
ab2d99:	8b 45 0c             	mov    0xc(%ebp),%eax
ab2d9c:	89 46 04             	mov    %eax,0x4(%esi)
ab2d9f:	eb 15                	jmp    0xab2db6
ab2da1:	8b 45 08             	mov    0x8(%ebp),%eax
ab2da4:	89 06                	mov    %eax,(%esi)
ab2da6:	eb 0e                	jmp    0xab2db6
ab2da8:	66 8b 45 08          	mov    0x8(%ebp),%ax
ab2dac:	66 89 06             	mov    %ax,(%esi)
ab2daf:	eb 05                	jmp    0xab2db6
ab2db1:	8a 45 08             	mov    0x8(%ebp),%al