4b5160:	8d 45 0c             	lea    0xc(%ebp),%eax
4b5163:	0f 43 45 0c          	cmovae 0xc(%ebp),%eax
4b5167:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4b516e:	c7 47 14 00 00 00 00 	movl   $0x0,0x14(%edi)
4b5175:	c7 47 18 00 00 00 00 	movl   $0x0,0x18(%edi)
4b517c:	89 55 ec             	mov    %edx,-0x14(%ebp)
4b517f:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4b5182:	83 fa 10             	cmp    $0x10,%edx
4b5185:	73 0e                	jae    0x4b5195
4b5187:	0f 10 00             	movups (%eax),%xmm0
4b518a:	b8 0f 00 00 00       	mov    $0xf,%eax
4b518f:	0f 11 47 04          	movups %xmm0,0x4(%edi)
4b5193:	eb 3b                	jmp    0x4b51d0
4b5195:	8b c2                	mov    %edx,%eax
4b5197:	b9 ff ff ff 7f       	mov    $0x7fffffff,%ecx
4b519c:	83 c8 0f             	or     $0xf,%eax
4b519f:	3b c1                	cmp    %ecx,%eax
4b51a1:	0f 47 c1             	cmova  %ecx,%eax
4b51a4:	8d 4f 04             	lea    0x4(%edi),%ecx
4b51a7:	89 45 f0             	mov    %eax,-0x10(%ebp)
4b51aa:	40                   	inc    %eax
4b51ab:	50                   	push   %eax
4b51ac:	e8 9f 42 f8 ff       	call   0x439450
4b51b1:	8b c8                	mov    %eax,%ecx
4b51b3:	8b 45 ec             	mov    -0x14(%ebp),%eax
4b51b6:	40                   	inc    %eax
4b51b7:	89 4f 04             	mov    %ecx,0x4(%edi)
4b51ba:	50                   	push   %eax
4b51bb:	ff 75 e4             	push   -0x1c(%ebp)
4b51be:	51                   	push   %ecx
4b51bf:	e8 3c dd 12 00       	call   0x5e2f00
4b51c4:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4b51c7:	83 c4 0c             	add    $0xc,%esp
4b51ca:	8b 45 f0             	mov    -0x10(%ebp),%eax
4b51cd:	8b 55 ec             	mov    -0x14(%ebp),%edx
4b51d0:	89 57 14             	mov    %edx,0x14(%edi)
4b51d3:	89 47 18             	mov    %eax,0x18(%edi)
4b51d6:	83 3f 00             	cmpl   $0x0,(%edi)
4b51d9:	74 2d                	je     0x4b5208
4b51db:	68 70 11 01 00       	push   $0x11170
4b51e0:	ff 31                	push   (%ecx)
4b51e2:	ff 15 c0 21 68 00    	call   *0x6821c0
4b51e8:	85 c0                	test   %eax,%eax
4b51ea:	74 1c                	je     0x4b5208
4b51ec:	8b 75 e8             	mov    -0x18(%ebp),%esi
4b51ef:	6a 00                	push   $0x0
4b51f1:	6a 01                	push   $0x1
4b51f3:	ff 36                	push   (%esi)
4b51f5:	ff 15 e0 22 68 00    	call   *0x6822e0
4b51fb:	68 10 27 00 00       	push   $0x2710
4b5200:	ff 36                	push   (%esi)
4b5202:	ff 15 c0 21 68 00    	call   *0x6821c0
4b5208:	8b 55 20             	mov    0x20(%ebp),%edx
4b520b:	83 fa 10             	cmp    $0x10,%edx
4b520e:	72 28                	jb     0x4b5238
4b5210:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4b5213:	42                   	inc    %edx
4b5214:	8b c1                	mov    %ecx,%eax
4b5216:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
4b521c:	72 10                	jb     0x4b522e
4b521e:	8b 49 fc             	mov    -0x4(%ecx),%ecx
4b5221:	83 c2 23             	add    $0x23,%edx
4b5224:	2b c1                	sub    %ecx,%eax
4b5226:	83 c0 fc             	add    $0xfffffffc,%eax
4b5229:	83 f8 1f             	cmp    $0x1f,%eax
4b522c:	77 1f                	ja     0x4b524d
4b522e:	52                   	push   %edx
4b522f:	51                   	push   %ecx
4b5230:	e8 3d be 12 00       	call   0x5e1072
4b5235:	83 c4 08             	add    $0x8,%esp
4b5238:	8b c7                	mov    %edi,%eax
4b523a:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4b523d:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4b5244:	59                   	pop    %ecx
4b5245:	5f                   	pop    %edi
4b5246:	5e                   	pop    %esi
4b5247:	8b e5                	mov    %ebp,%esp
4b5249:	5d                   	pop    %ebp
4b524a:	c2 1c 00             	ret    $0x1c
4b524d:	e8 dd 7c 13 00       	call   0x5ecf2f
4b5252:	cc                   	int3
4b5253:	cc                   	int3
4b5254:	cc                   	int3
4b5255:	cc                   	int3
4b5256:	cc                   	int3
4b5257:	cc                   	int3
4b5258:	cc                   	int3
4b5259:	cc                   	int3
4b525a:	cc                   	int3
4b525b:	cc                   	int3
4b525c:	cc                   	int3
4b525d:	cc                   	int3
4b525e:	cc                   	int3
4b525f:	cc                   	int3
4b5260:	56                   	push   %esi
4b5261:	8b f1                	mov    %ecx,%esi
4b5263:	8b 06                	mov    (%esi),%eax
4b5265:	85 c0                	test   %eax,%eax
4b5267:	74 0b                	je     0x4b5274
4b5269:	6a 00                	push   $0x0
4b526b:	6a 01                	push   $0x1
4b526d:	50                   	push   %eax
4b526e:	ff 15 e0 22 68 00    	call   *0x6822e0
4b5274:	8b 4e 18             	mov    0x18(%esi),%ecx
4b5277:	83 f9 10             	cmp    $0x10,%ecx
4b527a:	72 28                	jb     0x4b52a4
4b527c:	8b 46 04             	mov    0x4(%esi),%eax
4b527f:	41                   	inc    %ecx
4b5280:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4b5286:	72 12                	jb     0x4b529a
4b5288:	8b 50 fc             	mov    -0x4(%eax),%edx
4b528b:	83 c1 23             	add    $0x23,%ecx
4b528e:	2b c2                	sub    %edx,%eax
4b5290:	83 c0 fc             	add    $0xfffffffc,%eax
4b5293:	83 f8 1f             	cmp    $0x1f,%eax
4b5296:	77 20                	ja     0x4b52b8
4b5298:	8b c2                	mov    %edx,%eax
4b529a:	51                   	push   %ecx
4b529b:	50                   	push   %eax
4b529c:	e8 d1 bd 12 00       	call   0x5e1072
4b52a1:	83 c4 08             	add    $0x8,%esp
4b52a4:	c7 46 14 00 00 00 00 	movl   $0x0,0x14(%esi)
4b52ab:	c7 46 18 0f 00 00 00 	movl   $0xf,0x18(%esi)
4b52b2:	c6 46 04 00          	movb   $0x0,0x4(%esi)
4b52b6:	5e                   	pop    %esi
4b52b7:	c3                   	ret
4b52b8:	e8 72 7c 13 00       	call   0x5ecf2f
4b52bd:	cc                   	int3
4b52be:	cc                   	int3
4b52bf:	cc                   	int3
4b52c0:	55                   	push   %ebp
4b52c1:	8b ec                	mov    %esp,%ebp
4b52c3:	6a ff                	push   $0xffffffff
4b52c5:	68 d0 a1 65 00       	push   $0x65a1d0
4b52ca:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4b52d0:	50                   	push   %eax
4b52d1:	83 ec 18             	sub    $0x18,%esp
4b52d4:	53                   	push   %ebx
4b52d5:	56                   	push   %esi
4b52d6:	57                   	push   %edi
4b52d7:	a1 d4 89 72 00       	mov    0x7289d4,%eax
4b52dc:	33 c5                	xor    %ebp,%eax
4b52de:	50                   	push   %eax
4b52df:	8d 45 f4             	lea    -0xc(%ebp),%eax
4b52e2:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4b52e8:	89 65 f0             	mov    %esp,-0x10(%ebp)
4b52eb:	8b c1                	mov    %ecx,%eax
4b52ed:	89 45 e8             	mov    %eax,-0x18(%ebp)
4b52f0:	8b 7d 08             	mov    0x8(%ebp),%edi
4b52f3:	8b 08                	mov    (%eax),%ecx
4b52f5:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4b52f8:	80 7f 0d 00          	cmpb   $0x0,0xd(%edi)
4b52fc:	0f 85 98 00 00 00    	jne    0x4b539a
4b5302:	83 c7 10             	add    $0x10,%edi
4b5305:	89 45 dc             	mov    %eax,-0x24(%ebp)
4b5308:	6a 30                	push   $0x30
4b530a:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4b5311:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
4b5318:	e8 25 bd 12 00       	call   0x5e1042
4b531d:	8b d8                	mov    %eax,%ebx
4b531f:	83 c4 04             	add    $0x4,%esp
4b5322:	89 5d e0             	mov    %ebx,-0x20(%ebp)
4b5325:	8d 73 10             	lea    0x10(%ebx),%esi
4b5328:	57                   	push   %edi
4b5329:	8b ce                	mov    %esi,%ecx
4b532b:	89 75 e4             	mov    %esi,-0x1c(%ebp)
4b532e:	e8 6d 7a f8 ff       	call   0x43cda0
4b5333:	8d 47 18             	lea    0x18(%edi),%eax
4b5336:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4b533a:	50                   	push   %eax
4b533b:	8d 4e 18             	lea    0x18(%esi),%ecx
4b533e:	e8 7d 1e fd ff       	call   0x4871c0
4b5343:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4b5346:	8b 7d 08             	mov    0x8(%ebp),%edi
4b5349:	8b 45 0c             	mov    0xc(%ebp),%eax
4b534c:	ff 75 10             	push   0x10(%ebp)
4b534f:	8b 75 e8             	mov    -0x18(%ebp),%esi
4b5352:	89 0b                	mov    %ecx,(%ebx)
4b5354:	89 4b 08             	mov    %ecx,0x8(%ebx)
4b5357:	66 c7 43 0c 00 00    	movw   $0x0,0xc(%ebx)
4b535d:	89 43 04             	mov    %eax,0x4(%ebx)
4b5360:	8a 47 0c             	mov    0xc(%edi),%al
4b5363:	88 43 0c             	mov    %al,0xc(%ebx)
4b5366:	80 79 0d 00          	cmpb   $0x0,0xd(%ecx)
4b536a:	53                   	push   %ebx
4b536b:	ff 37                	push   (%edi)
4b536d:	0f 45 cb             	cmovne %ebx,%ecx
4b5370:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
4b5377:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4b537a:	89 4d 08             	mov    %ecx,0x8(%ebp)
4b537d:	8b ce                	mov    %esi,%ecx
4b537f:	e8 3c ff ff ff       	call   0x4b52c0
4b5384:	ff 75 10             	push   0x10(%ebp)
4b5387:	89 03                	mov    %eax,(%ebx)
4b5389:	8b ce                	mov    %esi,%ecx
4b538b:	53                   	push   %ebx
4b538c:	ff 77 08             	push   0x8(%edi)
4b538f:	e8 2c ff ff ff       	call   0x4b52c0
4b5394:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4b5397:	89 43 08             	mov    %eax,0x8(%ebx)
4b539a:	8b c1                	mov    %ecx,%eax
4b539c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4b539f:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4b53a6:	59                   	pop    %ecx
4b53a7:	5f                   	pop    %edi
4b53a8:	5e                   	pop    %esi
4b53a9:	5b                   	pop    %ebx
4b53aa:	8b e5                	mov    %ebp,%esp
4b53ac:	5d                   	pop    %ebp
4b53ad:	c2 0c 00             	ret    $0xc
4b53b0:	ff 75 08             	push   0x8(%ebp)
4b53b3:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4b53b6:	e8 f5 40 f8 ff       	call   0x4394b0
4b53bb:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4b53be:	50                   	push   %eax
4b53bf:	e8 2c 02 00 00       	call   0x4b55f0
4b53c4:	6a 00                	push   $0x0
4b53c6:	6a 00                	push   $0x0
4b53c8:	e8 65 d6 12 00       	call   0x5e2a32
4b53cd:	cc                   	int3
4b53ce:	cc                   	int3
4b53cf:	cc                   	int3
4b53d0:	55                   	push   %ebp
4b53d1:	8b ec                	mov    %esp,%ebp
4b53d3:	6a ff                	push   $0xffffffff
4b53d5:	68 f8 a1 65 00       	push   $0x65a1f8
4b53da:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4b53e0:	50                   	push   %eax
4b53e1:	83 ec 34             	sub    $0x34,%esp
4b53e4:	53                   	push   %ebx
4b53e5:	56                   	push   %esi
4b53e6:	57                   	push   %edi
4b53e7:	a1 d4 89 72 00       	mov    0x7289d4,%eax
4b53ec:	33 c5                	xor    %ebp,%eax
4b53ee:	50                   	push   %eax
4b53ef:	8d 45 f4             	lea    -0xc(%ebp),%eax
4b53f2:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4b53f8:	89 65 f0             	mov    %esp,-0x10(%ebp)
4b53fb:	8b d9                	mov    %ecx,%ebx
4b53fd:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
4b5400:	8b 13                	mov    (%ebx),%edx
4b5402:	8b 43 04             	mov    0x4(%ebx),%eax
4b5405:	8b 75 08             	mov    0x8(%ebp),%esi
4b5408:	2b c2                	sub    %edx,%eax
4b540a:	2b f2                	sub    %edx,%esi
4b540c:	c1 f8 03             	sar    $0x3,%eax
4b540f:	c1 fe 03             	sar    $0x3,%esi
4b5412:	89 5d cc             	mov    %ebx,-0x34(%ebp)
4b5415:	3d ff ff ff 1f       	cmp    $0x1fffffff,%eax
4b541a:	0f 84 92 01 00 00    	je     0x4b55b2
4b5420:	8b 4b 08             	mov    0x8(%ebx),%ecx
4b5423:	8d 78 01             	lea    0x1(%eax),%edi
4b5426:	2b ca                	sub    %edx,%ecx
4b5428:	89 7d dc             	mov    %edi,-0x24(%ebp)
4b542b:	c1 f9 03             	sar    $0x3,%ecx
4b542e:	b8 ff ff ff 1f       	mov    $0x1fffffff,%eax
4b5433:	8b d1                	mov    %ecx,%edx
4b5435:	d1 ea                	shr    $1,%edx
4b5437:	2b c2                	sub    %edx,%eax
4b5439:	3b c8                	cmp    %eax,%ecx
4b543b:	76 07                	jbe    0x4b5444
4b543d:	8b c7                	mov    %edi,%eax
4b543f:	89 7d e4             	mov    %edi,-0x1c(%ebp)
4b5442:	eb 0b                	jmp    0x4b544f
4b5444:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
4b5447:	3b c7                	cmp    %edi,%eax
4b5449:	0f 42 c7             	cmovb  %edi,%eax
4b544c:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4b544f:	3d ff ff ff 1f       	cmp    $0x1fffffff,%eax
4b5454:	0f 87 53 01 00 00    	ja     0x4b55ad
4b545a:	c1 e0 03             	shl    $0x3,%eax
4b545d:	3d 00 10 00 00       	cmp    $0x1000,%eax
4b5462:	72 27                	jb     0x4b548b
4b5464:	8d 48 23             	lea    0x23(%eax),%ecx
4b5467:	3b c8                	cmp    %eax,%ecx
4b5469:	0f 86 3e 01 00 00    	jbe    0x4b55ad
4b546f:	51                   	push   %ecx
4b5470:	e8 cd bb 12 00       	call   0x5e1042
4b5475:	83 c4 04             	add    $0x4,%esp
4b5478:	85 c0                	test   %eax,%eax
4b547a:	0f 84 37 01 00 00    	je     0x4b55b7
4b5480:	8d 78 23             	lea    0x23(%eax),%edi
4b5483:	83 e7 e0             	and    $0xffffffe0,%edi
4b5486:	89 47 fc             	mov    %eax,-0x4(%edi)
4b5489:	eb 13                	jmp    0x4b549e
4b548b:	85 c0                	test   %eax,%eax
4b548d:	74 0d                	je     0x4b549c
4b548f:	50                   	push   %eax
4b5490:	e8 ad bb 12 00       	call   0x5e1042
4b5495:	83 c4 04             	add    $0x4,%esp
4b5498:	8b f8                	mov    %eax,%edi
4b549a:	eb 02                	jmp    0x4b549e
4b549c:	33 ff                	xor    %edi,%edi
4b549e:	ff 75 0c             	push   0xc(%ebp)
4b54a1:	8d 34 f7             	lea    (%edi,%esi,8),%esi
4b54a4:	89 7d ec             	mov    %edi,-0x14(%ebp)
4b54a7:	8d 46 08             	lea    0x8(%esi),%eax
4b54aa:	89 7d d0             	mov    %edi,-0x30(%ebp)
4b54ad:	8b ce                	mov    %esi,%ecx
4b54af:	89 75 e0             	mov    %esi,-0x20(%ebp)
4b54b2:	89 45 d8             	mov    %eax,-0x28(%ebp)
4b54b5:	89 45 e8             	mov    %eax,-0x18(%ebp)
4b54b8:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4b54bf:	e8 fc 04 00 00       	call   0x4b59c0
4b54c4:	8b 43 04             	mov    0x4(%ebx),%eax
4b54c7:	8b 4d 08             	mov    0x8(%ebp),%ecx
4b54ca:	89 75 e8             	mov    %esi,-0x18(%ebp)
4b54cd:	8b 33                	mov    (%ebx),%esi
4b54cf:	89 45 0c             	mov    %eax,0xc(%ebp)
4b54d2:	3b c8                	cmp    %eax,%ecx
4b54d4:	75 27                	jne    0x4b54fd
4b54d6:	89 7d c0             	mov    %edi,-0x40(%ebp)
4b54d9:	89 7d c4             	mov    %edi,-0x3c(%ebp)
4b54dc:	89 5d c8             	mov    %ebx,-0x38(%ebp)
4b54df:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4b54e3:	3b f0                	cmp    %eax,%esi
4b54e5:	74 39                	je     0x4b5520
4b54e7:	56                   	push   %esi
4b54e8:	8b cf                	mov    %edi,%ecx
4b54ea:	e8 d1 04 00 00       	call   0x4b59c0
4b54ef:	8b 45 0c             	mov    0xc(%ebp),%eax
4b54f2:	83 c7 08             	add    $0x8,%edi
4b54f5:	89 7d c4             	mov    %edi,-0x3c(%ebp)
4b54f8:	83 c6 08             	add    $0x8,%esi
4b54fb:	eb e6                	jmp    0x4b54e3
4b54fd:	57                   	push   %edi
4b54fe:	51                   	push   %ecx
4b54ff:	56                   	push   %esi
4b5500:	8b cb                	mov    %ebx,%ecx
4b5502:	e8 19 7a 00 00       	call   0x4bcf20
4b5507:	8b 45 e0             	mov    -0x20(%ebp),%eax
4b550a:	8b cb                	mov    %ebx,%ecx
4b550c:	83 c0 08             	add    $0x8,%eax
4b550f:	89 7d e8             	mov    %edi,-0x18(%ebp)
4b5512:	50                   	push   %eax
4b5513:	ff 73 04             	push   0x4(%ebx)
4b5516:	ff 75 08             	push   0x8(%ebp)
4b5519:	e8 02 7a 00 00       	call   0x4bcf20
4b551e:	eb 03                	jmp    0x4b5523
4b5520:	8b 7d ec             	mov    -0x14(%ebp),%edi
4b5523:	8b 33                	mov    (%ebx),%esi
4b5525:	85 f6                	test   %esi,%esi
4b5527:	74 59                	je     0x4b5582
4b5529:	8b 43 04             	mov    0x4(%ebx),%eax
4b552c:	89 45 08             	mov    %eax,0x8(%ebp)
4b552f:	3b f0                	cmp    %eax,%esi
4b5531:	74 23                	je     0x4b5556
4b5533:	8b 06                	mov    (%esi),%eax
4b5535:	8b ce                	mov    %esi,%ecx
4b5537:	ff 70 04             	push   0x4(%eax)