5603dc:	1b c0                	sbb    %eax,%eax
5603de:	83 e0 02             	and    $0x2,%eax
5603e1:	0f 85 d7 fd ff ff    	jne    0x5601be
5603e7:	8b 45 fc             	mov    -0x4(%ebp),%eax
5603ea:	8b 55 10             	mov    0x10(%ebp),%edx
5603ed:	66 83 48 0a 04       	orw    $0x4,0xa(%eax)
5603f2:	e9 ca fd ff ff       	jmp    0x5601c1
5603f7:	8b 4d 08             	mov    0x8(%ebp),%ecx
5603fa:	8b 45 fc             	mov    -0x4(%ebp),%eax
5603fd:	8b 55 10             	mov    0x10(%ebp),%edx
560400:	66 83 48 0a 04       	orw    $0x4,0xa(%eax)
560405:	e9 b7 fd ff ff       	jmp    0x5601c1
56040a:	cc                   	int3
56040b:	cc                   	int3
56040c:	cc                   	int3
56040d:	cc                   	int3
56040e:	cc                   	int3
56040f:	cc                   	int3
560410:	55                   	push   %ebp
560411:	8b ec                	mov    %esp,%ebp
560413:	53                   	push   %ebx
560414:	56                   	push   %esi
560415:	8b 75 08             	mov    0x8(%ebp),%esi
560418:	57                   	push   %edi
560419:	8b 4e 10             	mov    0x10(%esi),%ecx
56041c:	39 4e 0c             	cmp    %ecx,0xc(%esi)
56041f:	0f 8c b6 00 00 00    	jl     0x5604db
560425:	8b 06                	mov    (%esi),%eax
560427:	8b 5e 14             	mov    0x14(%esi),%ebx
56042a:	6a 00                	push   $0x0
56042c:	8b 00                	mov    (%eax),%eax
56042e:	8b 38                	mov    (%eax),%edi
560430:	8d 04 49             	lea    (%ecx,%ecx,2),%eax
560433:	c1 e0 05             	shl    $0x5,%eax
560436:	50                   	push   %eax
560437:	57                   	push   %edi
560438:	e8 a3 0f fc ff       	call   0x5213e0
56043d:	8b c8                	mov    %eax,%ecx
56043f:	83 c4 0c             	add    $0xc,%esp
560442:	89 4e 14             	mov    %ecx,0x14(%esi)
560445:	85 c9                	test   %ecx,%ecx
560447:	75 21                	jne    0x56046a
560449:	f6 45 10 01          	testb  $0x1,0x10(%ebp)
56044d:	74 11                	je     0x560460
56044f:	8b 45 0c             	mov    0xc(%ebp),%eax
560452:	85 c0                	test   %eax,%eax
560454:	74 0a                	je     0x560460
560456:	50                   	push   %eax
560457:	57                   	push   %edi
560458:	e8 53 63 fc ff       	call   0x5267b0
56045d:	83 c4 08             	add    $0x8,%esp
560460:	5f                   	pop    %edi
560461:	89 5e 14             	mov    %ebx,0x14(%esi)
560464:	33 c0                	xor    %eax,%eax
560466:	5e                   	pop    %esi
560467:	5b                   	pop    %ebx
560468:	5d                   	pop    %ebp
560469:	c3                   	ret
56046a:	8b 46 0c             	mov    0xc(%esi),%eax
56046d:	8d 04 40             	lea    (%eax,%eax,2),%eax
560470:	c1 e0 04             	shl    $0x4,%eax
560473:	50                   	push   %eax
560474:	53                   	push   %ebx
560475:	51                   	push   %ecx
560476:	e8 85 2a 08 00       	call   0x5e2f00
56047b:	8d 46 18             	lea    0x18(%esi),%eax
56047e:	83 c4 0c             	add    $0xc,%esp
560481:	3b d8                	cmp    %eax,%ebx
560483:	74 0e                	je     0x560493
560485:	85 db                	test   %ebx,%ebx
560487:	74 0a                	je     0x560493
560489:	53                   	push   %ebx
56048a:	57                   	push   %edi
56048b:	e8 e0 0e fc ff       	call   0x521370
560490:	83 c4 08             	add    $0x8,%esp
560493:	8b 46 14             	mov    0x14(%esi),%eax
560496:	85 ff                	test   %edi,%edi
560498:	74 28                	je     0x5604c2
56049a:	3b 87 4c 01 00 00    	cmp    0x14c(%edi),%eax
5604a0:	73 20                	jae    0x5604c2
5604a2:	3b 87 44 01 00 00    	cmp    0x144(%edi),%eax
5604a8:	72 07                	jb     0x5604b1
5604aa:	b9 80 00 00 00       	mov    $0x80,%ecx
5604af:	eb 1d                	jmp    0x5604ce
5604b1:	3b 87 48 01 00 00    	cmp    0x148(%edi),%eax
5604b7:	72 09                	jb     0x5604c2
5604b9:	0f b7 8f 1e 01 00 00 	movzwl 0x11e(%edi),%ecx
5604c0:	eb 0c                	jmp    0x5604ce
5604c2:	50                   	push   %eax
5604c3:	ff 15 3c 18 72 00    	call   *0x72183c
5604c9:	83 c4 04             	add    $0x4,%esp
5604cc:	8b c8                	mov    %eax,%ecx
5604ce:	b8 ab aa aa aa       	mov    $0xaaaaaaab,%eax
5604d3:	f7 e1                	mul    %ecx
5604d5:	c1 ea 05             	shr    $0x5,%edx
5604d8:	89 56 10             	mov    %edx,0x10(%esi)
5604db:	8b 46 0c             	mov    0xc(%esi),%eax
5604de:	8b 5d 0c             	mov    0xc(%ebp),%ebx
5604e1:	89 45 08             	mov    %eax,0x8(%ebp)
5604e4:	8d 3c 40             	lea    (%eax,%eax,2),%edi
5604e7:	40                   	inc    %eax
5604e8:	c1 e7 04             	shl    $0x4,%edi
5604eb:	03 7e 14             	add    0x14(%esi),%edi
5604ee:	89 46 0c             	mov    %eax,0xc(%esi)
5604f1:	85 db                	test   %ebx,%ebx
5604f3:	74 21                	je     0x560516
5604f5:	f7 43 04 00 00 04 00 	testl  $0x40000,0x4(%ebx)
5604fc:	74 18                	je     0x560516
5604fe:	8b 43 1c             	mov    0x1c(%ebx),%eax
560501:	99                   	cltd
560502:	52                   	push   %edx
560503:	50                   	push   %eax
560504:	e8 87 08 fd ff       	call   0x530d90
560509:	b9 0e 01 00 00       	mov    $0x10e,%ecx
56050e:	83 c4 08             	add    $0x8,%esp
560511:	66 2b c1             	sub    %cx,%ax
560514:	eb 05                	jmp    0x56051b
560516:	b8 01 00 00 00       	mov    $0x1,%eax
56051b:	53                   	push   %ebx
56051c:	66 89 47 08          	mov    %ax,0x8(%edi)
560520:	e8 2b 78 fc ff       	call   0x527d50
560525:	89 07                	mov    %eax,(%edi)
560527:	83 c4 04             	add    $0x4,%esp
56052a:	66 8b 45 10          	mov    0x10(%ebp),%ax
56052e:	0f 57 c0             	xorps  %xmm0,%xmm0
560531:	66 89 47 0a          	mov    %ax,0xa(%edi)
560535:	8b 45 08             	mov    0x8(%ebp),%eax
560538:	89 77 04             	mov    %esi,0x4(%edi)
56053b:	c7 47 10 ff ff ff ff 	movl   $0xffffffff,0x10(%edi)
560542:	0f 11 47 0c          	movups %xmm0,0xc(%edi)
560546:	0f 11 47 1c          	movups %xmm0,0x1c(%edi)
56054a:	c7 47 2c 00 00 00 00 	movl   $0x0,0x2c(%edi)
560551:	5f                   	pop    %edi
560552:	5e                   	pop    %esi
560553:	5b                   	pop    %ebx
560554:	5d                   	pop    %ebp
560555:	c3                   	ret
560556:	cc                   	int3
560557:	cc                   	int3
560558:	cc                   	int3
560559:	cc                   	int3
56055a:	cc                   	int3
56055b:	cc                   	int3
56055c:	cc                   	int3
56055d:	cc                   	int3
56055e:	cc                   	int3
56055f:	cc                   	int3
560560:	55                   	push   %ebp
560561:	8b ec                	mov    %esp,%ebp
560563:	53                   	push   %ebx
560564:	56                   	push   %esi
560565:	8b 75 10             	mov    0x10(%ebp),%esi
560568:	57                   	push   %edi
560569:	8b 7d 14             	mov    0x14(%ebp),%edi
56056c:	0f b7 4e 0c          	movzwl 0xc(%esi),%ecx
560570:	0f b7 57 0c          	movzwl 0xc(%edi),%edx
560574:	8b c2                	mov    %edx,%eax
560576:	0b c1                	or     %ecx,%eax
560578:	0f b7 d8             	movzwl %ax,%ebx
56057b:	f6 c1 3e             	test   $0x3e,%cl
56057e:	0f 84 cc 00 00 00    	je     0x560650
560584:	f6 c2 3e             	test   $0x3e,%dl
560587:	0f 84 c3 00 00 00    	je     0x560650
56058d:	8b c3                	mov    %ebx,%eax
56058f:	83 e0 1a             	and    $0x1a,%eax
560592:	66 3b c3             	cmp    %bx,%ax
560595:	74 0e                	je     0x5605a5
560597:	8b c3                	mov    %ebx,%eax
560599:	83 e0 26             	and    $0x26,%eax
56059c:	66 3b c3             	cmp    %bx,%ax
56059f:	0f 85 ab 00 00 00    	jne    0x560650
5605a5:	8b 07                	mov    (%edi),%eax
5605a7:	6a ff                	push   $0xffffffff
5605a9:	ff 70 0c             	push   0xc(%eax)
5605ac:	8b 06                	mov    (%esi),%eax
5605ae:	ff 70 0c             	push   0xc(%eax)
5605b1:	6a 00                	push   $0x0
5605b3:	e8 18 5f fc ff       	call   0x5264d0
5605b8:	83 c4 10             	add    $0x10,%esp
5605bb:	85 c0                	test   %eax,%eax
5605bd:	0f 85 8d 00 00 00    	jne    0x560650
5605c3:	8b 07                	mov    (%edi),%eax
5605c5:	6a ff                	push   $0xffffffff
5605c7:	ff 70 10             	push   0x10(%eax)
5605ca:	8b 06                	mov    (%esi),%eax
5605cc:	ff 70 10             	push   0x10(%eax)
5605cf:	6a 00                	push   $0x0
5605d1:	e8 fa 5e fc ff       	call   0x5264d0
5605d6:	83 c4 10             	add    $0x10,%esp
5605d9:	85 c0                	test   %eax,%eax
5605db:	75 73                	jne    0x560650
5605dd:	8b cb                	mov    %ebx,%ecx
5605df:	8d 41 ff             	lea    -0x1(%ecx),%eax
5605e2:	85 c1                	test   %eax,%ecx
5605e4:	74 10                	je     0x5605f6
5605e6:	f6 c3 18             	test   $0x18,%bl
5605e9:	b8 08 00 00 00       	mov    $0x8,%eax
5605ee:	bb 20 00 00 00       	mov    $0x20,%ebx
5605f3:	0f 45 d8             	cmovne %eax,%ebx
5605f6:	8b 45 0c             	mov    0xc(%ebp),%eax
5605f9:	8b 00                	mov    (%eax),%eax
5605fb:	8b 00                	mov    (%eax),%eax
5605fd:	8b 08                	mov    (%eax),%ecx
5605ff:	8b 06                	mov    (%esi),%eax
560601:	85 c0                	test   %eax,%eax
560603:	74 4b                	je     0x560650
560605:	6a 00                	push   $0x0
560607:	6a 00                	push   $0x0
560609:	50                   	push   %eax
56060a:	51                   	push   %ecx
56060b:	e8 50 02 fa ff       	call   0x500860
560610:	8b f8                	mov    %eax,%edi
560612:	83 c4 10             	add    $0x10,%esp
560615:	85 ff                	test   %edi,%edi
560617:	74 37                	je     0x560650
560619:	0f b7 f3             	movzwl %bx,%esi
56061c:	ba 35 00 00 00       	mov    $0x35,%edx
560621:	83 fe 02             	cmp    $0x2,%esi
560624:	74 0f                	je     0x560635
560626:	33 c9                	xor    %ecx,%ecx
560628:	41                   	inc    %ecx
560629:	b8 02 00 00 00       	mov    $0x2,%eax
56062e:	d3 e0                	shl    %cl,%eax
560630:	42                   	inc    %edx
560631:	3b f0                	cmp    %eax,%esi
560633:	75 f3                	jne    0x560628
560635:	8b 5d 0c             	mov    0xc(%ebp),%ebx
560638:	6a 03                	push   $0x3
56063a:	57                   	push   %edi
56063b:	53                   	push   %ebx
56063c:	88 17                	mov    %dl,(%edi)
56063e:	e8 cd fd ff ff       	call   0x560410
560643:	50                   	push   %eax
560644:	53                   	push   %ebx
560645:	ff 75 08             	push   0x8(%ebp)
560648:	e8 43 ea f9 ff       	call   0x4ff090
56064d:	83 c4 18             	add    $0x18,%esp
560650:	5f                   	pop    %edi
560651:	5e                   	pop    %esi
560652:	5b                   	pop    %ebx
560653:	5d                   	pop    %ebp
560654:	c3                   	ret
560655:	cc                   	int3
560656:	cc                   	int3
560657:	cc                   	int3
560658:	cc                   	int3
560659:	cc                   	int3
56065a:	cc                   	int3
56065b:	cc                   	int3
56065c:	cc                   	int3
56065d:	cc                   	int3
56065e:	cc                   	int3
56065f:	cc                   	int3
560660:	55                   	push   %ebp
560661:	8b ec                	mov    %esp,%ebp
560663:	83 ec 64             	sub    $0x64,%esp
560666:	a1 d4 89 72 00       	mov    0x7289d4,%eax
56066b:	33 c5                	xor    %ebp,%eax
56066d:	89 45 fc             	mov    %eax,-0x4(%ebp)
560670:	8b 4d 14             	mov    0x14(%ebp),%ecx
560673:	53                   	push   %ebx
560674:	8b 5d 08             	mov    0x8(%ebp),%ebx
560677:	57                   	push   %edi
560678:	89 4d a0             	mov    %ecx,-0x60(%ebp)
56067b:	8b 7b 28             	mov    0x28(%ebx),%edi
56067e:	85 ff                	test   %edi,%edi
560680:	75 0d                	jne    0x56068f
560682:	f7 43 38 00 04 00 00 	testl  $0x400,0x38(%ebx)
560689:	0f 84 3c 01 00 00    	je     0x5607cb
56068f:	8b 53 0c             	mov    0xc(%ebx),%edx
560692:	8d 45 c4             	lea    -0x3c(%ebp),%eax
560695:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
56069c:	0f 57 c0             	xorps  %xmm0,%xmm0
56069f:	89 45 f8             	mov    %eax,-0x8(%ebp)
5606a2:	8b 45 0c             	mov    0xc(%ebp),%eax
5606a5:	89 45 c8             	mov    %eax,-0x38(%ebp)
5606a8:	8b 45 10             	mov    0x10(%ebp),%eax
5606ab:	89 45 cc             	mov    %eax,-0x34(%ebp)
5606ae:	8b 01                	mov    (%ecx),%eax
5606b0:	0f 11 45 e0          	movups %xmm0,-0x20(%ebp)
5606b4:	89 4d d8             	mov    %ecx,-0x28(%ebp)
5606b7:	66 0f d6 45 f0       	movq   %xmm0,-0x10(%ebp)
5606bc:	8b 00                	mov    (%eax),%eax
5606be:	89 45 dc             	mov    %eax,-0x24(%ebp)
5606c1:	33 c0                	xor    %eax,%eax
5606c3:	56                   	push   %esi
5606c4:	33 f6                	xor    %esi,%esi
5606c6:	89 55 9c             	mov    %edx,-0x64(%ebp)
5606c9:	66 3b 43 34          	cmp    0x34(%ebx),%ax
5606cd:	0f 83 f7 00 00 00    	jae    0x5607ca
5606d3:	83 c7 04             	add    $0x4,%edi
5606d6:	8d 4e 01             	lea    0x1(%esi),%ecx
5606d9:	89 7d a4             	mov    %edi,-0x5c(%ebp)
5606dc:	0f 1f 40 00          	nopl   0x0(%eax)
5606e0:	8b 43 04             	mov    0x4(%ebx),%eax
5606e3:	0f b7 04 70          	movzwl (%eax,%esi,2),%eax
5606e7:	66 83 f8 fe          	cmp    $0xfffe,%ax
5606eb:	75 47                	jne    0x560734
5606ed:	8b 07                	mov    (%edi),%eax
5606ef:	89 45 c4             	mov    %eax,-0x3c(%ebp)
5606f2:	66 89 4d bc          	mov    %cx,-0x44(%ebp)
5606f6:	c7 45 ac c0 12 50 00 	movl   $0x5012c0,-0x54(%ebp)
5606fd:	c7 45 b0 f0 c7 53 00 	movl   $0x53c7f0,-0x50(%ebp)
560704:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
56070b:	85 c0                	test   %eax,%eax
56070d:	0f 84 a4 00 00 00    	je     0x5607b7
560713:	50                   	push   %eax
560714:	8d 45 a8             	lea    -0x58(%ebp),%eax
560717:	50                   	push   %eax
560718:	e8 93 f8 ff ff       	call   0x55ffb0
56071d:	83 c4 08             	add    $0x8,%esp
560720:	66 83 7d bc 00       	cmpw   $0x0,-0x44(%ebp)
560725:	0f 85 84 00 00 00    	jne    0x5607af
56072b:	c7 45 e4 60 08 56 00 	movl   $0x560860,-0x1c(%ebp)
560732:	eb 40                	jmp    0x560774
560734:	66 85 c0             	test   %ax,%ax
560737:	78 7e                	js     0x5607b7
560739:	0f bf f8             	movswl %ax,%edi
56073c:	8b 42 04             	mov    0x4(%edx),%eax
56073f:	8d 0c bf             	lea    (%edi,%edi,4),%ecx
560742:	f6 44 88 10 20       	testb  $0x20,0x10(%eax,%ecx,4)
560747:	0f 84 93 00 00 00    	je     0x5607e0
56074d:	8b 44 88 08          	mov    0x8(%eax,%ecx,4),%eax
560751:	85 c0                	test   %eax,%eax
560753:	74 12                	je     0x560767
560755:	68 40 1c 6b 00       	push   $0x6b1c40
56075a:	50                   	push   %eax
56075b:	e8 d0 d4 fd ff       	call   0x53dc30
560760:	83 c4 08             	add    $0x8,%esp
560763:	85 c0                	test   %eax,%eax
560765:	75 74                	jne    0x5607db
560767:	89 7d d4             	mov    %edi,-0x2c(%ebp)
56076a:	8b 7d a4             	mov    -0x5c(%ebp),%edi
56076d:	c7 45 e4 f0 07 56 00 	movl   $0x5607f0,-0x1c(%ebp)
560774:	8b 45 a0             	mov    -0x60(%ebp),%eax
560777:	89 75 d0             	mov    %esi,-0x30(%ebp)
56077a:	8b 40 10             	mov    0x10(%eax),%eax
56077d:	85 c0                	test   %eax,%eax
56077f:	74 0d                	je     0x56078e
560781:	50                   	push   %eax
560782:	8d 45 e0             	lea    -0x20(%ebp),%eax
560785:	50                   	push   %eax
560786:	e8 25 f8 ff ff       	call   0x55ffb0
56078b:	83 c4 08             	add    $0x8,%esp
56078e:	8b 45 a0             	mov    -0x60(%ebp),%eax
560791:	ff 70 08             	push   0x8(%eax)
560794:	8d 45 e0             	lea    -0x20(%ebp),%eax
560797:	50                   	push   %eax
560798:	e8 03 f6 fe ff       	call   0x54fda0
56079d:	8b 45 a0             	mov    -0x60(%ebp),%eax