515169:	c7 46 3c 00 00 00 00 	movl   $0x0,0x3c(%esi)
515170:	8b 46 3c             	mov    0x3c(%esi),%eax
515173:	83 d0 00             	adc    $0x0,%eax
515176:	50                   	push   %eax
515177:	51                   	push   %ecx
515178:	e8 e3 bd 01 00       	call   0x530f60
51517d:	8b f8                	mov    %eax,%edi
51517f:	83 c4 0c             	add    $0xc,%esp
515182:	85 ff                	test   %edi,%edi
515184:	74 3e                	je     0x5151c4
515186:	53                   	push   %ebx
515187:	6a 00                	push   $0x0
515189:	57                   	push   %edi
51518a:	ff 76 38             	push   0x38(%esi)
51518d:	6a 00                	push   $0x0
51518f:	56                   	push   %esi
515190:	e8 0b ca fd ff       	call   0x4f1ba0
515195:	8b d8                	mov    %eax,%ebx
515197:	83 c4 14             	add    $0x14,%esp
51519a:	85 db                	test   %ebx,%ebx
51519c:	75 16                	jne    0x5151b4
51519e:	8b 4e 38             	mov    0x38(%esi),%ecx
5151a1:	0f 57 c0             	xorps  %xmm0,%xmm0
5151a4:	5b                   	pop    %ebx
5151a5:	0f 11 04 39          	movups %xmm0,(%ecx,%edi,1)
5151a9:	88 44 39 10          	mov    %al,0x10(%ecx,%edi,1)
5151ad:	89 7e 10             	mov    %edi,0x10(%esi)
5151b0:	5f                   	pop    %edi
5151b1:	5e                   	pop    %esi
5151b2:	5d                   	pop    %ebp
5151b3:	c3                   	ret
5151b4:	57                   	push   %edi
5151b5:	e8 d6 5b fd ff       	call   0x4ead90
5151ba:	83 c4 04             	add    $0x4,%esp
5151bd:	8b c3                	mov    %ebx,%eax
5151bf:	5b                   	pop    %ebx
5151c0:	5f                   	pop    %edi
5151c1:	5e                   	pop    %esi
5151c2:	5d                   	pop    %ebp
5151c3:	c3                   	ret
5151c4:	5f                   	pop    %edi
5151c5:	b8 07 00 00 00       	mov    $0x7,%eax
5151ca:	5e                   	pop    %esi
5151cb:	5d                   	pop    %ebp
5151cc:	c3                   	ret
5151cd:	cc                   	int3
5151ce:	cc                   	int3
5151cf:	cc                   	int3
5151d0:	55                   	push   %ebp
5151d1:	8b ec                	mov    %esp,%ebp
5151d3:	53                   	push   %ebx
5151d4:	8b 5d 0c             	mov    0xc(%ebp),%ebx
5151d7:	56                   	push   %esi
5151d8:	8b 75 08             	mov    0x8(%ebp),%esi
5151db:	57                   	push   %edi
5151dc:	0f 1f 40 00          	nopl   0x0(%eax)
5151e0:	3b 75 10             	cmp    0x10(%ebp),%esi
5151e3:	74 57                	je     0x51523c
5151e5:	85 db                	test   %ebx,%ebx
5151e7:	74 05                	je     0x5151ee
5151e9:	39 5e 40             	cmp    %ebx,0x40(%esi)
5151ec:	75 4e                	jne    0x51523c
5151ee:	8a 06                	mov    (%esi),%al
5151f0:	84 c0                	test   %al,%al
5151f2:	74 0f                	je     0x515203
5151f4:	3c 02                	cmp    $0x2,%al
5151f6:	74 0b                	je     0x515203
5151f8:	56                   	push   %esi
5151f9:	e8 02 27 fe ff       	call   0x4f7900
5151fe:	83 c4 04             	add    $0x4,%esp
515201:	eb 39                	jmp    0x51523c
515203:	f6 46 01 40          	testb  $0x40,0x1(%esi)
515207:	75 41                	jne    0x51524a
515209:	3c 02                	cmp    $0x2,%al
51520b:	75 05                	jne    0x515212
51520d:	c6 06 00             	movb   $0x0,(%esi)
515210:	eb 07                	jmp    0x515219
515212:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
515219:	56                   	push   %esi
51521a:	e8 11 ff ff ff       	call   0x515130
51521f:	8b f8                	mov    %eax,%edi
515221:	83 c4 04             	add    $0x4,%esp
515224:	85 ff                	test   %edi,%edi
515226:	75 0c                	jne    0x515234
515228:	56                   	push   %esi
515229:	e8 d2 26 fe ff       	call   0x4f7900
51522e:	83 c4 04             	add    $0x4,%esp
515231:	c6 06 03             	movb   $0x3,(%esi)
515234:	80 66 01 f1          	andb   $0xf1,0x1(%esi)
515238:	85 ff                	test   %edi,%edi
51523a:	75 13                	jne    0x51524f
51523c:	8b 76 18             	mov    0x18(%esi),%esi
51523f:	85 f6                	test   %esi,%esi
515241:	75 9d                	jne    0x5151e0
515243:	5f                   	pop    %edi
515244:	5e                   	pop    %esi
515245:	33 c0                	xor    %eax,%eax
515247:	5b                   	pop    %ebx
515248:	5d                   	pop    %ebp
515249:	c3                   	ret
51524a:	bf 13 0b 00 00       	mov    $0xb13,%edi
51524f:	8b c7                	mov    %edi,%eax
515251:	5f                   	pop    %edi
515252:	5e                   	pop    %esi
515253:	5b                   	pop    %ebx
515254:	5d                   	pop    %ebp
515255:	c3                   	ret
515256:	cc                   	int3
515257:	cc                   	int3
515258:	cc                   	int3
515259:	cc                   	int3
51525a:	cc                   	int3
51525b:	cc                   	int3
51525c:	cc                   	int3
51525d:	cc                   	int3
51525e:	cc                   	int3
51525f:	cc                   	int3
515260:	55                   	push   %ebp
515261:	8b ec                	mov    %esp,%ebp
515263:	83 ec 0c             	sub    $0xc,%esp
515266:	57                   	push   %edi
515267:	8b 7d 08             	mov    0x8(%ebp),%edi
51526a:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
515271:	8b 3f                	mov    (%edi),%edi
515273:	83 7f 14 00          	cmpl   $0x0,0x14(%edi)
515277:	0f 8e 4d 01 00 00    	jle    0x5153ca
51527d:	33 c0                	xor    %eax,%eax
51527f:	53                   	push   %ebx
515280:	89 45 fc             	mov    %eax,-0x4(%ebp)
515283:	56                   	push   %esi
515284:	8b 77 10             	mov    0x10(%edi),%esi
515287:	33 db                	xor    %ebx,%ebx
515289:	8b 74 06 04          	mov    0x4(%esi,%eax,1),%esi
51528d:	85 f6                	test   %esi,%esi
51528f:	0f 84 1c 01 00 00    	je     0x5153b1
515295:	38 5e 08             	cmp    %bl,0x8(%esi)
515298:	75 62                	jne    0x5152fc
51529a:	53                   	push   %ebx
51529b:	53                   	push   %ebx
51529c:	56                   	push   %esi
51529d:	e8 ae 58 00 00       	call   0x51ab50
5152a2:	83 c4 0c             	add    $0xc,%esp
5152a5:	83 f8 07             	cmp    $0x7,%eax
5152a8:	74 07                	je     0x5152b1
5152aa:	3d 0a 0c 00 00       	cmp    $0xc0a,%eax
5152af:	75 40                	jne    0x5152f1
5152b1:	38 5f 51             	cmp    %bl,0x51(%edi)
5152b4:	75 3b                	jne    0x5152f1
5152b6:	38 5f 52             	cmp    %bl,0x52(%edi)
5152b9:	75 36                	jne    0x5152f1
5152bb:	c6 47 51 01          	movb   $0x1,0x51(%edi)
5152bf:	39 9f bc 00 00 00    	cmp    %ebx,0xbc(%edi)
5152c5:	7e 0a                	jle    0x5152d1
5152c7:	c7 87 10 01 00 00 01 	movl   $0x1,0x110(%edi)
5152ce:	00 00 00
5152d1:	ff 87 18 01 00 00    	incl   0x118(%edi)
5152d7:	33 c9                	xor    %ecx,%ecx
5152d9:	66 89 8f 1c 01 00 00 	mov    %cx,0x11c(%edi)
5152e0:	8b 8f f4 00 00 00    	mov    0xf4(%edi),%ecx
5152e6:	85 c9                	test   %ecx,%ecx
5152e8:	74 07                	je     0x5152f1
5152ea:	c7 41 0c 07 00 00 00 	movl   $0x7,0xc(%ecx)
5152f1:	85 c0                	test   %eax,%eax
5152f3:	0f 85 cf 00 00 00    	jne    0x5153c8
5152f9:	8d 58 01             	lea    0x1(%eax),%ebx
5152fc:	80 7e 09 00          	cmpb   $0x0,0x9(%esi)
515300:	8b 46 04             	mov    0x4(%esi),%eax
515303:	89 45 f4             	mov    %eax,-0xc(%ebp)
515306:	74 15                	je     0x51531d
515308:	ff 46 0c             	incl   0xc(%esi)
51530b:	80 7e 0a 00          	cmpb   $0x0,0xa(%esi)
51530f:	75 0c                	jne    0x51531d
515311:	56                   	push   %esi
515312:	e8 b9 1c fe ff       	call   0x4f6fd0
515317:	8b 45 f4             	mov    -0xc(%ebp),%eax
51531a:	83 c4 04             	add    $0x4,%esp
51531d:	80 7e 09 00          	cmpb   $0x0,0x9(%esi)
515321:	8b 40 0c             	mov    0xc(%eax),%eax
515324:	8b 40 38             	mov    0x38(%eax),%eax
515327:	8b 40 28             	mov    0x28(%eax),%eax
51532a:	0f c8                	bswap  %eax
51532c:	89 45 f4             	mov    %eax,-0xc(%ebp)
51532f:	74 0f                	je     0x515340
515331:	83 46 0c ff          	addl   $0xffffffff,0xc(%esi)
515335:	75 09                	jne    0x515340
515337:	56                   	push   %esi
515338:	e8 93 36 04 00       	call   0x5589d0
51533d:	83 c4 04             	add    $0x4,%esp
515340:	8b 4d fc             	mov    -0x4(%ebp),%ecx
515343:	8b 47 10             	mov    0x10(%edi),%eax
515346:	8b 44 08 0c          	mov    0xc(%eax,%ecx,1),%eax
51534a:	8b 4d f4             	mov    -0xc(%ebp),%ecx
51534d:	3b 08                	cmp    (%eax),%ecx
51534f:	74 16                	je     0x515367
515351:	ff 75 f8             	push   -0x8(%ebp)
515354:	57                   	push   %edi
515355:	e8 56 2c 02 00       	call   0x537fb0
51535a:	8b 45 08             	mov    0x8(%ebp),%eax
51535d:	83 c4 08             	add    $0x8,%esp
515360:	c7 40 0c 11 00 00 00 	movl   $0x11,0xc(%eax)
515367:	85 db                	test   %ebx,%ebx
515369:	74 46                	je     0x5153b1
51536b:	80 7e 09 00          	cmpb   $0x0,0x9(%esi)
51536f:	74 12                	je     0x515383
515371:	ff 46 0c             	incl   0xc(%esi)
515374:	80 7e 0a 00          	cmpb   $0x0,0xa(%esi)
515378:	75 09                	jne    0x515383
51537a:	56                   	push   %esi
51537b:	e8 50 1c fe ff       	call   0x4f6fd0
515380:	83 c4 04             	add    $0x4,%esp
515383:	6a 00                	push   $0x0
515385:	56                   	push   %esi
515386:	e8 a5 5d 00 00       	call   0x51b130
51538b:	83 c4 08             	add    $0x8,%esp
51538e:	85 c0                	test   %eax,%eax
515390:	75 0a                	jne    0x51539c
515392:	50                   	push   %eax
515393:	56                   	push   %esi
515394:	e8 37 5e 00 00       	call   0x51b1d0
515399:	83 c4 08             	add    $0x8,%esp
51539c:	80 7e 09 00          	cmpb   $0x0,0x9(%esi)
5153a0:	74 0f                	je     0x5153b1
5153a2:	83 46 0c ff          	addl   $0xffffffff,0xc(%esi)
5153a6:	75 09                	jne    0x5153b1
5153a8:	56                   	push   %esi
5153a9:	e8 22 36 04 00       	call   0x5589d0
5153ae:	83 c4 04             	add    $0x4,%esp
5153b1:	8b 5d f8             	mov    -0x8(%ebp),%ebx
5153b4:	83 45 fc 10          	addl   $0x10,-0x4(%ebp)
5153b8:	43                   	inc    %ebx
5153b9:	8b 45 fc             	mov    -0x4(%ebp),%eax
5153bc:	89 5d f8             	mov    %ebx,-0x8(%ebp)
5153bf:	3b 5f 14             	cmp    0x14(%edi),%ebx
5153c2:	0f 8c bc fe ff ff    	jl     0x515284
5153c8:	5e                   	pop    %esi
5153c9:	5b                   	pop    %ebx
5153ca:	5f                   	pop    %edi
5153cb:	8b e5                	mov    %ebp,%esp
5153cd:	5d                   	pop    %ebp
5153ce:	c3                   	ret
5153cf:	cc                   	int3
5153d0:	55                   	push   %ebp
5153d1:	8b ec                	mov    %esp,%ebp
5153d3:	8b 45 0c             	mov    0xc(%ebp),%eax
5153d6:	83 ec 08             	sub    $0x8,%esp
5153d9:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
5153dd:	53                   	push   %ebx
5153de:	56                   	push   %esi
5153df:	57                   	push   %edi
5153e0:	75 79                	jne    0x51545b
5153e2:	8b 48 08             	mov    0x8(%eax),%ecx
5153e5:	89 4d fc             	mov    %ecx,-0x4(%ebp)
5153e8:	85 c9                	test   %ecx,%ecx
5153ea:	74 6f                	je     0x51545b
5153ec:	8b 45 08             	mov    0x8(%ebp),%eax
5153ef:	85 c0                	test   %eax,%eax
5153f1:	74 68                	je     0x51545b
5153f3:	8b 10                	mov    (%eax),%edx
5153f5:	33 ff                	xor    %edi,%edi
5153f7:	89 55 0c             	mov    %edx,0xc(%ebp)
5153fa:	85 d2                	test   %edx,%edx
5153fc:	7e 53                	jle    0x515451
5153fe:	8d 58 08             	lea    0x8(%eax),%ebx
515401:	8b 33                	mov    (%ebx),%esi
515403:	8b c1                	mov    %ecx,%eax
515405:	2b f1                	sub    %ecx,%esi
515407:	0f b6 10             	movzbl (%eax),%edx
51540a:	0f b6 0c 06          	movzbl (%esi,%eax,1),%ecx
51540e:	3b d1                	cmp    %ecx,%edx
515410:	75 1b                	jne    0x51542d
515412:	85 d2                	test   %edx,%edx
515414:	75 29                	jne    0x51543f
515416:	8b 45 10             	mov    0x10(%ebp),%eax
515419:	8b 4d 08             	mov    0x8(%ebp),%ecx
51541c:	c1 e7 04             	shl    $0x4,%edi
51541f:	89 08                	mov    %ecx,(%eax)
515421:	8d 41 08             	lea    0x8(%ecx),%eax
515424:	03 c7                	add    %edi,%eax
515426:	5f                   	pop    %edi
515427:	5e                   	pop    %esi
515428:	5b                   	pop    %ebx
515429:	8b e5                	mov    %ebp,%esp
51542b:	5d                   	pop    %ebp
51542c:	c3                   	ret
51542d:	0f b6 89 20 2a 6b 00 	movzbl 0x6b2a20(%ecx),%ecx
515434:	0f b6 92 20 2a 6b 00 	movzbl 0x6b2a20(%edx),%edx
51543b:	2b d1                	sub    %ecx,%edx
51543d:	75 03                	jne    0x515442
51543f:	40                   	inc    %eax
515440:	eb c5                	jmp    0x515407
515442:	8b 4d fc             	mov    -0x4(%ebp),%ecx
515445:	47                   	inc    %edi
515446:	83 c3 10             	add    $0x10,%ebx
515449:	3b 7d 0c             	cmp    0xc(%ebp),%edi
51544c:	7c b3                	jl     0x515401
51544e:	8b 45 08             	mov    0x8(%ebp),%eax
515451:	8b 40 04             	mov    0x4(%eax),%eax
515454:	89 45 08             	mov    %eax,0x8(%ebp)
515457:	85 c0                	test   %eax,%eax
515459:	75 98                	jne    0x5153f3
51545b:	5f                   	pop    %edi
51545c:	5e                   	pop    %esi
51545d:	33 c0                	xor    %eax,%eax
51545f:	5b                   	pop    %ebx
515460:	8b e5                	mov    %ebp,%esp
515462:	5d                   	pop    %ebp
515463:	c3                   	ret
515464:	cc                   	int3
515465:	cc                   	int3
515466:	cc                   	int3
515467:	cc                   	int3
515468:	cc                   	int3
515469:	cc                   	int3
51546a:	cc                   	int3
51546b:	cc                   	int3
51546c:	cc                   	int3
51546d:	cc                   	int3
51546e:	cc                   	int3
51546f:	cc                   	int3
515470:	55                   	push   %ebp
515471:	8b ec                	mov    %esp,%ebp
515473:	8b 4d 0c             	mov    0xc(%ebp),%ecx
515476:	8b 41 04             	mov    0x4(%ecx),%eax
515479:	84 c0                	test   %al,%al
51547b:	78 5c                	js     0x5154d9
51547d:	0d 80 00 00 00       	or     $0x80,%eax
515482:	89 41 04             	mov    %eax,0x4(%ecx)
515485:	8b 45 08             	mov    0x8(%ebp),%eax
515488:	53                   	push   %ebx
515489:	8b 59 20             	mov    0x20(%ecx),%ebx
51548c:	57                   	push   %edi
51548d:	8b 00                	mov    (%eax),%eax
51548f:	33 ff                	xor    %edi,%edi
515491:	89 45 0c             	mov    %eax,0xc(%ebp)
515494:	39 3b                	cmp    %edi,(%ebx)
515496:	7e 3f                	jle    0x5154d7
515498:	56                   	push   %esi
515499:	8d 73 1c             	lea    0x1c(%ebx),%esi
51549c:	0f 1f 40 00          	nopl   0x0(%eax)
5154a0:	8b 56 fc             	mov    -0x4(%esi),%edx
5154a3:	f6 42 24 02          	testb  $0x2,0x24(%edx)
5154a7:	74 25                	je     0x5154ce
5154a9:	8b 0e                	mov    (%esi),%ecx
5154ab:	85 c9                	test   %ecx,%ecx
5154ad:	74 1f                	je     0x5154ce
5154af:	8b 41 34             	mov    0x34(%ecx),%eax
5154b2:	85 c0                	test   %eax,%eax
5154b4:	74 09                	je     0x5154bf
5154b6:	8b c8                	mov    %eax,%ecx
5154b8:	8b 41 34             	mov    0x34(%ecx),%eax