5532c1:	00
5532c2:	8b 4b 14             	mov    0x14(%ebx),%ecx
5532c5:	8b 56 6c             	mov    0x6c(%esi),%edx
5532c8:	85 c9                	test   %ecx,%ecx
5532ca:	79 03                	jns    0x5532cf
5532cc:	8d 4a ff             	lea    -0x1(%edx),%ecx
5532cf:	8b 06                	mov    (%esi),%eax
5532d1:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
5532d5:	74 07                	je     0x5532de
5532d7:	b8 ec 02 73 00       	mov    $0x7302ec,%eax
5532dc:	eb 09                	jmp    0x5532e7
5532de:	8b 46 68             	mov    0x68(%esi),%eax
5532e1:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
5532e4:	8d 04 88             	lea    (%eax,%ecx,4),%eax
5532e7:	89 50 08             	mov    %edx,0x8(%eax)
5532ea:	8b 4b 14             	mov    0x14(%ebx),%ecx
5532ed:	83 e9 02             	sub    $0x2,%ecx
5532f0:	8b 56 6c             	mov    0x6c(%esi),%edx
5532f3:	79 03                	jns    0x5532f8
5532f5:	8d 4a ff             	lea    -0x1(%edx),%ecx
5532f8:	8b 06                	mov    (%esi),%eax
5532fa:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
5532fe:	74 07                	je     0x553307
553300:	b8 ec 02 73 00       	mov    $0x7302ec,%eax
553305:	eb 09                	jmp    0x553310
553307:	8b 46 68             	mov    0x68(%esi),%eax
55330a:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
55330d:	8d 04 88             	lea    (%eax,%ecx,4),%eax
553310:	89 50 08             	mov    %edx,0x8(%eax)
553313:	8b 7b 30             	mov    0x30(%ebx),%edi
553316:	85 ff                	test   %edi,%edi
553318:	74 4c                	je     0x553366
55331a:	8b 53 2c             	mov    0x2c(%ebx),%edx
55331d:	8b 4e 6c             	mov    0x6c(%esi),%ecx
553320:	d1 ea                	shr    $1,%edx
553322:	39 4e 70             	cmp    %ecx,0x70(%esi)
553325:	7f 11                	jg     0x553338
553327:	6a 00                	push   $0x0
553329:	57                   	push   %edi
55332a:	52                   	push   %edx
55332b:	6a 3b                	push   $0x3b
55332d:	56                   	push   %esi
55332e:	e8 cd 31 fb ff       	call   0x506500
553333:	83 c4 14             	add    $0x14,%esp
553336:	eb 2e                	jmp    0x553366
553338:	8b 5d fc             	mov    -0x4(%ebp),%ebx
55333b:	8d 41 01             	lea    0x1(%ecx),%eax
55333e:	89 46 6c             	mov    %eax,0x6c(%esi)
553341:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
553344:	8b 46 68             	mov    0x68(%esi),%eax
553347:	c7 04 88 3b 00 00 00 	movl   $0x3b,(%eax,%ecx,4)
55334e:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
553352:	89 7c 88 08          	mov    %edi,0x8(%eax,%ecx,4)
553356:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
55335d:	00
55335e:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
553365:	00
553366:	8b 13                	mov    (%ebx),%edx
553368:	85 d2                	test   %edx,%edx
55336a:	0f 84 ce 01 00 00    	je     0x55353e
553370:	8b 45 e8             	mov    -0x18(%ebp),%eax
553373:	8b 7e 6c             	mov    0x6c(%esi),%edi
553376:	8b 40 24             	mov    0x24(%eax),%eax
553379:	89 45 e0             	mov    %eax,-0x20(%ebp)
55337c:	39 7e 70             	cmp    %edi,0x70(%esi)
55337f:	7f 14                	jg     0x553395
553381:	6a 00                	push   $0x0
553383:	6a 00                	push   $0x0
553385:	52                   	push   %edx
553386:	6a 30                	push   $0x30
553388:	56                   	push   %esi
553389:	e8 72 31 fb ff       	call   0x506500
55338e:	83 c4 14             	add    $0x14,%esp
553391:	8b f8                	mov    %eax,%edi
553393:	eb 32                	jmp    0x5533c7
553395:	8b 5d fc             	mov    -0x4(%ebp),%ebx
553398:	8d 47 01             	lea    0x1(%edi),%eax
55339b:	89 46 6c             	mov    %eax,0x6c(%esi)
55339e:	8d 0c bf             	lea    (%edi,%edi,4),%ecx
5533a1:	8b 46 68             	mov    0x68(%esi),%eax
5533a4:	c7 04 88 30 00 00 00 	movl   $0x30,(%eax,%ecx,4)
5533ab:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
5533af:	c7 44 88 08 00 00 00 	movl   $0x0,0x8(%eax,%ecx,4)
5533b6:	00
5533b7:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
5533be:	00
5533bf:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
5533c6:	00
5533c7:	8b 55 e0             	mov    -0x20(%ebp),%edx
5533ca:	f6 c2 40             	test   $0x40,%dl
5533cd:	75 5b                	jne    0x55342a
5533cf:	8b 4e 6c             	mov    0x6c(%esi),%ecx
5533d2:	8b 43 04             	mov    0x4(%ebx),%eax
5533d5:	89 45 d8             	mov    %eax,-0x28(%ebp)
5533d8:	39 4e 70             	cmp    %ecx,0x70(%esi)
5533db:	7f 18                	jg     0x5533f5
5533dd:	6a 00                	push   $0x0
5533df:	6a 00                	push   $0x0
5533e1:	50                   	push   %eax
5533e2:	68 80 00 00 00       	push   $0x80
5533e7:	56                   	push   %esi
5533e8:	e8 13 31 fb ff       	call   0x506500
5533ed:	8b 55 e0             	mov    -0x20(%ebp),%edx
5533f0:	83 c4 14             	add    $0x14,%esp
5533f3:	eb 35                	jmp    0x55342a
5533f5:	8b 5d d8             	mov    -0x28(%ebp),%ebx
5533f8:	8d 41 01             	lea    0x1(%ecx),%eax
5533fb:	89 46 6c             	mov    %eax,0x6c(%esi)
5533fe:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
553401:	8b 46 68             	mov    0x68(%esi),%eax
553404:	89 5c 88 04          	mov    %ebx,0x4(%eax,%ecx,4)
553408:	8b 5d fc             	mov    -0x4(%ebp),%ebx
55340b:	c7 04 88 80 00 00 00 	movl   $0x80,(%eax,%ecx,4)
553412:	c7 44 88 08 00 00 00 	movl   $0x0,0x8(%eax,%ecx,4)
553419:	00
55341a:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
553421:	00
553422:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
553429:	00
55342a:	f7 c2 00 02 00 00    	test   $0x200,%edx
553430:	75 0e                	jne    0x553440
553432:	f7 c2 00 20 00 00    	test   $0x2000,%edx
553438:	74 58                	je     0x553492
55343a:	83 7b 40 00          	cmpl   $0x0,0x40(%ebx)
55343e:	74 52                	je     0x553492
553440:	8b 4e 6c             	mov    0x6c(%esi),%ecx
553443:	8b 53 08             	mov    0x8(%ebx),%edx
553446:	39 4e 70             	cmp    %ecx,0x70(%esi)
553449:	7f 15                	jg     0x553460
55344b:	6a 00                	push   $0x0
55344d:	6a 00                	push   $0x0
55344f:	52                   	push   %edx
553450:	68 80 00 00 00       	push   $0x80
553455:	56                   	push   %esi
553456:	e8 a5 30 fb ff       	call   0x506500
55345b:	83 c4 14             	add    $0x14,%esp
55345e:	eb 32                	jmp    0x553492
553460:	8b 5d fc             	mov    -0x4(%ebp),%ebx
553463:	8d 41 01             	lea    0x1(%ecx),%eax
553466:	89 46 6c             	mov    %eax,0x6c(%esi)
553469:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
55346c:	8b 46 68             	mov    0x68(%esi),%eax
55346f:	c7 04 88 80 00 00 00 	movl   $0x80,(%eax,%ecx,4)
553476:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
55347a:	c7 44 88 08 00 00 00 	movl   $0x0,0x8(%eax,%ecx,4)
553481:	00
553482:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
553489:	00
55348a:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
553491:	00
553492:	80 7b 35 41          	cmpb   $0x41,0x35(%ebx)
553496:	8b 53 1c             	mov    0x1c(%ebx),%edx
553499:	8b 4e 6c             	mov    0x6c(%esi),%ecx
55349c:	75 35                	jne    0x5534d3
55349e:	8b 5b 38             	mov    0x38(%ebx),%ebx
5534a1:	39 4e 70             	cmp    %ecx,0x70(%esi)
5534a4:	7f 11                	jg     0x5534b7
5534a6:	6a 00                	push   $0x0
5534a8:	52                   	push   %edx
5534a9:	53                   	push   %ebx
5534aa:	6a 0c                	push   $0xc
5534ac:	56                   	push   %esi
5534ad:	e8 4e 30 fb ff       	call   0x506500
5534b2:	83 c4 14             	add    $0x14,%esp
5534b5:	eb 62                	jmp    0x553519
5534b7:	8d 41 01             	lea    0x1(%ecx),%eax
5534ba:	89 46 6c             	mov    %eax,0x6c(%esi)
5534bd:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
5534c0:	8b 46 68             	mov    0x68(%esi),%eax
5534c3:	8b 75 f8             	mov    -0x8(%ebp),%esi
5534c6:	c7 04 88 0c 00 00 00 	movl   $0xc,(%eax,%ecx,4)
5534cd:	89 5c 88 04          	mov    %ebx,0x4(%eax,%ecx,4)
5534d1:	eb 32                	jmp    0x553505
5534d3:	39 4e 70             	cmp    %ecx,0x70(%esi)
5534d6:	7f 12                	jg     0x5534ea
5534d8:	6a 00                	push   $0x0
5534da:	52                   	push   %edx
5534db:	6a 00                	push   $0x0
5534dd:	6a 0b                	push   $0xb
5534df:	56                   	push   %esi
5534e0:	e8 1b 30 fb ff       	call   0x506500
5534e5:	83 c4 14             	add    $0x14,%esp
5534e8:	eb 2f                	jmp    0x553519
5534ea:	8d 41 01             	lea    0x1(%ecx),%eax
5534ed:	89 46 6c             	mov    %eax,0x6c(%esi)
5534f0:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
5534f3:	8b 46 68             	mov    0x68(%esi),%eax
5534f6:	c7 04 88 0b 00 00 00 	movl   $0xb,(%eax,%ecx,4)
5534fd:	c7 44 88 04 00 00 00 	movl   $0x0,0x4(%eax,%ecx,4)
553504:	00
553505:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
55350c:	00
55350d:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
553514:	00
553515:	89 54 88 08          	mov    %edx,0x8(%eax,%ecx,4)
553519:	8b 56 6c             	mov    0x6c(%esi),%edx
55351c:	85 ff                	test   %edi,%edi
55351e:	79 03                	jns    0x553523
553520:	8d 7a ff             	lea    -0x1(%edx),%edi
553523:	8b 06                	mov    (%esi),%eax
553525:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
553529:	74 07                	je     0x553532
55352b:	b8 ec 02 73 00       	mov    $0x7302ec,%eax
553530:	eb 09                	jmp    0x55353b
553532:	8b 46 68             	mov    0x68(%esi),%eax
553535:	8d 0c bf             	lea    (%edi,%edi,4),%ecx
553538:	8d 04 88             	lea    (%eax,%ecx,4),%eax
55353b:	89 50 08             	mov    %edx,0x8(%eax)
55353e:	8b 55 dc             	mov    -0x24(%ebp),%edx
553541:	8b 5d 08             	mov    0x8(%ebp),%ebx
553544:	83 ea 01             	sub    $0x1,%edx
553547:	89 55 dc             	mov    %edx,-0x24(%ebp)
55354a:	0f 89 f2 f8 ff ff    	jns    0x552e42
553550:	8b 7d ec             	mov    -0x14(%ebp),%edi
553553:	8b 4e 0c             	mov    0xc(%esi),%ecx
553556:	8b 53 20             	mov    0x20(%ebx),%edx
553559:	f7 d2                	not    %edx
55355b:	8b 41 3c             	mov    0x3c(%ecx),%eax
55355e:	03 41 38             	add    0x38(%ecx),%eax
553561:	79 0d                	jns    0x553570
553563:	52                   	push   %edx
553564:	56                   	push   %esi
553565:	51                   	push   %ecx
553566:	e8 35 02 fc ff       	call   0x5137a0
55356b:	83 c4 0c             	add    $0xc,%esp
55356e:	eb 09                	jmp    0x553579
553570:	8b 49 40             	mov    0x40(%ecx),%ecx
553573:	8b 46 6c             	mov    0x6c(%esi),%eax
553576:	89 04 91             	mov    %eax,(%ecx,%edx,4)
553579:	80 7b 2c 00          	cmpb   $0x0,0x2c(%ebx)
55357d:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
553584:	0f 86 82 01 00 00    	jbe    0x55370c
55358a:	8b 55 f4             	mov    -0xc(%ebp),%edx
55358d:	81 c3 38 03 00 00    	add    $0x338,%ebx
553593:	89 5d e8             	mov    %ebx,-0x18(%ebp)
553596:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%eax,%eax,1)
55359d:	00 00 00
5535a0:	0f b6 43 ec          	movzbl -0x14(%ebx),%eax
5535a4:	8d 04 c0             	lea    (%eax,%eax,8),%eax
5535a7:	f6 44 c2 30 10       	testb  $0x10,0x30(%edx,%eax,8)
5535ac:	8b 4c c2 18          	mov    0x18(%edx,%eax,8),%ecx
5535b0:	89 4d d8             	mov    %ecx,-0x28(%ebp)
5535b3:	8b 0b                	mov    (%ebx),%ecx
5535b5:	74 1c                	je     0x5535d3
5535b7:	6a 00                	push   $0x0
5535b9:	ff 74 c2 28          	push   0x28(%edx,%eax,8)
5535bd:	ff 73 bc             	push   -0x44(%ebx)
5535c0:	ff 73 d8             	push   -0x28(%ebx)
5535c3:	ff 75 f0             	push   -0x10(%ebp)
5535c6:	e8 a5 52 00 00       	call   0x558870
5535cb:	83 c4 14             	add    $0x14,%esp
5535ce:	e9 14 01 00 00       	jmp    0x5536e7
5535d3:	8b 41 24             	mov    0x24(%ecx),%eax
5535d6:	a9 40 02 00 00       	test   $0x240,%eax
5535db:	74 05                	je     0x5535e2
5535dd:	8b 41 20             	mov    0x20(%ecx),%eax
5535e0:	eb 0e                	jmp    0x5535f0
5535e2:	a9 00 20 00 00       	test   $0x2000,%eax
5535e7:	0f 84 fd 00 00 00    	je     0x5536ea
5535ed:	8b 43 f8             	mov    -0x8(%ebx),%eax
5535f0:	89 45 e0             	mov    %eax,-0x20(%ebp)
5535f3:	85 c0                	test   %eax,%eax
5535f5:	0f 84 ef 00 00 00    	je     0x5536ea
5535fb:	8b 4d 08             	mov    0x8(%ebp),%ecx
5535fe:	80 79 2e 00          	cmpb   $0x0,0x2e(%ecx)
553602:	74 0d                	je     0x553611
553604:	8b 40 0c             	mov    0xc(%eax),%eax
553607:	f6 40 24 80          	testb  $0x80,0x24(%eax)
55360b:	0f 84 d9 00 00 00    	je     0x5536ea
553611:	80 7f 51 00          	cmpb   $0x0,0x51(%edi)
553615:	0f 85 cf 00 00 00    	jne    0x5536ea
55361b:	8b 53 d8             	mov    -0x28(%ebx),%edx
55361e:	8b ca                	mov    %edx,%ecx
553620:	8b 46 6c             	mov    0x6c(%esi),%eax
553623:	89 45 dc             	mov    %eax,-0x24(%ebp)
553626:	85 d2                	test   %edx,%edx
553628:	79 03                	jns    0x55362d
55362a:	8d 48 ff             	lea    -0x1(%eax),%ecx
55362d:	8b 06                	mov    (%esi),%eax
55362f:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
553633:	74 07                	je     0x55363c
553635:	bf ec 02 73 00       	mov    $0x7302ec,%edi
55363a:	eb 09                	jmp    0x553645
55363c:	8b 46 68             	mov    0x68(%esi),%eax
55363f:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
553642:	8d 3c 88             	lea    (%eax,%ecx,4),%edi
553645:	3b 55 dc             	cmp    -0x24(%ebp),%edx
553648:	0f 8d 99 00 00 00    	jge    0x5536e7
55364e:	8b 75 dc             	mov    -0x24(%ebp),%esi
553651:	83 c7 04             	add    $0x4,%edi
553654:	2b f2                	sub    %edx,%esi
553656:	8b 07                	mov    (%edi),%eax
553658:	3b 43 bc             	cmp    -0x44(%ebx),%eax
55365b:	75 7b                	jne    0x5536d8
55365d:	8a 47 fc             	mov    -0x4(%edi),%al
553660:	3c 59                	cmp    $0x59,%al
553662:	75 5e                	jne    0x5536c2
553664:	8b 45 d8             	mov    -0x28(%ebp),%eax
553667:	8b 57 04             	mov    0x4(%edi),%edx
55366a:	f6 40 24 80          	testb  $0x80,0x24(%eax)
55366e:	74 12                	je     0x553682
553670:	50                   	push   %eax
553671:	e8 5a 3d fe ff       	call   0x5373d0
553676:	83 c4 04             	add    $0x4,%esp
553679:	8b 40 04             	mov    0x4(%eax),%eax
55367c:	0f bf 1c 50          	movswl (%eax,%edx,2),%ebx
553680:	eb 0d                	jmp    0x55368f
553682:	52                   	push   %edx
553683:	50                   	push   %eax
553684:	e8 e7 a3 fe ff       	call   0x53da70
553689:	83 c4 08             	add    $0x8,%esp
55368c:	0f bf d8             	movswl %ax,%ebx
55368f:	8b 4d e0             	mov    -0x20(%ebp),%ecx
553692:	33 c0                	xor    %eax,%eax
553694:	0f b7 51 34          	movzwl 0x34(%ecx),%edx
553698:	85 d2                	test   %edx,%edx
55369a:	7e 11                	jle    0x5536ad
55369c:	8b 49 04             	mov    0x4(%ecx),%ecx
55369f:	90                   	nop
5536a0:	66 3b 19             	cmp    (%ecx),%bx
5536a3:	74 18                	je     0x5536bd
5536a5:	40                   	inc    %eax
5536a6:	83 c1 02             	add    $0x2,%ecx
5536a9:	3b c2                	cmp    %edx,%eax
5536ab:	7c f3                	jl     0x5536a0
5536ad:	83 c8 ff             	or     $0xffffffff,%eax
5536b0:	8b 5d e8             	mov    -0x18(%ebp),%ebx
5536b3:	98                   	cwtl
5536b4:	85 c0                	test   %eax,%eax
5536b6:	78 20                	js     0x5536d8
5536b8:	89 47 04             	mov    %eax,0x4(%edi)
5536bb:	eb 16                	jmp    0x5536d3
5536bd:	0f b7 c0             	movzwl %ax,%eax
5536c0:	eb ee                	jmp    0x5536b0
5536c2:	3c 7f                	cmp    $0x7f,%al
5536c4:	75 09                	jne    0x5536cf
5536c6:	8b 43 c0             	mov    -0x40(%ebx),%eax
5536c9:	c6 47 fc 86          	movb   $0x86,-0x4(%edi)
5536cd:	eb 07                	jmp    0x5536d6
5536cf:	3c 15                	cmp    $0x15,%al
5536d1:	75 05                	jne    0x5536d8
5536d3:	8b 43 c0             	mov    -0x40(%ebx),%eax
5536d6:	89 07                	mov    %eax,(%edi)
5536d8:	83 c7 14             	add    $0x14,%edi
5536db:	83 ee 01             	sub    $0x1,%esi
5536de:	0f 85 72 ff ff ff    	jne    0x553656
5536e4:	8b 75 f8             	mov    -0x8(%ebp),%esi
5536e7:	8b 55 f4             	mov    -0xc(%ebp),%edx
5536ea:	8b 45 08             	mov    0x8(%ebp),%eax
5536ed:	83 c3 58             	add    $0x58,%ebx