60cd17:	85 c0                	test   %eax,%eax
60cd19:	75 14                	jne    0x60cd2f
60cd1b:	e8 d9 02 fe ff       	call   0x5ecff9
60cd20:	6a 16                	push   $0x16
60cd22:	5e                   	pop    %esi
60cd23:	89 30                	mov    %esi,(%eax)
60cd25:	e8 f5 01 fe ff       	call   0x5ecf1f
60cd2a:	e9 d7 01 00 00       	jmp    0x60cf06
60cd2f:	53                   	push   %ebx
60cd30:	57                   	push   %edi
60cd31:	33 ff                	xor    %edi,%edi
60cd33:	89 38                	mov    %edi,(%eax)
60cd35:	8b df                	mov    %edi,%ebx
60cd37:	8b 06                	mov    (%esi),%eax
60cd39:	8b cf                	mov    %edi,%ecx
60cd3b:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
60cd3e:	89 4d d8             	mov    %ecx,-0x28(%ebp)
60cd41:	89 7d dc             	mov    %edi,-0x24(%ebp)
60cd44:	85 c0                	test   %eax,%eax
60cd46:	74 6c                	je     0x60cdb4
60cd48:	6a 2a                	push   $0x2a
60cd4a:	59                   	pop    %ecx
60cd4b:	66 89 4d f4          	mov    %cx,-0xc(%ebp)
60cd4f:	6a 3f                	push   $0x3f
60cd51:	59                   	pop    %ecx
60cd52:	66 89 4d f6          	mov    %cx,-0xa(%ebp)
60cd56:	33 c9                	xor    %ecx,%ecx
60cd58:	66 89 4d f8          	mov    %cx,-0x8(%ebp)
60cd5c:	8d 4d f4             	lea    -0xc(%ebp),%ecx
60cd5f:	51                   	push   %ecx
60cd60:	50                   	push   %eax
60cd61:	e8 f7 c3 ff ff       	call   0x60915d
60cd66:	59                   	pop    %ecx
60cd67:	59                   	pop    %ecx
60cd68:	8b 0e                	mov    (%esi),%ecx
60cd6a:	85 c0                	test   %eax,%eax
60cd6c:	75 16                	jne    0x60cd84
60cd6e:	8d 45 d4             	lea    -0x2c(%ebp),%eax
60cd71:	50                   	push   %eax
60cd72:	57                   	push   %edi
60cd73:	57                   	push   %edi
60cd74:	51                   	push   %ecx
60cd75:	e8 a6 01 00 00       	call   0x60cf20
60cd7a:	8b f0                	mov    %eax,%esi
60cd7c:	83 c4 10             	add    $0x10,%esp
60cd7f:	89 75 f0             	mov    %esi,-0x10(%ebp)
60cd82:	eb 13                	jmp    0x60cd97
60cd84:	8d 55 d4             	lea    -0x2c(%ebp),%edx
60cd87:	52                   	push   %edx
60cd88:	50                   	push   %eax
60cd89:	51                   	push   %ecx
60cd8a:	e8 45 02 00 00       	call   0x60cfd4
60cd8f:	83 c4 0c             	add    $0xc,%esp
60cd92:	89 45 f0             	mov    %eax,-0x10(%ebp)
60cd95:	8b f0                	mov    %eax,%esi
60cd97:	85 f6                	test   %esi,%esi
60cd99:	0f 85 8f 00 00 00    	jne    0x60ce2e
60cd9f:	8b 75 ec             	mov    -0x14(%ebp),%esi
60cda2:	83 c6 04             	add    $0x4,%esi
60cda5:	89 75 ec             	mov    %esi,-0x14(%ebp)
60cda8:	8b 06                	mov    (%esi),%eax
60cdaa:	85 c0                	test   %eax,%eax
60cdac:	75 9a                	jne    0x60cd48
60cdae:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
60cdb1:	8b 4d d8             	mov    -0x28(%ebp),%ecx
60cdb4:	8b c1                	mov    %ecx,%eax
60cdb6:	89 7d f0             	mov    %edi,-0x10(%ebp)
60cdb9:	2b c3                	sub    %ebx,%eax
60cdbb:	8b f3                	mov    %ebx,%esi
60cdbd:	8b d0                	mov    %eax,%edx
60cdbf:	89 75 ec             	mov    %esi,-0x14(%ebp)
60cdc2:	c1 fa 02             	sar    $0x2,%edx
60cdc5:	83 c0 03             	add    $0x3,%eax
60cdc8:	42                   	inc    %edx
60cdc9:	c1 e8 02             	shr    $0x2,%eax
60cdcc:	3b ce                	cmp    %esi,%ecx
60cdce:	89 55 e4             	mov    %edx,-0x1c(%ebp)
60cdd1:	1b f6                	sbb    %esi,%esi
60cdd3:	f7 d6                	not    %esi
60cdd5:	23 f0                	and    %eax,%esi
60cdd7:	74 36                	je     0x60ce0f
60cdd9:	8b c3                	mov    %ebx,%eax
60cddb:	8b d7                	mov    %edi,%edx
60cddd:	8b 08                	mov    (%eax),%ecx
60cddf:	8d 41 02             	lea    0x2(%ecx),%eax
60cde2:	89 45 e8             	mov    %eax,-0x18(%ebp)
60cde5:	66 8b 01             	mov    (%ecx),%ax
60cde8:	83 c1 02             	add    $0x2,%ecx
60cdeb:	66 3b c7             	cmp    %di,%ax
60cdee:	75 f5                	jne    0x60cde5
60cdf0:	2b 4d e8             	sub    -0x18(%ebp),%ecx
60cdf3:	8b 45 f0             	mov    -0x10(%ebp),%eax
60cdf6:	40                   	inc    %eax
60cdf7:	d1 f9                	sar    $1,%ecx
60cdf9:	03 c1                	add    %ecx,%eax
60cdfb:	89 45 f0             	mov    %eax,-0x10(%ebp)
60cdfe:	8b 45 ec             	mov    -0x14(%ebp),%eax
60ce01:	83 c0 04             	add    $0x4,%eax
60ce04:	42                   	inc    %edx
60ce05:	89 45 ec             	mov    %eax,-0x14(%ebp)
60ce08:	3b d6                	cmp    %esi,%edx
60ce0a:	75 d1                	jne    0x60cddd
60ce0c:	8b 55 e4             	mov    -0x1c(%ebp),%edx
60ce0f:	6a 02                	push   $0x2
60ce11:	ff 75 f0             	push   -0x10(%ebp)
60ce14:	52                   	push   %edx
60ce15:	e8 bd 48 ff ff       	call   0x6016d7
60ce1a:	8b f0                	mov    %eax,%esi
60ce1c:	83 c4 0c             	add    $0xc,%esp
60ce1f:	85 f6                	test   %esi,%esi
60ce21:	75 13                	jne    0x60ce36
60ce23:	83 ce ff             	or     $0xffffffff,%esi
60ce26:	89 75 f0             	mov    %esi,-0x10(%ebp)
60ce29:	e9 92 00 00 00       	jmp    0x60cec0
60ce2e:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
60ce31:	e9 91 00 00 00       	jmp    0x60cec7
60ce36:	8b 45 e4             	mov    -0x1c(%ebp),%eax
60ce39:	89 5d ec             	mov    %ebx,-0x14(%ebp)
60ce3c:	8d 04 86             	lea    (%esi,%eax,4),%eax
60ce3f:	8b d0                	mov    %eax,%edx
60ce41:	89 45 cc             	mov    %eax,-0x34(%ebp)
60ce44:	8b c3                	mov    %ebx,%eax
60ce46:	89 55 e4             	mov    %edx,-0x1c(%ebp)
60ce49:	3b 45 d8             	cmp    -0x28(%ebp),%eax
60ce4c:	74 68                	je     0x60ceb6
60ce4e:	8b ce                	mov    %esi,%ecx
60ce50:	2b cb                	sub    %ebx,%ecx
60ce52:	89 4d f4             	mov    %ecx,-0xc(%ebp)
60ce55:	8b 00                	mov    (%eax),%eax
60ce57:	8b c8                	mov    %eax,%ecx
60ce59:	89 45 d0             	mov    %eax,-0x30(%ebp)
60ce5c:	8d 41 02             	lea    0x2(%ecx),%eax
60ce5f:	89 45 e8             	mov    %eax,-0x18(%ebp)
60ce62:	66 8b 01             	mov    (%ecx),%ax
60ce65:	83 c1 02             	add    $0x2,%ecx
60ce68:	66 3b c7             	cmp    %di,%ax
60ce6b:	75 f5                	jne    0x60ce62
60ce6d:	2b 4d e8             	sub    -0x18(%ebp),%ecx
60ce70:	d1 f9                	sar    $1,%ecx
60ce72:	8d 41 01             	lea    0x1(%ecx),%eax
60ce75:	8b ca                	mov    %edx,%ecx
60ce77:	2b 4d cc             	sub    -0x34(%ebp),%ecx
60ce7a:	50                   	push   %eax
60ce7b:	ff 75 d0             	push   -0x30(%ebp)
60ce7e:	89 45 e8             	mov    %eax,-0x18(%ebp)
60ce81:	8b 45 f0             	mov    -0x10(%ebp),%eax
60ce84:	d1 f9                	sar    $1,%ecx
60ce86:	2b c1                	sub    %ecx,%eax
60ce88:	50                   	push   %eax
60ce89:	52                   	push   %edx
60ce8a:	e8 e8 a1 fe ff       	call   0x5f7077
60ce8f:	83 c4 10             	add    $0x10,%esp
60ce92:	85 c0                	test   %eax,%eax
60ce94:	75 7f                	jne    0x60cf15
60ce96:	8b 45 ec             	mov    -0x14(%ebp),%eax
60ce99:	8b 4d f4             	mov    -0xc(%ebp),%ecx
60ce9c:	8b 55 e4             	mov    -0x1c(%ebp),%edx
60ce9f:	89 14 01             	mov    %edx,(%ecx,%eax,1)
60cea2:	83 c0 04             	add    $0x4,%eax
60cea5:	8b 4d e8             	mov    -0x18(%ebp),%ecx
60cea8:	89 45 ec             	mov    %eax,-0x14(%ebp)
60ceab:	8d 14 4a             	lea    (%edx,%ecx,2),%edx
60ceae:	89 55 e4             	mov    %edx,-0x1c(%ebp)
60ceb1:	3b 45 d8             	cmp    -0x28(%ebp),%eax
60ceb4:	75 9f                	jne    0x60ce55
60ceb6:	8b 45 e0             	mov    -0x20(%ebp),%eax
60ceb9:	89 7d f0             	mov    %edi,-0x10(%ebp)
60cebc:	89 30                	mov    %esi,(%eax)
60cebe:	8b f7                	mov    %edi,%esi
60cec0:	57                   	push   %edi
60cec1:	e8 62 79 ff ff       	call   0x604828
60cec6:	59                   	pop    %ecx
60cec7:	8b 45 d8             	mov    -0x28(%ebp),%eax
60ceca:	8b d3                	mov    %ebx,%edx
60cecc:	2b c2                	sub    %edx,%eax
60cece:	89 55 e0             	mov    %edx,-0x20(%ebp)
60ced1:	83 c0 03             	add    $0x3,%eax
60ced4:	c1 e8 02             	shr    $0x2,%eax
60ced7:	39 55 d8             	cmp    %edx,-0x28(%ebp)
60ceda:	1b c9                	sbb    %ecx,%ecx
60cedc:	f7 d1                	not    %ecx
60cede:	23 c8                	and    %eax,%ecx
60cee0:	89 4d f4             	mov    %ecx,-0xc(%ebp)
60cee3:	74 18                	je     0x60cefd
60cee5:	8b f1                	mov    %ecx,%esi
60cee7:	ff 33                	push   (%ebx)
60cee9:	e8 3a 79 ff ff       	call   0x604828
60ceee:	47                   	inc    %edi
60ceef:	8d 5b 04             	lea    0x4(%ebx),%ebx
60cef2:	59                   	pop    %ecx
60cef3:	3b fe                	cmp    %esi,%edi
60cef5:	75 f0                	jne    0x60cee7
60cef7:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
60cefa:	8b 75 f0             	mov    -0x10(%ebp),%esi
60cefd:	53                   	push   %ebx
60cefe:	e8 25 79 ff ff       	call   0x604828
60cf03:	59                   	pop    %ecx
60cf04:	5f                   	pop    %edi
60cf05:	5b                   	pop    %ebx
60cf06:	8b 4d fc             	mov    -0x4(%ebp),%ecx
60cf09:	8b c6                	mov    %esi,%eax
60cf0b:	33 cd                	xor    %ebp,%ecx
60cf0d:	5e                   	pop    %esi
60cf0e:	e8 c7 45 fd ff       	call   0x5e14da
60cf13:	c9                   	leave
60cf14:	c3                   	ret
60cf15:	57                   	push   %edi
60cf16:	57                   	push   %edi
60cf17:	57                   	push   %edi
60cf18:	57                   	push   %edi
60cf19:	57                   	push   %edi
60cf1a:	e8 2d 00 fe ff       	call   0x5ecf4c
60cf1f:	cc                   	int3
60cf20:	8b ff                	mov    %edi,%edi
60cf22:	55                   	push   %ebp
60cf23:	8b ec                	mov    %esp,%ebp
60cf25:	51                   	push   %ecx
60cf26:	8b 4d 08             	mov    0x8(%ebp),%ecx
60cf29:	53                   	push   %ebx
60cf2a:	57                   	push   %edi
60cf2b:	33 db                	xor    %ebx,%ebx
60cf2d:	8d 51 02             	lea    0x2(%ecx),%edx
60cf30:	66 8b 01             	mov    (%ecx),%ax
60cf33:	83 c1 02             	add    $0x2,%ecx
60cf36:	66 3b c3             	cmp    %bx,%ax
60cf39:	75 f5                	jne    0x60cf30
60cf3b:	8b 7d 10             	mov    0x10(%ebp),%edi
60cf3e:	2b ca                	sub    %edx,%ecx
60cf40:	d1 f9                	sar    $1,%ecx
60cf42:	8b c7                	mov    %edi,%eax
60cf44:	41                   	inc    %ecx
60cf45:	f7 d0                	not    %eax
60cf47:	89 4d fc             	mov    %ecx,-0x4(%ebp)
60cf4a:	3b c8                	cmp    %eax,%ecx
60cf4c:	76 07                	jbe    0x60cf55
60cf4e:	6a 0c                	push   $0xc
60cf50:	58                   	pop    %eax
60cf51:	5f                   	pop    %edi
60cf52:	5b                   	pop    %ebx
60cf53:	c9                   	leave
60cf54:	c3                   	ret
60cf55:	56                   	push   %esi
60cf56:	8d 5f 01             	lea    0x1(%edi),%ebx
60cf59:	03 d9                	add    %ecx,%ebx
60cf5b:	6a 02                	push   $0x2
60cf5d:	53                   	push   %ebx
60cf5e:	e8 79 8b ff ff       	call   0x605adc
60cf63:	8b f0                	mov    %eax,%esi
60cf65:	59                   	pop    %ecx
60cf66:	59                   	pop    %ecx
60cf67:	85 ff                	test   %edi,%edi
60cf69:	74 12                	je     0x60cf7d
60cf6b:	57                   	push   %edi
60cf6c:	ff 75 0c             	push   0xc(%ebp)
60cf6f:	53                   	push   %ebx
60cf70:	56                   	push   %esi
60cf71:	e8 01 a1 fe ff       	call   0x5f7077
60cf76:	83 c4 10             	add    $0x10,%esp
60cf79:	85 c0                	test   %eax,%eax
60cf7b:	75 4a                	jne    0x60cfc7
60cf7d:	ff 75 fc             	push   -0x4(%ebp)
60cf80:	2b df                	sub    %edi,%ebx
60cf82:	8d 04 7e             	lea    (%esi,%edi,2),%eax
60cf85:	ff 75 08             	push   0x8(%ebp)
60cf88:	53                   	push   %ebx
60cf89:	50                   	push   %eax
60cf8a:	e8 e8 a0 fe ff       	call   0x5f7077
60cf8f:	83 c4 10             	add    $0x10,%esp
60cf92:	85 c0                	test   %eax,%eax
60cf94:	75 31                	jne    0x60cfc7
60cf96:	8b 7d 14             	mov    0x14(%ebp),%edi
60cf99:	8b cf                	mov    %edi,%ecx
60cf9b:	e8 ca 01 00 00       	call   0x60d16a
60cfa0:	8b d8                	mov    %eax,%ebx
60cfa2:	85 db                	test   %ebx,%ebx
60cfa4:	74 09                	je     0x60cfaf
60cfa6:	56                   	push   %esi
60cfa7:	e8 7c 78 ff ff       	call   0x604828
60cfac:	59                   	pop    %ecx
60cfad:	eb 0b                	jmp    0x60cfba
60cfaf:	8b 47 04             	mov    0x4(%edi),%eax
60cfb2:	89 30                	mov    %esi,(%eax)
60cfb4:	83 47 04 04          	addl   $0x4,0x4(%edi)
60cfb8:	33 db                	xor    %ebx,%ebx
60cfba:	6a 00                	push   $0x0
60cfbc:	e8 67 78 ff ff       	call   0x604828
60cfc1:	59                   	pop    %ecx
60cfc2:	8b c3                	mov    %ebx,%eax
60cfc4:	5e                   	pop    %esi
60cfc5:	eb 8a                	jmp    0x60cf51
60cfc7:	33 c0                	xor    %eax,%eax
60cfc9:	50                   	push   %eax
60cfca:	50                   	push   %eax
60cfcb:	50                   	push   %eax
60cfcc:	50                   	push   %eax
60cfcd:	50                   	push   %eax
60cfce:	e8 79 ff fd ff       	call   0x5ecf4c
60cfd3:	cc                   	int3
60cfd4:	8b ff                	mov    %edi,%edi
60cfd6:	55                   	push   %ebp
60cfd7:	8b ec                	mov    %esp,%ebp
60cfd9:	81 ec 64 02 00 00    	sub    $0x264,%esp
60cfdf:	a1 d4 89 72 00       	mov    0x7289d4,%eax
60cfe4:	33 c5                	xor    %ebp,%eax
60cfe6:	89 45 fc             	mov    %eax,-0x4(%ebp)
60cfe9:	8b 55 0c             	mov    0xc(%ebp),%edx
60cfec:	8b 4d 10             	mov    0x10(%ebp),%ecx
60cfef:	53                   	push   %ebx
60cff0:	8b 5d 08             	mov    0x8(%ebp),%ebx
60cff3:	89 8d a4 fd ff ff    	mov    %ecx,-0x25c(%ebp)
60cff9:	56                   	push   %esi
60cffa:	57                   	push   %edi
60cffb:	3b d3                	cmp    %ebx,%edx
60cffd:	74 20                	je     0x60d01f
60cfff:	0f b7 02             	movzwl (%edx),%eax
60d002:	8d 8d ab fd ff ff    	lea    -0x255(%ebp),%ecx
60d008:	50                   	push   %eax
60d009:	e8 38 01 00 00       	call   0x60d146
60d00e:	84 c0                	test   %al,%al
60d010:	75 07                	jne    0x60d019
60d012:	83 ea 02             	sub    $0x2,%edx
60d015:	3b d3                	cmp    %ebx,%edx
60d017:	75 e6                	jne    0x60cfff
60d019:	8b 8d a4 fd ff ff    	mov    -0x25c(%ebp),%ecx
60d01f:	0f b7 32             	movzwl (%edx),%esi
60d022:	83 fe 3a             	cmp    $0x3a,%esi
60d025:	75 1a                	jne    0x60d041
60d027:	8d 43 02             	lea    0x2(%ebx),%eax
60d02a:	3b d0                	cmp    %eax,%edx
60d02c:	74 13                	je     0x60d041
60d02e:	51                   	push   %ecx
60d02f:	33 ff                	xor    %edi,%edi
60d031:	57                   	push   %edi
60d032:	57                   	push   %edi
60d033:	53                   	push   %ebx
60d034:	e8 e7 fe ff ff       	call   0x60cf20
60d039:	83 c4 10             	add    $0x10,%esp
60d03c:	e9 f6 00 00 00       	jmp    0x60d137
60d041:	56                   	push   %esi
60d042:	8d 8d ab fd ff ff    	lea    -0x255(%ebp),%ecx
60d048:	e8 f9 00 00 00       	call   0x60d146
60d04d:	2b d3                	sub    %ebx,%edx
60d04f:	0f b6 c0             	movzbl %al,%eax
60d052:	d1 fa                	sar    $1,%edx
60d054:	42                   	inc    %edx
60d055:	f7 d8                	neg    %eax
60d057:	1b c0                	sbb    %eax,%eax
60d059:	33 ff                	xor    %edi,%edi
60d05b:	57                   	push   %edi
60d05c:	57                   	push   %edi