42da3d:	ff 15 88 75 4a 00    	call   *0x4a7588
42da43:	6a 02                	push   $0x2
42da45:	6a 02                	push   $0x2
42da47:	ff 75 d8             	push   -0x28(%ebp)
42da4a:	ff 15 78 71 4a 00    	call   *0x4a7178
42da50:	50                   	push   %eax
42da51:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
42da54:	ff 15 8c 75 4a 00    	call   *0x4a758c
42da5a:	85 c0                	test   %eax,%eax
42da5c:	74 0e                	je     0x42da6c
42da5e:	ff 75 e8             	push   -0x18(%ebp)
42da61:	ff 75 d8             	push   -0x28(%ebp)
42da64:	ff 15 90 75 4a 00    	call   *0x4a7590
42da6a:	8b f8                	mov    %eax,%edi
42da6c:	8b 45 f0             	mov    -0x10(%ebp),%eax
42da6f:	85 c0                	test   %eax,%eax
42da71:	74 17                	je     0x42da8a
42da73:	6a 00                	push   $0x0
42da75:	50                   	push   %eax
42da76:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
42da79:	ff 15 98 75 4a 00    	call   *0x4a7598
42da7f:	ff 75 d8             	push   -0x28(%ebp)
42da82:	8b d8                	mov    %eax,%ebx
42da84:	ff 15 70 71 4a 00    	call   *0x4a7170
42da8a:	6a 00                	push   $0x0
42da8c:	56                   	push   %esi
42da8d:	ff 75 ec             	push   -0x14(%ebp)
42da90:	6a 04                	push   $0x4
42da92:	56                   	push   %esi
42da93:	ff 75 d8             	push   -0x28(%ebp)
42da96:	ff 15 e4 70 4a 00    	call   *0x4a70e4
42da9c:	8b f0                	mov    %eax,%esi
42da9e:	85 db                	test   %ebx,%ebx
42daa0:	74 0c                	je     0x42daae
42daa2:	6a 00                	push   $0x0
42daa4:	53                   	push   %ebx
42daa5:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
42daa8:	ff 15 98 75 4a 00    	call   *0x4a7598
42daae:	85 ff                	test   %edi,%edi
42dab0:	74 0c                	je     0x42dabe
42dab2:	ff 77 04             	push   0x4(%edi)
42dab5:	ff 75 d8             	push   -0x28(%ebp)
42dab8:	ff 15 90 75 4a 00    	call   *0x4a7590
42dabe:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
42dac2:	74 09                	je     0x42dacd
42dac4:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
42dac7:	ff 15 28 75 4a 00    	call   *0x4a7528
42dacd:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
42dad0:	ff 15 94 75 4a 00    	call   *0x4a7594
42dad6:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
42dad9:	ff 15 84 75 4a 00    	call   *0x4a7584
42dadf:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
42dae2:	c7 45 e4 1c 14 40 00 	movl   $0x40141c,-0x1c(%ebp)
42dae9:	e8 e5 22 ff ff       	call   0x41fdd3
42daee:	8b c6                	mov    %esi,%eax
42daf0:	eb 02                	jmp    0x42daf4
42daf2:	33 c0                	xor    %eax,%eax
42daf4:	e8 a8 29 06 00       	call   0x4904a1
42daf9:	c2 04 00             	ret    $0x4
42dafc:	8b ff                	mov    %edi,%edi
42dafe:	55                   	push   %ebp
42daff:	8b ec                	mov    %esp,%ebp
42db01:	51                   	push   %ecx
42db02:	53                   	push   %ebx
42db03:	56                   	push   %esi
42db04:	57                   	push   %edi
42db05:	8b fa                	mov    %edx,%edi
42db07:	8b d9                	mov    %ecx,%ebx
42db09:	89 5d fc             	mov    %ebx,-0x4(%ebp)
42db0c:	83 3f 28             	cmpl   $0x28,(%edi)
42db0f:	72 70                	jb     0x42db81
42db11:	0f b7 77 0e          	movzwl 0xe(%edi),%esi
42db15:	0f b7 47 0c          	movzwl 0xc(%edi),%eax
42db19:	0f af f0             	imul   %eax,%esi
42db1c:	83 fe 04             	cmp    $0x4,%esi
42db1f:	75 60                	jne    0x42db81
42db21:	6a 0e                	push   $0xe
42db23:	53                   	push   %ebx
42db24:	ff 15 64 71 4a 00    	call   *0x4a7164
42db2a:	6a 0c                	push   $0xc
42db2c:	53                   	push   %ebx
42db2d:	8b f0                	mov    %eax,%esi
42db2f:	ff 15 64 71 4a 00    	call   *0x4a7164
42db35:	0f af f0             	imul   %eax,%esi
42db38:	83 fe 04             	cmp    $0x4,%esi
42db3b:	77 44                	ja     0x42db81
42db3d:	33 d2                	xor    %edx,%edx
42db3f:	8d 5f 28             	lea    0x28(%edi),%ebx
42db42:	42                   	inc    %edx
42db43:	8b cf                	mov    %edi,%ecx
42db45:	e8 eb fd ff ff       	call   0x42d935
42db4a:	0f b7 f8             	movzwl %ax,%edi
42db4d:	85 ff                	test   %edi,%edi
42db4f:	74 2b                	je     0x42db7c
42db51:	0f b6 33             	movzbl (%ebx),%esi
42db54:	0f b6 43 01          	movzbl 0x1(%ebx),%eax
42db58:	c1 e6 08             	shl    $0x8,%esi
42db5b:	0b f0                	or     %eax,%esi
42db5d:	0f b6 43 02          	movzbl 0x2(%ebx),%eax
42db61:	c1 e6 08             	shl    $0x8,%esi
42db64:	0b f0                	or     %eax,%esi
42db66:	56                   	push   %esi
42db67:	ff 75 fc             	push   -0x4(%ebp)
42db6a:	ff 15 e0 70 4a 00    	call   *0x4a70e0
42db70:	3b c6                	cmp    %esi,%eax
42db72:	75 0d                	jne    0x42db81
42db74:	4f                   	dec    %edi
42db75:	83 c3 04             	add    $0x4,%ebx
42db78:	85 ff                	test   %edi,%edi
42db7a:	7f d5                	jg     0x42db51
42db7c:	33 c0                	xor    %eax,%eax
42db7e:	40                   	inc    %eax
42db7f:	eb 02                	jmp    0x42db83
42db81:	33 c0                	xor    %eax,%eax
42db83:	5f                   	pop    %edi
42db84:	5e                   	pop    %esi
42db85:	5b                   	pop    %ebx
42db86:	c9                   	leave
42db87:	c3                   	ret
42db88:	8b ff                	mov    %edi,%edi
42db8a:	55                   	push   %ebp
42db8b:	8b ec                	mov    %esp,%ebp
42db8d:	83 ec 24             	sub    $0x24,%esp
42db90:	53                   	push   %ebx
42db91:	8b d9                	mov    %ecx,%ebx
42db93:	56                   	push   %esi
42db94:	57                   	push   %edi
42db95:	85 db                	test   %ebx,%ebx
42db97:	0f 84 4c 01 00 00    	je     0x42dce9
42db9d:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
42dba1:	0f 84 42 01 00 00    	je     0x42dce9
42dba7:	e8 f7 fd ff ff       	call   0x42d9a3
42dbac:	8b f0                	mov    %eax,%esi
42dbae:	8d 4d dc             	lea    -0x24(%ebp),%ecx
42dbb1:	33 ff                	xor    %edi,%edi
42dbb3:	89 75 f0             	mov    %esi,-0x10(%ebp)
42dbb6:	57                   	push   %edi
42dbb7:	ff 15 d8 76 4a 00    	call   *0x4a76d8
42dbbd:	8b 4d e0             	mov    -0x20(%ebp),%ecx
42dbc0:	8b d3                	mov    %ebx,%edx
42dbc2:	e8 35 ff ff ff       	call   0x42dafc
42dbc7:	85 c0                	test   %eax,%eax
42dbc9:	74 21                	je     0x42dbec
42dbcb:	57                   	push   %edi
42dbcc:	53                   	push   %ebx
42dbcd:	56                   	push   %esi
42dbce:	6a 04                	push   $0x4
42dbd0:	53                   	push   %ebx
42dbd1:	ff 75 e0             	push   -0x20(%ebp)
42dbd4:	ff 15 e4 70 4a 00    	call   *0x4a70e4
42dbda:	8d 4d dc             	lea    -0x24(%ebp),%ecx
42dbdd:	8b f0                	mov    %eax,%esi
42dbdf:	ff 15 dc 76 4a 00    	call   *0x4a76dc
42dbe5:	8b c6                	mov    %esi,%eax
42dbe7:	e9 ff 00 00 00       	jmp    0x42dceb
42dbec:	8d 4d dc             	lea    -0x24(%ebp),%ecx
42dbef:	ff 15 dc 76 4a 00    	call   *0x4a76dc
42dbf5:	83 3b 28             	cmpl   $0x28,(%ebx)
42dbf8:	8b 43 10             	mov    0x10(%ebx),%eax
42dbfb:	89 45 f4             	mov    %eax,-0xc(%ebp)
42dbfe:	72 03                	jb     0x42dc03
42dc00:	89 7b 10             	mov    %edi,0x10(%ebx)
42dc03:	6a 10                	push   $0x10
42dc05:	ff 15 08 c0 4a 00    	call   *0x4ac008
42dc0b:	8b f8                	mov    %eax,%edi
42dc0d:	85 ff                	test   %edi,%edi
42dc0f:	74 21                	je     0x42dc32
42dc11:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
42dc15:	8d 45 f8             	lea    -0x8(%ebp),%eax
42dc18:	50                   	push   %eax
42dc19:	56                   	push   %esi
42dc1a:	53                   	push   %ebx
42dc1b:	c7 07 b4 15 40 00    	movl   $0x4015b4,(%edi)
42dc21:	ff 15 20 c0 4a 00    	call   *0x4ac020
42dc27:	89 47 08             	mov    %eax,0x8(%edi)
42dc2a:	8b 45 f8             	mov    -0x8(%ebp),%eax
42dc2d:	89 47 04             	mov    %eax,0x4(%edi)
42dc30:	eb 02                	jmp    0x42dc34
42dc32:	33 ff                	xor    %edi,%edi
42dc34:	68 00 00 00 ff       	push   $0xff000000
42dc39:	8d 45 fc             	lea    -0x4(%ebp),%eax
42dc3c:	50                   	push   %eax
42dc3d:	ff 77 04             	push   0x4(%edi)
42dc40:	ff 15 24 c0 4a 00    	call   *0x4ac024
42dc46:	89 45 f8             	mov    %eax,-0x8(%ebp)
42dc49:	85 c0                	test   %eax,%eax
42dc4b:	74 05                	je     0x42dc52
42dc4d:	89 47 08             	mov    %eax,0x8(%edi)
42dc50:	eb 04                	jmp    0x42dc56
42dc52:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
42dc56:	8b 07                	mov    (%edi),%eax
42dc58:	6a 01                	push   $0x1
42dc5a:	8b 30                	mov    (%eax),%esi
42dc5c:	8b ce                	mov    %esi,%ecx
42dc5e:	ff 15 2c 81 4a 00    	call   *0x4a812c
42dc64:	8b cf                	mov    %edi,%ecx
42dc66:	ff d6                	call   *%esi
42dc68:	83 3b 28             	cmpl   $0x28,(%ebx)
42dc6b:	72 06                	jb     0x42dc73
42dc6d:	8b 45 f4             	mov    -0xc(%ebp),%eax
42dc70:	89 43 10             	mov    %eax,0x10(%ebx)
42dc73:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
42dc77:	75 70                	jne    0x42dce9
42dc79:	ff 75 fc             	push   -0x4(%ebp)
42dc7c:	ff 75 08             	push   0x8(%ebp)
42dc7f:	ff 15 68 71 4a 00    	call   *0x4a7168
42dc85:	89 45 f4             	mov    %eax,-0xc(%ebp)
42dc88:	85 c0                	test   %eax,%eax
42dc8a:	74 54                	je     0x42dce0
42dc8c:	8b cb                	mov    %ebx,%ecx
42dc8e:	e8 2e fd ff ff       	call   0x42d9c1
42dc93:	8b f8                	mov    %eax,%edi
42dc95:	e8 3a fd ff ff       	call   0x42d9d4
42dc9a:	68 62 00 ff 00       	push   $0xff0062
42dc9f:	8b f0                	mov    %eax,%esi
42dca1:	56                   	push   %esi
42dca2:	57                   	push   %edi
42dca3:	6a 00                	push   $0x0
42dca5:	6a 00                	push   $0x0
42dca7:	ff 75 08             	push   0x8(%ebp)
42dcaa:	ff 15 3c 71 4a 00    	call   *0x4a713c
42dcb0:	33 c9                	xor    %ecx,%ecx
42dcb2:	8b c6                	mov    %esi,%eax
42dcb4:	51                   	push   %ecx
42dcb5:	53                   	push   %ebx
42dcb6:	ff 75 f0             	push   -0x10(%ebp)
42dcb9:	99                   	cltd
42dcba:	33 c2                	xor    %edx,%eax
42dcbc:	2b c2                	sub    %edx,%eax
42dcbe:	50                   	push   %eax
42dcbf:	51                   	push   %ecx
42dcc0:	51                   	push   %ecx
42dcc1:	51                   	push   %ecx
42dcc2:	56                   	push   %esi
42dcc3:	57                   	push   %edi
42dcc4:	51                   	push   %ecx
42dcc5:	51                   	push   %ecx
42dcc6:	ff 75 08             	push   0x8(%ebp)
42dcc9:	ff 15 dc 70 4a 00    	call   *0x4a70dc
42dccf:	ff 75 f4             	push   -0xc(%ebp)
42dcd2:	ff 75 08             	push   0x8(%ebp)
42dcd5:	ff 15 68 71 4a 00    	call   *0x4a7168
42dcdb:	8b 45 fc             	mov    -0x4(%ebp),%eax
42dcde:	eb 0b                	jmp    0x42dceb
42dce0:	ff 75 fc             	push   -0x4(%ebp)
42dce3:	ff 15 60 71 4a 00    	call   *0x4a7160
42dce9:	33 c0                	xor    %eax,%eax
42dceb:	5f                   	pop    %edi
42dcec:	5e                   	pop    %esi
42dced:	5b                   	pop    %ebx
42dcee:	c9                   	leave
42dcef:	c2 04 00             	ret    $0x4
42dcf2:	8b ff                	mov    %edi,%edi
42dcf4:	55                   	push   %ebp
42dcf5:	8b ec                	mov    %esp,%ebp
42dcf7:	56                   	push   %esi
42dcf8:	0f b7 32             	movzwl (%edx),%esi
42dcfb:	b8 00 01 00 00       	mov    $0x100,%eax
42dd00:	66 3b f0             	cmp    %ax,%si
42dd03:	73 5a                	jae    0x42dd5f
42dd05:	53                   	push   %ebx
42dd06:	57                   	push   %edi
42dd07:	33 c0                	xor    %eax,%eax
42dd09:	33 ff                	xor    %edi,%edi
42dd0b:	66 3b c6             	cmp    %si,%ax
42dd0e:	73 26                	jae    0x42dd36
42dd10:	0f b7 df             	movzwl %di,%ebx
42dd13:	0f b6 04 99          	movzbl (%ecx,%ebx,4),%eax
42dd17:	3b 45 08             	cmp    0x8(%ebp),%eax
42dd1a:	75 14                	jne    0x42dd30
42dd1c:	0f b6 44 99 01       	movzbl 0x1(%ecx,%ebx,4),%eax
42dd21:	3b 45 0c             	cmp    0xc(%ebp),%eax
42dd24:	75 0a                	jne    0x42dd30
42dd26:	0f b6 44 99 02       	movzbl 0x2(%ecx,%ebx,4),%eax
42dd2b:	3b 45 10             	cmp    0x10(%ebp),%eax
42dd2e:	74 2d                	je     0x42dd5d
42dd30:	47                   	inc    %edi
42dd31:	66 3b fe             	cmp    %si,%di
42dd34:	72 da                	jb     0x42dd10
42dd36:	8b 5d 08             	mov    0x8(%ebp),%ebx
42dd39:	8b c6                	mov    %esi,%eax
42dd3b:	88 1c 81             	mov    %bl,(%ecx,%eax,4)
42dd3e:	0f b7 02             	movzwl (%edx),%eax
42dd41:	8b 5d 0c             	mov    0xc(%ebp),%ebx
42dd44:	88 5c 81 01          	mov    %bl,0x1(%ecx,%eax,4)
42dd48:	0f b7 02             	movzwl (%edx),%eax
42dd4b:	8b 5d 10             	mov    0x10(%ebp),%ebx
42dd4e:	88 5c 81 02          	mov    %bl,0x2(%ecx,%eax,4)
42dd52:	0f b7 02             	movzwl (%edx),%eax
42dd55:	c6 44 81 03 00       	movb   $0x0,0x3(%ecx,%eax,4)
42dd5a:	66 ff 02             	incw   (%edx)
42dd5d:	5f                   	pop    %edi
42dd5e:	5b                   	pop    %ebx
42dd5f:	5e                   	pop    %esi
42dd60:	5d                   	pop    %ebp
42dd61:	c2 0c 00             	ret    $0xc
42dd64:	6a 2c                	push   $0x2c
42dd66:	b8 ab 25 49 00       	mov    $0x4925ab,%eax
42dd6b:	e8 cc 27 06 00       	call   0x49053c
42dd70:	8b f9                	mov    %ecx,%edi
42dd72:	33 db                	xor    %ebx,%ebx
42dd74:	89 5d ec             	mov    %ebx,-0x14(%ebp)
42dd77:	85 ff                	test   %edi,%edi
42dd79:	74 4d                	je     0x42ddc8
42dd7b:	33 d2                	xor    %edx,%edx
42dd7d:	42                   	inc    %edx
42dd7e:	e8 b2 fb ff ff       	call   0x42d935
42dd83:	8b 0f                	mov    (%edi),%ecx
42dd85:	0f b7 c0             	movzwl %ax,%eax
42dd88:	89 45 e4             	mov    %eax,-0x1c(%ebp)
42dd8b:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
42dd8e:	85 c0                	test   %eax,%eax
42dd90:	75 13                	jne    0x42dda5
42dd92:	39 1d 34 58 4a 00    	cmp    %ebx,0x4a5834
42dd98:	74 2e                	je     0x42ddc8
42dd9a:	b8 00 01 00 00       	mov    $0x100,%eax
42dd9f:	89 55 ec             	mov    %edx,-0x14(%ebp)
42dda2:	89 45 e4             	mov    %eax,-0x1c(%ebp)
42dda5:	8d 04 85 04 00 00 00 	lea    0x4(,%eax,4),%eax
42ddac:	50                   	push   %eax
42ddad:	e8 5c fc 05 00       	call   0x48da0e
42ddb2:	8b f0                	mov    %eax,%esi
42ddb4:	89 75 e8             	mov    %esi,-0x18(%ebp)
42ddb7:	59                   	pop    %ecx
42ddb8:	85 f6                	test   %esi,%esi
42ddba:	75 14                	jne    0x42ddd0
42ddbc:	6a 01                	push   $0x1
42ddbe:	b9 e0 55 4a 00       	mov    $0x4a55e0,%ecx
42ddc3:	e8 b1 fe 01 00       	call   0x44dc79
42ddc8:	33 c0                	xor    %eax,%eax
42ddca:	e8 d2 26 06 00       	call   0x4904a1
42ddcf:	c3                   	ret
42ddd0:	39 5d ec             	cmp    %ebx,-0x14(%ebp)
42ddd3:	0f 84 ac 00 00 00    	je     0x42de85
42ddd9:	33 c0                	xor    %eax,%eax
42dddb:	8d 4e 04             	lea    0x4(%esi),%ecx
42ddde:	66 89 45 ec          	mov    %ax,-0x14(%ebp)
42dde2:	8b f3                	mov    %ebx,%esi
42dde4:	0f b6 86 60 ff 40 00 	movzbl 0x40ff60(%esi),%eax
42ddeb:	8d 55 ec             	lea    -0x14(%ebp),%edx
42ddee:	50                   	push   %eax
42ddef:	50                   	push   %eax
42ddf0:	50                   	push   %eax
42ddf1:	e8 fc fe ff ff       	call   0x42dcf2
42ddf6:	46                   	inc    %esi
42ddf7:	83 fe 10             	cmp    $0x10,%esi
42ddfa:	72 e8                	jb     0x42dde4
42ddfc:	8b f3                	mov    %ebx,%esi
42ddfe:	89 5d dc             	mov    %ebx,-0x24(%ebp)
42de01:	0f b6 86 60 ff 40 00 	movzbl 0x40ff60(%esi),%eax