42c979:	3b 7d f0             	cmp    -0x10(%ebp),%edi
42c97c:	75 0b                	jne    0x42c989
42c97e:	85 f6                	test   %esi,%esi
42c980:	7c 59                	jl     0x42c9db
42c982:	7f 05                	jg     0x42c989
42c984:	83 fb 64             	cmp    $0x64,%ebx
42c987:	72 27                	jb     0x42c9b0
42c989:	6a 00                	push   $0x0
42c98b:	6a 64                	push   $0x64
42c98d:	56                   	push   %esi
42c98e:	53                   	push   %ebx
42c98f:	e8 fc f7 00 00       	call   0x43c190
42c994:	6a 30                	push   $0x30
42c996:	59                   	pop    %ecx
42c997:	6a 00                	push   $0x0
42c999:	6a 64                	push   $0x64
42c99b:	02 c1                	add    %cl,%al
42c99d:	56                   	push   %esi
42c99e:	88 07                	mov    %al,(%edi)
42c9a0:	47                   	inc    %edi
42c9a1:	53                   	push   %ebx
42c9a2:	e8 99 f8 00 00       	call   0x43c240
42c9a7:	8b d8                	mov    %eax,%ebx
42c9a9:	8b f2                	mov    %edx,%esi
42c9ab:	3b 7d f0             	cmp    -0x10(%ebp),%edi
42c9ae:	75 0b                	jne    0x42c9bb
42c9b0:	85 f6                	test   %esi,%esi
42c9b2:	7c 27                	jl     0x42c9db
42c9b4:	7f 05                	jg     0x42c9bb
42c9b6:	83 fb 0a             	cmp    $0xa,%ebx
42c9b9:	72 20                	jb     0x42c9db
42c9bb:	6a 00                	push   $0x0
42c9bd:	6a 0a                	push   $0xa
42c9bf:	56                   	push   %esi
42c9c0:	53                   	push   %ebx
42c9c1:	e8 ca f7 00 00       	call   0x43c190
42c9c6:	6a 30                	push   $0x30
42c9c8:	59                   	pop    %ecx
42c9c9:	6a 00                	push   $0x0
42c9cb:	6a 0a                	push   $0xa
42c9cd:	02 c1                	add    %cl,%al
42c9cf:	56                   	push   %esi
42c9d0:	88 07                	mov    %al,(%edi)
42c9d2:	47                   	inc    %edi
42c9d3:	53                   	push   %ebx
42c9d4:	e8 67 f8 00 00       	call   0x43c240
42c9d9:	8b d8                	mov    %eax,%ebx
42c9db:	6a 30                	push   $0x30
42c9dd:	58                   	pop    %eax
42c9de:	02 d8                	add    %al,%bl
42c9e0:	88 1f                	mov    %bl,(%edi)
42c9e2:	c6 47 01 00          	movb   $0x0,0x1(%edi)
42c9e6:	33 c0                	xor    %eax,%eax
42c9e8:	5b                   	pop    %ebx
42c9e9:	5f                   	pop    %edi
42c9ea:	5e                   	pop    %esi
42c9eb:	c9                   	leave
42c9ec:	c3                   	ret
42c9ed:	8b ff                	mov    %edi,%edi
42c9ef:	55                   	push   %ebp
42c9f0:	8b ec                	mov    %esp,%ebp
42c9f2:	83 ec 0c             	sub    $0xc,%esp
42c9f5:	8d 45 f4             	lea    -0xc(%ebp),%eax
42c9f8:	56                   	push   %esi
42c9f9:	8b 75 1c             	mov    0x1c(%ebp),%esi
42c9fc:	57                   	push   %edi
42c9fd:	ff 75 18             	push   0x18(%ebp)
42ca00:	ff 75 14             	push   0x14(%ebp)
42ca03:	8d 7e 01             	lea    0x1(%esi),%edi
42ca06:	50                   	push   %eax
42ca07:	8b 45 08             	mov    0x8(%ebp),%eax
42ca0a:	6a 01                	push   $0x1
42ca0c:	57                   	push   %edi
42ca0d:	ff 70 04             	push   0x4(%eax)
42ca10:	ff 30                	push   (%eax)
42ca12:	e8 2e a7 00 00       	call   0x437145
42ca17:	83 c9 ff             	or     $0xffffffff,%ecx
42ca1a:	83 c4 1c             	add    $0x1c,%esp
42ca1d:	8b d0                	mov    %eax,%edx
42ca1f:	39 4d 10             	cmp    %ecx,0x10(%ebp)
42ca22:	74 17                	je     0x42ca3b
42ca24:	8b 4d 10             	mov    0x10(%ebp),%ecx
42ca27:	33 c0                	xor    %eax,%eax
42ca29:	83 7d f4 2d          	cmpl   $0x2d,-0xc(%ebp)
42ca2d:	0f 94 c0             	sete   %al
42ca30:	2b c8                	sub    %eax,%ecx
42ca32:	33 c0                	xor    %eax,%eax
42ca34:	85 f6                	test   %esi,%esi
42ca36:	0f 9f c0             	setg   %al
42ca39:	2b c8                	sub    %eax,%ecx
42ca3b:	ff 75 2c             	push   0x2c(%ebp)
42ca3e:	8d 45 f4             	lea    -0xc(%ebp),%eax
42ca41:	ff 75 28             	push   0x28(%ebp)
42ca44:	52                   	push   %edx
42ca45:	50                   	push   %eax
42ca46:	57                   	push   %edi
42ca47:	8b 7d 0c             	mov    0xc(%ebp),%edi
42ca4a:	51                   	push   %ecx
42ca4b:	33 c9                	xor    %ecx,%ecx
42ca4d:	83 7d f4 2d          	cmpl   $0x2d,-0xc(%ebp)
42ca51:	0f 94 c1             	sete   %cl
42ca54:	33 c0                	xor    %eax,%eax
42ca56:	85 f6                	test   %esi,%esi
42ca58:	0f 9f c0             	setg   %al
42ca5b:	03 cf                	add    %edi,%ecx
42ca5d:	03 c1                	add    %ecx,%eax
42ca5f:	50                   	push   %eax
42ca60:	e8 e6 a5 00 00       	call   0x43704b
42ca65:	83 c4 1c             	add    $0x1c,%esp
42ca68:	85 c0                	test   %eax,%eax
42ca6a:	74 05                	je     0x42ca71
42ca6c:	c6 07 00             	movb   $0x0,(%edi)
42ca6f:	eb 1c                	jmp    0x42ca8d
42ca71:	ff 75 2c             	push   0x2c(%ebp)
42ca74:	8d 45 f4             	lea    -0xc(%ebp),%eax
42ca77:	6a 00                	push   $0x0
42ca79:	50                   	push   %eax
42ca7a:	ff 75 24             	push   0x24(%ebp)
42ca7d:	ff 75 20             	push   0x20(%ebp)
42ca80:	56                   	push   %esi
42ca81:	ff 75 10             	push   0x10(%ebp)
42ca84:	57                   	push   %edi
42ca85:	e8 07 00 00 00       	call   0x42ca91
42ca8a:	83 c4 20             	add    $0x20,%esp
42ca8d:	5f                   	pop    %edi
42ca8e:	5e                   	pop    %esi
42ca8f:	c9                   	leave
42ca90:	c3                   	ret
42ca91:	8b ff                	mov    %edi,%edi
42ca93:	55                   	push   %ebp
42ca94:	8b ec                	mov    %esp,%ebp
42ca96:	56                   	push   %esi
42ca97:	57                   	push   %edi
42ca98:	8b 7d 10             	mov    0x10(%ebp),%edi
42ca9b:	33 d2                	xor    %edx,%edx
42ca9d:	8b c7                	mov    %edi,%eax
42ca9f:	85 ff                	test   %edi,%edi
42caa1:	7f 02                	jg     0x42caa5
42caa3:	8b c2                	mov    %edx,%eax
42caa5:	83 c0 09             	add    $0x9,%eax
42caa8:	39 45 0c             	cmp    %eax,0xc(%ebp)
42caab:	77 21                	ja     0x42cace
42caad:	8b 4d 24             	mov    0x24(%ebp),%ecx
42cab0:	6a 22                	push   $0x22
42cab2:	5e                   	pop    %esi
42cab3:	51                   	push   %ecx
42cab4:	52                   	push   %edx
42cab5:	52                   	push   %edx
42cab6:	52                   	push   %edx
42cab7:	52                   	push   %edx
42cab8:	52                   	push   %edx
42cab9:	c6 41 1c 01          	movb   $0x1,0x1c(%ecx)
42cabd:	89 71 18             	mov    %esi,0x18(%ecx)
42cac0:	e8 2d 3f ff ff       	call   0x4209f2
42cac5:	83 c4 18             	add    $0x18,%esp
42cac8:	8b c6                	mov    %esi,%eax
42caca:	5f                   	pop    %edi
42cacb:	5e                   	pop    %esi
42cacc:	5d                   	pop    %ebp
42cacd:	c3                   	ret
42cace:	53                   	push   %ebx
42cacf:	8b 5d 08             	mov    0x8(%ebp),%ebx
42cad2:	38 55 20             	cmp    %dl,0x20(%ebp)
42cad5:	74 22                	je     0x42caf9
42cad7:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
42cada:	33 c0                	xor    %eax,%eax
42cadc:	85 ff                	test   %edi,%edi
42cade:	0f 9f c0             	setg   %al
42cae1:	50                   	push   %eax
42cae2:	33 c0                	xor    %eax,%eax
42cae4:	83 39 2d             	cmpl   $0x2d,(%ecx)
42cae7:	0f 94 c0             	sete   %al
42caea:	03 c3                	add    %ebx,%eax
42caec:	50                   	push   %eax
42caed:	ff 75 0c             	push   0xc(%ebp)
42caf0:	53                   	push   %ebx
42caf1:	e8 d6 03 00 00       	call   0x42cecc
42caf6:	83 c4 10             	add    $0x10,%esp
42caf9:	8b 45 1c             	mov    0x1c(%ebp),%eax
42cafc:	8b f3                	mov    %ebx,%esi
42cafe:	83 38 2d             	cmpl   $0x2d,(%eax)
42cb01:	75 06                	jne    0x42cb09
42cb03:	c6 03 2d             	movb   $0x2d,(%ebx)
42cb06:	8d 73 01             	lea    0x1(%ebx),%esi
42cb09:	85 ff                	test   %edi,%edi
42cb0b:	7e 28                	jle    0x42cb35
42cb0d:	8a 46 01             	mov    0x1(%esi),%al
42cb10:	88 06                	mov    %al,(%esi)
42cb12:	46                   	inc    %esi
42cb13:	8b 45 24             	mov    0x24(%ebp),%eax
42cb16:	80 78 14 00          	cmpb   $0x0,0x14(%eax)
42cb1a:	75 0a                	jne    0x42cb26
42cb1c:	8b c8                	mov    %eax,%ecx
42cb1e:	e8 7d 7a ff ff       	call   0x4245a0
42cb23:	8b 45 24             	mov    0x24(%ebp),%eax
42cb26:	8b 40 0c             	mov    0xc(%eax),%eax
42cb29:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
42cb2f:	8b 00                	mov    (%eax),%eax
42cb31:	8a 00                	mov    (%eax),%al
42cb33:	88 06                	mov    %al,(%esi)
42cb35:	0f b6 45 20          	movzbl 0x20(%ebp),%eax
42cb39:	83 f0 01             	xor    $0x1,%eax
42cb3c:	03 c7                	add    %edi,%eax
42cb3e:	03 f0                	add    %eax,%esi
42cb40:	83 c8 ff             	or     $0xffffffff,%eax
42cb43:	39 45 0c             	cmp    %eax,0xc(%ebp)
42cb46:	74 07                	je     0x42cb4f
42cb48:	8b c3                	mov    %ebx,%eax
42cb4a:	2b c6                	sub    %esi,%eax
42cb4c:	03 45 0c             	add    0xc(%ebp),%eax
42cb4f:	68 10 2f 44 00       	push   $0x442f10
42cb54:	50                   	push   %eax
42cb55:	56                   	push   %esi
42cb56:	e8 ee 99 ff ff       	call   0x426549
42cb5b:	83 c4 0c             	add    $0xc,%esp
42cb5e:	85 c0                	test   %eax,%eax
42cb60:	75 75                	jne    0x42cbd7
42cb62:	8d 7e 02             	lea    0x2(%esi),%edi
42cb65:	38 45 14             	cmp    %al,0x14(%ebp)
42cb68:	74 03                	je     0x42cb6d
42cb6a:	c6 06 45             	movb   $0x45,(%esi)
42cb6d:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
42cb70:	8b 41 08             	mov    0x8(%ecx),%eax
42cb73:	80 38 30             	cmpb   $0x30,(%eax)
42cb76:	74 3d                	je     0x42cbb5
42cb78:	8b 49 04             	mov    0x4(%ecx),%ecx
42cb7b:	83 e9 01             	sub    $0x1,%ecx
42cb7e:	79 06                	jns    0x42cb86
42cb80:	f7 d9                	neg    %ecx
42cb82:	c6 46 01 2d          	movb   $0x2d,0x1(%esi)
42cb86:	6a 64                	push   $0x64
42cb88:	5b                   	pop    %ebx
42cb89:	3b cb                	cmp    %ebx,%ecx
42cb8b:	7c 0f                	jl     0x42cb9c
42cb8d:	8b c1                	mov    %ecx,%eax
42cb8f:	99                   	cltd
42cb90:	f7 fb                	idiv   %ebx
42cb92:	00 46 02             	add    %al,0x2(%esi)
42cb95:	8b c1                	mov    %ecx,%eax
42cb97:	99                   	cltd
42cb98:	f7 fb                	idiv   %ebx
42cb9a:	8b ca                	mov    %edx,%ecx
42cb9c:	6a 0a                	push   $0xa
42cb9e:	5b                   	pop    %ebx
42cb9f:	3b cb                	cmp    %ebx,%ecx
42cba1:	7c 0f                	jl     0x42cbb2
42cba3:	8b c1                	mov    %ecx,%eax
42cba5:	99                   	cltd
42cba6:	f7 fb                	idiv   %ebx
42cba8:	00 46 03             	add    %al,0x3(%esi)
42cbab:	8b c1                	mov    %ecx,%eax
42cbad:	99                   	cltd
42cbae:	f7 fb                	idiv   %ebx
42cbb0:	8b ca                	mov    %edx,%ecx
42cbb2:	00 4e 04             	add    %cl,0x4(%esi)
42cbb5:	83 7d 18 02          	cmpl   $0x2,0x18(%ebp)
42cbb9:	5b                   	pop    %ebx
42cbba:	75 14                	jne    0x42cbd0
42cbbc:	80 3f 30             	cmpb   $0x30,(%edi)
42cbbf:	75 0f                	jne    0x42cbd0
42cbc1:	6a 03                	push   $0x3
42cbc3:	8d 47 01             	lea    0x1(%edi),%eax
42cbc6:	50                   	push   %eax
42cbc7:	57                   	push   %edi
42cbc8:	e8 83 08 ff ff       	call   0x41d450
42cbcd:	83 c4 0c             	add    $0xc,%esp
42cbd0:	33 c0                	xor    %eax,%eax
42cbd2:	e9 f3 fe ff ff       	jmp    0x42caca
42cbd7:	33 c0                	xor    %eax,%eax
42cbd9:	50                   	push   %eax
42cbda:	50                   	push   %eax
42cbdb:	50                   	push   %eax
42cbdc:	50                   	push   %eax
42cbdd:	50                   	push   %eax
42cbde:	e8 b9 3e ff ff       	call   0x420a9c
42cbe3:	cc                   	int3
42cbe4:	8b ff                	mov    %edi,%edi
42cbe6:	55                   	push   %ebp
42cbe7:	8b ec                	mov    %esp,%ebp
42cbe9:	83 ec 0c             	sub    $0xc,%esp
42cbec:	56                   	push   %esi
42cbed:	57                   	push   %edi
42cbee:	ff 75 18             	push   0x18(%ebp)
42cbf1:	33 c0                	xor    %eax,%eax
42cbf3:	8d 7d f4             	lea    -0xc(%ebp),%edi
42cbf6:	ff 75 14             	push   0x14(%ebp)
42cbf9:	ab                   	stos   %eax,%es:(%edi)
42cbfa:	ab                   	stos   %eax,%es:(%edi)
42cbfb:	ab                   	stos   %eax,%es:(%edi)
42cbfc:	8d 45 f4             	lea    -0xc(%ebp),%eax
42cbff:	8b 7d 1c             	mov    0x1c(%ebp),%edi
42cc02:	50                   	push   %eax
42cc03:	8b 45 08             	mov    0x8(%ebp),%eax
42cc06:	6a 00                	push   $0x0
42cc08:	57                   	push   %edi
42cc09:	ff 70 04             	push   0x4(%eax)
42cc0c:	ff 30                	push   (%eax)
42cc0e:	e8 32 a5 00 00       	call   0x437145
42cc13:	8b 75 f8             	mov    -0x8(%ebp),%esi
42cc16:	83 c9 ff             	or     $0xffffffff,%ecx
42cc19:	83 c4 1c             	add    $0x1c,%esp
42cc1c:	03 f7                	add    %edi,%esi
42cc1e:	8b d0                	mov    %eax,%edx
42cc20:	39 4d 10             	cmp    %ecx,0x10(%ebp)
42cc23:	74 0e                	je     0x42cc33
42cc25:	8b 4d 10             	mov    0x10(%ebp),%ecx
42cc28:	33 c0                	xor    %eax,%eax
42cc2a:	83 7d f4 2d          	cmpl   $0x2d,-0xc(%ebp)
42cc2e:	0f 94 c0             	sete   %al
42cc31:	2b c8                	sub    %eax,%ecx
42cc33:	ff 75 24             	push   0x24(%ebp)
42cc36:	8d 45 f4             	lea    -0xc(%ebp),%eax
42cc39:	ff 75 20             	push   0x20(%ebp)
42cc3c:	52                   	push   %edx
42cc3d:	50                   	push   %eax
42cc3e:	33 c0                	xor    %eax,%eax
42cc40:	83 7d f4 2d          	cmpl   $0x2d,-0xc(%ebp)
42cc44:	56                   	push   %esi
42cc45:	8b 75 0c             	mov    0xc(%ebp),%esi
42cc48:	0f 94 c0             	sete   %al
42cc4b:	51                   	push   %ecx
42cc4c:	03 c6                	add    %esi,%eax
42cc4e:	50                   	push   %eax
42cc4f:	e8 f7 a3 00 00       	call   0x43704b
42cc54:	83 c4 1c             	add    $0x1c,%esp
42cc57:	85 c0                	test   %eax,%eax
42cc59:	74 05                	je     0x42cc60
42cc5b:	c6 06 00             	movb   $0x0,(%esi)
42cc5e:	eb 16                	jmp    0x42cc76
42cc60:	ff 75 24             	push   0x24(%ebp)
42cc63:	8d 45 f4             	lea    -0xc(%ebp),%eax
42cc66:	6a 00                	push   $0x0
42cc68:	50                   	push   %eax
42cc69:	57                   	push   %edi
42cc6a:	ff 75 10             	push   0x10(%ebp)
42cc6d:	56                   	push   %esi
42cc6e:	e8 07 00 00 00       	call   0x42cc7a
42cc73:	83 c4 18             	add    $0x18,%esp
42cc76:	5f                   	pop    %edi
42cc77:	5e                   	pop    %esi
42cc78:	c9                   	leave
42cc79:	c3                   	ret
42cc7a:	8b ff                	mov    %edi,%edi
42cc7c:	55                   	push   %ebp
42cc7d:	8b ec                	mov    %esp,%ebp
42cc7f:	51                   	push   %ecx
42cc80:	53                   	push   %ebx
42cc81:	8b 5d 14             	mov    0x14(%ebp),%ebx
42cc84:	33 d2                	xor    %edx,%edx
42cc86:	56                   	push   %esi