51e95b:	8a 42 03             	mov    0x3(%edx),%al
51e95e:	3a 46 03             	cmp    0x3(%esi),%al
51e961:	74 07                	je     0x51e96a
51e963:	1b c0                	sbb    %eax,%eax
51e965:	83 c8 01             	or     $0x1,%eax
51e968:	eb 02                	jmp    0x51e96c
51e96a:	33 c0                	xor    %eax,%eax
51e96c:	85 c0                	test   %eax,%eax
51e96e:	75 0b                	jne    0x51e97b
51e970:	83 fb 07             	cmp    $0x7,%ebx
51e973:	72 06                	jb     0x51e97b
51e975:	0f 86 44 ff ff ff    	jbe    0x51e8bf
51e97b:	8b 44 24 14          	mov    0x14(%esp),%eax
51e97f:	8b 58 14             	mov    0x14(%eax),%ebx
51e982:	83 fb 10             	cmp    $0x10,%ebx
51e985:	72 04                	jb     0x51e98b
51e987:	8b 10                	mov    (%eax),%edx
51e989:	eb 02                	jmp    0x51e98d
51e98b:	8b d0                	mov    %eax,%edx
51e98d:	b9 07 00 00 00       	mov    $0x7,%ecx
51e992:	3b f9                	cmp    %ecx,%edi
51e994:	0f 42 cf             	cmovb  %edi,%ecx
51e997:	85 c9                	test   %ecx,%ecx
51e999:	74 5a                	je     0x51e9f5
51e99b:	be dc d1 bd 00       	mov    $0xbdd1dc,%esi
51e9a0:	83 e9 04             	sub    $0x4,%ecx
51e9a3:	72 11                	jb     0x51e9b6
51e9a5:	8b 02                	mov    (%edx),%eax
51e9a7:	3b 06                	cmp    (%esi),%eax
51e9a9:	75 10                	jne    0x51e9bb
51e9ab:	83 c2 04             	add    $0x4,%edx
51e9ae:	83 c6 04             	add    $0x4,%esi
51e9b1:	83 e9 04             	sub    $0x4,%ecx
51e9b4:	73 ef                	jae    0x51e9a5
51e9b6:	83 f9 fc             	cmp    $0xfffffffc,%ecx
51e9b9:	74 34                	je     0x51e9ef
51e9bb:	8a 02                	mov    (%edx),%al
51e9bd:	3a 06                	cmp    (%esi),%al
51e9bf:	75 27                	jne    0x51e9e8
51e9c1:	83 f9 fd             	cmp    $0xfffffffd,%ecx
51e9c4:	74 29                	je     0x51e9ef
51e9c6:	8a 42 01             	mov    0x1(%edx),%al
51e9c9:	3a 46 01             	cmp    0x1(%esi),%al
51e9cc:	75 1a                	jne    0x51e9e8
51e9ce:	83 f9 fe             	cmp    $0xfffffffe,%ecx
51e9d1:	74 1c                	je     0x51e9ef
51e9d3:	8a 42 02             	mov    0x2(%edx),%al
51e9d6:	3a 46 02             	cmp    0x2(%esi),%al
51e9d9:	75 0d                	jne    0x51e9e8
51e9db:	83 f9 ff             	cmp    $0xffffffff,%ecx
51e9de:	74 0f                	je     0x51e9ef
51e9e0:	8a 42 03             	mov    0x3(%edx),%al
51e9e3:	3a 46 03             	cmp    0x3(%esi),%al
51e9e6:	74 07                	je     0x51e9ef
51e9e8:	1b c0                	sbb    %eax,%eax
51e9ea:	83 c8 01             	or     $0x1,%eax
51e9ed:	eb 02                	jmp    0x51e9f1
51e9ef:	33 c0                	xor    %eax,%eax
51e9f1:	85 c0                	test   %eax,%eax
51e9f3:	75 07                	jne    0x51e9fc
51e9f5:	83 ff 07             	cmp    $0x7,%edi
51e9f8:	72 02                	jb     0x51e9fc
51e9fa:	76 53                	jbe    0x51ea4f
51e9fc:	83 fb 10             	cmp    $0x10,%ebx
51e9ff:	72 08                	jb     0x51ea09
51ea01:	8b 4c 24 14          	mov    0x14(%esp),%ecx
51ea05:	8b 11                	mov    (%ecx),%edx
51ea07:	eb 04                	jmp    0x51ea0d
51ea09:	8b 54 24 14          	mov    0x14(%esp),%edx
51ea0d:	8b 5c 24 10          	mov    0x10(%esp),%ebx
51ea11:	83 fd 10             	cmp    $0x10,%ebp
51ea14:	72 04                	jb     0x51ea1a
51ea16:	8b 0b                	mov    (%ebx),%ecx
51ea18:	eb 02                	jmp    0x51ea1c
51ea1a:	8b cb                	mov    %ebx,%ecx
51ea1c:	8b 73 10             	mov    0x10(%ebx),%esi
51ea1f:	8b c7                	mov    %edi,%eax
51ea21:	3b f7                	cmp    %edi,%esi
51ea23:	0f 42 c6             	cmovb  %esi,%eax
51ea26:	50                   	push   %eax
51ea27:	52                   	push   %edx
51ea28:	51                   	push   %ecx
51ea29:	e8 cf 39 f1 ff       	call   0x4323fd
51ea2e:	83 c4 0c             	add    $0xc,%esp
51ea31:	85 c0                	test   %eax,%eax
51ea33:	75 0d                	jne    0x51ea42
51ea35:	3b fe                	cmp    %esi,%edi
51ea37:	76 05                	jbe    0x51ea3e
51ea39:	83 c8 ff             	or     $0xffffffff,%eax
51ea3c:	eb 04                	jmp    0x51ea42
51ea3e:	1b c0                	sbb    %eax,%eax
51ea40:	f7 d8                	neg    %eax
51ea42:	c1 e8 1f             	shr    $0x1f,%eax
51ea45:	84 c0                	test   %al,%al
51ea47:	0f 85 72 fe ff ff    	jne    0x51e8bf
51ea4d:	eb 04                	jmp    0x51ea53
51ea4f:	8b 5c 24 10          	mov    0x10(%esp),%ebx
51ea53:	8b 7c 24 14          	mov    0x14(%esp),%edi
51ea57:	81 c7 ac 01 00 00    	add    $0x1ac,%edi
51ea5d:	89 7c 24 14          	mov    %edi,0x14(%esp)
51ea61:	3b 7c 24 30          	cmp    0x30(%esp),%edi
51ea65:	0f 82 05 fd ff ff    	jb     0x51e770
51ea6b:	e9 53 fe ff ff       	jmp    0x51e8c3
51ea70:	8b d5                	mov    %ebp,%edx
51ea72:	8b 7d 10             	mov    0x10(%ebp),%edi
51ea75:	b9 07 00 00 00       	mov    $0x7,%ecx
51ea7a:	3b f9                	cmp    %ecx,%edi
51ea7c:	0f 42 cf             	cmovb  %edi,%ecx
51ea7f:	85 c9                	test   %ecx,%ecx
51ea81:	74 61                	je     0x51eae4
51ea83:	be dc d1 bd 00       	mov    $0xbdd1dc,%esi
51ea88:	83 e9 04             	sub    $0x4,%ecx
51ea8b:	72 14                	jb     0x51eaa1
51ea8d:	0f 1f 00             	nopl   (%eax)
51ea90:	8b 02                	mov    (%edx),%eax
51ea92:	3b 06                	cmp    (%esi),%eax
51ea94:	75 10                	jne    0x51eaa6
51ea96:	83 c2 04             	add    $0x4,%edx
51ea99:	83 c6 04             	add    $0x4,%esi
51ea9c:	83 e9 04             	sub    $0x4,%ecx
51ea9f:	73 ef                	jae    0x51ea90
51eaa1:	83 f9 fc             	cmp    $0xfffffffc,%ecx
51eaa4:	74 34                	je     0x51eada
51eaa6:	8a 02                	mov    (%edx),%al
51eaa8:	3a 06                	cmp    (%esi),%al
51eaaa:	75 27                	jne    0x51ead3
51eaac:	83 f9 fd             	cmp    $0xfffffffd,%ecx
51eaaf:	74 29                	je     0x51eada
51eab1:	8a 42 01             	mov    0x1(%edx),%al
51eab4:	3a 46 01             	cmp    0x1(%esi),%al
51eab7:	75 1a                	jne    0x51ead3
51eab9:	83 f9 fe             	cmp    $0xfffffffe,%ecx
51eabc:	74 1c                	je     0x51eada
51eabe:	8a 42 02             	mov    0x2(%edx),%al
51eac1:	3a 46 02             	cmp    0x2(%esi),%al
51eac4:	75 0d                	jne    0x51ead3
51eac6:	83 f9 ff             	cmp    $0xffffffff,%ecx
51eac9:	74 0f                	je     0x51eada
51eacb:	8a 42 03             	mov    0x3(%edx),%al
51eace:	3a 46 03             	cmp    0x3(%esi),%al
51ead1:	74 07                	je     0x51eada
51ead3:	1b c0                	sbb    %eax,%eax
51ead5:	83 c8 01             	or     $0x1,%eax
51ead8:	eb 02                	jmp    0x51eadc
51eada:	33 c0                	xor    %eax,%eax
51eadc:	85 c0                	test   %eax,%eax
51eade:	75 0f                	jne    0x51eaef
51eae0:	8b 74 24 30          	mov    0x30(%esp),%esi
51eae4:	83 ff 07             	cmp    $0x7,%edi
51eae7:	72 06                	jb     0x51eaef
51eae9:	0f 86 f7 02 00 00    	jbe    0x51ede6
51eaef:	8b 7b 14             	mov    0x14(%ebx),%edi
51eaf2:	89 7c 24 20          	mov    %edi,0x20(%esp)
51eaf6:	83 ff 10             	cmp    $0x10,%edi
51eaf9:	72 04                	jb     0x51eaff
51eafb:	8b 13                	mov    (%ebx),%edx
51eafd:	eb 02                	jmp    0x51eb01
51eaff:	8b d3                	mov    %ebx,%edx
51eb01:	8b 5b 10             	mov    0x10(%ebx),%ebx
51eb04:	b9 07 00 00 00       	mov    $0x7,%ecx
51eb09:	3b d9                	cmp    %ecx,%ebx
51eb0b:	0f 42 cb             	cmovb  %ebx,%ecx
51eb0e:	85 c9                	test   %ecx,%ecx
51eb10:	74 5e                	je     0x51eb70
51eb12:	be dc d1 bd 00       	mov    $0xbdd1dc,%esi
51eb17:	83 e9 04             	sub    $0x4,%ecx
51eb1a:	72 15                	jb     0x51eb31
51eb1c:	0f 1f 40 00          	nopl   0x0(%eax)
51eb20:	8b 02                	mov    (%edx),%eax
51eb22:	3b 06                	cmp    (%esi),%eax
51eb24:	75 10                	jne    0x51eb36
51eb26:	83 c2 04             	add    $0x4,%edx
51eb29:	83 c6 04             	add    $0x4,%esi
51eb2c:	83 e9 04             	sub    $0x4,%ecx
51eb2f:	73 ef                	jae    0x51eb20
51eb31:	83 f9 fc             	cmp    $0xfffffffc,%ecx
51eb34:	74 34                	je     0x51eb6a
51eb36:	8a 02                	mov    (%edx),%al
51eb38:	3a 06                	cmp    (%esi),%al
51eb3a:	75 27                	jne    0x51eb63
51eb3c:	83 f9 fd             	cmp    $0xfffffffd,%ecx
51eb3f:	74 29                	je     0x51eb6a
51eb41:	8a 42 01             	mov    0x1(%edx),%al
51eb44:	3a 46 01             	cmp    0x1(%esi),%al
51eb47:	75 1a                	jne    0x51eb63
51eb49:	83 f9 fe             	cmp    $0xfffffffe,%ecx
51eb4c:	74 1c                	je     0x51eb6a
51eb4e:	8a 42 02             	mov    0x2(%edx),%al
51eb51:	3a 46 02             	cmp    0x2(%esi),%al
51eb54:	75 0d                	jne    0x51eb63
51eb56:	83 f9 ff             	cmp    $0xffffffff,%ecx
51eb59:	74 0f                	je     0x51eb6a
51eb5b:	8a 42 03             	mov    0x3(%edx),%al
51eb5e:	3a 46 03             	cmp    0x3(%esi),%al
51eb61:	74 07                	je     0x51eb6a
51eb63:	1b c0                	sbb    %eax,%eax
51eb65:	83 c8 01             	or     $0x1,%eax
51eb68:	eb 02                	jmp    0x51eb6c
51eb6a:	33 c0                	xor    %eax,%eax
51eb6c:	85 c0                	test   %eax,%eax
51eb6e:	75 0b                	jne    0x51eb7b
51eb70:	83 fb 07             	cmp    $0x7,%ebx
51eb73:	72 06                	jb     0x51eb7b
51eb75:	0f 86 97 00 00 00    	jbe    0x51ec12
51eb7b:	8b 74 24 18          	mov    0x18(%esp),%esi
51eb7f:	83 ff 10             	cmp    $0x10,%edi
51eb82:	72 02                	jb     0x51eb86
51eb84:	8b 36                	mov    (%esi),%esi
51eb86:	83 7d 14 10          	cmpl   $0x10,0x14(%ebp)
51eb8a:	72 05                	jb     0x51eb91
51eb8c:	8b 55 00             	mov    0x0(%ebp),%edx
51eb8f:	eb 02                	jmp    0x51eb93
51eb91:	8b d5                	mov    %ebp,%edx
51eb93:	8b 7d 10             	mov    0x10(%ebp),%edi
51eb96:	8b cb                	mov    %ebx,%ecx
51eb98:	3b fb                	cmp    %ebx,%edi
51eb9a:	0f 42 cf             	cmovb  %edi,%ecx
51eb9d:	85 c9                	test   %ecx,%ecx
51eb9f:	74 55                	je     0x51ebf6
51eba1:	83 e9 04             	sub    $0x4,%ecx
51eba4:	72 11                	jb     0x51ebb7
51eba6:	8b 02                	mov    (%edx),%eax
51eba8:	3b 06                	cmp    (%esi),%eax
51ebaa:	75 10                	jne    0x51ebbc
51ebac:	83 c2 04             	add    $0x4,%edx
51ebaf:	83 c6 04             	add    $0x4,%esi
51ebb2:	83 e9 04             	sub    $0x4,%ecx
51ebb5:	73 ef                	jae    0x51eba6
51ebb7:	83 f9 fc             	cmp    $0xfffffffc,%ecx
51ebba:	74 34                	je     0x51ebf0
51ebbc:	8a 02                	mov    (%edx),%al
51ebbe:	3a 06                	cmp    (%esi),%al
51ebc0:	75 27                	jne    0x51ebe9
51ebc2:	83 f9 fd             	cmp    $0xfffffffd,%ecx
51ebc5:	74 29                	je     0x51ebf0
51ebc7:	8a 42 01             	mov    0x1(%edx),%al
51ebca:	3a 46 01             	cmp    0x1(%esi),%al
51ebcd:	75 1a                	jne    0x51ebe9
51ebcf:	83 f9 fe             	cmp    $0xfffffffe,%ecx
51ebd2:	74 1c                	je     0x51ebf0
51ebd4:	8a 42 02             	mov    0x2(%edx),%al
51ebd7:	3a 46 02             	cmp    0x2(%esi),%al
51ebda:	75 0d                	jne    0x51ebe9
51ebdc:	83 f9 ff             	cmp    $0xffffffff,%ecx
51ebdf:	74 0f                	je     0x51ebf0
51ebe1:	8a 42 03             	mov    0x3(%edx),%al
51ebe4:	3a 46 03             	cmp    0x3(%esi),%al
51ebe7:	74 07                	je     0x51ebf0
51ebe9:	1b c0                	sbb    %eax,%eax
51ebeb:	83 c8 01             	or     $0x1,%eax
51ebee:	eb 02                	jmp    0x51ebf2
51ebf0:	33 c0                	xor    %eax,%eax
51ebf2:	85 c0                	test   %eax,%eax
51ebf4:	75 0d                	jne    0x51ec03
51ebf6:	3b df                	cmp    %edi,%ebx
51ebf8:	76 05                	jbe    0x51ebff
51ebfa:	83 c8 ff             	or     $0xffffffff,%eax
51ebfd:	eb 04                	jmp    0x51ec03
51ebff:	1b c0                	sbb    %eax,%eax
51ec01:	f7 d8                	neg    %eax
51ec03:	c1 e8 1f             	shr    $0x1f,%eax
51ec06:	84 c0                	test   %al,%al
51ec08:	0f 85 d0 01 00 00    	jne    0x51edde
51ec0e:	8b 7c 24 20          	mov    0x20(%esp),%edi
51ec12:	83 ff 10             	cmp    $0x10,%edi
51ec15:	72 08                	jb     0x51ec1f
51ec17:	8b 44 24 18          	mov    0x18(%esp),%eax
51ec1b:	8b 10                	mov    (%eax),%edx
51ec1d:	eb 04                	jmp    0x51ec23
51ec1f:	8b 54 24 18          	mov    0x18(%esp),%edx
51ec23:	b9 07 00 00 00       	mov    $0x7,%ecx
51ec28:	3b d9                	cmp    %ecx,%ebx
51ec2a:	0f 42 cb             	cmovb  %ebx,%ecx
51ec2d:	85 c9                	test   %ecx,%ecx
51ec2f:	74 5f                	je     0x51ec90
51ec31:	be dc d1 bd 00       	mov    $0xbdd1dc,%esi
51ec36:	83 e9 04             	sub    $0x4,%ecx
51ec39:	72 16                	jb     0x51ec51
51ec3b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
51ec40:	8b 02                	mov    (%edx),%eax
51ec42:	3b 06                	cmp    (%esi),%eax
51ec44:	75 10                	jne    0x51ec56
51ec46:	83 c2 04             	add    $0x4,%edx
51ec49:	83 c6 04             	add    $0x4,%esi
51ec4c:	83 e9 04             	sub    $0x4,%ecx
51ec4f:	73 ef                	jae    0x51ec40
51ec51:	83 f9 fc             	cmp    $0xfffffffc,%ecx
51ec54:	74 34                	je     0x51ec8a
51ec56:	8a 02                	mov    (%edx),%al
51ec58:	3a 06                	cmp    (%esi),%al
51ec5a:	75 27                	jne    0x51ec83
51ec5c:	83 f9 fd             	cmp    $0xfffffffd,%ecx
51ec5f:	74 29                	je     0x51ec8a
51ec61:	8a 42 01             	mov    0x1(%edx),%al
51ec64:	3a 46 01             	cmp    0x1(%esi),%al
51ec67:	75 1a                	jne    0x51ec83
51ec69:	83 f9 fe             	cmp    $0xfffffffe,%ecx
51ec6c:	74 1c                	je     0x51ec8a
51ec6e:	8a 42 02             	mov    0x2(%edx),%al
51ec71:	3a 46 02             	cmp    0x2(%esi),%al
51ec74:	75 0d                	jne    0x51ec83
51ec76:	83 f9 ff             	cmp    $0xffffffff,%ecx
51ec79:	74 0f                	je     0x51ec8a
51ec7b:	8a 42 03             	mov    0x3(%edx),%al
51ec7e:	3a 46 03             	cmp    0x3(%esi),%al
51ec81:	74 07                	je     0x51ec8a
51ec83:	1b c0                	sbb    %eax,%eax
51ec85:	83 c8 01             	or     $0x1,%eax
51ec88:	eb 02                	jmp    0x51ec8c
51ec8a:	33 c0                	xor    %eax,%eax
51ec8c:	85 c0                	test   %eax,%eax
51ec8e:	75 0b                	jne    0x51ec9b
51ec90:	83 fb 07             	cmp    $0x7,%ebx
51ec93:	72 06                	jb     0x51ec9b
51ec95:	0f 86 5d 01 00 00    	jbe    0x51edf8
51ec9b:	83 7d 14 10          	cmpl   $0x10,0x14(%ebp)
51ec9f:	72 05                	jb     0x51eca6
51eca1:	8b 55 00             	mov    0x0(%ebp),%edx
51eca4:	eb 02                	jmp    0x51eca8
51eca6:	8b d5                	mov    %ebp,%edx
51eca8:	8b 7d 10             	mov    0x10(%ebp),%edi
51ecab:	b9 07 00 00 00       	mov    $0x7,%ecx
51ecb0:	3b f9                	cmp    %ecx,%edi
51ecb2:	0f 42 cf             	cmovb  %edi,%ecx
51ecb5:	85 c9                	test   %ecx,%ecx
51ecb7:	74 5a                	je     0x51ed13
51ecb9:	be dc d1 bd 00       	mov    $0xbdd1dc,%esi
51ecbe:	83 e9 04             	sub    $0x4,%ecx
51ecc1:	72 11                	jb     0x51ecd4
51ecc3:	8b 02                	mov    (%edx),%eax
51ecc5:	3b 06                	cmp    (%esi),%eax
51ecc7:	75 10                	jne    0x51ecd9
51ecc9:	83 c2 04             	add    $0x4,%edx
51eccc:	83 c6 04             	add    $0x4,%esi
51eccf:	83 e9 04             	sub    $0x4,%ecx
51ecd2:	73 ef                	jae    0x51ecc3
51ecd4:	83 f9 fc             	cmp    $0xfffffffc,%ecx
51ecd7:	74 34                	je     0x51ed0d
51ecd9:	8a 02                	mov    (%edx),%al
51ecdb:	3a 06                	cmp    (%esi),%al
51ecdd:	75 27                	jne    0x51ed06
51ecdf:	83 f9 fd             	cmp    $0xfffffffd,%ecx
51ece2:	74 29                	je     0x51ed0d
51ece4:	8a 42 01             	mov    0x1(%edx),%al
51ece7:	3a 46 01             	cmp    0x1(%esi),%al
51ecea:	75 1a                	jne    0x51ed06
51ecec:	83 f9 fe             	cmp    $0xfffffffe,%ecx
51ecef:	74 1c                	je     0x51ed0d
51ecf1:	8a 42 02             	mov    0x2(%edx),%al
51ecf4:	3a 46 02             	cmp    0x2(%esi),%al