41b363:	c1 e8 06             	shr    $0x6,%eax
41b366:	83 e0 01             	and    $0x1,%eax
41b369:	50                   	push   %eax
41b36a:	8b c3                	mov    %ebx,%eax
41b36c:	c1 e8 07             	shr    $0x7,%eax
41b36f:	83 e0 01             	and    $0x1,%eax
41b372:	50                   	push   %eax
41b373:	8b c3                	mov    %ebx,%eax
41b375:	c1 e8 1a             	shr    $0x1a,%eax
41b378:	83 e0 01             	and    $0x1,%eax
41b37b:	50                   	push   %eax
41b37c:	8b c3                	mov    %ebx,%eax
41b37e:	c1 e8 1b             	shr    $0x1b,%eax
41b381:	83 e0 01             	and    $0x1,%eax
41b384:	50                   	push   %eax
41b385:	8b c3                	mov    %ebx,%eax
41b387:	c1 e8 1c             	shr    $0x1c,%eax
41b38a:	83 e0 01             	and    $0x1,%eax
41b38d:	50                   	push   %eax
41b38e:	8b c3                	mov    %ebx,%eax
41b390:	c1 e8 1d             	shr    $0x1d,%eax
41b393:	83 e0 01             	and    $0x1,%eax
41b396:	50                   	push   %eax
41b397:	8b c3                	mov    %ebx,%eax
41b399:	c1 e8 1e             	shr    $0x1e,%eax
41b39c:	83 e0 01             	and    $0x1,%eax
41b39f:	50                   	push   %eax
41b3a0:	8b c3                	mov    %ebx,%eax
41b3a2:	c1 e8 1f             	shr    $0x1f,%eax
41b3a5:	50                   	push   %eax
41b3a6:	ff 75 0c             	push   0xc(%ebp)
41b3a9:	56                   	push   %esi
41b3aa:	68 f0 cd 40 00       	push   $0x40cdf0
41b3af:	ff 15 74 23 45 00    	call   *0x452374
41b3b5:	83 c4 48             	add    $0x48,%esp
41b3b8:	3b 77 24             	cmp    0x24(%edi),%esi
41b3bb:	0f 85 33 fd ff ff    	jne    0x41b0f4
41b3c1:	6a 0a                	push   $0xa
41b3c3:	68 34 2b 40 00       	push   $0x402b34
41b3c8:	ff 15 74 23 45 00    	call   *0x452374
41b3ce:	83 c4 08             	add    $0x8,%esp
41b3d1:	e9 1e fd ff ff       	jmp    0x41b0f4
41b3d6:	cc                   	int3
41b3d7:	cc                   	int3
41b3d8:	cc                   	int3
41b3d9:	cc                   	int3
41b3da:	cc                   	int3
41b3db:	cc                   	int3
41b3dc:	cc                   	int3
41b3dd:	cc                   	int3
41b3de:	cc                   	int3
41b3df:	cc                   	int3
41b3e0:	8b ff                	mov    %edi,%edi
41b3e2:	55                   	push   %ebp
41b3e3:	8b ec                	mov    %esp,%ebp
41b3e5:	53                   	push   %ebx
41b3e6:	56                   	push   %esi
41b3e7:	57                   	push   %edi
41b3e8:	8b 7d 08             	mov    0x8(%ebp),%edi
41b3eb:	be 01 00 00 00       	mov    $0x1,%esi
41b3f0:	0f b7 47 02          	movzwl 0x2(%edi),%eax
41b3f4:	83 c0 be             	add    $0xffffffbe,%eax
41b3f7:	83 f8 36             	cmp    $0x36,%eax
41b3fa:	0f 87 77 01 00 00    	ja     0x41b577
41b400:	0f b6 80 c4 b5 41 00 	movzbl 0x41b5c4(%eax),%eax
41b407:	ff 24 85 a0 b5 41 00 	jmp    *0x41b5a0(,%eax,4)
41b40e:	8b 55 0c             	mov    0xc(%ebp),%edx
41b411:	8d 4f 04             	lea    0x4(%edi),%ecx
41b414:	6a 00                	push   $0x0
41b416:	68 a0 d2 40 00       	push   $0x40d2a0
41b41b:	8d 52 18             	lea    0x18(%edx),%edx
41b41e:	e8 7d f9 ff ff       	call   0x41ada0
41b423:	5f                   	pop    %edi
41b424:	8b f0                	mov    %eax,%esi
41b426:	5e                   	pop    %esi
41b427:	5b                   	pop    %ebx
41b428:	5d                   	pop    %ebp
41b429:	c2 08 00             	ret    $0x8
41b42c:	8b cf                	mov    %edi,%ecx
41b42e:	33 f6                	xor    %esi,%esi
41b430:	e8 7b fa ff ff       	call   0x41aeb0
41b435:	85 c0                	test   %eax,%eax
41b437:	0f 84 5a 01 00 00    	je     0x41b597
41b43d:	8b 55 0c             	mov    0xc(%ebp),%edx
41b440:	8d 4f 08             	lea    0x8(%edi),%ecx
41b443:	be 01 00 00 00       	mov    $0x1,%esi
41b448:	8d 52 78             	lea    0x78(%edx),%edx
41b44b:	e8 a0 fa ff ff       	call   0x41aef0
41b450:	85 c0                	test   %eax,%eax
41b452:	0f 89 3f 01 00 00    	jns    0x41b597
41b458:	6a 0a                	push   $0xa
41b45a:	6a 0a                	push   $0xa
41b45c:	68 50 46 40 00       	push   $0x404650
41b461:	68 8c c3 40 00       	push   $0x40c38c
41b466:	ff 15 74 23 45 00    	call   *0x452374
41b46c:	83 c4 10             	add    $0x10,%esp
41b46f:	33 f6                	xor    %esi,%esi
41b471:	8b c6                	mov    %esi,%eax
41b473:	5f                   	pop    %edi
41b474:	5e                   	pop    %esi
41b475:	5b                   	pop    %ebx
41b476:	5d                   	pop    %ebp
41b477:	c2 08 00             	ret    $0x8
41b47a:	8b 45 0c             	mov    0xc(%ebp),%eax
41b47d:	5f                   	pop    %edi
41b47e:	83 48 30 08          	orl    $0x8,0x30(%eax)
41b482:	8b c6                	mov    %esi,%eax
41b484:	5e                   	pop    %esi
41b485:	5b                   	pop    %ebx
41b486:	5d                   	pop    %ebp
41b487:	c2 08 00             	ret    $0x8
41b48a:	8b 45 0c             	mov    0xc(%ebp),%eax
41b48d:	5f                   	pop    %edi
41b48e:	83 48 30 04          	orl    $0x4,0x30(%eax)
41b492:	8b c6                	mov    %esi,%eax
41b494:	5e                   	pop    %esi
41b495:	5b                   	pop    %ebx
41b496:	5d                   	pop    %ebp
41b497:	c2 08 00             	ret    $0x8
41b49a:	8b 55 0c             	mov    0xc(%ebp),%edx
41b49d:	8d 4f 04             	lea    0x4(%edi),%ecx
41b4a0:	6a 00                	push   $0x0
41b4a2:	68 48 ca 40 00       	push   $0x40ca48
41b4a7:	8d 52 14             	lea    0x14(%edx),%edx
41b4aa:	e8 f1 f8 ff ff       	call   0x41ada0
41b4af:	5f                   	pop    %edi
41b4b0:	8b f0                	mov    %eax,%esi
41b4b2:	5e                   	pop    %esi
41b4b3:	5b                   	pop    %ebx
41b4b4:	5d                   	pop    %ebp
41b4b5:	c2 08 00             	ret    $0x8
41b4b8:	8d 47 04             	lea    0x4(%edi),%eax
41b4bb:	50                   	push   %eax
41b4bc:	ff 15 ac 22 45 00    	call   *0x4522ac
41b4c2:	8b 4d 0c             	mov    0xc(%ebp),%ecx
41b4c5:	83 c4 04             	add    $0x4,%esp
41b4c8:	89 41 48             	mov    %eax,0x48(%ecx)
41b4cb:	85 c0                	test   %eax,%eax
41b4cd:	0f 8f c4 00 00 00    	jg     0x41b597
41b4d3:	6a 0a                	push   $0xa
41b4d5:	6a 0a                	push   $0xa
41b4d7:	68 b0 42 40 00       	push   $0x4042b0
41b4dc:	68 8c c3 40 00       	push   $0x40c38c
41b4e1:	ff 15 74 23 45 00    	call   *0x452374
41b4e7:	83 c4 10             	add    $0x10,%esp
41b4ea:	33 f6                	xor    %esi,%esi
41b4ec:	8b c6                	mov    %esi,%eax
41b4ee:	5f                   	pop    %edi
41b4ef:	5e                   	pop    %esi
41b4f0:	5b                   	pop    %ebx
41b4f1:	5d                   	pop    %ebp
41b4f2:	c2 08 00             	ret    $0x8
41b4f5:	8d 47 04             	lea    0x4(%edi),%eax
41b4f8:	50                   	push   %eax
41b4f9:	ff 15 ac 22 45 00    	call   *0x4522ac
41b4ff:	8b 4d 0c             	mov    0xc(%ebp),%ecx
41b502:	83 c4 04             	add    $0x4,%esp
41b505:	89 41 4c             	mov    %eax,0x4c(%ecx)
41b508:	85 c0                	test   %eax,%eax
41b50a:	0f 8f 87 00 00 00    	jg     0x41b597
41b510:	6a 0a                	push   $0xa
41b512:	6a 0a                	push   $0xa
41b514:	68 00 43 40 00       	push   $0x404300
41b519:	68 8c c3 40 00       	push   $0x40c38c
41b51e:	ff 15 74 23 45 00    	call   *0x452374
41b524:	83 c4 10             	add    $0x10,%esp
41b527:	33 f6                	xor    %esi,%esi
41b529:	8b c6                	mov    %esi,%eax
41b52b:	5f                   	pop    %edi
41b52c:	5e                   	pop    %esi
41b52d:	5b                   	pop    %ebx
41b52e:	5d                   	pop    %ebp
41b52f:	c2 08 00             	ret    $0x8
41b532:	8b 5d 0c             	mov    0xc(%ebp),%ebx
41b535:	8d 47 04             	lea    0x4(%edi),%eax
41b538:	83 c3 60             	add    $0x60,%ebx
41b53b:	53                   	push   %ebx
41b53c:	68 fc cc 40 00       	push   $0x40ccfc
41b541:	50                   	push   %eax
41b542:	ff 15 f4 22 45 00    	call   *0x4522f4
41b548:	83 c4 0c             	add    $0xc,%esp
41b54b:	83 f8 01             	cmp    $0x1,%eax
41b54e:	75 05                	jne    0x41b555
41b550:	83 3b 00             	cmpl   $0x0,(%ebx)
41b553:	7d 42                	jge    0x41b597
41b555:	6a 0a                	push   $0xa
41b557:	6a 0a                	push   $0xa
41b559:	68 e0 45 40 00       	push   $0x4045e0
41b55e:	68 8c c3 40 00       	push   $0x40c38c
41b563:	ff 15 74 23 45 00    	call   *0x452374
41b569:	83 c4 10             	add    $0x10,%esp
41b56c:	33 f6                	xor    %esi,%esi
41b56e:	8b c6                	mov    %esi,%eax
41b570:	5f                   	pop    %edi
41b571:	5e                   	pop    %esi
41b572:	5b                   	pop    %ebx
41b573:	5d                   	pop    %ebp
41b574:	c2 08 00             	ret    $0x8
41b577:	57                   	push   %edi
41b578:	68 d0 41 40 00       	push   $0x4041d0
41b57d:	ff 15 74 23 45 00    	call   *0x452374
41b583:	6a 0a                	push   $0xa
41b585:	6a 0a                	push   $0xa
41b587:	68 b0 c3 40 00       	push   $0x40c3b0
41b58c:	ff 15 74 23 45 00    	call   *0x452374
41b592:	83 c4 14             	add    $0x14,%esp
41b595:	33 f6                	xor    %esi,%esi
41b597:	5f                   	pop    %edi
41b598:	8b c6                	mov    %esi,%eax
41b59a:	5e                   	pop    %esi
41b59b:	5b                   	pop    %ebx
41b59c:	5d                   	pop    %ebp
41b59d:	c2 08 00             	ret    $0x8
41b5a0:	0e                   	push   %cs
41b5a1:	b4 41                	mov    $0x41,%ah
41b5a3:	00 32                	add    %dh,(%edx)
41b5a5:	b5 41                	mov    $0x41,%ch
41b5a7:	00 2c b4             	add    %ch,(%esp,%esi,4)
41b5aa:	41                   	inc    %ecx
41b5ab:	00 7a b4             	add    %bh,-0x4c(%edx)
41b5ae:	41                   	inc    %ecx
41b5af:	00 8a b4 41 00 9a    	add    %cl,-0x65ffbe4c(%edx)
41b5b5:	b4 41                	mov    $0x41,%ah
41b5b7:	00 b8 b4 41 00 f5    	add    %bh,-0xaffbe4c(%eax)
41b5bd:	b4 41                	mov    $0x41,%ah
41b5bf:	00 77 b5             	add    %dh,-0x4b(%edi)
41b5c2:	41                   	inc    %ecx
41b5c3:	00 00                	add    %al,(%eax)
41b5c5:	01 08                	add    %ecx,(%eax)
41b5c7:	02 08                	add    (%eax),%cl
41b5c9:	08 08                	or     %cl,(%eax)
41b5cb:	08 08                	or     %cl,(%eax)
41b5cd:	08 08                	or     %cl,(%eax)
41b5cf:	08 03                	or     %al,(%ebx)
41b5d1:	08 04 08             	or     %al,(%eax,%ecx,1)
41b5d4:	08 08                	or     %cl,(%eax)
41b5d6:	05 08 08 06 07       	add    $0x7060808,%eax
41b5db:	08 08                	or     %cl,(%eax)
41b5dd:	08 08                	or     %cl,(%eax)
41b5df:	08 08                	or     %cl,(%eax)
41b5e1:	08 08                	or     %cl,(%eax)
41b5e3:	08 00                	or     %al,(%eax)
41b5e5:	01 08                	add    %ecx,(%eax)
41b5e7:	02 08                	add    (%eax),%cl
41b5e9:	08 08                	or     %cl,(%eax)
41b5eb:	08 08                	or     %cl,(%eax)
41b5ed:	08 08                	or     %cl,(%eax)
41b5ef:	08 03                	or     %al,(%ebx)
41b5f1:	08 04 08             	or     %al,(%eax,%ecx,1)
41b5f4:	08 08                	or     %cl,(%eax)
41b5f6:	05 08 08 06 07       	add    $0x7060808,%eax
41b5fb:	cc                   	int3
41b5fc:	cc                   	int3
41b5fd:	cc                   	int3
41b5fe:	cc                   	int3
41b5ff:	cc                   	int3
41b600:	8b ff                	mov    %edi,%edi
41b602:	55                   	push   %ebp
41b603:	8b ec                	mov    %esp,%ebp
41b605:	83 ec 0c             	sub    $0xc,%esp
41b608:	53                   	push   %ebx
41b609:	8b 5d 08             	mov    0x8(%ebp),%ebx
41b60c:	56                   	push   %esi
41b60d:	57                   	push   %edi
41b60e:	be 01 00 00 00       	mov    $0x1,%esi
41b613:	0f b7 43 02          	movzwl 0x2(%ebx),%eax
41b617:	83 c0 bf             	add    $0xffffffbf,%eax
41b61a:	83 f8 35             	cmp    $0x35,%eax
41b61d:	0f 87 b6 04 00 00    	ja     0x41bad9
41b623:	0f b6 80 3c bb 41 00 	movzbl 0x41bb3c(%eax),%eax
41b62a:	ff 24 85 04 bb 41 00 	jmp    *0x41bb04(,%eax,4)
41b631:	8b 45 0c             	mov    0xc(%ebp),%eax
41b634:	83 48 38 04          	orl    $0x4,0x38(%eax)
41b638:	8b c6                	mov    %esi,%eax
41b63a:	5f                   	pop    %edi
41b63b:	5e                   	pop    %esi
41b63c:	5b                   	pop    %ebx
41b63d:	8b e5                	mov    %ebp,%esp
41b63f:	5d                   	pop    %ebp
41b640:	c2 08 00             	ret    $0x8
41b643:	8b cb                	mov    %ebx,%ecx
41b645:	e8 66 f8 ff ff       	call   0x41aeb0
41b64a:	85 c0                	test   %eax,%eax
41b64c:	74 3a                	je     0x41b688
41b64e:	8b 55 0c             	mov    0xc(%ebp),%edx
41b651:	8d 4b 08             	lea    0x8(%ebx),%ecx
41b654:	8d 52 78             	lea    0x78(%edx),%edx
41b657:	e8 94 f8 ff ff       	call   0x41aef0
41b65c:	85 c0                	test   %eax,%eax
41b65e:	0f 89 95 04 00 00    	jns    0x41baf9
41b664:	6a 0a                	push   $0xa
41b666:	6a 0a                	push   $0xa
41b668:	68 50 46 40 00       	push   $0x404650
41b66d:	68 8c c3 40 00       	push   $0x40c38c
41b672:	ff 15 74 23 45 00    	call   *0x452374
41b678:	83 c4 10             	add    $0x10,%esp
41b67b:	33 f6                	xor    %esi,%esi
41b67d:	8b c6                	mov    %esi,%eax
41b67f:	5f                   	pop    %edi
41b680:	5e                   	pop    %esi
41b681:	5b                   	pop    %ebx
41b682:	8b e5                	mov    %ebp,%esp
41b684:	5d                   	pop    %ebp
41b685:	c2 08 00             	ret    $0x8
41b688:	8b 45 0c             	mov    0xc(%ebp),%eax
41b68b:	83 60 38 bf          	andl   $0xffffffbf,0x38(%eax)
41b68f:	8b c6                	mov    %esi,%eax
41b691:	5f                   	pop    %edi
41b692:	5e                   	pop    %esi
41b693:	5b                   	pop    %ebx
41b694:	8b e5                	mov    %ebp,%esp
41b696:	5d                   	pop    %ebp
41b697:	c2 08 00             	ret    $0x8
41b69a:	8b 45 0c             	mov    0xc(%ebp),%eax
41b69d:	81 48 38 80 00 00 00 	orl    $0x80,0x38(%eax)
41b6a4:	81 48 30 00 00 40 00 	orl    $0x400000,0x30(%eax)
41b6ab:	8b c6                	mov    %esi,%eax
41b6ad:	5f                   	pop    %edi
41b6ae:	5e                   	pop    %esi
41b6af:	5b                   	pop    %ebx
41b6b0:	8b e5                	mov    %ebp,%esp
41b6b2:	5d                   	pop    %ebp
41b6b3:	c2 08 00             	ret    $0x8
41b6b6:	8b 45 0c             	mov    0xc(%ebp),%eax
41b6b9:	83 c3 04             	add    $0x4,%ebx
41b6bc:	8b 0d 38 f2 40 00    	mov    0x40f238,%ecx
41b6c2:	89 4d f8             	mov    %ecx,-0x8(%ebp)
41b6c5:	83 48 38 08          	orl    $0x8,0x38(%eax)
41b6c9:	81 48 30 00 00 00 40 	orl    $0x40000000,0x30(%eax)
41b6d0:	66 83 3b 00          	cmpw   $0x0,(%ebx)
41b6d4:	8b 78 28             	mov    0x28(%eax),%edi
41b6d7:	a1 34 f2 40 00       	mov    0x40f234,%eax
41b6dc:	89 45 f4             	mov    %eax,-0xc(%ebp)
41b6df:	75 08                	jne    0x41b6e9
41b6e1:	89 47 0c             	mov    %eax,0xc(%edi)
41b6e4:	89 4f 10             	mov    %ecx,0x10(%edi)
41b6e7:	eb 39                	jmp    0x41b722
41b6e9:	8d 45 f8             	lea    -0x8(%ebp),%eax
41b6ec:	50                   	push   %eax
41b6ed:	68 c0 d2 40 00       	push   $0x40d2c0
41b6f2:	53                   	push   %ebx
41b6f3:	ff 15 f4 22 45 00    	call   *0x4522f4
41b6f9:	83 c4 0c             	add    $0xc,%esp
41b6fc:	83 f8 01             	cmp    $0x1,%eax
41b6ff:	75 08                	jne    0x41b709
41b701:	8b 45 f8             	mov    -0x8(%ebp),%eax
41b704:	89 47 10             	mov    %eax,0x10(%edi)
41b707:	eb 19                	jmp    0x41b722
41b709:	6a 0a                	push   $0xa
41b70b:	6a 0a                	push   $0xa