42daaa:	50                   	push   %eax
42daab:	e8 c7 e9 ff ff       	call   0x42c477
42dab0:	33 c0                	xor    %eax,%eax
42dab2:	eb 21                	jmp    0x42dad5
42dab4:	57                   	push   %edi
42dab5:	ff 75 fc             	push   -0x4(%ebp)
42dab8:	8d 45 f8             	lea    -0x8(%ebp),%eax
42dabb:	56                   	push   %esi
42dabc:	50                   	push   %eax
42dabd:	e8 79 b0 00 00       	call   0x438b3b
42dac2:	83 c4 10             	add    $0x10,%esp
42dac5:	85 c0                	test   %eax,%eax
42dac7:	74 03                	je     0x42dacc
42dac9:	56                   	push   %esi
42daca:	eb df                	jmp    0x42daab
42dacc:	6a 00                	push   $0x0
42dace:	e8 a4 e9 ff ff       	call   0x42c477
42dad3:	8b c6                	mov    %esi,%eax
42dad5:	59                   	pop    %ecx
42dad6:	5e                   	pop    %esi
42dad7:	5f                   	pop    %edi
42dad8:	c9                   	leave
42dad9:	c3                   	ret
42dada:	8b ff                	mov    %edi,%edi
42dadc:	55                   	push   %ebp
42dadd:	8b ec                	mov    %esp,%ebp
42dadf:	ff 75 14             	push   0x14(%ebp)
42dae2:	ff 75 08             	push   0x8(%ebp)
42dae5:	6a 40                	push   $0x40
42dae7:	ff 75 0c             	push   0xc(%ebp)
42daea:	e8 b9 a2 ff ff       	call   0x427da8
42daef:	83 c4 10             	add    $0x10,%esp
42daf2:	85 c0                	test   %eax,%eax
42daf4:	75 1e                	jne    0x42db14
42daf6:	50                   	push   %eax
42daf7:	50                   	push   %eax
42daf8:	6a 3f                	push   $0x3f
42dafa:	ff 75 10             	push   0x10(%ebp)
42dafd:	ff 75 14             	push   0x14(%ebp)
42db00:	ff 75 0c             	push   0xc(%ebp)
42db03:	50                   	push   %eax
42db04:	e8 be fb ff ff       	call   0x42d6c7
42db09:	50                   	push   %eax
42db0a:	e8 6b 55 00 00       	call   0x43307a
42db0f:	83 c4 20             	add    $0x20,%esp
42db12:	5d                   	pop    %ebp
42db13:	c3                   	ret
42db14:	33 c0                	xor    %eax,%eax
42db16:	50                   	push   %eax
42db17:	50                   	push   %eax
42db18:	50                   	push   %eax
42db19:	50                   	push   %eax
42db1a:	50                   	push   %eax
42db1b:	e8 7c 2f ff ff       	call   0x420a9c
42db20:	cc                   	int3
42db21:	8b ff                	mov    %edi,%edi
42db23:	55                   	push   %ebp
42db24:	8b ec                	mov    %esp,%ebp
42db26:	83 ec 1c             	sub    $0x1c,%esp
42db29:	53                   	push   %ebx
42db2a:	56                   	push   %esi
42db2b:	57                   	push   %edi
42db2c:	e8 06 fb ff ff       	call   0x42d637
42db31:	8b d8                	mov    %eax,%ebx
42db33:	89 5d f0             	mov    %ebx,-0x10(%ebp)
42db36:	e8 02 fb ff ff       	call   0x42d63d
42db3b:	89 45 ec             	mov    %eax,-0x14(%ebp)
42db3e:	33 f6                	xor    %esi,%esi
42db40:	8d 45 fc             	lea    -0x4(%ebp),%eax
42db43:	89 75 e8             	mov    %esi,-0x18(%ebp)
42db46:	50                   	push   %eax
42db47:	89 75 fc             	mov    %esi,-0x4(%ebp)
42db4a:	89 75 f8             	mov    %esi,-0x8(%ebp)
42db4d:	e8 49 fb ff ff       	call   0x42d69b
42db52:	59                   	pop    %ecx
42db53:	85 c0                	test   %eax,%eax
42db55:	0f 85 4d 02 00 00    	jne    0x42dda8
42db5b:	8d 45 f8             	lea    -0x8(%ebp),%eax
42db5e:	50                   	push   %eax
42db5f:	e8 df fa ff ff       	call   0x42d643
42db64:	59                   	pop    %ecx
42db65:	85 c0                	test   %eax,%eax
42db67:	0f 85 3b 02 00 00    	jne    0x42dda8
42db6d:	a1 50 5f 45 00       	mov    0x455f50,%eax
42db72:	8b 7d 08             	mov    0x8(%ebp),%edi
42db75:	85 c0                	test   %eax,%eax
42db77:	74 31                	je     0x42dbaa
42db79:	8b cf                	mov    %edi,%ecx
42db7b:	66 8b 11             	mov    (%ecx),%dx
42db7e:	66 3b 10             	cmp    (%eax),%dx
42db81:	75 1e                	jne    0x42dba1
42db83:	66 85 d2             	test   %dx,%dx
42db86:	74 15                	je     0x42db9d
42db88:	66 8b 51 02          	mov    0x2(%ecx),%dx
42db8c:	66 3b 50 02          	cmp    0x2(%eax),%dx
42db90:	75 0f                	jne    0x42dba1
42db92:	83 c1 04             	add    $0x4,%ecx
42db95:	83 c0 04             	add    $0x4,%eax
42db98:	66 85 d2             	test   %dx,%dx
42db9b:	75 de                	jne    0x42db7b
42db9d:	8b c6                	mov    %esi,%eax
42db9f:	eb 05                	jmp    0x42dba6
42dba1:	1b c0                	sbb    %eax,%eax
42dba3:	83 c8 01             	or     $0x1,%eax
42dba6:	85 c0                	test   %eax,%eax
42dba8:	74 31                	je     0x42dbdb
42dbaa:	8b cf                	mov    %edi,%ecx
42dbac:	8d 51 02             	lea    0x2(%ecx),%edx
42dbaf:	66 8b 01             	mov    (%ecx),%ax
42dbb2:	83 c1 02             	add    $0x2,%ecx
42dbb5:	66 3b c6             	cmp    %si,%ax
42dbb8:	75 f5                	jne    0x42dbaf
42dbba:	2b ca                	sub    %edx,%ecx
42dbbc:	d1 f9                	sar    $1,%ecx
42dbbe:	8d 04 4d 02 00 00 00 	lea    0x2(,%ecx,2),%eax
42dbc5:	50                   	push   %eax
42dbc6:	e8 e6 e8 ff ff       	call   0x42c4b1
42dbcb:	8b f0                	mov    %eax,%esi
42dbcd:	59                   	pop    %ecx
42dbce:	85 f6                	test   %esi,%esi
42dbd0:	75 0e                	jne    0x42dbe0
42dbd2:	33 c0                	xor    %eax,%eax
42dbd4:	50                   	push   %eax
42dbd5:	e8 9d e8 ff ff       	call   0x42c477
42dbda:	59                   	pop    %ecx
42dbdb:	5f                   	pop    %edi
42dbdc:	5e                   	pop    %esi
42dbdd:	5b                   	pop    %ebx
42dbde:	c9                   	leave
42dbdf:	c3                   	ret
42dbe0:	ff 35 50 5f 45 00    	push   0x455f50
42dbe6:	e8 8c e8 ff ff       	call   0x42c477
42dbeb:	59                   	pop    %ecx
42dbec:	8b cf                	mov    %edi,%ecx
42dbee:	89 35 50 5f 45 00    	mov    %esi,0x455f50
42dbf4:	8d 51 02             	lea    0x2(%ecx),%edx
42dbf7:	66 8b 01             	mov    (%ecx),%ax
42dbfa:	83 c1 02             	add    $0x2,%ecx
42dbfd:	66 3b 45 e8          	cmp    -0x18(%ebp),%ax
42dc01:	75 f4                	jne    0x42dbf7
42dc03:	2b ca                	sub    %edx,%ecx
42dc05:	d1 f9                	sar    $1,%ecx
42dc07:	57                   	push   %edi
42dc08:	8d 41 01             	lea    0x1(%ecx),%eax
42dc0b:	50                   	push   %eax
42dc0c:	56                   	push   %esi
42dc0d:	e8 64 88 ff ff       	call   0x426476
42dc12:	83 c4 0c             	add    $0xc,%esp
42dc15:	85 c0                	test   %eax,%eax
42dc17:	0f 85 89 01 00 00    	jne    0x42dda6
42dc1d:	8b 75 ec             	mov    -0x14(%ebp),%esi
42dc20:	68 80 00 00 00       	push   $0x80
42dc25:	50                   	push   %eax
42dc26:	ff 36                	push   (%esi)
42dc28:	e8 b3 fd fe ff       	call   0x41d9e0
42dc2d:	68 80 00 00 00       	push   $0x80
42dc32:	33 c0                	xor    %eax,%eax
42dc34:	50                   	push   %eax
42dc35:	ff 76 04             	push   0x4(%esi)
42dc38:	e8 a3 fd fe ff       	call   0x41d9e0
42dc3d:	6a 40                	push   $0x40
42dc3f:	33 c0                	xor    %eax,%eax
42dc41:	50                   	push   %eax
42dc42:	ff 33                	push   (%ebx)
42dc44:	e8 97 fd fe ff       	call   0x41d9e0
42dc49:	6a 40                	push   $0x40
42dc4b:	33 c0                	xor    %eax,%eax
42dc4d:	50                   	push   %eax
42dc4e:	ff 73 04             	push   0x4(%ebx)
42dc51:	e8 8a fd fe ff       	call   0x41d9e0
42dc56:	6a 03                	push   $0x3
42dc58:	ff 33                	push   (%ebx)
42dc5a:	ff 36                	push   (%esi)
42dc5c:	57                   	push   %edi
42dc5d:	e8 78 fe ff ff       	call   0x42dada
42dc62:	83 c4 40             	add    $0x40,%esp
42dc65:	33 c9                	xor    %ecx,%ecx
42dc67:	6a 03                	push   $0x3
42dc69:	58                   	pop    %eax
42dc6a:	66 39 0f             	cmp    %cx,(%edi)
42dc6d:	74 03                	je     0x42dc72
42dc6f:	83 c7 02             	add    $0x2,%edi
42dc72:	83 e8 01             	sub    $0x1,%eax
42dc75:	75 f3                	jne    0x42dc6a
42dc77:	0f b7 07             	movzwl (%edi),%eax
42dc7a:	8b c8                	mov    %eax,%ecx
42dc7c:	6a 2d                	push   $0x2d
42dc7e:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
42dc81:	59                   	pop    %ecx
42dc82:	66 3b c1             	cmp    %cx,%ax
42dc85:	75 03                	jne    0x42dc8a
42dc87:	83 c7 02             	add    $0x2,%edi
42dc8a:	6a 0a                	push   $0xa
42dc8c:	8d 45 f4             	lea    -0xc(%ebp),%eax
42dc8f:	50                   	push   %eax
42dc90:	57                   	push   %edi
42dc91:	e8 fe 9f ff ff       	call   0x427c94
42dc96:	83 c4 0c             	add    $0xc,%esp
42dc99:	69 f0 10 0e 00 00    	imul   $0xe10,%eax,%esi
42dc9f:	89 75 fc             	mov    %esi,-0x4(%ebp)
42dca2:	0f b7 0f             	movzwl (%edi),%ecx
42dca5:	83 f9 2b             	cmp    $0x2b,%ecx
42dca8:	74 09                	je     0x42dcb3
42dcaa:	8d 41 d0             	lea    -0x30(%ecx),%eax
42dcad:	66 83 f8 09          	cmp    $0x9,%ax
42dcb1:	77 05                	ja     0x42dcb8
42dcb3:	83 c7 02             	add    $0x2,%edi
42dcb6:	eb ea                	jmp    0x42dca2
42dcb8:	6a 3a                	push   $0x3a
42dcba:	58                   	pop    %eax
42dcbb:	66 3b c8             	cmp    %ax,%cx
42dcbe:	0f 85 94 00 00 00    	jne    0x42dd58
42dcc4:	6a 0a                	push   $0xa
42dcc6:	8d 45 f4             	lea    -0xc(%ebp),%eax
42dcc9:	83 c7 02             	add    $0x2,%edi
42dccc:	50                   	push   %eax
42dccd:	57                   	push   %edi
42dcce:	e8 c1 9f ff ff       	call   0x427c94
42dcd3:	8b 75 fc             	mov    -0x4(%ebp),%esi
42dcd6:	83 c4 0c             	add    $0xc,%esp
42dcd9:	6b c0 3c             	imul   $0x3c,%eax,%eax
42dcdc:	6a 30                	push   $0x30
42dcde:	59                   	pop    %ecx
42dcdf:	03 f0                	add    %eax,%esi
42dce1:	89 4d e8             	mov    %ecx,-0x18(%ebp)
42dce4:	0f b7 07             	movzwl (%edi),%eax
42dce7:	89 75 fc             	mov    %esi,-0x4(%ebp)
42dcea:	8b d0                	mov    %eax,%edx
42dcec:	66 3b c1             	cmp    %cx,%ax
42dcef:	72 20                	jb     0x42dd11
42dcf1:	6a 39                	push   $0x39
42dcf3:	8b c8                	mov    %eax,%ecx
42dcf5:	5b                   	pop    %ebx
42dcf6:	0f b7 d1             	movzwl %cx,%edx
42dcf9:	66 3b cb             	cmp    %bx,%cx
42dcfc:	77 10                	ja     0x42dd0e
42dcfe:	83 c7 02             	add    $0x2,%edi
42dd01:	0f b7 07             	movzwl (%edi),%eax
42dd04:	8b c8                	mov    %eax,%ecx
42dd06:	8b d0                	mov    %eax,%edx
42dd08:	66 3b 45 e8          	cmp    -0x18(%ebp),%ax
42dd0c:	73 e8                	jae    0x42dcf6
42dd0e:	8b 5d f0             	mov    -0x10(%ebp),%ebx
42dd11:	6a 3a                	push   $0x3a
42dd13:	58                   	pop    %eax
42dd14:	66 3b d0             	cmp    %ax,%dx
42dd17:	75 3f                	jne    0x42dd58
42dd19:	6a 0a                	push   $0xa
42dd1b:	8d 45 f4             	lea    -0xc(%ebp),%eax
42dd1e:	83 c7 02             	add    $0x2,%edi
42dd21:	50                   	push   %eax
42dd22:	57                   	push   %edi
42dd23:	e8 6c 9f ff ff       	call   0x427c94
42dd28:	8b 75 fc             	mov    -0x4(%ebp),%esi
42dd2b:	83 c4 0c             	add    $0xc,%esp
42dd2e:	03 f0                	add    %eax,%esi
42dd30:	0f b7 07             	movzwl (%edi),%eax
42dd33:	89 75 fc             	mov    %esi,-0x4(%ebp)
42dd36:	6a 30                	push   $0x30
42dd38:	5a                   	pop    %edx
42dd39:	66 3b c2             	cmp    %dx,%ax
42dd3c:	72 1a                	jb     0x42dd58
42dd3e:	6a 39                	push   $0x39
42dd40:	8b c8                	mov    %eax,%ecx
42dd42:	5b                   	pop    %ebx
42dd43:	66 3b cb             	cmp    %bx,%cx
42dd46:	77 0d                	ja     0x42dd55
42dd48:	83 c7 02             	add    $0x2,%edi
42dd4b:	0f b7 07             	movzwl (%edi),%eax
42dd4e:	8b c8                	mov    %eax,%ecx
42dd50:	66 3b c2             	cmp    %dx,%ax
42dd53:	73 ee                	jae    0x42dd43
42dd55:	8b 5d f0             	mov    -0x10(%ebp),%ebx
42dd58:	6a 2d                	push   $0x2d
42dd5a:	58                   	pop    %eax
42dd5b:	66 39 45 e4          	cmp    %ax,-0x1c(%ebp)
42dd5f:	75 05                	jne    0x42dd66
42dd61:	f7 de                	neg    %esi
42dd63:	89 75 fc             	mov    %esi,-0x4(%ebp)
42dd66:	0f b7 0f             	movzwl (%edi),%ecx
42dd69:	33 c0                	xor    %eax,%eax
42dd6b:	66 85 c9             	test   %cx,%cx
42dd6e:	0f 95 c0             	setne  %al
42dd71:	89 45 f8             	mov    %eax,-0x8(%ebp)
42dd74:	66 85 c9             	test   %cx,%cx
42dd77:	74 17                	je     0x42dd90
42dd79:	8b 45 ec             	mov    -0x14(%ebp),%eax
42dd7c:	6a 03                	push   $0x3
42dd7e:	ff 73 04             	push   0x4(%ebx)
42dd81:	ff 70 04             	push   0x4(%eax)
42dd84:	57                   	push   %edi
42dd85:	e8 50 fd ff ff       	call   0x42dada
42dd8a:	8b 75 fc             	mov    -0x4(%ebp),%esi
42dd8d:	83 c4 10             	add    $0x10,%esp
42dd90:	e8 9c f8 ff ff       	call   0x42d631
42dd95:	89 30                	mov    %esi,(%eax)
42dd97:	8b 75 f8             	mov    -0x8(%ebp),%esi
42dd9a:	e8 86 f8 ff ff       	call   0x42d625
42dd9f:	89 30                	mov    %esi,(%eax)
42dda1:	e9 2c fe ff ff       	jmp    0x42dbd2
42dda6:	33 f6                	xor    %esi,%esi
42dda8:	56                   	push   %esi
42dda9:	56                   	push   %esi
42ddaa:	56                   	push   %esi
42ddab:	56                   	push   %esi
42ddac:	56                   	push   %esi
42ddad:	e8 ea 2c ff ff       	call   0x420a9c
42ddb2:	cc                   	int3
42ddb3:	8b ff                	mov    %edi,%edi
42ddb5:	55                   	push   %ebp
42ddb6:	8b ec                	mov    %esp,%ebp
42ddb8:	83 ec 0c             	sub    $0xc,%esp
42ddbb:	53                   	push   %ebx
42ddbc:	56                   	push   %esi
42ddbd:	57                   	push   %edi
42ddbe:	e8 74 f8 ff ff       	call   0x42d637
42ddc3:	8b f8                	mov    %eax,%edi
42ddc5:	e8 73 f8 ff ff       	call   0x42d63d
42ddca:	8b d8                	mov    %eax,%ebx
42ddcc:	33 f6                	xor    %esi,%esi
42ddce:	8d 45 fc             	lea    -0x4(%ebp),%eax
42ddd1:	89 75 fc             	mov    %esi,-0x4(%ebp)
42ddd4:	50                   	push   %eax
42ddd5:	89 75 f8             	mov    %esi,-0x8(%ebp)
42ddd8:	89 75 f4             	mov    %esi,-0xc(%ebp)
42dddb:	e8 bb f8 ff ff       	call   0x42d69b
42dde0:	59                   	pop    %ecx
42dde1:	85 c0                	test   %eax,%eax
42dde3:	0f 85 19 01 00 00    	jne    0x42df02
42dde9:	8d 45 f8             	lea    -0x8(%ebp),%eax
42ddec:	50                   	push   %eax
42dded:	e8 51 f8 ff ff       	call   0x42d643
42ddf2:	59                   	pop    %ecx
42ddf3:	85 c0                	test   %eax,%eax
42ddf5:	0f 85 07 01 00 00    	jne    0x42df02
42ddfb:	8d 45 f4             	lea    -0xc(%ebp),%eax
42ddfe:	50                   	push   %eax
42ddff:	e8 6b f8 ff ff       	call   0x42d66f
42de04:	59                   	pop    %ecx
42de05:	85 c0                	test   %eax,%eax
42de07:	0f 85 f5 00 00 00    	jne    0x42df02
42de0d:	ff 35 50 5f 45 00    	push   0x455f50
42de13:	e8 5f e6 ff ff       	call   0x42c477
42de18:	89 35 50 5f 45 00    	mov    %esi,0x455f50
42de1e:	c7 04 24 60 5f 45 00 	movl   $0x455f60,(%esp)
42de25:	ff 15 80 f1 43 00    	call   *0x43f180
42de2b:	83 f8 ff             	cmp    $0xffffffff,%eax
42de2e:	0f 84 ab 00 00 00    	je     0x42dedf
42de34:	6b 15 60 5f 45 00 3c 	imul   $0x3c,0x455f60,%edx
42de3b:	33 c9                	xor    %ecx,%ecx