41bfd2:	5f                   	pop    %edi
41bfd3:	c9                   	leave
41bfd4:	c3                   	ret
41bfd5:	6a 14                	push   $0x14
41bfd7:	68 58 d6 42 00       	push   $0x42d658
41bfdc:	e8 ab 35 00 00       	call   0x41f58c
41bfe1:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41bfe5:	ff 4d 10             	decl   0x10(%ebp)
41bfe8:	78 3a                	js     0x41c024
41bfea:	8b 4d 08             	mov    0x8(%ebp),%ecx
41bfed:	2b 4d 0c             	sub    0xc(%ebp),%ecx
41bff0:	89 4d 08             	mov    %ecx,0x8(%ebp)
41bff3:	ff 55 14             	call   *0x14(%ebp)
41bff6:	eb ed                	jmp    0x41bfe5
41bff8:	8b 45 ec             	mov    -0x14(%ebp),%eax
41bffb:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41bffe:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41c001:	8b 00                	mov    (%eax),%eax
41c003:	89 45 e0             	mov    %eax,-0x20(%ebp)
41c006:	8b 45 e0             	mov    -0x20(%ebp),%eax
41c009:	81 38 63 73 6d e0    	cmpl   $0xe06d7363,(%eax)
41c00f:	74 0b                	je     0x41c01c
41c011:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
41c018:	8b 45 dc             	mov    -0x24(%ebp),%eax
41c01b:	c3                   	ret
41c01c:	e8 59 27 00 00       	call   0x41e77a
41c021:	8b 65 e8             	mov    -0x18(%ebp),%esp
41c024:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41c02b:	e8 a1 35 00 00       	call   0x41f5d1
41c030:	c2 10 00             	ret    $0x10
41c033:	6a 0c                	push   $0xc
41c035:	68 78 d6 42 00       	push   $0x42d678
41c03a:	e8 4d 35 00 00       	call   0x41f58c
41c03f:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
41c043:	8b 75 0c             	mov    0xc(%ebp),%esi
41c046:	8b c6                	mov    %esi,%eax
41c048:	0f af 45 10          	imul   0x10(%ebp),%eax
41c04c:	01 45 08             	add    %eax,0x8(%ebp)
41c04f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41c053:	ff 4d 10             	decl   0x10(%ebp)
41c056:	78 0b                	js     0x41c063
41c058:	29 75 08             	sub    %esi,0x8(%ebp)
41c05b:	8b 4d 08             	mov    0x8(%ebp),%ecx
41c05e:	ff 55 14             	call   *0x14(%ebp)
41c061:	eb f0                	jmp    0x41c053
41c063:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%ebp)
41c06a:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41c071:	e8 08 00 00 00       	call   0x41c07e
41c076:	e8 56 35 00 00       	call   0x41f5d1
41c07b:	c2 10 00             	ret    $0x10
41c07e:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
41c082:	75 11                	jne    0x41c095
41c084:	ff 75 14             	push   0x14(%ebp)
41c087:	ff 75 10             	push   0x10(%ebp)
41c08a:	ff 75 0c             	push   0xc(%ebp)
41c08d:	ff 75 08             	push   0x8(%ebp)
41c090:	e8 40 ff ff ff       	call   0x41bfd5
41c095:	c3                   	ret
41c096:	6a 10                	push   $0x10
41c098:	68 98 d6 42 00       	push   $0x42d698
41c09d:	e8 ea 34 00 00       	call   0x41f58c
41c0a2:	33 c0                	xor    %eax,%eax
41c0a4:	89 45 e0             	mov    %eax,-0x20(%ebp)
41c0a7:	89 45 fc             	mov    %eax,-0x4(%ebp)
41c0aa:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41c0ad:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41c0b0:	3b 45 10             	cmp    0x10(%ebp),%eax
41c0b3:	7d 13                	jge    0x41c0c8
41c0b5:	8b 75 08             	mov    0x8(%ebp),%esi
41c0b8:	8b ce                	mov    %esi,%ecx
41c0ba:	ff 55 14             	call   *0x14(%ebp)
41c0bd:	03 75 0c             	add    0xc(%ebp),%esi
41c0c0:	89 75 08             	mov    %esi,0x8(%ebp)
41c0c3:	ff 45 e4             	incl   -0x1c(%ebp)
41c0c6:	eb e5                	jmp    0x41c0ad
41c0c8:	c7 45 e0 01 00 00 00 	movl   $0x1,-0x20(%ebp)
41c0cf:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41c0d6:	e8 08 00 00 00       	call   0x41c0e3
41c0db:	e8 f1 34 00 00       	call   0x41f5d1
41c0e0:	c2 14 00             	ret    $0x14
41c0e3:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
41c0e7:	75 11                	jne    0x41c0fa
41c0e9:	ff 75 18             	push   0x18(%ebp)
41c0ec:	ff 75 e4             	push   -0x1c(%ebp)
41c0ef:	ff 75 0c             	push   0xc(%ebp)
41c0f2:	ff 75 08             	push   0x8(%ebp)
41c0f5:	e8 db fe ff ff       	call   0x41bfd5
41c0fa:	c3                   	ret
41c0fb:	8b ff                	mov    %edi,%edi
41c0fd:	55                   	push   %ebp
41c0fe:	8b ec                	mov    %esp,%ebp
41c100:	51                   	push   %ecx
41c101:	51                   	push   %ecx
41c102:	57                   	push   %edi
41c103:	8d 45 f8             	lea    -0x8(%ebp),%eax
41c106:	50                   	push   %eax
41c107:	ff 15 38 a2 42 00    	call   *0x42a238
41c10d:	6a 01                	push   $0x1
41c10f:	6a 00                	push   $0x0
41c111:	6a 00                	push   $0x0
41c113:	ff 75 fc             	push   -0x4(%ebp)
41c116:	e8 95 e4 ff ff       	call   0x41a5b0
41c11b:	2b 05 d8 ec 44 00    	sub    0x44ecd8,%eax
41c121:	8b 4d f8             	mov    -0x8(%ebp),%ecx
41c124:	1b 15 dc ec 44 00    	sbb    0x44ecdc,%edx
41c12a:	33 ff                	xor    %edi,%edi
41c12c:	57                   	push   %edi
41c12d:	03 c1                	add    %ecx,%eax
41c12f:	68 10 27 00 00       	push   $0x2710
41c134:	13 d7                	adc    %edi,%edx
41c136:	52                   	push   %edx
41c137:	50                   	push   %eax
41c138:	e8 33 0f 00 00       	call   0x41d070
41c13d:	5f                   	pop    %edi
41c13e:	c9                   	leave
41c13f:	c3                   	ret
41c140:	8b ff                	mov    %edi,%edi
41c142:	55                   	push   %ebp
41c143:	8b ec                	mov    %esp,%ebp
41c145:	51                   	push   %ecx
41c146:	51                   	push   %ecx
41c147:	56                   	push   %esi
41c148:	8d 45 f8             	lea    -0x8(%ebp),%eax
41c14b:	50                   	push   %eax
41c14c:	ff 15 38 a2 42 00    	call   *0x42a238
41c152:	6a 01                	push   $0x1
41c154:	6a 00                	push   $0x0
41c156:	6a 00                	push   $0x0
41c158:	ff 75 fc             	push   -0x4(%ebp)
41c15b:	e8 50 e4 ff ff       	call   0x41a5b0
41c160:	8b 4d f8             	mov    -0x8(%ebp),%ecx
41c163:	33 f6                	xor    %esi,%esi
41c165:	03 c1                	add    %ecx,%eax
41c167:	13 d6                	adc    %esi,%edx
41c169:	a3 d8 ec 44 00       	mov    %eax,0x44ecd8
41c16e:	89 15 dc ec 44 00    	mov    %edx,0x44ecdc
41c174:	33 c0                	xor    %eax,%eax
41c176:	5e                   	pop    %esi
41c177:	c9                   	leave
41c178:	c3                   	ret
41c179:	cc                   	int3
41c17a:	cc                   	int3
41c17b:	cc                   	int3
41c17c:	cc                   	int3
41c17d:	cc                   	int3
41c17e:	cc                   	int3
41c17f:	cc                   	int3
41c180:	80 f9 40             	cmp    $0x40,%cl
41c183:	73 15                	jae    0x41c19a
41c185:	80 f9 20             	cmp    $0x20,%cl
41c188:	73 06                	jae    0x41c190
41c18a:	0f ad d0             	shrd   %cl,%edx,%eax
41c18d:	d3 ea                	shr    %cl,%edx
41c18f:	c3                   	ret
41c190:	8b c2                	mov    %edx,%eax
41c192:	33 d2                	xor    %edx,%edx
41c194:	80 e1 1f             	and    $0x1f,%cl
41c197:	d3 e8                	shr    %cl,%eax
41c199:	c3                   	ret
41c19a:	33 c0                	xor    %eax,%eax
41c19c:	33 d2                	xor    %edx,%edx
41c19e:	c3                   	ret
41c19f:	8b ff                	mov    %edi,%edi
41c1a1:	55                   	push   %ebp
41c1a2:	8b ec                	mov    %esp,%ebp
41c1a4:	51                   	push   %ecx
41c1a5:	53                   	push   %ebx
41c1a6:	56                   	push   %esi
41c1a7:	57                   	push   %edi
41c1a8:	ff 35 cc 08 45 00    	push   0x4508cc
41c1ae:	e8 a5 20 00 00       	call   0x41e258
41c1b3:	ff 35 c8 08 45 00    	push   0x4508c8
41c1b9:	8b f8                	mov    %eax,%edi
41c1bb:	89 7d fc             	mov    %edi,-0x4(%ebp)
41c1be:	e8 95 20 00 00       	call   0x41e258
41c1c3:	8b f0                	mov    %eax,%esi
41c1c5:	59                   	pop    %ecx
41c1c6:	59                   	pop    %ecx
41c1c7:	3b f7                	cmp    %edi,%esi
41c1c9:	0f 82 83 00 00 00    	jb     0x41c252
41c1cf:	8b de                	mov    %esi,%ebx
41c1d1:	2b df                	sub    %edi,%ebx
41c1d3:	8d 43 04             	lea    0x4(%ebx),%eax
41c1d6:	83 f8 04             	cmp    $0x4,%eax
41c1d9:	72 77                	jb     0x41c252
41c1db:	57                   	push   %edi
41c1dc:	e8 c1 48 00 00       	call   0x420aa2
41c1e1:	8b f8                	mov    %eax,%edi
41c1e3:	8d 43 04             	lea    0x4(%ebx),%eax
41c1e6:	59                   	pop    %ecx
41c1e7:	3b f8                	cmp    %eax,%edi
41c1e9:	73 48                	jae    0x41c233
41c1eb:	b8 00 08 00 00       	mov    $0x800,%eax
41c1f0:	3b f8                	cmp    %eax,%edi
41c1f2:	73 02                	jae    0x41c1f6
41c1f4:	8b c7                	mov    %edi,%eax
41c1f6:	03 c7                	add    %edi,%eax
41c1f8:	3b c7                	cmp    %edi,%eax
41c1fa:	72 0f                	jb     0x41c20b
41c1fc:	50                   	push   %eax
41c1fd:	ff 75 fc             	push   -0x4(%ebp)
41c200:	e8 4f 48 00 00       	call   0x420a54
41c205:	59                   	pop    %ecx
41c206:	59                   	pop    %ecx
41c207:	85 c0                	test   %eax,%eax
41c209:	75 16                	jne    0x41c221
41c20b:	8d 47 10             	lea    0x10(%edi),%eax
41c20e:	3b c7                	cmp    %edi,%eax
41c210:	72 40                	jb     0x41c252
41c212:	50                   	push   %eax
41c213:	ff 75 fc             	push   -0x4(%ebp)
41c216:	e8 39 48 00 00       	call   0x420a54
41c21b:	59                   	pop    %ecx
41c21c:	59                   	pop    %ecx
41c21d:	85 c0                	test   %eax,%eax
41c21f:	74 31                	je     0x41c252
41c221:	c1 fb 02             	sar    $0x2,%ebx
41c224:	50                   	push   %eax
41c225:	8d 34 98             	lea    (%eax,%ebx,4),%esi
41c228:	e8 b0 1f 00 00       	call   0x41e1dd
41c22d:	59                   	pop    %ecx
41c22e:	a3 cc 08 45 00       	mov    %eax,0x4508cc
41c233:	ff 75 08             	push   0x8(%ebp)
41c236:	e8 a2 1f 00 00       	call   0x41e1dd
41c23b:	89 06                	mov    %eax,(%esi)
41c23d:	83 c6 04             	add    $0x4,%esi
41c240:	56                   	push   %esi
41c241:	e8 97 1f 00 00       	call   0x41e1dd
41c246:	59                   	pop    %ecx
41c247:	a3 c8 08 45 00       	mov    %eax,0x4508c8
41c24c:	8b 45 08             	mov    0x8(%ebp),%eax
41c24f:	59                   	pop    %ecx
41c250:	eb 02                	jmp    0x41c254
41c252:	33 c0                	xor    %eax,%eax
41c254:	5f                   	pop    %edi
41c255:	5e                   	pop    %esi
41c256:	5b                   	pop    %ebx
41c257:	c9                   	leave
41c258:	c3                   	ret
41c259:	8b ff                	mov    %edi,%edi
41c25b:	56                   	push   %esi
41c25c:	6a 04                	push   $0x4
41c25e:	6a 20                	push   $0x20
41c260:	e8 a3 47 00 00       	call   0x420a08
41c265:	8b f0                	mov    %eax,%esi
41c267:	56                   	push   %esi
41c268:	e8 70 1f 00 00       	call   0x41e1dd
41c26d:	83 c4 0c             	add    $0xc,%esp
41c270:	a3 cc 08 45 00       	mov    %eax,0x4508cc
41c275:	a3 c8 08 45 00       	mov    %eax,0x4508c8
41c27a:	85 f6                	test   %esi,%esi
41c27c:	75 05                	jne    0x41c283
41c27e:	6a 18                	push   $0x18
41c280:	58                   	pop    %eax
41c281:	5e                   	pop    %esi
41c282:	c3                   	ret
41c283:	83 26 00             	andl   $0x0,(%esi)
41c286:	33 c0                	xor    %eax,%eax
41c288:	5e                   	pop    %esi
41c289:	c3                   	ret
41c28a:	6a 0c                	push   $0xc
41c28c:	68 b8 d6 42 00       	push   $0x42d6b8
41c291:	e8 f6 32 00 00       	call   0x41f58c
41c296:	e8 46 49 00 00       	call   0x420be1
41c29b:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41c29f:	ff 75 08             	push   0x8(%ebp)
41c2a2:	e8 f8 fe ff ff       	call   0x41c19f
41c2a7:	59                   	pop    %ecx
41c2a8:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41c2ab:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41c2b2:	e8 09 00 00 00       	call   0x41c2c0
41c2b7:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41c2ba:	e8 12 33 00 00       	call   0x41f5d1
41c2bf:	c3                   	ret
41c2c0:	e8 25 49 00 00       	call   0x420bea
41c2c5:	c3                   	ret
41c2c6:	8b ff                	mov    %edi,%edi
41c2c8:	55                   	push   %ebp
41c2c9:	8b ec                	mov    %esp,%ebp
41c2cb:	ff 75 08             	push   0x8(%ebp)
41c2ce:	e8 b7 ff ff ff       	call   0x41c28a
41c2d3:	f7 d8                	neg    %eax
41c2d5:	1b c0                	sbb    %eax,%eax
41c2d7:	f7 d8                	neg    %eax
41c2d9:	59                   	pop    %ecx
41c2da:	48                   	dec    %eax
41c2db:	5d                   	pop    %ebp
41c2dc:	c3                   	ret
41c2dd:	8b ff                	mov    %edi,%edi
41c2df:	55                   	push   %ebp
41c2e0:	8b ec                	mov    %esp,%ebp
41c2e2:	83 ec 20             	sub    $0x20,%esp
41c2e5:	8b 45 08             	mov    0x8(%ebp),%eax
41c2e8:	56                   	push   %esi
41c2e9:	57                   	push   %edi
41c2ea:	6a 08                	push   $0x8
41c2ec:	59                   	pop    %ecx
41c2ed:	be 94 b1 42 00       	mov    $0x42b194,%esi
41c2f2:	8d 7d e0             	lea    -0x20(%ebp),%edi
41c2f5:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
41c2f7:	89 45 f8             	mov    %eax,-0x8(%ebp)
41c2fa:	8b 45 0c             	mov    0xc(%ebp),%eax
41c2fd:	5f                   	pop    %edi
41c2fe:	89 45 fc             	mov    %eax,-0x4(%ebp)
41c301:	5e                   	pop    %esi
41c302:	85 c0                	test   %eax,%eax
41c304:	74 0c                	je     0x41c312
41c306:	f6 00 08             	testb  $0x8,(%eax)
41c309:	74 07                	je     0x41c312
41c30b:	c7 45 f4 00 40 99 01 	movl   $0x1994000,-0xc(%ebp)
41c312:	8d 45 f4             	lea    -0xc(%ebp),%eax
41c315:	50                   	push   %eax
41c316:	ff 75 f0             	push   -0x10(%ebp)
41c319:	ff 75 e4             	push   -0x1c(%ebp)
41c31c:	ff 75 e0             	push   -0x20(%ebp)
41c31f:	ff 15 34 a2 42 00    	call   *0x42a234
41c325:	c9                   	leave
41c326:	c2 08 00             	ret    $0x8
41c329:	8b ff                	mov    %edi,%edi
41c32b:	51                   	push   %ecx
41c32c:	c7 01 b8 b1 42 00    	movl   $0x42b1b8,(%ecx)
41c332:	e8 46 4b 00 00       	call   0x420e7d
41c337:	59                   	pop    %ecx
41c338:	c3                   	ret
41c339:	8b ff                	mov    %edi,%edi
41c33b:	55                   	push   %ebp
41c33c:	8b ec                	mov    %esp,%ebp
41c33e:	56                   	push   %esi
41c33f:	8b f1                	mov    %ecx,%esi
41c341:	e8 e3 ff ff ff       	call   0x41c329
41c346:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
41c34a:	74 07                	je     0x41c353
41c34c:	56                   	push   %esi
41c34d:	e8 85 db ff ff       	call   0x419ed7
41c352:	59                   	pop    %ecx
41c353:	8b c6                	mov    %esi,%eax
41c355:	5e                   	pop    %esi
41c356:	5d                   	pop    %ebp
41c357:	c2 04 00             	ret    $0x4
41c35a:	8b ff                	mov    %edi,%edi
41c35c:	55                   	push   %ebp
41c35d:	8b ec                	mov    %esp,%ebp
41c35f:	8b 45 08             	mov    0x8(%ebp),%eax
41c362:	83 c1 09             	add    $0x9,%ecx
41c365:	51                   	push   %ecx
41c366:	83 c0 09             	add    $0x9,%eax
41c369:	50                   	push   %eax
41c36a:	e8 81 4b 00 00       	call   0x420ef0
41c36f:	f7 d8                	neg    %eax
41c371:	59                   	pop    %ecx