5412c3:	53                   	push   %ebx
5412c4:	57                   	push   %edi
5412c5:	8b 7d 08             	mov    0x8(%ebp),%edi
5412c8:	85 c0                	test   %eax,%eax
5412ca:	74 12                	je     0x5412de
5412cc:	6a 00                	push   $0x0
5412ce:	6a 00                	push   $0x0
5412d0:	50                   	push   %eax
5412d1:	57                   	push   %edi
5412d2:	e8 89 f5 fb ff       	call   0x500860
5412d7:	83 c4 10             	add    $0x10,%esp
5412da:	8b d8                	mov    %eax,%ebx
5412dc:	eb 02                	jmp    0x5412e0
5412de:	33 db                	xor    %ebx,%ebx
5412e0:	8b 46 04             	mov    0x4(%esi),%eax
5412e3:	85 c0                	test   %eax,%eax
5412e5:	74 13                	je     0x5412fa
5412e7:	6a 00                	push   $0x0
5412e9:	6a 00                	push   $0x0
5412eb:	50                   	push   %eax
5412ec:	57                   	push   %edi
5412ed:	e8 6e f5 fb ff       	call   0x500860
5412f2:	83 c4 10             	add    $0x10,%esp
5412f5:	89 45 0c             	mov    %eax,0xc(%ebp)
5412f8:	eb 07                	jmp    0x541301
5412fa:	c7 45 0c 00 00 00 00 	movl   $0x0,0xc(%ebp)
541301:	53                   	push   %ebx
541302:	6a 00                	push   $0x0
541304:	ff 76 08             	push   0x8(%esi)
541307:	57                   	push   %edi
541308:	e8 b3 65 fe ff       	call   0x5278c0
54130d:	83 c4 0c             	add    $0xc,%esp
541310:	50                   	push   %eax
541311:	ff 75 0c             	push   0xc(%ebp)
541314:	6a 00                	push   $0x0
541316:	ff 36                	push   (%esi)
541318:	57                   	push   %edi
541319:	e8 a2 65 fe ff       	call   0x5278c0
54131e:	83 c4 0c             	add    $0xc,%esp
541321:	50                   	push   %eax
541322:	57                   	push   %edi
541323:	e8 08 00 00 00       	call   0x541330
541328:	83 c4 14             	add    $0x14,%esp
54132b:	5f                   	pop    %edi
54132c:	5b                   	pop    %ebx
54132d:	5e                   	pop    %esi
54132e:	5d                   	pop    %ebp
54132f:	c3                   	ret
541330:	55                   	push   %ebp
541331:	8b ec                	mov    %esp,%ebp
541333:	56                   	push   %esi
541334:	8b 75 08             	mov    0x8(%ebp),%esi
541337:	85 f6                	test   %esi,%esi
541339:	74 0f                	je     0x54134a
54133b:	6a 00                	push   $0x0
54133d:	6a 24                	push   $0x24
54133f:	56                   	push   %esi
541340:	e8 9b 00 fe ff       	call   0x5213e0
541345:	83 c4 0c             	add    $0xc,%esp
541348:	eb 4d                	jmp    0x541397
54134a:	83 3d 10 18 72 00 00 	cmpl   $0x0,0x721810
541351:	74 39                	je     0x54138c
541353:	a1 90 ff 72 00       	mov    0x72ff90,%eax
541358:	85 c0                	test   %eax,%eax
54135a:	74 0a                	je     0x541366
54135c:	50                   	push   %eax
54135d:	ff 15 60 18 72 00    	call   *0x721860
541363:	83 c4 04             	add    $0x4,%esp
541366:	8d 45 08             	lea    0x8(%ebp),%eax
541369:	50                   	push   %eax
54136a:	6a 24                	push   $0x24
54136c:	e8 8f 7f fc ff       	call   0x509300
541371:	a1 90 ff 72 00       	mov    0x72ff90,%eax
541376:	83 c4 08             	add    $0x8,%esp
541379:	85 c0                	test   %eax,%eax
54137b:	74 0a                	je     0x541387
54137d:	50                   	push   %eax
54137e:	ff 15 68 18 72 00    	call   *0x721868
541384:	83 c4 04             	add    $0x4,%esp
541387:	8b 4d 08             	mov    0x8(%ebp),%ecx
54138a:	eb 0d                	jmp    0x541399
54138c:	6a 24                	push   $0x24
54138e:	ff 15 30 18 72 00    	call   *0x721830
541394:	83 c4 04             	add    $0x4,%esp
541397:	8b c8                	mov    %eax,%ecx
541399:	8b 45 0c             	mov    0xc(%ebp),%eax
54139c:	85 c9                	test   %ecx,%ecx
54139e:	75 46                	jne    0x5413e6
5413a0:	85 c0                	test   %eax,%eax
5413a2:	74 0a                	je     0x5413ae
5413a4:	50                   	push   %eax
5413a5:	56                   	push   %esi
5413a6:	e8 55 fc fb ff       	call   0x501000
5413ab:	83 c4 08             	add    $0x8,%esp
5413ae:	8b 45 10             	mov    0x10(%ebp),%eax
5413b1:	85 c0                	test   %eax,%eax
5413b3:	74 0a                	je     0x5413bf
5413b5:	50                   	push   %eax
5413b6:	56                   	push   %esi
5413b7:	e8 f4 53 fe ff       	call   0x5267b0
5413bc:	83 c4 08             	add    $0x8,%esp
5413bf:	8b 45 14             	mov    0x14(%ebp),%eax
5413c2:	85 c0                	test   %eax,%eax
5413c4:	74 0a                	je     0x5413d0
5413c6:	50                   	push   %eax
5413c7:	56                   	push   %esi
5413c8:	e8 33 fc fb ff       	call   0x501000
5413cd:	83 c4 08             	add    $0x8,%esp
5413d0:	8b 45 18             	mov    0x18(%ebp),%eax
5413d3:	85 c0                	test   %eax,%eax
5413d5:	74 0a                	je     0x5413e1
5413d7:	50                   	push   %eax
5413d8:	56                   	push   %esi
5413d9:	e8 d2 53 fe ff       	call   0x5267b0
5413de:	83 c4 08             	add    $0x8,%esp
5413e1:	33 c0                	xor    %eax,%eax
5413e3:	5e                   	pop    %esi
5413e4:	5d                   	pop    %ebp
5413e5:	c3                   	ret
5413e6:	89 01                	mov    %eax,(%ecx)
5413e8:	8b 45 10             	mov    0x10(%ebp),%eax
5413eb:	89 41 04             	mov    %eax,0x4(%ecx)
5413ee:	8b 45 14             	mov    0x14(%ebp),%eax
5413f1:	89 41 08             	mov    %eax,0x8(%ecx)
5413f4:	8b 45 18             	mov    0x18(%ebp),%eax
5413f7:	89 41 0c             	mov    %eax,0xc(%ecx)
5413fa:	8b c1                	mov    %ecx,%eax
5413fc:	c7 41 10 00 00 00 00 	movl   $0x0,0x10(%ecx)
541403:	5e                   	pop    %esi
541404:	5d                   	pop    %ebp
541405:	c3                   	ret
541406:	cc                   	int3
541407:	cc                   	int3
541408:	cc                   	int3
541409:	cc                   	int3
54140a:	cc                   	int3
54140b:	cc                   	int3
54140c:	cc                   	int3
54140d:	cc                   	int3
54140e:	cc                   	int3
54140f:	cc                   	int3
541410:	55                   	push   %ebp
541411:	8b ec                	mov    %esp,%ebp
541413:	8b 45 08             	mov    0x8(%ebp),%eax
541416:	56                   	push   %esi
541417:	8b 75 0c             	mov    0xc(%ebp),%esi
54141a:	85 f6                	test   %esi,%esi
54141c:	7e 27                	jle    0x541445
54141e:	66 90                	xchg   %ax,%ax
541420:	0f b6 08             	movzbl (%eax),%ecx
541423:	0f b6 50 01          	movzbl 0x1(%eax),%edx
541427:	81 c1 00 28 ff ff    	add    $0xffff2800,%ecx
54142d:	c1 e2 08             	shl    $0x8,%edx
541430:	83 c0 02             	add    $0x2,%eax
541433:	03 ca                	add    %edx,%ecx
541435:	81 f9 ff 07 00 00    	cmp    $0x7ff,%ecx
54143b:	77 03                	ja     0x541440
54143d:	83 c0 02             	add    $0x2,%eax
541440:	83 ee 01             	sub    $0x1,%esi
541443:	75 db                	jne    0x541420
541445:	2b 45 08             	sub    0x8(%ebp),%eax
541448:	5e                   	pop    %esi
541449:	5d                   	pop    %ebp
54144a:	c3                   	ret
54144b:	cc                   	int3
54144c:	cc                   	int3
54144d:	cc                   	int3
54144e:	cc                   	int3
54144f:	cc                   	int3
541450:	55                   	push   %ebp
541451:	8b ec                	mov    %esp,%ebp
541453:	83 ec 2c             	sub    $0x2c,%esp
541456:	a1 d4 89 72 00       	mov    0x7289d4,%eax
54145b:	33 c5                	xor    %ebp,%eax
54145d:	89 45 fc             	mov    %eax,-0x4(%ebp)
541460:	8b 45 0c             	mov    0xc(%ebp),%eax
541463:	0f 57 c0             	xorps  %xmm0,%xmm0
541466:	56                   	push   %esi
541467:	8b 75 08             	mov    0x8(%ebp),%esi
54146a:	6a 00                	push   $0x0
54146c:	ff 75 14             	push   0x14(%ebp)
54146f:	66 0f d6 45 f4       	movq   %xmm0,-0xc(%ebp)
541474:	ff 75 10             	push   0x10(%ebp)
541477:	0f 11 45 d4          	movups %xmm0,-0x2c(%ebp)
54147b:	50                   	push   %eax
54147c:	8d 45 d4             	lea    -0x2c(%ebp),%eax
54147f:	89 75 f4             	mov    %esi,-0xc(%ebp)
541482:	50                   	push   %eax
541483:	0f 11 45 e4          	movups %xmm0,-0x1c(%ebp)
541487:	e8 54 a6 00 00       	call   0x54bae0
54148c:	83 c4 14             	add    $0x14,%esp
54148f:	f6 45 dc 02          	testb  $0x2,-0x24(%ebp)
541493:	74 14                	je     0x5414a9
541495:	80 7d de 01          	cmpb   $0x1,-0x22(%ebp)
541499:	74 0e                	je     0x5414a9
54149b:	8d 45 d4             	lea    -0x2c(%ebp),%eax
54149e:	6a 01                	push   $0x1
5414a0:	50                   	push   %eax
5414a1:	e8 9a a9 00 00       	call   0x54be40
5414a6:	83 c4 08             	add    $0x8,%esp
5414a9:	80 7e 51 00          	cmpb   $0x0,0x51(%esi)
5414ad:	5e                   	pop    %esi
5414ae:	74 2b                	je     0x5414db
5414b0:	f7 45 dc 00 24 00 00 	testl  $0x2400,-0x24(%ebp)
5414b7:	75 06                	jne    0x5414bf
5414b9:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
5414bd:	74 0c                	je     0x5414cb
5414bf:	8d 45 d4             	lea    -0x2c(%ebp),%eax
5414c2:	50                   	push   %eax
5414c3:	e8 48 99 01 00       	call   0x55ae10
5414c8:	83 c4 04             	add    $0x4,%esp
5414cb:	33 c0                	xor    %eax,%eax
5414cd:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5414d0:	33 cd                	xor    %ebp,%ecx
5414d2:	e8 03 00 0a 00       	call   0x5e14da
5414d7:	8b e5                	mov    %ebp,%esp
5414d9:	5d                   	pop    %ebp
5414da:	c3                   	ret
5414db:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5414de:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5414e1:	33 cd                	xor    %ebp,%ecx
5414e3:	e8 f2 ff 09 00       	call   0x5e14da
5414e8:	8b e5                	mov    %ebp,%esp
5414ea:	5d                   	pop    %ebp
5414eb:	c3                   	ret
5414ec:	cc                   	int3
5414ed:	cc                   	int3
5414ee:	cc                   	int3
5414ef:	cc                   	int3
5414f0:	55                   	push   %ebp
5414f1:	8b ec                	mov    %esp,%ebp
5414f3:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5414f6:	33 d2                	xor    %edx,%edx
5414f8:	8b 45 08             	mov    0x8(%ebp),%eax
5414fb:	56                   	push   %esi
5414fc:	85 c9                	test   %ecx,%ecx
5414fe:	78 05                	js     0x541505
541500:	8d 34 08             	lea    (%eax,%ecx,1),%esi
541503:	eb 03                	jmp    0x541508
541505:	83 ce ff             	or     $0xffffffff,%esi
541508:	38 10                	cmp    %dl,(%eax)
54150a:	74 2c                	je     0x541538
54150c:	0f 1f 40 00          	nopl   0x0(%eax)
541510:	3b c6                	cmp    %esi,%eax
541512:	73 24                	jae    0x541538
541514:	8a 08                	mov    (%eax),%cl
541516:	40                   	inc    %eax
541517:	80 f9 c0             	cmp    $0xc0,%cl
54151a:	72 16                	jb     0x541532
54151c:	8a 08                	mov    (%eax),%cl
54151e:	80 e1 c0             	and    $0xc0,%cl
541521:	80 f9 80             	cmp    $0x80,%cl
541524:	75 0c                	jne    0x541532
541526:	8a 48 01             	mov    0x1(%eax),%cl
541529:	40                   	inc    %eax
54152a:	80 e1 c0             	and    $0xc0,%cl
54152d:	80 f9 80             	cmp    $0x80,%cl
541530:	74 f4                	je     0x541526
541532:	42                   	inc    %edx
541533:	80 38 00             	cmpb   $0x0,(%eax)
541536:	75 d8                	jne    0x541510
541538:	8b c2                	mov    %edx,%eax
54153a:	5e                   	pop    %esi
54153b:	5d                   	pop    %ebp
54153c:	c3                   	ret
54153d:	cc                   	int3
54153e:	cc                   	int3
54153f:	cc                   	int3
541540:	55                   	push   %ebp
541541:	8b ec                	mov    %esp,%ebp
541543:	56                   	push   %esi
541544:	8b 75 08             	mov    0x8(%ebp),%esi
541547:	8b 06                	mov    (%esi),%eax
541549:	0f b6 08             	movzbl (%eax),%ecx
54154c:	8d 50 01             	lea    0x1(%eax),%edx
54154f:	89 16                	mov    %edx,(%esi)
541551:	81 f9 c0 00 00 00    	cmp    $0xc0,%ecx
541557:	72 4f                	jb     0x5415a8
541559:	8a 02                	mov    (%edx),%al
54155b:	0f b6 89 78 2b 6b 00 	movzbl 0x6b2b78(%ecx),%ecx
541562:	24 c0                	and    $0xc0,%al
541564:	3c 80                	cmp    $0x80,%al
541566:	75 16                	jne    0x54157e
541568:	0f b6 02             	movzbl (%edx),%eax
54156b:	42                   	inc    %edx
54156c:	83 e0 3f             	and    $0x3f,%eax
54156f:	c1 e1 06             	shl    $0x6,%ecx
541572:	03 c8                	add    %eax,%ecx
541574:	89 16                	mov    %edx,(%esi)
541576:	8a 02                	mov    (%edx),%al
541578:	24 c0                	and    $0xc0,%al
54157a:	3c 80                	cmp    $0x80,%al
54157c:	74 ea                	je     0x541568
54157e:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
541584:	72 1a                	jb     0x5415a0
541586:	8b c1                	mov    %ecx,%eax
541588:	25 00 f8 ff ff       	and    $0xfffff800,%eax
54158d:	3d 00 d8 00 00       	cmp    $0xd800,%eax
541592:	74 0c                	je     0x5415a0
541594:	8b c1                	mov    %ecx,%eax
541596:	83 e0 fe             	and    $0xfffffffe,%eax
541599:	3d fe ff 00 00       	cmp    $0xfffe,%eax
54159e:	75 08                	jne    0x5415a8
5415a0:	b8 fd ff 00 00       	mov    $0xfffd,%eax
5415a5:	5e                   	pop    %esi
5415a6:	5d                   	pop    %ebp
5415a7:	c3                   	ret
5415a8:	8b c1                	mov    %ecx,%eax
5415aa:	5e                   	pop    %esi
5415ab:	5d                   	pop    %ebp
5415ac:	c3                   	ret
5415ad:	cc                   	int3
5415ae:	cc                   	int3
5415af:	cc                   	int3
5415b0:	55                   	push   %ebp
5415b1:	8b ec                	mov    %esp,%ebp
5415b3:	8b 45 14             	mov    0x14(%ebp),%eax
5415b6:	99                   	cltd
5415b7:	83 e2 03             	and    $0x3,%edx
5415ba:	53                   	push   %ebx
5415bb:	56                   	push   %esi
5415bc:	57                   	push   %edi
5415bd:	8b 7d 0c             	mov    0xc(%ebp),%edi
5415c0:	8d 1c 02             	lea    (%edx,%eax,1),%ebx
5415c3:	c1 fb 02             	sar    $0x2,%ebx
5415c6:	83 c3 03             	add    $0x3,%ebx
5415c9:	85 ff                	test   %edi,%edi
5415cb:	74 18                	je     0x5415e5
5415cd:	8b 4f 04             	mov    0x4(%edi),%ecx
5415d0:	8b 07                	mov    (%edi),%eax
5415d2:	03 cb                	add    %ebx,%ecx
5415d4:	3b c8                	cmp    %eax,%ecx
5415d6:	7e 4b                	jle    0x541623
5415d8:	b9 02 00 00 00       	mov    $0x2,%ecx
5415dd:	f7 e9                	imul   %ecx
5415df:	8b c8                	mov    %eax,%ecx
5415e1:	8b f2                	mov    %edx,%esi
5415e3:	eb 07                	jmp    0x5415ec
5415e5:	b9 0a 00 00 00       	mov    $0xa,%ecx
5415ea:	33 f6                	xor    %esi,%esi
5415ec:	8b c3                	mov    %ebx,%eax
5415ee:	99                   	cltd
5415ef:	03 c1                	add    %ecx,%eax
5415f1:	8b c8                	mov    %eax,%ecx
5415f3:	89 45 0c             	mov    %eax,0xc(%ebp)
5415f6:	13 d6                	adc    %esi,%edx
5415f8:	0f a4 ca 02          	shld   $0x2,%ecx,%edx
5415fc:	52                   	push   %edx
5415fd:	c1 e1 02             	shl    $0x2,%ecx
541600:	51                   	push   %ecx