41e33e:	39 ae 88 00 00 00    	cmp    %ebp,0x88(%esi)
41e344:	75 08                	jne    0x41e34e
41e346:	55                   	push   %ebp
41e347:	8b ce                	mov    %esi,%ecx
41e349:	e8 9c f4 ff ff       	call   0x41d7ea
41e34e:	ff 76 1c             	push   0x1c(%esi)
41e351:	ff 15 80 98 43 00    	call   *0x439880
41e357:	3b c5                	cmp    %ebp,%eax
41e359:	75 08                	jne    0x41e363
41e35b:	39 ae 88 00 00 00    	cmp    %ebp,0x88(%esi)
41e361:	7c 1d                	jl     0x41e380
41e363:	55                   	push   %ebp
41e364:	6a 01                	push   $0x1
41e366:	53                   	push   %ebx
41e367:	ff 76 1c             	push   0x1c(%esi)
41e36a:	56                   	push   %esi
41e36b:	e8 e4 bc ff ff       	call   0x41a054
41e370:	6a 01                	push   $0x1
41e372:	6a 01                	push   $0x1
41e374:	55                   	push   %ebp
41e375:	6a 01                	push   $0x1
41e377:	53                   	push   %ebx
41e378:	ff 76 1c             	push   0x1c(%esi)
41e37b:	e8 e0 d6 ff ff       	call   0x41ba60
41e380:	8b 86 88 00 00 00    	mov    0x88(%esi),%eax
41e386:	3b c5                	cmp    %ebp,%eax
41e388:	7e 08                	jle    0x41e392
41e38a:	50                   	push   %eax
41e38b:	8b ce                	mov    %esi,%ecx
41e38d:	e8 58 f4 ff ff       	call   0x41d7ea
41e392:	83 8e 88 00 00 00 ff 	orl    $0xffffffff,0x88(%esi)
41e399:	8b 76 54             	mov    0x54(%esi),%esi
41e39c:	eb 8f                	jmp    0x41e32d
41e39e:	e8 a4 63 00 00       	call   0x424747
41e3a3:	05 70 10 00 00       	add    $0x1070,%eax
41e3a8:	68 bd b2 40 00       	push   $0x40b2bd
41e3ad:	8b c8                	mov    %eax,%ecx
41e3af:	e8 da 6c 00 00       	call   0x42508e
41e3b4:	39 68 10             	cmp    %ebp,0x10(%eax)
41e3b7:	75 0c                	jne    0x41e3c5
41e3b9:	e8 e8 09 00 00       	call   0x41eda6
41e3be:	6a 01                	push   $0x1
41e3c0:	e8 ea 09 00 00       	call   0x41edaf
41e3c5:	33 c0                	xor    %eax,%eax
41e3c7:	39 6c 24 14          	cmp    %ebp,0x14(%esp)
41e3cb:	5f                   	pop    %edi
41e3cc:	5e                   	pop    %esi
41e3cd:	5d                   	pop    %ebp
41e3ce:	5b                   	pop    %ebx
41e3cf:	0f 9c c0             	setl   %al
41e3d2:	c2 04 00             	ret    $0x4
41e3d5:	51                   	push   %ecx
41e3d6:	8b 01                	mov    (%ecx),%eax
41e3d8:	53                   	push   %ebx
41e3d9:	55                   	push   %ebp
41e3da:	56                   	push   %esi
41e3db:	57                   	push   %edi
41e3dc:	89 4c 24 10          	mov    %ecx,0x10(%esp)
41e3e0:	ff 50 30             	call   *0x30(%eax)
41e3e3:	8b f0                	mov    %eax,%esi
41e3e5:	33 ed                	xor    %ebp,%ebp
41e3e7:	3b f5                	cmp    %ebp,%esi
41e3e9:	74 39                	je     0x41e424
41e3eb:	8b 5c 24 18          	mov    0x18(%esp),%ebx
41e3ef:	bf 00 c0 00 00       	mov    $0xc000,%edi
41e3f4:	8b 43 04             	mov    0x4(%ebx),%eax
41e3f7:	55                   	push   %ebp
41e3f8:	3b c7                	cmp    %edi,%eax
41e3fa:	55                   	push   %ebp
41e3fb:	73 31                	jae    0x41e42e
41e3fd:	50                   	push   %eax
41e3fe:	ff 76 04             	push   0x4(%esi)
41e401:	e8 1b cd ff ff       	call   0x41b121
41e406:	3b c5                	cmp    %ebp,%eax
41e408:	75 08                	jne    0x41e412
41e40a:	8b 36                	mov    (%esi),%esi
41e40c:	3b f5                	cmp    %ebp,%esi
41e40e:	75 e4                	jne    0x41e3f4
41e410:	eb 12                	jmp    0x41e424
41e412:	ff 73 0c             	push   0xc(%ebx)
41e415:	8b 4c 24 14          	mov    0x14(%esp),%ecx
41e419:	ff 73 08             	push   0x8(%ebx)
41e41c:	ff 50 14             	call   *0x14(%eax)
41e41f:	6a 01                	push   $0x1
41e421:	58                   	pop    %eax
41e422:	eb 02                	jmp    0x41e426
41e424:	33 c0                	xor    %eax,%eax
41e426:	5f                   	pop    %edi
41e427:	5e                   	pop    %esi
41e428:	5d                   	pop    %ebp
41e429:	5b                   	pop    %ebx
41e42a:	59                   	pop    %ecx
41e42b:	c2 04 00             	ret    $0x4
41e42e:	57                   	push   %edi
41e42f:	ff 76 04             	push   0x4(%esi)
41e432:	e8 ea cc ff ff       	call   0x41b121
41e437:	3b c5                	cmp    %ebp,%eax
41e439:	74 cf                	je     0x41e40a
41e43b:	8b 48 10             	mov    0x10(%eax),%ecx
41e43e:	8b 09                	mov    (%ecx),%ecx
41e440:	3b 4b 04             	cmp    0x4(%ebx),%ecx
41e443:	74 cd                	je     0x41e412
41e445:	55                   	push   %ebp
41e446:	55                   	push   %ebp
41e447:	83 c0 18             	add    $0x18,%eax
41e44a:	57                   	push   %edi
41e44b:	50                   	push   %eax
41e44c:	eb e4                	jmp    0x41e432
41e44e:	56                   	push   %esi
41e44f:	57                   	push   %edi
41e450:	8b 7c 24 0c          	mov    0xc(%esp),%edi
41e454:	83 3f 00             	cmpl   $0x0,(%edi)
41e457:	75 0e                	jne    0x41e467
41e459:	57                   	push   %edi
41e45a:	e8 76 ff ff ff       	call   0x41e3d5
41e45f:	85 c0                	test   %eax,%eax
41e461:	0f 85 9d 00 00 00    	jne    0x41e504
41e467:	8b 47 04             	mov    0x4(%edi),%eax
41e46a:	3d 00 01 00 00       	cmp    $0x100,%eax
41e46f:	72 07                	jb     0x41e478
41e471:	3d 08 01 00 00       	cmp    $0x108,%eax
41e476:	76 0e                	jbe    0x41e486
41e478:	3d 04 01 00 00       	cmp    $0x104,%eax
41e47d:	72 0c                	jb     0x41e48b
41e47f:	3d 07 01 00 00       	cmp    $0x107,%eax
41e484:	77 05                	ja     0x41e48b
41e486:	6a 01                	push   $0x1
41e488:	59                   	pop    %ecx
41e489:	eb 02                	jmp    0x41e48d
41e48b:	33 c9                	xor    %ecx,%ecx
41e48d:	85 c9                	test   %ecx,%ecx
41e48f:	75 54                	jne    0x41e4e5
41e491:	3d 01 02 00 00       	cmp    $0x201,%eax
41e496:	74 4d                	je     0x41e4e5
41e498:	3d 03 02 00 00       	cmp    $0x203,%eax
41e49d:	74 46                	je     0x41e4e5
41e49f:	3d 04 02 00 00       	cmp    $0x204,%eax
41e4a4:	74 3f                	je     0x41e4e5
41e4a6:	3d 06 02 00 00       	cmp    $0x206,%eax
41e4ab:	74 38                	je     0x41e4e5
41e4ad:	3d 07 02 00 00       	cmp    $0x207,%eax
41e4b2:	74 31                	je     0x41e4e5
41e4b4:	3d 09 02 00 00       	cmp    $0x209,%eax
41e4b9:	74 2a                	je     0x41e4e5
41e4bb:	3d a1 00 00 00       	cmp    $0xa1,%eax
41e4c0:	74 23                	je     0x41e4e5
41e4c2:	3d a3 00 00 00       	cmp    $0xa3,%eax
41e4c7:	74 1c                	je     0x41e4e5
41e4c9:	3d a4 00 00 00       	cmp    $0xa4,%eax
41e4ce:	74 15                	je     0x41e4e5
41e4d0:	3d a6 00 00 00       	cmp    $0xa6,%eax
41e4d5:	74 0e                	je     0x41e4e5
41e4d7:	3d a7 00 00 00       	cmp    $0xa7,%eax
41e4dc:	74 07                	je     0x41e4e5
41e4de:	3d a9 00 00 00       	cmp    $0xa9,%eax
41e4e3:	75 06                	jne    0x41e4eb
41e4e5:	51                   	push   %ecx
41e4e6:	e8 30 c7 ff ff       	call   0x41ac1b
41e4eb:	e8 12 cd fe ff       	call   0x40b202
41e4f0:	8b f0                	mov    %eax,%esi
41e4f2:	85 f6                	test   %esi,%esi
41e4f4:	74 03                	je     0x41e4f9
41e4f6:	8b 46 1c             	mov    0x1c(%esi),%eax
41e4f9:	57                   	push   %edi
41e4fa:	50                   	push   %eax
41e4fb:	e8 b9 d9 ff ff       	call   0x41beb9
41e500:	85 c0                	test   %eax,%eax
41e502:	74 05                	je     0x41e509
41e504:	6a 01                	push   $0x1
41e506:	58                   	pop    %eax
41e507:	eb 25                	jmp    0x41e52e
41e509:	85 f6                	test   %esi,%esi
41e50b:	74 1f                	je     0x41e52c
41e50d:	ff 37                	push   (%edi)
41e50f:	e8 ac bd ff ff       	call   0x41a2c0
41e514:	8b c8                	mov    %eax,%ecx
41e516:	e8 bc d3 ff ff       	call   0x41b8d7
41e51b:	3b c6                	cmp    %esi,%eax
41e51d:	74 0d                	je     0x41e52c
41e51f:	8b 06                	mov    (%esi),%eax
41e521:	57                   	push   %edi
41e522:	8b ce                	mov    %esi,%ecx
41e524:	ff 90 98 00 00 00    	call   *0x98(%eax)
41e52a:	eb 02                	jmp    0x41e52e
41e52c:	33 c0                	xor    %eax,%eax
41e52e:	5f                   	pop    %edi
41e52f:	5e                   	pop    %esi
41e530:	c2 04 00             	ret    $0x4
41e533:	8b 4c 24 08          	mov    0x8(%esp),%ecx
41e537:	8b 41 04             	mov    0x4(%ecx),%eax
41e53a:	83 f8 01             	cmp    $0x1,%eax
41e53d:	75 05                	jne    0x41e544
41e53f:	83 c8 ff             	or     $0xffffffff,%eax
41e542:	eb 11                	jmp    0x41e555
41e544:	83 f8 0f             	cmp    $0xf,%eax
41e547:	75 0a                	jne    0x41e553
41e549:	6a 00                	push   $0x0
41e54b:	ff 31                	push   (%ecx)
41e54d:	ff 15 b8 97 43 00    	call   *0x4397b8
41e553:	33 c0                	xor    %eax,%eax
41e555:	c2 08 00             	ret    $0x8
41e558:	56                   	push   %esi
41e559:	e8 e9 61 00 00       	call   0x424747
41e55e:	80 78 14 00          	cmpb   $0x0,0x14(%eax)
41e562:	8b 74 24 08          	mov    0x8(%esp),%esi
41e566:	75 23                	jne    0x41e58b
41e568:	85 f6                	test   %esi,%esi
41e56a:	7d 08                	jge    0x41e574
41e56c:	81 fe 01 80 00 00    	cmp    $0x8001,%esi
41e572:	75 17                	jne    0x41e58b
41e574:	e8 43 fa ff ff       	call   0x41dfbc
41e579:	85 c0                	test   %eax,%eax
41e57b:	74 0e                	je     0x41e58b
41e57d:	ff 74 24 10          	push   0x10(%esp)
41e581:	8b 10                	mov    (%eax),%edx
41e583:	8b c8                	mov    %eax,%ecx
41e585:	56                   	push   %esi
41e586:	ff 52 78             	call   *0x78(%edx)
41e589:	eb 21                	jmp    0x41e5ac
41e58b:	68 ce b1 40 00       	push   $0x40b1ce
41e590:	b9 b4 6a 43 00       	mov    $0x436ab4,%ecx
41e595:	e8 f4 6a 00 00       	call   0x42508e
41e59a:	ff 74 24 10          	push   0x10(%esp)
41e59e:	ff 74 24 10          	push   0x10(%esp)
41e5a2:	56                   	push   %esi
41e5a3:	ff 70 30             	push   0x30(%eax)
41e5a6:	ff 15 f0 98 43 00    	call   *0x4398f0
41e5ac:	5e                   	pop    %esi
41e5ad:	c2 0c 00             	ret    $0xc
41e5b0:	55                   	push   %ebp
41e5b1:	8b ec                	mov    %esp,%ebp
41e5b3:	83 ec 20             	sub    $0x20,%esp
41e5b6:	53                   	push   %ebx
41e5b7:	56                   	push   %esi
41e5b8:	8b 75 0c             	mov    0xc(%ebp),%esi
41e5bb:	33 db                	xor    %ebx,%ebx
41e5bd:	3b f3                	cmp    %ebx,%esi
41e5bf:	57                   	push   %edi
41e5c0:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41e5c3:	0f 84 25 01 00 00    	je     0x41e6ee
41e5c9:	8b 45 08             	mov    0x8(%ebp),%eax
41e5cc:	2b c3                	sub    %ebx,%eax
41e5ce:	74 6c                	je     0x41e63c
41e5d0:	48                   	dec    %eax
41e5d1:	48                   	dec    %eax
41e5d2:	74 0a                	je     0x41e5de
41e5d4:	2d ff 7f 00 00       	sub    $0x7fff,%eax
41e5d9:	e9 10 01 00 00       	jmp    0x41e6ee
41e5de:	ff 36                	push   (%esi)
41e5e0:	e8 db bc ff ff       	call   0x41a2c0
41e5e5:	3b c3                	cmp    %ebx,%eax
41e5e7:	74 53                	je     0x41e63c
41e5e9:	8b c8                	mov    %eax,%ecx
41e5eb:	e8 13 d3 ff ff       	call   0x41b903
41e5f0:	8b f8                	mov    %eax,%edi
41e5f2:	3b fb                	cmp    %ebx,%edi
41e5f4:	74 46                	je     0x41e63c
41e5f6:	8b cf                	mov    %edi,%ecx
41e5f8:	e8 5d e5 ff ff       	call   0x41cb5a
41e5fd:	85 c0                	test   %eax,%eax
41e5ff:	74 3b                	je     0x41e63c
41e601:	39 5f 50             	cmp    %ebx,0x50(%edi)
41e604:	74 36                	je     0x41e63c
41e606:	e8 f7 cb fe ff       	call   0x40b202
41e60b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41e60e:	39 59 1c             	cmp    %ebx,0x1c(%ecx)
41e611:	74 29                	je     0x41e63c
41e613:	8b 4e 04             	mov    0x4(%esi),%ecx
41e616:	81 f9 00 01 00 00    	cmp    $0x100,%ecx
41e61c:	75 06                	jne    0x41e624
41e61e:	83 7e 08 0d          	cmpl   $0xd,0x8(%esi)
41e622:	74 08                	je     0x41e62c
41e624:	81 f9 02 02 00 00    	cmp    $0x202,%ecx
41e62a:	75 10                	jne    0x41e63c
41e62c:	53                   	push   %ebx
41e62d:	68 46 e1 00 00       	push   $0xe146
41e632:	68 11 01 00 00       	push   $0x111
41e637:	ff 70 1c             	push   0x1c(%eax)
41e63a:	eb 2f                	jmp    0x41e66b
41e63c:	e8 c1 cb fe ff       	call   0x40b202
41e641:	81 3d d4 6d 43 00 33 	cmpl   $0x333,0x436dd4
41e648:	03 00 00
41e64b:	8b f8                	mov    %eax,%edi
41e64d:	73 24                	jae    0x41e673
41e64f:	3b fb                	cmp    %ebx,%edi
41e651:	74 20                	je     0x41e673
41e653:	56                   	push   %esi
41e654:	e8 9e 00 00 00       	call   0x41e6f7
41e659:	85 c0                	test   %eax,%eax
41e65b:	74 16                	je     0x41e673
41e65d:	53                   	push   %ebx
41e65e:	68 46 e1 00 00       	push   $0xe146
41e663:	68 11 01 00 00       	push   $0x111
41e668:	ff 77 1c             	push   0x1c(%edi)
41e66b:	ff 15 88 99 43 00    	call   *0x439988
41e671:	eb 6f                	jmp    0x41e6e2
41e673:	39 5d 08             	cmp    %ebx,0x8(%ebp)
41e676:	75 76                	jne    0x41e6ee
41e678:	8b 45 fc             	mov    -0x4(%ebp),%eax
41e67b:	39 58 20             	cmp    %ebx,0x20(%eax)
41e67e:	74 6e                	je     0x41e6ee
41e680:	8b 46 04             	mov    0x4(%esi),%eax
41e683:	3d 00 01 00 00       	cmp    $0x100,%eax
41e688:	72 64                	jb     0x41e6ee
41e68a:	3d 08 01 00 00       	cmp    $0x108,%eax
41e68f:	77 5d                	ja     0x41e6ee
41e691:	68 ce b1 40 00       	push   $0x40b1ce
41e696:	b9 b4 6a 43 00       	mov    $0x436ab4,%ecx
41e69b:	e8 ee 69 00 00       	call   0x42508e
41e6a0:	8b d8                	mov    %eax,%ebx
41e6a2:	83 bb bc 00 00 00 00 	cmpl   $0x0,0xbc(%ebx)
41e6a9:	75 43                	jne    0x41e6ee
41e6ab:	6a 07                	push   $0x7
41e6ad:	8d 7d e0             	lea    -0x20(%ebp),%edi
41e6b0:	59                   	pop    %ecx
41e6b1:	c7 83 bc 00 00 00 01 	movl   $0x1,0xbc(%ebx)
41e6b8:	00 00 00
41e6bb:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
41e6bd:	8b 75 fc             	mov    -0x4(%ebp),%esi
41e6c0:	8b 4e 20             	mov    0x20(%esi),%ecx
41e6c3:	e8 49 f1 ff ff       	call   0x41d811
41e6c8:	85 c0                	test   %eax,%eax
41e6ca:	74 1b                	je     0x41e6e7
41e6cc:	8b 06                	mov    (%esi),%eax
41e6ce:	8d 4d e0             	lea    -0x20(%ebp),%ecx
41e6d1:	51                   	push   %ecx
41e6d2:	8b ce                	mov    %esi,%ecx
41e6d4:	ff 50 60             	call   *0x60(%eax)
41e6d7:	85 c0                	test   %eax,%eax
41e6d9:	74 0c                	je     0x41e6e7
41e6db:	83 a3 bc 00 00 00 00 	andl   $0x0,0xbc(%ebx)
41e6e2:	6a 01                	push   $0x1
41e6e4:	58                   	pop    %eax
41e6e5:	eb 09                	jmp    0x41e6f0
41e6e7:	83 a3 bc 00 00 00 00 	andl   $0x0,0xbc(%ebx)
41e6ee:	33 c0                	xor    %eax,%eax
41e6f0:	5f                   	pop    %edi
41e6f1:	5e                   	pop    %esi
41e6f2:	5b                   	pop    %ebx
41e6f3:	c9                   	leave
41e6f4:	c2 08 00             	ret    $0x8
41e6f7:	8b 44 24 04          	mov    0x4(%esp),%eax
41e6fb:	56                   	push   %esi
41e6fc:	81 78 04 00 01 00 00 	cmpl   $0x100,0x4(%eax)
41e703:	75 37                	jne    0x41e73c
41e705:	83 78 08 70          	cmpl   $0x70,0x8(%eax)
41e709:	75 31                	jne    0x41e73c
41e70b:	8b 40 0c             	mov    0xc(%eax),%eax
41e70e:	c1 e8 10             	shr    $0x10,%eax
41e711:	f6 c4 40             	test   $0x40,%ah