a9743c:	cc                   	int3
a9743d:	cc                   	int3
a9743e:	cc                   	int3
a9743f:	cc                   	int3
a97440:	cc                   	int3
a97441:	cc                   	int3
a97442:	cc                   	int3
a97443:	cc                   	int3
a97444:	cc                   	int3
a97445:	cc                   	int3
a97446:	cc                   	int3
a97447:	cc                   	int3
a97448:	cc                   	int3
a97449:	cc                   	int3
a9744a:	cc                   	int3
a9744b:	cc                   	int3
a9744c:	8b ff                	mov    %edi,%edi
a9744e:	55                   	push   %ebp
a9744f:	8b ec                	mov    %esp,%ebp
a97451:	51                   	push   %ecx
a97452:	51                   	push   %ecx
a97453:	56                   	push   %esi
a97454:	57                   	push   %edi
a97455:	8b 7d 14             	mov    0x14(%ebp),%edi
a97458:	8b c1                	mov    %ecx,%eax
a9745a:	89 45 f8             	mov    %eax,-0x8(%ebp)
a9745d:	8b 0f                	mov    (%edi),%ecx
a9745f:	83 27 00             	andl   $0x0,(%edi)
a97462:	8b 00                	mov    (%eax),%eax
a97464:	89 4d fc             	mov    %ecx,-0x4(%ebp)
a97467:	8b 70 04             	mov    0x4(%eax),%esi
a9746a:	39 70 08             	cmp    %esi,0x8(%eax)
a9746d:	75 18                	jne    0xa97487
a9746f:	80 78 0c 00          	cmpb   $0x0,0xc(%eax)
a97473:	74 0a                	je     0xa9747f
a97475:	8b 4d 10             	mov    0x10(%ebp),%ecx
a97478:	8b 45 0c             	mov    0xc(%ebp),%eax
a9747b:	01 01                	add    %eax,(%ecx)
a9747d:	eb 4a                	jmp    0xa974c9
a9747f:	8b 45 10             	mov    0x10(%ebp),%eax
a97482:	83 08 ff             	orl    $0xffffffff,(%eax)
a97485:	eb 45                	jmp    0xa974cc
a97487:	2b 70 08             	sub    0x8(%eax),%esi
a9748a:	53                   	push   %ebx
a9748b:	8b 5d 0c             	mov    0xc(%ebp),%ebx
a9748e:	3b f3                	cmp    %ebx,%esi
a97490:	72 02                	jb     0xa97494
a97492:	8b f3                	mov    %ebx,%esi
a97494:	56                   	push   %esi
a97495:	ff 75 08             	push   0x8(%ebp)
a97498:	ff 30                	push   (%eax)
a9749a:	e8 e3 d1 97 ff       	call   0x414682
a9749f:	8b 4d f8             	mov    -0x8(%ebp),%ecx
a974a2:	83 c4 0c             	add    $0xc,%esp
a974a5:	8b 01                	mov    (%ecx),%eax
a974a7:	01 30                	add    %esi,(%eax)
a974a9:	8b 01                	mov    (%ecx),%eax
a974ab:	01 70 08             	add    %esi,0x8(%eax)
a974ae:	8b 01                	mov    (%ecx),%eax
a974b0:	80 78 0c 00          	cmpb   $0x0,0xc(%eax)
a974b4:	8b 45 10             	mov    0x10(%ebp),%eax
a974b7:	74 04                	je     0xa974bd
a974b9:	01 18                	add    %ebx,(%eax)
a974bb:	eb 0b                	jmp    0xa974c8
a974bd:	3b f3                	cmp    %ebx,%esi
a974bf:	74 05                	je     0xa974c6
a974c1:	83 08 ff             	orl    $0xffffffff,(%eax)
a974c4:	eb 02                	jmp    0xa974c8
a974c6:	01 30                	add    %esi,(%eax)
a974c8:	5b                   	pop    %ebx
a974c9:	8b 4d fc             	mov    -0x4(%ebp),%ecx
a974cc:	83 3f 00             	cmpl   $0x0,(%edi)
a974cf:	75 06                	jne    0xa974d7
a974d1:	85 c9                	test   %ecx,%ecx
a974d3:	74 02                	je     0xa974d7
a974d5:	89 0f                	mov    %ecx,(%edi)
a974d7:	5f                   	pop    %edi
a974d8:	5e                   	pop    %esi
a974d9:	8b e5                	mov    %ebp,%esp
a974db:	5d                   	pop    %ebp
a974dc:	c2 10 00             	ret    $0x10
a974df:	cc                   	int3
a974e0:	cc                   	int3
a974e1:	cc                   	int3
a974e2:	cc                   	int3
a974e3:	cc                   	int3
a974e4:	cc                   	int3
a974e5:	cc                   	int3
a974e6:	cc                   	int3
a974e7:	cc                   	int3
a974e8:	cc                   	int3
a974e9:	cc                   	int3
a974ea:	cc                   	int3
a974eb:	cc                   	int3
a974ec:	cc                   	int3
a974ed:	cc                   	int3
a974ee:	cc                   	int3
a974ef:	cc                   	int3
a974f0:	cc                   	int3
a974f1:	cc                   	int3
a974f2:	cc                   	int3
a974f3:	cc                   	int3
a974f4:	cc                   	int3
a974f5:	cc                   	int3
a974f6:	cc                   	int3
a974f7:	cc                   	int3
a974f8:	cc                   	int3
a974f9:	cc                   	int3
a974fa:	cc                   	int3
a974fb:	cc                   	int3
a974fc:	cc                   	int3
a974fd:	cc                   	int3
a974fe:	cc                   	int3
a974ff:	cc                   	int3
a97500:	cc                   	int3
a97501:	cc                   	int3
a97502:	cc                   	int3
a97503:	8b ff                	mov    %edi,%edi
a97505:	55                   	push   %ebp
a97506:	8b ec                	mov    %esp,%ebp
a97508:	51                   	push   %ecx
a97509:	51                   	push   %ecx
a9750a:	53                   	push   %ebx
a9750b:	8b 5d 14             	mov    0x14(%ebp),%ebx
a9750e:	8b c1                	mov    %ecx,%eax
a97510:	57                   	push   %edi
a97511:	89 45 f8             	mov    %eax,-0x8(%ebp)
a97514:	8b 0b                	mov    (%ebx),%ecx
a97516:	83 23 00             	andl   $0x0,(%ebx)
a97519:	8b 10                	mov    (%eax),%edx
a9751b:	89 4d fc             	mov    %ecx,-0x4(%ebp)
a9751e:	8b 7a 04             	mov    0x4(%edx),%edi
a97521:	39 7a 08             	cmp    %edi,0x8(%edx)
a97524:	75 18                	jne    0xa9753e
a97526:	80 7a 0c 00          	cmpb   $0x0,0xc(%edx)
a9752a:	74 0a                	je     0xa97536
a9752c:	8b 4d 10             	mov    0x10(%ebp),%ecx
a9752f:	8b 45 0c             	mov    0xc(%ebp),%eax
a97532:	01 01                	add    %eax,(%ecx)
a97534:	eb 51                	jmp    0xa97587
a97536:	8b 45 10             	mov    0x10(%ebp),%eax
a97539:	83 08 ff             	orl    $0xffffffff,(%eax)
a9753c:	eb 4c                	jmp    0xa9758a
a9753e:	2b 7a 08             	sub    0x8(%edx),%edi
a97541:	8b 45 0c             	mov    0xc(%ebp),%eax
a97544:	3b f8                	cmp    %eax,%edi
a97546:	72 02                	jb     0xa9754a
a97548:	8b f8                	mov    %eax,%edi
a9754a:	56                   	push   %esi
a9754b:	8d 34 3f             	lea    (%edi,%edi,1),%esi
a9754e:	56                   	push   %esi
a9754f:	ff 75 08             	push   0x8(%ebp)
a97552:	ff 32                	push   (%edx)
a97554:	e8 29 d1 97 ff       	call   0x414682
a97559:	8b 4d f8             	mov    -0x8(%ebp),%ecx
a9755c:	83 c4 0c             	add    $0xc,%esp
a9755f:	8b 01                	mov    (%ecx),%eax
a97561:	01 30                	add    %esi,(%eax)
a97563:	8b 01                	mov    (%ecx),%eax
a97565:	5e                   	pop    %esi
a97566:	01 78 08             	add    %edi,0x8(%eax)
a97569:	8b 01                	mov    (%ecx),%eax
a9756b:	80 78 0c 00          	cmpb   $0x0,0xc(%eax)
a9756f:	8b 45 10             	mov    0x10(%ebp),%eax
a97572:	74 07                	je     0xa9757b
a97574:	8b 4d 0c             	mov    0xc(%ebp),%ecx
a97577:	01 08                	add    %ecx,(%eax)
a97579:	eb 0c                	jmp    0xa97587
a9757b:	3b 7d 0c             	cmp    0xc(%ebp),%edi
a9757e:	74 05                	je     0xa97585
a97580:	83 08 ff             	orl    $0xffffffff,(%eax)
a97583:	eb 02                	jmp    0xa97587
a97585:	01 38                	add    %edi,(%eax)
a97587:	8b 4d fc             	mov    -0x4(%ebp),%ecx
a9758a:	83 3b 00             	cmpl   $0x0,(%ebx)
a9758d:	75 06                	jne    0xa97595
a9758f:	85 c9                	test   %ecx,%ecx
a97591:	74 02                	je     0xa97595
a97593:	89 0b                	mov    %ecx,(%ebx)
a97595:	5f                   	pop    %edi
a97596:	5b                   	pop    %ebx
a97597:	8b e5                	mov    %ebp,%esp
a97599:	5d                   	pop    %ebp
a9759a:	c2 10 00             	ret    $0x10
a9759d:	cc                   	int3
a9759e:	cc                   	int3
a9759f:	cc                   	int3
a975a0:	cc                   	int3
a975a1:	cc                   	int3
a975a2:	cc                   	int3
a975a3:	cc                   	int3
a975a4:	cc                   	int3
a975a5:	cc                   	int3
a975a6:	cc                   	int3
a975a7:	cc                   	int3
a975a8:	cc                   	int3
a975a9:	cc                   	int3
a975aa:	cc                   	int3
a975ab:	cc                   	int3
a975ac:	cc                   	int3
a975ad:	cc                   	int3
a975ae:	cc                   	int3
a975af:	cc                   	int3
a975b0:	cc                   	int3
a975b1:	cc                   	int3
a975b2:	cc                   	int3
a975b3:	cc                   	int3
a975b4:	cc                   	int3
a975b5:	cc                   	int3
a975b6:	cc                   	int3
a975b7:	cc                   	int3
a975b8:	cc                   	int3
a975b9:	cc                   	int3
a975ba:	cc                   	int3
a975bb:	cc                   	int3
a975bc:	cc                   	int3
a975bd:	cc                   	int3
a975be:	cc                   	int3
a975bf:	cc                   	int3
a975c0:	cc                   	int3
a975c1:	cc                   	int3
a975c2:	cc                   	int3
a975c3:	8b ff                	mov    %edi,%edi
a975c5:	55                   	push   %ebp
a975c6:	8b ec                	mov    %esp,%ebp
a975c8:	8b 45 0c             	mov    0xc(%ebp),%eax
a975cb:	0f b6 4d 08          	movzbl 0x8(%ebp),%ecx
a975cf:	8b 00                	mov    (%eax),%eax
a975d1:	8b 00                	mov    (%eax),%eax
a975d3:	0f b7 04 48          	movzwl (%eax,%ecx,2),%eax
a975d7:	25 00 80 00 00       	and    $0x8000,%eax
a975dc:	5d                   	pop    %ebp
a975dd:	c3                   	ret
a975de:	cc                   	int3
a975df:	cc                   	int3
a975e0:	cc                   	int3
a975e1:	cc                   	int3
a975e2:	cc                   	int3
a975e3:	cc                   	int3
a975e4:	8b 0d 90 24 d8 00    	mov    0xd82490,%ecx
a975ea:	33 c0                	xor    %eax,%eax
a975ec:	85 c9                	test   %ecx,%ecx
a975ee:	0f 95 c0             	setne  %al
a975f1:	c3                   	ret
a975f2:	cc                   	int3
a975f3:	cc                   	int3
a975f4:	cc                   	int3
a975f5:	8b ff                	mov    %edi,%edi
a975f7:	55                   	push   %ebp
a975f8:	8b ec                	mov    %esp,%ebp
a975fa:	83 ec 2c             	sub    $0x2c,%esp
a975fd:	8b 45 1c             	mov    0x1c(%ebp),%eax
a97600:	8b 55 10             	mov    0x10(%ebp),%edx
a97603:	8b 4d 14             	mov    0x14(%ebp),%ecx
a97606:	89 45 f0             	mov    %eax,-0x10(%ebp)
a97609:	8b 45 18             	mov    0x18(%ebp),%eax
a9760c:	89 45 f8             	mov    %eax,-0x8(%ebp)
a9760f:	8b 45 08             	mov    0x8(%ebp),%eax
a97612:	89 45 e8             	mov    %eax,-0x18(%ebp)
a97615:	8b 45 0c             	mov    0xc(%ebp),%eax
a97618:	89 4d f4             	mov    %ecx,-0xc(%ebp)
a9761b:	89 55 fc             	mov    %edx,-0x4(%ebp)
a9761e:	89 45 ec             	mov    %eax,-0x14(%ebp)
a97621:	85 d2                	test   %edx,%edx
a97623:	75 15                	jne    0xa9763a
a97625:	e8 45 72 9a ff       	call   0x43e86f
a9762a:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
a97630:	e8 c3 7c 98 ff       	call   0x41f2f8
a97635:	83 c8 ff             	or     $0xffffffff,%eax
a97638:	eb 2e                	jmp    0xa97668
a9763a:	85 c9                	test   %ecx,%ecx
a9763c:	74 e7                	je     0xa97625
a9763e:	8d 45 fc             	lea    -0x4(%ebp),%eax
a97641:	89 45 d4             	mov    %eax,-0x2c(%ebp)
a97644:	8d 45 f8             	lea    -0x8(%ebp),%eax
a97647:	89 45 d8             	mov    %eax,-0x28(%ebp)
a9764a:	8d 45 e8             	lea    -0x18(%ebp),%eax
a9764d:	89 45 dc             	mov    %eax,-0x24(%ebp)
a97650:	8d 45 f4             	lea    -0xc(%ebp),%eax
a97653:	89 45 e0             	mov    %eax,-0x20(%ebp)
a97656:	8d 45 f0             	lea    -0x10(%ebp),%eax
a97659:	89 45 e4             	mov    %eax,-0x1c(%ebp)
a9765c:	8d 45 d4             	lea    -0x2c(%ebp),%eax
a9765f:	50                   	push   %eax
a97660:	52                   	push   %edx
a97661:	e8 3e 17 98 ff       	call   0x418da4
a97666:	59                   	pop    %ecx
a97667:	59                   	pop    %ecx
a97668:	8b e5                	mov    %ebp,%esp
a9766a:	5d                   	pop    %ebp
a9766b:	c3                   	ret
a9766c:	cc                   	int3
a9766d:	cc                   	int3
a9766e:	cc                   	int3
a9766f:	cc                   	int3
a97670:	cc                   	int3
a97671:	cc                   	int3
a97672:	cc                   	int3
a97673:	cc                   	int3
a97674:	cc                   	int3
a97675:	cc                   	int3
a97676:	cc                   	int3
a97677:	cc                   	int3
a97678:	cc                   	int3
a97679:	cc                   	int3
a9767a:	cc                   	int3
a9767b:	cc                   	int3
a9767c:	cc                   	int3
a9767d:	cc                   	int3
a9767e:	cc                   	int3
a9767f:	cc                   	int3
a97680:	cc                   	int3
a97681:	cc                   	int3
a97682:	cc                   	int3
a97683:	cc                   	int3
a97684:	cc                   	int3
a97685:	cc                   	int3
a97686:	cc                   	int3
a97687:	cc                   	int3
a97688:	cc                   	int3
a97689:	8b ff                	mov    %edi,%edi
a9768b:	55                   	push   %ebp
a9768c:	8b ec                	mov    %esp,%ebp
a9768e:	83 ec 2c             	sub    $0x2c,%esp
a97691:	8b 45 1c             	mov    0x1c(%ebp),%eax
a97694:	8b 55 10             	mov    0x10(%ebp),%edx
a97697:	8b 4d 14             	mov    0x14(%ebp),%ecx
a9769a:	89 45 f0             	mov    %eax,-0x10(%ebp)
a9769d:	8b 45 18             	mov    0x18(%ebp),%eax
a976a0:	89 45 f8             	mov    %eax,-0x8(%ebp)
a976a3:	8b 45 08             	mov    0x8(%ebp),%eax
a976a6:	89 45 e8             	mov    %eax,-0x18(%ebp)
a976a9:	8b 45 0c             	mov    0xc(%ebp),%eax
a976ac:	89 4d f4             	mov    %ecx,-0xc(%ebp)
a976af:	89 55 fc             	mov    %edx,-0x4(%ebp)
a976b2:	89 45 ec             	mov    %eax,-0x14(%ebp)
a976b5:	85 d2                	test   %edx,%edx
a976b7:	75 15                	jne    0xa976ce
a976b9:	e8 b1 71 9a ff       	call   0x43e86f
a976be:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
a976c4:	e8 2f 7c 98 ff       	call   0x41f2f8
a976c9:	83 c8 ff             	or     $0xffffffff,%eax
a976cc:	eb 2e                	jmp    0xa976fc
a976ce:	85 c9                	test   %ecx,%ecx
a976d0:	74 e7                	je     0xa976b9
a976d2:	8d 45 fc             	lea    -0x4(%ebp),%eax
a976d5:	89 45 d4             	mov    %eax,-0x2c(%ebp)
a976d8:	8d 45 f8             	lea    -0x8(%ebp),%eax
a976db:	89 45 d8             	mov    %eax,-0x28(%ebp)
a976de:	8d 45 e8             	lea    -0x18(%ebp),%eax