41e28d:	56                   	push   %esi
41e28e:	8b d8                	mov    %eax,%ebx
41e290:	8b 43 10             	mov    0x10(%ebx),%eax
41e293:	e8 20 02 00 00       	call   0x41e4b8
41e298:	8b 43 10             	mov    0x10(%ebx),%eax
41e29b:	66 be ef ff          	mov    $0xffef,%si
41e29f:	e8 4c 58 fe ff       	call   0x403af0
41e2a4:	5e                   	pop    %esi
41e2a5:	5b                   	pop    %ebx
41e2a6:	c3                   	ret
41e2a7:	90                   	nop
41e2a8:	53                   	push   %ebx
41e2a9:	56                   	push   %esi
41e2aa:	8b f2                	mov    %edx,%esi
41e2ac:	8b d8                	mov    %eax,%ebx
41e2ae:	8b 43 10             	mov    0x10(%ebx),%eax
41e2b1:	3b f0                	cmp    %eax,%esi
41e2b3:	74 1b                	je     0x41e2d0
41e2b5:	85 c0                	test   %eax,%eax
41e2b7:	74 07                	je     0x41e2c0
41e2b9:	8b d3                	mov    %ebx,%edx
41e2bb:	e8 b8 01 00 00       	call   0x41e478
41e2c0:	89 73 10             	mov    %esi,0x10(%ebx)
41e2c3:	85 f6                	test   %esi,%esi
41e2c5:	74 09                	je     0x41e2d0
41e2c7:	8b d3                	mov    %ebx,%edx
41e2c9:	8b c6                	mov    %esi,%eax
41e2cb:	e8 9c 01 00 00       	call   0x41e46c
41e2d0:	5e                   	pop    %esi
41e2d1:	5b                   	pop    %ebx
41e2d2:	c3                   	ret
41e2d3:	90                   	nop
41e2d4:	b0 01                	mov    $0x1,%al
41e2d6:	c3                   	ret
41e2d7:	90                   	nop
41e2d8:	55                   	push   %ebp
41e2d9:	8b ec                	mov    %esp,%ebp
41e2db:	5d                   	pop    %ebp
41e2dc:	c2 08 00             	ret    $0x8
41e2df:	90                   	nop
41e2e0:	8b 40 10             	mov    0x10(%eax),%eax
41e2e3:	8b 10                	mov    (%eax),%edx
41e2e5:	ff 52 44             	call   *0x44(%edx)
41e2e8:	c3                   	ret
41e2e9:	8d 40 00             	lea    0x0(%eax),%eax
41e2ec:	53                   	push   %ebx
41e2ed:	56                   	push   %esi
41e2ee:	84 d2                	test   %dl,%dl
41e2f0:	74 08                	je     0x41e2fa
41e2f2:	83 c4 f0             	add    $0xfffffff0,%esp
41e2f5:	e8 1e 59 fe ff       	call   0x403c18
41e2fa:	8b da                	mov    %edx,%ebx
41e2fc:	8b f0                	mov    %eax,%esi
41e2fe:	33 d2                	xor    %edx,%edx
41e300:	8b c6                	mov    %esi,%eax
41e302:	e8 c1 f6 ff ff       	call   0x41d9c8
41e307:	b2 01                	mov    $0x1,%dl
41e309:	a1 c4 57 41 00       	mov    0x4157c4,%eax
41e30e:	e8 b1 55 fe ff       	call   0x4038c4
41e313:	89 46 50             	mov    %eax,0x50(%esi)
41e316:	8b c6                	mov    %esi,%eax
41e318:	84 db                	test   %bl,%bl
41e31a:	74 0f                	je     0x41e32b
41e31c:	e8 4f 59 fe ff       	call   0x403c70
41e321:	64 8f 05 00 00 00 00 	pop    %fs:0x0
41e328:	83 c4 0c             	add    $0xc,%esp
41e32b:	8b c6                	mov    %esi,%eax
41e32d:	5e                   	pop    %esi
41e32e:	5b                   	pop    %ebx
41e32f:	c3                   	ret
41e330:	53                   	push   %ebx
41e331:	56                   	push   %esi
41e332:	57                   	push   %edi
41e333:	e8 88 59 fe ff       	call   0x403cc0
41e338:	8b da                	mov    %edx,%ebx
41e33a:	8b f8                	mov    %eax,%edi
41e33c:	8b d3                	mov    %ebx,%edx
41e33e:	80 e2 fc             	and    $0xfc,%dl
41e341:	8b c7                	mov    %edi,%eax
41e343:	e8 cc f6 ff ff       	call   0x41da14
41e348:	8b 47 30             	mov    0x30(%edi),%eax
41e34b:	85 c0                	test   %eax,%eax
41e34d:	74 07                	je     0x41e356
41e34f:	8b d7                	mov    %edi,%edx
41e351:	e8 86 f9 ff ff       	call   0x41dcdc
41e356:	83 7f 50 00          	cmpl   $0x0,0x50(%edi)
41e35a:	74 1b                	je     0x41e377
41e35c:	eb 10                	jmp    0x41e36e
41e35e:	8b c6                	mov    %esi,%eax
41e360:	e8 f3 98 ff ff       	call   0x417c58
41e365:	8b d0                	mov    %eax,%edx
41e367:	8b c7                	mov    %edi,%eax
41e369:	e8 0a 01 00 00       	call   0x41e478
41e36e:	8b 77 50             	mov    0x50(%edi),%esi
41e371:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
41e375:	7f e7                	jg     0x41e35e
41e377:	8d 47 50             	lea    0x50(%edi),%eax
41e37a:	e8 cd f9 fe ff       	call   0x40dd4c
41e37f:	84 db                	test   %bl,%bl
41e381:	7e 07                	jle    0x41e38a
41e383:	8b c7                	mov    %edi,%eax
41e385:	e8 de 58 fe ff       	call   0x403c68
41e38a:	5f                   	pop    %edi
41e38b:	5e                   	pop    %esi
41e38c:	5b                   	pop    %ebx
41e38d:	c3                   	ret
41e38e:	8b c0                	mov    %eax,%eax
41e390:	33 c0                	xor    %eax,%eax
41e392:	c3                   	ret
41e393:	90                   	nop
41e394:	c3                   	ret
41e395:	8d 40 00             	lea    0x0(%eax),%eax
41e398:	53                   	push   %ebx
41e399:	56                   	push   %esi
41e39a:	57                   	push   %edi
41e39b:	8b d9                	mov    %ecx,%ebx
41e39d:	8b f2                	mov    %edx,%esi
41e39f:	8b f8                	mov    %eax,%edi
41e3a1:	8b cb                	mov    %ebx,%ecx
41e3a3:	8b d6                	mov    %esi,%edx
41e3a5:	8b c7                	mov    %edi,%eax
41e3a7:	e8 4c f9 ff ff       	call   0x41dcf8
41e3ac:	80 fb 01             	cmp    $0x1,%bl
41e3af:	75 0a                	jne    0x41e3bb
41e3b1:	3b 77 30             	cmp    0x30(%edi),%esi
41e3b4:	75 05                	jne    0x41e3bb
41e3b6:	33 c0                	xor    %eax,%eax
41e3b8:	89 47 30             	mov    %eax,0x30(%edi)
41e3bb:	5f                   	pop    %edi
41e3bc:	5e                   	pop    %esi
41e3bd:	5b                   	pop    %ebx
41e3be:	c3                   	ret
41e3bf:	90                   	nop
41e3c0:	c3                   	ret
41e3c1:	8d 40 00             	lea    0x0(%eax),%eax
41e3c4:	53                   	push   %ebx
41e3c5:	66 83 78 42 00       	cmpw   $0x0,0x42(%eax)
41e3ca:	74 0e                	je     0x41e3da
41e3cc:	8b d8                	mov    %eax,%ebx
41e3ce:	8b d0                	mov    %eax,%edx
41e3d0:	8b 43 44             	mov    0x44(%ebx),%eax
41e3d3:	ff 53 40             	call   *0x40(%ebx)
41e3d6:	b0 01                	mov    $0x1,%al
41e3d8:	5b                   	pop    %ebx
41e3d9:	c3                   	ret
41e3da:	33 c0                	xor    %eax,%eax
41e3dc:	5b                   	pop    %ebx
41e3dd:	c3                   	ret
41e3de:	8b c0                	mov    %eax,%eax
41e3e0:	53                   	push   %ebx
41e3e1:	66 83 78 4a 00       	cmpw   $0x0,0x4a(%eax)
41e3e6:	74 0e                	je     0x41e3f6
41e3e8:	8b d8                	mov    %eax,%ebx
41e3ea:	8b d0                	mov    %eax,%edx
41e3ec:	8b 43 4c             	mov    0x4c(%ebx),%eax
41e3ef:	ff 53 48             	call   *0x48(%ebx)
41e3f2:	b0 01                	mov    $0x1,%al
41e3f4:	5b                   	pop    %ebx
41e3f5:	c3                   	ret
41e3f6:	33 c0                	xor    %eax,%eax
41e3f8:	5b                   	pop    %ebx
41e3f9:	c3                   	ret
41e3fa:	8b c0                	mov    %eax,%eax
41e3fc:	55                   	push   %ebp
41e3fd:	8b ec                	mov    %esp,%ebp
41e3ff:	53                   	push   %ebx
41e400:	56                   	push   %esi
41e401:	57                   	push   %edi
41e402:	8b d8                	mov    %eax,%ebx
41e404:	8b 45 08             	mov    0x8(%ebp),%eax
41e407:	3b 43 40             	cmp    0x40(%ebx),%eax
41e40a:	75 08                	jne    0x41e414
41e40c:	8b 45 0c             	mov    0xc(%ebp),%eax
41e40f:	3b 43 44             	cmp    0x44(%ebx),%eax
41e412:	74 3a                	je     0x41e44e
41e414:	8b 43 50             	mov    0x50(%ebx),%eax
41e417:	8b 70 08             	mov    0x8(%eax),%esi
41e41a:	4e                   	dec    %esi
41e41b:	85 f6                	test   %esi,%esi
41e41d:	7c 1c                	jl     0x41e43b
41e41f:	46                   	inc    %esi
41e420:	33 ff                	xor    %edi,%edi
41e422:	ff 75 0c             	push   0xc(%ebp)
41e425:	ff 75 08             	push   0x8(%ebp)
41e428:	8b d7                	mov    %edi,%edx
41e42a:	8b 43 50             	mov    0x50(%ebx),%eax
41e42d:	e8 3e 97 ff ff       	call   0x417b70
41e432:	8b 10                	mov    (%eax),%edx
41e434:	ff 52 10             	call   *0x10(%edx)
41e437:	47                   	inc    %edi
41e438:	4e                   	dec    %esi
41e439:	75 e7                	jne    0x41e422
41e43b:	8b 45 08             	mov    0x8(%ebp),%eax
41e43e:	89 43 40             	mov    %eax,0x40(%ebx)
41e441:	8b 45 0c             	mov    0xc(%ebp),%eax
41e444:	89 43 44             	mov    %eax,0x44(%ebx)
41e447:	8b c3                	mov    %ebx,%eax
41e449:	8b 10                	mov    (%eax),%edx
41e44b:	ff 52 30             	call   *0x30(%edx)
41e44e:	5f                   	pop    %edi
41e44f:	5e                   	pop    %esi
41e450:	5b                   	pop    %ebx
41e451:	5d                   	pop    %ebp
41e452:	c2 08 00             	ret    $0x8
41e455:	8d 40 00             	lea    0x0(%eax),%eax
41e458:	53                   	push   %ebx
41e459:	66 83 78 3a 00       	cmpw   $0x0,0x3a(%eax)
41e45e:	74 0a                	je     0x41e46a
41e460:	8b d8                	mov    %eax,%ebx
41e462:	8b d0                	mov    %eax,%edx
41e464:	8b 43 3c             	mov    0x3c(%ebx),%eax
41e467:	ff 53 38             	call   *0x38(%ebx)
41e46a:	5b                   	pop    %ebx
41e46b:	c3                   	ret
41e46c:	89 42 10             	mov    %eax,0x10(%edx)
41e46f:	8b 40 50             	mov    0x50(%eax),%eax
41e472:	e8 99 95 ff ff       	call   0x417a10
41e477:	c3                   	ret
41e478:	53                   	push   %ebx
41e479:	56                   	push   %esi
41e47a:	57                   	push   %edi
41e47b:	55                   	push   %ebp
41e47c:	8b ea                	mov    %edx,%ebp
41e47e:	8b f8                	mov    %eax,%edi
41e480:	8b 47 50             	mov    0x50(%edi),%eax
41e483:	8b 70 08             	mov    0x8(%eax),%esi
41e486:	4e                   	dec    %esi
41e487:	85 f6                	test   %esi,%esi
41e489:	7c 26                	jl     0x41e4b1
41e48b:	46                   	inc    %esi
41e48c:	33 db                	xor    %ebx,%ebx
41e48e:	8b 47 50             	mov    0x50(%edi),%eax
41e491:	8b d3                	mov    %ebx,%edx
41e493:	e8 d8 96 ff ff       	call   0x417b70
41e498:	3b e8                	cmp    %eax,%ebp
41e49a:	75 11                	jne    0x41e4ad
41e49c:	33 c0                	xor    %eax,%eax
41e49e:	89 45 10             	mov    %eax,0x10(%ebp)
41e4a1:	8b 47 50             	mov    0x50(%edi),%eax
41e4a4:	8b d3                	mov    %ebx,%edx
41e4a6:	e8 b1 95 ff ff       	call   0x417a5c
41e4ab:	eb 04                	jmp    0x41e4b1
41e4ad:	43                   	inc    %ebx
41e4ae:	4e                   	dec    %esi
41e4af:	75 dd                	jne    0x41e48e
41e4b1:	5d                   	pop    %ebp
41e4b2:	5f                   	pop    %edi
41e4b3:	5e                   	pop    %esi
41e4b4:	5b                   	pop    %ebx
41e4b5:	c3                   	ret
41e4b6:	8b c0                	mov    %eax,%eax
41e4b8:	53                   	push   %ebx
41e4b9:	56                   	push   %esi
41e4ba:	8b f2                	mov    %edx,%esi
41e4bc:	8b d8                	mov    %eax,%ebx
41e4be:	8b 43 30             	mov    0x30(%ebx),%eax
41e4c1:	3b f0                	cmp    %eax,%esi
41e4c3:	74 1b                	je     0x41e4e0
41e4c5:	85 c0                	test   %eax,%eax
41e4c7:	74 07                	je     0x41e4d0
41e4c9:	8b d3                	mov    %ebx,%edx
41e4cb:	e8 0c f8 ff ff       	call   0x41dcdc
41e4d0:	8b c6                	mov    %esi,%eax
41e4d2:	89 43 30             	mov    %eax,0x30(%ebx)
41e4d5:	85 c0                	test   %eax,%eax
41e4d7:	74 07                	je     0x41e4e0
41e4d9:	8b d3                	mov    %ebx,%edx
41e4db:	e8 bc f5 ff ff       	call   0x41da9c
41e4e0:	5e                   	pop    %esi
41e4e1:	5b                   	pop    %ebx
41e4e2:	c3                   	ret
41e4e3:	90                   	nop
41e4e4:	55                   	push   %ebp
41e4e5:	8b ec                	mov    %esp,%ebp
41e4e7:	53                   	push   %ebx
41e4e8:	56                   	push   %esi
41e4e9:	57                   	push   %edi
41e4ea:	84 d2                	test   %dl,%dl
41e4ec:	74 08                	je     0x41e4f6
41e4ee:	83 c4 f0             	add    $0xfffffff0,%esp
41e4f1:	e8 22 57 fe ff       	call   0x403c18
41e4f6:	8b f1                	mov    %ecx,%esi
41e4f8:	8b da                	mov    %edx,%ebx
41e4fa:	8b f8                	mov    %eax,%edi
41e4fc:	33 d2                	xor    %edx,%edx
41e4fe:	8b c7                	mov    %edi,%eax
41e500:	e8 bf 53 fe ff       	call   0x4038c4
41e505:	89 77 0c             	mov    %esi,0xc(%edi)
41e508:	0f b6 45 08          	movzbl 0x8(%ebp),%eax
41e50c:	88 47 10             	mov    %al,0x10(%edi)
41e50f:	8b c7                	mov    %edi,%eax
41e511:	84 db                	test   %bl,%bl
41e513:	74 0f                	je     0x41e524
41e515:	e8 56 57 fe ff       	call   0x403c70
41e51a:	64 8f 05 00 00 00 00 	pop    %fs:0x0
41e521:	83 c4 0c             	add    $0xc,%esp
41e524:	8b c7                	mov    %edi,%eax
41e526:	5f                   	pop    %edi
41e527:	5e                   	pop    %esi
41e528:	5b                   	pop    %ebx
41e529:	5d                   	pop    %ebp
41e52a:	c2 04 00             	ret    $0x4
41e52d:	8d 40 00             	lea    0x0(%eax),%eax
41e530:	53                   	push   %ebx
41e531:	56                   	push   %esi
41e532:	e8 89 57 fe ff       	call   0x403cc0
41e537:	8b da                	mov    %edx,%ebx
41e539:	8b f0                	mov    %eax,%esi
41e53b:	80 7e 10 01          	cmpb   $0x1,0x10(%esi)
41e53f:	75 0d                	jne    0x41e54e
41e541:	8b 46 0c             	mov    0xc(%esi),%eax
41e544:	e8 ab 53 fe ff       	call   0x4038f4
41e549:	33 c0                	xor    %eax,%eax
41e54b:	89 46 0c             	mov    %eax,0xc(%esi)
41e54e:	8b d3                	mov    %ebx,%edx
41e550:	80 e2 fc             	and    $0xfc,%dl
41e553:	8b c6                	mov    %esi,%eax
41e555:	e8 8a 53 fe ff       	call   0x4038e4
41e55a:	84 db                	test   %bl,%bl
41e55c:	7e 07                	jle    0x41e565
41e55e:	8b c6                	mov    %esi,%eax
41e560:	e8 03 57 fe ff       	call   0x403c68
41e565:	5e                   	pop    %esi
41e566:	5b                   	pop    %ebx
41e567:	c3                   	ret
41e568:	55                   	push   %ebp
41e569:	8b ec                	mov    %esp,%ebp
41e56b:	53                   	push   %ebx
41e56c:	56                   	push   %esi
41e56d:	57                   	push   %edi
41e56e:	8b 55 0c             	mov    0xc(%ebp),%edx
41e571:	8b 45 08             	mov    0x8(%ebp),%eax
41e574:	33 c9                	xor    %ecx,%ecx
41e576:	55                   	push   %ebp
41e577:	68 b7 e5 41 00       	push   $0x41e5b7
41e57c:	64 ff 31             	push   %fs:(%ecx)
41e57f:	64 89 21             	mov    %esp,%fs:(%ecx)
41e582:	85 d2                	test   %edx,%edx
41e584:	75 0f                	jne    0x41e595
41e586:	bb 09 00 03 80       	mov    $0x80030009,%ebx
41e58b:	33 c0                	xor    %eax,%eax
41e58d:	5a                   	pop    %edx
41e58e:	59                   	pop    %ecx
41e58f:	59                   	pop    %ecx
41e590:	64 89 10             	mov    %edx,%fs:(%eax)
41e593:	eb 31                	jmp    0x41e5c6
41e595:	8b 40 0c             	mov    0xc(%eax),%eax
41e598:	8b 4d 10             	mov    0x10(%ebp),%ecx
41e59b:	8b 18                	mov    (%eax),%ebx
41e59d:	ff 53 0c             	call   *0xc(%ebx)