52cb9f:	8b 5d 14             	mov    0x14(%ebp),%ebx
52cba2:	89 45 f8             	mov    %eax,-0x8(%ebp)
52cba5:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
52cba9:	74 09                	je     0x52cbb4
52cbab:	83 38 00             	cmpl   $0x0,(%eax)
52cbae:	0f 84 dc 00 00 00    	je     0x52cc90
52cbb4:	3b f7                	cmp    %edi,%esi
52cbb6:	0f 84 d4 00 00 00    	je     0x52cc90
52cbbc:	3b 5d 1c             	cmp    0x1c(%ebp),%ebx
52cbbf:	0f 84 cb 00 00 00    	je     0x52cc90
52cbc5:	52                   	push   %edx
52cbc6:	51                   	push   %ecx
52cbc7:	8d 45 f4             	lea    -0xc(%ebp),%eax
52cbca:	50                   	push   %eax
52cbcb:	6a 01                	push   $0x1
52cbcd:	6a 00                	push   $0x0
52cbcf:	ff 75 10             	push   0x10(%ebp)
52cbd2:	56                   	push   %esi
52cbd3:	ff 75 08             	push   0x8(%ebp)
52cbd6:	e8 75 f9 ff ff       	call   0x52c550
52cbdb:	83 c4 20             	add    $0x20,%esp
52cbde:	89 45 0c             	mov    %eax,0xc(%ebp)
52cbe1:	f6 46 38 08          	testb  $0x8,0x38(%esi)
52cbe5:	74 06                	je     0x52cbed
52cbe7:	0f b7 4e 32          	movzwl 0x32(%esi),%ecx
52cbeb:	eb 04                	jmp    0x52cbf1
52cbed:	0f b7 4e 34          	movzwl 0x34(%esi),%ecx
52cbf1:	8b 45 fc             	mov    -0x4(%ebp),%eax
52cbf4:	0f b7 d1             	movzwl %cx,%edx
52cbf7:	8b 48 6c             	mov    0x6c(%eax),%ecx
52cbfa:	39 48 70             	cmp    %ecx,0x70(%eax)
52cbfd:	7f 15                	jg     0x52cc14
52cbff:	52                   	push   %edx
52cc00:	ff 75 0c             	push   0xc(%ebp)
52cc03:	53                   	push   %ebx
52cc04:	68 84 00 00 00       	push   $0x84
52cc09:	50                   	push   %eax
52cc0a:	e8 f1 98 fd ff       	call   0x506500
52cc0f:	83 c4 14             	add    $0x14,%esp
52cc12:	eb 35                	jmp    0x52cc49
52cc14:	8b 5d fc             	mov    -0x4(%ebp),%ebx
52cc17:	8d 41 01             	lea    0x1(%ecx),%eax
52cc1a:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
52cc1d:	89 43 6c             	mov    %eax,0x6c(%ebx)
52cc20:	8b c3                	mov    %ebx,%eax
52cc22:	8b 5d 14             	mov    0x14(%ebp),%ebx
52cc25:	8b 40 68             	mov    0x68(%eax),%eax
52cc28:	89 5c 88 04          	mov    %ebx,0x4(%eax,%ecx,4)
52cc2c:	8b 5d 0c             	mov    0xc(%ebp),%ebx
52cc2f:	89 5c 88 08          	mov    %ebx,0x8(%eax,%ecx,4)
52cc33:	8b 5d 14             	mov    0x14(%ebp),%ebx
52cc36:	c7 04 88 84 00 00 00 	movl   $0x84,(%eax,%ecx,4)
52cc3d:	89 54 88 0c          	mov    %edx,0xc(%eax,%ecx,4)
52cc41:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
52cc48:	00
52cc49:	8b 55 f4             	mov    -0xc(%ebp),%edx
52cc4c:	85 d2                	test   %edx,%edx
52cc4e:	74 38                	je     0x52cc88
52cc50:	8b 45 08             	mov    0x8(%ebp),%eax
52cc53:	f7 d2                	not    %edx
52cc55:	8b 40 08             	mov    0x8(%eax),%eax
52cc58:	8b 48 0c             	mov    0xc(%eax),%ecx
52cc5b:	8b 41 3c             	mov    0x3c(%ecx),%eax
52cc5e:	03 41 38             	add    0x38(%ecx),%eax
52cc61:	79 13                	jns    0x52cc76
52cc63:	52                   	push   %edx
52cc64:	8b 55 08             	mov    0x8(%ebp),%edx
52cc67:	8b 42 08             	mov    0x8(%edx),%eax
52cc6a:	50                   	push   %eax
52cc6b:	51                   	push   %ecx
52cc6c:	e8 2f 6b fe ff       	call   0x5137a0
52cc71:	83 c4 0c             	add    $0xc,%esp
52cc74:	eb 12                	jmp    0x52cc88
52cc76:	8b 5d 08             	mov    0x8(%ebp),%ebx
52cc79:	8b 49 40             	mov    0x40(%ecx),%ecx
52cc7c:	8b 43 08             	mov    0x8(%ebx),%eax
52cc7f:	8b 5d 14             	mov    0x14(%ebp),%ebx
52cc82:	8b 40 6c             	mov    0x6c(%eax),%eax
52cc85:	89 04 91             	mov    %eax,(%ecx,%edx,4)
52cc88:	8b 45 f8             	mov    -0x8(%ebp),%eax
52cc8b:	8b ce                	mov    %esi,%ecx
52cc8d:	8b 55 0c             	mov    0xc(%ebp),%edx
52cc90:	8b 76 14             	mov    0x14(%esi),%esi
52cc93:	83 c0 04             	add    $0x4,%eax
52cc96:	43                   	inc    %ebx
52cc97:	89 45 f8             	mov    %eax,-0x8(%ebp)
52cc9a:	89 5d 14             	mov    %ebx,0x14(%ebp)
52cc9d:	85 f6                	test   %esi,%esi
52cc9f:	0f 85 00 ff ff ff    	jne    0x52cba5
52cca5:	5b                   	pop    %ebx
52cca6:	5f                   	pop    %edi
52cca7:	5e                   	pop    %esi
52cca8:	8b e5                	mov    %ebp,%esp
52ccaa:	5d                   	pop    %ebp
52ccab:	c3                   	ret
52ccac:	cc                   	int3
52ccad:	cc                   	int3
52ccae:	cc                   	int3
52ccaf:	cc                   	int3
52ccb0:	55                   	push   %ebp
52ccb1:	8b ec                	mov    %esp,%ebp
52ccb3:	ff 75 0c             	push   0xc(%ebp)
52ccb6:	6a 01                	push   $0x1
52ccb8:	ff 75 08             	push   0x8(%ebp)
52ccbb:	e8 e0 96 fd ff       	call   0x5063a0
52ccc0:	33 c9                	xor    %ecx,%ecx
52ccc2:	83 c4 0c             	add    $0xc,%esp
52ccc5:	84 c0                	test   %al,%al
52ccc7:	0f 95 c1             	setne  %cl
52ccca:	8a c1                	mov    %cl,%al
52cccc:	5d                   	pop    %ebp
52cccd:	c3                   	ret
52ccce:	cc                   	int3
52cccf:	cc                   	int3
52ccd0:	55                   	push   %ebp
52ccd1:	8b ec                	mov    %esp,%ebp
52ccd3:	53                   	push   %ebx
52ccd4:	8b 5d 08             	mov    0x8(%ebp),%ebx
52ccd7:	56                   	push   %esi
52ccd8:	8b 75 10             	mov    0x10(%ebp),%esi
52ccdb:	57                   	push   %edi
52ccdc:	8b 1b                	mov    (%ebx),%ebx
52ccde:	8b 7d 14             	mov    0x14(%ebp),%edi
52cce1:	85 f6                	test   %esi,%esi
52cce3:	75 33                	jne    0x52cd18
52cce5:	85 ff                	test   %edi,%edi
52cce7:	74 17                	je     0x52cd00
52cce9:	6a 00                	push   $0x0
52cceb:	8d 83 94 01 00 00    	lea    0x194(%ebx),%eax
52ccf1:	57                   	push   %edi
52ccf2:	50                   	push   %eax
52ccf3:	e8 d8 52 fd ff       	call   0x501fd0
52ccf8:	83 c4 0c             	add    $0xc,%esp
52ccfb:	8b 70 08             	mov    0x8(%eax),%esi
52ccfe:	eb 03                	jmp    0x52cd03
52cd00:	8b 73 08             	mov    0x8(%ebx),%esi
52cd03:	85 f6                	test   %esi,%esi
52cd05:	74 17                	je     0x52cd1e
52cd07:	0f b6 45 0c          	movzbl 0xc(%ebp),%eax
52cd0b:	8d 04 80             	lea    (%eax,%eax,4),%eax
52cd0e:	8d 34 86             	lea    (%esi,%eax,4),%esi
52cd11:	83 c6 ec             	add    $0xffffffec,%esi
52cd14:	85 f6                	test   %esi,%esi
52cd16:	74 06                	je     0x52cd1e
52cd18:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
52cd1c:	75 40                	jne    0x52cd5e
52cd1e:	0f b6 45 0c          	movzbl 0xc(%ebp),%eax
52cd22:	57                   	push   %edi
52cd23:	50                   	push   %eax
52cd24:	53                   	push   %ebx
52cd25:	89 45 10             	mov    %eax,0x10(%ebp)
52cd28:	e8 b3 ad fc ff       	call   0x4f7ae0
52cd2d:	83 c4 0c             	add    $0xc,%esp
52cd30:	85 ff                	test   %edi,%edi
52cd32:	74 17                	je     0x52cd4b
52cd34:	6a 00                	push   $0x0
52cd36:	8d 83 94 01 00 00    	lea    0x194(%ebx),%eax
52cd3c:	57                   	push   %edi
52cd3d:	50                   	push   %eax
52cd3e:	e8 8d 52 fd ff       	call   0x501fd0
52cd43:	83 c4 0c             	add    $0xc,%esp
52cd46:	8b 70 08             	mov    0x8(%eax),%esi
52cd49:	eb 03                	jmp    0x52cd4e
52cd4b:	8b 73 08             	mov    0x8(%ebx),%esi
52cd4e:	85 f6                	test   %esi,%esi
52cd50:	74 26                	je     0x52cd78
52cd52:	8b 45 10             	mov    0x10(%ebp),%eax
52cd55:	8d 04 80             	lea    (%eax,%eax,4),%eax
52cd58:	8d 34 86             	lea    (%esi,%eax,4),%esi
52cd5b:	83 c6 ec             	add    $0xffffffec,%esi
52cd5e:	85 f6                	test   %esi,%esi
52cd60:	74 16                	je     0x52cd78
52cd62:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
52cd66:	75 29                	jne    0x52cd91
52cd68:	56                   	push   %esi
52cd69:	53                   	push   %ebx
52cd6a:	e8 71 b5 02 00       	call   0x5582e0
52cd6f:	83 c4 08             	add    $0x8,%esp
52cd72:	85 c0                	test   %eax,%eax
52cd74:	74 1b                	je     0x52cd91
52cd76:	33 f6                	xor    %esi,%esi
52cd78:	8b 5d 08             	mov    0x8(%ebp),%ebx
52cd7b:	57                   	push   %edi
52cd7c:	68 64 a7 6b 00       	push   $0x6ba764
52cd81:	53                   	push   %ebx
52cd82:	e8 d9 64 ff ff       	call   0x523260
52cd87:	83 c4 0c             	add    $0xc,%esp
52cd8a:	c7 43 0c 01 01 00 00 	movl   $0x101,0xc(%ebx)
52cd91:	5f                   	pop    %edi
52cd92:	8b c6                	mov    %esi,%eax
52cd94:	5e                   	pop    %esi
52cd95:	5b                   	pop    %ebx
52cd96:	5d                   	pop    %ebp
52cd97:	c3                   	ret
52cd98:	cc                   	int3
52cd99:	cc                   	int3
52cd9a:	cc                   	int3
52cd9b:	cc                   	int3
52cd9c:	cc                   	int3
52cd9d:	cc                   	int3
52cd9e:	cc                   	int3
52cd9f:	cc                   	int3
52cda0:	55                   	push   %ebp
52cda1:	8b ec                	mov    %esp,%ebp
52cda3:	83 ec 0c             	sub    $0xc,%esp
52cda6:	8b 4d 08             	mov    0x8(%ebp),%ecx
52cda9:	0f 57 c0             	xorps  %xmm0,%xmm0
52cdac:	53                   	push   %ebx
52cdad:	56                   	push   %esi
52cdae:	57                   	push   %edi
52cdaf:	8a 01                	mov    (%ecx),%al
52cdb1:	66 0f 13 45 f4       	movlpd %xmm0,-0xc(%ebp)
52cdb6:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
52cdbd:	3c 2d                	cmp    $0x2d,%al
52cdbf:	0f 85 a5 00 00 00    	jne    0x52ce6a
52cdc5:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
52cdcc:	41                   	inc    %ecx
52cdcd:	8a 11                	mov    (%ecx),%dl
52cdcf:	0f b6 c2             	movzbl %dl,%eax
52cdd2:	f6 80 40 1b 6b 00 04 	testb  $0x4,0x6b1b40(%eax)
52cdd9:	0f 84 2d 01 00 00    	je     0x52cf0c
52cddf:	80 fa 30             	cmp    $0x30,%dl
52cde2:	75 06                	jne    0x52cdea
52cde4:	41                   	inc    %ecx
52cde5:	80 39 30             	cmpb   $0x30,(%ecx)
52cde8:	74 fa                	je     0x52cde4
52cdea:	8b 5d f8             	mov    -0x8(%ebp),%ebx
52cded:	33 d2                	xor    %edx,%edx
52cdef:	8b 7d f4             	mov    -0xc(%ebp),%edi
52cdf2:	89 55 08             	mov    %edx,0x8(%ebp)
52cdf5:	0f be 04 0a          	movsbl (%edx,%ecx,1),%eax
52cdf9:	83 e8 30             	sub    $0x30,%eax
52cdfc:	83 f8 09             	cmp    $0x9,%eax
52cdff:	77 26                	ja     0x52ce27
52ce01:	8b d7                	mov    %edi,%edx
52ce03:	8b f3                	mov    %ebx,%esi
52ce05:	0f a4 d6 02          	shld   $0x2,%edx,%esi
52ce09:	c1 e2 02             	shl    $0x2,%edx
52ce0c:	03 fa                	add    %edx,%edi
52ce0e:	99                   	cltd
52ce0f:	13 de                	adc    %esi,%ebx
52ce11:	0f a4 fb 01          	shld   $0x1,%edi,%ebx
52ce15:	03 ff                	add    %edi,%edi
52ce17:	03 f8                	add    %eax,%edi
52ce19:	13 da                	adc    %edx,%ebx
52ce1b:	8b 55 08             	mov    0x8(%ebp),%edx
52ce1e:	42                   	inc    %edx
52ce1f:	89 55 08             	mov    %edx,0x8(%ebp)
52ce22:	83 fa 0b             	cmp    $0xb,%edx
52ce25:	7c ce                	jl     0x52cdf5
52ce27:	83 fa 0a             	cmp    $0xa,%edx
52ce2a:	0f 8f dc 00 00 00    	jg     0x52cf0c
52ce30:	8b 55 fc             	mov    -0x4(%ebp),%edx
52ce33:	8b cf                	mov    %edi,%ecx
52ce35:	2b ca                	sub    %edx,%ecx
52ce37:	8b c3                	mov    %ebx,%eax
52ce39:	83 d8 00             	sbb    $0x0,%eax
52ce3c:	89 45 f8             	mov    %eax,-0x8(%ebp)
52ce3f:	78 12                	js     0x52ce53
52ce41:	0f 8f c5 00 00 00    	jg     0x52cf0c
52ce47:	81 f9 ff ff ff 7f    	cmp    $0x7fffffff,%ecx
52ce4d:	0f 87 b9 00 00 00    	ja     0x52cf0c
52ce53:	85 d2                	test   %edx,%edx
52ce55:	74 02                	je     0x52ce59
52ce57:	f7 df                	neg    %edi
52ce59:	8b 45 0c             	mov    0xc(%ebp),%eax
52ce5c:	89 38                	mov    %edi,(%eax)
52ce5e:	b8 01 00 00 00       	mov    $0x1,%eax
52ce63:	5f                   	pop    %edi
52ce64:	5e                   	pop    %esi
52ce65:	5b                   	pop    %ebx
52ce66:	8b e5                	mov    %ebp,%esp
52ce68:	5d                   	pop    %ebp
52ce69:	c3                   	ret
52ce6a:	3c 2b                	cmp    $0x2b,%al
52ce6c:	0f 84 5a ff ff ff    	je     0x52cdcc
52ce72:	3c 30                	cmp    $0x30,%al
52ce74:	0f 85 53 ff ff ff    	jne    0x52cdcd
52ce7a:	8a 41 01             	mov    0x1(%ecx),%al
52ce7d:	3c 78                	cmp    $0x78,%al
52ce7f:	74 08                	je     0x52ce89
52ce81:	3c 58                	cmp    $0x58,%al
52ce83:	0f 85 44 ff ff ff    	jne    0x52cdcd
52ce89:	0f b6 41 02          	movzbl 0x2(%ecx),%eax
52ce8d:	8d 71 02             	lea    0x2(%ecx),%esi
52ce90:	f6 80 40 1b 6b 00 08 	testb  $0x8,0x6b1b40(%eax)
52ce97:	0f 84 30 ff ff ff    	je     0x52cdcd
52ce9d:	33 db                	xor    %ebx,%ebx
52ce9f:	80 3e 30             	cmpb   $0x30,(%esi)
52cea2:	75 06                	jne    0x52ceaa
52cea4:	46                   	inc    %esi
52cea5:	80 3e 30             	cmpb   $0x30,(%esi)
52cea8:	74 fa                	je     0x52cea4
52ceaa:	0f b6 06             	movzbl (%esi),%eax
52cead:	33 ff                	xor    %edi,%edi
52ceaf:	f6 80 40 1b 6b 00 08 	testb  $0x8,0x6b1b40(%eax)
52ceb6:	74 36                	je     0x52ceee
52ceb8:	83 ff 08             	cmp    $0x8,%edi
52cebb:	7d 2d                	jge    0x52ceea
52cebd:	0f be 14 37          	movsbl (%edi,%esi,1),%edx
52cec1:	47                   	inc    %edi
52cec2:	8b ca                	mov    %edx,%ecx
52cec4:	c1 e3 04             	shl    $0x4,%ebx
52cec7:	c1 f9 06             	sar    $0x6,%ecx
52ceca:	80 e1 01             	and    $0x1,%cl
52cecd:	8a c1                	mov    %cl,%al
52cecf:	c0 e0 03             	shl    $0x3,%al
52ced2:	2a c1                	sub    %cl,%al
52ced4:	8a ca                	mov    %dl,%cl
52ced6:	2a c8                	sub    %al,%cl
52ced8:	0f b6 04 37          	movzbl (%edi,%esi,1),%eax
52cedc:	83 e1 0f             	and    $0xf,%ecx
52cedf:	03 d9                	add    %ecx,%ebx
52cee1:	f6 80 40 1b 6b 00 08 	testb  $0x8,0x6b1b40(%eax)
52cee8:	75 ce                	jne    0x52ceb8
52ceea:	85 db                	test   %ebx,%ebx
52ceec:	78 1e                	js     0x52cf0c
52ceee:	0f b6 04 37          	movzbl (%edi,%esi,1),%eax
52cef2:	f6 80 40 1b 6b 00 08 	testb  $0x8,0x6b1b40(%eax)
52cef9:	75 11                	jne    0x52cf0c
52cefb:	8b 45 0c             	mov    0xc(%ebp),%eax
52cefe:	5f                   	pop    %edi
52ceff:	5e                   	pop    %esi
52cf00:	89 18                	mov    %ebx,(%eax)
52cf02:	b8 01 00 00 00       	mov    $0x1,%eax
52cf07:	5b                   	pop    %ebx
52cf08:	8b e5                	mov    %ebp,%esp
52cf0a:	5d                   	pop    %ebp
52cf0b:	c3                   	ret
52cf0c:	5f                   	pop    %edi
52cf0d:	5e                   	pop    %esi
52cf0e:	33 c0                	xor    %eax,%eax
52cf10:	5b                   	pop    %ebx
52cf11:	8b e5                	mov    %ebp,%esp
52cf13:	5d                   	pop    %ebp
52cf14:	c3                   	ret
52cf15:	cc                   	int3
52cf16:	cc                   	int3
52cf17:	cc                   	int3
52cf18:	cc                   	int3
52cf19:	cc                   	int3
52cf1a:	cc                   	int3
52cf1b:	cc                   	int3
52cf1c:	cc                   	int3
52cf1d:	cc                   	int3
52cf1e:	cc                   	int3
52cf1f:	cc                   	int3
52cf20:	55                   	push   %ebp
52cf21:	8b ec                	mov    %esp,%ebp
52cf23:	8b 55 0c             	mov    0xc(%ebp),%edx