41024f:	5e                   	pop    %esi
410250:	c3                   	ret
410251:	8b ff                	mov    %edi,%edi
410253:	55                   	push   %ebp
410254:	8b ec                	mov    %esp,%ebp
410256:	6b 45 08 18          	imul   $0x18,0x8(%ebp),%eax
41025a:	05 c0 6e 42 00       	add    $0x426ec0,%eax
41025f:	50                   	push   %eax
410260:	ff 15 3c c1 41 00    	call   *0x41c13c
410266:	5d                   	pop    %ebp
410267:	c3                   	ret
410268:	8b ff                	mov    %edi,%edi
41026a:	55                   	push   %ebp
41026b:	8b ec                	mov    %esp,%ebp
41026d:	51                   	push   %ecx
41026e:	64 a1 30 00 00 00    	mov    %fs:0x30,%eax
410274:	56                   	push   %esi
410275:	33 f6                	xor    %esi,%esi
410277:	89 75 fc             	mov    %esi,-0x4(%ebp)
41027a:	8b 40 10             	mov    0x10(%eax),%eax
41027d:	39 70 08             	cmp    %esi,0x8(%eax)
410280:	7c 0f                	jl     0x410291
410282:	8d 45 fc             	lea    -0x4(%ebp),%eax
410285:	50                   	push   %eax
410286:	e8 d4 10 00 00       	call   0x41135f
41028b:	83 7d fc 01          	cmpl   $0x1,-0x4(%ebp)
41028f:	74 03                	je     0x410294
410291:	33 f6                	xor    %esi,%esi
410293:	46                   	inc    %esi
410294:	8b c6                	mov    %esi,%eax
410296:	5e                   	pop    %esi
410297:	c9                   	leave
410298:	c3                   	ret
410299:	8b ff                	mov    %edi,%edi
41029b:	55                   	push   %ebp
41029c:	8b ec                	mov    %esp,%ebp
41029e:	51                   	push   %ecx
41029f:	51                   	push   %ecx
4102a0:	53                   	push   %ebx
4102a1:	56                   	push   %esi
4102a2:	6a 38                	push   $0x38
4102a4:	6a 40                	push   $0x40
4102a6:	e8 3b ea ff ff       	call   0x40ece6
4102ab:	8b f0                	mov    %eax,%esi
4102ad:	33 db                	xor    %ebx,%ebx
4102af:	89 75 f8             	mov    %esi,-0x8(%ebp)
4102b2:	59                   	pop    %ecx
4102b3:	59                   	pop    %ecx
4102b4:	85 f6                	test   %esi,%esi
4102b6:	75 04                	jne    0x4102bc
4102b8:	8b f3                	mov    %ebx,%esi
4102ba:	eb 4b                	jmp    0x410307
4102bc:	8d 86 00 0e 00 00    	lea    0xe00(%esi),%eax
4102c2:	3b f0                	cmp    %eax,%esi
4102c4:	74 41                	je     0x410307
4102c6:	57                   	push   %edi
4102c7:	8d 7e 20             	lea    0x20(%esi),%edi
4102ca:	8b f0                	mov    %eax,%esi
4102cc:	53                   	push   %ebx
4102cd:	68 a0 0f 00 00       	push   $0xfa0
4102d2:	8d 47 e0             	lea    -0x20(%edi),%eax
4102d5:	50                   	push   %eax
4102d6:	e8 e2 11 00 00       	call   0x4114bd
4102db:	83 4f f8 ff          	orl    $0xffffffff,-0x8(%edi)
4102df:	80 67 0d f8          	andb   $0xf8,0xd(%edi)
4102e3:	89 1f                	mov    %ebx,(%edi)
4102e5:	8d 7f 38             	lea    0x38(%edi),%edi
4102e8:	89 5f cc             	mov    %ebx,-0x34(%edi)
4102eb:	8d 47 e0             	lea    -0x20(%edi),%eax
4102ee:	c7 47 d0 00 00 0a 0a 	movl   $0xa0a0000,-0x30(%edi)
4102f5:	c6 47 d4 0a          	movb   $0xa,-0x2c(%edi)
4102f9:	89 5f d6             	mov    %ebx,-0x2a(%edi)
4102fc:	88 5f da             	mov    %bl,-0x26(%edi)
4102ff:	3b c6                	cmp    %esi,%eax
410301:	75 c9                	jne    0x4102cc
410303:	8b 75 f8             	mov    -0x8(%ebp),%esi
410306:	5f                   	pop    %edi
410307:	53                   	push   %ebx
410308:	e8 36 ea ff ff       	call   0x40ed43
41030d:	59                   	pop    %ecx
41030e:	8b c6                	mov    %esi,%eax
410310:	5e                   	pop    %esi
410311:	5b                   	pop    %ebx
410312:	c9                   	leave
410313:	c3                   	ret
410314:	8b ff                	mov    %edi,%edi
410316:	55                   	push   %ebp
410317:	8b ec                	mov    %esp,%ebp
410319:	56                   	push   %esi
41031a:	8b 75 08             	mov    0x8(%ebp),%esi
41031d:	85 f6                	test   %esi,%esi
41031f:	74 25                	je     0x410346
410321:	53                   	push   %ebx
410322:	8d 9e 00 0e 00 00    	lea    0xe00(%esi),%ebx
410328:	57                   	push   %edi
410329:	8b fe                	mov    %esi,%edi
41032b:	3b f3                	cmp    %ebx,%esi
41032d:	74 0e                	je     0x41033d
41032f:	57                   	push   %edi
410330:	ff 15 38 c1 41 00    	call   *0x41c138
410336:	83 c7 38             	add    $0x38,%edi
410339:	3b fb                	cmp    %ebx,%edi
41033b:	75 f2                	jne    0x41032f
41033d:	56                   	push   %esi
41033e:	e8 00 ea ff ff       	call   0x40ed43
410343:	59                   	pop    %ecx
410344:	5f                   	pop    %edi
410345:	5b                   	pop    %ebx
410346:	5e                   	pop    %esi
410347:	5d                   	pop    %ebp
410348:	c3                   	ret
410349:	6a 10                	push   $0x10
41034b:	68 c0 3f 42 00       	push   $0x423fc0
410350:	e8 7b 86 ff ff       	call   0x4089d0
410355:	81 7d 08 00 20 00 00 	cmpl   $0x2000,0x8(%ebp)
41035c:	72 21                	jb     0x41037f
41035e:	e8 70 e9 ff ff       	call   0x40ecd3
410363:	6a 09                	push   $0x9
410365:	5e                   	pop    %esi
410366:	89 30                	mov    %esi,(%eax)
410368:	e8 a9 e8 ff ff       	call   0x40ec16
41036d:	8b c6                	mov    %esi,%eax
41036f:	8b 4d f0             	mov    -0x10(%ebp),%ecx
410372:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
410379:	59                   	pop    %ecx
41037a:	5f                   	pop    %edi
41037b:	5e                   	pop    %esi
41037c:	5b                   	pop    %ebx
41037d:	c9                   	leave
41037e:	c3                   	ret
41037f:	33 f6                	xor    %esi,%esi
410381:	89 75 e4             	mov    %esi,-0x1c(%ebp)
410384:	6a 07                	push   $0x7
410386:	e8 76 fe ff ff       	call   0x410201
41038b:	59                   	pop    %ecx
41038c:	89 75 fc             	mov    %esi,-0x4(%ebp)
41038f:	8b fe                	mov    %esi,%edi
410391:	a1 18 72 42 00       	mov    0x427218,%eax
410396:	89 7d e0             	mov    %edi,-0x20(%ebp)
410399:	39 45 08             	cmp    %eax,0x8(%ebp)
41039c:	7c 1f                	jl     0x4103bd
41039e:	39 34 bd 18 70 42 00 	cmp    %esi,0x427018(,%edi,4)
4103a5:	75 31                	jne    0x4103d8
4103a7:	e8 ed fe ff ff       	call   0x410299
4103ac:	89 04 bd 18 70 42 00 	mov    %eax,0x427018(,%edi,4)
4103b3:	85 c0                	test   %eax,%eax
4103b5:	75 14                	jne    0x4103cb
4103b7:	6a 0c                	push   $0xc
4103b9:	5e                   	pop    %esi
4103ba:	89 75 e4             	mov    %esi,-0x1c(%ebp)
4103bd:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4103c4:	e8 15 00 00 00       	call   0x4103de
4103c9:	eb a2                	jmp    0x41036d
4103cb:	a1 18 72 42 00       	mov    0x427218,%eax
4103d0:	83 c0 40             	add    $0x40,%eax
4103d3:	a3 18 72 42 00       	mov    %eax,0x427218
4103d8:	47                   	inc    %edi
4103d9:	eb bb                	jmp    0x410396
4103db:	8b 75 e4             	mov    -0x1c(%ebp),%esi
4103de:	6a 07                	push   $0x7
4103e0:	e8 6c fe ff ff       	call   0x410251
4103e5:	59                   	pop    %ecx
4103e6:	c3                   	ret
4103e7:	8b ff                	mov    %edi,%edi
4103e9:	55                   	push   %ebp
4103ea:	8b ec                	mov    %esp,%ebp
4103ec:	8b 45 08             	mov    0x8(%ebp),%eax
4103ef:	8b c8                	mov    %eax,%ecx
4103f1:	83 e0 3f             	and    $0x3f,%eax
4103f4:	c1 f9 06             	sar    $0x6,%ecx
4103f7:	6b c0 38             	imul   $0x38,%eax,%eax
4103fa:	03 04 8d 18 70 42 00 	add    0x427018(,%ecx,4),%eax
410401:	50                   	push   %eax
410402:	ff 15 40 c1 41 00    	call   *0x41c140
410408:	5d                   	pop    %ebp
410409:	c3                   	ret
41040a:	8b ff                	mov    %edi,%edi
41040c:	55                   	push   %ebp
41040d:	8b ec                	mov    %esp,%ebp
41040f:	8b 45 08             	mov    0x8(%ebp),%eax
410412:	8b c8                	mov    %eax,%ecx
410414:	83 e0 3f             	and    $0x3f,%eax
410417:	c1 f9 06             	sar    $0x6,%ecx
41041a:	6b c0 38             	imul   $0x38,%eax,%eax
41041d:	03 04 8d 18 70 42 00 	add    0x427018(,%ecx,4),%eax
410424:	50                   	push   %eax
410425:	ff 15 3c c1 41 00    	call   *0x41c13c
41042b:	5d                   	pop    %ebp
41042c:	c3                   	ret
41042d:	8b ff                	mov    %edi,%edi
41042f:	55                   	push   %ebp
410430:	8b ec                	mov    %esp,%ebp
410432:	53                   	push   %ebx
410433:	56                   	push   %esi
410434:	8b 75 08             	mov    0x8(%ebp),%esi
410437:	57                   	push   %edi
410438:	85 f6                	test   %esi,%esi
41043a:	78 67                	js     0x4104a3
41043c:	3b 35 18 72 42 00    	cmp    0x427218,%esi
410442:	73 5f                	jae    0x4104a3
410444:	8b c6                	mov    %esi,%eax
410446:	8b fe                	mov    %esi,%edi
410448:	83 e0 3f             	and    $0x3f,%eax
41044b:	c1 ff 06             	sar    $0x6,%edi
41044e:	6b d8 38             	imul   $0x38,%eax,%ebx
410451:	8b 04 bd 18 70 42 00 	mov    0x427018(,%edi,4),%eax
410458:	f6 44 03 28 01       	testb  $0x1,0x28(%ebx,%eax,1)
41045d:	74 44                	je     0x4104a3
41045f:	83 7c 03 18 ff       	cmpl   $0xffffffff,0x18(%ebx,%eax,1)
410464:	74 3d                	je     0x4104a3
410466:	e8 ad ad ff ff       	call   0x40b218
41046b:	83 f8 01             	cmp    $0x1,%eax
41046e:	75 23                	jne    0x410493
410470:	33 c0                	xor    %eax,%eax
410472:	2b f0                	sub    %eax,%esi
410474:	74 14                	je     0x41048a
410476:	83 ee 01             	sub    $0x1,%esi
410479:	74 0a                	je     0x410485
41047b:	83 ee 01             	sub    $0x1,%esi
41047e:	75 13                	jne    0x410493
410480:	50                   	push   %eax
410481:	6a f4                	push   $0xfffffff4
410483:	eb 08                	jmp    0x41048d
410485:	50                   	push   %eax
410486:	6a f5                	push   $0xfffffff5
410488:	eb 03                	jmp    0x41048d
41048a:	50                   	push   %eax
41048b:	6a f6                	push   $0xfffffff6
41048d:	ff 15 d0 c0 41 00    	call   *0x41c0d0
410493:	8b 04 bd 18 70 42 00 	mov    0x427018(,%edi,4),%eax
41049a:	83 4c 03 18 ff       	orl    $0xffffffff,0x18(%ebx,%eax,1)
41049f:	33 c0                	xor    %eax,%eax
4104a1:	eb 16                	jmp    0x4104b9
4104a3:	e8 2b e8 ff ff       	call   0x40ecd3
4104a8:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
4104ae:	e8 0d e8 ff ff       	call   0x40ecc0
4104b3:	83 20 00             	andl   $0x0,(%eax)
4104b6:	83 c8 ff             	or     $0xffffffff,%eax
4104b9:	5f                   	pop    %edi
4104ba:	5e                   	pop    %esi
4104bb:	5b                   	pop    %ebx
4104bc:	5d                   	pop    %ebp
4104bd:	c3                   	ret
4104be:	8b ff                	mov    %edi,%edi
4104c0:	55                   	push   %ebp
4104c1:	8b ec                	mov    %esp,%ebp
4104c3:	8b 4d 08             	mov    0x8(%ebp),%ecx
4104c6:	83 f9 fe             	cmp    $0xfffffffe,%ecx
4104c9:	75 15                	jne    0x4104e0
4104cb:	e8 f0 e7 ff ff       	call   0x40ecc0
4104d0:	83 20 00             	andl   $0x0,(%eax)
4104d3:	e8 fb e7 ff ff       	call   0x40ecd3
4104d8:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
4104de:	eb 43                	jmp    0x410523
4104e0:	85 c9                	test   %ecx,%ecx
4104e2:	78 27                	js     0x41050b
4104e4:	3b 0d 18 72 42 00    	cmp    0x427218,%ecx
4104ea:	73 1f                	jae    0x41050b
4104ec:	8b c1                	mov    %ecx,%eax
4104ee:	83 e1 3f             	and    $0x3f,%ecx
4104f1:	c1 f8 06             	sar    $0x6,%eax
4104f4:	6b c9 38             	imul   $0x38,%ecx,%ecx
4104f7:	8b 04 85 18 70 42 00 	mov    0x427018(,%eax,4),%eax
4104fe:	f6 44 08 28 01       	testb  $0x1,0x28(%eax,%ecx,1)
410503:	74 06                	je     0x41050b
410505:	8b 44 08 18          	mov    0x18(%eax,%ecx,1),%eax
410509:	5d                   	pop    %ebp
41050a:	c3                   	ret
41050b:	e8 b0 e7 ff ff       	call   0x40ecc0
410510:	83 20 00             	andl   $0x0,(%eax)
410513:	e8 bb e7 ff ff       	call   0x40ecd3
410518:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
41051e:	e8 f3 e6 ff ff       	call   0x40ec16
410523:	83 c8 ff             	or     $0xffffffff,%eax
410526:	5d                   	pop    %ebp
410527:	c3                   	ret
410528:	cc                   	int3
410529:	cc                   	int3
41052a:	cc                   	int3
41052b:	cc                   	int3
41052c:	cc                   	int3
41052d:	cc                   	int3
41052e:	cc                   	int3
41052f:	cc                   	int3
410530:	83 3d 14 70 42 00 00 	cmpl   $0x0,0x427014
410537:	75 0a                	jne    0x410543
410539:	c7 05 14 70 42 00 00 	movl   $0x4000,0x427014
410540:	40 00 00
410543:	33 c0                	xor    %eax,%eax
410545:	c3                   	ret
410546:	8b ff                	mov    %edi,%edi
410548:	55                   	push   %ebp
410549:	8b ec                	mov    %esp,%ebp
41054b:	83 ec 48             	sub    $0x48,%esp
41054e:	8d 45 b8             	lea    -0x48(%ebp),%eax
410551:	50                   	push   %eax
410552:	ff 15 60 c1 41 00    	call   *0x41c160
410558:	66 83 7d ea 00       	cmpw   $0x0,-0x16(%ebp)
41055d:	0f 84 97 00 00 00    	je     0x4105fa
410563:	53                   	push   %ebx
410564:	8b 5d ec             	mov    -0x14(%ebp),%ebx
410567:	85 db                	test   %ebx,%ebx
410569:	0f 84 8a 00 00 00    	je     0x4105f9
41056f:	56                   	push   %esi
410570:	8b 33                	mov    (%ebx),%esi
410572:	8d 43 04             	lea    0x4(%ebx),%eax
410575:	03 c6                	add    %esi,%eax
410577:	89 45 fc             	mov    %eax,-0x4(%ebp)
41057a:	b8 00 20 00 00       	mov    $0x2000,%eax
41057f:	3b f0                	cmp    %eax,%esi
410581:	7c 02                	jl     0x410585
410583:	8b f0                	mov    %eax,%esi
410585:	56                   	push   %esi
410586:	e8 be fd ff ff       	call   0x410349
41058b:	a1 18 72 42 00       	mov    0x427218,%eax
410590:	59                   	pop    %ecx
410591:	3b f0                	cmp    %eax,%esi
410593:	7e 02                	jle    0x410597
410595:	8b f0                	mov    %eax,%esi
410597:	57                   	push   %edi
410598:	33 ff                	xor    %edi,%edi
41059a:	85 f6                	test   %esi,%esi
41059c:	74 59                	je     0x4105f7
41059e:	8b 45 fc             	mov    -0x4(%ebp),%eax
4105a1:	8b 08                	mov    (%eax),%ecx
4105a3:	83 f9 ff             	cmp    $0xffffffff,%ecx
4105a6:	74 44                	je     0x4105ec
4105a8:	83 f9 fe             	cmp    $0xfffffffe,%ecx
4105ab:	74 3f                	je     0x4105ec
4105ad:	8a 54 1f 04          	mov    0x4(%edi,%ebx,1),%dl
4105b1:	f6 c2 01             	test   $0x1,%dl
4105b4:	74 36                	je     0x4105ec
4105b6:	f6 c2 08             	test   $0x8,%dl
4105b9:	75 0b                	jne    0x4105c6
4105bb:	51                   	push   %ecx
4105bc:	ff 15 d4 c0 41 00    	call   *0x41c0d4
4105c2:	85 c0                	test   %eax,%eax
4105c4:	74 23                	je     0x4105e9
4105c6:	8b c7                	mov    %edi,%eax
4105c8:	8b cf                	mov    %edi,%ecx
4105ca:	83 e0 3f             	and    $0x3f,%eax
4105cd:	c1 f9 06             	sar    $0x6,%ecx
4105d0:	6b d0 38             	imul   $0x38,%eax,%edx
4105d3:	8b 45 fc             	mov    -0x4(%ebp),%eax
4105d6:	03 14 8d 18 70 42 00 	add    0x427018(,%ecx,4),%edx
4105dd:	8b 00                	mov    (%eax),%eax
4105df:	89 42 18             	mov    %eax,0x18(%edx)
4105e2:	8a 44 1f 04          	mov    0x4(%edi,%ebx,1),%al
4105e6:	88 42 28             	mov    %al,0x28(%edx)
4105e9:	8b 45 fc             	mov    -0x4(%ebp),%eax