44b34b:	8b ce                	mov    %esi,%ecx
44b34d:	8b d6                	mov    %esi,%edx
44b34f:	8d 41 02             	lea    0x2(%ecx),%eax
44b352:	89 85 b0 f1 ff ff    	mov    %eax,-0xe50(%ebp)
44b358:	66 8b 01             	mov    (%ecx),%ax
44b35b:	83 c1 02             	add    $0x2,%ecx
44b35e:	66 3b 85 c4 f1 ff ff 	cmp    -0xe3c(%ebp),%ax
44b365:	75 f1                	jne    0x44b358
44b367:	2b 8d b0 f1 ff ff    	sub    -0xe50(%ebp),%ecx
44b36d:	33 c0                	xor    %eax,%eax
44b36f:	57                   	push   %edi
44b370:	d1 f9                	sar    $1,%ecx
44b372:	52                   	push   %edx
44b373:	50                   	push   %eax
44b374:	8d 34 4e             	lea    (%esi,%ecx,2),%esi
44b377:	ff 15 a4 72 4a 00    	call   *0x4a72a4
44b37d:	85 c0                	test   %eax,%eax
44b37f:	0f 84 59 01 00 00    	je     0x44b4de
44b385:	33 c0                	xor    %eax,%eax
44b387:	ba 4d 5a 00 00       	mov    $0x5a4d,%edx
44b38c:	8b c8                	mov    %eax,%ecx
44b38e:	8b 07                	mov    (%edi),%eax
44b390:	89 8d 1c f2 ff ff    	mov    %ecx,-0xde4(%ebp)
44b396:	66 39 10             	cmp    %dx,(%eax)
44b399:	74 0d                	je     0x44b3a8
44b39b:	b9 7b 00 00 c0       	mov    $0xc000007b,%ecx
44b3a0:	89 8d 1c f2 ff ff    	mov    %ecx,-0xde4(%ebp)
44b3a6:	eb 48                	jmp    0x44b3f0
44b3a8:	8b 50 3c             	mov    0x3c(%eax),%edx
44b3ab:	81 fa 00 00 00 10    	cmp    $0x10000000,%edx
44b3b1:	73 e8                	jae    0x44b39b
44b3b3:	03 17                	add    (%edi),%edx
44b3b5:	3b 17                	cmp    (%edi),%edx
44b3b7:	72 e2                	jb     0x44b39b
44b3b9:	81 3a 50 45 00 00    	cmpl   $0x4550,(%edx)
44b3bf:	75 da                	jne    0x44b39b
44b3c1:	0f b7 42 18          	movzwl 0x18(%edx),%eax
44b3c5:	66 3b 85 60 f1 ff ff 	cmp    -0xea0(%ebp),%ax
44b3cc:	74 10                	je     0x44b3de
44b3ce:	66 3b 85 90 f1 ff ff 	cmp    -0xe70(%ebp),%ax
44b3d5:	74 07                	je     0x44b3de
44b3d7:	b9 0d 00 00 c0       	mov    $0xc000000d,%ecx
44b3dc:	eb c2                	jmp    0x44b3a0
44b3de:	8b 42 78             	mov    0x78(%edx),%eax
44b3e1:	89 47 08             	mov    %eax,0x8(%edi)
44b3e4:	8b 42 7c             	mov    0x7c(%edx),%eax
44b3e7:	89 47 0c             	mov    %eax,0xc(%edi)
44b3ea:	8b 42 50             	mov    0x50(%edx),%eax
44b3ed:	89 47 04             	mov    %eax,0x4(%edi)
44b3f0:	8b 46 02             	mov    0x2(%esi),%eax
44b3f3:	33 d2                	xor    %edx,%edx
44b3f5:	83 c6 06             	add    $0x6,%esi
44b3f8:	89 85 d0 f1 ff ff    	mov    %eax,-0xe30(%ebp)
44b3fe:	89 95 a0 f1 ff ff    	mov    %edx,-0xe60(%ebp)
44b404:	85 c0                	test   %eax,%eax
44b406:	74 65                	je     0x44b46d
44b408:	8b d6                	mov    %esi,%edx
44b40a:	89 b5 fc f1 ff ff    	mov    %esi,-0xe04(%ebp)
44b410:	8d 42 01             	lea    0x1(%edx),%eax
44b413:	89 85 b0 f1 ff ff    	mov    %eax,-0xe50(%ebp)
44b419:	8a 02                	mov    (%edx),%al
44b41b:	42                   	inc    %edx
44b41c:	84 c0                	test   %al,%al
44b41e:	75 f9                	jne    0x44b419
44b420:	2b 95 b0 f1 ff ff    	sub    -0xe50(%ebp),%edx
44b426:	46                   	inc    %esi
44b427:	03 f2                	add    %edx,%esi
44b429:	85 c9                	test   %ecx,%ecx
44b42b:	78 25                	js     0x44b452
44b42d:	ff b5 fc f1 ff ff    	push   -0xe04(%ebp)
44b433:	ff 37                	push   (%edi)
44b435:	ff 15 80 72 4a 00    	call   *0x4a7280
44b43b:	85 c0                	test   %eax,%eax
44b43d:	74 3a                	je     0x44b479
44b43f:	8b 8d f4 f1 ff ff    	mov    -0xe0c(%ebp),%ecx
44b445:	89 04 8d 50 00 4a 00 	mov    %eax,0x4a0050(,%ecx,4)
44b44c:	8b 8d 1c f2 ff ff    	mov    -0xde4(%ebp),%ecx
44b452:	8b 85 a0 f1 ff ff    	mov    -0xe60(%ebp),%eax
44b458:	ff 85 f4 f1 ff ff    	incl   -0xe0c(%ebp)
44b45e:	40                   	inc    %eax
44b45f:	89 85 a0 f1 ff ff    	mov    %eax,-0xe60(%ebp)
44b465:	3b 85 d0 f1 ff ff    	cmp    -0xe30(%ebp),%eax
44b46b:	72 9b                	jb     0x44b408
44b46d:	83 c7 10             	add    $0x10,%edi
44b470:	80 3e 00             	cmpb   $0x0,(%esi)
44b473:	0f 85 d2 fe ff ff    	jne    0x44b34b
44b479:	8b b5 1c f2 ff ff    	mov    -0xde4(%ebp),%esi
44b47f:	8b bd 0c f2 ff ff    	mov    -0xdf4(%ebp),%edi
44b485:	85 ff                	test   %edi,%edi
44b487:	74 11                	je     0x44b49a
44b489:	57                   	push   %edi
44b48a:	33 c0                	xor    %eax,%eax
44b48c:	50                   	push   %eax
44b48d:	ff 15 74 72 4a 00    	call   *0x4a7274
44b493:	50                   	push   %eax
44b494:	ff 15 94 72 4a 00    	call   *0x4a7294
44b49a:	85 f6                	test   %esi,%esi
44b49c:	79 54                	jns    0x44b4f2
44b49e:	33 c0                	xor    %eax,%eax
44b4a0:	8b f0                	mov    %eax,%esi
44b4a2:	8b 86 00 48 4a 00    	mov    0x4a4800(%esi),%eax
44b4a8:	85 c0                	test   %eax,%eax
44b4aa:	74 07                	je     0x44b4b3
44b4ac:	50                   	push   %eax
44b4ad:	ff 15 a8 71 4a 00    	call   *0x4a71a8
44b4b3:	83 c6 10             	add    $0x10,%esi
44b4b6:	83 fe 40             	cmp    $0x40,%esi
44b4b9:	72 e7                	jb     0x44b4a2
44b4bb:	6a 40                	push   $0x40
44b4bd:	33 c0                	xor    %eax,%eax
44b4bf:	50                   	push   %eax
44b4c0:	68 00 48 4a 00       	push   $0x4a4800
44b4c5:	e8 6f 5b 04 00       	call   0x491039
44b4ca:	83 c4 0c             	add    $0xc,%esp
44b4cd:	be 00 55 40 00       	mov    $0x405500,%esi
44b4d2:	bf 50 00 4a 00       	mov    $0x4a0050,%edi
44b4d7:	6a 2e                	push   $0x2e
44b4d9:	59                   	pop    %ecx
44b4da:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
44b4dc:	eb 1f                	jmp    0x44b4fd
44b4de:	be 7a 00 00 c0       	mov    $0xc000007a,%esi
44b4e3:	eb 9a                	jmp    0x44b47f
44b4e5:	8b bd 0c f2 ff ff    	mov    -0xdf4(%ebp),%edi
44b4eb:	be 7a 00 00 c0       	mov    $0xc000007a,%esi
44b4f0:	eb 93                	jmp    0x44b485
44b4f2:	a1 c4 65 4a 00       	mov    0x4a65c4,%eax
44b4f7:	40                   	inc    %eax
44b4f8:	a3 c4 65 4a 00       	mov    %eax,0x4a65c4
44b4fd:	33 c0                	xor    %eax,%eax
44b4ff:	bf c8 65 4a 00       	mov    $0x4a65c8,%edi
44b504:	87 07                	xchg   %eax,(%edi)
44b506:	8b 85 e8 f1 ff ff    	mov    -0xe18(%ebp),%eax
44b50c:	33 c9                	xor    %ecx,%ecx
44b50e:	8b 35 b8 00 4a 00    	mov    0x4a00b8,%esi
44b514:	41                   	inc    %ecx
44b515:	89 85 18 fd ff ff    	mov    %eax,-0x2e8(%ebp)
44b51b:	8b 85 d4 f1 ff ff    	mov    -0xe2c(%ebp),%eax
44b521:	89 85 30 fd ff ff    	mov    %eax,-0x2d0(%ebp)
44b527:	8d 85 14 fd ff ff    	lea    -0x2ec(%ebp),%eax
44b52d:	50                   	push   %eax
44b52e:	6a 04                	push   $0x4
44b530:	68 21 20 00 00       	push   $0x2021
44b535:	33 c0                	xor    %eax,%eax
44b537:	89 8d 14 fd ff ff    	mov    %ecx,-0x2ec(%ebp)
44b53d:	89 8d 1c fd ff ff    	mov    %ecx,-0x2e4(%ebp)
44b543:	89 8d 28 fd ff ff    	mov    %ecx,-0x2d8(%ebp)
44b549:	89 8d 24 fd ff ff    	mov    %ecx,-0x2dc(%ebp)
44b54f:	89 8d 2c fd ff ff    	mov    %ecx,-0x2d4(%ebp)
44b555:	8b ce                	mov    %esi,%ecx
44b557:	50                   	push   %eax
44b558:	c7 85 20 fd ff ff 91 	movl   $0x9966f291,-0x2e0(%ebp)
44b55f:	f2 66 99
44b562:	ff 15 2c 81 4a 00    	call   *0x4a812c
44b568:	ff d6                	call   *%esi
44b56a:	33 c0                	xor    %eax,%eax
44b56c:	8d 48 01             	lea    0x1(%eax),%ecx
44b56f:	f0 0f b1 0f          	lock cmpxchg %ecx,(%edi)
44b573:	85 c0                	test   %eax,%eax
44b575:	75 f3                	jne    0x44b56a
44b577:	a1 c4 65 4a 00       	mov    0x4a65c4,%eax
44b57c:	85 c0                	test   %eax,%eax
44b57e:	7e 4d                	jle    0x44b5cd
44b580:	83 e8 01             	sub    $0x1,%eax
44b583:	a3 c4 65 4a 00       	mov    %eax,0x4a65c4
44b588:	75 43                	jne    0x44b5cd
44b58a:	33 c0                	xor    %eax,%eax
44b58c:	8b f0                	mov    %eax,%esi
44b58e:	8b 86 00 48 4a 00    	mov    0x4a4800(%esi),%eax
44b594:	85 c0                	test   %eax,%eax
44b596:	74 07                	je     0x44b59f
44b598:	50                   	push   %eax
44b599:	ff 15 a8 71 4a 00    	call   *0x4a71a8
44b59f:	83 c6 10             	add    $0x10,%esi
44b5a2:	83 fe 40             	cmp    $0x40,%esi
44b5a5:	72 e7                	jb     0x44b58e
44b5a7:	6a 40                	push   $0x40
44b5a9:	33 c0                	xor    %eax,%eax
44b5ab:	50                   	push   %eax
44b5ac:	68 00 48 4a 00       	push   $0x4a4800
44b5b1:	e8 83 5a 04 00       	call   0x491039
44b5b6:	83 c4 0c             	add    $0xc,%esp
44b5b9:	be 00 55 40 00       	mov    $0x405500,%esi
44b5be:	bf 50 00 4a 00       	mov    $0x4a0050,%edi
44b5c3:	6a 2e                	push   $0x2e
44b5c5:	59                   	pop    %ecx
44b5c6:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
44b5c8:	bf c8 65 4a 00       	mov    $0x4a65c8,%edi
44b5cd:	33 c0                	xor    %eax,%eax
44b5cf:	87 07                	xchg   %eax,(%edi)
44b5d1:	ff b5 e0 f1 ff ff    	push   -0xe20(%ebp)
44b5d7:	8b 35 00 01 4a 00    	mov    0x4a0100,%esi
44b5dd:	33 c0                	xor    %eax,%eax
44b5df:	50                   	push   %eax
44b5e0:	8b ce                	mov    %esi,%ecx
44b5e2:	ff 15 2c 81 4a 00    	call   *0x4a812c
44b5e8:	ff d6                	call   *%esi
44b5ea:	8d 8d e0 f0 ff ff    	lea    -0xf20(%ebp),%ecx
44b5f0:	e8 ff f1 01 00       	call   0x46a7f4
44b5f5:	33 c0                	xor    %eax,%eax
44b5f7:	8d bd f4 f0 ff ff    	lea    -0xf0c(%ebp),%edi
44b5fd:	8b f0                	mov    %eax,%esi
44b5ff:	89 85 10 f2 ff ff    	mov    %eax,-0xdf0(%ebp)
44b605:	89 85 78 f1 ff ff    	mov    %eax,-0xe88(%ebp)
44b60b:	ab                   	stos   %eax,%es:(%edi)
44b60c:	ab                   	stos   %eax,%es:(%edi)
44b60d:	ab                   	stos   %eax,%es:(%edi)
44b60e:	68 a0 00 00 00       	push   $0xa0
44b613:	6a 08                	push   $0x8
44b615:	ff 15 74 72 4a 00    	call   *0x4a7274
44b61b:	50                   	push   %eax
44b61c:	ff 15 84 72 4a 00    	call   *0x4a7284
44b622:	89 85 b0 f1 ff ff    	mov    %eax,-0xe50(%ebp)
44b628:	85 c0                	test   %eax,%eax
44b62a:	0f 84 86 1b 00 00    	je     0x44d1b6
44b630:	6a 28                	push   $0x28
44b632:	59                   	pop    %ecx
44b633:	be 28 40 4a 00       	mov    $0x4a4028,%esi
44b638:	89 85 24 f2 ff ff    	mov    %eax,-0xddc(%ebp)
44b63e:	8b f8                	mov    %eax,%edi
44b640:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
44b642:	6a 08                	push   $0x8
44b644:	6a 08                	push   $0x8
44b646:	ff 15 74 72 4a 00    	call   *0x4a7274
44b64c:	50                   	push   %eax
44b64d:	ff 15 84 72 4a 00    	call   *0x4a7284
44b653:	8b f0                	mov    %eax,%esi
44b655:	89 b5 fc f1 ff ff    	mov    %esi,-0xe04(%ebp)
44b65b:	85 f6                	test   %esi,%esi
44b65d:	0f 84 3d 1b 00 00    	je     0x44d1a0
44b663:	8b 0d 20 40 4a 00    	mov    0x4a4020,%ecx
44b669:	8b fe                	mov    %esi,%edi
44b66b:	89 0e                	mov    %ecx,(%esi)
44b66d:	8b 0d 24 40 4a 00    	mov    0x4a4024,%ecx
44b673:	89 4e 04             	mov    %ecx,0x4(%esi)
44b676:	89 bd 10 f2 ff ff    	mov    %edi,-0xdf0(%ebp)
44b67c:	0f 31                	rdtsc
44b67e:	89 85 d0 f1 ff ff    	mov    %eax,-0xe30(%ebp)
44b684:	89 95 a0 f1 ff ff    	mov    %edx,-0xe60(%ebp)
44b68a:	b8 c4 00 00 00       	mov    $0xc4,%eax
44b68f:	50                   	push   %eax
44b690:	6a 08                	push   $0x8
44b692:	89 85 74 f1 ff ff    	mov    %eax,-0xe8c(%ebp)
44b698:	ff 15 74 72 4a 00    	call   *0x4a7274
44b69e:	50                   	push   %eax
44b69f:	ff 15 84 72 4a 00    	call   *0x4a7284
44b6a5:	8b d0                	mov    %eax,%edx
44b6a7:	85 d2                	test   %edx,%edx
44b6a9:	0f 84 ff 1a 00 00    	je     0x44d1ae
44b6af:	89 95 78 f1 ff ff    	mov    %edx,-0xe88(%ebp)
44b6b5:	33 c0                	xor    %eax,%eax
44b6b7:	89 85 70 f1 ff ff    	mov    %eax,-0xe90(%ebp)
44b6bd:	8d 7a 04             	lea    0x4(%edx),%edi
44b6c0:	3b fa                	cmp    %edx,%edi
44b6c2:	0f 82 d8 1a 00 00    	jb     0x44d1a0
44b6c8:	8b 8d 74 f1 ff ff    	mov    -0xe8c(%ebp),%ecx
44b6ce:	8d 42 08             	lea    0x8(%edx),%eax
44b6d1:	03 ca                	add    %edx,%ecx
44b6d3:	3b c1                	cmp    %ecx,%eax
44b6d5:	0f 87 c5 1a 00 00    	ja     0x44d1a0
44b6db:	6a 04                	push   $0x4
44b6dd:	58                   	pop    %eax
44b6de:	89 02                	mov    %eax,(%edx)
44b6e0:	89 07                	mov    %eax,(%edi)
44b6e2:	8b bd 70 f1 ff ff    	mov    -0xe90(%ebp),%edi
44b6e8:	47                   	inc    %edi
44b6e9:	89 bd 70 f1 ff ff    	mov    %edi,-0xe90(%ebp)
44b6ef:	83 bd 78 f1 ff ff 00 	cmpl   $0x0,-0xe88(%ebp)
44b6f6:	75 25                	jne    0x44b71d
44b6f8:	8b 85 74 f1 ff ff    	mov    -0xe8c(%ebp),%eax
44b6fe:	8d 88 a4 00 00 00    	lea    0xa4(%eax),%ecx
44b704:	3b c8                	cmp    %eax,%ecx
44b706:	0f 82 94 1a 00 00    	jb     0x44d1a0
44b70c:	8d 47 01             	lea    0x1(%edi),%eax
44b70f:	89 8d 74 f1 ff ff    	mov    %ecx,-0xe8c(%ebp)
44b715:	89 85 70 f1 ff ff    	mov    %eax,-0xe90(%ebp)
44b71b:	eb 75                	jmp    0x44b792
44b71d:	8b 95 78 f1 ff ff    	mov    -0xe88(%ebp),%edx
44b723:	33 c0                	xor    %eax,%eax
44b725:	8b c8                	mov    %eax,%ecx
44b727:	85 ff                	test   %edi,%edi
44b729:	74 1f                	je     0x44b74a
44b72b:	8b 02                	mov    (%edx),%eax
44b72d:	83 c0 04             	add    $0x4,%eax
44b730:	83 f8 04             	cmp    $0x4,%eax
44b733:	0f 82 67 1a 00 00    	jb     0x44d1a0
44b739:	03 c2                	add    %edx,%eax
44b73b:	3b c2                	cmp    %edx,%eax
44b73d:	0f 82 5d 1a 00 00    	jb     0x44d1a0
44b743:	41                   	inc    %ecx
44b744:	8b d0                	mov    %eax,%edx
44b746:	3b cf                	cmp    %edi,%ecx
44b748:	72 e1                	jb     0x44b72b
44b74a:	8d 7a 04             	lea    0x4(%edx),%edi
44b74d:	3b fa                	cmp    %edx,%edi
44b74f:	0f 82 4b 1a 00 00    	jb     0x44d1a0
44b755:	8b 8d 74 f1 ff ff    	mov    -0xe8c(%ebp),%ecx
44b75b:	8d 82 a4 00 00 00    	lea    0xa4(%edx),%eax
44b761:	03 8d 78 f1 ff ff    	add    -0xe88(%ebp),%ecx
44b767:	3b c1                	cmp    %ecx,%eax
44b769:	0f 87 31 1a 00 00    	ja     0x44d1a0
44b76f:	8b b5 b0 f1 ff ff    	mov    -0xe50(%ebp),%esi
44b775:	6a 28                	push   $0x28
44b777:	c7 02 a0 00 00 00    	movl   $0xa0,(%edx)
44b77d:	59                   	pop    %ecx
44b77e:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
44b780:	ff 85 70 f1 ff ff    	incl   -0xe90(%ebp)
44b786:	8b 8d 74 f1 ff ff    	mov    -0xe8c(%ebp),%ecx
44b78c:	8b b5 fc f1 ff ff    	mov    -0xe04(%ebp),%esi
44b792:	83 bd 78 f1 ff ff 00 	cmpl   $0x0,-0xe88(%ebp)
44b799:	75 13                	jne    0x44b7ae
44b79b:	8d 41 0c             	lea    0xc(%ecx),%eax
44b79e:	3b c1                	cmp    %ecx,%eax
44b7a0:	0f 82 fa 19 00 00    	jb     0x44d1a0
44b7a6:	ff 85 70 f1 ff ff    	incl   -0xe90(%ebp)
44b7ac:	eb 7d                	jmp    0x44b82b
44b7ae:	8b 95 78 f1 ff ff    	mov    -0xe88(%ebp),%edx
44b7b4:	33 c0                	xor    %eax,%eax
44b7b6:	8b f8                	mov    %eax,%edi
44b7b8:	39 85 70 f1 ff ff    	cmp    %eax,-0xe90(%ebp)
44b7be:	76 23                	jbe    0x44b7e3
44b7c0:	8b 02                	mov    (%edx),%eax
44b7c2:	83 c0 04             	add    $0x4,%eax
44b7c5:	83 f8 04             	cmp    $0x4,%eax
44b7c8:	0f 82 d2 19 00 00    	jb     0x44d1a0
44b7ce:	03 c2                	add    %edx,%eax
44b7d0:	3b c2                	cmp    %edx,%eax
44b7d2:	0f 82 c8 19 00 00    	jb     0x44d1a0
44b7d8:	47                   	inc    %edi
44b7d9:	8b d0                	mov    %eax,%edx
44b7db:	3b bd 70 f1 ff ff    	cmp    -0xe90(%ebp),%edi
44b7e1:	72 dd                	jb     0x44b7c0
44b7e3:	8d 7a 04             	lea    0x4(%edx),%edi
44b7e6:	3b fa                	cmp    %edx,%edi
44b7e8:	0f 82 b2 19 00 00    	jb     0x44d1a0
44b7ee:	03 8d 78 f1 ff ff    	add    -0xe88(%ebp),%ecx
44b7f4:	8d 42 0c             	lea    0xc(%edx),%eax
44b7f7:	3b c1                	cmp    %ecx,%eax
44b7f9:	0f 87 a1 19 00 00    	ja     0x44d1a0
44b7ff:	c7 02 08 00 00 00    	movl   $0x8,(%edx)
44b805:	8b 06                	mov    (%esi),%eax
44b807:	89 07                	mov    %eax,(%edi)
44b809:	8b 46 04             	mov    0x4(%esi),%eax
44b80c:	89 47 04             	mov    %eax,0x4(%edi)
44b80f:	8b 85 70 f1 ff ff    	mov    -0xe90(%ebp),%eax
44b815:	40                   	inc    %eax
44b816:	89 85 70 f1 ff ff    	mov    %eax,-0xe90(%ebp)
44b81c:	83 bd 78 f1 ff ff 00 	cmpl   $0x0,-0xe88(%ebp)
44b823:	75 19                	jne    0x44b83e
44b825:	8b 85 74 f1 ff ff    	mov    -0xe8c(%ebp),%eax
44b82b:	8d 48 0c             	lea    0xc(%eax),%ecx