4f437a:	8d 52 01             	lea    0x1(%edx),%edx
4f437d:	32 03                	xor    (%ebx),%al
4f437f:	8d 5b 01             	lea    0x1(%ebx),%ebx
4f4382:	88 01                	mov    %al,(%ecx)
4f4384:	8d 49 01             	lea    0x1(%ecx),%ecx
4f4387:	88 42 ff             	mov    %al,-0x1(%edx)
4f438a:	83 ed 01             	sub    $0x1,%ebp
4f438d:	75 e8                	jne    0x4f4377
4f438f:	8b 44 24 14          	mov    0x14(%esp),%eax
4f4393:	5f                   	pop    %edi
4f4394:	5b                   	pop    %ebx
4f4395:	89 86 68 01 00 00    	mov    %eax,0x168(%esi)
4f439b:	33 c0                	xor    %eax,%eax
4f439d:	5e                   	pop    %esi
4f439e:	5d                   	pop    %ebp
4f439f:	83 c4 24             	add    $0x24,%esp
4f43a2:	c3                   	ret
4f43a3:	8b 46 0c             	mov    0xc(%esi),%eax
4f43a6:	89 4c 24 18          	mov    %ecx,0x18(%esp)
4f43aa:	8d 4e 0c             	lea    0xc(%esi),%ecx
4f43ad:	0f c8                	bswap  %eax
4f43af:	89 44 24 38          	mov    %eax,0x38(%esp)
4f43b3:	8b c2                	mov    %edx,%eax
4f43b5:	83 e0 0f             	and    $0xf,%eax
4f43b8:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
4f43bc:	89 44 24 10          	mov    %eax,0x10(%esp)
4f43c0:	0f 84 f3 fd ff ff    	je     0x4f41b9
4f43c6:	8b 5c 24 40          	mov    0x40(%esp),%ebx
4f43ca:	8d 8e 78 01 00 00    	lea    0x178(%esi),%ecx
4f43d0:	8b 7c 24 3c          	mov    0x3c(%esp),%edi
4f43d4:	03 ca                	add    %edx,%ecx
4f43d6:	85 ed                	test   %ebp,%ebp
4f43d8:	74 62                	je     0x4f443c
4f43da:	8a 44 30 10          	mov    0x10(%eax,%esi,1),%al
4f43de:	42                   	inc    %edx
4f43df:	32 07                	xor    (%edi),%al
4f43e1:	4d                   	dec    %ebp
4f43e2:	88 03                	mov    %al,(%ebx)
4f43e4:	47                   	inc    %edi
4f43e5:	88 01                	mov    %al,(%ecx)
4f43e7:	43                   	inc    %ebx
4f43e8:	8b 44 24 10          	mov    0x10(%esp),%eax
4f43ec:	41                   	inc    %ecx
4f43ed:	40                   	inc    %eax
4f43ee:	83 e0 0f             	and    $0xf,%eax
4f43f1:	89 44 24 10          	mov    %eax,0x10(%esp)
4f43f5:	75 df                	jne    0x4f43d6
4f43f7:	52                   	push   %edx
4f43f8:	8d 86 78 01 00 00    	lea    0x178(%esi),%eax
4f43fe:	50                   	push   %eax
4f43ff:	8d 46 60             	lea    0x60(%esi),%eax
4f4402:	8d 4e 40             	lea    0x40(%esi),%ecx
4f4405:	50                   	push   %eax
4f4406:	51                   	push   %ecx
4f4407:	ff 54 24 30          	call   *0x30(%esp)
4f440b:	8b 44 24 20          	mov    0x20(%esp),%eax
4f440f:	83 c4 10             	add    $0x10,%esp
4f4412:	89 44 24 10          	mov    %eax,0x10(%esp)
4f4416:	33 d2                	xor    %edx,%edx
4f4418:	8b 44 24 18          	mov    0x18(%esp),%eax
4f441c:	89 44 24 18          	mov    %eax,0x18(%esp)
4f4420:	8d 46 0c             	lea    0xc(%esi),%eax
4f4423:	89 44 24 1c          	mov    %eax,0x1c(%esp)
4f4427:	8b 44 24 38          	mov    0x38(%esp),%eax
4f442b:	89 54 24 14          	mov    %edx,0x14(%esp)
4f442f:	89 6c 24 44          	mov    %ebp,0x44(%esp)
4f4433:	89 44 24 38          	mov    %eax,0x38(%esp)
4f4437:	e9 85 fd ff ff       	jmp    0x4f41c1
4f443c:	5f                   	pop    %edi
4f443d:	5b                   	pop    %ebx
4f443e:	89 96 68 01 00 00    	mov    %edx,0x168(%esi)
4f4444:	33 c0                	xor    %eax,%eax
4f4446:	5e                   	pop    %esi
4f4447:	5d                   	pop    %ebp
4f4448:	83 c4 24             	add    $0x24,%esp
4f444b:	c3                   	ret
4f444c:	5e                   	pop    %esi
4f444d:	83 c8 ff             	or     $0xffffffff,%eax
4f4450:	5d                   	pop    %ebp
4f4451:	83 c4 24             	add    $0x24,%esp
4f4454:	c3                   	ret
4f4455:	cc                   	int3
4f4456:	cc                   	int3
4f4457:	cc                   	int3
4f4458:	cc                   	int3
4f4459:	cc                   	int3
4f445a:	cc                   	int3
4f445b:	cc                   	int3
4f445c:	cc                   	int3
4f445d:	cc                   	int3
4f445e:	cc                   	int3
4f445f:	cc                   	int3
4f4460:	b8 1c 00 00 00       	mov    $0x1c,%eax
4f4465:	e8 46 d3 0d 00       	call   0x5d17b0
4f446a:	53                   	push   %ebx
4f446b:	8b 5c 24 24          	mov    0x24(%esp),%ebx
4f446f:	33 c9                	xor    %ecx,%ecx
4f4471:	56                   	push   %esi
4f4472:	8b 74 24 34          	mov    0x34(%esp),%esi
4f4476:	8b 83 74 01 00 00    	mov    0x174(%ebx),%eax
4f447c:	89 44 24 20          	mov    %eax,0x20(%esp)
4f4480:	8b 83 64 01 00 00    	mov    0x164(%ebx),%eax
4f4486:	89 44 24 18          	mov    %eax,0x18(%esp)
4f448a:	8b c6                	mov    %esi,%eax
4f448c:	03 43 38             	add    0x38(%ebx),%eax
4f448f:	13 4b 3c             	adc    0x3c(%ebx),%ecx
4f4492:	83 f9 0f             	cmp    $0xf,%ecx
4f4495:	0f 87 d6 02 00 00    	ja     0x4f4771
4f449b:	72 09                	jb     0x4f44a6
4f449d:	83 f8 e0             	cmp    $0xffffffe0,%eax
4f44a0:	0f 87 cb 02 00 00    	ja     0x4f4771
4f44a6:	83 bb 6c 01 00 00 00 	cmpl   $0x0,0x16c(%ebx)
4f44ad:	8b 93 68 01 00 00    	mov    0x168(%ebx),%edx
4f44b3:	89 4b 3c             	mov    %ecx,0x3c(%ebx)
4f44b6:	8d 4b 40             	lea    0x40(%ebx),%ecx
4f44b9:	55                   	push   %ebp
4f44ba:	57                   	push   %edi
4f44bb:	89 43 38             	mov    %eax,0x38(%ebx)
4f44be:	89 54 24 10          	mov    %edx,0x10(%esp)
4f44c2:	89 4c 24 14          	mov    %ecx,0x14(%esp)
4f44c6:	0f 84 e5 01 00 00    	je     0x4f46b1
4f44cc:	85 f6                	test   %esi,%esi
4f44ce:	75 20                	jne    0x4f44f0
4f44d0:	8d 43 60             	lea    0x60(%ebx),%eax
4f44d3:	50                   	push   %eax
4f44d4:	8b 83 60 01 00 00    	mov    0x160(%ebx),%eax
4f44da:	51                   	push   %ecx
4f44db:	ff d0                	call   *%eax
4f44dd:	83 c4 08             	add    $0x8,%esp
4f44e0:	89 b3 6c 01 00 00    	mov    %esi,0x16c(%ebx)
4f44e6:	33 c0                	xor    %eax,%eax
4f44e8:	5f                   	pop    %edi
4f44e9:	5d                   	pop    %ebp
4f44ea:	5e                   	pop    %esi
4f44eb:	5b                   	pop    %ebx
4f44ec:	83 c4 1c             	add    $0x1c,%esp
4f44ef:	c3                   	ret
4f44f0:	0f 10 01             	movups (%ecx),%xmm0
4f44f3:	8d 83 78 01 00 00    	lea    0x178(%ebx),%eax
4f44f9:	c7 44 24 3c 00 00 00 	movl   $0x0,0x3c(%esp)
4f4500:	00
4f4501:	89 44 24 24          	mov    %eax,0x24(%esp)
4f4505:	ba 10 00 00 00       	mov    $0x10,%edx
4f450a:	0f 11 00             	movups %xmm0,(%eax)
4f450d:	c7 01 00 00 00 00    	movl   $0x0,(%ecx)
4f4513:	8d 43 0c             	lea    0xc(%ebx),%eax
4f4516:	c7 41 04 00 00 00 00 	movl   $0x0,0x4(%ecx)
4f451d:	c7 43 48 00 00 00 00 	movl   $0x0,0x48(%ebx)
4f4524:	c7 43 4c 00 00 00 00 	movl   $0x0,0x4c(%ebx)
4f452b:	89 44 24 18          	mov    %eax,0x18(%esp)
4f452f:	8b 00                	mov    (%eax),%eax
4f4531:	0f c8                	bswap  %eax
4f4533:	89 54 24 10          	mov    %edx,0x10(%esp)
4f4537:	c7 83 6c 01 00 00 00 	movl   $0x0,0x16c(%ebx)
4f453e:	00 00 00
4f4541:	89 44 24 30          	mov    %eax,0x30(%esp)
4f4545:	8b 7c 24 38          	mov    0x38(%esp),%edi
4f4549:	8b 6c 24 34          	mov    0x34(%esp),%ebp
4f454d:	89 7c 24 1c          	mov    %edi,0x1c(%esp)
4f4551:	8d 43 60             	lea    0x60(%ebx),%eax
4f4554:	83 fe 10             	cmp    $0x10,%esi
4f4557:	72 1a                	jb     0x4f4573
4f4559:	85 d2                	test   %edx,%edx
4f455b:	74 16                	je     0x4f4573
4f455d:	52                   	push   %edx
4f455e:	ff 74 24 28          	push   0x28(%esp)
4f4562:	50                   	push   %eax
4f4563:	51                   	push   %ecx
4f4564:	ff 54 24 30          	call   *0x30(%esp)
4f4568:	83 c4 10             	add    $0x10,%esp
4f456b:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
4f4572:	00
4f4573:	8b 4c 24 40          	mov    0x40(%esp),%ecx
4f4577:	81 fe 00 0c 00 00    	cmp    $0xc00,%esi
4f457d:	72 6a                	jb     0x4f45e9
4f457f:	b8 ab aa aa aa       	mov    $0xaaaaaaab,%eax
4f4584:	f7 e6                	mul    %esi
4f4586:	c1 ea 0b             	shr    $0xb,%edx
4f4589:	89 54 24 24          	mov    %edx,0x24(%esp)
4f458d:	0f 1f 00             	nopl   (%eax)
4f4590:	53                   	push   %ebx
4f4591:	ff 74 24 2c          	push   0x2c(%esp)
4f4595:	68 c0 00 00 00       	push   $0xc0
4f459a:	57                   	push   %edi
4f459b:	55                   	push   %ebp
4f459c:	ff d1                	call   *%ecx
4f459e:	8b 44 24 44          	mov    0x44(%esp),%eax
4f45a2:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
4f45a6:	05 c0 00 00 00       	add    $0xc0,%eax
4f45ab:	89 44 24 44          	mov    %eax,0x44(%esp)
4f45af:	0f c8                	bswap  %eax
4f45b1:	68 00 0c 00 00       	push   $0xc00
4f45b6:	89 01                	mov    %eax,(%ecx)
4f45b8:	8d 43 60             	lea    0x60(%ebx),%eax
4f45bb:	57                   	push   %edi
4f45bc:	50                   	push   %eax
4f45bd:	ff 74 24 34          	push   0x34(%esp)
4f45c1:	ff 54 24 44          	call   *0x44(%esp)
4f45c5:	8b 4c 24 64          	mov    0x64(%esp),%ecx
4f45c9:	83 c4 24             	add    $0x24,%esp
4f45cc:	81 c7 00 0c 00 00    	add    $0xc00,%edi
4f45d2:	81 c5 00 0c 00 00    	add    $0xc00,%ebp
4f45d8:	81 ee 00 0c 00 00    	sub    $0xc00,%esi
4f45de:	83 6c 24 24 01       	subl   $0x1,0x24(%esp)
4f45e3:	75 ab                	jne    0x4f4590
4f45e5:	89 7c 24 1c          	mov    %edi,0x1c(%esp)
4f45e9:	8b c6                	mov    %esi,%eax
4f45eb:	83 e0 f0             	and    $0xfffffff0,%eax
4f45ee:	89 44 24 24          	mov    %eax,0x24(%esp)
4f45f2:	74 45                	je     0x4f4639
4f45f4:	53                   	push   %ebx
4f45f5:	ff 74 24 2c          	push   0x2c(%esp)
4f45f9:	8b f8                	mov    %eax,%edi
4f45fb:	c1 ef 04             	shr    $0x4,%edi
4f45fe:	57                   	push   %edi
4f45ff:	ff 74 24 28          	push   0x28(%esp)
4f4603:	55                   	push   %ebp
4f4604:	ff d1                	call   *%ecx
4f4606:	8b 44 24 44          	mov    0x44(%esp),%eax
4f460a:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
4f460e:	03 c7                	add    %edi,%eax
4f4610:	8b 7c 24 30          	mov    0x30(%esp),%edi
4f4614:	89 44 24 44          	mov    %eax,0x44(%esp)
4f4618:	0f c8                	bswap  %eax
4f461a:	89 01                	mov    %eax,(%ecx)
4f461c:	8b 44 24 38          	mov    0x38(%esp),%eax
4f4620:	03 e8                	add    %eax,%ebp
4f4622:	50                   	push   %eax
4f4623:	2b f0                	sub    %eax,%esi
4f4625:	8d 43 60             	lea    0x60(%ebx),%eax
4f4628:	57                   	push   %edi
4f4629:	50                   	push   %eax
4f462a:	ff 74 24 34          	push   0x34(%esp)
4f462e:	ff 54 24 44          	call   *0x44(%esp)
4f4632:	83 c4 24             	add    $0x24,%esp
4f4635:	03 7c 24 24          	add    0x24(%esp),%edi
4f4639:	85 f6                	test   %esi,%esi
4f463b:	74 60                	je     0x4f469d
4f463d:	ff 74 24 28          	push   0x28(%esp)
4f4641:	8d 43 10             	lea    0x10(%ebx),%eax
4f4644:	50                   	push   %eax
4f4645:	8b 83 70 01 00 00    	mov    0x170(%ebx),%eax
4f464b:	53                   	push   %ebx
4f464c:	ff d0                	call   *%eax
4f464e:	8b 44 24 3c          	mov    0x3c(%esp),%eax
4f4652:	2b ef                	sub    %edi,%ebp
4f4654:	8b 4c 24 24          	mov    0x24(%esp),%ecx
4f4658:	40                   	inc    %eax
4f4659:	8b 54 24 1c          	mov    0x1c(%esp),%edx
4f465d:	83 c4 0c             	add    $0xc,%esp
4f4660:	0f c8                	bswap  %eax
4f4662:	81 c2 78 01 00 00    	add    $0x178,%edx
4f4668:	89 01                	mov    %eax,(%ecx)
4f466a:	03 d3                	add    %ebx,%edx
4f466c:	8b 44 24 3c          	mov    0x3c(%esp),%eax
4f4670:	8b 4c 24 3c          	mov    0x3c(%esp),%ecx
4f4674:	83 c0 10             	add    $0x10,%eax
4f4677:	03 c3                	add    %ebx,%eax
4f4679:	03 cf                	add    %edi,%ecx
4f467b:	01 74 24 10          	add    %esi,0x10(%esp)
4f467f:	8b f8                	mov    %eax,%edi
4f4681:	89 44 24 30          	mov    %eax,0x30(%esp)
4f4685:	8a 04 29             	mov    (%ecx,%ebp,1),%al
4f4688:	8d 52 01             	lea    0x1(%edx),%edx
4f468b:	32 07                	xor    (%edi),%al
4f468d:	8d 7f 01             	lea    0x1(%edi),%edi
4f4690:	88 01                	mov    %al,(%ecx)
4f4692:	8d 49 01             	lea    0x1(%ecx),%ecx
4f4695:	88 42 ff             	mov    %al,-0x1(%edx)
4f4698:	83 ee 01             	sub    $0x1,%esi
4f469b:	75 e8                	jne    0x4f4685
4f469d:	8b 44 24 10          	mov    0x10(%esp),%eax
4f46a1:	5f                   	pop    %edi
4f46a2:	5d                   	pop    %ebp
4f46a3:	89 83 68 01 00 00    	mov    %eax,0x168(%ebx)
4f46a9:	33 c0                	xor    %eax,%eax
4f46ab:	5e                   	pop    %esi
4f46ac:	5b                   	pop    %ebx
4f46ad:	83 c4 1c             	add    $0x1c,%esp
4f46b0:	c3                   	ret
4f46b1:	8d 83 78 01 00 00    	lea    0x178(%ebx),%eax
4f46b7:	89 4c 24 14          	mov    %ecx,0x14(%esp)
4f46bb:	89 44 24 24          	mov    %eax,0x24(%esp)
4f46bf:	8d 43 0c             	lea    0xc(%ebx),%eax
4f46c2:	89 44 24 18          	mov    %eax,0x18(%esp)
4f46c6:	8b 00                	mov    (%eax),%eax
4f46c8:	0f c8                	bswap  %eax
4f46ca:	89 44 24 30          	mov    %eax,0x30(%esp)
4f46ce:	8b c2                	mov    %edx,%eax
4f46d0:	83 e0 0f             	and    $0xf,%eax
4f46d3:	89 44 24 3c          	mov    %eax,0x3c(%esp)
4f46d7:	0f 84 68 fe ff ff    	je     0x4f4545
4f46dd:	8b 7c 24 38          	mov    0x38(%esp),%edi
4f46e1:	8d 8b 78 01 00 00    	lea    0x178(%ebx),%ecx
4f46e7:	8b 6c 24 34          	mov    0x34(%esp),%ebp
4f46eb:	03 ca                	add    %edx,%ecx
4f46ed:	0f 1f 00             	nopl   (%eax)
4f46f0:	85 f6                	test   %esi,%esi
4f46f2:	74 6d                	je     0x4f4761
4f46f4:	8a 44 18 10          	mov    0x10(%eax,%ebx,1),%al
4f46f8:	42                   	inc    %edx
4f46f9:	32 45 00             	xor    0x0(%ebp),%al
4f46fc:	4e                   	dec    %esi
4f46fd:	88 07                	mov    %al,(%edi)
4f46ff:	45                   	inc    %ebp
4f4700:	88 01                	mov    %al,(%ecx)
4f4702:	47                   	inc    %edi
4f4703:	8b 44 24 3c          	mov    0x3c(%esp),%eax
4f4707:	41                   	inc    %ecx
4f4708:	40                   	inc    %eax
4f4709:	89 7c 24 1c          	mov    %edi,0x1c(%esp)
4f470d:	83 e0 0f             	and    $0xf,%eax
4f4710:	89 44 24 3c          	mov    %eax,0x3c(%esp)
4f4714:	75 da                	jne    0x4f46f0
4f4716:	52                   	push   %edx
4f4717:	8d 83 78 01 00 00    	lea    0x178(%ebx),%eax
4f471d:	50                   	push   %eax
4f471e:	8d 43 60             	lea    0x60(%ebx),%eax
4f4721:	8d 4b 40             	lea    0x40(%ebx),%ecx
4f4724:	50                   	push   %eax
4f4725:	51                   	push   %ecx
4f4726:	ff 54 24 30          	call   *0x30(%esp)
4f472a:	8b 44 24 4c          	mov    0x4c(%esp),%eax
4f472e:	83 c4 10             	add    $0x10,%esp
4f4731:	8b 4c 24 14          	mov    0x14(%esp),%ecx
4f4735:	33 d2                	xor    %edx,%edx
4f4737:	89 44 24 3c          	mov    %eax,0x3c(%esp)
4f473b:	8d 83 78 01 00 00    	lea    0x178(%ebx),%eax
4f4741:	89 44 24 24          	mov    %eax,0x24(%esp)
4f4745:	8d 43 0c             	lea    0xc(%ebx),%eax
4f4748:	89 44 24 18          	mov    %eax,0x18(%esp)
4f474c:	8b 44 24 30          	mov    0x30(%esp),%eax
4f4750:	89 54 24 10          	mov    %edx,0x10(%esp)
4f4754:	89 4c 24 14          	mov    %ecx,0x14(%esp)
4f4758:	89 44 24 30          	mov    %eax,0x30(%esp)
4f475c:	e9 f0 fd ff ff       	jmp    0x4f4551
4f4761:	5f                   	pop    %edi
4f4762:	5d                   	pop    %ebp
4f4763:	5e                   	pop    %esi
4f4764:	89 93 68 01 00 00    	mov    %edx,0x168(%ebx)
4f476a:	33 c0                	xor    %eax,%eax
4f476c:	5b                   	pop    %ebx
4f476d:	83 c4 1c             	add    $0x1c,%esp
4f4770:	c3                   	ret
4f4771:	5e                   	pop    %esi
4f4772:	83 c8 ff             	or     $0xffffffff,%eax
4f4775:	5b                   	pop    %ebx
4f4776:	83 c4 1c             	add    $0x1c,%esp
4f4779:	c3                   	ret
4f477a:	cc                   	int3