5530b4:	52                   	push   %edx
5530b5:	56                   	push   %esi
5530b6:	51                   	push   %ecx
5530b7:	e8 e4 06 fc ff       	call   0x5137a0
5530bc:	83 c4 0c             	add    $0xc,%esp
5530bf:	eb 09                	jmp    0x5530ca
5530c1:	8b 49 40             	mov    0x40(%ecx),%ecx
5530c4:	8b 46 6c             	mov    0x6c(%esi),%eax
5530c7:	89 04 91             	mov    %eax,(%ecx,%edx,4)
5530ca:	8b 53 40             	mov    0x40(%ebx),%edx
5530cd:	8b 43 44             	mov    0x44(%ebx),%eax
5530d0:	89 55 e4             	mov    %edx,-0x1c(%ebp)
5530d3:	8d 7a ff             	lea    -0x1(%edx),%edi
5530d6:	8d 3c bf             	lea    (%edi,%edi,4),%edi
5530d9:	8d 3c b8             	lea    (%eax,%edi,4),%edi
5530dc:	85 d2                	test   %edx,%edx
5530de:	0f 8e 64 01 00 00    	jle    0x553248
5530e4:	8b 4f 04             	mov    0x4(%edi),%ecx
5530e7:	83 c1 01             	add    $0x1,%ecx
5530ea:	8b 56 6c             	mov    0x6c(%esi),%edx
5530ed:	79 03                	jns    0x5530f2
5530ef:	8d 4a ff             	lea    -0x1(%edx),%ecx
5530f2:	8b 06                	mov    (%esi),%eax
5530f4:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
5530f8:	74 07                	je     0x553101
5530fa:	b8 ec 02 73 00       	mov    $0x7302ec,%eax
5530ff:	eb 09                	jmp    0x55310a
553101:	8b 46 68             	mov    0x68(%esi),%eax
553104:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
553107:	8d 04 88             	lea    (%eax,%ecx,4),%eax
55310a:	89 50 08             	mov    %edx,0x8(%eax)
55310d:	80 7f 10 ad          	cmpb   $0xad,0x10(%edi)
553111:	0f 84 f6 00 00 00    	je     0x55320d
553117:	8b 47 0c             	mov    0xc(%edi),%eax
55311a:	85 c0                	test   %eax,%eax
55311c:	0f 84 83 00 00 00    	je     0x5531a5
553122:	8b 4d e8             	mov    -0x18(%ebp),%ecx
553125:	f7 41 24 00 04 00 00 	testl  $0x400,0x24(%ecx)
55312c:	75 20                	jne    0x55314e
55312e:	50                   	push   %eax
55312f:	ff 77 08             	push   0x8(%edi)
553132:	33 c0                	xor    %eax,%eax
553134:	39 03                	cmp    %eax,(%ebx)
553136:	0f 95 c0             	setne  %al
553139:	83 c0 02             	add    $0x2,%eax
55313c:	03 46 6c             	add    0x6c(%esi),%eax
55313f:	50                   	push   %eax
553140:	ff 73 08             	push   0x8(%ebx)
553143:	6a 1b                	push   $0x1b
553145:	56                   	push   %esi
553146:	e8 c5 ea fe ff       	call   0x541c10
55314b:	83 c4 18             	add    $0x18,%esp
55314e:	83 3b 00             	cmpl   $0x0,(%ebx)
553151:	74 52                	je     0x5531a5
553153:	8b 4e 6c             	mov    0x6c(%esi),%ecx
553156:	8b 07                	mov    (%edi),%eax
553158:	89 45 d8             	mov    %eax,-0x28(%ebp)
55315b:	8d 51 02             	lea    0x2(%ecx),%edx
55315e:	39 4e 70             	cmp    %ecx,0x70(%esi)
553161:	7f 11                	jg     0x553174
553163:	6a 00                	push   $0x0
553165:	52                   	push   %edx
553166:	50                   	push   %eax
553167:	6a 1a                	push   $0x1a
553169:	56                   	push   %esi
55316a:	e8 91 33 fb ff       	call   0x506500
55316f:	83 c4 14             	add    $0x14,%esp
553172:	eb 31                	jmp    0x5531a5
553174:	8d 41 01             	lea    0x1(%ecx),%eax
553177:	89 46 6c             	mov    %eax,0x6c(%esi)
55317a:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
55317d:	8b 46 68             	mov    0x68(%esi),%eax
553180:	8b 75 d8             	mov    -0x28(%ebp),%esi
553183:	89 74 88 04          	mov    %esi,0x4(%eax,%ecx,4)
553187:	8b 75 f8             	mov    -0x8(%ebp),%esi
55318a:	c7 04 88 1a 00 00 00 	movl   $0x1a,(%eax,%ecx,4)
553191:	89 54 88 08          	mov    %edx,0x8(%eax,%ecx,4)
553195:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
55319c:	00
55319d:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
5531a4:	00
5531a5:	0f b6 4f 10          	movzbl 0x10(%edi),%ecx
5531a9:	8b 07                	mov    (%edi),%eax
5531ab:	8b 57 04             	mov    0x4(%edi),%edx
5531ae:	89 4d e0             	mov    %ecx,-0x20(%ebp)
5531b1:	8b 4e 6c             	mov    0x6c(%esi),%ecx
5531b4:	89 45 d8             	mov    %eax,-0x28(%ebp)
5531b7:	39 4e 70             	cmp    %ecx,0x70(%esi)
5531ba:	7f 12                	jg     0x5531ce
5531bc:	6a 00                	push   $0x0
5531be:	52                   	push   %edx
5531bf:	50                   	push   %eax
5531c0:	ff 75 e0             	push   -0x20(%ebp)
5531c3:	56                   	push   %esi
5531c4:	e8 37 33 fb ff       	call   0x506500
5531c9:	83 c4 14             	add    $0x14,%esp
5531cc:	eb 3f                	jmp    0x55320d
5531ce:	8b 5d e0             	mov    -0x20(%ebp),%ebx
5531d1:	8d 41 01             	lea    0x1(%ecx),%eax
5531d4:	89 46 6c             	mov    %eax,0x6c(%esi)
5531d7:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
5531da:	8b 46 68             	mov    0x68(%esi),%eax
5531dd:	33 f6                	xor    %esi,%esi
5531df:	66 89 74 88 02       	mov    %si,0x2(%eax,%ecx,4)
5531e4:	8b 75 d8             	mov    -0x28(%ebp),%esi
5531e7:	88 1c 88             	mov    %bl,(%eax,%ecx,4)
5531ea:	8b 5d fc             	mov    -0x4(%ebp),%ebx
5531ed:	89 74 88 04          	mov    %esi,0x4(%eax,%ecx,4)
5531f1:	8b 75 f8             	mov    -0x8(%ebp),%esi
5531f4:	89 54 88 08          	mov    %edx,0x8(%eax,%ecx,4)
5531f8:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
5531ff:	00
553200:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
553207:	00
553208:	c6 44 88 01 00       	movb   $0x0,0x1(%eax,%ecx,4)
55320d:	8b 4f 04             	mov    0x4(%edi),%ecx
553210:	83 e9 01             	sub    $0x1,%ecx
553213:	8b 56 6c             	mov    0x6c(%esi),%edx
553216:	79 03                	jns    0x55321b
553218:	8d 4a ff             	lea    -0x1(%edx),%ecx
55321b:	8b 06                	mov    (%esi),%eax
55321d:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
553221:	74 07                	je     0x55322a
553223:	b8 ec 02 73 00       	mov    $0x7302ec,%eax
553228:	eb 09                	jmp    0x553233
55322a:	8b 46 68             	mov    0x68(%esi),%eax
55322d:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
553230:	8d 04 88             	lea    (%eax,%ecx,4),%eax
553233:	89 50 08             	mov    %edx,0x8(%eax)
553236:	83 ef 14             	sub    $0x14,%edi
553239:	8b 45 e4             	mov    -0x1c(%ebp),%eax
55323c:	48                   	dec    %eax
55323d:	89 45 e4             	mov    %eax,-0x1c(%ebp)
553240:	85 c0                	test   %eax,%eax
553242:	0f 8f 9c fe ff ff    	jg     0x5530e4
553248:	8b 4e 0c             	mov    0xc(%esi),%ecx
55324b:	8b 53 0c             	mov    0xc(%ebx),%edx
55324e:	f7 d2                	not    %edx
553250:	8b 41 3c             	mov    0x3c(%ecx),%eax
553253:	03 41 38             	add    0x38(%ecx),%eax
553256:	79 0d                	jns    0x553265
553258:	52                   	push   %edx
553259:	56                   	push   %esi
55325a:	51                   	push   %ecx
55325b:	e8 40 05 fc ff       	call   0x5137a0
553260:	83 c4 0c             	add    $0xc,%esp
553263:	eb 09                	jmp    0x55326e
553265:	8b 49 40             	mov    0x40(%ecx),%ecx
553268:	8b 46 6c             	mov    0x6c(%esi),%eax
55326b:	89 04 91             	mov    %eax,(%ecx,%edx,4)
55326e:	8b 53 14             	mov    0x14(%ebx),%edx
553271:	85 d2                	test   %edx,%edx
553273:	0f 84 9a 00 00 00    	je     0x553313
553279:	8b 4e 6c             	mov    0x6c(%esi),%ecx
55327c:	39 4e 70             	cmp    %ecx,0x70(%esi)
55327f:	7f 12                	jg     0x553293
553281:	6a 00                	push   $0x0
553283:	52                   	push   %edx
553284:	6a 00                	push   $0x0
553286:	6a 0b                	push   $0xb
553288:	56                   	push   %esi
553289:	e8 72 32 fb ff       	call   0x506500
55328e:	83 c4 14             	add    $0x14,%esp
553291:	eb 2f                	jmp    0x5532c2
553293:	8d 41 01             	lea    0x1(%ecx),%eax
553296:	89 46 6c             	mov    %eax,0x6c(%esi)
553299:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
55329c:	8b 46 68             	mov    0x68(%esi),%eax
55329f:	c7 04 88 0b 00 00 00 	movl   $0xb,(%eax,%ecx,4)
5532a6:	c7 44 88 04 00 00 00 	movl   $0x0,0x4(%eax,%ecx,4)
5532ad:	00
5532ae:	89 54 88 08          	mov    %edx,0x8(%eax,%ecx,4)
5532b2:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
5532b9:	00
5532ba:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
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