4182fe:	85 ff                	test   %edi,%edi
418300:	0f 84 87 00 00 00    	je     0x41838d
418306:	8b c7                	mov    %edi,%eax
418308:	e8 17 c3 fe ff       	call   0x404624
41830d:	89 45 fc             	mov    %eax,-0x4(%ebp)
418310:	eb 03                	jmp    0x418315
418312:	ff 45 fc             	incl   -0x4(%ebp)
418315:	8b 45 fc             	mov    -0x4(%ebp),%eax
418318:	8a 00                	mov    (%eax),%al
41831a:	2c 20                	sub    $0x20,%al
41831c:	74 f4                	je     0x418312
41831e:	2c 3b                	sub    $0x3b,%al
418320:	74 f0                	je     0x418312
418322:	8b 03                	mov    (%ebx),%eax
418324:	8b 00                	mov    (%eax),%eax
418326:	e8 55 fa ff ff       	call   0x417d80
41832b:	8b 40 01             	mov    0x1(%eax),%eax
41832e:	8b 38                	mov    (%eax),%edi
418330:	8d 55 f8             	lea    -0x8(%ebp),%edx
418333:	8d 45 fc             	lea    -0x4(%ebp),%eax
418336:	e8 5d ff ff ff       	call   0x418298
41833b:	eb 4a                	jmp    0x418387
41833d:	8b 55 f8             	mov    -0x8(%ebp),%edx
418340:	8b c7                	mov    %edi,%eax
418342:	e8 69 fb ff ff       	call   0x417eb0
418347:	8b d8                	mov    %eax,%ebx
418349:	85 db                	test   %ebx,%ebx
41834b:	7d 27                	jge    0x418374
41834d:	8b 45 f8             	mov    -0x8(%ebp),%eax
418350:	89 45 f0             	mov    %eax,-0x10(%ebp)
418353:	c6 45 f4 0b          	movb   $0xb,-0xc(%ebp)
418357:	8d 45 f0             	lea    -0x10(%ebp),%eax
41835a:	50                   	push   %eax
41835b:	6a 00                	push   $0x0
41835d:	8b 0d 88 b0 49 00    	mov    0x49b088,%ecx
418363:	b2 01                	mov    $0x1,%dl
418365:	a1 50 76 41 00       	mov    0x417650,%eax
41836a:	e8 c1 41 ff ff       	call   0x40c530
41836f:	e8 2c b8 fe ff       	call   0x403ba0
418374:	83 fb 1f             	cmp    $0x1f,%ebx
418377:	77 03                	ja     0x41837c
418379:	0f ab de             	bts    %ebx,%esi
41837c:	8d 55 f8             	lea    -0x8(%ebp),%edx
41837f:	8d 45 fc             	lea    -0x4(%ebp),%eax
418382:	e8 11 ff ff ff       	call   0x418298
418387:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
41838b:	75 b0                	jne    0x41833d
41838d:	33 c0                	xor    %eax,%eax
41838f:	5a                   	pop    %edx
418390:	59                   	pop    %ecx
418391:	59                   	pop    %ecx
418392:	64 89 10             	mov    %edx,%fs:(%eax)
418395:	68 aa 83 41 00       	push   $0x4183aa
41839a:	8d 45 f8             	lea    -0x8(%ebp),%eax
41839d:	e8 c2 bd fe ff       	call   0x404164
4183a2:	c3                   	ret
4183a3:	e9 c0 b7 fe ff       	jmp    0x403b68
4183a8:	eb f0                	jmp    0x41839a
4183aa:	8b c6                	mov    %esi,%eax
4183ac:	5f                   	pop    %edi
4183ad:	5e                   	pop    %esi
4183ae:	5b                   	pop    %ebx
4183af:	8b e5                	mov    %ebp,%esp
4183b1:	5d                   	pop    %ebp
4183b2:	c3                   	ret
4183b3:	90                   	nop
4183b4:	53                   	push   %ebx
4183b5:	56                   	push   %esi
4183b6:	57                   	push   %edi
4183b7:	8b f9                	mov    %ecx,%edi
4183b9:	8b da                	mov    %edx,%ebx
4183bb:	8b f0                	mov    %eax,%esi
4183bd:	8b d7                	mov    %edi,%edx
4183bf:	8b c3                	mov    %ebx,%eax
4183c1:	e8 16 ff ff ff       	call   0x4182dc
4183c6:	8b c8                	mov    %eax,%ecx
4183c8:	8b d3                	mov    %ebx,%edx
4183ca:	8b c6                	mov    %esi,%eax
4183cc:	e8 e3 fc ff ff       	call   0x4180b4
4183d1:	5f                   	pop    %edi
4183d2:	5e                   	pop    %esi
4183d3:	5b                   	pop    %ebx
4183d4:	c3                   	ret
4183d5:	8d 40 00             	lea    0x0(%eax),%eax
4183d8:	55                   	push   %ebp
4183d9:	8b ec                	mov    %esp,%ebp
4183db:	56                   	push   %esi
4183dc:	57                   	push   %edi
4183dd:	89 d7                	mov    %edx,%edi
4183df:	8b 57 10             	mov    0x10(%edi),%edx
4183e2:	81 fa 00 00 00 80    	cmp    $0x80000000,%edx
4183e8:	75 02                	jne    0x4183ec
4183ea:	89 ca                	mov    %ecx,%edx
4183ec:	8b 77 04             	mov    0x4(%edi),%esi
4183ef:	80 7f 07 fe          	cmpb   $0xfe,0x7(%edi)
4183f3:	77 0f                	ja     0x418404
4183f5:	72 09                	jb     0x418400
4183f7:	0f bf f6             	movswl %si,%esi
4183fa:	03 30                	add    (%eax),%esi
4183fc:	ff 16                	call   *(%esi)
4183fe:	eb 15                	jmp    0x418415
418400:	ff d6                	call   *%esi
418402:	eb 11                	jmp    0x418415
418404:	81 e6 ff ff ff 00    	and    $0xffffff,%esi
41840a:	01 c6                	add    %eax,%esi
41840c:	89 cf                	mov    %ecx,%edi
41840e:	31 c9                	xor    %ecx,%ecx
418410:	8a 0e                	mov    (%esi),%cl
418412:	41                   	inc    %ecx
418413:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
418415:	5f                   	pop    %edi
418416:	5e                   	pop    %esi
418417:	5d                   	pop    %ebp
418418:	c2 04 00             	ret    $0x4
41841b:	90                   	nop
41841c:	56                   	push   %esi
41841d:	57                   	push   %edi
41841e:	89 d6                	mov    %edx,%esi
418420:	8b 56 10             	mov    0x10(%esi),%edx
418423:	81 fa 00 00 00 80    	cmp    $0x80000000,%edx
418429:	75 02                	jne    0x41842d
41842b:	89 ca                	mov    %ecx,%edx
41842d:	8b 7e 08             	mov    0x8(%esi),%edi
418430:	80 7e 0b fe          	cmpb   $0xfe,0xb(%esi)
418434:	77 11                	ja     0x418447
418436:	72 0a                	jb     0x418442
418438:	0f bf ff             	movswl %di,%edi
41843b:	03 38                	add    (%eax),%edi
41843d:	ff 17                	call   *(%edi)
41843f:	5f                   	pop    %edi
418440:	5e                   	pop    %esi
418441:	c3                   	ret
418442:	ff d7                	call   *%edi
418444:	5f                   	pop    %edi
418445:	5e                   	pop    %esi
418446:	c3                   	ret
418447:	81 e7 ff ff ff 00    	and    $0xffffff,%edi
41844d:	01 c7                	add    %eax,%edi
41844f:	8b 06                	mov    (%esi),%eax
418451:	8b 00                	mov    (%eax),%eax
418453:	89 ce                	mov    %ecx,%esi
418455:	31 c9                	xor    %ecx,%ecx
418457:	8a 48 01             	mov    0x1(%eax),%cl
41845a:	8a 4c 08 02          	mov    0x2(%eax,%ecx,1),%cl
41845e:	ac                   	lods   %ds:(%esi),%al
41845f:	38 c8                	cmp    %cl,%al
418461:	72 02                	jb     0x418465
418463:	88 c8                	mov    %cl,%al
418465:	aa                   	stos   %al,%es:(%edi)
418466:	88 c1                	mov    %al,%cl
418468:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
41846a:	5f                   	pop    %edi
41846b:	5e                   	pop    %esi
41846c:	c3                   	ret
41846d:	8d 40 00             	lea    0x0(%eax),%eax
418470:	53                   	push   %ebx
418471:	81 c4 00 ff ff ff    	add    $0xffffff00,%esp
418477:	8b d9                	mov    %ecx,%ebx
418479:	68 ff 00 00 00       	push   $0xff
41847e:	8d 4c 24 04          	lea    0x4(%esp),%ecx
418482:	e8 51 ff ff ff       	call   0x4183d8
418487:	8b c3                	mov    %ebx,%eax
418489:	8b d4                	mov    %esp,%edx
41848b:	e8 38 bf fe ff       	call   0x4043c8
418490:	81 c4 00 01 00 00    	add    $0x100,%esp
418496:	5b                   	pop    %ebx
418497:	c3                   	ret
418498:	53                   	push   %ebx
418499:	56                   	push   %esi
41849a:	57                   	push   %edi
41849b:	81 c4 00 ff ff ff    	add    $0xffffff00,%esp
4184a1:	8b f9                	mov    %ecx,%edi
4184a3:	8b f2                	mov    %edx,%esi
4184a5:	8b d8                	mov    %eax,%ebx
4184a7:	8b c4                	mov    %esp,%eax
4184a9:	8b d7                	mov    %edi,%edx
4184ab:	b9 ff 00 00 00       	mov    $0xff,%ecx
4184b0:	e8 4b bf fe ff       	call   0x404400
4184b5:	8b cc                	mov    %esp,%ecx
4184b7:	8b d6                	mov    %esi,%edx
4184b9:	8b c3                	mov    %ebx,%eax
4184bb:	e8 5c ff ff ff       	call   0x41841c
4184c0:	81 c4 00 01 00 00    	add    $0x100,%esp
4184c6:	5f                   	pop    %edi
4184c7:	5e                   	pop    %esi
4184c8:	5b                   	pop    %ebx
4184c9:	c3                   	ret
4184ca:	8b c0                	mov    %eax,%eax
4184cc:	53                   	push   %ebx
4184cd:	56                   	push   %esi
4184ce:	8b f2                	mov    %edx,%esi
4184d0:	8b d8                	mov    %eax,%ebx
4184d2:	8b c3                	mov    %ebx,%eax
4184d4:	8b d6                	mov    %esi,%edx
4184d6:	e8 dd bc fe ff       	call   0x4041b8
4184db:	5e                   	pop    %esi
4184dc:	5b                   	pop    %ebx
4184dd:	c3                   	ret
4184de:	8b c0                	mov    %eax,%eax
4184e0:	56                   	push   %esi
4184e1:	57                   	push   %edi
4184e2:	89 d7                	mov    %edx,%edi
4184e4:	8b 57 10             	mov    0x10(%edi),%edx
4184e7:	81 fa 00 00 00 80    	cmp    $0x80000000,%edx
4184ed:	75 02                	jne    0x4184f1
4184ef:	89 ca                	mov    %ecx,%edx
4184f1:	8b 77 04             	mov    0x4(%edi),%esi
4184f4:	80 7f 07 fe          	cmpb   $0xfe,0x7(%edi)
4184f8:	77 11                	ja     0x41850b
4184fa:	72 0a                	jb     0x418506
4184fc:	0f bf f6             	movswl %si,%esi
4184ff:	03 30                	add    (%eax),%esi
418501:	ff 16                	call   *(%esi)
418503:	5f                   	pop    %edi
418504:	5e                   	pop    %esi
418505:	c3                   	ret
418506:	ff d6                	call   *%esi
418508:	5f                   	pop    %edi
418509:	5e                   	pop    %esi
41850a:	c3                   	ret
41850b:	81 e6 ff ff ff 00    	and    $0xffffff,%esi
418511:	8b 14 06             	mov    (%esi,%eax,1),%edx
418514:	89 c8                	mov    %ecx,%eax
418516:	e8 b1 ff ff ff       	call   0x4184cc
41851b:	5f                   	pop    %edi
41851c:	5e                   	pop    %esi
41851d:	c3                   	ret
41851e:	8b c0                	mov    %eax,%eax
418520:	56                   	push   %esi
418521:	57                   	push   %edi
418522:	89 d6                	mov    %edx,%esi
418524:	8b 56 10             	mov    0x10(%esi),%edx
418527:	81 fa 00 00 00 80    	cmp    $0x80000000,%edx
41852d:	75 02                	jne    0x418531
41852f:	89 ca                	mov    %ecx,%edx
418531:	8b 7e 08             	mov    0x8(%esi),%edi
418534:	80 7e 0b fe          	cmpb   $0xfe,0xb(%esi)
418538:	77 11                	ja     0x41854b
41853a:	72 0a                	jb     0x418546
41853c:	0f bf ff             	movswl %di,%edi
41853f:	03 38                	add    (%eax),%edi
418541:	ff 17                	call   *(%edi)
418543:	5f                   	pop    %edi
418544:	5e                   	pop    %esi
418545:	c3                   	ret
418546:	ff d7                	call   *%edi
418548:	5f                   	pop    %edi
418549:	5e                   	pop    %esi
41854a:	c3                   	ret
41854b:	81 e7 ff ff ff 00    	and    $0xffffff,%edi
418551:	01 f8                	add    %edi,%eax
418553:	89 ca                	mov    %ecx,%edx
418555:	e8 72 ff ff ff       	call   0x4184cc
41855a:	5f                   	pop    %edi
41855b:	5e                   	pop    %esi
41855c:	c3                   	ret
41855d:	8d 40 00             	lea    0x0(%eax),%eax
418560:	55                   	push   %ebp
418561:	8b ec                	mov    %esp,%ebp
418563:	6a 00                	push   $0x0
418565:	53                   	push   %ebx
418566:	56                   	push   %esi
418567:	57                   	push   %edi
418568:	8b f9                	mov    %ecx,%edi
41856a:	8b f2                	mov    %edx,%esi
41856c:	8b d8                	mov    %eax,%ebx
41856e:	33 c0                	xor    %eax,%eax
418570:	55                   	push   %ebp
418571:	68 a8 85 41 00       	push   $0x4185a8
418576:	64 ff 30             	push   %fs:(%eax)
418579:	64 89 20             	mov    %esp,%fs:(%eax)
41857c:	8d 4d fc             	lea    -0x4(%ebp),%ecx
41857f:	8b d6                	mov    %esi,%edx
418581:	8b c3                	mov    %ebx,%eax
418583:	e8 f4 00 00 00       	call   0x41867c
418588:	8b 55 fc             	mov    -0x4(%ebp),%edx
41858b:	8b c7                	mov    %edi,%eax
41858d:	e8 5a be fe ff       	call   0x4043ec
418592:	33 c0                	xor    %eax,%eax
418594:	5a                   	pop    %edx
418595:	59                   	pop    %ecx
418596:	59                   	pop    %ecx
418597:	64 89 10             	mov    %edx,%fs:(%eax)
41859a:	68 af 85 41 00       	push   $0x4185af
41859f:	8d 45 fc             	lea    -0x4(%ebp),%eax
4185a2:	e8 c9 c2 fe ff       	call   0x404870
4185a7:	c3                   	ret
4185a8:	e9 bb b5 fe ff       	jmp    0x403b68
4185ad:	eb f0                	jmp    0x41859f
4185af:	5f                   	pop    %edi
4185b0:	5e                   	pop    %esi
4185b1:	5b                   	pop    %ebx
4185b2:	59                   	pop    %ecx
4185b3:	5d                   	pop    %ebp
4185b4:	c3                   	ret
4185b5:	8d 40 00             	lea    0x0(%eax),%eax
4185b8:	55                   	push   %ebp
4185b9:	8b ec                	mov    %esp,%ebp
4185bb:	6a 00                	push   $0x0
4185bd:	53                   	push   %ebx
4185be:	56                   	push   %esi
4185bf:	57                   	push   %edi
4185c0:	8b f9                	mov    %ecx,%edi
4185c2:	8b f2                	mov    %edx,%esi
4185c4:	8b d8                	mov    %eax,%ebx
4185c6:	33 c0                	xor    %eax,%eax
4185c8:	55                   	push   %ebp
4185c9:	68 00 86 41 00       	push   $0x418600
4185ce:	64 ff 30             	push   %fs:(%eax)
4185d1:	64 89 20             	mov    %esp,%fs:(%eax)
4185d4:	8d 45 fc             	lea    -0x4(%ebp),%eax
4185d7:	8b d7                	mov    %edi,%edx
4185d9:	e8 de c3 fe ff       	call   0x4049bc
4185de:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4185e1:	8b d6                	mov    %esi,%edx
4185e3:	8b c3                	mov    %ebx,%eax
4185e5:	e8 7a 01 00 00       	call   0x418764
4185ea:	33 c0                	xor    %eax,%eax
4185ec:	5a                   	pop    %edx
4185ed:	59                   	pop    %ecx
4185ee:	59                   	pop    %ecx
4185ef:	64 89 10             	mov    %edx,%fs:(%eax)
4185f2:	68 07 86 41 00       	push   $0x418607
4185f7:	8d 45 fc             	lea    -0x4(%ebp),%eax
4185fa:	e8 71 c2 fe ff       	call   0x404870
4185ff:	c3                   	ret
418600:	e9 63 b5 fe ff       	jmp    0x403b68
418605:	eb f0                	jmp    0x4185f7
418607:	5f                   	pop    %edi
418608:	5e                   	pop    %esi
418609:	5b                   	pop    %ebx
41860a:	59                   	pop    %ecx
41860b:	5d                   	pop    %ebp
41860c:	c3                   	ret
41860d:	8d 40 00             	lea    0x0(%eax),%eax
418610:	53                   	push   %ebx
418611:	8b d9                	mov    %ecx,%ebx
418613:	8b 0a                	mov    (%edx),%ecx
418615:	8b 09                	mov    (%ecx),%ecx
418617:	8a 09                	mov    (%ecx),%cl
418619:	80 e9 05             	sub    $0x5,%cl
41861c:	74 0b                	je     0x418629
41861e:	80 e9 05             	sub    $0x5,%cl
418621:	74 0f                	je     0x418632
418623:	fe c9                	dec    %cl
418625:	74 14                	je     0x41863b
418627:	eb 1b                	jmp    0x418644
418629:	8b cb                	mov    %ebx,%ecx
41862b:	e8 40 fe ff ff       	call   0x418470
418630:	5b                   	pop    %ebx