46e314:	53                   	push   %ebx
46e315:	56                   	push   %esi
46e316:	57                   	push   %edi
46e317:	8b 5d 08             	mov    0x8(%ebp),%ebx
46e31a:	8d 45 0c             	lea    0xc(%ebp),%eax
46e31d:	e8 52 77 f9 ff       	call   0x405a74
46e322:	8b 45 1c             	mov    0x1c(%ebp),%eax
46e325:	8b 55 1c             	mov    0x1c(%ebp),%edx
46e328:	85 d2                	test   %edx,%edx
46e32a:	74 0d                	je     0x46e339
46e32c:	33 c9                	xor    %ecx,%ecx
46e32e:	89 4a 0c             	mov    %ecx,0xc(%edx)
46e331:	89 4a 08             	mov    %ecx,0x8(%edx)
46e334:	89 4a 04             	mov    %ecx,0x4(%edx)
46e337:	89 0a                	mov    %ecx,(%edx)
46e339:	33 c0                	xor    %eax,%eax
46e33b:	55                   	push   %ebp
46e33c:	68 e9 e3 46 00       	push   $0x46e3e9
46e341:	64 ff 30             	push   %fs:(%eax)
46e344:	64 89 20             	mov    %esp,%fs:(%eax)
46e347:	33 d2                	xor    %edx,%edx
46e349:	55                   	push   %ebp
46e34a:	68 c2 e3 46 00       	push   $0x46e3c2
46e34f:	64 ff 32             	push   %fs:(%edx)
46e352:	64 89 22             	mov    %esp,%fs:(%edx)
46e355:	8d 4d fc             	lea    -0x4(%ebp),%ecx
46e358:	8d 55 0c             	lea    0xc(%ebp),%edx
46e35b:	8b c3                	mov    %ebx,%eax
46e35d:	e8 76 f4 ff ff       	call   0x46d7d8
46e362:	84 c0                	test   %al,%al
46e364:	75 0a                	jne    0x46e370
46e366:	33 c0                	xor    %eax,%eax
46e368:	5a                   	pop    %edx
46e369:	59                   	pop    %ecx
46e36a:	59                   	pop    %ecx
46e36b:	64 89 10             	mov    %edx,%fs:(%eax)
46e36e:	eb 63                	jmp    0x46e3d3
46e370:	8b 43 1c             	mov    0x1c(%ebx),%eax
46e373:	80 78 70 00          	cmpb   $0x0,0x70(%eax)
46e377:	74 11                	je     0x46e38a
46e379:	8b 45 1c             	mov    0x1c(%ebp),%eax
46e37c:	ba 0b 00 00 00       	mov    $0xb,%edx
46e381:	b1 01                	mov    $0x1,%cl
46e383:	e8 b4 76 f9 ff       	call   0x405a3c
46e388:	eb 29                	jmp    0x46e3b3
46e38a:	f6 80 b4 00 00 00 01 	testb  $0x1,0xb4(%eax)
46e391:	74 11                	je     0x46e3a4
46e393:	8b 45 1c             	mov    0x1c(%ebp),%eax
46e396:	ba 02 00 00 00       	mov    $0x2,%edx
46e39b:	b1 01                	mov    $0x1,%cl
46e39d:	e8 9a 76 f9 ff       	call   0x405a3c
46e3a2:	eb 0f                	jmp    0x46e3b3
46e3a4:	8b 45 1c             	mov    0x1c(%ebp),%eax
46e3a7:	ba 16 00 00 00       	mov    $0x16,%edx
46e3ac:	b1 01                	mov    $0x1,%cl
46e3ae:	e8 89 76 f9 ff       	call   0x405a3c
46e3b3:	33 c0                	xor    %eax,%eax
46e3b5:	89 45 fc             	mov    %eax,-0x4(%ebp)
46e3b8:	33 c0                	xor    %eax,%eax
46e3ba:	5a                   	pop    %edx
46e3bb:	59                   	pop    %ecx
46e3bc:	59                   	pop    %ecx
46e3bd:	64 89 10             	mov    %edx,%fs:(%eax)
46e3c0:	eb 11                	jmp    0x46e3d3
46e3c2:	e9 91 5b f9 ff       	jmp    0x403f58
46e3c7:	c7 45 fc ff ff 00 80 	movl   $0x8000ffff,-0x4(%ebp)
46e3ce:	e8 ed 5e f9 ff       	call   0x4042c0
46e3d3:	33 c0                	xor    %eax,%eax
46e3d5:	5a                   	pop    %edx
46e3d6:	59                   	pop    %ecx
46e3d7:	59                   	pop    %ecx
46e3d8:	64 89 10             	mov    %edx,%fs:(%eax)
46e3db:	68 f0 e3 46 00       	push   $0x46e3f0
46e3e0:	8d 45 0c             	lea    0xc(%ebp),%eax
46e3e3:	e8 84 76 f9 ff       	call   0x405a6c
46e3e8:	c3                   	ret
46e3e9:	e9 1e 5e f9 ff       	jmp    0x40420c
46e3ee:	eb f0                	jmp    0x46e3e0
46e3f0:	8b 45 fc             	mov    -0x4(%ebp),%eax
46e3f3:	5f                   	pop    %edi
46e3f4:	5e                   	pop    %esi
46e3f5:	5b                   	pop    %ebx
46e3f6:	59                   	pop    %ecx
46e3f7:	5d                   	pop    %ebp
46e3f8:	c2 18 00             	ret    $0x18
46e3fb:	90                   	nop
46e3fc:	55                   	push   %ebp
46e3fd:	8b ec                	mov    %esp,%ebp
46e3ff:	8b 45 0c             	mov    0xc(%ebp),%eax
46e402:	8b 55 0c             	mov    0xc(%ebp),%edx
46e405:	85 d2                	test   %edx,%edx
46e407:	74 0d                	je     0x46e416
46e409:	33 c9                	xor    %ecx,%ecx
46e40b:	89 4a 0c             	mov    %ecx,0xc(%edx)
46e40e:	89 4a 08             	mov    %ecx,0x8(%edx)
46e411:	89 4a 04             	mov    %ecx,0x4(%edx)
46e414:	89 0a                	mov    %ecx,(%edx)
46e416:	b8 01 00 00 00       	mov    $0x1,%eax
46e41b:	5d                   	pop    %ebp
46e41c:	c2 08 00             	ret    $0x8
46e41f:	90                   	nop
46e420:	55                   	push   %ebp
46e421:	8b ec                	mov    %esp,%ebp
46e423:	51                   	push   %ecx
46e424:	53                   	push   %ebx
46e425:	56                   	push   %esi
46e426:	57                   	push   %edi
46e427:	8b 5d 08             	mov    0x8(%ebp),%ebx
46e42a:	8d 45 0c             	lea    0xc(%ebp),%eax
46e42d:	e8 42 76 f9 ff       	call   0x405a74
46e432:	8b 45 1c             	mov    0x1c(%ebp),%eax
46e435:	8b 55 1c             	mov    0x1c(%ebp),%edx
46e438:	85 d2                	test   %edx,%edx
46e43a:	74 0d                	je     0x46e449
46e43c:	33 c9                	xor    %ecx,%ecx
46e43e:	89 4a 0c             	mov    %ecx,0xc(%edx)
46e441:	89 4a 08             	mov    %ecx,0x8(%edx)
46e444:	89 4a 04             	mov    %ecx,0x4(%edx)
46e447:	89 0a                	mov    %ecx,(%edx)
46e449:	33 c0                	xor    %eax,%eax
46e44b:	55                   	push   %ebp
46e44c:	68 c2 e4 46 00       	push   $0x46e4c2
46e451:	64 ff 30             	push   %fs:(%eax)
46e454:	64 89 20             	mov    %esp,%fs:(%eax)
46e457:	33 c0                	xor    %eax,%eax
46e459:	55                   	push   %ebp
46e45a:	68 9b e4 46 00       	push   $0x46e49b
46e45f:	64 ff 30             	push   %fs:(%eax)
46e462:	64 89 20             	mov    %esp,%fs:(%eax)
46e465:	8d 4d fc             	lea    -0x4(%ebp),%ecx
46e468:	8d 55 0c             	lea    0xc(%ebp),%edx
46e46b:	8b c3                	mov    %ebx,%eax
46e46d:	e8 66 f3 ff ff       	call   0x46d7d8
46e472:	84 c0                	test   %al,%al
46e474:	75 0a                	jne    0x46e480
46e476:	33 c0                	xor    %eax,%eax
46e478:	5a                   	pop    %edx
46e479:	59                   	pop    %ecx
46e47a:	59                   	pop    %ecx
46e47b:	64 89 10             	mov    %edx,%fs:(%eax)
46e47e:	eb 2c                	jmp    0x46e4ac
46e480:	8b 45 1c             	mov    0x1c(%ebp),%eax
46e483:	33 d2                	xor    %edx,%edx
46e485:	b1 01                	mov    $0x1,%cl
46e487:	e8 b0 75 f9 ff       	call   0x405a3c
46e48c:	33 c0                	xor    %eax,%eax
46e48e:	89 45 fc             	mov    %eax,-0x4(%ebp)
46e491:	33 c0                	xor    %eax,%eax
46e493:	5a                   	pop    %edx
46e494:	59                   	pop    %ecx
46e495:	59                   	pop    %ecx
46e496:	64 89 10             	mov    %edx,%fs:(%eax)
46e499:	eb 11                	jmp    0x46e4ac
46e49b:	e9 b8 5a f9 ff       	jmp    0x403f58
46e4a0:	c7 45 fc ff ff 00 80 	movl   $0x8000ffff,-0x4(%ebp)
46e4a7:	e8 14 5e f9 ff       	call   0x4042c0
46e4ac:	33 c0                	xor    %eax,%eax
46e4ae:	5a                   	pop    %edx
46e4af:	59                   	pop    %ecx
46e4b0:	59                   	pop    %ecx
46e4b1:	64 89 10             	mov    %edx,%fs:(%eax)
46e4b4:	68 c9 e4 46 00       	push   $0x46e4c9
46e4b9:	8d 45 0c             	lea    0xc(%ebp),%eax
46e4bc:	e8 ab 75 f9 ff       	call   0x405a6c
46e4c1:	c3                   	ret
46e4c2:	e9 45 5d f9 ff       	jmp    0x40420c
46e4c7:	eb f0                	jmp    0x46e4b9
46e4c9:	8b 45 fc             	mov    -0x4(%ebp),%eax
46e4cc:	5f                   	pop    %edi
46e4cd:	5e                   	pop    %esi
46e4ce:	5b                   	pop    %ebx
46e4cf:	59                   	pop    %ecx
46e4d0:	5d                   	pop    %ebp
46e4d1:	c2 18 00             	ret    $0x18
46e4d4:	55                   	push   %ebp
46e4d5:	8b ec                	mov    %esp,%ebp
46e4d7:	53                   	push   %ebx
46e4d8:	8d 45 0c             	lea    0xc(%ebp),%eax
46e4db:	e8 94 75 f9 ff       	call   0x405a74
46e4e0:	8b 45 1c             	mov    0x1c(%ebp),%eax
46e4e3:	85 c0                	test   %eax,%eax
46e4e5:	74 04                	je     0x46e4eb
46e4e7:	33 d2                	xor    %edx,%edx
46e4e9:	89 10                	mov    %edx,(%eax)
46e4eb:	33 c0                	xor    %eax,%eax
46e4ed:	55                   	push   %ebp
46e4ee:	68 14 e5 46 00       	push   $0x46e514
46e4f3:	64 ff 30             	push   %fs:(%eax)
46e4f6:	64 89 20             	mov    %esp,%fs:(%eax)
46e4f9:	bb 01 00 00 00       	mov    $0x1,%ebx
46e4fe:	33 c0                	xor    %eax,%eax
46e500:	5a                   	pop    %edx
46e501:	59                   	pop    %ecx
46e502:	59                   	pop    %ecx
46e503:	64 89 10             	mov    %edx,%fs:(%eax)
46e506:	68 1b e5 46 00       	push   $0x46e51b
46e50b:	8d 45 0c             	lea    0xc(%ebp),%eax
46e50e:	e8 59 75 f9 ff       	call   0x405a6c
46e513:	c3                   	ret
46e514:	e9 f3 5c f9 ff       	jmp    0x40420c
46e519:	eb f0                	jmp    0x46e50b
46e51b:	8b c3                	mov    %ebx,%eax
46e51d:	5b                   	pop    %ebx
46e51e:	5d                   	pop    %ebp
46e51f:	c2 18 00             	ret    $0x18
46e522:	8b c0                	mov    %eax,%eax
46e524:	55                   	push   %ebp
46e525:	8b ec                	mov    %esp,%ebp
46e527:	53                   	push   %ebx
46e528:	8d 45 0c             	lea    0xc(%ebp),%eax
46e52b:	e8 44 75 f9 ff       	call   0x405a74
46e530:	33 c0                	xor    %eax,%eax
46e532:	55                   	push   %ebp
46e533:	68 59 e5 46 00       	push   $0x46e559
46e538:	64 ff 30             	push   %fs:(%eax)
46e53b:	64 89 20             	mov    %esp,%fs:(%eax)
46e53e:	bb 01 00 00 00       	mov    $0x1,%ebx
46e543:	33 c0                	xor    %eax,%eax
46e545:	5a                   	pop    %edx
46e546:	59                   	pop    %ecx
46e547:	59                   	pop    %ecx
46e548:	64 89 10             	mov    %edx,%fs:(%eax)
46e54b:	68 60 e5 46 00       	push   $0x46e560
46e550:	8d 45 0c             	lea    0xc(%ebp),%eax
46e553:	e8 14 75 f9 ff       	call   0x405a6c
46e558:	c3                   	ret
46e559:	e9 ae 5c f9 ff       	jmp    0x40420c
46e55e:	eb f0                	jmp    0x46e550
46e560:	8b c3                	mov    %ebx,%eax
46e562:	5b                   	pop    %ebx
46e563:	5d                   	pop    %ebp
46e564:	c2 18 00             	ret    $0x18
46e567:	90                   	nop
46e568:	55                   	push   %ebp
46e569:	8b ec                	mov    %esp,%ebp
46e56b:	53                   	push   %ebx
46e56c:	8d 45 0c             	lea    0xc(%ebp),%eax
46e56f:	e8 00 75 f9 ff       	call   0x405a74
46e574:	33 c0                	xor    %eax,%eax
46e576:	55                   	push   %ebp
46e577:	68 9d e5 46 00       	push   $0x46e59d
46e57c:	64 ff 30             	push   %fs:(%eax)
46e57f:	64 89 20             	mov    %esp,%fs:(%eax)
46e582:	bb 01 00 00 00       	mov    $0x1,%ebx
46e587:	33 c0                	xor    %eax,%eax
46e589:	5a                   	pop    %edx
46e58a:	59                   	pop    %ecx
46e58b:	59                   	pop    %ecx
46e58c:	64 89 10             	mov    %edx,%fs:(%eax)
46e58f:	68 a4 e5 46 00       	push   $0x46e5a4
46e594:	8d 45 0c             	lea    0xc(%ebp),%eax
46e597:	e8 d0 74 f9 ff       	call   0x405a6c
46e59c:	c3                   	ret
46e59d:	e9 6a 5c f9 ff       	jmp    0x40420c
46e5a2:	eb f0                	jmp    0x46e594
46e5a4:	8b c3                	mov    %ebx,%eax
46e5a6:	5b                   	pop    %ebx
46e5a7:	5d                   	pop    %ebp
46e5a8:	c2 18 00             	ret    $0x18
46e5ab:	90                   	nop
46e5ac:	53                   	push   %ebx
46e5ad:	56                   	push   %esi
46e5ae:	57                   	push   %edi
46e5af:	84 d2                	test   %dl,%dl
46e5b1:	74 08                	je     0x46e5bb
46e5b3:	83 c4 f0             	add    $0xfffffff0,%esp
46e5b6:	e8 21 58 f9 ff       	call   0x403ddc
46e5bb:	8b f1                	mov    %ecx,%esi
46e5bd:	8b da                	mov    %edx,%ebx
46e5bf:	8b f8                	mov    %eax,%edi
46e5c1:	33 d2                	xor    %edx,%edx
46e5c3:	8b c7                	mov    %edi,%eax
46e5c5:	e8 3e f0 ff ff       	call   0x46d608
46e5ca:	89 77 1c             	mov    %esi,0x1c(%edi)
46e5cd:	68 f8 ae 68 00       	push   $0x68aef8
46e5d2:	e8 b1 8b f9 ff       	call   0x407188
46e5d7:	8b c7                	mov    %edi,%eax
46e5d9:	84 db                	test   %bl,%bl
46e5db:	74 0f                	je     0x46e5ec
46e5dd:	e8 52 58 f9 ff       	call   0x403e34
46e5e2:	64 8f 05 00 00 00 00 	pop    %fs:0x0
46e5e9:	83 c4 0c             	add    $0xc,%esp
46e5ec:	8b c7                	mov    %edi,%eax
46e5ee:	5f                   	pop    %edi
46e5ef:	5e                   	pop    %esi
46e5f0:	5b                   	pop    %ebx
46e5f1:	c3                   	ret
46e5f2:	8b c0                	mov    %eax,%eax
46e5f4:	53                   	push   %ebx
46e5f5:	56                   	push   %esi
46e5f6:	e8 49 58 f9 ff       	call   0x403e44
46e5fb:	8b da                	mov    %edx,%ebx
46e5fd:	8b f0                	mov    %eax,%esi
46e5ff:	68 f8 ae 68 00       	push   $0x68aef8
46e604:	e8 6f 8b f9 ff       	call   0x407178
46e609:	8b 46 1c             	mov    0x1c(%esi),%eax
46e60c:	85 c0                	test   %eax,%eax
46e60e:	74 0a                	je     0x46e61a
46e610:	33 d2                	xor    %edx,%edx
46e612:	89 50 28             	mov    %edx,0x28(%eax)
46e615:	33 c0                	xor    %eax,%eax
46e617:	89 46 1c             	mov    %eax,0x1c(%esi)
46e61a:	8b d3                	mov    %ebx,%edx
46e61c:	80 e2 fc             	and    $0xfc,%dl
46e61f:	8b c6                	mov    %esi,%eax
46e621:	e8 7a f0 ff ff       	call   0x46d6a0
46e626:	84 db                	test   %bl,%bl
46e628:	7e 07                	jle    0x46e631
46e62a:	8b c6                	mov    %esi,%eax
46e62c:	e8 fb 57 f9 ff       	call   0x403e2c
46e631:	5e                   	pop    %esi
46e632:	5b                   	pop    %ebx
46e633:	c3                   	ret
46e634:	33 d2                	xor    %edx,%edx
46e636:	89 50 1c             	mov    %edx,0x1c(%eax)
46e639:	c3                   	ret
46e63a:	8b c0                	mov    %eax,%eax
46e63c:	55                   	push   %ebp
46e63d:	8b ec                	mov    %esp,%ebp
46e63f:	6a 00                	push   $0x0
46e641:	6a 00                	push   $0x0
46e643:	6a 00                	push   $0x0
46e645:	6a 00                	push   $0x0
46e647:	53                   	push   %ebx
46e648:	56                   	push   %esi
46e649:	8b f1                	mov    %ecx,%esi
46e64b:	8b da                	mov    %edx,%ebx
46e64d:	33 d2                	xor    %edx,%edx
46e64f:	55                   	push   %ebp
46e650:	68 b2 e6 46 00       	push   $0x46e6b2
46e655:	64 ff 32             	push   %fs:(%edx)
46e658:	64 89 22             	mov    %esp,%fs:(%edx)
46e65b:	83 78 1c 00          	cmpl   $0x0,0x1c(%eax)
46e65f:	75 0a                	jne    0x46e66b
46e661:	c7 06 05 40 00 80    	movl   $0x80004005,(%esi)
46e667:	33 db                	xor    %ebx,%ebx
46e669:	eb 31                	jmp    0x46e69c
46e66b:	8b c3                	mov    %ebx,%eax
46e66d:	e8 ce 7e fa ff       	call   0x416540
46e672:	66 83 f8 03          	cmp    $0x3,%ax
46e676:	75 18                	jne    0x46e690
46e678:	8d 45 f0             	lea    -0x10(%ebp),%eax
46e67b:	33 d2                	xor    %edx,%edx
46e67d:	b1 01                	mov    $0x1,%cl
46e67f:	e8 b8 73 f9 ff       	call   0x405a3c
46e684:	8d 55 f0             	lea    -0x10(%ebp),%edx
46e687:	8b c3                	mov    %ebx,%eax
46e689:	e8 c2 73 f9 ff       	call   0x405a50
46e68e:	74 0a                	je     0x46e69a
46e690:	c7 06 57 00 07 80    	movl   $0x80070057,(%esi)