52f8da:	eb 20                	jmp    0x52f8fc
52f8dc:	8b 46 14             	mov    0x14(%esi),%eax
52f8df:	8b 40 2c             	mov    0x2c(%eax),%eax
52f8e2:	80 38 73             	cmpb   $0x73,(%eax)
52f8e5:	75 3e                	jne    0x52f925
52f8e7:	8b 40 08             	mov    0x8(%eax),%eax
52f8ea:	8a 08                	mov    (%eax),%cl
52f8ec:	84 c9                	test   %cl,%cl
52f8ee:	74 35                	je     0x52f925
52f8f0:	80 78 01 00          	cmpb   $0x0,0x1(%eax)
52f8f4:	75 2f                	jne    0x52f925
52f8f6:	8b 55 14             	mov    0x14(%ebp),%edx
52f8f9:	88 4a 03             	mov    %cl,0x3(%edx)
52f8fc:	8b 4f 08             	mov    0x8(%edi),%ecx
52f8ff:	66 8b 01             	mov    (%ecx),%ax
52f902:	66 89 02             	mov    %ax,(%edx)
52f905:	8a 41 02             	mov    0x2(%ecx),%al
52f908:	88 42 02             	mov    %al,0x2(%edx)
52f90b:	8b 4f 04             	mov    0x4(%edi),%ecx
52f90e:	8b 45 10             	mov    0x10(%ebp),%eax
52f911:	c1 e9 03             	shr    $0x3,%ecx
52f914:	f7 d1                	not    %ecx
52f916:	5f                   	pop    %edi
52f917:	83 e1 01             	and    $0x1,%ecx
52f91a:	5b                   	pop    %ebx
52f91b:	89 08                	mov    %ecx,(%eax)
52f91d:	b8 01 00 00 00       	mov    $0x1,%eax
52f922:	5e                   	pop    %esi
52f923:	5d                   	pop    %ebp
52f924:	c3                   	ret
52f925:	5f                   	pop    %edi
52f926:	5b                   	pop    %ebx
52f927:	33 c0                	xor    %eax,%eax
52f929:	5e                   	pop    %esi
52f92a:	5d                   	pop    %ebp
52f92b:	c3                   	ret
52f92c:	33 c0                	xor    %eax,%eax
52f92e:	5e                   	pop    %esi
52f92f:	5d                   	pop    %ebp
52f930:	c3                   	ret
52f931:	cc                   	int3
52f932:	cc                   	int3
52f933:	cc                   	int3
52f934:	cc                   	int3
52f935:	cc                   	int3
52f936:	cc                   	int3
52f937:	cc                   	int3
52f938:	cc                   	int3
52f939:	cc                   	int3
52f93a:	cc                   	int3
52f93b:	cc                   	int3
52f93c:	cc                   	int3
52f93d:	cc                   	int3
52f93e:	cc                   	int3
52f93f:	cc                   	int3
52f940:	55                   	push   %ebp
52f941:	8b ec                	mov    %esp,%ebp
52f943:	8b 4d 0c             	mov    0xc(%ebp),%ecx
52f946:	8b c1                	mov    %ecx,%eax
52f948:	25 00 00 f0 7f       	and    $0x7ff00000,%eax
52f94d:	33 d2                	xor    %edx,%edx
52f94f:	75 1b                	jne    0x52f96c
52f951:	3d 00 00 f0 7f       	cmp    $0x7ff00000,%eax
52f956:	75 14                	jne    0x52f96c
52f958:	8b 45 08             	mov    0x8(%ebp),%eax
52f95b:	81 e1 ff ff 0f 00    	and    $0xfffff,%ecx
52f961:	0b c1                	or     %ecx,%eax
52f963:	74 07                	je     0x52f96c
52f965:	b8 01 00 00 00       	mov    $0x1,%eax
52f96a:	5d                   	pop    %ebp
52f96b:	c3                   	ret
52f96c:	33 c0                	xor    %eax,%eax
52f96e:	5d                   	pop    %ebp
52f96f:	c3                   	ret
52f970:	55                   	push   %ebp
52f971:	8b ec                	mov    %esp,%ebp
52f973:	56                   	push   %esi
52f974:	8b 75 0c             	mov    0xc(%ebp),%esi
52f977:	57                   	push   %edi
52f978:	8b 7d 08             	mov    0x8(%ebp),%edi
52f97b:	56                   	push   %esi
52f97c:	57                   	push   %edi
52f97d:	e8 de 89 02 00       	call   0x558360
52f982:	83 c4 08             	add    $0x8,%esp
52f985:	85 c0                	test   %eax,%eax
52f987:	74 19                	je     0x52f9a2
52f989:	ff 36                	push   (%esi)
52f98b:	68 84 a7 6b 00       	push   $0x6ba784
52f990:	57                   	push   %edi
52f991:	e8 ca 38 ff ff       	call   0x523260
52f996:	83 c4 0c             	add    $0xc,%esp
52f999:	b8 01 00 00 00       	mov    $0x1,%eax
52f99e:	5f                   	pop    %edi
52f99f:	5e                   	pop    %esi
52f9a0:	5d                   	pop    %ebp
52f9a1:	c3                   	ret
52f9a2:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
52f9a6:	75 1f                	jne    0x52f9c7
52f9a8:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
52f9ac:	74 19                	je     0x52f9c7
52f9ae:	ff 36                	push   (%esi)
52f9b0:	68 a4 a7 6b 00       	push   $0x6ba7a4
52f9b5:	57                   	push   %edi
52f9b6:	e8 a5 38 ff ff       	call   0x523260
52f9bb:	83 c4 0c             	add    $0xc,%esp
52f9be:	b8 01 00 00 00       	mov    $0x1,%eax
52f9c3:	5f                   	pop    %edi
52f9c4:	5e                   	pop    %esi
52f9c5:	5d                   	pop    %ebp
52f9c6:	c3                   	ret
52f9c7:	5f                   	pop    %edi
52f9c8:	33 c0                	xor    %eax,%eax
52f9ca:	5e                   	pop    %esi
52f9cb:	5d                   	pop    %ebp
52f9cc:	c3                   	ret
52f9cd:	cc                   	int3
52f9ce:	cc                   	int3
52f9cf:	cc                   	int3
52f9d0:	55                   	push   %ebp
52f9d1:	8b ec                	mov    %esp,%ebp
52f9d3:	56                   	push   %esi
52f9d4:	8b 75 08             	mov    0x8(%ebp),%esi
52f9d7:	68 14 91 6b 00       	push   $0x6b9114
52f9dc:	56                   	push   %esi
52f9dd:	e8 4e e2 00 00       	call   0x53dc30
52f9e2:	83 c4 08             	add    $0x8,%esp
52f9e5:	85 c0                	test   %eax,%eax
52f9e7:	75 08                	jne    0x52f9f1
52f9e9:	b8 01 00 00 00       	mov    $0x1,%eax
52f9ee:	5e                   	pop    %esi
52f9ef:	5d                   	pop    %ebp
52f9f0:	c3                   	ret
52f9f1:	68 1c 91 6b 00       	push   $0x6b911c
52f9f6:	56                   	push   %esi
52f9f7:	e8 34 e2 00 00       	call   0x53dc30
52f9fc:	83 c4 08             	add    $0x8,%esp
52f9ff:	85 c0                	test   %eax,%eax
52fa01:	74 e6                	je     0x52f9e9
52fa03:	68 24 91 6b 00       	push   $0x6b9124
52fa08:	56                   	push   %esi
52fa09:	e8 22 e2 00 00       	call   0x53dc30
52fa0e:	83 c4 08             	add    $0x8,%esp
52fa11:	f7 d8                	neg    %eax
52fa13:	1b c0                	sbb    %eax,%eax
52fa15:	40                   	inc    %eax
52fa16:	5e                   	pop    %esi
52fa17:	5d                   	pop    %ebp
52fa18:	c3                   	ret
52fa19:	cc                   	int3
52fa1a:	cc                   	int3
52fa1b:	cc                   	int3
52fa1c:	cc                   	int3
52fa1d:	cc                   	int3
52fa1e:	cc                   	int3
52fa1f:	cc                   	int3
52fa20:	55                   	push   %ebp
52fa21:	8b ec                	mov    %esp,%ebp
52fa23:	83 ec 18             	sub    $0x18,%esp
52fa26:	8b 45 14             	mov    0x14(%ebp),%eax
52fa29:	33 d2                	xor    %edx,%edx
52fa2b:	53                   	push   %ebx
52fa2c:	56                   	push   %esi
52fa2d:	8b 75 0c             	mov    0xc(%ebp),%esi
52fa30:	89 45 f0             	mov    %eax,-0x10(%ebp)
52fa33:	33 c0                	xor    %eax,%eax
52fa35:	89 75 e8             	mov    %esi,-0x18(%ebp)
52fa38:	8b 75 10             	mov    0x10(%ebp),%esi
52fa3b:	57                   	push   %edi
52fa3c:	89 55 fc             	mov    %edx,-0x4(%ebp)
52fa3f:	89 75 ec             	mov    %esi,-0x14(%ebp)
52fa42:	89 45 f8             	mov    %eax,-0x8(%ebp)
52fa45:	8b 4c 85 e8          	mov    -0x18(%ebp,%eax,4),%ecx
52fa49:	89 4d f4             	mov    %ecx,-0xc(%ebp)
52fa4c:	85 c9                	test   %ecx,%ecx
52fa4e:	74 45                	je     0x52fa95
52fa50:	8b 59 04             	mov    0x4(%ecx),%ebx
52fa53:	33 ff                	xor    %edi,%edi
52fa55:	be 88 16 6b 00       	mov    $0x6b1688,%esi
52fa5a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
52fa60:	0f b6 46 01          	movzbl 0x1(%esi),%eax
52fa64:	3b d8                	cmp    %eax,%ebx
52fa66:	75 1b                	jne    0x52fa83
52fa68:	0f b6 06             	movzbl (%esi),%eax
52fa6b:	53                   	push   %ebx
52fa6c:	05 18 16 6b 00       	add    $0x6b1618,%eax
52fa71:	50                   	push   %eax
52fa72:	ff 31                	push   (%ecx)
52fa74:	e8 e7 00 fb ff       	call   0x4dfb60
52fa79:	83 c4 0c             	add    $0xc,%esp
52fa7c:	85 c0                	test   %eax,%eax
52fa7e:	74 56                	je     0x52fad6
52fa80:	8b 4d f4             	mov    -0xc(%ebp),%ecx
52fa83:	83 c6 03             	add    $0x3,%esi
52fa86:	47                   	inc    %edi
52fa87:	81 fe 9d 16 6b 00    	cmp    $0x6b169d,%esi
52fa8d:	7c d1                	jl     0x52fa60
52fa8f:	8b 55 fc             	mov    -0x4(%ebp),%edx
52fa92:	83 ca 40             	or     $0x40,%edx
52fa95:	8b c2                	mov    %edx,%eax
52fa97:	83 e0 21             	and    $0x21,%eax
52fa9a:	3c 21                	cmp    $0x21,%al
52fa9c:	0f 95 c1             	setne  %cl
52fa9f:	f6 c2 40             	test   $0x40,%dl
52faa2:	0f 94 c0             	sete   %al
52faa5:	84 c8                	test   %cl,%al
52faa7:	74 5d                	je     0x52fb06
52faa9:	8b c2                	mov    %edx,%eax
52faab:	f6 c2 20             	test   $0x20,%dl
52faae:	0f 84 81 00 00 00    	je     0x52fb35
52fab4:	24 18                	and    $0x18,%al
52fab6:	3c 08                	cmp    $0x8,%al
52fab8:	74 43                	je     0x52fafd
52faba:	68 04 ae 6b 00       	push   $0x6bae04
52fabf:	ff 75 08             	push   0x8(%ebp)
52fac2:	e8 99 37 ff ff       	call   0x523260
52fac7:	83 c4 08             	add    $0x8,%esp
52faca:	b8 01 00 00 00       	mov    $0x1,%eax
52facf:	5f                   	pop    %edi
52fad0:	5e                   	pop    %esi
52fad1:	5b                   	pop    %ebx
52fad2:	8b e5                	mov    %ebp,%esp
52fad4:	5d                   	pop    %ebp
52fad5:	c3                   	ret
52fad6:	8b 55 fc             	mov    -0x4(%ebp),%edx
52fad9:	0f b6 84 7f 8a 16 6b 	movzbl 0x6b168a(%edi,%edi,2),%eax
52fae0:	00
52fae1:	0b d0                	or     %eax,%edx
52fae3:	89 55 fc             	mov    %edx,-0x4(%ebp)
52fae6:	83 ff 07             	cmp    $0x7,%edi
52fae9:	7d a7                	jge    0x52fa92
52faeb:	8b 45 f8             	mov    -0x8(%ebp),%eax
52faee:	40                   	inc    %eax
52faef:	89 45 f8             	mov    %eax,-0x8(%ebp)
52faf2:	83 f8 03             	cmp    $0x3,%eax
52faf5:	0f 8c 4a ff ff ff    	jl     0x52fa45
52fafb:	eb 98                	jmp    0x52fa95
52fafd:	5f                   	pop    %edi
52fafe:	5e                   	pop    %esi
52faff:	8b c2                	mov    %edx,%eax
52fb01:	5b                   	pop    %ebx
52fb02:	8b e5                	mov    %ebp,%esp
52fb04:	5d                   	pop    %ebp
52fb05:	c3                   	ret
52fb06:	8b 5d 14             	mov    0x14(%ebp),%ebx
52fb09:	b9 74 a1 6a 00       	mov    $0x6aa174,%ecx
52fb0e:	53                   	push   %ebx
52fb0f:	85 db                	test   %ebx,%ebx
52fb11:	b8 75 a1 6a 00       	mov    $0x6aa175,%eax
52fb16:	0f 45 c1             	cmovne %ecx,%eax
52fb19:	50                   	push   %eax
52fb1a:	ff 75 10             	push   0x10(%ebp)
52fb1d:	ff 75 0c             	push   0xc(%ebp)
52fb20:	68 d8 ad 6b 00       	push   $0x6badd8
52fb25:	ff 75 08             	push   0x8(%ebp)
52fb28:	e8 33 37 ff ff       	call   0x523260
52fb2d:	83 c4 18             	add    $0x18,%esp
52fb30:	b8 01 00 00 00       	mov    $0x1,%eax
52fb35:	5f                   	pop    %edi
52fb36:	5e                   	pop    %esi
52fb37:	5b                   	pop    %ebx
52fb38:	8b e5                	mov    %ebp,%esp
52fb3a:	5d                   	pop    %ebp
52fb3b:	c3                   	ret
52fb3c:	cc                   	int3
52fb3d:	cc                   	int3
52fb3e:	cc                   	int3
52fb3f:	cc                   	int3
52fb40:	55                   	push   %ebp
52fb41:	8b ec                	mov    %esp,%ebp
52fb43:	56                   	push   %esi
52fb44:	8b 75 10             	mov    0x10(%ebp),%esi
52fb47:	6a 48                	push   $0x48
52fb49:	6a 00                	push   $0x0
52fb4b:	56                   	push   %esi
52fb4c:	e8 af 3e 0b 00       	call   0x5e3a00
52fb51:	8b 4d 18             	mov    0x18(%ebp),%ecx
52fb54:	83 c4 0c             	add    $0xc,%esp
52fb57:	85 c9                	test   %ecx,%ecx
52fb59:	75 1d                	jne    0x52fb78
52fb5b:	8b 45 14             	mov    0x14(%ebp),%eax
52fb5e:	51                   	push   %ecx
52fb5f:	25 7f 7f 08 01       	and    $0x1087f7f,%eax
52fb64:	50                   	push   %eax
52fb65:	8b 45 08             	mov    0x8(%ebp),%eax
52fb68:	56                   	push   %esi
52fb69:	ff 75 0c             	push   0xc(%ebp)
52fb6c:	50                   	push   %eax
52fb6d:	8b 40 18             	mov    0x18(%eax),%eax
52fb70:	ff d0                	call   *%eax
52fb72:	83 c4 14             	add    $0x14,%esp
52fb75:	5e                   	pop    %esi
52fb76:	5d                   	pop    %ebp
52fb77:	c3                   	ret
52fb78:	85 c9                	test   %ecx,%ecx
52fb7a:	c7 06 d8 26 6b 00    	movl   $0x6b26d8,(%esi)
52fb80:	b8 fc 03 00 00       	mov    $0x3fc,%eax
52fb85:	89 4e 08             	mov    %ecx,0x8(%esi)
52fb88:	0f 4f c1             	cmovg  %ecx,%eax
52fb8b:	89 46 04             	mov    %eax,0x4(%esi)
52fb8e:	8b 45 14             	mov    0x14(%ebp),%eax
52fb91:	89 46 38             	mov    %eax,0x38(%esi)
52fb94:	8b 45 0c             	mov    0xc(%ebp),%eax
52fb97:	89 46 40             	mov    %eax,0x40(%esi)
52fb9a:	8b 45 08             	mov    0x8(%ebp),%eax
52fb9d:	89 46 3c             	mov    %eax,0x3c(%esi)
52fba0:	33 c0                	xor    %eax,%eax
52fba2:	5e                   	pop    %esi
52fba3:	5d                   	pop    %ebp
52fba4:	c3                   	ret
52fba5:	cc                   	int3
52fba6:	cc                   	int3
52fba7:	cc                   	int3
52fba8:	cc                   	int3
52fba9:	cc                   	int3
52fbaa:	cc                   	int3
52fbab:	cc                   	int3
52fbac:	cc                   	int3
52fbad:	cc                   	int3
52fbae:	cc                   	int3
52fbaf:	cc                   	int3
52fbb0:	55                   	push   %ebp
52fbb1:	8b ec                	mov    %esp,%ebp
52fbb3:	53                   	push   %ebx
52fbb4:	8b 5d 0c             	mov    0xc(%ebp),%ebx
52fbb7:	03 5d 10             	add    0x10(%ebp),%ebx
52fbba:	56                   	push   %esi
52fbbb:	8b 75 08             	mov    0x8(%ebp),%esi
52fbbe:	57                   	push   %edi
52fbbf:	8d 43 04             	lea    0x4(%ebx),%eax
52fbc2:	8d 04 80             	lea    (%eax,%eax,4),%eax
52fbc5:	6a 00                	push   $0x0
52fbc7:	50                   	push   %eax
52fbc8:	56                   	push   %esi
52fbc9:	e8 12 18 ff ff       	call   0x5213e0
52fbce:	8b f8                	mov    %eax,%edi
52fbd0:	83 c4 0c             	add    $0xc,%esp
52fbd3:	85 ff                	test   %edi,%edi
52fbd5:	74 44                	je     0x52fc1b
52fbd7:	8b 45 0c             	mov    0xc(%ebp),%eax
52fbda:	8d 4b 05             	lea    0x5(%ebx),%ecx
52fbdd:	8d 0c 8f             	lea    (%edi,%ecx,4),%ecx
52fbe0:	66 89 47 06          	mov    %ax,0x6(%edi)
52fbe4:	89 4f 10             	mov    %ecx,0x10(%edi)
52fbe7:	8b 4d 10             	mov    0x10(%ebp),%ecx
52fbea:	03 c8                	add    %eax,%ecx
52fbec:	8d 43 ff             	lea    -0x1(%ebx),%eax
52fbef:	8d 04 83             	lea    (%ebx,%eax,4),%eax
52fbf2:	66 89 4f 08          	mov    %cx,0x8(%edi)
52fbf6:	8a 4e 4e             	mov    0x4e(%esi),%cl
52fbf9:	50                   	push   %eax