41de9d:	89 45 ec             	mov    %eax,-0x14(%ebp)
41dea0:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
41dea4:	75 05                	jne    0x41deab
41dea6:	e8 d1 fe ff ff       	call   0x41dd7c
41deab:	33 c0                	xor    %eax,%eax
41dead:	55                   	push   %ebp
41deae:	68 f1 de 41 00       	push   $0x41def1
41deb3:	64 ff 30             	push   %fs:(%eax)
41deb6:	64 89 20             	mov    %esp,%fs:(%eax)
41deb9:	8b 45 f8             	mov    -0x8(%ebp),%eax
41debc:	50                   	push   %eax
41debd:	8b 45 f4             	mov    -0xc(%ebp),%eax
41dec0:	50                   	push   %eax
41dec1:	8b 45 ec             	mov    -0x14(%ebp),%eax
41dec4:	50                   	push   %eax
41dec5:	e8 56 83 fe ff       	call   0x406220
41deca:	89 45 f0             	mov    %eax,-0x10(%ebp)
41decd:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
41ded1:	75 05                	jne    0x41ded8
41ded3:	e8 a4 fe ff ff       	call   0x41dd7c
41ded8:	33 c0                	xor    %eax,%eax
41deda:	5a                   	pop    %edx
41dedb:	59                   	pop    %ecx
41dedc:	59                   	pop    %ecx
41dedd:	64 89 10             	mov    %edx,%fs:(%eax)
41dee0:	68 f8 de 41 00       	push   $0x41def8
41dee5:	8b 45 ec             	mov    -0x14(%ebp),%eax
41dee8:	50                   	push   %eax
41dee9:	6a 00                	push   $0x0
41deeb:	e8 f8 88 fe ff       	call   0x4067e8
41def0:	c3                   	ret
41def1:	e9 ca 5a fe ff       	jmp    0x4039c0
41def6:	eb ed                	jmp    0x41dee5
41def8:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
41defc:	74 64                	je     0x41df62
41defe:	8b 45 fc             	mov    -0x4(%ebp),%eax
41df01:	50                   	push   %eax
41df02:	8b 45 e8             	mov    -0x18(%ebp),%eax
41df05:	50                   	push   %eax
41df06:	e8 8d 84 fe ff       	call   0x406398
41df0b:	8b d8                	mov    %eax,%ebx
41df0d:	8b 45 f0             	mov    -0x10(%ebp),%eax
41df10:	50                   	push   %eax
41df11:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41df14:	50                   	push   %eax
41df15:	e8 7e 84 fe ff       	call   0x406398
41df1a:	8b f0                	mov    %eax,%esi
41df1c:	68 20 00 cc 00       	push   $0xcc0020
41df21:	8b 45 d4             	mov    -0x2c(%ebp),%eax
41df24:	50                   	push   %eax
41df25:	8b 45 d0             	mov    -0x30(%ebp),%eax
41df28:	50                   	push   %eax
41df29:	6a 00                	push   $0x0
41df2b:	6a 00                	push   $0x0
41df2d:	8b 45 e8             	mov    -0x18(%ebp),%eax
41df30:	50                   	push   %eax
41df31:	8b 45 f8             	mov    -0x8(%ebp),%eax
41df34:	50                   	push   %eax
41df35:	8b 45 f4             	mov    -0xc(%ebp),%eax
41df38:	50                   	push   %eax
41df39:	6a 00                	push   $0x0
41df3b:	6a 00                	push   $0x0
41df3d:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41df40:	50                   	push   %eax
41df41:	e8 c2 84 fe ff       	call   0x406408
41df46:	85 db                	test   %ebx,%ebx
41df48:	74 0a                	je     0x41df54
41df4a:	53                   	push   %ebx
41df4b:	8b 45 e8             	mov    -0x18(%ebp),%eax
41df4e:	50                   	push   %eax
41df4f:	e8 44 84 fe ff       	call   0x406398
41df54:	85 f6                	test   %esi,%esi
41df56:	74 0a                	je     0x41df62
41df58:	56                   	push   %esi
41df59:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41df5c:	50                   	push   %eax
41df5d:	e8 36 84 fe ff       	call   0x406398
41df62:	33 c0                	xor    %eax,%eax
41df64:	5a                   	pop    %edx
41df65:	59                   	pop    %ecx
41df66:	59                   	pop    %ecx
41df67:	64 89 10             	mov    %edx,%fs:(%eax)
41df6a:	68 89 df 41 00       	push   $0x41df89
41df6f:	8b 45 e8             	mov    -0x18(%ebp),%eax
41df72:	50                   	push   %eax
41df73:	e8 f0 82 fe ff       	call   0x406268
41df78:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41df7b:	50                   	push   %eax
41df7c:	e8 e7 82 fe ff       	call   0x406268
41df81:	c3                   	ret
41df82:	e9 39 5a fe ff       	jmp    0x4039c0
41df87:	eb e6                	jmp    0x41df6f
41df89:	8b 45 f0             	mov    -0x10(%ebp),%eax
41df8c:	5f                   	pop    %edi
41df8d:	5e                   	pop    %esi
41df8e:	5b                   	pop    %ebx
41df8f:	8b e5                	mov    %ebp,%esp
41df91:	5d                   	pop    %ebp
41df92:	c3                   	ret
41df93:	90                   	nop
41df94:	8b d0                	mov    %eax,%edx
41df96:	66 ff ca             	dec    %dx
41df99:	74 0c                	je     0x41dfa7
41df9b:	66 83 ea 03          	sub    $0x3,%dx
41df9f:	74 06                	je     0x41dfa7
41dfa1:	66 83 ea 04          	sub    $0x4,%dx
41dfa5:	75 0a                	jne    0x41dfb1
41dfa7:	8b c8                	mov    %eax,%ecx
41dfa9:	b8 01 00 00 00       	mov    $0x1,%eax
41dfae:	d3 e0                	shl    %cl,%eax
41dfb0:	c3                   	ret
41dfb1:	33 c0                	xor    %eax,%eax
41dfb3:	c3                   	ret
41dfb4:	49                   	dec    %ecx
41dfb5:	f7 ea                	imul   %edx
41dfb7:	03 c1                	add    %ecx,%eax
41dfb9:	f7 d1                	not    %ecx
41dfbb:	23 c1                	and    %ecx,%eax
41dfbd:	85 c0                	test   %eax,%eax
41dfbf:	79 03                	jns    0x41dfc4
41dfc1:	83 c0 07             	add    $0x7,%eax
41dfc4:	c1 f8 03             	sar    $0x3,%eax
41dfc7:	c3                   	ret
41dfc8:	55                   	push   %ebp
41dfc9:	8b ec                	mov    %esp,%ebp
41dfcb:	83 c4 dc             	add    $0xffffffdc,%esp
41dfce:	53                   	push   %ebx
41dfcf:	56                   	push   %esi
41dfd0:	57                   	push   %edi
41dfd1:	89 4d f8             	mov    %ecx,-0x8(%ebp)
41dfd4:	89 55 fc             	mov    %edx,-0x4(%ebp)
41dfd7:	8b f8                	mov    %eax,%edi
41dfd9:	8b 75 14             	mov    0x14(%ebp),%esi
41dfdc:	8b 5d 18             	mov    0x18(%ebp),%ebx
41dfdf:	c6 45 f7 01          	movb   $0x1,-0x9(%ebp)
41dfe3:	a1 8c 80 46 00       	mov    0x46808c,%eax
41dfe8:	83 38 02             	cmpl   $0x2,(%eax)
41dfeb:	0f 85 b1 00 00 00    	jne    0x41e0a2
41dff1:	3b 5d 2c             	cmp    0x2c(%ebp),%ebx
41dff4:	0f 85 a8 00 00 00    	jne    0x41e0a2
41dffa:	3b 75 28             	cmp    0x28(%ebp),%esi
41dffd:	0f 85 9f 00 00 00    	jne    0x41e0a2
41e003:	6a 01                	push   $0x1
41e005:	6a 01                	push   $0x1
41e007:	8b 45 24             	mov    0x24(%ebp),%eax
41e00a:	50                   	push   %eax
41e00b:	e8 10 82 fe ff       	call   0x406220
41e010:	e8 0f fe ff ff       	call   0x41de24
41e015:	89 45 ec             	mov    %eax,-0x14(%ebp)
41e018:	8b 45 ec             	mov    -0x14(%ebp),%eax
41e01b:	50                   	push   %eax
41e01c:	8b 45 10             	mov    0x10(%ebp),%eax
41e01f:	50                   	push   %eax
41e020:	e8 73 83 fe ff       	call   0x406398
41e025:	89 45 ec             	mov    %eax,-0x14(%ebp)
41e028:	33 c0                	xor    %eax,%eax
41e02a:	55                   	push   %ebp
41e02b:	68 9b e0 41 00       	push   $0x41e09b
41e030:	64 ff 30             	push   %fs:(%eax)
41e033:	64 89 20             	mov    %esp,%fs:(%eax)
41e036:	ba 20 00 cc 00       	mov    $0xcc0020,%edx
41e03b:	b8 29 00 aa 00       	mov    $0xaa0029,%eax
41e040:	e8 33 89 fe ff       	call   0x406978
41e045:	50                   	push   %eax
41e046:	8b 45 08             	mov    0x8(%ebp),%eax
41e049:	50                   	push   %eax
41e04a:	8b 45 0c             	mov    0xc(%ebp),%eax
41e04d:	50                   	push   %eax
41e04e:	8b 45 ec             	mov    -0x14(%ebp),%eax
41e051:	50                   	push   %eax
41e052:	8b 45 1c             	mov    0x1c(%ebp),%eax
41e055:	50                   	push   %eax
41e056:	8b 45 20             	mov    0x20(%ebp),%eax
41e059:	50                   	push   %eax
41e05a:	8b 45 24             	mov    0x24(%ebp),%eax
41e05d:	50                   	push   %eax
41e05e:	8b 45 28             	mov    0x28(%ebp),%eax
41e061:	50                   	push   %eax
41e062:	8b 45 2c             	mov    0x2c(%ebp),%eax
41e065:	50                   	push   %eax
41e066:	8b 45 f8             	mov    -0x8(%ebp),%eax
41e069:	50                   	push   %eax
41e06a:	8b 45 fc             	mov    -0x4(%ebp),%eax
41e06d:	50                   	push   %eax
41e06e:	57                   	push   %edi
41e06f:	e8 c4 82 fe ff       	call   0x406338
41e074:	33 c0                	xor    %eax,%eax
41e076:	5a                   	pop    %edx
41e077:	59                   	pop    %ecx
41e078:	59                   	pop    %ecx
41e079:	64 89 10             	mov    %edx,%fs:(%eax)
41e07c:	68 4f e2 41 00       	push   $0x41e24f
41e081:	8b 45 ec             	mov    -0x14(%ebp),%eax
41e084:	50                   	push   %eax
41e085:	8b 45 10             	mov    0x10(%ebp),%eax
41e088:	50                   	push   %eax
41e089:	e8 0a 83 fe ff       	call   0x406398
41e08e:	89 45 ec             	mov    %eax,-0x14(%ebp)
41e091:	8b 45 ec             	mov    -0x14(%ebp),%eax
41e094:	50                   	push   %eax
41e095:	e8 de 81 fe ff       	call   0x406278
41e09a:	c3                   	ret
41e09b:	e9 20 59 fe ff       	jmp    0x4039c0
41e0a0:	eb df                	jmp    0x41e081
41e0a2:	33 c0                	xor    %eax,%eax
41e0a4:	89 45 dc             	mov    %eax,-0x24(%ebp)
41e0a7:	6a 00                	push   $0x0
41e0a9:	e8 7a 81 fe ff       	call   0x406228
41e0ae:	e8 71 fd ff ff       	call   0x41de24
41e0b3:	89 45 f0             	mov    %eax,-0x10(%ebp)
41e0b6:	33 c0                	xor    %eax,%eax
41e0b8:	55                   	push   %ebp
41e0b9:	68 48 e2 41 00       	push   $0x41e248
41e0be:	64 ff 30             	push   %fs:(%eax)
41e0c1:	64 89 20             	mov    %esp,%fs:(%eax)
41e0c4:	56                   	push   %esi
41e0c5:	53                   	push   %ebx
41e0c6:	8b 45 24             	mov    0x24(%ebp),%eax
41e0c9:	50                   	push   %eax
41e0ca:	e8 51 81 fe ff       	call   0x406220
41e0cf:	e8 50 fd ff ff       	call   0x41de24
41e0d4:	89 45 ec             	mov    %eax,-0x14(%ebp)
41e0d7:	8b 45 ec             	mov    -0x14(%ebp),%eax
41e0da:	50                   	push   %eax
41e0db:	8b 45 f0             	mov    -0x10(%ebp),%eax
41e0de:	50                   	push   %eax
41e0df:	e8 b4 82 fe ff       	call   0x406398
41e0e4:	89 45 e8             	mov    %eax,-0x18(%ebp)
41e0e7:	6a 00                	push   $0x0
41e0e9:	a1 8c 98 46 00       	mov    0x46988c,%eax
41e0ee:	50                   	push   %eax
41e0ef:	8b 45 24             	mov    0x24(%ebp),%eax
41e0f2:	50                   	push   %eax
41e0f3:	e8 a8 82 fe ff       	call   0x4063a0
41e0f8:	89 45 dc             	mov    %eax,-0x24(%ebp)
41e0fb:	6a 00                	push   $0x0
41e0fd:	8b 45 dc             	mov    -0x24(%ebp),%eax
41e100:	50                   	push   %eax
41e101:	8b 45 24             	mov    0x24(%ebp),%eax
41e104:	50                   	push   %eax
41e105:	e8 96 82 fe ff       	call   0x4063a0
41e10a:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
41e10e:	74 14                	je     0x41e124
41e110:	6a ff                	push   $0xffffffff
41e112:	8b 45 dc             	mov    -0x24(%ebp),%eax
41e115:	50                   	push   %eax
41e116:	8b 45 f0             	mov    -0x10(%ebp),%eax
41e119:	50                   	push   %eax
41e11a:	e8 81 82 fe ff       	call   0x4063a0
41e11f:	89 45 dc             	mov    %eax,-0x24(%ebp)
41e122:	eb 14                	jmp    0x41e138
41e124:	6a ff                	push   $0xffffffff
41e126:	a1 8c 98 46 00       	mov    0x46988c,%eax
41e12b:	50                   	push   %eax
41e12c:	8b 45 f0             	mov    -0x10(%ebp),%eax
41e12f:	50                   	push   %eax
41e130:	e8 6b 82 fe ff       	call   0x4063a0
41e135:	89 45 dc             	mov    %eax,-0x24(%ebp)
41e138:	8b 45 f0             	mov    -0x10(%ebp),%eax
41e13b:	50                   	push   %eax
41e13c:	e8 1f 82 fe ff       	call   0x406360
41e141:	68 20 00 cc 00       	push   $0xcc0020
41e146:	56                   	push   %esi
41e147:	53                   	push   %ebx
41e148:	8b 45 08             	mov    0x8(%ebp),%eax
41e14b:	50                   	push   %eax
41e14c:	8b 45 0c             	mov    0xc(%ebp),%eax
41e14f:	50                   	push   %eax
41e150:	8b 45 10             	mov    0x10(%ebp),%eax
41e153:	50                   	push   %eax
41e154:	56                   	push   %esi
41e155:	53                   	push   %ebx
41e156:	6a 00                	push   $0x0
41e158:	6a 00                	push   $0x0
41e15a:	8b 45 f0             	mov    -0x10(%ebp),%eax
41e15d:	50                   	push   %eax
41e15e:	e8 a5 82 fe ff       	call   0x406408
41e163:	68 28 03 44 00       	push   $0x440328
41e168:	56                   	push   %esi
41e169:	53                   	push   %ebx
41e16a:	8b 45 1c             	mov    0x1c(%ebp),%eax
41e16d:	50                   	push   %eax
41e16e:	8b 45 20             	mov    0x20(%ebp),%eax
41e171:	50                   	push   %eax
41e172:	8b 45 24             	mov    0x24(%ebp),%eax
41e175:	50                   	push   %eax
41e176:	56                   	push   %esi
41e177:	53                   	push   %ebx
41e178:	6a 00                	push   $0x0
41e17a:	6a 00                	push   $0x0
41e17c:	8b 45 f0             	mov    -0x10(%ebp),%eax
41e17f:	50                   	push   %eax
41e180:	e8 83 82 fe ff       	call   0x406408
41e185:	6a 00                	push   $0x0
41e187:	57                   	push   %edi
41e188:	e8 5b 82 fe ff       	call   0x4063e8
41e18d:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41e190:	68 ff ff ff 00       	push   $0xffffff
41e195:	57                   	push   %edi
41e196:	e8 0d 82 fe ff       	call   0x4063a8
41e19b:	89 45 e0             	mov    %eax,-0x20(%ebp)
41e19e:	68 c6 00 88 00       	push   $0x8800c6
41e1a3:	56                   	push   %esi
41e1a4:	53                   	push   %ebx
41e1a5:	8b 45 08             	mov    0x8(%ebp),%eax
41e1a8:	50                   	push   %eax
41e1a9:	8b 45 0c             	mov    0xc(%ebp),%eax
41e1ac:	50                   	push   %eax
41e1ad:	8b 45 10             	mov    0x10(%ebp),%eax
41e1b0:	50                   	push   %eax
41e1b1:	8b 45 28             	mov    0x28(%ebp),%eax
41e1b4:	50                   	push   %eax
41e1b5:	8b 45 2c             	mov    0x2c(%ebp),%eax
41e1b8:	50                   	push   %eax
41e1b9:	8b 45 f8             	mov    -0x8(%ebp),%eax
41e1bc:	50                   	push   %eax
41e1bd:	8b 45 fc             	mov    -0x4(%ebp),%eax
41e1c0:	50                   	push   %eax
41e1c1:	57                   	push   %edi
41e1c2:	e8 41 82 fe ff       	call   0x406408
41e1c7:	68 46 00 66 00       	push   $0x660046
41e1cc:	56                   	push   %esi
41e1cd:	53                   	push   %ebx
41e1ce:	6a 00                	push   $0x0
41e1d0:	6a 00                	push   $0x0
41e1d2:	8b 45 f0             	mov    -0x10(%ebp),%eax
41e1d5:	50                   	push   %eax
41e1d6:	8b 45 28             	mov    0x28(%ebp),%eax
41e1d9:	50                   	push   %eax
41e1da:	8b 45 2c             	mov    0x2c(%ebp),%eax
41e1dd:	50                   	push   %eax
41e1de:	8b 45 f8             	mov    -0x8(%ebp),%eax
41e1e1:	50                   	push   %eax
41e1e2:	8b 45 fc             	mov    -0x4(%ebp),%eax
41e1e5:	50                   	push   %eax
41e1e6:	57                   	push   %edi
41e1e7:	e8 1c 82 fe ff       	call   0x406408
41e1ec:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41e1ef:	50                   	push   %eax
41e1f0:	57                   	push   %edi
41e1f1:	e8 f2 81 fe ff       	call   0x4063e8
41e1f6:	8b 45 e0             	mov    -0x20(%ebp),%eax
41e1f9:	50                   	push   %eax
41e1fa:	57                   	push   %edi
41e1fb:	e8 a8 81 fe ff       	call   0x4063a8
41e200:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
41e204:	74 0d                	je     0x41e213
41e206:	8b 45 e8             	mov    -0x18(%ebp),%eax
41e209:	50                   	push   %eax
41e20a:	8b 45 f0             	mov    -0x10(%ebp),%eax